contexto-baseado-em-filesystem

Esta skill deve ser usada quando o trabalho do agente requer contexto armazenado em arquivos: scratchpads duráveis, offloading de saídas de ferramentas, descoberta sob demanda, arquivos de handoff entre agentes, memória baseada em filesystem ou políticas de limpeza para contexto armazenado fora do prompt.

O que é contexto-baseado-em-filesystem?

A skill 'Filesystem-Based Context Engineering' transforma o sistema de arquivos em uma camada de overflow para o contexto do agente inteligente, resolvendo o problema de janelas de contexto limitadas. Em vez de armazenar tudo no prompt, que tem capacidade restrita e consome tokens mesmo para informações irrelevantes, esta skill propõe o uso de arquivos para armazenar, recuperar e atualizar uma quantidade ilimitada de contexto de forma dinâmica. Ela é útil para cenários como offloading de saídas grandes de ferramentas, persistência de planos em tarefas de longo prazo, comunicação entre subagentes sem perda de fidelidade, carregamento dinâmico de skills e armazenamento de logs para consulta seletiva. A skill detalha padrões práticos (como scratch pads, planos em YAML, diretórios isolados por agente) e técnicas de busca (grep, glob, read_file com intervalos de linhas) para implementar descoberta de contexto sob demanda, economizando tokens e melhorando a qualidade das respostas. É compatível com qualquer plataforma de agente que tenha ferramentas de filesystem (como Claude Code, Cursor, Codex) e inclui diretrizes para organização de arquivos, contabilidade de tokens e prevenção de armadilhas como crescimento ilimitado de diretórios temporários e condições de corrida.

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

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

Engenharia de Contexto Baseada em Filesystem

Use o sistema de arquivos como a principal camada de overflow para o contexto do agente, porque as janelas de contexto são limitadas enquanto as tarefas geralmente requerem mais informações do que cabem em uma única janela. Arquivos permitem que os agentes armazenem, recuperem e atualizem uma quantidade efetivamente ilimitada de contexto através de uma única interface.

Prefira a descoberta dinâmica de contexto -- puxando contexto relevante sob demanda -- em vez da inclusão estática, porque o contexto estático consome tokens independentemente da relevância e ocupa espaço que poderia ser usado para informações específicas da tarefa.

Quando Ativar

Ative esta skill quando:

  • Saídas de ferramentas estão inchando a janela de contexto
  • Agentes precisam persistir estado em trajetórias longas
  • Subagentes precisam compartilhar informações sem passar mensagens diretamente
  • Tarefas exigem mais contexto do que cabe na janela
  • Construindo agentes que aprendem e atualizam suas próprias instruções
  • Implementando scratch pads para resultados intermediários
  • Saídas de terminal ou logs precisam estar acessíveis aos agentes

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

  • Memória semântica entre sessões, rastreamento de entidades ou grafos de conhecimento temporal: memory-systems.
  • Sumarização de conversas, compactação ou redação de handoff durável: context-compression.
  • Táticas de eficiência de tokens que não exigem armazenamento em arquivos: context-optimization.
  • Topologia de multi-agentes ou design de protocolo de handoff: multi-agent-patterns.
  • Edições de modelo que removem conteúdo da janela ativa: self-managed-context.

Conceitos Principais

Diagnostique falhas de contexto com base nestes quatro modos, porque cada um requer um remédio diferente do filesystem:

  1. Contexto ausente -- a informação necessária está ausente do contexto total disponível. Corrija persistindo saídas de ferramentas e resultados intermediários em arquivos para que nada seja perdido.
  2. Contexto sub-recuperado -- o conteúdo recuperado não encapsula o que o agente precisa. Corrija estruturando arquivos para recuperação direcionada (formatos amigáveis para grep, cabeçalhos de seção claros).
  3. Contexto super-recuperado -- o conteúdo recuperado excede em muito o necessário, desperdiçando tokens e degradando a atenção. Corrija offloading de conteúdo em massa para arquivos e retornando referências compactas.
  4. Contexto enterrado -- informações específicas estão escondidas em muitos arquivos. Corrija combinando glob e grep para busca estrutural junto com busca semântica para consultas conceituais.

Use o sistema de arquivos como a camada persistente que aborda todos os quatro: escreva uma vez, armazene de forma durável, recupere seletivamente.

Tópicos Detalhados

O Trade-off entre Contexto Estático e Dinâmico

