Skip to content

CLI Reference ​

A flat reference for every memrynote command, flag, and positional argument. For a prose walkthrough, see Command Line.

Synopsis ​

bash
memrynote [--vault <path>] [--json] <command> [subcommand] [args] [flags]

The 21 top-level commands are listed in the usage error when you run memrynote with no arguments:

vault | notes | folders | properties | folder-view | tasks | projects |
inbox | journal | tags | settings | locale | reminders | templates |
bookmarks | saved-filters | calendar | sync | agent | graph | search

Global flags ​

FlagTypeDescription
--vault <path>pathOverride the default vault for this call.
--jsonbooleanEmit machine-readable JSON instead of a human-formatted block.

The CLI reads the default vault from your desktop Settings → Command Line → Default vault. With multiple vaults configured, you must pick one either via memrynote vault use <name> or --vault <path> per call.

Output conventions ​

Without --json, primitives print as themselves and objects/arrays pretty-print as JSON with 2-space indentation. With --json, the underlying MemryApp.* method's return value is emitted on a single line. Delete commands return { "success": boolean }; bulk operations typically return { "count": number }.

Commands that change or remove data are marked destructive below. Every destructive command requires --yes and exits non-zero without it.


vault ​

memrynote vault <list|current|use|init|status|open|config|update-config> [args]

list ​

Lists known vaults from the desktop app's registry.

FlagTypeRequiredDescription
none
bash
memrynote vault list

current ​

Prints the active vault (from --vault or the configured default).

bash
memrynote --json vault current

use ​

Sets the default vault for future CLI calls.

PositionalDescription
<vault-name-or-path>A name from vault list or an absolute path.
bash
memrynote vault use work

init ​

Idempotently creates .memry/ folder layout and the local databases if missing.

bash
memrynote vault init

status ​

Returns vault metadata: path, version, sizes, last opened.

bash
memrynote vault status

open ​

Alias of status.

config ​

Returns the vault's editable config.

bash
memrynote vault config

update-config ​

Merges a JSON object into the vault config.

PositionalDescription
<json>Partial config object.
bash
memrynote vault update-config '{"excludePatterns":[".git","tmp"]}'

notes ​

memrynote notes <subcommand> [args]

create ​

PositionalDescription
<title>New note title.
FlagTypeDescription
--content <text>stringInitial body. Defaults to empty.
--folder <path>stringTarget folder, vault-relative. Without it the note lands in the configured default note folder.
--tag <name>repeatableTag to add. Pass multiple times.
--properties <json>JSON objectInitial frontmatter.
bash
memrynote notes create "Draft" --content "First line" --folder Projects --tag writing

list ​

FlagTypeDescription
--folder <path>stringRestrict to one folder (vault-relative).
--limit <n>numberMax rows. Default 100.
bash
memrynote notes list --folder Projects --limit 20

get ​

PositionalDescription
<id-or-path>Note id (e.g. note_abc123) or vault path.
bash
memrynote notes get note_abc123

exists ​

Returns { exists: boolean }.

PositionalDescription
<id-or-path>Note id or path.

preview ​

Resolves a wiki-link title and returns a content preview.

PositionalDescription
<title>Note title.

resolve ​

Resolves a wiki-link title to a concrete note record (no body).

Returns inbound and outbound links for a note.

PositionalDescription
<id-or-path>Note id or path.

update ​

PositionalDescription
<id-or-path>Note to modify.
FlagTypeDescription
--title <text>stringNew title.
--content <text>stringReplace body.
--append <text>stringAppend to body.
--tag <name>repeatableReplace tag set. Omit to leave untouched.
--properties <json>JSON objectReplace frontmatter.
bash
memrynote notes update note_abc123 --append "More text" --properties '{"status":"active"}'

rename ​

Renames the note and rewrites every inbound [[Old Title]] wiki-link vault-wide — headings kept, aliases untouched, case-insensitive — the same way the desktop app does.

