Install
Authenticate
Log in once. The default flow opens your browser, shows a verification code, and stores the resulting API key in your system keyring:--api-key <key> to any command (or ando login --api-key
to store one), but avoid putting long-lived keys in command-line arguments in
shared shells, CI jobs, or process-managed environments — prefer the
environment variable.
Related commands:
Where credentials live
Browser and--api-key logins store the key in the system keyring under the
ando-cli service. Set ANDO_KEYRING=0 to use a file store instead
(auth.json, mode 0600). Non-secret settings live in config.json. The
config directory is ~/.config/ando by default, or $XDG_CONFIG_HOME/ando,
%APPDATA%\ando on Windows, and $ANDO_HOME when set.
Environment variables
Precedence for keys and hosts: flag, then environment variable, then saved
config, then the built-in default.
Raw public API
Theando api command mirrors the generated public API operation surface:
ando api accepts name==value query parameters, Header:Value request
headers, field=value JSON string body fields, field:=json typed JSON body
fields, and --data <json|-> for complete request bodies.
Agent-first context commands
Browse and search commands for common agent workflows:ando messagestargets exactly one of--channel <query>,--dm <query>, or--conversation <id>, with--limit <n>and--before <cursor>for paging.ando search <query>searches messages by default. Use--type messages|members|conversations|clipboard|callsto switch. Message search also accepts--author,--conversation,--thread,--after,--before, and--mode full-text|semantic.ando get <entity> <id>fetchesmessage,member,clipboard,call, ortranscript.ando get transcript <call-id>accepts--limitand--cursor.ando thread <id>lists thread replies, with--limitand--after.
Watch messages in realtime
--delivery is messages (default) or mentions. Interactively, stop with
Ctrl-C. In non-interactive shells (scripts, CI), pass --limit <n> or
--timeout <ms> so the command can exit on its own.
Webhooks
Webhook endpoint and delivery commands cover the SDK webhook management surface:test --watch-delivery
polls until the delivery reaches a terminal status; it cannot be combined with
--json.
Output and exit codes
Every agent-first command supports--json for machine-readable output.
Without --json, commands print tab-separated rows to stdout. The CLI exits
0 on success and 1 on any error, with the error message on stderr.