compressão-de-contexto

Esta skill deve ser usada quando sessões de agente de longa duração precisam de compressão de contexto, sumarização estruturada, compactação, otimização de tokens por tarefa ou resumos de handoff duráveis ​​que preservam decisões, arquivos, riscos e próximas ações.

O que é compressão-de-contexto?

Esta skill fornece estratégias avançadas de compressão de contexto para agentes de IA que operam em sessões longas ou bases de código extensas, focando na otimização de 'tokens por tarefa' em vez de 'tokens por requisição'. Ela define três abordagens principais: Sumarização Iterativa Ancorada (para rastreamento de arquivos em sessões longas), Compressão Opaca (para economia máxima de tokens em sessões curtas) e Sumário Regenerativo Completo (para sumários legíveis com fases de sessão claras). A skill enfatiza a preservação do 'rastro de artefatos' (arquivos criados/modificados, identificadores específicos) e oferece técnicas como sumários estruturados com seções obrigatórias, seleção estratégica de gatilhos de compressão e avaliação baseada em sondas. Ela é especialmente útil para agentes de codificação (ex.: Claude Code, Cursor, Codex) que precisam manter o contexto sem perder informações críticas, reduzindo a necessidade de re-busca frequente de dados.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/muratcankoylan/Agent-Skills-for-Context-Engineering/tree/main/skills/context-compression

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Estratégias de Compressão de Contexto

Quando as sessões de agente geram milhões de tokens de histórico de conversa, a compressão se torna obrigatória. A abordagem ingênua é a compressão agressiva para minimizar tokens por requisição. O alvo de otimização correto é tokens por tarefa: total de tokens consumidos para completar uma tarefa, incluindo custos de re-busca quando a compressão perde informações críticas.

Quando Ativar

Ative esta skill quando:

  • Sessões de agente excedem os limites da janela de contexto
  • Bases de código excedem as janelas de contexto (sistemas com 5M+ tokens)
  • Projetando estratégias de sumarização de conversa
  • Depurando casos onde agentes "esquecem" quais arquivos modificaram
  • Construindo estruturas de avaliação para qualidade de compressão
  • Criando resumos de handoff duráveis que preservam decisões, arquivos, riscos e próximas ações

Não ative esta skill para trabalhos adjacentes de propriedade de outras skills:

  • Táticas gerais de eficiência de token, como mascaramento, prefix caching ou particionamento: context-optimization.
  • Diagnosticando por que um contexto longo está falhando antes de escolher uma mitigação: context-degradation.
  • Escrevendo saídas brutas, logs ou planos em arquivos sem resumi-los: filesystem-context.
  • Projetando memória semântica de longo prazo entre sessões: memory-systems.
  • O modelo decidindo quando e onde reescrever seu próprio contexto: self-managed-context. Esta skill ainda define o que o texto de substituição deve preservar.

Conceitos Centrais

A compressão de contexto troca economia de tokens por perda de informação. Selecione entre três abordagens prontas para produção com base nas características da sessão:

  1. Sumarização Iterativa Ancorada: Implemente esta para sessões de longa duração onde o rastreamento de arquivos é importante. Mantenha sumários persistentes e estruturados com seções explícitas para intenção da sessão, modificações de arquivos, decisões e próximos passos. Quando a compressão for acionada, sumarize apenas o trecho recém-truncado e mescle com o sumário existente, em vez de regenerar do zero. Isso evita o desvio que se acumula quando os sumários são regenerados por completo — cada regeneração corre o risco de perder detalhes que o modelo considera de baixa prioridade, mas a tarefa exige. A estrutura força a preservação porque seções dedicadas atuam como listas de verificação que o sumarizador deve preencher, capturando a perda silenciosa de informação.

  2. Compressão Opaca: Reserve esta para sessões curtas onde os custos de re-busca são baixos e a economia máxima de tokens é necessária. Ela produz representações comprimidas otimizadas para fidelidade de reconstrução, alcançando taxas de compressão de 99%+, mas sacrificando completamente a interpretabilidade. A compensação é importante: não há como verificar o que foi preservado sem uma avaliação baseada em sondas, portanto, nunca use esta quando a depuração ou o rastreamento de artefatos for crítico.

  3. Sumário Regenerativo Completo: Use esta quando a legibilidade do sumário for crítica e as sessões tiverem limites de fase claros. Ela gera sumários estruturados detalhados em cada gatilho de compressão. A fraqueza é a perda cumulativa de detalhes ao longo de ciclos repetidos — cada regeneração completa é uma nova passagem que pode despriorizar detalhes preservados em sumários anteriores.