PositionalDescription
<id-or-path>Note.
<new-title>New title.

move ​

PositionalDescription
<id-or-path>Note.
<folder>Destination folder path, vault-relative. '' = the vault root.

set-local-only ​

PositionalDescription
<id-or-path>Note.
<true/false>Whether to exclude from sync.

local-only-count ​

Returns the count of notes flagged local-only.

delete (destructive) ​

Requires --yes. Returns { success: boolean }.

PositionalDescription
<id-or-path>Note.
bash
memrynote notes delete note_abc123 --yes

attach ​

Copies the file into the vault, appends a desktop-style embed to the note body (inline image or clickable file block), and queues the upload for sync.

PositionalDescription
<note-id>Note.
<file-path>Absolute path to copy in as an attachment.

attachments ​

Lists attachments for a note.

PositionalDescription
<note-id>Note.

delete-attachment (destructive) ​

Requires --yes.

PositionalDescription
<note-id>Note.
<attachment-id>Attachment.

import-files ​

PositionalDescription
<paths...>Files or folders to import.
FlagTypeDescription
--folder <path>stringTarget folder.

export-html ​

PositionalDescription
<note-id>Note.
<output-path>Destination file.
FlagTypeDescription
--no-metadatabooleanOmit frontmatter.
--include-metadata <true/false>booleanForce include. Default true.

export-pdf ​

Same positionals as export-html plus:

FlagTypeDescription
--no-metadatabooleanOmit frontmatter.
--include-metadata <true/false>booleanForce include. Default true.
--page-size <name>stringe.g. A4, Letter.

export-markdown ​

PositionalDescription
<note-id>Note.
<output-path>Destination .md file.

snapshot ​

Creates a manual version snapshot.

PositionalDescription
<note-id>Note.
FlagTypeDescription
--reason <label>stringSnapshot label. Default manual.
--forcebooleanTake a snapshot even if content hasn't changed.

versions ​

Lists the version history of a note.

PositionalDescription
<note-id>Note.
FlagTypeDescription
--limit <n>numberDefault 50.

version ​

Returns one snapshot.

PositionalDescription
<snapshot-id>Snapshot.

restore-version ​

Restores a note to a snapshot.

delete-version (destructive) ​

Requires --yes.


folders ​

Folder paths are vault-relative: the configured default note folder is only where an unplaced note lands, never a root the CLI resolves folders under.

list ​

bash
memrynote folders list

create ​

PositionalDescription
<path>Folder path.

rename ​

PositionalDescription
<old-path>Existing folder.
<new-path>New path.

delete (destructive) ​

Requires --yes.

PositionalDescription
<path>Folder.

properties ​

get ​

Returns custom properties for any entity (note, task, etc.) that supports them.

PositionalDescription
<entity-id>Entity id.

set ​

PositionalDescription
<entity-id>Entity.
<json>Properties JSON object.

rename ​

Renames a property key on one entity.

PositionalDescription
<entity-id>Entity.
<old-key>Existing key.
<new-key>New key.

definitions ​

Lists workspace-wide property definitions. select, multiselect, status, date, and project definitions are mirrored into .memry/properties.md so the desktop app and other devices pick them up; relation definitions stay DB-only by design.

define ​

PositionalDescription
<name>Definition name.
<type>e.g. text, number, select, date.
FlagTypeDescription
--options <json>anyType-specific options (e.g. select choices).
--default <json>anyDefault value.
--color <name>stringUI color.

update-definition ​

PositionalDescription
<name>Definition.
FlagTypeDescription
--type <name>stringNew type.
--options <json>anyNew options.
--default <json>anyNew default.
--color <name>stringNew color.

delete-definition (destructive) ​

Requires --yes.


folder-view ​

Per-folder view configuration (sort, filters, custom views).

config ​

PositionalDescription
<folder-path>Folder.

set-config ​

