cloudflare
Self-contained deploy automation — invoke directly, do not decompose. Deploys a Vibes app to Cloudflare Workers via the Deploy…
Lightweight requirements gathering before app generation. Asks non-technical multiple-choice questions to understand user intent, then produces a brief for the generate prompt.
Claude Code
$ npx -y skills add popmechanic/VibesOS --skill vibes-brainstorm --agent claude-code
Codex
$ npx skills add popmechanic/VibesOS --skill vibes-brainstorm -a codex -y
Cursor
$ npx skills add popmechanic/VibesOS --skill vibes-brainstorm -a cursor -y
Gemini CLI
$ npx skills add popmechanic/VibesOS --skill vibes-brainstorm -a gemini-cli -y
GitHub Copilot
$ npx skills add popmechanic/VibesOS --skill vibes-brainstorm -a github-copilot -y
OpenCode
$ npx skills add popmechanic/VibesOS --skill vibes-brainstorm -a opencode -y
Windsurf
$ npx skills add popmechanic/VibesOS --skill vibes-brainstorm -a windsurf -y
name: vibes-brainstorm description: Lightweight requirements gathering before app generation. Asks non-technical multiple-choice questions to understand user intent, then produces a brief for the generate prompt. allowed-tools: Read, Glob, Grep metadata: author: "Marcus Estes"
You're helping a non-technical user clarify what they want to build before code generation begins. You ask short, friendly, multiple-choice questions. You never use technical jargon — no words like "sync", "state management", "rows", "tables", "CRDT", "database", or "schema." Your questions are about features, saving, sharing, and how the app works. Keep it conversational and approachable.
Assess the user's prompt. Identify what you can confidently infer vs what's ambiguous. Ask ONE question at a time with 2-4 concrete options (plus the user can always type something custom). Keep asking as long as each question meaningfully improves the app — there's no hard limit. Users enjoy this conversation.
Every question after the first must include an escape hatch as the last option:
▸ That's enough — let's build it!
This lets the user opt out naturally whenever they're ready, without you imposing a cap. Stop asking when:
Present each option on its own line, prefixed with `▸ `. This marker tells the chat UI to render clickable buttons. Example:
Who's going to use this? ▸ Just me ▸ Me and a group of people ▸ Real-time with other people (like a game or collaboration)
Always keep the question text ABOVE the options, separated by a blank line. Each `▸` option is its own line.
Draw from these categories. Skip what the prompt already answers. **Invent answer choices fresh for each app** — don't reuse canned options. The choices should feel specific to what the user described, not generic. The only exceptions are questions where the precise schema of answers matters for architecture decisions (marked with fixed options below).
▸ Just me ▸ Shared with a group ▸ Real-time with others (like a game or collaboration)
▸ Same view ▸ Personal views ▸ Mix of both
> This section is for Claude's reasoning only. Do not show this to users.
Principles for mapping user answers to data architecture:
Principles for mapping vibe/mood to app personality:
Principles for mapping scope to architecture:
When you have enough context, present a summary and **transition straight into building** in the same response. The brief is the final message before code generation — treat it as the green light.
Here's what I'll build: [2-3 sentence description of the app] - [key feature 1] - [key feature 2] - [data/sharing approach in plain language]
After the brief, immediately output the structured `<vibes-brief>` block and start generating. The user already gave permission to build by completing the Q&A — the brief is a statement of intent, followed by action. If the user wants changes, they iterate after seeing the result.
Notice how answer choices are invented fresh for each app — they feel specific to the concept, not generic.
▸ Just me ▸ Real-time with others (like a game or collaboration)
▸ We go back and forth, chess-style ▸ Everyone moves at once, then we see what happened ▸ It's more of a party game — chaos is the point ▸ Tha
Instantly make your own small multi-user apps, without a backend. For apps made with Vibes, the front-end is the app.
Self-contained deploy automation — invoke directly, do not decompose. Deploys a Vibes app to Cloudflare Workers via the Deploy…
Self-contained design transformer — invoke directly, do not decompose. Transforms a design reference HTML file into a Vibes app.…
Self-contained SaaS pipeline — invoke directly, do not decompose. Generates a factory app with landing page, Stripe subscription…
Self-contained parallel generator — invoke directly, do not decompose. Generates 3-10 app variations in parallel for comparing…
Self-contained test automation — invoke directly, do not decompose. End-to-end integration test that assembles a fixture, deploys…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.