
Última atualização: 4 de junho de 2026
O Claude Code SDK é ótimo quando o trabalho ainda é majoritariamente código: verificações de CI, code review, saída estruturada e automação compatível com MCP. Mas, quando um fluxo passa a precisar de busca, mídia, publicação ou outras capacidades fora de código, o Claude Code SDK sozinho deixa de ser suficiente.
É aí que entra o AnyCap. AnyCap é um agent CLI que amplia agentes de programação além da execução de código, permitindo que o mesmo fluxo vá do raciocínio sobre o código para pesquisa, geração de ativos e entrega de resultados.
Resumo rápido
- Use o Claude Code SDK para automação focada em código
- Adicione AnyCap quando o fluxo precisar de busca, mídia, publicação ou entrega
- Trate o Claude Code SDK como o runtime de codificação
- Trate o AnyCap como a camada de capacidades além do código
O que é o Claude Code SDK?
O Claude Code SDK é uma interface programática que permite:
- Executar o Claude Code de forma não interativa a partir de scripts e pipelines
- Controlar quais arquivos, diretórios e ferramentas estão em contexto
- Analisar saída estruturada para processamento posterior
- Encadear o Claude Code com outras ferramentas em fluxos automatizados
- Criar UIs personalizadas sobre o raciocínio do Claude Code
Disponível como pacote Node.js:
npm install @anthropic-ai/claude-code
Ou invoque via CLI em modo não interativo:
claude -p "Seu prompt aqui" --output-format json
Conceitos centrais do SDK
Modo não interativo
O caso de uso mais básico do SDK: execute o Claude Code com um prompt, obtenha a saída e pronto.
# CLI não interativo
claude -p "Revise src/auth.ts em busca de vulnerabilidades de segurança" \
--output-format json \
--max-turns 5
// SDK
const { query } = require('@anthropic-ai/claude-code');
const result = await query({
prompt: "Revise src/auth.ts em busca de vulnerabilidades de segurança",
options: {
maxTurns: 5,
outputFormat: 'json'
}
});
Configuração de ferramentas
Controle quais ferramentas o Claude Code pode usar na sua chamada do SDK:
const result = await query({
prompt: "Gere uma suíte de testes para src/utils.ts",
options: {
allowedTools: ['Read', 'Write', 'Bash'],
// Desative ferramentas que você não precisa:
// disallowedTools: ['WebSearch', 'mcp__custom_tool']
}
});
Prompts de sistema personalizados
Substitua o prompt de sistema padrão do Claude Code para comportamentos especializados:
const result = await query({
prompt: "Refatore este módulo",
options: {
systemPrompt: `Você é um especialista em TypeScript focado em padrões de programação funcional.
Sempre prefira estruturas de dados imutáveis. Use tipos Result para tratamento de erros.
Nunca use tipos any ou unknown.`,
}
});
Padrões práticos do SDK
1. Code review automatizado no CI
// .github/workflows/code-review.js
const { query } = require('@anthropic-ai/claude-code');
const { execSync } = require('child_process');
const diff = execSync('git diff main...HEAD').toString();
const review = await query({
prompt: `Revise este diff de PR quanto a: problemas de segurança, problemas de performance e testes ausentes.
Retorne em JSON com as chaves: security[], performance[], testing[].
Diff:
${diff}`,
options: {
outputFormat: 'json',
allowedTools: ['Read'], // somente leitura no CI
maxTurns: 3
}
});
console.log(JSON.parse(review.result));
2. Geração automatizada de documentação
const fs = require('fs');
const { query } = require('@anthropic-ai/claude-code');
async function generateDocs(srcPath) {
const result = await query({
prompt: `Gere documentação JSDoc completa para todas as funções exportadas em ${srcPath}.
Adicione descrições de parâmetros, tipos de retorno e exemplos de uso.
Grave o arquivo atualizado com a documentação adicionada.`,
options: {
allowedTools: ['Read', 'Write'],
cwd: process.cwd()
}
});
return result;
}
3. Fluxo multiagente com capacidades externas
É aqui que o AnyCap se torna útil. O Claude Code cuida do raciocínio sobre código, enquanto o AnyCap lida com as tarefas que ficam fora do runtime de codificação.
const { query } = require('@anthropic-ai/claude-code');
const { execSync } = require('child_process');
async function buildAndPublishDocs(repoPath) {
// Passo 1: o Claude Code gera a documentação
const docsResult = await query({
prompt: "Gere um README completo para este projeto com instruções de configuração, referência da API e exemplos",
options: {
cwd: repoPath,
allowedTools: ['Read', 'Write', 'Bash']
}
});
// Passo 2: o AnyCap gera um diagrama hero
execSync(`anycap image generate \
--prompt "Diagrama de arquitetura técnica para uma ferramenta de desenvolvedor, estilo limpo e minimalista" \
--model nano-banana-2 \
-o ${repoPath}/docs/architecture.png`);
// Passo 3: o AnyCap publica como uma página web
const pageResult = execSync(`anycap page deploy ${repoPath}/docs/`).toString();
return { docs: docsResult, page: JSON.parse(pageResult) };
}
Autenticação do SDK
O SDK usa a mesma autenticação do Claude Code. Defina sua chave de API:
export ANTHROPIC_API_KEY=your_key_here
Ou, em ambientes de equipe, use configuração específica do ambiente:
const { query } = require('@anthropic-ai/claude-code');
// O SDK lê ANTHROPIC_API_KEY automaticamente
// Ou passe explicitamente:
process.env.ANTHROPIC_API_KEY = await getSecretFromVault('anthropic-api-key');
Formatos de saída
O SDK suporta três formatos de saída:
| Formato | Caso de uso |
|---|---|
text |
Padrão, saída legível para humanos |
json |
Processamento programático — inclui resultado, custo e info da sessão |
stream-json |
Saída em tempo real para UIs e dashboards |
// A saída JSON inclui metadados
{
"result": "A função pode ter uma vulnerabilidade de SQL injection...",
"is_error": false,
"session_id": "sess_xxxx",
"cost_usd": 0.0043,
"num_turns": 2
}
Limites de taxa e gestão de custos em fluxos do SDK
A automação baseada em SDK pode consumir tokens mais rápido do que o uso interativo. Guardrails embutidos:
const result = await query({
prompt: "...",
options: {
maxTurns: 5, // Limita iterações de raciocínio
timeoutMs: 30000, // Timeout para tarefas longas
}
});
// Sempre verifique o custo em produção
if (result.cost_usd > 0.10) {
logger.warn(`Sessão com custo alto: $${result.cost_usd}`);
}
Para tarefas intensivas em capacidade, como geração de imagens, criação de vídeos e busca na web, faça offload para o AnyCap em vez de deixar o Claude Code tratá-las em contexto. Isso mantém os custos do SDK previsíveis e evita atingir os limites de taxa do Claude em tarefas que não são de raciocínio.
Começando
# Instale o SDK
npm install @anthropic-ai/claude-code
# Instale o AnyCap para ampliar capacidades
curl -fsSL https://anycap.ai/install.sh | sh
# Adicione a skill do AnyCap ao Claude Code
npx -y skills add anycap-ai/anycap -y
→ AnyCap para Claude Code → Guia para adicionar ferramentas ao Claude Code