PositionalDescription
<folder-path>Folder.
<json>Folder view config object.

views ​

Lists named views for a folder.

set-view ​

PositionalDescription
<folder-path>Folder.
<view-json>View definition.

delete-view ​

PositionalDescription
<folder-path>Folder.
<view-id>View.

list ​

Notes in the folder enriched with their visible properties.

PositionalDescription
<folder-path>Folder.
FlagTypeDescription
--limit <n>numberDefault 100.
--offset <n>numberDefault 0.

properties ​

Lists properties available in this folder.

suggestions ​

Suggests folders for a note.

PositionalDescription
<note-id>Note.

exists ​

Returns { exists: boolean } for a folder path.


tasks ​

create ​

PositionalDescription
<title>Task title.
FlagTypeDescription
--description <text>stringBody.
--project <id>stringProject id.
--status <id/null>stringStatus id; null for inbox.
--parent <id/null>stringParent task id.
--due <YYYY-MM-DD>stringDue date.
--due-time <HH:MM>stringDue time.
--start <YYYY-MM-DD>stringStart date.
--repeat <json>JSONRecurrence config.
--repeat-from <due/completion>stringRecurrence anchor.
--source-note <id>stringOriginating note.
--priority <n>numberDefault 0.
--tag <name>repeatableTag.
--link-note <id>repeatableLinked note.

list ​

FlagTypeDescription
--completedbooleanInclude completed.
--archivedbooleanInclude archived.
--project <id>stringFilter by project.
--status <id/null>stringFilter by status.
--parent <id/null>stringFilter by parent.
--due-before <date>stringDue strictly before.
--due-after <date>stringDue strictly after.
--tag <name>repeatableTag filter.
--search <text>stringText search.
--sort-by <field>stringSort key.
--sort-order <asc/desc>stringSort direction.
--limit <n>numberPagination.
--offset <n>numberPagination.
bash
memrynote tasks list --project proj_1 --due-before 2026-01-01 --sort-by due --sort-order asc

get ​

PositionalDescription
<id>Task id.

update ​

Positional <id>. Same flags as create; only specified flags are written.

done / complete ​

Marks a task complete.

PositionalDescription
<id>Task id.

reopen ​

Reopens a completed task.

archive / unarchive ​

Toggles the archive flag.

move ​

PositionalDescription
<id>Task.
FlagTypeDescription
--project <id>stringDestination project.
--status <id/null>stringDestination status.
--parent <id/null>stringNew parent.
--position <n>numberPosition within the status column.

get-subtasks ​

PositionalDescription
<id>Parent task.

get-linked-tasks ​

PositionalDescription
<note-id>Note whose linked tasks to return.

today ​

FlagTypeDescription
--date <YYYY-MM-DD>stringOverride "today".

upcoming ​

FlagTypeDescription
--days <n>numberWindow. Default 7.
--from <YYYY-MM-DD>stringWindow start.

overdue ​

FlagTypeDescription
--date <YYYY-MM-DD>stringReference date.

stats ​

FlagTypeDescription
--date <YYYY-MM-DD>stringReference date.

tags ​

Returns the set of tags used on tasks.

convert-to-subtask ​

PositionalDescription
<task-id>Task to demote.
<parent-id>New parent.

convert-to-task ​

Promotes a subtask back to a top-level task.

PositionalDescription
<id>Task.

duplicate ​

PositionalDescription
<id>Source task.

bulk-done / bulk-complete ​

PositionalDescription
<id...>Task ids.

bulk-archive ​

PositionalDescription
<id...>Task ids.

bulk-move ​

PositionalDescription
<id...>Task ids.
FlagTypeRequiredDescription
--project <id>stringyesDestination project.

bulk-delete (destructive) ​

Requires --yes.

reorder ​

Reorders tasks within their list.

PositionalDescription
<id...>Task ids in desired order.
FlagTypeDescription
--position <n>repeatableOne per id, parallel to positional order.