Tópicos Detalhados

Otimize para Tokens por Tarefa, Não Tokens por Requisição

Meça o total de tokens consumidos do início ao fim da tarefa, não tokens por requisição individual. Quando a compressão elimina caminhos de arquivo, mensagens de erro ou justificativa de decisão, o agente precisa re-explorar, reler arquivos e re-derivar conclusões — desperdiçando muito mais tokens do que a compressão economizou. Uma estratégia que economiza 0,5% a mais de tokens por requisição, mas causa 20% mais re-buscas, custa mais no geral. Monitore a frequência de re-busca como o principal sinal de qualidade: se o agente pede repetidamente para reler arquivos que já processou, a compressão está muito agressiva.

Resolva o Problema do Rastro de Artefatos Primeiro

A integridade do rastro de artefatos é frequentemente a dimensão mais fraca nas avaliações de compressão (claim-context-compression-factory-benchmark). Aborde isso proativamente porque a sumarização geral não consegue mantê-la de forma confiável.

Preserve estas categorias explicitamente em cada ciclo de compressão:

  • Quais arquivos foram criados (caminhos completos)
  • Quais arquivos foram modificados e o que mudou (inclua nomes de funções, não apenas nomes de arquivos)
  • Quais arquivos foram lidos, mas não alterados
  • Identificadores específicos: nomes de funções, nomes de variáveis, mensagens de erro, códigos de erro

Implemente um índice de artefatos separado ou rastreamento explícito de estado de arquivos no scaffolding do agente, em vez de confiar no sumarizador para capturar esses detalhes. Mesmo a sumarização estruturada com seções de arquivo dedicadas tem dificuldades com a completude ao longo de sessões longas.

Estruture Sumários com Seções Obrigatórias

Construa sumários estruturados com seções explícitas que evitam a perda silenciosa de informação. Cada seção atua como uma lista de verificação que o sumarizador deve preencher, tornando as omissões visíveis em vez de silenciosas.

## Intenção da Sessão
[O que o usuário está tentando realizar]

## Arquivos Modificados
- auth.controller.ts: Corrigida geração de token JWT
- config/redis.ts: Atualizado pooling de conexão
- tests/auth.test.ts: Adicionada configuração de mock para novo config

## Decisões Tomadas
- Usando pool de conexão Redis em vez de conexões por requisição
- Lógica de retry com backoff exponencial para falhas transitórias

## Estado Atual
- 14 testes passando, 2 falhando
- Restante: configuração de mock para testes do service de sessão

## Próximos Passos
1. Corrigir falhas de teste restantes
2. Executar suíte de teste completa
3. Atualizar documentação

Adapte as seções ao domínio do agente. Um agente de depuração precisa de "Causa Raiz" e "Mensagens de Erro"; um agente de migração precisa de "Esquema de Origem" e "Esquema de Destino". A estrutura importa mais do que as seções específicas — qualquer esquema explícito supera a sumarização de forma livre.

Escolha Gatilhos de Compressão Estrategicamente

Quando acionar a compressão importa tanto quanto como comprimir. Selecione uma estratégia de gatilho com base na previsibilidade da sessão:

EstratégiaPonto de GatilhoCompensação
Limite fixo70-80% de utilização do contextoSimples, mas pode comprimir cedo demais
Janela deslizanteManter últimos N turnos + sumárioTamanho de contexto previsível
Baseado em importânciaComprimir seções de baixa relevância primeiroComplexo, mas preserva o sinal
Limite de tarefaComprimir em conclusões lógicas de tarefaSumários limpos, mas tempo imprevisível

