Claude-skill-registry context-diet

Optimize Claude Code context window usage. Identify what to keep in context vs fetch on-demand. Use when context is bloated, responses are slow, hitting token limits, or want to slim down context.

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/context-diet" ~/.claude/skills/majiayu000-claude-skill-registry-context-diet && rm -rf "$T"
manifest: skills/data/context-diet/SKILL.md
source content

Context Diet

Optimizes context window usage for efficient Claude Code sessions.

When to Use

  • "Too much context"
  • "Slim down context"
  • "Hitting token limits"
  • "Session feels slow"
  • "What should I keep in context?"

Context Budget

PriorityKeep in ContextFetch on Demand
AlwaysCLAUDE.md (~500 tokens)Full file contents
Task-specificCurrent fileRelated files
ReferenceFunction signaturesImplementation details

This Repo's Essential Files

Always Relevant (Keep Short Reference)

FileWhat to KnowSize
CLAUDE.md
Commands, rules, structure~500 tokens
Active file being editedFull contentVaries

Fetch When Needed

TaskFiles to Fetch
API work
apps/web/app/api/_lib/
, specific route
Database
packages/db/src/schema.ts
Auth
packages/auth/src/index.ts
TestsSpecific test file only
MobileSpecific screen/component

Skip (Already Known)

  • Standard TypeScript patterns
  • React/Next.js conventions
  • Node.js fundamentals
  • Common library usage

Procedure

Step 1: Assess Current Task

What's the user working on?

  • Single file edit → Keep only that file
  • Cross-package feature → Keep interface files, fetch impl
  • Debugging → Keep error context, fetch related

Step 2: Identify Essential Context

For the current task, what's truly needed?

## Essential for This Task

1. {file1} - {why needed}
2. {file2} - {why needed}

## Can Fetch If Needed

- {file3} - Only if {condition}
- {file4} - Only if {condition}

## Skip

- {file5} - Already known / not relevant

Step 3: Context Shortlist

Generate a minimal file list:

## Context Shortlist

### Must Have (read fully)

- `{path}` - Active editing

### Reference Only (read signatures)

- `{path}` - Import types
- `{path}` - Check pattern

### Fetch If Blocked

- `{path}` - Implementation details

Step 4: Recommend Actions

## Recommendations

### To Reduce Context Now

1. {action} - saves ~{tokens}
2. {action} - saves ~{tokens}

### For Future Sessions

- Start with: "I'm working on {task}. Files: {shortlist}"
- Use subagents for exploration
- Split large tasks into focused sessions

Context Patterns

Bad (Context Bloat)

"Read the entire codebase"
"Show me all the packages"
"Give me everything about auth"

Good (Focused)

"I'm editing apps/web/app/api/users/route.ts"
"Show me the getCurrentUser function signature"
"What tables are in the schema?"

Token Estimates

Item~Tokens
Average TypeScript file500-1500
Large component1000-2000
Schema file800-1200
Full CLAUDE.md500
Test file400-800

Guardrails

  • DO NOT recommend skipping CLAUDE.md
  • Always include the file being actively edited
  • Prefer interfaces over implementations
  • Suggest subagents for broad exploration
  • Be specific about what "fetch if needed" means