delete (destructive) ​

Requires --yes.


projects ​

list ​

bash
memrynote projects list

get ​

PositionalDescription
<id>Project id.

create ​

PositionalDescription
<name>Project name.
FlagTypeDescription
--description <text>string
--color <name>string
--icon <name>string

update ​

Positional <id>. Flags --name, --description, --color, --icon.

archive / unarchive ​

PositionalDescription
<id>Project.

delete (destructive) ​

Requires --yes.

reorder ​

PositionalDescription
<id...>Project ids in desired order.
FlagTypeDescription
--position <n>repeatableOne per id.

statuses ​

Lists statuses for a project.

PositionalDescription
<project-id>Project.

status-create ​

PositionalDescription
<project-id>Project.
<name>Status name.
FlagTypeDescription
--color <name>stringUI color.
--done <true/false>booleanTreats tasks in this status as completed.

status-update ​

PositionalDescription
<status-id>Status.
FlagTypeDescription
--name <text>string
--color <name>string
--position <n>numberColumn position.
--default <true/false>booleanMake default status for new tasks.
--done <true/false>boolean"Done" semantics.

status-delete (destructive) ​

Requires --yes.

status-reorder ​

PositionalDescription
<id...>Status ids.
FlagTypeDescription
--position <n>repeatableOne per id.

inbox ​

capture ​

PositionalDescription
<content>Text content.
FlagTypeDescription
--title <text>stringOptional title.
--tag <name>repeatableTag.
PositionalDescription
<url>Link.
FlagTypeDescription
--tag <name>repeatableTag.

capture-file ​

PositionalDescription
<file-path>File to import.
FlagTypeDescription
--mime <type>stringOverride detected MIME.
--title <text>string
--tag <name>repeatable

get ​

PositionalDescription
<id>Inbox item.

list ​

FlagTypeDescription
--archivedbooleanInclude archived.
--include-snoozedbooleanInclude snoozed.

tags ​

Returns tags used on inbox items.

stats ​

Returns counts (new, snoozed, archived, etc.).

patterns ​

Returns detected filing patterns.

archived ​

FlagTypeDescription
--search <text>string
--limit <n>numberDefault 50.
--offset <n>numberDefault 0.

filing-history ​

FlagTypeDescription
--limit <n>numberDefault 20.

stale-threshold ​

Returns the staleness cutoff in days.

set-stale-threshold ​

PositionalDescription
<days>Threshold in days.

update ​

PositionalDescription
<id>Inbox item.
FlagTypeDescription
--title <text>string
--content <text>string

add-tag / remove-tag ​

PositionalDescription
<id>Inbox item.
<tag>Tag name.

mark-viewed ​

PositionalDescription
<id>Inbox item.

convert-note / convert-task ​

Promotes an inbox item to a note or task.

PositionalDescription
<id>Inbox item.
<note-id>Target note.
FlagTypeDescription
--tag <name>repeatableTag.

snooze ​

PositionalDescription
<id>Inbox item.
FlagTypeRequiredDescription
--until <ISO>stringyesWake-up timestamp.
--reason <text>stringOptional reason.

unsnooze ​

PositionalDescription
<id>Inbox item.

snoozed ​

Lists currently snoozed items.

bulk-tag ​

PositionalDescription
<id...>Inbox item ids.
FlagTypeDescription
--tag <name>repeatableTags to apply.

bulk-snooze ​

PositionalDescription
<id...>Inbox item ids.
FlagTypeRequiredDescription
--until <ISO>stringyes
--reason <text>string

bulk-archive ​

PositionalDescription
<id...>Inbox item ids.

archive / unarchive ​

PositionalDescription
<id>Inbox item.

delete (destructive) ​

Requires --yes. Removes the inbox item permanently.


journal ​

get ​

PositionalDescription
<date>YYYY-MM-DD.

write ​

PositionalDescription
<date>YYYY-MM-DD.
<content>Replaces the entry body.

