ctxaudit
Audit the invisible context tax from agent skills, rules, and instruction files.
Every AI coding agent silently loads skills, rules, and instruction files into your context window. Most of this context is stale, duplicated, or irrelevant to what you're actually doing -- and it actively degrades agent performance. More context doesn't mean better results. Irrelevant instructions compete for attention, contradict each other, and push useful conversation history out of the window faster.
ctxaudit scans everything that gets loaded and shows you exactly what's eating your context -- so you can cut the noise.
Install & Run
uvx ctxaudit
Or install permanently:
uv tool install ctxaudit
What it scans
| Source | Platforms |
|---|---|
Skills (SKILL.md) |
Claude Code, Cursor, Codex, Cline, Amp, Windsurf, Gemini CLI, Copilot, Roo Code, and more |
Rules (.mdc, .md) |
Cursor, Claude Code, Roo Code, Windsurf, Cline |
| Instruction files | CLAUDE.md, AGENTS.md, GEMINI.md, .cursorrules, .goosehints, etc. |
| Plugins | Claude Code plugins (skills, agents, commands) |
Both user-level (~/.claude/, ~/.cursor/, etc.) and project-level (.cursor/rules/, AGENTS.md, etc.) paths are scanned.
Example output
CONTEXT AUDIT (project: ~/work/my-project)
──────────────────────────────────────────────────────
User-Level
Claude Code (2 skills, 53 plugin items)
~/.claude/skills 95 startup 4,170 full
15 plugin skills 1,087 startup 41,730 full
19 plugin agents 1,515 startup 22,781 full
19 plugin commands 242 startup 16,370 full
Cursor (12 skills)
~/.cursor/skills, ~/.cursor/skills-cursor 244 startup 10,653 full
──────────────────────────────────────────────────────
Project-Level
Cursor (48 files)
.cursor/rules/always/project-index.mdc 1,353 always
.cursor/rules/features/auth.mdc 11 description (5,738 full)
...
──────────────────────────────────────────────────────
Scannable context: ~18,244 tokens loaded every session
System overhead: ~15,000-30,000 tokens (agent system prompt, tools, built-in instructions)
Effective total: ~33,244-48,244 tokens before you type anything
Context used: 17-24% of 200,000 token window
What the columns mean
- startup — tokens loaded into every session (skill metadata, always-on rules)
- full — total tokens if the skill/rule is fully activated
- always — loaded every session unconditionally
- description — only the description is loaded at startup; the agent decides whether to load the full content
- on-demand — not loaded at startup; only loaded when triggered by file globs or explicit invocation
Options
ctxaudit # Scan user-level + current project
ctxaudit --user-only # Scan user-level only (no project context)
Loading behavior by file type
| File type | Startup cost | When fully loaded |
|---|---|---|
Skill (SKILL.md) |
Name + description | Agent decides to invoke it |
Cursor rule (alwaysApply: true) |
Full content | Always |
Cursor rule (with description) |
Description only | Agent decides it's relevant |
Cursor rule (with globs) |
Nothing | Matching file is open |
Claude Code rule (no paths) |
Full content | Always |
Claude Code rule (with paths) |
Nothing | Matching file is open |
Instruction file (CLAUDE.md, etc.) |
Full content | Always |
License
MIT
Metadata
Release files for ctxaudit 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ctxaudit-0.1.0.tar.gz | 38.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ctxaudit-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 51.8 kB
Release files / ctxaudit-0.1.0.tar.gz
| Download URL | ctxaudit-0.1.0.tar.gz |
|---|---|
| Size | 38.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d713bffc9e0a8afb603e411f4e70d49e88247896c963c4dd83c21931c57fc131
|
|
BLAKE2b-256 checksum How to use checksums |
4fe7f72ebb55783d8b92496562d5a4647b2ec68475cf8edaa8c2496b9be990e4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.9
|
Release files / ctxaudit-0.1.0-py3-none-any.whl
| Download URL | ctxaudit-0.1.0-py3-none-any.whl |
|---|---|
| Size | 12.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2dd533aaff881604f22a50c7059fedf8097f92addaf232d5528ffbfaf7712b32
|
|
BLAKE2b-256 checksum How to use checksums |
8776c969e87d8161e0ac3178b7da9b0aa0b41fe2ec74d4d05e04a3e66becc1d3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.9
|