Help us improve
Share bugs, ideas, or general feedback.
From combined-engineering-skills
Builds throwaway prototypes to answer design questions — terminal apps for logic/state exploration or multiple UI variations on a single route.
npx claudepluginhub ahtisamafzal/combined-engineering-skillsHow this skill is triggered — by the user, by Claude, or both
Slash command
/combined-engineering-skills:prototypeThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
A prototype is **throwaway code that answers a question**. The question decides the shape.
Builds throwaway prototypes to answer design questions — terminal apps for logic/state exploration or multiple UI variations on a single route.
Use this skill when the user asks to "vibe code this", "build this with AI", "help me use Cursor/v0/Bolt to build this", "vibe coding from my PRD", "how do I code this with AI", "turn this spec into code", or wants guidance on using AI coding tools (Cursor, GitHub Copilot, v0, Bolt, Lovable, Claude Artifacts) to prototype or build a feature from a product spec. This is a coaching skill — it helps the PM get the most out of AI coding tools, not write code directly.
Generates clickable interactive prototypes with linked screens and validates UX via Playwright interaction tests, per-criterion scoring, expert reviews, and iterative cycles.
Share bugs, ideas, or general feedback.
A prototype is throwaway code that answers a question. The question decides the shape.
Identify which question is being answered — from the user's prompt, the surrounding code, or by asking if the user is around:
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.
pnpm <name>, python <path>, bun <path>, etc. The user must be able to start it without thinking.The answer is the only thing worth keeping from a prototype. Capture it somewhere durable (commit message, ADR, issue, or a NOTES.md next to the prototype) along with the question it was answering. If the user is around, that capture is a quick conversation; if not, leave the placeholder so they (or you, on the next pass) can fill in the verdict before deleting the prototype.