CLI Reference
Complete reference for all haiku commands and flags.
haiku recite
Run a test. Input can be:
- A
.haikufile (any platform — iOS, Python, Rust, …). Haiku compiles it first when needed, then runs it. - A
.simfile (a pre-compiled iOS action sequence). - A generated backend test file (e.g.
test_foo.py,foo_test.go,cache_test.rs) — runs directly without re-compilation.
| Flag | Description |
|---|---|
--fresh / --no-cache | Bypass compile cache when input is a .haiku file |
-m, --model <shorthand> | Coder-model shorthand |
--trace[=PATH] | Forensic recite-session log. A log is always written; this flag controls where. Omitted → /tmp/haiku-recite-<timestamp>.log. Bare --trace → <output>.haiku.log next to the spec. --trace=PATH → user-supplied path. |
For iOS targets, the simulator is taken from the spec's target.device field
in the frontmatter. There is no --device flag at the CLI — the spec owns
its simulator pinning so a recite is reproducible without invocation
arguments. The xctest-driver picks a free localhost port automatically; no
configuration needed.
haiku record
Record a session and generate a .haiku file you can edit and re-run.
For iOS, <command> is a bundle ID (reverse-DNS), optionally prefixed or
suffixed with a simulator device name:
For backend targets, <command> is the command you'd normally run to execute
or test your service. The -o filename's <lang>.haiku extension chooses the
generated file's language:
| Flag | Description |
|---|---|
-o, --output <file> | Output .haiku file path; omit to stream to stdout (backend) |
-m, --model <shorthand> | Coder-model shorthand |
--trace[=PATH] | Forensic record-session log (see haiku recite --trace) |
haiku completions
Print a shell completion script to stdout.
Supported shells: bash, zsh, fish, elvish, powershell.
The installer sets this up automatically for zsh and bash. For other shells, or to set it up manually:
haiku models
List downloaded coder models and their -m shorthands. Pass any of these to
recite/record via -m <shorthand> to override the default coder model.
Output looks like:
haiku models install
Download an additional model by its shorthand. The default install only fetches
the three required models (llama, qwen3-vl, qwen3, ~8 GB total). The
larger optional coder models (qwen3-moe, qwen3-6, each ~16 GB) can be
pulled on demand:
Once installed, pass them to recite / record via -m:
haiku models remove
Remove an installed optional model and reclaim its disk space:
| Flag | Description |
|---|---|
-y, --yes | Skip the confirmation prompt |
Required models (llama, qwen3-vl, qwen3) cannot be removed
individually — removing any of them would break recite. To wipe haiku and
all of its models, run haiku uninstall.
haiku skill
Install Haiku integrations into your AI coding agent's skills directory (Claude Code, Cursor, …).
haiku uninstall
Remove haiku binaries, AI models, and shell PATH entries. Prompts for
confirmation before making any changes.
Removes:
~/.haiku/bin/—haiku,haiku-vl-assert,Haiku.app~/.haiku/models/— all downloaded models (~6 GB total)- The
PATHexport line from~/.zshrc,~/.bash_profile, and~/.profile