Todos os produtos
Search
Central de documentação

:Agent Tools

Última atualização: Sep 25, 2026

As ferramentas determinam o que um Agent pode fazer. Ao configurar o campo tools na criação ou atualização de um Agent, você controla com precisão suas capacidades.

Importante

O novo site de documentação Qoder CN já está disponível. O conteúdo deste site pode não refletir os recursos e as alterações mais recentes do product. Acesse docs.qoder.cn para consultar a documentação mais atualizada.

O que as ferramentas fazem

Ao executar uma tarefa, o Agent determina quais capacidades pode acionar com base na configuração de tools. Todas as ferramentas são configuradas por meio de um único objeto { "type": "agent_toolset_20260401", "enabled_tools": [...] }, habilitando seletivamente ferramentas atômicas no array enabled_tools.

Quando enabled_tools é uma lista de permissões não vazia, as ferramentas fora dela ficam invisíveis para o modelo e nenhuma tentativa de invocação é realizada. Quando enabled_tools é omitido ou recebe um array vazio, todas as ferramentas integradas ficam expostas ao modelo. Quando o próprio campo tools é omitido ou definido como [], o modelo não recebe nenhum schema de ferramenta (consulte o FAQ abaixo).

Ferramentas disponíveis

Nome da ferramenta (valor de enabled_tools)

Finalidade

Casos de uso típicos

Bash

Execução de comandos shell

Instalação de dependências, execução de scripts, chamadas de API com curl

Read

Leitura de arquivos

Visualização de arquivos montados, leitura de código

Write

Gravação de arquivos (criar/sobrescrever)

Geração de relatórios, produção de saída

Edit

Edição parcial de arquivos

Alteração de configuração, edição de código

Glob

Listagem de arquivos por padrão glob

Localização de arquivos de código

Grep

Busca de conteúdo em arquivos

Localização de strings

WebFetch

HTTP GET em uma única página

Busca de documentação e páginas

WebSearch

Pesquisa na web

Consulta de informações

DeliverArtifacts

Ferramenta reservada pelo sistema. Presente no conjunto "all on" (quando enabled_tools é omitido ou vazio).

Não recomendado declarar explicitamente em enabled_tools.

Observações:

  • Os nomes das ferramentas são grafados com inicial maiúscula (Bash, não bash); eles também aparecem em maiúscula nos fluxos de eventos

  • Omitir enabled_tools ou passar um array vazio [] habilita todas as ferramentas integradas (incluindo DeliverArtifacts listada acima). Para que o Agent não tenha nenhuma ferramenta, omita o campo tools inteiro ou defina-o como [].

  • Cada nome de ferramenta em enabled_tools é validado — informar um nome desconhecido (por exemplo, "Foo") retorna 400: "unknown tool name 'Foo'"

  • O schema antigo por objeto de ferramenta (como {"type": "bash_20250124"}) não é mais suportado

Formato atual: objeto único

A configuração de tools é um único objeto que ativa ferramentas específicas por meio do array enabled_tools:

{
  "tools": [
    {
      "type": "agent_toolset_20260401",
      "enabled_tools": ["Bash", "Read", "Write", "Edit", "Glob", "Grep", "WebFetch", "WebSearch"]
    }
  ]
}

Defina ao criar um Agent:

curl -X POST https://api.qoder.com.cn/api/v1/cloud/agents \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "dev-agent",
    "model": "ultimate",
    "instructions": "You are a development assistant",
    "tools": [
      {
        "type": "agent_toolset_20260401",
        "enabled_tools": ["Bash", "Read", "Write", "Edit", "Glob", "Grep", "WebFetch", "WebSearch"]
      }
    ]
  }'

Exemplos de configuração

Mínima (somente CLI)

{
  "tools": [
    {
      "type": "agent_toolset_20260401",
      "enabled_tools": ["Bash"]
    }
  ]
}

Stack completa de desenvolvimento

{
  "tools": [
    {
      "type": "agent_toolset_20260401",
      "enabled_tools": ["Bash", "Read", "Write", "Edit", "Glob", "Grep", "WebFetch", "WebSearch"]
    }
  ]
}

Criar uma nova versão (PUT — substituição completa)

Use PUT para criar uma nova versão do Agent com a configuração de ferramentas atualizada:

curl -X PUT https://api.qoder.com.cn/api/v1/cloud/agents/agent_abc123 \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "version": 1,
    "tools": [
      {
        "type": "agent_toolset_20260401",
        "enabled_tools": ["Bash", "Read", "Write", "Edit"]
      }
    ]
  }'

PUT é uma substituição completa (não um patch) — campos não incluídos serão removidos. O campo version é obrigatório para controle de concorrência otimista: - Se a versão fornecida coincidir com a versão atual: 200, a versão é incrementada em 1 - Se a versão fornecida estiver desatualizada: 409 { error: { type: "conflict_error", message: "Version conflict. Expected version N, got M." }} As Sessions existentes não são afetadas; novas Sessions utilizam a configuração atualizada.

Inspecionar a configuração atual de ferramentas

curl https://api.qoder.com.cn/api/v1/cloud/agents/agent_abc123 \
  -H "Authorization: Bearer $QODER_PAT" | jq '.tools'

Exemplo de saída:

[
  {
    "type": "agent_toolset_20260401",
    "enabled_tools": ["Bash", "Read", "Write", "Edit", "Glob", "Grep", "WebFetch", "WebSearch"]
  }
]

FAQ

P: O que acontece se eu não configure ferramentas? R: O Agent não terá ferramentas disponíveis e só poderá realizar conversas em texto simples. Para atribuir qualquer capacidade de ferramenta ao Agent, passe pelo menos [{"type":"agent_toolset_20260401"}] (o que habilita todas as ferramentas integradas).

P: Posso sobrescrever as ferramentas no nível da Session? R: Não no momento. A configuração de ferramentas está vinculada ao Agent, e todas as Sessions desse Agent compartilham o mesmo conjunto de ferramentas.

P: A ordem das ferramentas importa? R: Não. O Agent decide qual ferramenta acionar com base no contexto da tarefa.

P: O sufixo de versão muda com o tempo? R: Sim. À medida que novas versões de ferramentas são lançadas, novos sufixos com data são introduzidos. Acompanhe o changelog e adote o sufixo mais recente.