O que skill-stocktake faz?
Comando de barra (/skill-stocktake) que audita todas as habilidades e comandos do Claude usando uma lista de verificação de qualidade + julgamento holístico de IA. Suporta dois modos: Verificação Rápida para habilidades alteradas recentemente, e Inventário Completo para uma revisão completa.
Escopo
O comando tem como alvo os seguintes caminhos relativos ao diretório onde é invocado:
| Caminho | Descrição |
|---|---|
~/.claude/skills/ | Habilidades globais (todos os projetos) |
{cwd}/.claude/skills/ | Habilidades no nível do projeto (se o diretório existir) |
No início da Fase 1, o comando lista explicitamente quais caminhos foram encontrados e verificados.
Segmentando um projeto específico
Para incluir habilidades no nível do 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 habilidades e comandos globais serão avaliados.
Modos
| Modo | Gatilho | Duração |
|---|---|---|
| Verificação 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 de Verificação Rápida
Reavalie apenas habilidades que foram alteradas desde a última execução (5–10 min).
- Leia
~/.claude/skills/skill-stocktake/results.json - Execute:
bash ~/.claude/skills/skill-stocktake/scripts/quick-diff.sh \ ~/.claude/skills/skill-stocktake/results.json(O diretório do projeto é detectado automaticamente de$PWD/.claude/skills; passe-o explicitamente apenas se necessário) - Se a saída for
[]: reporte "Nenhuma alteração desde a última execução." e pare - Reavalie apenas esses arquivos alterados usando os mesmos critérios da Fase 2
- Mantenha as habilidades inalteradas dos resultados anteriores
- Saída apenas do diff
- Execute:
bash ~/.claude/skills/skill-stocktake/scripts/save-results.sh \ ~/.claude/skills/skill-stocktake/results.json <<< "$EVAL_RESULTS"
Fluxo de Inventário Completo
Fase 1 — Inventário
Execute: bash ~/.claude/skills/skill-stocktake/scripts/scan.sh
O script enumera os arquivos de habilidade, extrai o frontmatter e coleta os UTC mtimes.
O diretório do projeto é detectado automaticamente de $PWD/.claude/skills; passe-o explicitamente apenas se necessário.
Apresente o resumo da verificação e a tabela de inventário a partir da saída do script:
Verificando:
✓ ~/.claude/skills/ (17 arquivos)
✗ {cwd}/.claude/skills/ (não encontrado — apenas habilidades globais)
| Habilidade | Uso 7d | Uso 30d | Descrição |
|---|
Fase 2 — Avaliação de Qualidade
Inicie um subagente da ferramenta Agent (agente de propósito geral) com o inventário completo e a lista de verificação:
Agent(
subagent_type="general-purpose",
prompt="
Avalie o seguinte inventário de habilidades contra a lista de verificação.
[INVENTÁRIO]
[LISTA DE VERIFICAÇÃO]
Retorne JSON para cada habilidade:
{ "veredito": "Manter"|"Melhorar"|"Atualizar"|"Aposentar"|"Mesclar em [X]", "motivo": "..." }
"
)
O subagente lê cada habilidade, aplica a lista de verificação e retorna JSON por habilidade:
{ "veredito": "Manter"|"Melhorar"|"Atualizar"|"Aposentar"|"Mesclar em [X]", "motivo": "..." }
Orientação de chunk: Processe ~20 habilidades por invocação do subagente para manter o contexto gerenciável. Salve resultados intermediários em results.json (status: "in_progress") após cada chunk.
Após todas as habilidades serem avaliadas: defina status: "completed", prossiga para a Fase 3.
Detecção de retomada: Se status: "in_progress" for encontrado na inicialização, retome a partir da primeira habilidade não avaliada.
Cada habilidade é avaliada contra esta lista de verificação:
- [ ] Sobreposição de conteúdo com outras habilidades verificada
- [ ] Sobreposição com MEMORY.md / CLAUDE.md verificada
- [ ] Atualidade das referências técnicas verificada (use WebSearch se nomes de ferramentas / flags 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 | Tecnologia referenciada está desatualizada (verifique com WebSearch) |
| Aposentar | Baixa qualidade, desatualizada ou assimétrica em custo |
| Mesclar em [X] | Sobreposição substancial com outra habilidade; nomeie o alvo da mesclagem |
A avaliação é julgamento holístico de IA — não uma rubrica numérica. Dimensões orientadoras:
- Acionabilidade: exemplos de código, comandos ou etapas que permitem agir imediatamente
- Adequação de escopo: nome, gatilho e conteúdo estão alinhados; não muito amplo ou restrito
- Exclusividade: valor não substituível por MEMORY.md / CLAUDE.md / outra habilidade
- Atualidade: referências técnicas funcionam no ambiente atual
Requisitos de qualidade do motivo — o campo motivo deve ser autossuficiente e habilitador de decisão:
- NÃO escreva "inalterado" sozinho — sempre reafirme a evidência central
- Para Aposentar: informe (1) qual defeito específico foi encontrado, (2) o que cobre a mesma necessidade em vez disso
- 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 único permanece."
- Ruim:
- Para Mesclar: nomeie o alvo e descreva qual conteúdo integrar
- Ruim:
"Sobreposição com X" - Bom:
"Conteúdo fino de 42 linhas; a Etapa 4 de chatlog-to-article já cobre o mesmo fluxo. Integre a dica de 'ângulo do artigo' como uma nota nessa habilidade."
- 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; a seção 'Comparação de Frameworks' (L80–140) duplica ai-era-architecture-principles; exclua-a para chegar a ~150 linhas."
- Ruim:
- Para Manter (alteração apenas de mtime na Verificação Rápida): reafirme a justificativa original do veredito, não escreva "inalterado"
- Ruim:
"Inalterado" - Bom:
"mtime atualizado, mas conteúdo inalterado. Referência Python única explicitamente importada por rules/python/; nenhuma sobreposição encontrada."
- Ruim:
Fase 3 — Tabela de Resumo
| Habilidade | Uso 7d | Veredito | Motivo |
|---|
Fase 4 — Consolidação
- Aposentar / Mesclar: apresente 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 habilidade/regra existente; para Mesclar: o arquivo alvo e qual conteúdo integrar)
- Impacto da remoção (quaisquer habilidades dependentes, referências MEMORY.md ou fluxos de trabalho afetados)
- Melhorar: apresente sugestões de melhoria específicas com justificativa:
- O que mudar e por quê (ex.: "reduzir 430→200 linhas porque as seções X/Y duplicam python-patterns")
- O usuário decide se deve agir
- Atualizar: apresente conteúdo atualizado com fontes verificadas
- Verifique a contagem de linhas do MEMORY.md; proponha compressão se >100 linhas
Esquema do Arquivo de Resultados
~/.claude/skills/skill-stocktake/results.json:
evaluated_at: Deve ser definido como o horário UTC real da conclusão da avaliação.
Obtenha via Bash: date -u +%Y-%m-%dT%H:%M:%SZ. Nunca use uma aproximação apenas de 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": "Concreto, acionável, valor único para fluxo de trabalho X",
"mtime": "2026-01-15T08:30:00Z"
}
}
}
Observações
- A avaliação é cega: a mesma lista de verificação se aplica a todas as habilidades, independentemente da origem (ECC, autoescritas, extraídas automaticamente)
- Operações de arquivar / excluir sempre exigem confirmação explícita do usuário
- Sem ramificação de veredito por origem da habilidade