⚡ AutomationsAI|Portal de Cursos →

Verificando acesso...

TRILHA 6

🧩 Extensibilidade e Novos Recursos

Incorpore novos recursos no Hermes Agent. Crie Skills próprias seguindo o padrão aberto agentskills.io, integre MCP servers de terceiros, construa tools via Tool Gateway, adicione novos canais de mensagem, agende jobs com Cron e contribua de volta para a comunidade.

4
Módulos
24
Tópicos
~4h
Duração
Avançado
Nível

Mapa da trilha

Conteúdo detalhado

6.1~60 min

🛠️ Criando Skills próprias

Padrão agentskills.io, SKILL.md, estrutura, testes e sharing.

O que é:

Especificação aberta para empacotar capacidades de agentes em pastas autocontidas, portáveis entre runtimes (Hermes, Claude Code, Codex, etc).

Por que aprender:

Escreve uma vez, roda em qualquer agente compatível. Skills são a unidade de extensibilidade de mais alto nível do Hermes.

Conceitos-chave:

SKILL.md como manifest, frontmatter YAML, instruções em markdown, assets opcionais (scripts, templates), description acionável para o roteador escolher quando carregar.

O que é:

Pasta com nome da skill contendo SKILL.md na raiz e arquivos auxiliares (scripts, templates, referências) usados pela skill em runtime.

Por que aprender:

Estrutura previsível significa instalação trivial: copia a pasta para skills/ e o agente já encontra.

Conceitos-chave:

~/.hermes/skills/<name>/SKILL.md, paths relativos a partir do SKILL.md, separar instruções (markdown) de execução (scripts).

O que é:

Frontmatter YAML com name, description e metadata; corpo markdown com instruções operacionais para o modelo.

Por que aprender:

A description é o gatilho do roteador — uma description ruim significa skill ignorada mesmo se a lógica estiver perfeita.

Conceitos-chave:

Description com "Use when X" explícito, triggers naturais, instruções em imperativo direto, exemplos de uso embedados.

O que é:

Conjunto de prompts representativos + respostas esperadas, rodados antes de publicar para garantir que o roteador escolhe a skill e que a saída faz sentido.

Por que aprender:

Skill sem eval é skill quebrada esperando para acontecer. Modelo muda, descrição precisa reverificar trigger rate.

Conceitos-chave:

Trigger rate, false positives, regressão por modelo, evals.yaml com casos positivos e negativos.

O que é:

Publicar a pasta da skill em repositório git público (GitHub) e/ou registrá-la em marketplaces como agentskills.io.

Por que aprender:

Distribuição via URL torna trivial instalar (hermes skill install <repo>) e construir reputação no ecossistema.

Conceitos-chave:

README com screenshots/exemplos, LICENSE clara (MIT recomendado), tags semânticas, versionamento via git tags.

O que é:

Hermes pode detectar padrões repetidos no histórico e sugerir consolidar como nova skill, com SKILL.md gerado automaticamente.

Por que aprender:

Reduz fricção de criação e captura conhecimento tácito que de outra forma se perderia entre sessões.

Conceitos-chave:

Detecção via N repetições, revisão humana antes de install, skill-creator interno, governance de skills geradas.

Ver Completo
6.2~60 min

🔌 MCP, Tool Gateway, canais e Cron

Integrar MCP servers, criar tools customizadas, adicionar canais e agendar jobs.

O que é:

Model Context Protocol — padrão aberto da Anthropic para conectar agentes a fontes de dados e ferramentas externas via servers locais ou remotos.

Por que aprender:

Ecossistema MCP cresce rápido — filesystem, GitHub, Postgres, Slack, etc — e Hermes conecta a qualquer um declarativamente.

Conceitos-chave:

mcpServers no YAML, stdio vs SSE, scopes (user/project), env vars sensíveis, list/call/disable.

O que é:

Camada que registra funções Python como tools nativas do agente via decorator @hermes.tool, com schema inferido por type hints.

Por que aprender:

Quando você quer lógica imperativa rápida (chamar API interna, ler banco) sem o overhead de empacotar um MCP server.

Conceitos-chave:

Type hints → schema JSON, docstring → description, hot-reload em dev, isolation por workspace.

O que é:

Canal = adapter entre uma plataforma de mensagem (Telegram, Discord, WhatsApp) e o core do Hermes, implementando interface Channel.

Por que aprender:

Permite o agente "morar" onde seus usuários já estão, sem cliente próprio.

Conceitos-chave:

on_message / send_message, autenticação por canal, mapeamento conversation_id, normalização de attachments.

O que é:

Agendador integrado que dispara skills em horários definidos por expressão cron, com retry e logs persistentes.

Por que aprender:

Transforma o agente de reativo em proativo — briefings matinais, checagens periódicas, relatórios semanais.

Conceitos-chave:

Expressão cron padrão (5 campos), timezone, --skill vs --command, hermes cron add/list/rm.

O que é:

Fluxo de contribuição open source no repo NousResearch/hermes-agent — issues, fork, branch, testes, PR, review, merge.

Por que aprender:

Bug que você encontrou hoje é bug que todo mundo terá amanhã. Devolver para o upstream multiplica seu impacto.

Conceitos-chave:

CONTRIBUTING.md, conventional commits, testes obrigatórios, discussão prévia em issue para breaking changes.

O que é:

Discord da Nous Research, GitHub Discussions, fóruns paralelos e marketplaces de skills/MCPs.

Por que aprender:

Suporte em tempo real, roadmap visível, oportunidade de influenciar a direção do projeto cedo.

Conceitos-chave:

Etiqueta open source, search antes de perguntar, MRE em bug reports, retribuir respondendo outros.

Ver Completo
6.3~55 min

🧠 Padrões avançados de skills

Composition (skill chamando skill), state machines, RAG embutido em skill, skills que usam outros LLMs. Saia do hello world.

O que é:

Skill orquestradora chamando outras skills via hermes.invoke() e compondo seus resultados num grafo controlado.

Por que aprender:

Reuso real (a mesma skill atende múltiplos casos), eval isolado, troca barata de implementação.

Conceitos-chave:

invoke() com max_depth, hermes skill graph, detecção de ciclos, profundidade controlada.

O que é:

Workflow de N passos sequenciais com estado serializado entre eles, retomada automática após falha e auditoria por passo.

Por que aprender:

Skills que chamam APIs externas precisam sobreviver a crashes sem refazer trabalho já cobrado.

Conceitos-chave:

@hermes.step, depends_on, retries+backoff, hermes run resume, checkpoint em ~/.hermes/state/runs/.

O que é:

Embedding model + ChromaDB local versionado junto da skill para consultar corpus específico (políticas, docs, FAQs).

Por que aprender:

Controle total sobre chunking, relevância e fontes — sem depender de MCP externo para conhecimento de domínio.

Conceitos-chave:

ingest() separado de run(), 3-8 chunks, sentence-transformers, retornar fontes na resposta.

O que é:

Router interno na skill que escolhe o modelo (Haiku, Hermes 70B/405B, GPT-4o) baseado no tipo de subtarefa.

Por que aprender:

Reduz custo ~70% mantendo qualidade — classify/extract no modelo barato, redação no modelo grande.

Conceitos-chave:

Mapa de MODELS, função pick(), métricas de custo relativo, observabilidade por subtarefa.

O que é:

Conjunto de decoradores (@idempotent, @lock) + propagação de idempotency_key para evitar duplicação em chamadas que alteram o mundo.

Por que aprender:

Modelo pode retomar/retentar silenciosamente — sem idempotência, você cobra o cliente duas vezes.

Conceitos-chave:

Chave estável (sha256 dos args), saga, outbox, circuit breaker, chain of responsibility.

O que é:

Sintomas (description com 3+ ORs, SKILL.md de 500 linhas, run() com switch de "modos") e padrão de refactor em skills focadas.

Por que aprender:

Monólito mata trigger rate, inviabiliza eval e afasta colaboradores. Quebrar cedo custa pouco.

Conceitos-chave:

Regra "1 frase sem ou", description <200 chars, SKILL.md <150 linhas, eval com 5-15 casos.

Ver Completo
6.4~60 min

🏗️ Construindo um MCP server próprio

Do zero, em Python ou Node, expor API interna da sua empresa para o Hermes. Caminho mais comum para adoção corporativa.

O que é:

Critério de decisão entre criar um MCP server completo ou apenas usar requests/tool decorator numa skill específica.

Por que aprender:

MCP tem overhead — vale quando há reuso real entre skills, portabilidade entre agentes ou consumo por times externos.

Conceitos-chave:

Tabela MCP vs REST vs gRPC, 5+ consumidores como threshold, 1 server = 1 domínio.

O que é:

MCP = JSON-RPC 2.0 sobre stdio ou HTTP+SSE; capabilities = tools (funções), resources (URIs), prompts (templates).

Por que aprender:

Entender o handshake (initialize → list → call) é essencial para debugar quando algo não funciona.

Conceitos-chave:

protocolVersion, inputSchema, content[], stdio vs SSE, capability negotiation.

O que é:

Framework Python que transforma funções com type hints em tools MCP via @mcp.tool().

Por que aprender:

Menor cerimônia para chegar a server funcional — ideal para iteração rápida e adopção pelo time.

Conceitos-chave:

FastMCP("name"), Literal/Optional viram enum/optional, docstring vira description, mcp.run(transport=...).

O que é:

SDK oficial @modelcontextprotocol/sdk com Server, handlers de schema e validação via Zod.

Por que aprender:

Quando o time já vive em JS/TS ou quando você precisa rodar em serverless edge (Workers, Vercel).

Conceitos-chave:

Server + StdioServerTransport, setRequestHandler, ListToolsRequestSchema, zodToJsonSchema.

O que é:

Três caminhos de auth: service account (estático), JWT por usuário (auditável), OAuth (3rd party em nome do user).

Por que aprender:

Server interno expõe dados sensíveis — auth correta evita vazamento de PII e ações erradas em nome de usuários.

Conceitos-chave:

JWT RS256 com TTL curto, secrets via env/secret manager, ctx.session.user_email, confused deputy risk.

O que é:

Empacotamento e distribuição: Docker para infra interna, pip/npm para distribuição open, SaaS para multi-tenant.

Por que aprender:

Build path bem definido leva do esqueleto ao server em produção em ~90 minutos, replicável por toda squad.

Conceitos-chave:

python:3.12-slim, ENTRYPOINT stdio, transport SSE em SaaS, awesome-mcp-servers para contribuição.

Ver Completo