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 |
|
|
|
string |
— |
ID gerado pelo sistema, com o prefixo |
|
|
|
string |
— |
Sempre |
|
|
|
string |
Sim |
Nome do Agent. O formato recomendado é kebab-case (≤ 64 caracteres). |
|
|
|
string |
Não |
Descrição do Agent. O padrão é |
|
|
|
string |
Sim |
Identificador do modelo. Veja os detalhes abaixo. |
|
|
|
string |
Não |
Prompt do sistema. O padrão é |
|
|
|
string |
Não |
Instruções comportamentais anexadas ao prompt do sistema. |
|
|
|
array |
Não |
Lista de ferramentas disponíveis. Veja os detalhes abaixo. |
|
|
|
array |
Não |
Lista de IDs de Skills associados. |
|
|
|
array |
Não |
Lista de configurações de servidores MCP. O padrão é |
|
|
|
string |
Não |
ID do ambiente padrão para este Agent. O padrão é |
|
|
|
object |
Não |
Pares chave-valor personalizados para rotulagem e filtragem. |
|
|
|
integer |
— |
Número da versão. Começa em 1 e incrementa a cada atualização. |
|
|
|
boolean |
— |
Indica se o Agent está arquivado. O padrão é |
|
|
|
string |
null |
— |
Timestamp de arquivamento no formato ISO 8601. Retorna |
|
|
string |
— |
Timestamp de criação no formato ISO 8601. |
|
|
|
string |
— |
Timestamp da última atualização. |
Modelo
O campo model especifica o modelo que o Agent utiliza.
|
Valor |
Descrição |
|
|
Seleção automática de modelo |
|
|
Modelo principal Qwen |
|
|
Qwen multimodal |
|
|
Qwen leve |
|
|
Modelo principal DeepSeek |
|
|
DeepSeek leve |
|
|
Modelo principal Zhipu |
|
|
Moonshot AI |
|
|
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 |
|
|
Executa comandos de shell. |
|
|
Lê o conteúdo de arquivos. |
|
|
Cria ou sobrescreve um arquivo. |
|
|
Edita parte de um arquivo. |
|
|
Lista arquivos usando curingas. |
|
|
Busca conteúdo em arquivos. |
|
|
Faz uma requisição HTTP GET para uma única página web. |
|
|
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
versioncomeça em1após a criação.Após cada atualização bem-sucedida, a
versionincrementa automaticamente em 1.-
As solicitações de atualização devem incluir a
versionatual. Existem dois cenários de falha:Campo
versionausente — retorna 400invalid_request_error("Field 'version' is required.")A
versionfoi fornecida, mas não corresponde à versão no servidor — retorna 409conflict_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:
Faça uma requisição
GETdo Agent mais recente para obter aversionatual.Reaplique as alterações desejadas aos dados mais recentes do objeto.
Use a nova
versionpara fazer outra requisiçãoPUT.
Melhores práticas
Convenções de nomenclatura — Adote o formato
team-purpose, comobackend-code-reviewoufrontend-test-gen.Refinamento de prompts — Especifique a função, o formato de saída e as restrições no campo
system.Princípio do menor privilégio: Conceda apenas as
toolsessenciais para a tarefa e minimize riscos.Uso eficaz de metadados: Adicione pares chave-valor para categorizar os Agents e facilitar a filtragem e a auditoria.
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
Ambiente Cloud — Configure a infraestrutura onde o Agent será executado.
Iniciar uma sessão — Crie uma sessão com um Agent.
Configuração de ferramentas do Agent — Saiba mais sobre tipos de ferramentas e políticas de permissão.