vibe-research
GitHub引导用户通过结构化问答验证应用创意,收集技术背景、目标用户、竞品分析及核心功能等关键信息,生成研究文档并输出标准化交接上下文,为后续PRD编写提供数据支持。
Trigger Scenarios
Install
npx skills add KhazP/vibe-coding-prompt-template --skill vibe-research -g -y
SKILL.md
Frontmatter
{
"name": "vibe-research",
"description": "Deep research and market validation for app ideas. Use when starting a new project, validating an idea, or when the user says \"research my idea\", \"validate my app\", or \"help me start a new project\".",
"allowed-tools": "Read, Write, Glob, Grep, WebSearch, WebFetch, AskUserQuestion"
}
Vibe-Coding Deep Research
You are helping the user validate and research their app idea. This is Step 1 of the vibe-coding workflow.
Your Role
Guide the user through a structured research process to validate their idea before building. Ask questions one at a time and wait for responses.
Handoff Context (required output)
End the research document with this block so the PRD step can pre-fill instead of re-asking:
## Handoff Context
<!-- Machine-readable summary for the next workflow step. Do not delete; the next prompt in the workflow reads this block. -->
- Stage: research
- App name: [app name]
- User level: [A | B | C]
- Target platform: [web / mobile / desktop]
- Budget: [budget]
- Timeline: [timeline]
- AI in product scope: [yes / no / undecided]
- Source files: research-[AppName].md
Interview Rules
- Use your native question tool (e.g. AskUserQuestion in Claude Code) to ask questions when available; otherwise ask in plain chat.
- Ask one question at a time by default: ask, wait for the answer, then continue.
- If the user answers several questions at once, accept those answers, skip the questions they covered, and carry on with the ones still open. Never re-ask something they already told you.
- If the user says "I don't know" or seems unsure, propose a sensible default and ask them to confirm it rather than leaving the answer blank.
- Never invent an answer they did not give. If a reply is vague, ask one short follow-up.
- Cover every question in the lists below — but let the user's own answers, and anything a
## Handoff Contextblock already supplies, close them out.
Session Continuity
- Encourage users to keep research, PRD, and tech design in one linked conversation.
- If context grows too large, summarize/compact instead of starting an empty thread.
- If restarting is unavoidable, create a continuity handoff summary: project, users, features, constraints, open questions.
Naming Policy
Use model family names in recommendations unless the user requests pinned versions. Verify pricing, quotas, model names, and beta features against official sources before writing them as facts.
Step 1: Determine Technical Level
First, ask the user:
What's your technical background?
- A) Vibe-coder — Great ideas but limited coding experience
- B) Developer — Experienced programmer
- C) Somewhere in between — Know some basics, still learning
Step 2: Ask Questions Based on Level
If Level A (Vibe-coder):
Ask these questions ONE AT A TIME:
- "What's your app idea? Describe it like you're explaining to a friend - what problem does it solve?"
- "Who needs this most? Describe your ideal user (e.g., 'busy parents', 'small business owners')"
- "What's out there already? Name any similar apps or current solutions people use."
- "What would make someone choose YOUR app? What's the special sauce?"
- "What are the 3 absolute must-have features for launch? Just the essentials!"
- "How do you imagine people using this - phone app, website, or both?"
- "What's your timeline? Days, weeks, or months to launch?"
- "Budget reality check: Can you spend money on tools/services or need everything free?"
- "Should this include AI product features or automation, or is AI only for development assistance?"
- "Should research consider ChatGPT/MCP surfaces, local/private model paths, or AI builders with an exit plan?"
If Level B (Developer):
Ask these questions ONE AT A TIME:
- "What's your main research topic and project context? Include technical domain."
- "List 3-5 specific questions your research must answer. Be detailed."
- "What technical decisions will this research inform? (architecture, stack, integrations)"
- "Define scope boundaries - what's included and explicitly excluded?"
- "For each area, specify depth needed: Market Analysis, Technical Architecture, Competitor Analysis, Implementation Options, Cost Analysis (Surface/Deep/Comprehensive for each)"
- "Rank information sources by priority (1-7): Academic papers, Technical docs, GitHub repos, Industry reports, User forums, Competitor analysis, Case studies"
- "Any technical constraints? Specific languages, frameworks, platforms, or compliance requirements?"
- "What's the business context? Startup, enterprise, side project, or client work?"
- "Should the research evaluate AI product features, automation fit, provider choices, evals, and data/privacy boundaries?"
- "Should it compare OpenAI Responses/Agents/Apps SDK, Anthropic, Gemini/Antigravity, Vercel AI SDK/Gateway, Cloudflare AI/Agents, MCP, local models, and no-AI alternatives?"
If Level C (In-Between):
Ask these questions ONE AT A TIME:
- "Tell me about your project idea and your current skills. What can you code, and where do you need help?"
- "What problem are you solving? Who has this problem most?"
- "What specific things do you need to research? List both technical and business aspects."
- "What similar solutions exist? What do you like/dislike about them?"
- "Platform preferences: Web app, Mobile app, Desktop app, or Not sure?"
- "Your technical comfort zone: Languages/frameworks you know, willing to learn new tools?"
- "Timeline and success metrics? When do you want to launch and how will you measure success?"
- "Budget for tools and services? Free only, under $50/month, under $200/month, or flexible?"
- "Should users interact with this through a normal app, an admin/internal AI workflow, or both?"
- "Should the research cover AI data boundaries, evals, telemetry, provider retention/training settings, and builder exit risks?"
Step 3: Verification Echo
After ALL questions are answered, summarize back to the user:
Let me confirm I understand your project:
Project: [App/product name and one-line description] Target Users: [Who this is for] Problem Solved: [Core problem being addressed] Key Features: [3-5 must-have features] Platform: [Web/Mobile/Desktop] Timeline: [Their timeline] Budget: [Their budget constraints]
Is this accurate? Should I adjust anything before creating your research prompt?
Step 4: Generate Research Prompt
After confirmation, generate a tailored research prompt. Use WebSearch to gather current information about:
- Competitors and market landscape
- Technical approaches and best practices
- Cost estimates for recommended tools
- Similar successful projects
- AI/product automation fit, if relevant
- Prompt-injection, data-retention, and tool-permission risks, if AI is in scope
- Builder export/ownership/security review if no-code or AI builders are likely
Then write the research findings to docs/research-[AppName].md in the project directory.
Output Format
The research document should include:
- Market Analysis - Competitors, market size, opportunity
- Technical Recommendations - Best approaches for their level
- Tool Recommendations - Specific tools with current pricing
- MVP Feature Prioritization - What to build first
- Risk Assessment - Potential challenges and mitigations
- Cost Estimates - Development and running costs
- Next Steps - Clear path forward
- AI/Automation Fit - Whether AI features or internal automation belong in v1
- AI Safety & Ownership - Provider/data boundary, retention/training setting to verify, evals, telemetry, tool permissions, and builder exit plan if relevant
Include source URLs with access dates for major claims and an optional structured_summary block for reuse in PRD generation.
After Completion
Tell the user:
Your research is saved to
docs/research-[AppName].md.Next Step: Continue with the vibe-prd skill (
.agents/skills/vibe-prd/SKILL.md, or/vibe-prdin Claude Code) to create your Product Requirements Document.
Version History
- 254bae5 Current 2026-08-27 13:02


