Skills no Hermes Agent — O que são e como criar

📅 25 Jul 2026 📖 10 min de leitura 🏷️ Avançado

As skills são o superpoder do Hermes Agent. Permitem estender as capacidades do agente com comandos personalizados, ferramentas externas e integrações com qualquer API ou serviço.

O que é uma Skill?

Uma skill é um conjunto de instruções que ensina o agente a executar uma tarefa específica. Pode ser tão simples como "pesquisar na web" ou tão complexa como "gerir uma base de dados inteira".

Tipos de Skills

  • Skills de Comando — o agente aprende um novo comando que pode ser invocado por texto
  • Skills de Ferramenta — integram APIs externas, bases de dados ou serviços web
  • Skills de Fluxo — combinam múltiplos passos num pipeline automatizado
  • Skills de Conhecimento — adicionam documentação ou contexto específico ao agente

Estrutura de uma Skill (YAML)

name: pesquisar_web
description: Pesquisa na web e retorna resultados resumidos
author: MarcTechJA
version: "1.0"

inputs:
  query:
    type: string
    description: Termo de pesquisa
    required: true

steps:
  - name: pesquisar
    action: web_search
    params:
      query: "{{ inputs.query }}"
      max_results: 5

  - name: resumir
    action: llm.generate
    params:
      prompt: |
        Resume o seguinte conteúdo em até 300 palavras:
        {{ steps.pesquisar.output }}

outputs:
  resumo: "Resumo dos resultados da pesquisa sobre {{ inputs.query }}"

Exemplo Prático: Skill de Email

name: enviar_email
description: Envia email via SMTP
author: MarcTechJA
version: "1.0"

inputs:
  to:
    type: string
    description: Endereço de email do destinatário
    required: true
  subject:
    type: string
    description: Assunto do email
    required: true
  body:
    type: string
    description: Corpo da mensagem
    required: true

steps:
  - name: enviar
    action: tools.email.send
    params:
      to: "{{ inputs.to }}"
      subject: "{{ inputs.subject }}"
      body: "{{ inputs.body }}"
      smtp_host: "smtp.gmail.com"
      smtp_port: 587
      username: "{{ env.EMAIL_USER }}"
      password: "{{ env.EMAIL_PASS }}"

outputs:
  status: "Email enviado com sucesso para {{ inputs.to }}"

Skills em Python

Para maior flexibilidade, podes criar skills em Python:

from hermes.skills import Skill

class AnalisarSentimento(Skill):
    name = "analisar_sentimento"
    description = "Analisa o sentimento de um texto"

    def run(self, text: str) -> dict:
        palavras_positivas = ["bom", "ótimo", "excelente", "gosto", "adorei"]
        palavras_negativas = ["mau", "péssimo", "horrível", "odeio", "detesto"]

        texto_min = text.lower()
        score = sum(1 for p in palavras_positivas if p in texto_min)
        score -= sum(1 for n in palavras_negativas if n in texto_min)

        sentimento = "positivo" if score > 0 else "negativo" if score < 0 else "neutro"
        return {"sentimento": sentimento, "score": score}

Onde Colocar as Skills

As skills são armazenadas no diretório ~/.hermes/skills/. Cada skill num ficheiro .yaml ou .py. O Hermes Agent carrega automaticamente todas as skills neste diretório ao iniciar.

Próximos Passos

O universo de skills é vasto. No Guia Completo do Hermes Agent, exploramos dezenas de skills, desde automações empresariais até integrações com APIs complexas, com exemplos prontos a usar.

Domina as Skills do Hermes Agent

O Guia Completo tem capítulos dedicados à criação de skills para todos os níveis.

Saber Mais Sobre o Livro