Command Line

Your archive is files, so it gets a proper terminal interface. The ewig CLI ships inside the Mac app: query, pipe and export bookmarks like any other data on your machine.

Setup

The binary is bundled at Ewig.app/Contents/Helpers/ewig. Add it to your PATH, or symlink it:

$ ln -s /Applications/Ewig.app/Contents/Helpers/ewig /usr/local/bin/ewig

Commands

CommandWhat it does
ewig listList bookmarks. Filter with --folder <name> and --since <date>.
ewig searchSearch titles, domains, URLs and notes; same index as ⌘K.
ewig show <id>Print a bookmark’s metadata.
ewig html <id>Output the snapshot HTML to stdout.
ewig screenshot <id>Save the full-page screenshot as a PNG.
ewig open <id>Open the snapshot: --live for the original URL, --path to print the folder.
ewig addSave new bookmarks from arguments or stdin.
ewig update / delete / restoreBatch-edit bookmarks by id.
ewig exportExport to netscape, json or csv; scope with --folder.

Addressing bookmarks

Every command that takes an id accepts any of:

  • the full UUID,
  • the 8-character short id shown in the app (e.g. 1a2b3c4d),
  • or the bookmark’s URL.

JSON everywhere

Add --json to any command for machine-readable output. With stdin support too, the CLI slots straight into pipelines and makes your archive a data source for scripts and local AI agents:

$ ewig search "swift concurrency" --json | jq '.[].title'
"Swift Concurrency Guide"
$ pbpaste | ewig add
Added 1 bookmark to Unsorted
$ ewig list --folder Tech --since 2026-06-01 --json | jq length
42

Agent idea: point your local LLM at ewig search --json and ewig html and it can answer questions from pages you’ve saved, entirely offline.