Esta página aborda a mecânica de entrada e saída da CLI ant que se aplica a todos os endpoints. Para instalação e autenticação, consulte o Quickstart. Para encadear comandos e versionar recursos, consulte Scripting e automação com a CLI.
Os comandos seguem o padrão resource action. Recursos aninhados usam dois-pontos:
ant <resource>[:<subresource>] <action> [flags]Execute ant --help para ver a lista completa de recursos, ou adicione --help a qualquer subcomando para ver suas flags.
Recursos em beta (incluindo agents, sessions, deployments, environments e skills) ficam sob o prefixo beta:. Comandos nesse namespace enviam automaticamente o cabeçalho anthropic-beta apropriado para aquele recurso, então você não precisa passá-lo manualmente. Use --beta <header> apenas para substituir o padrão (por exemplo, para optar por uma versão de schema diferente).
ant models list
ant messages create --model claude-opus-4-8 --max-tokens 1024 ...
ant beta:agents retrieve --agent-id agent_01...
ant beta:sessions:events list --session-id session_01...| Flag | Descrição |
|---|---|
--profile | Perfil nomeado a ser usado nesta invocação (equivalente a definir ANTHROPIC_PROFILE). Consulte Alternar entre workspaces. |
--format | Formato de saída: auto, json, jsonl, yaml, pretty, raw, explore |
--transform | Filtra ou reformata a resposta com um caminho GJSON |
-r, --raw-output | Imprime resultados de string sem aspas ao redor, como jq -r |
--base-url | Substitui a URL base da API |
--debug | Imprime a requisição e resposta HTTP completas no stderr |
--format-error, --transform-error | Igual a --format e --transform, mas aplicados a respostas de erro |
auto imprime JSON formatado (pretty-print) e é o padrão para comandos que criam ou modificam recursos. Comandos de listagem e recuperação usam por padrão o explorador interativo ao escrever em um terminal, e JSON formatado quando redirecionados via pipe. Substitua qualquer um dos padrões com --format:
ant models retrieve --model-id claude-opus-4-8 --format yamltype: model
id: claude-opus-4-8
display_name: Claude Opus 4.8
created_at: "2026-02-04T00:00:00Z"
...Endpoints de listagem fazem paginação automática. Nos formatos padrão, cada item é escrito separadamente (um objeto JSON compacto por linha no modo jsonl, um fluxo de documentos YAML no modo yaml), o que flui de forma limpa para head, grep e filtros --transform.
O explorador é uma TUI com recursos de expandir/recolher e busca para navegar por respostas grandes. As teclas de seta expandem e recolhem nós, / busca, q sai. Comandos de listagem e recuperação o abrem por padrão quando conectados a um terminal. Passe --format explore para abri-lo explicitamente:
ant models list --format exploreUse --transform para reformatar respostas antes de imprimi-las. A expressão é um caminho GJSON. Para endpoints de listagem, a transformação é executada em cada item individualmente, não no envelope:
ant beta:agents list \
--transform "{id,name,model}" \
--format jsonl{"id": "agent_011CYm1BLqPX...", "name": "Docs CLI Test Agent", "model": "claude-sonnet-4-6"}
{"id": "agent_011CYkVwfaEt...", "name": "Coffee Making Assistant", "model": "claude-sonnet-4-6"}
{"id": "agent_011CYixHhtUP...", "name": "Coding Assistant", "model": "claude-opus-4-5"}Para capturar um único campo como uma string sem aspas (por exemplo, o ID de um recurso recém-criado), combine --transform com --raw-output. O resultado é impresso sem aspas JSON e está pronto para ser atribuído a uma variável de shell:
AGENT_ID=$(ant beta:agents create \
--name "My Agent" \
--model '{id: claude-sonnet-4-6}' \
--transform id --raw-output)
printf '%s\n' "$AGENT_ID"agent_011CYm1BLqPXpQRk5khsSXrs--raw-output é diferente de --format raw. --raw-output remove as aspas JSON de resultados de string, como jq -r. --format raw imprime os bytes JSON brutos do corpo da resposta sem paginação automática; em endpoints de listagem, aplica --transform ao envelope de paginação em vez de a cada item.
O mecanismo de entrada correto depende do formato dos dados: use flags para campos escalares e valores estruturados curtos, envie um documento via stdin para corpos aninhados ou com múltiplas linhas, e use referências @file para inserir o conteúdo de arquivos em qualquer campo de string ou binário.
Campos escalares são mapeados diretamente para flags. Campos estruturados aceitam uma sintaxe relaxada semelhante a YAML (chaves sem aspas, aspas opcionais em strings) ou JSON estrito:
ant beta:sessions create \
--agent '{type: agent, id: agent_011CYm1BLqPXpQRk5khsSXrs, version: 1}' \
--environment-id env_01595EKxaaTTGwwY3kyXdtbs \
--title "CLI docs test session"Flags repetíveis constroem arrays. Cada --tool ou --event adiciona um elemento:
ant beta:agents create \
--name "Research Agent" \
--model '{id: claude-opus-4-8}' \
--tool '{type: agent_toolset_20260401}' \
--tool '{type: custom, name: search_docs, input_schema: {type: object, properties: {query: {type: string}}}}'Envie um documento JSON ou YAML via pipe para stdin para fornecer o corpo completo da requisição. Campos do stdin são mesclados com flags, com as flags tendo precedência. Aqui, version é o token de bloqueio otimista retornado por um retrieve anterior, e $AGENT_ID foi capturado como em Extrair um escalar:
echo '{"description": "Updated test agent.", "version": 1}' | \
ant beta:agents update --agent-id "$AGENT_ID"Heredocs funcionam da mesma forma e são convenientes para YAML com múltiplas linhas. Coloque o delimitador entre aspas (como em <<'YAML') para desabilitar a expansão de variáveis dentro do corpo.
ant beta:agents create <<'YAML'
name: Research Agent
model: claude-opus-4-8
system: |
You are a research assistant. Cite sources for every claim.
tools:
- type: agent_toolset_20260401
YAMLFlags que recebem um caminho de arquivo, como --file no comando de upload, aceitam um caminho simples:
ant beta:files upload --file ./report.pdfPara inserir o conteúdo de um arquivo em um campo de valor string, prefixe o caminho com @:
ant beta:agents create \
--name "Researcher" --model '{id: claude-sonnet-4-6}' \
--system @./prompts/researcher.txtDentro de valores de flag estruturados, coloque o caminho entre aspas. Para enviar um PDF à API de Messages:
ant messages create \
--model claude-opus-4-8 \
--max-tokens 1024 \
--message '{role: user, content: [
{type: document, source: {type: base64, media_type: application/pdf, data: "@./scan.pdf"}},
{type: text, text: "Extract the text from this scanned document."}
]}' \
--transform 'content.0.text' --raw-outputA CLI detecta o tipo de arquivo e codifica arquivos binários como base64 automaticamente. Para forçar uma codificação específica, use @file:// para texto simples ou @data:// para base64. Escape um @ literal no início com uma barra invertida (\@username).
Adicione --debug a qualquer comando para imprimir a requisição e resposta HTTP exatas (cabeçalhos e corpo) no stderr. Chaves de API são ocultadas.
ant --debug beta:agents listGET /v1/agents?beta=true HTTP/1.1
Host: api.anthropic.com
Anthropic-Beta: managed-agents-2026-04-01
Anthropic-Version: 2023-06-01
X-Api-Key: <REDACTED>
...Todos os recursos da API expostos pela CLI estão documentados na referência da API. Para uma listagem local, execute ant --help e adicione --help a qualquer subcomando para ver suas flags e parâmetros.
Was this page helpful?