Context engineering
Skill itallstartedwithaidea/agent-skills/skills/claude-mythos/context-engineering
Context Engineering is the discipline of maximizing agent output quality while minimizing token expenditure.From its SKILL.md
npx -y skills add itallstartedwithaidea/agent-skills --skill context-engineeringAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
8.5 KB, ~1.9k tokens by cl100k_base, as published. Nobody here has run it
Context Engineering
Part of Agent Skills™ by googleadsagent.ai™
Description
Context Engineering is the discipline of maximizing agent output quality while minimizing token expenditure. In a world where every token carries cost and latency implications, the ability to surgically curate what enters an agent's context window separates production-grade systems from expensive toys. This skill codifies the techniques pioneered across the googleadsagent.ai™ platform, where Buddy™ routinely operates within 200k-token windows while maintaining domain-expert-level accuracy.
The core insight is that context is not merely "what you send to the model" — it is working memory, and it must be engineered with the same rigor as any other system resource. Information density optimization, structured loading sequences, and progressive disclosure patterns ensure the agent receives precisely the right information at precisely the right moment. Poorly engineered context leads to hallucination, instruction drift, and ballooning costs.
This skill teaches agents to treat context as a finite, managed resource: measure it, compress it, prioritize it, and reclaim it. The techniques here apply universally across Claude Code, Cursor, Codex, and Gemini harnesses.
Use When
- Agent responses degrade in quality as conversations grow longer
- Token costs are exceeding budget thresholds for production workloads
- The agent needs to reason over large codebases without losing focus
- You need to inject domain knowledge without consuming the entire context window
- Multi-step workflows require carrying forward only essential state between steps
- The agent is hallucinating due to context window saturation or dilution
How It Works
graph TD
A[Raw Context Sources] --> B[Relevance Scoring]
B --> C{Score > Threshold?}
C -->|Yes| D[Compression Engine]
C -->|No| E[Context Archive]
D --> F[Priority Queue]
F --> G[Token Budget Allocator]
G --> H[Context Window Assembly]
H --> I[Agent Execution]
I --> J[Context Reclamation]
J --> K{Session Active?}
K -->|Yes| B
K -->|No| L[Session Summary → Memory]
The context lifecycle begins with raw sources — files, previous messages, tool outputs, knowledge bases — flowing through a relevance scoring pass. Items scoring below the threshold are archived rather than discarded, available for retrieval if needed. High-relevance items enter a compression engine that reduces token footprint while preserving semantic content. A priority queue orders compressed items by recency, importance, and task relevance. The token budget allocator enforces hard limits, ensuring the assembled context window never exceeds the target budget. After agent execution, context reclamation identifies items that are no longer needed for subsequent turns.
Implementation
Token Budget Enforcement:
class ContextBudget {
constructor(maxTokens = 180000) {
this.maxTokens = maxTokens;
this.reservedForOutput = 20000;
this.reservedForSystem = 5000;
this.available = maxTokens - this.reservedForOutput - this.reservedForSystem;
this.allocations = new Map();
}
allocate(category, tokens) {
const currentUsage = this.currentUsage();
if (currentUsage + tokens > this.available) {
return this.evictAndAllocate(category, tokens);
}
this.allocations.set(category, (this.allocations.get(category) || 0) + tokens);
return true;
}
evictAndAllocate(category, needed) {
const sorted = [...this.allocations.entries()]
.sort((a, b) => a[1] - b[1]);
for (const [cat, tokens] of sorted) {
if (cat === category) continue;
this.allocations.delete(cat);
if (this.available - this.currentUsage() >= needed) break;
}
return this.allocate(category, needed);
}
currentUsage() {
return [...this.allocations.values()].reduce((sum, t) => sum + t, 0);
}
}
Progressive Disclosure Pattern:
function buildProgressiveContext(task, depth = 0) {
const layers = [
{ level: 0, content: getTaskSummary(task), tokens: 200 },
{ level: 1, content: getRelevantFiles(task), tokens: 2000 },
{ level: 2, content: getFileContents(task), tokens: 10000 },
{ level: 3, content: getFullDependencyTree(task), tokens: 40000 },
];
return layers
.filter(layer => layer.level <= depth)
.map(layer => layer.content);
}
Context Compression via Summarization:
def compress_context(messages, budget_tokens):
"""Compress conversation history to fit within token budget."""
total = count_tokens(messages)
if total <= budget_tokens:
return messages
system_msgs = [m for m in messages if m["role"] == "system"]
recent = messages[-4:]
middle = messages[len(system_msgs):-4]
summary = summarize_messages(middle)
compressed = system_msgs + [{"role": "system", "content": f"Prior conversation summary: {summary}"}] + recent
if count_tokens(compressed) > budget_tokens:
return system_msgs + recent[-2:]
return compressed
Best Practices
- Measure before optimizing — instrument token usage per category (system prompt, conversation history, tool outputs, knowledge) before applying compression techniques.
- Reserve output headroom — always allocate 15-20% of the context window for the model's response; running the window to capacity guarantees truncation.
- Prefer structured over narrative — JSON, YAML, and tabular formats carry higher information density per token than prose descriptions.
- Apply progressive disclosure — start with summaries and load detail on demand; most agent turns need only a fraction of available context.
- Implement context reclamation — after each tool call, evaluate whether the full tool output is still needed or can be replaced with a summary.
- Separate hot and cold context — keep frequently referenced items (system instructions, current task) in every turn; archive infrequently accessed items behind retrieval.
- Version your context schemas — as prompts and knowledge bases evolve, track which context configuration produced which quality outcomes.
- Test at the margins — validate agent behavior at 50%, 80%, and 95% context utilization to understand degradation curves.
Platform Compatibility
| Feature | Claude Code | Cursor | Codex | Gemini CLI |
|---|---|---|---|---|
| Context budget enforcement | ✅ Full | ✅ Full | ✅ Full | ✅ Full |
| Progressive disclosure | ✅ Native | ✅ Via skills | ✅ Via prompts | ✅ Via prompts |
| Token counting | ✅ Anthropic API | ✅ Via extensions | ✅ tiktoken | ✅ Vertex API |
| Context compression | ✅ Full | ✅ Full | ✅ Full | ✅ Full |
| Session summarization | ✅ Hooks | ✅ Rules | ✅ Instructions | ✅ System prompts |
Mythos Preview Reference
In Mythos Preview evaluation, Anthropic ranks each file 1–5 by how likely it is to contain interesting, vulnerability-relevant logic (e.g., constants-only files vs. network parsing or auth). They then process the highest-ranked files first instead of burning budget on every path equally.
Adopt the same idea for any large corpus: score likely signal density up front, sort descending, and load or assign work in that order so the context window and agent time go to the most promising sources first. Source: Mythos Preview.
Related Skills
- Cognitive Scaffolding - Attention-aware content placement that maximizes the value of each token in the context budget
- Prompt Architecture - Layered prompt design that integrates with progressive disclosure and token budget allocation
- Anthropic Tool Mastery - Tool result management that requires context-aware caching and compression strategies
Keywords
context-engineering, token-optimization, context-window, information-density, progressive-disclosure, context-compression, working-memory, token-budget, context-lifecycle, agent-skills
© 2026 googleadsagent.ai™ | Agent Skills™ | MIT License
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.
Gives 0 of the 12 instructions most context ai engineering skills give in ~1.9k tokens
Counted across 1,328 of the 2,349 authors here whose files we hold, read 2026-09-06
- Dispatch a fresh subagent for each taskin 76 of 1328, across 59 files
- Perform spec compliance review before code quality reviewin 44 of 1328, across 34 files
- Dispatch a final code reviewer after all tasksin 38 of 1328, across 26 files
- Answer subagent questions before allowing implementationin 36 of 1328, across 26 files
- Use the least powerful model capable of the taskin 33 of 1328, across 26 files
- Create a TodoWrite list for all tasksin 32 of 1328, across 22 files
- Perform a task review after each implementationin 31 of 1328, across 24 files
- Extract all tasks and context from the planin 29 of 1328, across 20 files
- Provide full task text to subagentsin 28 of 1328, across 20 files
- Use git worktrees for isolated workspacesin 25 of 1328, across 20 files
- Specify the model explicitly when dispatching a subagentin 23 of 1328, across 18 files
- Execute all tasks from the plan without stoppingin 21 of 1328, across 16 files
Said here and by no other author read
- Reserve twenty percent of context for model output
- Use structured formats like JSON or YAML
- Load summaries first and details on demand
- Evaluate tool output necessity after each call
- Keep frequently referenced items in every turn
- Archive infrequently accessed items behind retrieval
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.