O que skill-stocktake faz?
Comando barra (/skill-stocktake) que audita todas as skills e comandos do Claude usando uma checklist de qualidade + julgamento holístico de IA. Suporta dois modos: Varredura Rápida para skills alteradas recentemente e Inventário Completo para uma revisão total.
Escopo
O comando tem como alvo os seguintes caminhos relativos ao diretório onde é invocado:
| Caminho | Descrição |
|---|---|
~/.claude/skills/ | Skills globais (todos os projetos) |
{cwd}/.claude/skills/ | Skills do projeto (se o diretório existir) |
No início da Fase 1, o comando lista explicitamente quais caminhos foram encontrados e escaneados.
Mirando um projeto específico
Para incluir skills de projeto, execute a partir do diretório raiz do projeto:
cd ~/caminho/para/meu-projeto
/skill-stocktake
Se o projeto não tiver um diretório .claude/skills/, apenas as skills e comandos globais serão avaliados.
Modos
| Modo | Gatilho | Duração |
|---|---|---|
| Varredura Rápida | results.json existe (padrão) | 5–10 min |
| Inventário Completo | results.json ausente, ou /skill-stocktake full | 20–30 min |
Cache de resultados: ~/.claude/skills/skill-stocktake/results.json
Fluxo da Varredura Rápida
Reavalia apenas skills que foram alteradas desde a última execução (5–10 min).
- Ler
~/.claude/skills/skill-stocktake/results.json - Executar:
bash ~/.claude/skills/skill-stocktake/scripts/quick-diff.sh \ ~/.claude/skills/skill-stocktake/results.json(O diretório do projeto é detectado automaticamente a partir de$PWD/.claude/skills; passe-o explicitamente apenas se necessário) - Se a saída for
[]: reportar "Nenhuma alteração desde a última execução." e parar - Reavaliar apenas esses arquivos alterados usando os mesmos critérios da Fase 2
- Manter as skills inalteradas dos resultados anteriores
- Exibir apenas o diff (diferenças)
- Executar:
bash ~/.claude/skills/skill-stocktake/scripts/save-results.sh \ ~/.claude/skills/skill-stocktake/results.json <<< "$EVAL_RESULTS"
Fluxo do Inventário Completo
Fase 1 — Inventário
Executar: bash ~/.claude/skills/skill-stocktake/scripts/scan.sh
O script enumera os arquivos de skill, extrai o frontmatter e coleta os timestamps UTC de modificação.
O diretório do projeto é detectado automaticamente a partir de $PWD/.claude/skills; passe-o explicitamente apenas se necessário.
Apresentar o resumo do scan e a tabela de inventário da saída do script:
Escaneando:
✓ ~/.claude/skills/ (17 arquivos)
✗ {cwd}/.claude/skills/ (não encontrado — apenas skills globais)
| Skill | Uso 7d | Uso 30d | Descrição |
|---|
Fase 2 — Avaliação de Qualidade
Lançar um subagente da ferramenta Agent (agente de propósito geral) com o inventário completo e a checklist:
Agent(
subagent_type="general-purpose",
prompt="
Avalie o seguinte inventário de skills de acordo com a checklist.
[INVENTÁRIO]
[CHECKLIST]
Retorne JSON para cada skill:
{ "veredito": "Manter"|"Melhorar"|"Atualizar"|"Aposentar"|"Fundir em [X]", "motivo": "..." }
"
)
O subagente lê cada skill, aplica a checklist e retorna JSON por skill:
{ "veredito": "Manter"|"Melhorar"|"Atualizar"|"Aposentar"|"Fundir em [X]", "motivo": "..." }
Orientação de blocos: Processar ~20 skills por invocação do subagente para manter o contexto gerenciável. Salvar resultados intermediários em results.json (status: "in_progress") após cada bloco.
Após todas as skills serem avaliadas: definir status: "completed", prosseguir para a Fase 3.
Detecção de retomada: Se status: "in_progress" for encontrado na inicialização, retomar a partir da primeira skill não avaliada.
Cada skill é avaliada de acordo com esta checklist:
- [ ] Verificada sobreposição de conteúdo com outras skills
- [ ] Verificada sobreposição com MEMORY.md / CLAUDE.md
- [ ] Verificada atualidade das referências técnicas (usar WebSearch se nomes de ferramentas / flags de CLI / APIs estiverem presentes)
- [ ] Frequência de uso considerada
Critérios de veredito:
| Veredito | Significado |
|---|---|
| Manter | Útil e atual |
| Melhorar | Vale a pena manter, mas melhorias específicas são necessárias |
| Atualizar | A tecnologia referenciada está desatualizada (verificar com WebSearch) |
| Aposentar | Baixa qualidade, desatualizada ou com custo assimétrico |
| Fundir em [X] | Sobreposição substancial com outra skill; nomear o alvo da fusão |
A avaliação é julgamento holístico de IA — não uma rubrica numérica. Dimensões orientadoras:
- Acionabilidade: exemplos de código, comandos ou passos que permitem agir imediatamente
- Adequação de escopo: nome, gatilho e conteúdo estão alinhados; não muito amplo nem muito restrito
- Exclusividade: valor não substituível por MEMORY.md / CLAUDE.md / outra skill
- Atualidade: as referências técnicas funcionam no ambiente atual
Requisitos de qualidade do motivo — o campo motivo deve ser autocontido e permitir tomada de decisão:
- NÃO escreva apenas "inalterado" — sempre repita a evidência principal
- Para Aposentar: informe (1) qual defeito específico foi encontrado, (2) o que cobre a mesma necessidade em seu lugar
- Ruim:
"Substituído" - Bom:
"disable-model-invocation: true já definido; substituído por continuous-learning-v2 que cobre todos os mesmos padrões mais pontuação de confiança. Nenhum conteúdo exclusivo restante."
- Ruim:
- Para Fundir: nomeie o alvo e descreva qual conteúdo integrar
- Ruim:
"Sobreposição com X" - Bom:
"Conteúdo enxuto de 42 linhas; a Etapa 4 de chatlog-to-article já cobre o mesmo fluxo. Integrar a dica de 'ângulo do artigo' como uma nota nessa skill."
- Ruim:
- Para Melhorar: descreva a mudança específica necessária (qual seção, qual ação, tamanho alvo se relevante)
- Ruim:
"Muito longo" - Bom:
"276 linhas; seção 'Comparação de Frameworks' (L80–140) duplica ai-era-architecture-principles; deletá-la para chegar a ~150 linhas."
- Ruim:
- Para Manter (mudança apenas de mtime na Varredura Rápida): reafirme a justificativa do veredito original, não escreva "inalterado"
- Ruim:
"Inalterado" - Bom:
"mtime atualizado mas conteúdo inalterado. Referência Python exclusiva explicitamente importada por rules/python/; nenhuma sobreposição encontrada."
- Ruim:
Fase 3 — Tabela de Resumo
| Skill | Uso 7d | Veredito | Motivo |
|---|
Fase 4 — Consolidação
- Aposentar / Fundir: apresentar justificativa detalhada por arquivo antes de confirmar com o usuário:
- Qual problema específico foi encontrado (sobreposição, desatualização, referências quebradas, etc.)
- Qual alternativa cobre a mesma funcionalidade (para Aposentar: qual skill/regra existente; para Fundir: o arquivo alvo e qual conteúdo integrar)
- Impacto da remoção (quaisquer skills dependentes, referências em MEMORY.md ou fluxos de trabalho afetados)
- Melhorar: apresentar sugestões específicas de melhoria com justificativa:
- O que mudar e por quê (ex.: "reduzir de 430 para 200 linhas porque as seções X/Y duplicam python-patterns")
- O usuário decide se deve agir
- Atualizar: apresentar conteúdo atualizado com fontes verificadas
- Verificar contagem de linhas do MEMORY.md; propor compressão se >100 linhas
Esquema do Arquivo de Resultados
~/.claude/skills/skill-stocktake/results.json:
evaluated_at: Deve ser definido para a data/hora UTC real da conclusão da avaliação.
Obter via Bash: date -u +%Y-%m-%dT%H:%M:%SZ. Nunca usar uma aproximação apenas com data como T00:00:00Z.
{
"evaluated_at": "2026-02-21T10:00:00Z",
"mode": "full",
"batch_progress": {
"total": 80,
"evaluated": 80,
"status": "completed"
},
"skills": {
"skill-name": {
"path": "~/.claude/skills/skill-name/SKILL.md",
"verdict": "Keep",
"reason": "Concrete, actionable, unique value for X workflow",
"mtime": "2026-01-15T08:30:00Z"
}
}
}
Notas
- A avaliação é cega: a mesma checklist se aplica a todas as skills independentemente da origem (ECC, próprias, extraídas automaticamente)
- Operações de arquivamento/exclusão sempre exigem confirmação explícita do usuário
- Nenhum desvio de veredito por origem da skill