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.
Installs into .claude/skills of the current project.
Are you the author of Parking?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/cyrillemat-parking)
---
name: parking
description: "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."
---
# can_i_park — skill (tempered by temper-skills)
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.
## How to answer
1. Extract these structured features from the request:
- `zone_type`
- `day`
- `hour`
- `is_public_holiday`
- `has_resident_permit`
2. Call the decision tree and treat its result as authoritative (bundled at `scripts/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})
```
3. Relay `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.
## Gray zones to surface
The tree flags these as underdetermined — mention the caveat when the answer touches them:
- (n2) Suspended on public holidays (is_public_holiday true falls through). Window is the clock hours 11 and 12 (>=11 and <13).
- (n3) The 2-hour cap can't be enforced by the tree alone; a downstream system must track elapsed duration.
---
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.