Trate o contexto estático (instruções do sistema, definições de ferramentas, regras críticas) como um imóvel caro -- ele consome tokens a cada turno, independentemente da relevância. À medida que os agentes acumulam capacidades, o contexto estático cresce e ocupa espaço da informação dinâmica.

Use a descoberta dinâmica de contexto: inclua apenas ponteiros estáticos mínimos (nomes, descrições de uma linha, caminhos de arquivos) e carregue o conteúdo completo com ferramentas de busca quando relevante. Isso é mais eficiente em termos de tokens e geralmente melhora a qualidade das respostas, reduzindo informações contraditórias ou irrelevantes na janela.

Aceite o trade-off: a descoberta dinâmica exige que o modelo reconheça quando precisa de mais contexto. Os modelos de fronteira atuais lidam bem com isso, mas modelos menos capazes podem falhar em acionar os carregamentos. Em caso de dúvida, erre para incluir restrições críticas de segurança ou correção estaticamente.

Padrão 1: Filesystem como Scratch Pad

Redirecione saídas grandes de ferramentas para arquivos em vez de retorná-las diretamente ao contexto, porque uma única pesquisa na web ou consulta ao banco de dados pode despejar milhares de tokens no histórico da mensagem, onde persistem por toda a conversa.

Escreva a saída em um arquivo scratch, extraia um resumo compacto e retorne uma referência ao arquivo. O agente então usa recuperação direcionada (grep para padrões, leitura com intervalos de linhas) para acessar apenas o que precisa.

def handle_tool_output(output: str, threshold: int = 2000) -> str:
    if len(output) < threshold:
        return output

    file_path = f"scratch/{tool_name}_{timestamp}.txt"
    write_file(file_path, output)

    key_summary = extract_summary(output, max_tokens=200)
    return f"[Saída gravada em {file_path}. Resumo: {key_summary}]"

Use grep para pesquisar o arquivo descarregado e read_file com intervalos de linhas para recuperar seções direcionadas, porque isso preserva a saída completa para referência futura, mantendo apenas ~100 tokens no contexto ativo.

Padrão 2: Persistência de Planos

Escreva planos no sistema de arquivos porque tarefas de longo horizonte perdem coerência quando os planos saem da atenção ou são resumidos. O agente relê seu plano a qualquer momento, restaurando a consciência do objetivo e do progresso.

Armazene planos em formato estruturado para que sejam legíveis por humanos e analisáveis por máquina:

# scratch/current_plan.yaml
objective: "Refatorar módulo de autenticação"
status: em_andamento
steps:
  - id: 1
    description: "Auditar endpoints de autenticação atuais"
    status: concluído
  - id: 2
    description: "Projetar novo fluxo de validação de token"
    status: em_andamento
  - id: 3
    description: "Implementar e testar alterações"
    status: pendente

Releia o plano no início de cada turno ou após qualquer atualização de contexto para se reorientar, porque isso funciona como "manipulando a atenção através da recitação."

Padrão 3: Comunicação entre Subagentes via Filesystem

Roteie as descobertas dos subagentes através do sistema de arquivos em vez de passagem de mensagens, porque cadeias de mensagens multi-hop degradam a informação através da sumarização a cada salto ("jogo de telefone").

Faça com que cada subagente escreva diretamente em seu próprio diretório de trabalho. O coordenador lê esses arquivos diretamente, preservando a fidelidade total:

workspace/
  agents/
    research_agent/
      findings.md
      sources.jsonl
    code_agent/
      changes.md
      test_results.txt
  coordinator/
    synthesis.md

Imponha isolamento de diretório por agente para evitar conflitos de escrita e manter a propriedade clara de cada artefato de saída.

Padrão 4: Carregamento Dinâmico de Skills

Armazene skills como arquivos e inclua apenas nomes de skills com breves descrições no contexto estático, porque colocar todas as instruções no prompt do sistema desperdiça tokens e pode confundir o modelo com orientações contraditórias.

Skills disponíveis (carregue com read_file quando relevante):
- database-optimization: Ajuste de consultas e estratégias de indexação
- api-design: Melhores práticas de REST/GraphQL
- testing-strategies: Padrões de teste unitário, integração e e2e

Carregue o arquivo completo da skill (por exemplo, skills/database-optimization/SKILL.md) apenas quando a tarefa atual exigir. Isso converte o custo de token estático O(n) em O(1) por tarefa.

