Todos os produtos
Search
Central de documentação

Qoder CN Series:Definir um Agent

Última atualização: Jul 03, 2026

Um Agent é um modelo de configuração reutilizável que define o modelo, as instructions e as tools de um agente de IA. Várias sessões podem compartilhar um único Agent, e modificar um Agent não afeta as sessões em execução.

Conceitos principais

Considere o Agent como uma "descrição de cargo":

Elemento

Descrição

model

Nível de inteligência do Agent

system prompt

Diretrizes comportamentais do Agent

tools

Ações que o Agent executa

Skills

Habilidades de alto nível que o Agent invoca

O Agent não executa tarefas diretamente; ele é apenas uma configuração. Uma sessão vinculada a esse Agent realiza a execução das tarefas.

Referência de parâmetros

Parâmetro

Tipo

Obrigatório

Descrição

id

string

ID gerado pelo sistema, com o prefixo agent_ seguido por 32 caracteres hexadecimais minúsculos.

type

string

Sempre "agent".

name

string

Sim

Nome do Agent. O formato recomendado é kebab-case (≤ 64 caracteres).

description

string

Não

Descrição do Agent. O padrão é "".

model

string

Sim

Identificador do modelo. Veja os detalhes abaixo.

system

string

Não

Prompt do sistema. O padrão é "".

instructions

string

Não

Instruções comportamentais anexadas ao prompt do sistema.

tools

array

Não

Lista de ferramentas disponíveis. Veja os detalhes abaixo.

skills

array

Não

Lista de IDs de Skills associados.

mcp_servers

array

Não

Lista de configurações de servidores MCP. O padrão é [].

default_environment

string

Não

ID do ambiente padrão para este Agent. O padrão é "".

metadata

object

Não

Pares chave-valor personalizados para rotulagem e filtragem.

version

integer

Número da versão. Começa em 1 e incrementa a cada atualização.

archived

boolean

Indica se o Agent está arquivado. O padrão é false.

archived_at

string

null

Timestamp de arquivamento no formato ISO 8601. Retorna null se o Agent não estiver arquivado.

created_at

string

Timestamp de criação no formato ISO 8601.

updated_at

string

Timestamp da última atualização.

Modelo

O campo model especifica o modelo que o Agent utiliza.

Valor

Descrição

Auto

Seleção automática de modelo

Qwen3.7-Max

Modelo principal Qwen

Qwen3.7-Plus

Qwen multimodal

Qwen3.6-Flash

Qwen leve

DeepSeek-V4-Pro

Modelo principal DeepSeek

DeepSeek-V4-Flash

DeepSeek leve

GLM-5.1

Modelo principal Zhipu

Kimi-K2.6

Moonshot AI

MiniMax-M2.7

MiniMax

Ferramentas

O campo tools é um array de objetos de ferramenta. Atualmente, há suporte apenas ao conjunto de ferramentas agent_toolset_20260401. Para ativar ferramentas atômicas nesse conjunto, liste-as no array enabled_tools:

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

Valores disponíveis para enabled_tools (os valores diferenciam maiúsculas de minúsculas e devem estar em PascalCase):

Nome da ferramenta

Descrição

Bash

Executa comandos de shell.

Read

Lê o conteúdo de arquivos.

Write

Cria ou sobrescreve um arquivo.

Edit

Edita parte de um arquivo.

Glob

Lista arquivos usando curingas.

Grep

Busca conteúdo em arquivos.

WebFetch

Faz uma requisição HTTP GET para uma única página web.

WebSearch

Pesquisa na web.

Para obter mais configurações de ferramentas, consulte Configuração de ferramentas do Agent.

Gerencie agents

Para todas as operações CRUD, consulte Referência da API / Agents. Os exemplos a seguir abordam fluxos de trabalho comuns.

Crie

