Command Line Reference
aivoryd is the daemon and its command line. aivory is the desktop app. Run aivoryd --help or aivoryd <command> --help to see the same information in your terminal.
- Sessions:
list,showandresume - Daemon:
serve,callandpush - Themes:
themeandregistry - Repos:
map
Global Options
These options work with every aivoryd command.
| Option | Meaning |
|---|---|
--claude-home <DIR> |
Claude home directory (default: ~/.claude). Environment: AIVORY_CLAUDE_HOME |
--codex-home <DIR> |
Codex home directory (default: ~/.codex). Environment: AIVORY_CODEX_HOME |
--gemini-home <DIR> |
Gemini home directory (default: ~/.gemini). Environment: AIVORY_GEMINI_HOME |
--cache-file <FILE> |
Scan cache file (default: per-user cache directory) |
--no-cache |
Do not read or write the scan cache |
-h, --help |
Print help |
-V, --version |
Print the version |
Sessions
aivoryd list
List the native sessions on this machine, newest first.
aivoryd list --provider claude --limit 10
| Option | Meaning |
|---|---|
--provider <PROVIDER> |
Show one provider only |
--cwd <CWD> |
Only sessions in this directory or below it |
--limit <LIMIT> |
Show at most this many sessions |
--json |
Print JSON |
aivoryd show
Print one session as JSON. Give a session id or a unique id prefix.
aivoryd show <ID>
aivoryd resume
Resume a session with the native CLI and print the normalised events as JSON lines.
aivoryd resume <ID> --prompt "Run the tests"
| Option | Meaning |
|---|---|
--prompt <PROMPT> |
The prompt to send (required) |
--provider <PROVIDER> |
The provider |
--model <MODEL> |
The model |
--raw |
Print events that the parser does not map |
--extra-arg <ARG> |
Extra argument for the CLI. Repeat it for more arguments |
Daemon
aivoryd serve
Serve JSON-RPC 2.0 (newline-delimited JSON) on a named pipe or Unix socket.
aivoryd serve --scope ~/projects/shop
| Option | Meaning |
|---|---|
--endpoint <ENDPOINT> |
The endpoint name (default: default) |
--demo |
Serve the war room on the demo data (no real sessions) |
--scope <SCOPE> |
Show only sessions whose working folder lies below this folder |
--remote <REMOTE> |
Serve the phone app over WebSocket on this address, for example 0.0.0.0:7420 |
--iroh |
Serve the phone app over iroh (QUIC with hole punching and a relay), also outside the local network. Can run next to --remote and --demo |
--relay <URL> |
Relay for --iroh: a URL, default for the iroh relays, or none for direct paths only. Environment: AIVORY_RELAY |
--push-url <URL> |
URL of the push gateway for the sealed phone push. Without a URL, there is no push. Environment: AIVORY_PUSH_URL |
aivoryd call
Call one JSON-RPC method of a running daemon and print the messages.
aivoryd call <METHOD>
aivoryd push key
Print the SHA-256 of the daemon key for the allow list of the push gateway. The command creates the key file push.key next to iroh.key when it is missing.
aivoryd push key
Themes
See Make a Theme and Publish and Install Themes for the workflow.
aivoryd theme
| Command | What it does |
|---|---|
aivoryd theme init <ID> [--from <THEME>] |
Make a starter folder ./<ID> from Minimal, or from an installed theme |
aivoryd theme add <SOURCE> |
Download a theme (github:<owner>/<repo>[@tag] or a GitHub link), check it, and install it |
aivoryd theme list |
Show the installed themes, their source, version and local changes |
aivoryd theme diff <ID> |
Show the local edits and the upstream changes of a theme |
aivoryd theme update <ID> |
Update a theme at file level. An edited file stays and gets <file>.upstream |
aivoryd theme remove <ID> |
Remove a theme. The current theme falls back to Minimal |
aivoryd theme check [DIR] |
Check a theme folder. Without a folder, ask the source of each installed theme for a newer version |
aivoryd theme pack <DIR> |
Make <id>-<version>.aivory-theme.zip from a theme folder and print its SHA-256 |
aivoryd theme dev <DIR> |
Check a theme folder on each save and print the errors |
aivoryd registry
| Command | What it does |
|---|---|
aivoryd registry build <DIR> |
Make registry.json and the item archives from a theme repo with registry.toml |
aivoryd registry add <NAME> <URL> |
Add a registry, for example aivoryd registry add @someone https://someone.github.io/aivory/registry.json |
aivoryd registry list |
List the registries and their items |
aivoryd registry remove <NAME> |
Remove a registry |
Repos
aivoryd map
Write or print the part map of a repository (.aivory/map.toml).
| Command | What it does |
|---|---|
aivoryd map init <REPO> |
Guess a first .aivory/map.toml from the top folders of a repository |
aivoryd map show <REPO> |
Print the parts of a repository map as JSON |
The Desktop App
| Command | What it does |
|---|---|
aivory |
Start the desktop app. It starts aivoryd when no daemon runs |
aivory --demo |
Serve the demo data in the app. You need no daemon |
aivory --demo --demo-rich |
Show sample transcripts with markdown, diffs and todos |
aivory --endpoint <NAME> |
Use a daemon endpoint with this name |
Set AIVORY_DEMO_SESSIONS=<n> to show exactly n live sessions in demo mode.