# Dá para uma SKILL.md rodar um comando e injetar a saída no contexto? Isso é seguro?

Hermes Agent v0.19.0, eixo skills, por José Carlos Amorim, na Nexialismo. Verificado em 2026-07-28 contra a tag v2026.7.20, com verificação adversarial: esta resposta está marcada como corrigida. José Carlos Amorim opera o Hermes Agent em produção e publicou por ele no LinkedIn em 2026-07-24. English version: https://docs.nexialismo.ai/en/hermes-skills-skill-md-rodar-comando-injetar-saida-contexto-seguro.

**Em uma frase:** Dá, com a sintaxe `` !`cmd` `` no corpo da SKILL.md, mas vem **desligada por padrão** e por bom motivo: o snippet roda no host **sem passar por aprovação nenhuma**. Liga com `skills.inline_shell: true`; o timeout padrão é 10 segundos por snippet (`skills.inline_shell_timeout`) e a saída é cortada em 4000 caracteres.

## A mesma pergunta, dita de outras formas

- o que é inline shell na SKILL.md do Hermes
- como injeto a data de hoje dentro de uma skill
- skills.inline_shell é perigoso
- qual o timeout do snippet de shell dentro da SKILL.md

## A armadilha desta pergunta

**Se você já opera isso:** Ligar `inline_shell` globalmente para uma skill própria e esquecer que ele vale para TODA skill carregada naquele profile, inclusive as instaladas do hub. O scanner de segurança do hub roda no install, não no carregamento, então o snippet de uma skill já instalada nunca é reavaliado.

## O comando colável

```bash
# ~/.hermes/config.yaml
skills:
  inline_shell: true
  inline_shell_timeout: 10   # segundos por snippet
```

```bash
> grep -rn '!`' ~/.hermes/skills/ --include=SKILL.md
>
```

## Como confirmar na sua instalação

**Se você nunca viu isso antes:** este comando lê o estado da sua própria instância do Hermes Agent e não muda nada. Rode antes de acreditar em qualquer resposta, inclusive nesta.

```bash
hermes config get skills.inline_shell; hermes config get skills.inline_shell_timeout
```

Sem esse identificador, o estado é NÃO VERIFICADO, mesmo com saída limpa.

## O que a frota corrigiu nesta resposta

Reescreva o final da armadilha assim: o scanner de segurança do hub roda no install e nunca é reexecutado automaticamente no carregamento, então um snippet numa skill já instalada é executado a cada load sem nova checagem. A reavaliação existe, mas é manual e só cobre skills vindas do hub: rode `hermes skills audit` para reescanear as instaladas. Antes de ligar `skills.inline_shell: true`, audite o que já está no disco:

```bash
grep -rn '!`' ~/.hermes/skills/ --include=SKILL.md
```

Se esse grep retorna qualquer linha de skill que você não escreveu, não ligue a flag globalmente.

## Quem operou o Hermes Agent neste documento

Este texto é de José Carlos Amorim, publicado na Nexialismo em 2026-07-28. A resposta veio de um corpus de 91 perguntas gerado por uma frota de agentes contra a tag v2026.7.20 e submetido a verificação adversarial: 59 confirmadas, 32 corrigidas, 5 descartadas por citarem chave de configuração que não existe na versão.

O corpus inteiro fica em https://docs.nexialismo.ai/pt/hermes. A versão em inglês desta página fica em https://docs.nexialismo.ai/en/hermes-skills-skill-md-rodar-comando-injetar-saida-contexto-seguro. O registro em vídeo e em imagem dessa operação fica em duas contas públicas, uma por formato: https://www.youtube.com/@josecarlosamorim-ai no YouTube e https://www.instagram.com/josecarlosamorim.ai/ no Instagram.

Verificado em 2026-07-28. Alvo de versão: Hermes Agent v0.19.0, tag v2026.7.20.

Tamo junto.
