mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-03-30 13:43:26 +08:00
134 lines
6.0 KiB
Markdown
134 lines
6.0 KiB
Markdown
---
|
||
name: token-budget-advisor
|
||
description: >-
|
||
Offers the user an informed choice about how much response depth to
|
||
consume before answering. Use this skill when the user explicitly
|
||
wants to control response length, depth, or token budget.
|
||
TRIGGER when: "token budget", "token count", "token usage", "token limit",
|
||
"response length", "answer depth", "short version", "brief answer",
|
||
"detailed answer", "exhaustive answer", "respuesta corta vs larga",
|
||
"cuántos tokens", "ahorrar tokens", "responde al 50%", "dame la versión
|
||
corta", "quiero controlar cuánto usas", or clear variants where the
|
||
user is explicitly asking to control answer size or depth.
|
||
DO NOT TRIGGER when: user has already specified a level in the current
|
||
session (maintain it), the request is clearly a one-word answer, or
|
||
"token" refers to auth/session/payment tokens rather than response size.
|
||
origin: community
|
||
---
|
||
|
||
# Token Budget Advisor (TBA)
|
||
|
||
Intercept the response flow to offer the user a choice about response depth **before** Claude answers.
|
||
|
||
## When to Use
|
||
|
||
- User wants to control how long or detailed a response is
|
||
- User mentions tokens, budget, depth, or response length
|
||
- User says "short version", "tldr", "brief", "al 25%", "exhaustive", etc.
|
||
- Any time the user wants to choose depth/detail level upfront
|
||
|
||
**Do not trigger** when: user already set a level this session (maintain it silently), or the answer is trivially one line.
|
||
|
||
## How It Works
|
||
|
||
### Step 1 — Estimate input tokens
|
||
|
||
Use the repository's canonical context-budget heuristics to estimate the prompt's token count mentally.
|
||
|
||
Use the same calibration guidance as [context-budget](../context-budget/SKILL.md):
|
||
|
||
- prose: `words × 1.3`
|
||
- code-heavy or mixed/code blocks: `chars / 4`
|
||
|
||
For mixed content, use the dominant content type and keep the estimate heuristic.
|
||
|
||
### Step 2 — Estimate response size by complexity
|
||
|
||
Classify the prompt, then apply the multiplier range to get the full response window:
|
||
|
||
| Complexity | Multiplier range | Example prompts |
|
||
|--------------|------------------|------------------------------------------------------|
|
||
| Simple | 3× – 8× | "What is X?", yes/no, single fact |
|
||
| Medium | 8× – 20× | "How does X work?" |
|
||
| Medium-High | 10× – 25× | Code request with context |
|
||
| Complex | 15× – 40× | Multi-part analysis, comparisons, architecture |
|
||
| Creative | 10× – 30× | Stories, essays, narrative writing |
|
||
|
||
Response window = `input_tokens × mult_min` to `input_tokens × mult_max` (but don’t exceed your model’s configured output-token limit).
|
||
|
||
### Step 3 — Present depth options
|
||
|
||
Present this block **before** answering, using the actual estimated numbers:
|
||
|
||
```
|
||
Analyzing your prompt...
|
||
|
||
Input: ~[N] tokens | Type: [type] | Complexity: [level] | Language: [lang]
|
||
|
||
Choose your depth level:
|
||
|
||
[1] Essential (25%) -> ~[tokens] Direct answer only, no preamble
|
||
[2] Moderate (50%) -> ~[tokens] Answer + context + 1 example
|
||
[3] Detailed (75%) -> ~[tokens] Full answer with alternatives
|
||
[4] Exhaustive (100%) -> ~[tokens] Everything, no limits
|
||
|
||
Which level? (1-4 or say "25% depth", "50% depth", "75% depth", "100% depth")
|
||
|
||
Precision: heuristic estimate ~85-90% accuracy (±15%).
|
||
```
|
||
|
||
Level token estimates (within the response window):
|
||
- 25% → `min + (max - min) × 0.25`
|
||
- 50% → `min + (max - min) × 0.50`
|
||
- 75% → `min + (max - min) × 0.75`
|
||
- 100% → `max`
|
||
|
||
### Step 4 — Respond at the chosen level
|
||
|
||
| Level | Target length | Include | Omit |
|
||
|------------------|---------------------|-----------------------------------------------------|---------------------------------------------------|
|
||
| 25% Essential | 2-4 sentences max | Direct answer, key conclusion | Context, examples, nuance, alternatives |
|
||
| 50% Moderate | 1-3 paragraphs | Answer + necessary context + 1 example | Deep analysis, edge cases, references |
|
||
| 75% Detailed | Structured response | Multiple examples, pros/cons, alternatives | Extreme edge cases, exhaustive references |
|
||
| 100% Exhaustive | No restriction | Everything — full analysis, all code, all perspectives | Nothing |
|
||
|
||
## Shortcuts — skip the question
|
||
|
||
If the user already signals a level, respond at that level immediately without asking:
|
||
|
||
| What they say | Level |
|
||
|----------------------------------------------------|-------|
|
||
| "1" / "25% depth" / "short version" / "brief answer" / "tldr" | 25% |
|
||
| "2" / "50% depth" / "moderate depth" / "balanced answer" | 50% |
|
||
| "3" / "75% depth" / "detailed answer" / "thorough answer" | 75% |
|
||
| "4" / "100% depth" / "exhaustive answer" / "full deep dive" | 100% |
|
||
|
||
If the user set a level earlier in the session, **maintain it silently** for subsequent responses unless they change it.
|
||
|
||
## Precision note
|
||
|
||
This skill uses heuristic estimation — no real tokenizer. Accuracy ~85-90%, variance ±15%. Always show the disclaimer.
|
||
|
||
## Examples
|
||
|
||
### Triggers
|
||
|
||
- "Give me the short version first."
|
||
- "How many tokens will your answer use?"
|
||
- "Respond at 50% depth."
|
||
- "I want the exhaustive answer, not the summary."
|
||
- "Dame la version corta y luego la detallada."
|
||
|
||
### Does Not Trigger
|
||
|
||
- "What is a JWT token?"
|
||
- "The checkout flow uses a payment token."
|
||
- "Is this normal?"
|
||
- "Complete the refactor."
|
||
- Follow-up questions after the user already chose a depth for the session
|
||
|
||
## Source
|
||
|
||
Standalone skill from [TBA — Token Budget Advisor for Claude Code](https://github.com/Xabilimon1/Token-Budget-Advisor-Claude-Code-).
|
||
Original project also ships a Python estimator script, but this repository keeps the skill self-contained and heuristic-only.
|