Padrão: janela deslizante com sumários estruturados para agentes de codificação — oferece o melhor equilíbrio entre previsibilidade e qualidade. Use gatilhos de limite de tarefa quando as sessões tiverem transições de fase claras (ex.: pesquisa, depois implementação, depois testes).

Avalie a Compressão com Sondas, Não Métricas

Métricas tradicionais como ROUGE ou similaridade de embedding falham em capturar a qualidade funcional da compressão. Um sumário pode pontuar alto em sobreposição lexical, mas perder o único caminho de arquivo que o agente precisa para continuar.

Use avaliação baseada em sonda: após a compressão, faça perguntas que testem se informações críticas sobreviveram. Se o agente responder corretamente, a compressão preservou a informação certa. Caso contrário, ele adivinha ou alucina.

Tipo de SondaO que TestaExemplo de Pergunta
RecallRetenção factual"Qual era a mensagem de erro original?"
ArtefatoRastreamento de arquivo"Quais arquivos modificamos?"
ContinuaçãoPlanejamento de tarefa"O que devemos fazer a seguir?"
DecisãoCadeia de raciocínio"O que decidimos sobre o problema do Redis?"

Pontue a Compressão em Seis Dimensões

Avalie a qualidade da compressão para agentes de codificação nestas dimensões. Acurácia e preservação do rastro de artefatos tendem a separar métodos mais claramente do que a similaridade lexical (claim-context-compression-factory-benchmark), então a compressão precisa de tratamento especializado além da sumarização geral.

  1. Acurácia: Os detalhes técnicos estão corretos — caminhos de arquivo, nomes de função, códigos de erro?
  2. Consciência de Contexto: A resposta reflete o estado atual da conversa?
  3. Rastro de Artefatos: O agente sabe quais arquivos foram lidos ou modificados?
  4. Completude: A resposta aborda todas as partes da pergunta?
  5. Continuidade: O trabalho pode continuar sem re-buscar informações?
  6. Seguimento de Instruções: A resposta respeita as restrições declaradas?

Orientação Prática

Aplique o Fluxo de Trabalho de Compressão em Três Fases para Grandes Bases de Código

Para bases de código ou sistemas de agente que excedem janelas de contexto, comprima em três fases sequenciais. Cada fase reduz o contexto para que a próxima opere dentro do orçamento.

  1. Fase de Pesquisa: Explore diagramas de arquitetura, documentação e interfaces principais. Comprima a exploração em uma análise estruturada de componentes, dependências e limites. Saída: um único documento de pesquisa que substitui a exploração bruta.

  2. Fase de Planejamento: Converta o documento de pesquisa em uma especificação de implementação com assinaturas de função, definições de tipo e fluxo de dados. Uma base de código de 5M tokens comprime para aproximadamente 2.000 palavras de especificação neste estágio.

  3. Fase de Implementação: Execute contra a especificação. O contexto permanece focado na especificação mais arquivos de trabalho ativos, não na exploração bruta da base de código. Esta fase raramente precisa de mais compressão porque a especificação já é compacta.

Use Artefatos de Exemplo como Sementes de Compressão

Quando fornecido com um exemplo de migração manual ou PR de referência, use-o como modelo para entender o padrão alvo em vez de explorar a base de código do zero. O exemplo revela restrições que a análise estática não consegue descobrir: quais invariantes devem ser mantidos, quais serviços quebram com mudanças e como é uma implementação limpa.

Isso é mais importante quando o agente não consegue distinguir complexidade essencial (requisitos de negócio) de complexidade acidental (soluções legadas). O artefato de exemplo codifica essa distinção implicitamente, economizando tokens que, de outra forma, iriam para exploração por tentativa e erro.

