Monocle documentation
Overview
Monocle has two main tabs and a settings area:
Getting started
- Open Monocle and press ⌘1 for Search.
- Paste an indicator such as
8.8.8.8,example.comor a file hash. - Pick a lookup site from the list to open it in your browser.
- Press ⌘2 for Notes, and ⌘N to start a new note. Use ⇧⌘N to start from a template.
- Optionally add API keys under Settings → Integrations to see results inline.
Search
Type or paste into the search field. It accepts IPs (IPv4 and IPv6), domains, URLs, file hashes, ports, emails, user agents, MAC addresses, ASNs, certificate hashes and CVE IDs. You can also drag text or files onto the window.
- URLs,
host:portand CIDR ranges: Monocle extracts the host or IP inside and looks that up. The interface tells you when it has done so. - Defanged input: values such as
hxxps://evil[.]exampleoruser[at]example[.]comare refanged automatically before lookup. - Files: dropping a file computes its hash so you can look the file up without uploading it.
- Type override: if detection fails or guesses wrong, choose the type from the dropdown. The message "Couldn't detect type" means no type matched.
Indicator detection
| Type | Examples |
|---|---|
| IP Address | IPv4, IPv6 (including compressed and IPv4-mapped forms) |
| Domain / URL | example.com, https://example.com/path |
| File Hash | MD5 (32), SHA-1 (40), SHA-256 (64 characters) |
user@example.com | |
| CVE | CVE-2024-3094 |
| MAC Address | 00:1A:2B:3C:4D:5E |
| Port, ASN, User Agent, Cert Hash | Detected or chosen from the type dropdown |
Lookup resources
For each detected type Monocle lists curated lookup sites under Search. Selecting one opens the indicator on that site in your browser. The Integrations column shows which integrations can return results inline for that type. Monocle does not send the indicator anywhere until you open a site or enable an integration.
| Type | Search | Integrations |
|---|---|---|
| IP Address (IPv4 and IPv6) | AbuseIPDB, AlienVault OTX, Censys, Cisco Talos, DNSlytics, DShield, Google Safe Browsing, GreyNoise, HackedIP, Hybrid Analysis, IPVoid, Joe Sandbox, MXToolbox Blacklist, Project HoneyPot, RIPEstat, Robtex, Shodan, Spamhaus, ThreatMiner, VirusTotal | Censys, VirusTotal |
| IP Location (IPv4 and IPv6) | Geolocation, IPinfo, iplocation | — |
| Domain | Cisco Talos, DomainTools, DNS Viz, GreyNoise, MXToolbox, nslookup, Shodan, URLscan, URLVoid, VirusTotal | DNSdumpster, VirusTotal |
| Domain Categorization | Bluecoat | — |
| File Hash (MD5, SHA-1, SHA-256) | CIRCL hashlookup (MD5, SHA-1 and SHA-256 variants), Hybrid Analysis, MalwareBazaar, VirusTotal | MalwareBazaar, VirusTotal |
| SSL/TLS Cert Hash (SHA-1 or SHA-256 hashes also match here) | crt.sh, Censys | Censys |
| Port | DShield, Shodan, SpeedGuide | — |
| Have I Been Pwned | Have I Been Pwned | |
| User Agent | GreyNoise, Userstack | — |
| MAC Address | MAC Lookup App | — |
| ASN | BGP.he.net, bgp.tools, RIPEstat | — |
| CVE | NVD, CVE.org, MITRE, Exploit-DB | — |
Integration results
When an integration is enabled and has credentials, a result card appears under the search field with a summary and a link to the full record. Cards are listed alphabetically: Censys, DNSdumpster, Have I Been Pwned, MalwareBazaar, MISP, OpenCTI and VirusTotal. See Integrations for setup.
Notes
Notes are Markdown documents that autosave as you type. The sidebar lists your notes grouped by recency, with pinned notes at the top. Each row shows the first line of real content as a subtitle.
- Create a note with ⌘N.
- Rename or delete from the Note menu or the context menu.
- Toggle the notes list with ⌥⌘S; drag its edge to resize.
- Toggle a rendered preview with ⇧⌘P.
- Text direction can be Automatic, Left to Right or Right to Left (Settings → Notes), which helps with Arabic, Hebrew and similar languages.
Templates
An empty note offers templates to begin from, or choose New from Template (⇧⌘N) to open a filterable picker: type to filter, arrow keys to move, Return to create.
| Template | Sections |
|---|---|
| Alert investigation | Alert, Scope, Checks performed, Evidence, Disposition, Tuning recommendation |
| Incident triage | Summary, Timeline (UTC), Indicators, Affected assets, Actions |
| Malware analysis | Sample, Static analysis, Dynamic analysis, Indicators, Verdict, Actions |
| Phishing report | Message, Indicators, Analysis, Verdict, Actions |
| Threat hunt | Hypothesis, Scope, Queries, Findings, Indicators observed, Outcome, Follow-ups |
| Shift handoff | Shift, Open incidents, Alerts being watched, Pending escalations, Changes, For the next shift, Checklist |
You can also save your own templates; they appear in the picker, and right-click lets you delete them. Applying a template to a note that already has content asks you to confirm replacing it. Use Next Blank Field (⌘J) to jump through the blank fields of a template, and Insert UTC Timestamp (⌥T) to stamp the current time.
Formatting
| Syntax | Result |
|---|---|
# Heading to ###### Heading | Headings (shortcuts for 1–3: ⌥1 ⌥2 ⌥3) |
**bold** | Bold (⌘B) |
*italic* | Italic (⌘I) |
__underline__, ~~strike~~ | Underline, strikethrough |
`code` and fenced ``` blocks | Inline and block code |
[text](https://…) | Link (⌘K) |
- item, 1. item | Bulleted and numbered lists |
- [ ] task, - [x] done | Task checkboxes |
> quote, --- | Block quote, horizontal rule |
Indicators sidebar
Toggle with ⌥⌘I. Monocle scans the open note and lists every indicator it finds, in order of first appearance, as IP, Domain, URL, Hash (labelled MD5, SHA-1 or SHA-256), Email, CVE or MAC. File names like report.pdf are not mistaken for domains.
- Look Up in Monocle sends the value to the Search tab.
- Copy copies the refanged value.
- Select in Note highlights every occurrence.
- Defang all in note / Refang all in note converts every indicator in place, or toggle them one at a time.
Find & search notes
- ⌘F opens the find bar inside the current note; ⌘G and ⇧⌘G move between matches; Esc closes it.
- ⇧⌘F searches all notes by title and content, showing a snippet for each match. Use the filter
is:pinnedto list only pinned notes.
Pinning & deleted notes
Pinned notes stay at the top of the list. Deleted notes move to Deleted and are kept for 30 days, so you can restore them. Empty permanently removes everything in Deleted.
Sharing & export
Use the share button or a note's context menu:
- Copy note: the note as written.
- Copy for ticket: defanged, plain text, ready to paste into a ticketing system.
- Save as .txt / .md.
- Send to Bear, Slack or Discord: appear once the connector is enabled.
To back up everything, use Settings → Notes → Export notes, which writes a single JSON file.
Defanging
Defanging makes indicators safe to share by breaking clickable or resolvable forms. Monocle understands and produces these patterns:
| Live | Defanged |
|---|---|
http://evil.example/a | hxxp://evil[.]example/a |
user@example.com | the @ and dots are bracketed |
203.0.113.7 | 203[.]0[.]113[.]7 |
When refanging, Monocle accepts [.], (.), {.}, [dot], [at], (at), [:] and hxxp. Turn on Defang on export in Settings → Notes to defang automatically whenever a note leaves the app.
Connectors
Connectors send a note to another place. Configure them in Settings → Connectors.
| Connector | Setup |
|---|---|
| Slack | Enable, then paste an Incoming Webhook URL (https://hooks.slack.com/services/…). Monocle validates the format. |
| Discord | Enable, then paste a webhook URL (https://discord.com/api/webhooks/…). |
| Bear | Enable to get a Send to Bear action. Requires the Bear app. |
Webhooks post the note text as JSON and report the HTTP status if the request fails.
Integrations
Integrations query threat intelligence platforms directly and show results in cards on the Search tab. Enable each one and enter credentials under Settings → Integrations.
| Integration | Needs | Notes |
|---|---|---|
| OpenCTI | Platform URL, API token | Self-hosted |
| MISP | Instance URL, API key | Self-hosted |
| VirusTotal | API key | Files (hashes), domains and IPs |
| MalwareBazaar | API key | File hashes |
| DNSdumpster | API key | Domains |
| Censys | API key; optional Organization ID | The Organization ID is sent as X-Organization-ID and is required for Starter, Search and Core organizations. Certificate lookups use the SHA-256 fingerprint. |
| Have I Been Pwned | API key | Email addresses |
Keyboard shortcuts
All shortcuts below are the defaults and can be changed under Settings → Shortcuts. A shortcut must include ⌘ or ⌃ so it can't interfere with ordinary typing, and Monocle warns you about conflicts.
| Action | Shortcut |
|---|---|
| General | |
| New Note | ⌘N |
| New from Template | ⇧⌘N |
| Settings | ⌘, |
| Editing | |
| Find | ⌘F |
| Find Next / Previous | ⌘G / ⇧⌘G |
| Search All Notes | ⇧⌘F |
| Insert UTC Timestamp | ⌥⌘T |
| Next Blank Field | ⌘J |
| Format | |
| Bold / Italic / Link | ⌘B / ⌘I / ⌘K |
| Heading 1 / 2 / 3 | ⌥⌘1 / ⌥⌘2 / ⌥⌘3 |
| View | |
| Show Search / Show Notes | ⌘1 / ⌘2 |
| Indicators Sidebar | ⌥⌘I |
| Toggle Preview | ⇧⌘P |
| Show/Hide Sidebar | ⌥⌘S |
Settings
| Section | What it covers |
|---|---|
| Setup | Appearance (System, Light or Dark), menu bar icon, launch at login, and the Shortcuts editor. |
| Notes | Text direction, editor font size, template suggestions on empty notes, defang on export, export all notes, delete all notes, and a storage meter. |
| Connectors | Slack, Discord and Bear. |
| Integrations | OpenCTI, MISP, VirusTotal, MalwareBazaar, DNSdumpster, Censys, Have I Been Pwned. |
| About | Version and build. |
Settings has its own search field to jump straight to an option, and Up/Down arrows move between sections.
Troubleshooting
| Problem | Try this |
|---|---|
| "Couldn't detect type" | Pick the type manually from the dropdown, or strip surrounding text. |
| An integration card doesn't appear | Confirm it is enabled and credentials are filled in. Check that the indicator type is one it supports. |
| Integration fails on a private instance | Enable Allow self-signed certificates if it uses a private CA. |
| Webhook send fails | The error shows the HTTP status. Re-check the URL; Monocle expects the standard Slack or Discord webhook prefix. |
| A shortcut does nothing | Menu items for notes are disabled outside the Notes tab. Check Settings → Shortcuts for conflicts. |
| A note is gone | Look in Deleted; notes are kept there for 30 days. |