O Hermes Agent roda no seu terminal, mantém contexto entre sessões e executa comandos de shell reais. Isso permite usar o Hermes como parte do seu loop de testes de API: se ele consegue executar um comando, ele consegue executar seus cenários do Apidog.
O executor é a CLI do Apidog, o pacote npm apidog-cli. Ela executa, direto do terminal, os cenários de teste criados visualmente no Apidog e retorna um código de saída que o Hermes pode interpretar.
Neste guia, você vai configurar o Hermes para:
- Ler instruções de teste a partir de
AGENTS.md. - Executar
apidog runusando a ferramentaterminal. - Validar o resultado pelo código de saída.
- Opcionalmente, conectar o servidor Apidog MCP para que o Hermes também leia a especificação da API enquanto codifica.
Se a CLI ainda não estiver instalada, siga primeiro o guia como instalar a CLI do Apidog com um agente de codificação de IA. Volte quando este comando imprimir uma versão:
apidog --version
Você também precisa de uma conta Apidog com pelo menos um cenário de teste salvo.
O que significa usar a CLI do Apidog no Hermes
O Hermes Agent, construído pela Nous Research, roda no terminal e executa ações por meio de ferramentas integradas. Para este fluxo, a ferramenta importante é terminal.
Na prática, usar a CLI do Apidog no Hermes significa:
-
Registrar o fluxo de trabalho em um arquivo de contexto, como
AGENTS.md, para que o Hermes saiba qual comando executar. -
Executar
apidog runpela ferramentaterminal, como qualquer outro comando de shell. -
Tratar o código de saída como fonte da verdade:
-
0: todas as asserções passaram. - diferente de
0: houve falha.
-
- Opcionalmente, conectar o servidor Apidog MCP, para expor a especificação da API ao Hermes durante a implementação.
Não é necessário instalar um plugin específico do Apidog no Hermes. O Hermes só precisa saber qual comando executar e como interpretar o resultado.
O mecanismo: arquivo de contexto em vez de lembrete no chat
O Hermes carrega contexto do projeto no início da sessão. Ele procura arquivos de instrução no diretório de trabalho, incluindo:
AGENTS.mdCLAUDE.md
Esses arquivos são injetados no prompt do sistema. Portanto, se o seu repositório já usa AGENTS.md, o Hermes também consegue ler essas instruções.
Colocar o comando no chat funciona apenas para a sessão atual. Colocar o comando em AGENTS.md torna o fluxo reutilizável por:
- você;
- outros membros do time;
- futuras sessões do Hermes;
- automações locais baseadas no mesmo repositório.
O Hermes também lê SOUL.md, mas esse arquivo é voltado à persona do agente. Mantenha instruções de teste no AGENTS.md.
Passo 1: adicione um bloco Apidog ao AGENTS.md
Na raiz do repositório, abra ou crie o arquivo AGENTS.md:
touch AGENTS.md
Adicione um bloco com o comando real que o Hermes deve executar:
## API testing with the Apidog CLI
This repo uses the Apidog CLI (`apidog-cli`, the `apidog` command) to run API
test scenarios. The scenarios live in our Apidog project, not in this repo.
When you change an API handler, route, or response shape, run the relevant
Apidog scenario through the terminal tool before considering the change done:
apidog run -t 605067 -e 1629989 -n 1 -r cli
- `-t 605067` is the checkout-flow test scenario.
- `-e 1629989` is the staging environment.
- The machine is already authenticated via `apidog login`, so do NOT pass
an access token and do NOT print one.
Treat the exit code as the source of truth: `0` means every assertion passed,
non-zero means a failure. If it exits non-zero, read the failing assertion in
the report and fix the code, then re-run. Do not report a pass on a non-zero
exit.
Substitua:
-
605067pelo ID real do cenário; -
1629989pelo ID real do ambiente.
Use normalmente um ambiente de staging ou desenvolvimento local. Evite apontar o Hermes para produção.
Esse bloco é importante por dois motivos:
- Ele fornece o comando exato, evitando que o Hermes invente flags.
- Ele define que o código de saída tem prioridade sobre qualquer resumo textual.
Isso reduz a chance de o agente declarar “testes passaram” quando a execução falhou.
Passo 2: copie o comando gerado pelo Apidog
Antes de pedir ao Hermes para executar o teste, obtenha um comando válido no Apidog.
No Apidog:
- Abra o cenário de teste.
- Vá para a aba CI/CD.
- Escolha a opção de linha de comando.
- Copie o comando
apidog run.
O comando gerado terá este formato:
apidog run --access-token YOUR_ACCESS_TOKEN -t 605067 -e 1629989 -n 1 -r cli
Onde:
-
605067é o ID do cenário; -
1629989é o ID do ambiente; -
YOUR_ACCESS_TOKENé o token de acesso.
Como a máquina já deve estar autenticada via apidog login, remova --access-token YOUR_ACCESS_TOKEN antes de colocar o comando no AGENTS.md.
Use este formato no contexto do Hermes:
apidog run -t 605067 -e 1629989 -n 1 -r cli
Passo 3: peça ao Hermes para executar o teste
Inicie o Hermes na raiz do repositório e peça para executar o cenário de acordo com o AGENTS.md.
Exemplo de prompt:
Execute nosso cenário de teste de API do Apidog da maneira que AGENTS.md descreve. Já estou autenticado, então não passe um token de acesso. Use
apidog run -t 605067 -e 1629989 -n 1 -r cli. Mostre-me a saída completa e diga-me o código de saída.
O Hermes deve chamar a ferramenta terminal e executar:
apidog run -t 605067 -e 1629989 -n 1 -r cli
O reporter -r cli mostra a execução passo a passo no terminal, incluindo requisições, respostas e asserções.
Dependendo da configuração do Hermes, você pode ver um prompt de aprovação antes da execução. Para um cenário somente leitura contra staging, esse é um comando normalmente seguro para permitir.
Passo 4: valide pelo código de saída
Não valide apenas pelo texto do resumo. Valide pelo código de saída.
A regra é:
exit code 0 => todas as asserções passaram
exit code != 0 => houve falha
Se o Hermes disser que os testes passaram, mas o código de saída for diferente de 0, considere a execução falha.
Esse comportamento torna o apidog run útil tanto para o loop local do Hermes quanto para CI/CD.
Para consultar flags disponíveis, peça ao Hermes para executar:
apidog run --help
O guia completo da CLI do Apidog documenta os principais flags, incluindo reporters como:
clihtmljsonjunit
Passo 5: integre o teste ao loop de edição do Hermes
O objetivo é fazer o Hermes executar o teste sem você precisar repetir o comando toda vez.
Um fluxo prático fica assim:
- O Hermes altera um handler, rota ou formato de resposta.
- Ele identifica, via
AGENTS.md, que deve executar o cenário do Apidog. - Ele roda:
apidog run -t 605067 -e 1629989 -n 1 -r cli
- Ele lê o código de saída.
- Se for
0, continua. - Se for diferente de
0, lê a asserção com falha, corrige o código e executa novamente.
Isso transforma o cenário de API em parte do mesmo ciclo de desenvolvimento que testes unitários:
editar código -> executar teste -> ler falha -> corrigir -> executar novamente
Esse é o modelo de “delegar e verificar”: o Hermes executa o comando, mas você mantém a regra objetiva de validação pelo código de saída.
Para execuções longas, pastas grandes ou múltiplas iterações, a ferramenta terminal do Hermes aceita background=true. Assim, o Hermes pode iniciar a execução em segundo plano, continuar trabalhando e consultar o resultado depois.
Para padrões mais amplos, veja também:
Opcional: conecte o servidor Apidog MCP
A CLI permite ao Hermes executar testes. O servidor Apidog MCP permite que ele leia a especificação da API enquanto escreve código.
Os dois recursos se complementam:
- MCP fornece o contrato da API ao Hermes.
- CLI valida a implementação contra cenários reais.
O Hermes suporta o Model Context Protocol, ou MCP, nativamente.
Edite o arquivo:
~/.hermes/config.yaml
Adicione uma entrada em mcp_servers:
mcp_servers:
apidog:
command: "npx"
args: ["-y", "apidog-mcp-server@latest", "--project=YOUR_PROJECT_ID"]
env:
APIDOG_ACCESS_TOKEN: "YOUR_ACCESS_TOKEN"
Depois de salvar, dentro do Hermes, execute:
/reload-mcp
Ou reinicie o Hermes.
Na inicialização, o Hermes descobre os servidores MCP e registra suas ferramentas com namespace, como:
mcp_apidog_<tool>
Assim, o agente pode consultar a especificação da API durante o raciocínio normal.
Para a configuração completa, incluindo ID do projeto e token, consulte o guia do servidor Apidog MCP.
Para uma versão empacotada desse loop, veja o guia da CLI do Apidog com Habilidades Claude.
Do loop local para a CI
Depois que o Hermes executa o cenário localmente e valida pelo código de saída, você tem o mesmo comando que pode ser usado na pipeline.
A diferença é a autenticação:
- localmente: login já armazenado via
apidog login; - na CI: token passado como segredo mascarado.
Você pode pedir ao Hermes para criar o passo de CI:
Escreva um passo do GitHub Actions que instale o apidog-cli e execute
apidog run -t 605067 -e 1629989 -r junit, lendo o token de acesso de um segredo do repositório chamado APIDOG_ACCESS_TOKEN.
Um exemplo de estrutura seria:
- name: Install Apidog CLI
run: npm install -g apidog-cli
- name: Run Apidog API tests
run: apidog run --access-token "$APIDOG_ACCESS_TOKEN" -t 605067 -e 1629989 -r junit
env:
APIDOG_ACCESS_TOKEN: ${{ secrets.APIDOG_ACCESS_TOKEN }}
Os detalhes de segredos, reporters e validação por código de saída estão em CLI do Apidog no GitHub Actions.
Com isso, o mesmo comando passa a existir em três lugares:
- no seu terminal;
- no loop do Hermes;
- na CI.
Todos usando o mesmo critério objetivo: o código de saída.
Armadilhas comuns
O Hermes ignora o bloco de contexto
Verifique se o arquivo está com o nome correto:
AGENTS.md
ou:
CLAUDE.md
Também confirme que ele está no diretório onde o Hermes foi iniciado.
Se necessário, reinicie a sessão para forçar uma nova leitura do contexto.
O Hermes apenas sugere o comando, mas não executa
O Hermes executa comandos pela ferramenta terminal, geralmente atrás de uma camada de aprovação.
Se houver uma execução pendente, aprove-a. Se a configuração estiver bloqueando comandos de terminal, permita pelo menos:
apidog run
apidog whoami mostra que você não está autenticado
O login é armazenado na máquina, não no Hermes.
Faça login manualmente:
apidog login --with-token
Depois peça ao Hermes para confirmar:
apidog whoami
Não cole tokens no chat se isso puder expô-los em logs ou histórico.
O Hermes inventa um flag
Se você vir erro de opção desconhecida, o Hermes provavelmente inferiu um flag inexistente.
Peça para ele consultar a ajuda:
apidog run --help
Depois atualize o AGENTS.md com o flag correto.
O Hermes relata sucesso em uma execução com falha
Essa é a falha mais importante a evitar.
Sempre peça o código de saída e compare:
0 => sucesso
!= 0 => falha
Quando o resumo textual e o código de saída discordarem, confie no código de saída.
Conclusão
A configuração prática é simples:
- Adicione um bloco no
AGENTS.mdcom o comandoapidog run. - Remova tokens do arquivo de contexto.
- Instrua o Hermes a executar o comando pela ferramenta
terminal. - Valide sempre pelo código de saída.
- Opcionalmente, conecte o servidor Apidog MCP em
~/.hermes/config.yaml.
Você continua criando cenários visualmente no Apidog. O Hermes apenas executa esses cenários e usa o resultado para orientar o loop de implementação.
A partir daqui, você pode levar o mesmo comando para sua pipeline com a CLI do Apidog no GitHub Actions ou consultar todos os flags no guia completo.
Perguntas frequentes
Preciso de um plugin Hermes para usar a CLI do Apidog?
Não. O Hermes executa comandos de shell pela ferramenta terminal, então ele pode chamar apidog run diretamente.
A configuração específica do Hermes é o bloco em AGENTS.md. O servidor MCP é opcional.
Onde coloco as instruções que ensinam o fluxo de trabalho ao Hermes?
Coloque em um arquivo de contexto que o Hermes carrega na inicialização, como:
AGENTS.md
ou:
CLAUDE.md
O local recomendado é a raiz do repositório.
Como garanto que o Hermes não simule um teste aprovado?
Peça sempre o código de saída.
apidog run retorna 0 somente quando todas as asserções passam. Se o texto do Hermes disser “passou”, mas o código de saída for diferente de 0, considere falha.
Como conecto o servidor Apidog MCP ao Hermes?
Adicione uma entrada mcp_servers em:
~/.hermes/config.yaml
Use o comando apidog-mcp-server com o ID do projeto e o token. Depois execute:
/reload-mcp
Ou reinicie o Hermes.
O guia do servidor Apidog MCP cobre os detalhes de projeto e autenticação.
Isso funciona da mesma forma em outros agentes de codificação de IA?
A CLI é a mesma. O que muda é como você instrui o agente.
No Hermes, use AGENTS.md e a ferramenta terminal. Outros agentes podem usar outros arquivos de instrução ou mecanismos de contexto.
A instalação e autenticação continuam iguais, então o guia de instalação também se aplica.
Top comments (0)