curl -s -X POST https://api.qoder.com.cn/api/v1/cloud/agents \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "code-reviewer",
    "model": "auto",
    "instructions": "You are a code review expert. Review the code line by line and output issues and improvement suggestions in Markdown.",
    "tools": [
      {
        "type": "agent_toolset_20260401",
        "enabled_tools": ["Bash", "Read", "Write"]
      }
    ],
    "metadata": {
      "team": "backend",
      "purpose": "code-review"
    }
  }' | jq .

Uma solicitação bem-sucedida retorna 201 Created. A version começa em 1.

Consultar

# Get a single Agent
curl -s https://api.qoder.com.cn/api/v1/cloud/agents/agent_xxx \
  -H "Authorization: Bearer $QODER_PAT"

# List Agents with pagination
curl -s "https://api.qoder.com.cn/api/v1/cloud/agents?limit=20" \
  -H "Authorization: Bearer $QODER_PAT"

Atualize

Ao atualizar um Agent, você deve fornecer a version atual. Para mais informações, consulte a seção Gerenciamento de versões abaixo.

curl -s -X PUT https://api.qoder.com.cn/api/v1/cloud/agents/agent_xxx \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "code-reviewer",
    "model": "auto",
    "instructions": "You are a senior code review expert, focusing on security vulnerabilities and performance issues.",
    "version": 1
  }' | jq .

Uma solicitação bem-sucedida retorna 200 OK, e a version incrementa em 1.

Exclua

curl -s -X DELETE https://api.qoder.com.cn/api/v1/cloud/agents/agent_xxx \
  -H "Authorization: Bearer $QODER_PAT"

Excluir um Agent não encerra as sessões ativas vinculadas a ele. Uma sessão captura um snapshot da configuração do Agent no momento da criação.

Gerenciamento de versões

A API do Agent usa controle de concorrência otimista (OCC):

  • A version começa em 1 após a criação.

  • Após cada atualização bem-sucedida, a version incrementa automaticamente em 1.

  • As solicitações de atualização devem incluir a version atual. Existem dois cenários de falha:

    • Campo version ausente — retorna 400 invalid_request_error ("Field 'version' is required.")

    • A version foi fornecida, mas não corresponde à versão no servidor — retorna 409 conflict_error

Esse mecanismo impede que modificações simultâneas se sobrescrevam.

Como lidar com conflitos 409

Se a solicitação falhar porque a versão está desatualizada, você receberá este erro:

{
  "type": "error",
  "error": {
    "type": "conflict_error",
    "message": "Version conflict. Expected version 2, got 1."
  }
}

Para resolver o conflito:

  1. Faça uma requisição GET do Agent mais recente para obter a version atual.

  2. Reaplique as alterações desejadas aos dados mais recentes do objeto.

  3. Use a nova version para fazer outra requisição PUT.

Melhores práticas

  1. Convenções de nomenclatura — Adote o formato team-purpose, como backend-code-review ou frontend-test-gen.

  2. Refinamento de prompts — Especifique a função, o formato de saída e as restrições no campo system.

  3. Princípio do menor privilégio: Conceda apenas as tools essenciais para a tarefa e minimize riscos.

  4. Uso eficaz de metadados: Adicione pares chave-valor para categorizar os Agents e facilitar a filtragem e a auditoria.

  5. Bloqueio de versão em produção — Ao criar uma sessão, use o formato {"id": ..., "version": ...} para fixar a versão do Agent. Isso evita que novas versões afetem seus serviços online.

Perguntas frequentes

P: Atualizar um Agent afeta as sessões em execução? Não. Uma sessão fica vinculada a uma versão específica do Agent no momento da criação. P: O array tools** pode estar vazio? Sim. Um Agent sem tools só mantém conversas baseadas em texto e não executa ações. P: Existe limite de comprimento para o campo name**? Mantenha-o abaixo de 64 caracteres, com letras minúsculas, números e hifens. P: Como reverter para uma versão anterior de um Agent? Não há suporte para reversão automática. Salve a configuração do Agent antes de atualizá-la. Para reverter, faça uma requisição PUT com a configuração antiga e use o número da version mais recente.

Próximos passos