Claude-context-lint tool audits token overhead in Claude Code projects

What it does
claude-context-lint analyzes Claude Code projects to reveal hidden context token consumption that occurs before any user input. Every Claude Code conversation starts with overhead from CLAUDE.md files, skill descriptions, MCP tool schemas, and the base system prompt, all of which consume context tokens immediately.
Key features and findings
The tool scans your CLAUDE.md files, skills, MCP configurations, and system prompt. It shows per-turn token cost versus on-invocation cost, accounting for the fact that skills don't load fully every turn. It detects near-duplicate skills that waste tokens and flags MCP servers that could use ToolSearch to defer tool loading.
According to the developer's test, 18% of a 200K context window was consumed before the first turn. The biggest contributor was MCP servers loading all tool schemas upfront instead of deferring them.
Example output
Claude Code Context Audit ───────────────────────────── CLAUDE.md 1,240 tokens Skills (32 loaded) 4,800 tokens MEDIUM ⚠ 3 near-duplicate skills detected MCP Servers (3) 14,100 tokens CRITICAL postgres 6,600 tokens (22 tools) [always loaded] System Prompt 8,500 tokens (base overhead) ───────────────────────────── TOTAL OVERHEAD: 28,640 tokens Used Before Input: 14.3%
Specific recommendations
The tool generates concrete recommendations with token savings estimates. In the example output, it suggests:
- Enable ToolSearch for "postgres" MCP → −6,270 tokens
- Shorten 12 verbose skill descriptions → −1,840 tokens
- Potential savings: 8,530 tokens (29.8% reduction)
Installation and usage
Run with zero installation using: npx claude-context-lint
Run it in any project with a .claude/ directory. The scan takes about 2 seconds.
Technical details
The tool is available on npm at https://www.npmjs.com/package/claude-context-lint and on GitHub at https://github.com/skibidiskib/claude-context-lint. It was built entirely by Claude Code and is MIT licensed.
📖 Read the full source: r/ClaudeAI
👀 See Also

Council: A Structured Dialogue Framework for Claude
Council — A Crucible is a structured dialogue framework that runs inside a single Claude context window, using persona framing to produce four distinct modes of engagement: rigorous interrogation, generative action, lived experience, and unformed intuition.

Local RAG Tool Built with Nemotron Nano 9B v2 and vLLM Tool Calling
A developer built a local-first RAG research tool that runs entirely on a single GPU using Nemotron Nano 9B v2 Japanese on vLLM with custom parser plugins for tool calling. The system features a two-step extract-execute flow with bilingual keyword extraction and parallel FTS5/DuckDuckGo search.

FixAI: Browser Game Teaches Consumer Law by Fighting Corporate AI Bots
FixAI is a browser game with 36 levels where players argue against corporate or government AI systems using real consumer laws. Built with Vanilla JS, Node/Express, and Claude Haiku, it features a resistance scoring system and educational explanations of legal arguments.
MTP + Unified Memory Boosts llama.cpp Inference 30% on RTX 5090
Enabling MTP speculation alongside GGML_CUDA_ENABLE_UNIFIED_MEMORY=1 pushes Qwen3.6-27B Q8_0 from 49 to 64 tok/sec on an RTX 5090 with 128GB system RAM.