CLI Reference

Full reference for the memex command-line interface.

Add notes

memex add                                                # interactive prompt (asks for layer)
memex add --title "Note title" --content "..." --layer past
memex add --title "Note title" --file ./note.md --layer state
memex add --title "Note title" --content "..." --folder conversations/tom --layer past
memex add --title "Note title" --content "..." -T typescript -T architecture --layer past

--layer is required. Pick past for records (meetings, retros, decisions), state for ongoing plans, or rule for Claude behaviour guides. See Note layers below.

Layers

memex layer                               # distribution of past / state / rule
memex layer <id> state                     # move a single note to a different layer

With no arguments, memex layer prints the count per layer, useful right after the first-run migration to see how your folders mapped. With <id> <layer> it corrects an individual note (e.g. moving a roadmap note from past to state).

memex search "semantic search query"
memex search "knowledge management" --limit 10   # multilingual, Korean/Japanese notes match too
memex search "auth" --tag backend                # filter by tag
memex search "auth" --from 2025-04-01        # notes since a date
memex search "auth" --from 2025-04-01 --to 2025-04-30

--from and --to accept any ISO 8601 date (YYYY-MM-DD). --to includes the full day (up to 23:59:59).

Browse

memex list                  # recent 10 notes
memex list --limit 20
memex show <id>             # full note content + backlinks
memex tags                  # all tags with counts
memex related <id>          # semantically related notes

Digest

memex digest                # summary of notes saved in the last 7 days
memex digest --days 30      # last 30 days

Digest groups notes by folder and prints them with tags and dates, then ends with a signal summary and your active/stale inferences, a one-shot weekly review of both what you wrote and what's worth synthesizing.

Insights (signals & inferences)

The inference engine finds patterns across your notes and lets you promote them into hypotheses.

memex signals                       # detect + list un-synthesized patterns
memex signals --type hidden_arc     # one type only (hidden_arc|stale_state|dangling_link|tag_burst)
memex signals --no-refresh          # list stored signals without re-detecting
memex signals dismiss <id>          # triage: never resurface this signal
memex signals snooze <id>

memex signals mint <signalId>               # print the evidence bundle + a synthesis prompt (read-only)
memex signals mint <signalId> \             # persist a synthesized inference
  --title "..." --summary "..." --confidence 0.7 --model claude-opus-4-8

memex inferences                    # list inferences (re-checks staleness first)
memex inferences archive <id>       # archive (kept for provenance, frozen from staleness)

mint is a two-step, LLM-free flow: memex signals mint <id> assembles the source notes and a synthesis prompt; you (or Claude) write the inference and persist it with --title/--summary. An inference stores a content-hash snapshot of every source, so it auto-flips to [!] STALE if a source note later changes.

Detector thresholds are tunable via env: MEMEX_ARC_DIST (default 0.45), MEMEX_ARC_MIN_MEMBERS, MEMEX_ARC_MAX_MEMBERS, MEMEX_ARC_MIN_SPAN_DAYS, MEMEX_STALE_DIST, MEMEX_STALE_MIN_NEWER, MEMEX_BURST_DORMANT_DAYS, MEMEX_BURST_MIN.

Schedule

memex schedule                 # print a cron/launchd snippet for a daily digest
memex schedule --at 08:30      # at a specific time

memex never runs a daemon. schedule prints a copy-paste cron line and launchd plist that run memex digest on a timer, the OS owns scheduling. Detection is dirty-flagged, so a scheduled run is free when nothing changed.

Edit & delete

memex edit <id>             # opens in $EDITOR
memex delete <id>
memex delete --yes <id>     # skip confirmation prompt

External vaults (sources)

memex source add ~/Documents/My\ Notes    # register an existing vault
memex source list
memex source remove ~/Documents/My\ Notes
memex index                               # scan vault + all sources
memex index --force                       # re-index everything
memex reembed                             # re-embed with current model

Use source add to index an existing Obsidian vault or any folder of Markdown files without moving them.

Config

memex config show
memex config set vault-path ~/my-vault

MCP

memex mcp install    # register with Claude Code
memex mcp path       # print the MCP binary path (for Claude Desktop)