prototypelisted
Install: claude install-skill vincenzo345/skills
# Prototype
A prototype is **throwaway code that answers a question**. The question decides the shape.
## Pick a branch
Identify which question is being answered — from the user's prompt, the surrounding code, or by asking if the user is around:
- **"Does this logic / state model feel right?"** → [LOGIC.md](LOGIC.md). Build a tiny interactive terminal app that pushes the state machine through cases that are hard to reason about on paper.
- **"What should this look like?"** → [UI.md](UI.md). Generate several radically different variations in a production-excluded preview surface with a local comparison control.
The two branches produce very different artifacts — getting this wrong wastes the whole prototype. If the question is genuinely ambiguous and the user isn't reachable, default to whichever branch better matches the surrounding code (a backend module → logic; a page or component → UI) and state the assumption at the top of the prototype.
## Rules that apply to both
1. **Throwaway and production-excluded from day one.** Use the repository's approved prototype/scratch convention. If none exists, choose a clearly named isolated location that production builds, routes, packages, and deploys do not consume. Do not edit an existing production route or module merely to host a prototype.
2. **One command to run.** Prefer a direct command or existing prototype hook. Do not modify a shared production task runner, manifest, route registry, or deployment configuration unless