Implemente a Sumarização Iterativa Ancorada Passo a Passo

  1. Defina seções de sumário explícitas correspondentes ao domínio do agente (depuração, migração, desenvolvimento de funcionalidades)
  2. No primeiro gatilho de compressão, sumarize o histórico truncado nessas seções
  3. Em compressões subsequentes, sumarize apenas o conteúdo recém-truncado — não resuma o sumário existente
  4. Mescle novas informações nas seções existentes em vez de regenerá-las, deduplicando por caminho de arquivo e identidade de decisão
  5. Marque qual informação veio de qual ciclo de compressão — isso permite depuração quando os sumários divergem

Selecione a Abordagem Certa para o Perfil da Sessão

Use sumarização iterativa ancorada quando:

  • As sessões são de longa duração (100+ mensagens)
  • O rastreamento de arquivos é importante (codificação, depuração)
  • A verificação da informação preservada é necessária

Use compressão opaca quando:

  • A economia máxima de tokens é necessária
  • As sessões são relativamente curtas
  • Os custos de re-busca são baixos (ex.: nenhum acesso ao sistema de arquivos necessário)

Use sumários regenerativos quando:

  • A interpretabilidade do sumário é crítica para revisão humana
  • As sessões têm limites de fase claros
  • A revisão completa do contexto é aceitável em cada gatilho de compressão

Calibre as Taxas de Compressão por Método

MétodoTaxa de CompressãoPontuação de QualidadeCompensação
Iterativo Ancorado98,6%3,70Melhor qualidade, compressão ligeiramente menor
Regenerativo98,7%3,44Boa qualidade, compressão moderada
Opaco99,3%3,35Melhor compressão, perda de qualidade

Use estes como valores de referência específicos da fonte, não constantes universais (claim-context-compression-factory-benchmark). Para qualquer tarefa onde existam custos de re-busca, esta compensação geralmente favorece abordagens estruturadas.

Exemplos

Exemplo 1: Compressão de Sessão de Depuração

Contexto original (89.000 tokens, 178 mensagens):

  • Erro 401 no endpoint /api/auth/login
  • Rastreamento através do controller de auth, middleware, armazenamento de sessão
  • Encontrada conexão Redis obsoleta
  • Corrigido pooling de conexão, adicionada lógica de retry
  • 14 testes passando, 2 falhando

Sumário estruturado após compressão:

## Intenção da Sessão
Depurar erro 401 Unauthorized em /api/auth/login apesar de credenciais válidas.

## Causa Raiz
Conexão Redis obsoleta no armazenamento de sessão. JWT gerado corretamente, mas a sessão não pôde ser persistida.

## Arquivos Modificados
- auth.controller.ts: Sem alterações (somente leitura)
- middleware/cors.ts: Sem alterações (examinado)
- config/redis.ts: Corrigida configuração de pooling de conexão
- services/session.service.ts: Adicionada lógica de retry para falhas transitórias
- tests/auth.test.ts: Configuração de mock atualizada

## Status do Teste
14 passando, 2 falhando (problemas de configuração de mock)

## Próximos Passos
1. Corrigir falhas de teste restantes (mock do service de sessão)
2. Executar suíte de teste completa
3. Implantar em staging

Exemplo 2: Qualidade da Resposta da Sonda

Após a compressão, perguntando "Qual foi o erro original?":

Resposta boa (sumarização estruturada):

"O erro original foi uma resposta 401 Unauthorized do endpoint /api/auth/login. Os usuários receberam este erro com credenciais válidas. A causa raiz foi uma conexão Redis obsoleta no armazenamento de sessão."

Resposta ruim (compressão agressiva):

"Estávamos depurando um problema de autenticação. O login estava falhando. Corrigimos alguns problemas de configuração."

A resposta estruturada preserva endpoint, código de erro e causa raiz. A resposta agressiva perde todos os detalhes técnicos.

Diretrizes

  1. Otimize para tokens por tarefa, não tokens por requisição
  2. Use sumários estruturados com seções explícitas para rastreamento de arquivos
  3. Acione a compressão em 70-80% de utilização do contexto
  4. Implemente mesclagem incremental em vez de regeneração completa
  5. Teste a qualidade da compressão com avaliação baseada em sonda
  6. Rastreie o rastro de artefatos separadamente se o rastreamento de arquivos for crítico
  7. Aceite taxas de compressão ligeiramente menores para melhor retenção de qualidade
  8. Monitore a frequência de re-busca como um sinal de qualidade da compressão

