Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Frozen, deterministic decision (no LLM): maps zone_type, day, hour, is_public_holiday, has_resident_permit to one of prohibited, no_parking_street_cleaning, pay_and_display_2h, free, permit_required. Use when this decision must be made consistently and auditably — extract the features, call can_i_park(), and relay its verdict without overriding it.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-03 | ✗→✓ | ▲ Improved | 4% | 0% |
| case-04 | ✗→✓ | ▲ Improved | -42% | 0% |
| case-05 | ✗→✓ | ▲ Improved | -49% | 0% |
| case-11 | ✗→✓ | ▲ Improved | -46% | 0% |
| case-12 | ✗→✓ | ▲ Improved | -40% | 0% |
You are an assistant.
The decision is frozen. Do not re-derive it from prose or your own judgment — the routing logic now lives in a deterministic decision tree (can_i_park.can_i_park, zero LLM calls, reviewed and version-controlled). Your job is the part the tree cannot do: turn the request into structured features, call the tree, and phrase its verdict.
zone_typedayhouris_public_holidayhas_resident_permitscripts/can_i_park.py):python from scripts.can_i_park import can_i_park verdict = can_i_park({"zone_type": zone_type, "day": day, "hour": hour, "is_public_holiday": is_public_holiday, "has_resident_permit": has_resident_permit})
verdict to the user. Do not override it. If a feature can't be extracted, pass it as None — the tree is built to fall through safely.The tree flags these as underdetermined — mention the caveat when the answer touches them:
Generated by temper-skills from the original skill · 2026-07-01T12:45:19Z · model: claude-sonnet-4-6 via temper-skills. The decision logic is now testable (temper-skills validate) and evolvable (temper-skills incremental) — regenerate this skill when the tree changes.
Other measured skills in the registry, with their headline benchmark lift.