prototypelisted
Install: claude install-skill datit309/supergraph
# /supergraph:prototype
Throwaway code to validate approach. Explore fast, decide, then delete or integrate.
Announce: "🧪 /supergraph:prototype — building throwaway prototype..."
## When to Use
- Between `/supergraph:analyze` and `/supergraph:plan` when approach is uncertain
- Multiple valid UI designs need visual comparison
- Core logic (state machine, algorithm, data model) needs validation before full TDD
- User says "I'm not sure which approach" or "can we try both?"
## Choose Branch
Ask user (or infer from task):
**Logic branch** — validate state, algorithm, or data model
**UI branch** — validate layout, interaction, or multiple designs
---
## Logic Branch
Goal: validate core logic in a minimal terminal program.
Rules:
- Single file (`prototype-<slug>.ts` / `.py` / etc.)
- No database, no HTTP, no external services — in-memory only
- No tests — feedback is the running output
- Single command to run: `npx ts-node prototype-<slug>.ts` or equivalent
- Hard-code sample data
Structure (TypeScript example):
```typescript
// prototype-<slug>.ts — THROWAWAY, do not review
type State = "idle" | "processing" | "done" | "error"
type Event = { type: "start" } | { type: "finish" } | { type: "fail" }
function transition(state: State, event: Event): State {
// ...
}
// Run through sample cases
const cases = [ ... ]
cases.forEach(({ from, event, expected }) => {
const result = transition(from, event)
console.log(result === expected ? "✅" : "❌", { from, event, resu