Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Classify a task or feature as quick, standard, or thorough so the rest of the pipeline (budget sizing, model routing, review depth) can right-size itself. Used by /ck:sketch to default the kit's complexity, by /ck:map to assign task depth, and by /ck:make for per-task budgets. Also invoked by the ck:complexity agent with the haiku model. Trigger phrases: "how complex", "what depth", "pick a depth", "classify this task".
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 29% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 20% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 6% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 59% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 3% | 0% |
A deterministic scoring rubric. Five axes, 0–4 each, summed to 0–20.
| Axis | 0 | 1 | 2 | 3 | 4 | |-----------------------|------------------|-------------------|-------------------|----------------------|---------------------| | Files touched | 0–2 | 3–5 | 6–10 | 11–20 | 20+ | | Type | chore / format | refactor | feature | cross-cutting | architectural | | Judgment required | mechanical | low-ambiguity | medium | high | critical (sec/prod) | | Cross-component | single module | two modules | three modules | many within one repo | multi-repo | | Novelty | known pattern | rare pattern | novel | research needed | unknown unknowns |
Total score maps to:
| Score | Depth | |--------|------------| | 0 – 6 | quick | | 7 – 13 | standard | | 14+ | thorough |
Upgrade one step regardless of score when any of these are true:
Downgrade one step only when all of these are true:
| Depth | Token budget | Model tier | Review | Tests | |----------|--------------|------------|-----------|-----------------------------| | quick | 8 000 | haiku | optional | smoke | | standard | 20 000 | sonnet | required | unit + integration | | thorough | 45 000 | sonnet/opus| mandatory | unit + integration + E2E |
These defaults are recorded in .cavekit/config.json under task_budgets and consumed by the cavekit-router.cjs model router.
The ck:complexity subagent (haiku) receives a task description and returns a JSON blob:
json{ "score": 11, "depth": "standard", "axes": { "files": 2, "type": 2, "judgment": 2, "cross_component": 2, "novelty": 3 }, "overrides_applied": [] }
/ck:map calls this agent per task to set depth in the task registry. If the agent produces a score in the "thorough" band with a novelty of 4 and a security override, it may return needs_research: true, which /ck:map must translate into an upstream ck:researcher task dependency before the work itself.
/ck:sketch — runs complexity scoring on the whole domain to set the kit'scomplexity: frontmatter.
/ck:map — runs it per task to assign depth./ck:make — reads depth to size the task budget and pick the reviewintensity.
ck:complexity agent — pure-haiku worker; does nothing else.down.
tokens exploring. Right-size, then raise only when verification fails.
file. Security overrides exist for exactly this reason.
Other measured skills in the registry, with their headline benchmark lift.