Memo

Configuration

Look up every setting in Memo's config file and the environment variables it reads.

This page lists every setting in Memo's config file and every environment variable Memo reads. Use it to look up a setting; you rarely need to edit the file by hand. memo folders add adds a folder and memo auto on turns the timer on for you. Edit the file yourself for files to skip, mail accounts and where exported notes go.

The file is ~/.config/cli-memo/config.json. It is a JSON file: keep the quotes, commas and braces as in the example.

{
  "notes": {
    "folders": [{ "id": "1", "path": "/path/to/vault", "format": "obsidian" }],
    "ignore": ["Journal/Private.md", "Archive", "**/Private*"],
    "embed": true,
    "export": { "dir": "/path/to/vault/memo", "format": "obsidian" }
  },
  "mail": {
    "accounts": [{ "name": "work", "address": "[email protected]" }],
    "maxBodyChars": 1000000,
    "maxAttachmentChars": 200000
  },
  "auto": { "enabled": true, "every": "5m" }
}

notes

KeyMeaning
foldersYour note folders. Each has the id the local store gave it, its path on this computer and its format: obsidian (the default) or markdown. memo folders add writes an entry; an entry with no id is refused by import. See Markdown or Obsidian.
ignoreFiles and folders that import skips: a path inside the folder, a folder, or a pattern such as **/Private*. --ignore adds rules for one run.
embedfalse keeps notes out of search by meaning.
exportdir and format for memo notes export and --export when you give no folder.

The folder id is the same on every computer; the path is different on each. See use the same notes on another computer.

mail

accounts lists the mail accounts to import. Each account has:

KeyMeaning
nameThe account's name in Himalaya, and the name in memo mail <name> import.
addressThe email address.
modegmail (the default) or imap.
foldersFor imap: the mail folders to read, such as ["INBOX", "Archive"].
embedfalse keeps this account's mail out of search by meaning.

Next to accounts:

KeyMeaning
maxBodyCharsHow many characters of each email are kept. Default 1,000,000.
maxAttachmentCharsHow many characters of each attachment's text are kept. Default 200,000.

See Mail.

auto

KeyMeaning
enabledtrue when the import timer is on.
everyHow often it runs: 90s, 5m, 1h; one minute or more.

memo auto on and memo auto off write these. If you edit them by hand, the timer follows at its next run. See importing on a timer.

Environment variables

VariableMeaning
MEMO_CONFIG_DIRThe folder that holds config.json.
MEMO_STATE_DIRMemo's state folder: what each folder looked like at the last import.
MEMO_MODELS_ANALYSIS_PROVIDER, MEMO_MODELS_ANALYSIS_MODELThe AI provider and the model identifier (the name the provider uses for it) that memo ask --model calls.
MEMO_MODELS_ANALYSIS_BASE_URLOptional: the provider's address.
MEMO_MODEL_API_KEYThe provider's key.

Memo calls a provider outside your computer only when memo ask has both --model and --allow-remote. See give your agent the sources.