Padrão 5: Persistência de Terminal e Logs

Persista a saída do terminal em arquivos automaticamente e use grep para recuperação seletiva, porque a saída do terminal de processos de longa duração se acumula rapidamente e a cópia manual é propensa a erros.

terminals/
  1.txt    # Saída da sessão de terminal 1
  2.txt    # Saída da sessão de terminal 2

Consulte com grep direcionado (grep -A 5 "error" terminals/1.txt) em vez de carregar históricos completos de terminal no contexto.

Padrão 6: Aprendizado Através de Automodificação

Faça com que os agentes escrevam preferências e padrões aprendidos em seus próprios arquivos de instrução, para que sessões subsequentes carreguem esse contexto automaticamente, em vez de exigir atualizações manuais no prompt do sistema.

def remember_preference(key: str, value: str):
    preferences_file = "agent/user_preferences.yaml"
    prefs = load_yaml(preferences_file)
    prefs[key] = value
    write_yaml(preferences_file, prefs)

Proteja este padrão com validação, porque a automodificação pode acumular instruções incorretas ou contraditórias ao longo do tempo. Trate-o como experimental -- revise as preferências persistidas periodicamente.

Técnicas de Busca no Filesystem

Combine ls/list_dir, glob, grep e read_file com intervalos de linhas para descoberta de contexto, porque os modelos são especificamente treinados em travessia de filesystem e essa combinação geralmente supera a busca semântica para conteúdo técnico onde os padrões estruturais são claros.

  • ls / list_dir: Descobrir estrutura de diretórios
  • glob: Encontrar arquivos correspondentes a padrões (por exemplo, **/*.py)
  • grep: Pesquisar conteúdo de arquivos, retorna linhas correspondentes com contexto
  • read_file com intervalos: Ler seções específicas sem carregar arquivos inteiros

Use a busca no filesystem para consultas estruturais e de correspondência exata, e busca semântica para consultas conceituais. Combine ambas para uma descoberta abrangente.

Orientação Prática

Quando Usar Contexto de Filesystem

Aplique padrões de filesystem quando a situação corresponder a estes critérios, porque eles adicionam sobrecarga de E/S que só é justificada pela economia de tokens ou necessidades de persistência:

Use quando:

  • Saídas de ferramentas excedem ~2000 tokens
  • Tarefas abrangem vários turnos de conversa
  • Vários agentes precisam de estado compartilhado
  • Skills ou instruções excedem o tamanho confortável do prompt do sistema
  • Logs ou saída de terminal precisam de consulta seletiva

Evite quando:

  • Tarefas são concluídas em turnos únicos (sobrecarga não justificada)
  • O contexto cabe confortavelmente na janela (nenhum problema a resolver)
  • A latência é crítica (E/S de arquivo adiciona atraso mensurável)
  • O modelo não tem capacidades de ferramentas de filesystem

Organização de Arquivos

Estruture arquivos para descoberta pelo agente, porque os agentes navegam listando e lendo nomes de diretórios:

project/
  scratch/           # Arquivos de trabalho temporários
    tool_outputs/    # Grandes resultados de ferramentas
    plans/           # Planos ativos e listas de verificação
  memory/            # Informações persistentes aprendidas
    preferences.yaml # Preferências do usuário
    patterns.md      # Padrões aprendidos
  skills/            # Definições de skills carregáveis
  agents/            # Espaços de trabalho de subagentes

Use convenções de nomenclatura consistentes e inclua timestamps ou IDs em arquivos scratch para desambiguação.

Para loops de pesquisa autônomos, armazene evidências brutas recuperadas na execução que as consumiu, por exemplo researcher/runs/<run-id>/sources/evidence/raw/. Não deixe despejos de pesquisa brutos na raiz do repositório; artefatos no nível da raiz tornam-se difíceis de auditar e fáceis de citar sem procedência.

Contabilidade de Tokens

Meça de onde os tokens se originam antes e depois de aplicar padrões de filesystem, porque otimizar sem medir leva a esforço desperdiçado:

  • Acompanhe a proporção de contexto estático vs dinâmico
  • Monitore os tamanhos das saídas das ferramentas antes e depois do offloading
  • Meça com que frequência o contexto carregado dinamicamente é realmente usado

Exemplos

Exemplo 1: Offloading de Saída de Ferramenta

Entrada: Pesquisa na web retorna 8000 tokens
Antes: 8000 tokens adicionados ao histórico da mensagem
Depois:
  - Escrever em scratch/search_results_001.txt
  - Retornar: "[Resultados em scratch/search_results_001.txt. Descoberta principal: Limite de taxa da API é 1000 req/min]"
  - Agente usa grep no arquivo quando precisa de detalhes específicos
Resultado: ~100 tokens no contexto, 8000 tokens acessíveis sob demanda

Exemplo 2: Carregamento Dinâmico de Skill

Entrada: Usuário pergunta sobre indexação de banco de dados
Contexto estático: "database-optimization: Ajuste de consultas e indexação"
Ação do agente: read_file("skills/database-optimization/SKILL.md")
Resultado: Skill completa carregada apenas quando relevante

Exemplo 3: Histórico de Chat como Referência de Arquivo

Gatilho: Limite da janela de contexto atingido, sumarização necessária
Ação:
  1. Escrever histórico completo em history/session_001.txt
  2. Gerar resumo para nova janela de contexto
  3. Incluir referência: "Histórico completo em history/session_001.txt"
Resultado: Agente pode pesquisar o arquivo de histórico para recuperar detalhes perdidos na sumarização

Diretrizes

  1. Escreva saídas grandes em arquivos; retorne resumos e referências ao contexto
  2. Armazene planos e estado em arquivos estruturados para releitura
  3. Use espaços de trabalho de arquivos de subagentes em vez de cadeias de mensagens
  4. Carregue skills dinamicamente em vez de colocar tudo no prompt do sistema
  5. Persista saída de terminal e logs como arquivos pesquisáveis
  6. Combine grep/glob com busca semântica para descoberta abrangente
  7. Organize arquivos para descoberta pelo agente com nomenclatura clara
  8. Meça a economia de tokens para validar que os padrões de filesystem são eficazes
  9. Implemente limpeza de arquivos scratch para evitar crescimento infinito
  10. Proteja padrões de automodificação com validação
  11. Mantenha evidências brutas próximas à execução, avaliação e proposta que as usou

Armadilhas

  1. Crescimento infinito do diretório scratch: Agentes criam arquivos temporários sem limpeza, eventualmente consumindo disco e tornando as listagens de diretório ruidosas. Implemente uma política de retenção (baseada em idade ou contagem) e execute a limpeza nos limites da sessão.
  2. Condições de corrida no acesso a arquivos por múltiplos agentes: Gravações simultâneas no mesmo arquivo corrompem o estado silenciosamente. Imponha isolamento de diretório por agente ou use arquivos somente para anexar com entradas prefixadas pelo agente.
  3. Referências de arquivo obsoletas após movimentações/renomeações: Agentes mantêm caminhos de turnos anteriores que não existem mais após refatorações ou reorganização de arquivos. Sempre verifique a existência do arquivo antes de ler um caminho em cache; redescubra com glob se a verificação falhar.
  4. Falsos positivos em padrões glob: Padrões excessivamente amplos (por exemplo, **/*) puxam arquivos irrelevantes para o contexto, desperdiçando tokens e confundindo o modelo. Escopo globs para diretórios e extensões específicas.
  5. Suposições de tamanho de arquivo: Ler um arquivo sem verificar o tamanho pode despejar 100K+ tokens no contexto em uma única chamada de ferramenta. Verifique o tamanho do arquivo antes de ler; use leituras com intervalo de linhas para arquivos grandes.
  6. Falta de verificação de existência de arquivo: Agentes assumem que arquivos existem de turnos anteriores, mas eles podem ter sido excluídos ou movidos. Sempre proteja leituras com verificações de existência e trate erros de arquivo ausente com elegância.
  7. Deriva de formato do scratch pad: Scratch pads não estruturados tornam-se impossíveis de analisar após muitas gravações porque as convenções de formato se desgastam com anexos sucessivos. Defina e imponha um esquema (YAML, JSON ou markdown estruturado) desde a primeira gravação.
  8. Caminhos absolutos codificados: Quebram quando os repositórios são verificados em locais diferentes ou quando executados em contêineres. Use caminhos relativos a partir da raiz do projeto ou resolva caminhos dinamicamente.

Integração

Esta skill é proprietária do armazenamento de contexto baseado em arquivos

... [truncado para tradução]

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-compression

This skill should be used when long-running agent sessions need context compression, structured summarization, compaction, token-per-task optimization, or durable handoff summaries that preserve decisions, files, risks, and next actions.

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.

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