Pular para o conteúdo principal

Documentação oficial desta página · v0.20.6

Modo Entregável (artefatos no chat)

Quando o Hermes Agent roda dentro de um gateway de mensagens (Slack, Discord, Telegram, WhatsApp, Signal etc.), ele consegue entregar os arquivos gerados direto no chat — não como caminhos que o usuário precisa copiar, e sim como anexos nativos.

Um gráfico aparece como imagem embutida. Um relatório em PDF aparece como download de arquivo. Uma planilha sobe como .xlsx. O agente não precisa escrever uma tag MEDIA: nem fazer nada especial — ele só gera o arquivo e menciona o caminho absoluto dele na resposta. O gateway pesca o caminho no texto, remove-o da mensagem visível e envia o arquivo nativamente.

Como funciona​

Três peças se encaixam:

  1. O agente tem ferramentas que produzem arquivos. execute_code para gráficos com matplotlib, a skill docx para documentos do Word, a skill xlsx para planilhas, as skills pdf e latex-pdf-report para PDFs, a skill powerpoint para apresentações, image_generate para imagens, text_to_speech para áudio e assim por diante.

  2. O gateway varre as respostas do agente atrás de caminhos de arquivo. Qualquer caminho absoluto (/tmp/...) ou relativo ao home (~/...) que termine em uma extensão suportada é extraído. Caminhos dentro de blocos de código e de código em linha são ignorados, para que exemplos de código nunca sejam mutilados.

  3. O gateway despacha conforme o tipo de arquivo. Imagens são embutidas onde a plataforma suporta; vídeos são embutidos; áudio vira anexo de voz/áudio; todo o resto sobe como anexo de arquivo.

Extensões de arquivo suportadas​

CategoriaExtensõesEntrega
Imagens.png .jpg .jpeg .gif .webp .bmp .tiff .svgEmbutida
Vídeo.mp4 .mov .avi .mkv .webm .3gpEmbutido (onde houver suporte)
Áudio.mp3 .m2a .wav .ogg .opus .m4a .flacAnexo de voz / áudio
Documentos.pdf .docx .doc .odt .rtf .txt .md .epubEnvio de arquivo
Dados.xlsx .xls .ods .csv .tsv .json .xml .yaml .ymlEnvio de arquivo
Geoespacial.kmz .kml .geojson .gpxEnvio de arquivo
Apresentações.pptx .ppt .odp .keyEnvio de arquivo
Arquivos compactados.zip .tar .gz .tgz .bz2 .xz .7z .rar .apk .ipaEnvio de arquivo
Web.html .htmEnvio de arquivo

.py, .log e outras extensões de código-fonte ficam de fora de propósito, para que o agente não despache arquivos-fonte quaisquer automaticamente; se você quer mandar código para o usuário, use um bloco de código.

Incentivar o agente a produzir artefatos​

O agente não recorre a artefatos por padrão — ele precisa saber que deve fazer isso. Duas formas de dar esse empurrão:

Por sessão: peça explicitamente ("me manda a comparação como gráfico", "devolve os dados em CSV") ou escreva suas próprias instruções personalizadas / entrada de personalidade que puxem para respostas em formato de artefato nas plataformas de mensagem.

No nível do projeto: acrescente essa inclinação ao AGENTS.md / CLAUDE.md / .cursorrules de um projeto em que o agente trabalha, ao seu persona global em ~/.hermes/SOUL.md ou como um preset nomeado sob agent.personalities no ~/.hermes/config.yaml (alternável por sessão com /personality).

A mecânica que o agente precisa usar é simples: renderizar o arquivo em um caminho absoluto (por exemplo, /tmp/receita-q3.png) e mencionar esse caminho como texto puro na resposta. O gateway faz o resto. Caminhos dentro de blocos de código cercados ou de crases são ignorados, para que exemplos de código nunca sejam mutilados.

Kanban: artefatos pegam carona nas notificações de conclusão​

Se você usa o fluxo multiagente de kanban do Hermes, os workers podem anexar arquivos entregáveis à chamada kanban_complete:

kanban_complete(
summary="gráfico e relatório de receita do Q3 renderizados",
artifacts=[
"/tmp/receita-q3.png",
"/tmp/relatorio-q3.pdf",
],
)

Quando o notificador do gateway entrega a mensagem de "tarefa concluída" a quem assinou a tarefa no Slack/Telegram/etc., ele também envia cada artefato como anexo nativo naquele chat. A pessoa recebe o entregável e o resumo no mesmo lugar.

Arquivos que não existem em disco quando o notificador roda são pulados silenciosamente.

Conectar mais serviços com MCP​

Além do pipeline de entrega de artefatos, o agente consegue alcançar outros serviços via MCP (Model Context Protocol). O ecossistema MCP traz servidores da comunidade para a maioria das ferramentas populares — instale os que você precisar:

ServiçoO que ele destrava
NotionLer/escrever páginas e bancos de dados do Notion, consultar o espaço de trabalho
GitHubIssues, PRs, comentários, busca em repositórios além do que a CLI gh faz
LinearTíquetes, projetos, ciclos
SlackBusca em todo o espaço de trabalho, leitura de outros canais
GmailTriagem da caixa de entrada, envio de e-mail, gestão de marcadores
SalesforceLeads, oportunidades, dados de contas
Snowflake / BigQuerySQL contra data warehouses
Google DriveBusca de arquivos, conteúdo, gestão de compartilhamento

Instale os servidores MCP pelo ~/.hermes/config.yaml, na seção mcp_servers. Veja Integração com MCP para o guia completo de configuração.

Comparação com o Perplexity Computer no Slack​

A integração do Perplexity Computer com o Slack é construída em torno da mesma ideia: o agente gera um entregável (gráfico, PDF, apresentação) e o publica de volta na thread como anexo nativo. O modo entregável do Hermes Agent oferece o mesmo padrão para o usuário, só que localmente:

  • A geração acontece no venv / sandbox do próprio usuário (sem inquilino remoto).
  • Os arquivos chegam ao chat pela mesma API files.uploadV2 do Slack.
  • A variedade de conectores vem do MCP, e não de um catálogo curado com 400 integrações hospedadas — instale as que você realmente usa.

Os tokens OAuth ficam na máquina do usuário, em auth.json / .env. Sem armazenamento de token hospedado. Sem microVM multi-inquilino. Mesmo resultado final.