CLI reference
imux ships a compatibility CLI still named icc. High-frequency families below; full socket v2 commands follow repo docs and --help.
Install CLI
Product CLI package is iclavue (command clavue). imux also ships a compatibility binary named icc.
# Clavue product CLI (npm)
npm install -g [email protected]
clavue --version
# One-line installer (when /cli/install.sh is live)
curl -fsSL https://www.clavue.com/cli/install.sh | bash -s -- 10.12.11
# After imux.app is installed (compatibility CLI name: icc)
sudo ln -sf "/Applications/imux.app/Contents/Resources/bin/icc" /usr/local/bin/icc
icc --helpGlobal
icc --help
icc --version
# Tagged debug instance (isolation)
# ./scripts/reload.sh --tag my-taskWorkspace / panes
icc workspace list
icc workspace new --title "agent-run"
icc pane list
icc pane split --direction rightNotifications
icc notify --title "Build" --body "finished"
icc notify --title "Test" --body "failed" --soundBrowser automation
icc browser goto https://example.com
icc browser snapshot
icc browser fill --selector "#email" --text "[email protected]"Remote
icc ssh user@host
# Uses OpenSSH config; remote explorer after connectMembership / device code
# Device login (browser approve)
curl -s -X POST https://www.clavue.com/api/membership/auth/device/start \
-H "content-type: application/json" -d '{"client":"clavue-cli"}'
curl -s -X POST https://www.clavue.com/api/membership/auth/device/poll \
-H "content-type: application/json" \
-d '{"device_code":"$DEVICE_CODE"}'OpenAI-compatible API
export OPENAI_BASE_URL=https://api.clavue.com/v1
export OPENAI_API_KEY=$CLAVUE_TOKEN
curl -s $OPENAI_BASE_URL/chat/completions \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"auto","messages":[{"role":"user","content":"hi"}]}'Official model ids: auto · clavue · clavue-2.1 · clavue-2.1-fast · clavue-2.1-pro · clavue-2.1-rev
Boost packs API
# Status
curl -s https://www.clavue.com/api/membership/boost -H "Cookie: ..."
# Check-in / invite / rush
curl -s -X POST https://www.clavue.com/api/membership/boost \
-H "content-type: application/json" \
-d '{"action":"checkin"}'
curl -s -X POST https://www.clavue.com/api/membership/boost \
-H "content-type: application/json" \
-d '{"action":"rush_grab"}'Official MCP search (web_search)
[email protected]+: built-in official web_search. Auto/Cloud default ON; third-party default OFF. Setting officialMcp = auto | on | off (Settings → Integrations · /mcp · /config). Soft-fail never blocks coding; never writes user .mcp.json.
# Install
npm install -g [email protected]
# Settings (userSettings)
# officialMcp: auto | on | off
# Env override (when set)
export CLAVUE_OFFICIAL_MCP=1 # force on (needs membership token)
export CLAVUE_OFFICIAL_MCP=0 # force offHeadless / host dual-track (print · stream-json)
Hosts such as imux Agent Chat spawn the CLI with no TTY and closed stdin. [email protected]+ caps regular MCP connect (default 8s) so slow MCP cannot block all stream-json. --no-chrome and headless skip clavue-browser inject by default.
# Unattended print (recommended host argv)
clavue \
-p --verbose --output-format stream-json \
--no-session-persistence \
--allow-dangerously-skip-permissions \
--dangerously-skip-permissions \
--no-chrome \
--permission-mode bypassPermissions \
--max-turns 8 \
--model sonnet \
<<'EOF'
Reply with exactly: host-ok
EOF
# Expect: system.init → assistant… → type=result, exit 0
# Env: CLAVUE_HEADLESS_MCP_BUDGET_MS=8000 (0 = wait fully)
# CLAVUE_BROWSER_MCP=0 # hard off browser MCPsystem.init fields: model (effective), model_requested (CLI), model_source, permissionMode. If --model sonnet remaps via ANTHROPIC_DEFAULT_SONNET_MODEL / settings.env, stderr prints one line. Product ids clavue-2.1* use membership Official API and may differ from local CLI routing.
Full flag table: repo docs/clavue-headless-unattended-flags.md · dual-track response docs/clavue-cli-dual-track-response-2026-07-28.md.
Errors · network · long-task resilience
API/network fails use a diagnostic card: short primary + · kind/HTTP/attempt/model + next. Retries show attempt n/m on the status bar. First-token silence force-fails at 180s by default; mid-turn (tools running) heartbeats only — does not kill long agents.
⚠ Network error · retry (HTTP 503)
· kind: network · HTTP 503 · shouldRetry: yes
· attempt: 3/10 · model: …
· next: check connection/gateway · retry · or switch modelFull matrix: Errors · network · long-task resilience. Env: CLAVUE_SILENT_FIRST_TOKEN_MS · CLAVUE_MID_TURN_STALL_MS · CLAVUE_STREAM_IDLE_TIMEOUT_MS.