Skip to content

Latest commit

 

History

History
68 lines (50 loc) · 3.45 KB

File metadata and controls

68 lines (50 loc) · 3.45 KB
title status authors based_on category source tags
Layered Configuration Context
established
Nikola Balic (@nibzard)
Boris Cherny (via Claude Code)
Context & Memory
context management
configuration
scoped context
automatic loading
CLAUDE.md

Problem

AI agents require relevant context to perform effectively. Providing this context manually in every prompt is cumbersome, and a one-size-fits-all global context is often too broad or too narrow. Different projects, users, and organizational policies may require different baseline information for the agent.

Solution

Implement a system of layered configuration files (e.g., named CLAUDE.md or a similar convention) that the agent automatically discovers and loads based on their location in the file system hierarchy. This allows for:

  • Enterprise/Organizational Context: A root-level file (/<enterprise_root>/CLAUDE.md) for policies or information shared across all projects in an organization.
  • User-Specific Global Context: A file in the user's home directory (~/.claude/CLAUDE.md) for personal preferences, common tools, or notes shared across all their projects.
  • Project-Specific Context: A file within the project's root directory (<project_root>/CLAUDE.md), typically version-controlled, for project-specific instructions, architectural overviews, or key file descriptions.
  • Project-Local Context: A local, non-version-controlled file (<project_root>/CLAUDE.local.md) for individual overrides, temporary notes, or secrets relevant to the project for that user.

The agent intelligently merges or prioritizes these context layers, providing a rich, tailored baseline of information without manual intervention in each query.

Example (configuration hierarchy)

flowchart TD
    A[Enterprise Root<br/>/enterprise/CLAUDE.md] --> E[Merged Context]
    B[User Global<br/>~/.claude/CLAUDE.md] --> E
    C[Project Root<br/>project/CLAUDE.md] --> E
    D[Project Local<br/>project/CLAUDE.local.md] --> E
    E --> F[Agent Context Window]

    style A fill:#e1f5fe
    style B fill:#f3e5f5
    style C fill:#e8f5e8
    style D fill:#fff3e0
    style F fill:#ffebee
Loading

Evidence

  • Evidence Grade: high
  • Industry Adoption: Production-validated across Claude Code, Continue.dev, Cursor AI, and GitHub Copilot
  • Origin: Industry-practitioner pattern; limited formal academic literature

How to use it

  • Use this when model quality depends on selecting or retaining the right context.
  • Start with strict context budgets and explicit memory retention rules.
  • Measure relevance and retrieval hit-rate before increasing memory breadth.
  • Version-control project context (CLAUDE.md); exclude local overrides (CLAUDE.local.md) from VCS.

Trade-offs

  • Pros: Raises answer quality by keeping context relevant and reducing retrieval noise; enables enterprise-wide policy enforcement; supports automatic context loading without manual intervention.
  • Cons: Requires ongoing tuning of memory policies and indexing quality; context window limits may truncate layers; potential for configuration conflicts.

References

Source