Armadilhas

  1. Nunca comprima definições de ferramentas ou esquemas: Comprimir esquemas de chamada de função, especificações de API ou definições de ferramentas destrói completamente a funcionalidade do agente. O agente não pode invocar ferramentas com esquemas corrompidos. Mantenha estes sempre no contexto completo.

  2. Evite ciclos de regeneração profunda: Múltiplas regenerações completas de sumários (3+) levam à perda cumulativa de detalhes. Após a terceira regeneração, a sessão pode perder metade dos artefatos originalmente rastreados. A mesclagem incremental evita isso.

  3. Cuidado com a falsa completude: Sumários estruturados parecem abrangentes mesmo quando faltam detalhes importantes. Sempre teste com perguntas de sonda direcionadas a artefatos e decisões, mesmo quando a estrutura parece completa.

  4. Não comprima se o agente estiver prestes a concluir: Se a sessão estiver a 2-3 mensagens da conclusão natural (por exemplo, "implante isso"), a compressão adiciona latência e risco sem benefício. Use gatilhos de compressão conscientes da proximidade da conclusão.

  5. Evite seções de sumário de forma livre para domínios complexos: Seções como "Detalhes Técnicos" ou "Atualizações Diversas" são menos eficazes do que seções específicas como "Mensagens de Erro", "Nomes de Função Modificados" ou "Dependências Alteradas". Seções vagas incentivam o sumarizador a pular detalhes importantes em favor de generalizações mais seguras.

Individual skills in this repo

This repo contains 19 individual skills — each has its own dedicated page.

advanced-evaluation

This skill should be used for advanced LLM evaluation: LLM-as-judge systems, direct scoring, pairwise comparison, rubric calibration, evaluator bias mitigation, confidence scoring, and automated quality assessment.

bdi-mental-states

This skill should be used when modeling agent mental states with BDI concepts: beliefs, desires, intentions, RDF-to-belief transformations, rational agency traces, cognitive agents, BDI ontologies, and neuro-symbolic AI integration.

book-sft-pipeline

This skill should be used for book-to-SFT pipelines: ePub extraction, literary segmentation, author-voice dataset construction, style-transfer training, LoRA workflows, and model evaluation for voice replication.

comprehensive-research-agent

Ensure thorough validation, error recovery, and transparent reasoning in research tasks with multiple tool calls

context-degradation

This skill should be used for diagnosing and mitigating context degradation: lost-in-middle failures, context poisoning, context clash, context confusion, attention-pattern issues, and agent performance degradation caused by accumulated or conflicting context.

context-fundamentals

This skill should be used to explain or reason about the foundational concepts of context engineering: what context is, the anatomy of a context window, how attention mechanics work, the U-shaped attention curve, why context quality matters more than quantity, and the mental models needed to interpret every other context-engineering decision. Use this for conceptual explanation, onboarding, and background reading. Route operational work to the specialized skills: debugging attention failures goes to context-degradation, token-efficiency work goes to context-optimization, conversation summarization goes to context-compression, and project-shape decisions go to project-development.

context-optimization

This skill should be used for improving context efficiency: context budgeting, observation masking, prefix or KV-cache strategy, partitioning, token-cost reduction, retrieval scoping, and extending effective context capacity without lowering answer quality.

evaluation

This skill should be used when building agent evaluation systems: deterministic checks, regression suites, multi-dimensional rubrics, quality gates, production monitoring, baseline comparison, and outcome measurement for agent pipelines.

filesystem-context

This skill should be used when agent work needs file-backed context: durable scratchpads, tool-output offloading, just-in-time discovery, cross-agent handoff files, filesystem memory, or cleanup policies for context stored outside the prompt.

harness-engineering