append ​

PositionalDescription
<date>YYYY-MM-DD.
<content>Appended to existing body.

delete (destructive) ​

Requires --yes.

PositionalDescription
<date>YYYY-MM-DD.

month ​

PositionalDescription
<year>Four-digit year.
<month>1–12.

heatmap ​

PositionalDescription
<year>Four-digit year.

stats ​

PositionalDescription
<year>Four-digit year.

context ​

Returns same-day notes, tasks, and reminders.

PositionalDescription
<date>YYYY-MM-DD.

tags ​

Returns tags used in journal entries.

streak ​

Returns the current writing streak.


tags ​

list ​

bash
memrynote tags list

notes ​

PositionalDescription
<tag>Tag name.

color / set-color ​

PositionalDescription
<tag>Tag name.
[color]New color (or use --color).
FlagTypeDescription
--color <name>stringNew color.

rename ​

PositionalDescription
<old>Existing tag.
<new>New name.

remove-from-note ​

PositionalDescription
<note-id>Note.
<tag>Tag to remove from this note only.

merge ​

PositionalDescription
<source>Tag to merge from.
<target>Tag to merge into (kept).

delete (destructive) ​

Requires --yes. Removes the tag from every entity.


settings ​

list ​

Returns all key/value settings.

groups ​

Lists logical groups (UI sections).

group ​

PositionalDescription
<name>Group name.

set-group ​

PositionalDescription
<name>Group name.
<json>Partial settings object for the group.

ai ​

Returns AI settings.

set-ai ​

PositionalDescription
<true/false>Enable or disable AI features.

get ​

PositionalDescription
<key>Setting key.

set ​

PositionalDescription
<key>Setting key.
<value>Value (parsed as JSON if possible).

delete (destructive) ​

Requires --yes.


locale ​

get ​

Returns the active locale code.

set ​

PositionalDescription
<code>Locale code (e.g. en-US, tr-TR).

list ​

Lists supported locales.


reminders ​

create ​

PositionalDescription
<target-type>note, journal, or highlight.
<target-id>Id of the targeted entity.
FlagTypeRequiredDescription
--at <ISO>stringyesFire time.
--title <text>string
--note <text>string
--highlight-text <text>stringFor highlight target.
--highlight-start <n>numberCharacter offset.
--highlight-end <n>numberCharacter offset.

get ​

PositionalDescription
<id>Reminder id.

update ​

PositionalDescription
<id>Reminder id.
FlagTypeDescription
--at <ISO>stringNew fire time.
--title <text/null>string
--note <text/null>string

list ​

FlagTypeDescription
--target-type <name>stringnote, journal, or highlight.
--target-id <id>string
--status <name>stringpending, triggered, dismissed, or snoozed.
--from <ISO>stringWindow start.
--to <ISO>stringWindow end.
--limit <n>numberDefault 50.
--offset <n>numberDefault 0.

for-target ​

PositionalDescription
<target-type>note, journal, or highlight.
<target-id>Entity id.

due ​

Returns reminders past their fire time.

upcoming ​

FlagTypeDescription
--days <n>numberWindow. Default 7.

dismiss ​

PositionalDescription
<id>Reminder.

snooze ​

PositionalDescription
<id>Reminder.
[until]New ISO time, or use --until.
FlagTypeDescription
--until <ISO>stringNew fire time.

count-pending ​

Returns the count of pending reminders.

bulk-dismiss ​

PositionalDescription
<id...>Reminder ids.

delete (destructive) ​

Requires --yes.


templates ​

