--- name: token-save description: "Toggle token-save mode on/off. When ON, skills use cheaper models (Haiku/Sonnet) for subagents. When OFF, everything uses Opus. Usage: /token-save, /token-save on, /token-save off, /token-save status, /token-save routing" --- # Token-Save Mode ## What to Do 1. **Read current state** from `~/.claude/token-save-mode` (if file doesn't exist, default is `off`) 2. **Read routing config** from `~/.claude/token-save-routing.json` 3. **Determine action** based on argument: - `/token-save on` → set to `on` - `/token-save off` → set to `off` - `/token-save` (no arg) → toggle current state - `/token-save status` → show current state + routing summary, don't toggle - `/token-save routing` → show full routing table with all skills per tier 4. **Write new state** to `~/.claude/token-save-mode` (skip for `status`/`routing`) 5. **Report** the change to the user ## Output Format After toggling, read `~/.claude/token-save-routing.json` and display: ``` Token-Save Mode: [ON/OFF] [If ON:] Model routing active (from ~/.claude/token-save-routing.json): Opus (max quality) → [list skills from opus tier] Sonnet (balanced) → [list skills from sonnet tier] Haiku (cheapest) → [list skills from haiku tier] Default for unlisted skills: [default_when_on value] Enforcement: CLAUDE.md global rule applies to ALL Agent() calls. [If OFF:] All skills use Opus (default behavior). Maximum quality, maximum cost. ``` ## Routing Config Location `~/.claude/token-save-routing.json` — this is the single source of truth for tier assignments. ## Enforcement Layer The enforcement lives in `~/.claude/CLAUDE.md` under "Token-Save Mode (Agent Model Routing)". It instructs Claude to: 1. Check `~/.claude/token-save-mode` before every Agent call 2. Look up the skill/task in the routing config 3. Apply the tier's model, or `default_when_on` if unlisted Skills do NOT need their own token-save logic — the global CLAUDE.md rule handles it. ## Moving a Skill Between Tiers If the user asks to change a skill's tier (e.g., "move brainstorming to opus"), edit `~/.claude/token-save-routing.json` directly: 1. Remove the skill from its current tier's array 2. Add it to the target tier's array 3. Confirm the change