Pular para o conteúdo principal
O tool @skill deixa o agente crescer as próprias capacidades: quando ele aprende um procedimento reutilizável, uma convenção do projeto ou um fluxo que você repete, ele grava uma skill que auto-ativa pelos triggers nesta e em todas as sessões futuras. É a camada de skills viva do hermes-agent, nativa ao formato de skill do ChatCLI.
@memory vs @skill: @memory guarda fatos (“o user prefere tabs”); @skill guarda procedimento/conhecimento reutilizável com triggers (“como deployar este projeto”). Fato curto → memória; “como fazer X” → skill. E para criar skills a partir de documentação, anexe o corpus como knowledge base: o agente pesquisa com @knowledge e escreve a skill com @skill.

Subcomandos

<tool_call name="@skill" args='{"cmd":"create","args":{
  "name":"deploy-acme-api",
  "description":"Como deployar a Acme API. Use ao pedir deploy da Acme.",
  "triggers":["deploy acme","ship the api"],
  "content":"# Deploy\n1. make test\n2. git tag vX.Y.Z\n...",
  "allowed_tools":["@coder","Bash"]
}}' />
SubcomandoFunção
create {name, description, content, triggers?, allowed_tools?}cria uma skill nova
update {name, ...}evolui uma skill existente (não duplica)
listlista as skills salvas
show {name}imprime o conteúdo de uma skill
remove {name}apaga uma skill
statsanalytics de uso (quais skills se pagam)
export {names?, out}empacota skills num pack JSON compartilhável
import {path}instala skills de um pack
name é um slug kebab-case validado (sem path traversal). create não sobrescreve; update exige existir.

Loop de evolução

agente aprende → @skill create/update → grava ~/.chatcli/skills/<nome>/SKILL.md


              loader descobre na próxima rodada → auto-ativa pelos triggers
A skill embutida skill-authoring orienta o agente sobre quando e como autorar (capturar workflow repetido, boas descrições/triggers, evoluir em vez de duplicar).

Analytics de uso

@skill stats mostra o ranking de ativações (mais usadas primeiro, com last used) e sinaliza skills autoradas que nunca ativaram — candidatas a evoluir ou remover. Os dados ficam em ~/.chatcli/skill-usage.json, gravados de forma assíncrona pelo manager a cada ativação (FindAutoActivatedSkills), sem atrasar o turno.

Packs compartilháveis

@skill export {names:["deploy-acme-api"], out:"team-pack.json"}   # empacota
@skill import {path:"team-pack.json"}                              # instala
O pack é um JSON que carrega cada SKILL.md cru (round-trip sem perdas). No import, skills existentes são puladas a menos que overwrite:true. Útil para levar skills entre máquinas e times.

Segurança

  • Nome validado por slug → sem escrita fora do diretório de skills.
  • Nunca guarde segredos/tokens numa skill (isso é ambiente/credencial).
  • O seeding das skills embutidas nunca sobrescreve skills autoradas pelo agente.