Custom templates live in the vault database (data.db) and sync across devices, the same store the desktop app uses. Legacy .memry/templates/*.md files are imported once on first run and then left on disk as a downgrade path. Desktop's built-in templates are not listed here.

list ​

bash
memrynote templates list

get ​

PositionalDescription
<id>Template id.

create ​

PositionalDescription
<name>Template name.
FlagTypeDescription
--description <text>string
--icon <name>string
--content <text>stringTemplate body.
--tag <name>repeatableTag.

update ​

Positional <id>. Flags --name, --description, --icon, --content, --tag.

duplicate ​

PositionalDescription
<id>Source template.
<new-name>Name for the duplicate.

delete (destructive) ​

Requires --yes.


bookmarks ​

list ​

FlagTypeDescription
--type <name>stringFilter by item type.

get ​

PositionalDescription
<id>Bookmark id.

get-by-item ​

PositionalDescription
<item-type>e.g. note, task.
<item-id>Item id.

list-by-type ​

PositionalDescription
<item-type>Item type filter.

add ​

PositionalDescription
<item-type>Item type.
<item-id>Item id.

toggle ​

Same positionals as add. Adds if missing, removes if present.

remove ​

PositionalDescription
<item-type>Item type.
<item-id>Item id.

delete (destructive) ​

Requires --yes. Removes by bookmark id.

PositionalDescription
<id>Bookmark id.

has ​

PositionalDescription
<item-type>Item type.
<item-id>Item id.

Returns { bookmarked: boolean }.

reorder ​

PositionalDescription
<id...>Bookmark ids in desired order.

bulk-create ​

PositionalDescription
<json-array>JSON array of { "itemType", "itemId" }.
bash
memrynote bookmarks bulk-create '[{"itemType":"note","itemId":"note_1"}]'

bulk-delete ​

PositionalDescription
<id...>Bookmark ids.

saved-filters ​

list ​

bash
memrynote saved-filters list

get ​

PositionalDescription
<id>Saved filter id.

create ​

PositionalDescription
<name>Filter name.
FlagTypeDescription
--config <json>JSONFilter config. Defaults to {}.

update ​

PositionalDescription
<id>Saved filter id.
FlagTypeDescription
--name <text>stringNew name.
--config <json>JSONNew config.

reorder ​

PositionalDescription
<id...>Filter ids in desired order.
FlagTypeDescription
--position <n>repeatableOne per id.

delete (destructive) ​

Requires --yes.


calendar ​

Calendar groups several sub-namespaces. The top-level subcommands are:

sources | select-source | provider-status | google-settings |
set-default-google-calendar | range | external <action> |
bindings <action> | events <action>

sources ​

FlagTypeDescription
--provider <name>stringFilter by provider.
--kind <name>stringFilter by kind.
--selectedbooleanOnly return selected sources.

select-source ​

PositionalDescription
<source-id>Source id.
FlagTypeDescription
--selected <true/false>booleanSelection state. Default true.

provider-status ​

PositionalDescription
[provider]Provider name (or use --provider).
FlagTypeRequiredDescription
--provider <name>stringyes (or positional)Provider name.
--account <id>stringAccount scope.

google-settings ​

Returns the active Google calendar configuration.

set-default-google-calendar ​

PositionalDescription
<calendar-id/null>Google calendar id, or null to clear.
FlagTypeDescription
--calendar <id/null>stringAlternative to positional.
--mark-onboarding <true/false>booleanDefault true.

range ​

Returns events from all selected sources in a window.

FlagTypeRequiredDescription
--start <ISO>stringyesWindow start.
--end <ISO>stringyesWindow end.
--include-unselectedbooleanInclude unselected sources.

external list ​

FlagTypeDescription
--source <id>stringSource filter.
--archivedbooleanInclude archived.
--start <ISO>stringWindow start.
--end <ISO>stringWindow end.

external get ​

PositionalDescription
<event-id>External event id.

external promote ​

Promotes an external event to a managed memrynote event.

PositionalDescription
<event-id>External event id.

bindings list ​

FlagTypeDescription
--source-type <name>string
--source <id>string
--provider <name>string
--archivedboolean

bindings get ​

PositionalDescription
<binding-id>Binding id.

events create ​

PositionalDescription
<title>Event title.
FlagTypeRequiredDescription
--start <ISO>stringyesStart time.
--end <ISO>stringEnd time.
--timezone <tz>stringDefault UTC.
--description <text>string
--location <text>string
--all-day <true/false>booleanDefault false.

events get ​

PositionalDescription
<event-id>Event id.

events list ​

FlagTypeDescription
--start <ISO>stringWindow start.
--end <ISO>stringWindow end.
--archivedbooleanInclude archived.

events update ​

PositionalDescription
<event-id>Event id.
FlagTypeDescription
--title <text>string
--start <ISO>string
--end <ISO/null>string
--timezone <tz>string
--description <text/null>string
--location <text/null>string
--all-day <true/false>boolean

events delete (destructive) ​

Requires --yes.


sync ​

status ​

Returns the live sync state (linked? paused? last cursor? errors?).

queue-size ​

Returns the pending outbound queue size.

history ​

FlagTypeDescription
--limit <n>numberDefault 50.
--offset <n>numberDefault 0.

devices ​

Lists known devices for this account.

storage ​

Returns the encrypted-blob storage breakdown by type.

quarantine ​

Lists items the engine quarantined (typically schema mismatches).

check-device ​

Verifies this device is still authorized.

pause / resume ​

Toggles the sync engine.

settings ​

Returns the synced-settings snapshot.

update-setting ​

PositionalDescription
<path>Dot-separated path within synced settings.
<value>New value (parsed as JSON if possible).

agent ​

backends ​

Returns availability + version info for each agent backend.

models ​

PositionalDescription
[backend]claude_cli, codex_cli or antigravity_cli (or use --backend).
FlagTypeDescription
--backend <name>stringclaude_cli, codex_cli or antigravity_cli.

local-settings ​

Returns the local-provider settings used by Agent Chat.

set-local-settings ​

FlagTypeDescription
--preset <name>stringollama, lm_studio, llama_cpp, or custom.
--base-url <url>stringBase URL.
--model <name>stringDefault model.
--allow-non-loopback <true/false>booleanAllow non-localhost URLs.

graph ​

data ​

Returns the full link graph for visualization.

local ​

PositionalDescription
<note-id>Center note.
FlagTypeDescription
--depth <n>numberHops out. Default 2.

stats ​

Returns index size and last-build info.

reasons ​

Lists recent items the search engine highlighted.

add-reason ​

PositionalDescription
<item-id>Item id.
<item-type>note, journal, task, or inbox.
<item-title>Display title.
<search-query>Query that surfaced the item.

clear-reasons ​

Removes all stored search reasons.

tags ​

Returns tags discovered while indexing.

rebuild-index ​

Schedules a full reindex. Returns { started: true, indexed: <n> }.

(free text) ​

Any other subcommand or arguments are joined with spaces and treated as a search query.

bash
memrynote search project plan
memrynote --json search "encryption nonce"

Exit codes ​

CodeMeaning
0Success.
1Any thrown error. Message is written to stderr.

The most common error messages are:

  • Missing <label> — a required positional is missing.
  • Invalid number: <value> or Invalid boolean: --<flag> — a flag failed to parse.
  • Pass --yes to delete a <thing> — a destructive command needs the safety flag.
  • Multiple vaults found. Choose one with memrynote vault use ... or run with --vault <path>.
  • No default vault configured. Open memrynote and choose Settings > Command Line > Default vault, or run with --vault <path>.

Environment variables ​

VariableMeaning
MEMRY_MIGRATIONS_DIRDirectory holding drizzle-data/ and drizzle-index/. An escape hatch — the CLI finds them on its own, both from a packaged install and from a source checkout. Set it only if it ever reports that it could not.

If a command fails with Could not find the drizzle-data migrations folder, the error lists every path that was checked; point MEMRY_MIGRATIONS_DIR at the right one and please open an issue, since finding them should not need help.

Released under the GNU GPL v3.0.