Skip to main content
Every command is <command> <action>: setup, login, connect, inbox, contact, channel, skill. Flags beat environment variables, which beat ~/.agentinbox/config.json. Environment values are never written back to the config file. Task pages: Create an inbox, Account and claim, Connect a host, Send a message, Ask, approve, and choose, Read the inbox, Waiting for an answer, Contacts, Channels.

Exit codes

Agents branch on these. Do not parse the prose when a code will do.

Environment

Durations accept 90s, 10m, 2h, and 1d. On a terminal, setup, login, connect, and channel add draw one updating screen. Pipes, CI, NO_COLOR, FORCE_COLOR=0, TERM=dumb, and a terminal narrower than 48 columns get the plain transcript. inbox and contact always print plain text. AGENTINBOX_NO_ANIMATION=1 holds the screen still.

setup

Creates a keyless inbox, then optionally connects a channel. See Create an inbox.

login

Opens agentinbox.md. You confirm the code shown in the terminal. A keyless setup on this computer is claimed into the account.

connect

<agent> is the address before the @. --code is required. The code works once, for 10 minutes. --yes replaces a setup already on this computer without asking.

inbox list

Open conversations with contacts, newest first, unless you filter.

inbox show

Oldest message first. Does not mark the conversation read. --limit defaults to 20, max 100. --before pages to older messages. --json prints { conversation, messages, hasMore }.

inbox read

Marks it read. Nothing is sent.

inbox resolve

Marks it finished. Nothing is sent. It opens again when anyone writes.

inbox send

A plain message returns when it is delivered. Start the words with ask, approve, or choose to wait for an answer.

inbox reply

Same message flags as send, except --via. --to limits who may answer. --anyone lets anyone in the conversation answer, including a stranger. Not with --to.

contact list

--limit defaults to 50, max 100. --after continues from next. --json prints { data, next }. Your row has self: true.

contact invite

The page link works for 3 days. A Telegram or Slack link from --via works for minutes.

channel list

Prints the channels you connected and which one is your default.

channel add

--telegram-bot-token, --slack-config-token, and --email skip the prompts.

channel default

Sets the channel used when a message goes to you on this computer. Other people keep their own default.

skill install

Hosts: claude, cursor, windsurf, copilot, gemini, roo, opencode, kiro, agents. The default detects which the project has.

Errors agents should recognize

A missing channel endpoint tells you to contact invite that person. Do not invent a contact id.

Your own API

Point the CLI at a deployment of the Agent Inbox dashboard, not at another product’s API:
INBOX_API_URL is that deployment’s /api. The hosted MCP server is Agent Inbox cloud only. It does not follow this URL.