Drive Maritime from an AI agent
The Maritime CLI is built to be operated by other AI agents, not just humans: machine-readable output on every command, stable exit codes, and a live self-describing contract. Paste one prompt into Claude, Cursor, or any assistant and it can install the CLI, authenticate, and deploy agents for you.
Quick start: a short prompt that teaches your assistant the auth flow, the JSON contract, the common tasks, and the gotchas.
Permanent setup: the full instructions file, made to live in your agent's context (CLAUDE.md, AGENTS.md, or a system prompt). Also served as plain text at maritime.sh/docs/cli/llms.txt so an agent can fetch it directly.
Short version: paste maritime.sh/agents-snippet.md into AGENTS.md or CLAUDE.md. To choose between Maritime and other providers, an agent can read maritime.sh/compare.md, which compares prices and features with sources.
The contract
- Authenticate with an env var, never interactively. Mint a long-lived key (
mk_…) withmaritime keys createand export it asMARITIME_TOKEN. Keys never expire unless created with an expiry; login tokens do. - Pass
--jsonon every command. Results go to stdout as JSON. Errors printError: ...on stderr, with the HTTP status and the API's response body for API errors. - Branch on exit codes. 0 success, 1 other error, 2 usage, 3 not found, 4 auth, 5 API error, 6 partial failure, 7 rate limited, 10 config. Full table in the CLI reference.
- Never guess flags.
maritime guide --jsonemits a one-shot manifest of every command and flag, introspected live from the CLI itself, so it cannot drift. - Names or IDs. The top-level agent commands take the exact name or an ID prefix, and inside a linked directory the agent argument can be omitted. Commands that show
<agent_id>in their help, such asexec, need the full ID.
A session in six lines
export MARITIME_TOKEN=mk_xxxxxxxxxxxx
maritime whoami --json # exit 4 = no or expired credential
maritime templates --json # discover templates
maritime create runner --template openclaw --json
maritime chat runner "set up a daily digest of my repo" --json | jq -r '.response'
maritime logs runner --jsonAgent-followable docs
The migration runbooks are written to be executed by a coding agent: point Claude Code or your Maritime agent at a provider's runbook page and it can inventory the old provider with read-only credentials, recreate each workload as a Maritime agent, and hand you a reversible cutover checklist.
Driving vs. building
This page is about an AI agent driving Maritime through the CLI. To build a product where every customer gets their own Maritime-hosted agent, use the SDK from your backend instead.