Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Generates a compressed project context map to avoid expensive Read/Grep calls. Use at session start or before implementing features in an unfamiliar codebase.
.claude/skills/athola-context-map/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-09 | ✗→✓ | ▲ Improved | -4% | 0% |
| case-05 | ✗→✓ | ▲ Improved | -1% | 0% |
| case-07 | ✗→✓ | ▲ Improved | -6% | 0% |
| case-08 | ✗→✓ | ▲ Improved | -9% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 6% | 0% |
Generate a compressed context map for the current project. The map pre-compiles structural knowledge that AI assistants would otherwise discover through expensive Read/Grep calls, saving thousands of tokens per session.
conserve:clear-context)
conserve:bloat-detector)| Category | Description | |----------|-------------| | Structure | Directory layout with file counts and languages | | Dependencies | Multi-ecosystem: Python, Node, Rust, Go, Java | | Frameworks | Framework detection from dependency analysis | | Entry Points | main.py, index.ts, CLI scripts, etc. | | Import Graph | File-to-file import relationships | | Hot Files | Files imported by 3+ others (high blast radius) | | Routes | FastAPI, Flask, Express, Hono API endpoints | | Env Vars | Environment variable references with defaults | | Middleware | Auth, CORS, rate-limit, logging patterns | | Models/Schemas | SQLAlchemy, Django, Pydantic, Prisma definitions | | Token Savings | Estimated tokens saved vs manual exploration |
bashPYTHONPATH="$(find . -path '*/conserve/scripts' -type d \ -print -quit 2>/dev/null || \ echo 'plugins/conserve/scripts')" \ python3 -m context_scanner .
Prioritize hot files and entry points first.
--format json for structured output--max-tokens N to adjust output size (default: 5000)--output FILE to save to a file--blast FILE to show blast radius for a specific file--section NAME to output a single section(routes, deps, env, hot-files, models, structure, middleware, frameworks)
--wiki-only to generate wiki articles without stdout--no-cache to force a fresh scan--no-wiki to skip wiki article generationThe scanner generates per-topic knowledge articles in .codesight/ for selective context loading:
bashpython3 scanner.py . # Creates .codesight/INDEX.md, auth.md, database.md, etc.
Load only what you need per session instead of the full map:
bashpython3 scanner.py --section routes . # ~200 tokens vs ~5,000 for the full map
# Context Map: myproject
Files: 127
## Structure
src 42 files (Python)
tests 18 files (Python)
docs 5 files (Markdown)
## Dependencies (Python)
Package manager: uv
- fastapi 0.104.0
- pydantic 2.5.0
- sqlalchemy 2.0.0
...12 more
## Frameworks Detected
- FastAPI
- SQLAlchemy
- Pytest
## Routes
GET /users (src/routes/users.py)
POST /users (src/routes/users.py)
GET /users/{id} (src/routes/users.py)
## Hot Files (high blast radius)
- src/models/base.py (12 importers)
- src/utils/auth.py (8 importers)
## Environment Variables
- DATABASE_URL (required)
- SECRET_KEY (has default)
## Token Savings: ~12,600 tokens saved
Routes: ~1,200
Hot files: ~300
Env vars: ~200
File scanning: ~10,200directory structure, detected frameworks, and hot files (imported by 3+ others); output appears in the session before any feature implementation reads begin
estimate (e.g., ~12,600 tokens saved)
--blast FILE is used, blast-radius output names thespecific file and lists its importers by count
are consulted before any other file read in the session
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 9,315 | 4,483 | -52% | 1 | 1 | 0% | 1,333 | 1,350 | +1% | 0 | 0 | — |
case-02 | fail→fail | 8,794 | 5,993 | -32% | 1 | 1 | 0% | 1,241 | 1,459 | +18% | 0 | 0 | — |
case-03 | fail→fail | 11,257 | 5,233 | -54% | 1 | 1 | 0% | 1,786 | 1,356 | -24% | 0 | 0 | — |
case-04 | fail→fail | 9,233 | 3,078 | -67% | 1 | 1 | 0% | 1,434 | 1,655 | +15% | 0 | 0 | — |
case-09 | fail→pass | 9,964 | 1,930 | -81% | 1 | 1 | 0% | 1,518 | 1,454 | -4% | 0 | 0 | — |
case-05 | fail→pass | 10,810 | 3,542 | -67% | 1 | 1 | 0% | 1,727 | 1,715 | -1% | 0 | 0 | — |
case-06 | pass→pass | 7,849 | 5,981 | -24% | 1 | 1 | 0% | 1,309 | 2,094 | +60% | 0 | 0 | — |
case-07 | fail→pass | 10,514 | 3,107 | -70% | 1 | 1 | 0% | 1,749 | 1,646 | -6% | 0 | 0 | — |
case-08 | fail→pass | 11,055 | 2,919 | -74% | 1 | 1 | 0% | 1,790 | 1,626 | -9% | 0 | 0 | — |
case-10 | fail→pass | 8,665 | 1,831 | -79% | 1 | 1 | 0% | 1,374 | 1,454 | +6% | 0 | 0 | — |
case-11 | fail→pass | 9,624 | 2,299 | -76% | 1 | 1 | 0% | 1,416 | 1,507 | +6% | 0 | 0 | — |
case-12 | pass→pass | 9,325 | 1,652 | -82% | 1 | 1 | 0% | 1,283 | 1,394 | +9% | 0 | 0 | — |
case-13 | fail→pass | 7,434 | 2,393 | -68% | 1 | 1 | 0% | 1,121 | 1,516 | +35% | 0 | 0 | — |
case-14 | pass→pass | 11,095 | 3,533 | -68% | 1 | 1 | 0% | 1,869 | 1,664 | -11% | 0 | 0 | — |
case-15 | pass→pass | 10,012 | 2,021 | -80% | 1 | 1 | 0% | 1,809 | 1,446 | -20% | 0 | 0 | — |
case-16 | pass→pass | 6,331 | 1,885 | -70% | 1 | 1 | 0% | 1,050 | 1,428 | +36% | 0 | 0 | — |
case-17 | fail→pass | 11,520 | 2,889 | -75% | 1 | 1 | 0% | 1,872 | 1,577 | -16% | 0 | 0 | — |
case-18 | pass→pass | 4,467 | 1,667 | -63% | 1 | 1 | 0% | 710 | 1,364 | +92% | 0 | 0 | — |
case-19 | fail→fail | 11,859 | 1,685 | -86% | 1 | 1 | 0% | 1,902 | 1,362 | -28% | 0 | 0 | — |
case-20 | fail→pass | 9,156 | 1,810 | -80% | 1 | 1 | 0% | 1,471 | 1,363 | -7% | 0 | 0 | — |
case-21 | fail→pass | 11,570 | 1,810 | -84% | 1 | 1 | 0% | 1,744 | 1,446 | -17% | 0 | 0 | — |
case-22 | pass→fail | 8,769 | 1,852 | -79% | 1 | 1 | 0% | 1,326 | 1,429 | +8% | 0 | 0 | — |
case-23 | fail→pass | 11,426 | 2,208 | -81% | 1 | 1 | 0% | 1,852 | 1,468 | -21% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted, and 20 counted toward the lift figure. The other 3 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +43 percentage points is the difference between those two pass rates over the 20 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.