This skill should be used when designing autonomous agent harnesses: research loops, evaluation scaffolds, locked and editable surfaces, durable logs, novelty gates, pruning, rollback, PR preparation, and human approval boundaries.

hosted-agents

This skill should be used when designing hosted or background agent infrastructure: sandboxed execution, remote coding environments, warm pools, session persistence, multiplayer collaboration, self-spawning agents, or Modal-style sandboxes.

latent-briefing

This skill should be used when the user asks to "share memory between agents", "KV cache compaction for multi-agent", "orchestrator worker context", "latent briefing", "reduce worker tokens", "cross-agent memory without summarization", or discusses Attention Matching compaction, recursive language models with workers, or token explosion in hierarchical agents.

long-horizon-prompting

This skill should be used when writing, enhancing, or evaluating the launch prompt for a long-running autonomous agent or a parallel multi-agent orchestration attacking a hard problem: pseudo-formal task briefs that define terms and an exact success predicate linguistically, enumerate non-counting outcomes, set persistence rules with explicit stop and return conditions and effort floors, manage a diverse portfolio of parallel approaches with an approach registry and blocked-route bookkeeping, and gate the return on adversarial audit. Route agent topology and coordination protocols to multi-agent-patterns, runtime control surfaces and loop governance to harness-engineering, evaluator and quality-gate construction to evaluation, judge design to advanced-evaluation, and compaction or memory mechanics to context-compression and memory-systems.

memory-systems

This skill should be used for persistent semantic memory in agent systems: cross-session knowledge retention, entity tracking, temporal validity, graph or vector retrieval, memory consolidation, and memory benchmark selection. Route file-backed scratchpads to filesystem-context, handoff summaries to context-compression, and token-efficiency tactics to context-optimization.

multi-agent-patterns

This skill should be used when designing multi-agent systems that need context isolation, supervisor or swarm coordination, explicit handoffs, parallel execution, or a decision on whether multiple agents are justified.

project-development

This skill should be used for project-level decisions about LLM-powered systems: whether an LLM is the right primitive for the task at hand, the shape of a multi-stage batch or agent pipeline, token and cost estimation, choosing between single-agent and multi-agent at the project level, structured output design for downstream parsing, and structuring agent-assisted iteration. Use this when the unit of work is a whole project or a multi-stage pipeline. Route individual tool design to tool-design and individual skill-loading or context-budget tactics to context-optimization.

self-improvement-loops

This skill should be used when the harness, scaffold, workflow, or optimizer itself is the optimization target: recursive self-improvement (RSI) loops, meta-harnesses, self-improving harnesses that mine their own failures and propose bounded edits, evolutionary or population-based search over agent scaffolds, acceptance gates for self-modifying systems, and agentic context evolution where the mechanism that produces context is versioned and evolved. Route governance of a single autonomous loop (locked surfaces, durable logs, rollback, novelty gates, approval boundaries) to harness-engineering, measurement and quality-gate design to evaluation, judge design to advanced-evaluation, and remote sandbox infrastructure to hosted-agents.

self-managed-context

This skill should be used when a model gets read-write control over its own live context window instead of a harness-scheduled compaction policy: the context exposed as an editable file the model rewrites with code tools, model-driven eviction and in-place updates, the harness invariants that keep self-editing safe (pinned prefix, edit gate, edit receipts, budget readouts, rollback on overflow), the prefix-cache cost of mid-context edits, and steering or training the model's own context-editing strategy. Route note content and fixed-threshold summarization to context-compression, cache-stable layout under harness control to context-optimization, file offloading to filesystem-context, and loop governance to self-improvement-loops.

tool-design

This skill should be used for the tool-interface layer of an agent system specifically: writing tool descriptions agents can route on, designing tool schemas and response formats, naming conventions, actionable error recovery messages, MCP server design, tool-set consolidation, and deciding when to add or remove an individual tool. Use this when the unit of work is a single tool or a set of tools. Route project-shape, pipeline architecture, and task-model-fit decisions to project-development; route deciding whether to introduce sub-agents to multi-agent-patterns.

Habilidades Relacionadas