02-core-combine-serena-rtk-jdoc-jcode-for-minimal-token-usagelisted
Install: claude install-skill markkennethbadilla/public-agent-provisioning
# Combine RTK + jcodemunch + jdocmunch + Serena for Minimal Tokens
The win is routing — each tool has a lane; using the wrong one wastes tokens or misses capability.
## Lane Table
| Layer | Tool | Lane |
|---|---|---|
| RTK | `rtk` prefix | Every terminal command |
| Code | `jcodemunch` | Find / read / analyse source code |
| Docs | `jdocmunch` | Find / read documentation and prose |
| Edits | `serena` | Create or edit files; resolve cross-refs |
## The Nine Rules
1. **RTK WRAPS EVERYTHING** — prefix every terminal command with `rtk`; drop only when it mangles output you genuinely need, then re-add it. Per-command exception, never global.
2. **CODE -> JCODEMUNCH** — use `search_symbols`, `get_symbol_source`, `get_file_outline`, `get_repo_map` instead of grepping or reading whole files.
3. **DOCS -> JDOCMUNCH** — use `search_sections`, `get_section` instead of reading whole docs.
4. **EDITS -> SERENA** — read + edit through one surface (`read_file` then `replace_content` / `replace_symbol_body` / `insert_after_symbol`). Native Read is banned (deny-hook); native Edit needs a prior read via a non-gated surface. jcodemunch/jdocmunch *find* code — they do not edit it.
5. **AVOID THE SINGLE-TOOL TRAP** — do not route everything through jcodemunch. jdocmunch owns docs; Serena owns edits. Wrong-lane use wastes tokens.
6. **OPENING MOVE ON EVERY CODE TASK** — call `plan_turn { "repo": "<path>", "query": "<task>", "model": "<your-model-id>" }` first. Use the id your runner prints.