Pular para o conteúdo

compress-skill

compress-skill encolhe um SKILL.md sem mudar o que ele significa. Uma skill que carrega em toda sessão relevante é um imposto recorrente na janela de contexto — esta skill paga esse imposto, com segurança, garantindo que o comportamento que a skill codifica fique intocado.

O que resolve

Skills crescem. Um SKILL.md acumula frases redundantes, ressalvas repetidas e prosa que poderia ter metade do tamanho — e cada linha extra é carregada de novo em toda ativação. Mas comprimir à mão é arriscado: é fácil dropar a única frase que era load-bearing. compress-skill torna o encolhimento seguro, então você tem o footprint menor sem apostar no significado.

Como resolve

Comprime em dois passes, o mais barato primeiro:

  • Um passe de limpeza determinística remove inchaço mecânico (espaços, redundância) sem modelo envolvido.
  • Um passe de reescrita por LLM roda só se o passe determinístico não atingiu a meta de tamanho — então o modelo é gasto só quando necessário.

Durante todo o processo, o significado é protegido por invariantes duras: âncoras de teste extraídas do arquivo de teste da skill são preservadas, e frontmatter, headings e blocos de código nunca são modificados. É dry-run por padrão — você vê o resultado antes de qualquer escrita.

Uso & parâmetros

compress-skill <skill> [--apply]
FlagO que fazDefault
--applyEscreve o resultado comprimido no arquivo.dry-run (só mostra)

Quando usar

Quando um SKILL.md cresceu o bastante pra pesar na janela de contexto, ou como um passe periódico pelo catálogo de skills. Faz par com context-budget — ambos recuperam a janela, este no nível por-skill.