Community生产力与协作github.com

tieveto666-code/product-prototype-builder

AI Agent Skill:将产品想法转化为需求讨论、版本化 PRD 与可交互 HTML 原型。支持 Cursor / Codex

product-prototype-builder 是什么?

product-prototype-builder is a Codex agent skill that aI Agent Skill:将产品想法转化为需求讨论、版本化 PRD 与可交互 HTML 原型。支持 Cursor / Codex.

兼容平台~Claude Code✓Codex CLI✓Cursor
npx skills add tieveto666-code/product-prototype-builder

Installed? Explore more 生产力与协作 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Product Prototype Builder

Use this skill to advance a vague product idea from 0 to 1, delivering three phases of work:

  1. Requirement Discussion
  2. Requirement Specification (PRD)
  3. Single-File Interactive HTML Prototype

Users may provide only an initial idea. Do not jump directly to PRD or prototype generation unless the previous phase has sufficient, user-confirmed information.

Core Rules

  • When the user communicates in Chinese, use Chinese for communication and deliverables by default.
  • Treat this process as a collaborative product exploration, not a one-time document generation.
  • Continuously record requirements, decisions, open questions, assumptions, and version changes.
  • Important product decisions must be confirmed with the user before being written into the final specification.
  • Do not generate a PRD until the user explicitly confirms the requirement discussion is complete enough.
  • Do not generate a prototype until the user explicitly confirms the PRD is acceptable and prototype generation can begin.
  • If the user modifies requirements after a PRD or prototype has been generated, first update the requirement discussion record, then create a new PRD or prototype version based on the affected scope.
  • When market, competitor, policy, technology, pricing, industry trends, or other information may influence requirement judgment, use available web search tools to supplement materials, and summarize sources and conclusions. External information can only serve as assumptions and must be confirmed by the user before becoming requirement conclusions.

Workspace Structure

Create and maintain the following structure in the current working directory:

workspace/
├── 01-discussions/
│   └── {requirement-name}-discussion.md
├── 02-specifications/
│   └── {requirement-name}/
│       ├── v001-{requirement-name}-spec.md
│       ├── v002-{requirement-name}-spec.md
│       └── index.md
└── 03-prototypes/
    └── {requirement-name}/
        ├── v001-{prototype-name}.html
        ├── v002-{prototype-name}.html
        └── index.md

If a suitable root directory already exists in the project, use the existing directory and do not recreate workspace/. File names should be concise, clear, and avoid special characters unsuitable for file systems.

Version Management Rules

  • PRDs and prototypes must use version numbers like v001, v002, v003.
  • Do not overwrite existing versioned PRD or prototype files. Create the next version for each significant modification.
  • Each index.md must record:
    • Version number
    • File path
    • Creation or update timestamp, if available
    • Brief change description
    • Status, e.g., draft, confirmed, superseded
  • The requirement discussion file is the continuously evolving source of truth for requirements and must be updated throughout the process.

Phase One: Requirement Discussion

Goal: Organize the user's initial idea into a clear, complete, and confirmable requirement foundation.

Actions:

  1. Create or update workspace/01-discussions/{requirement-name}-discussion.md.
  2. Use a free-form dialogue to ask focused questions. Prioritize 3 to 7 high-value questions per round.
  3. Record the following:
    • Original idea
    • Target users and usage scenarios
    • User pain points and product value
    • Core usage flow
    • Functional requirements
    • Data objects and key fields
    • User roles and permissions
    • Business rules
    • Interaction expectations
    • Visual and style preferences
    • Constraints and out-of-scope items
    • Pending questions
    • Confirmed decisions
  4. When discovering unreasonable, risky, contradictory, or missing requirements, point out the issue, explain its impact, and provide alternatives.
  5. When necessary, research similar products, industry practices, policy restrictions, or technical feasibility. Summarize the research findings and ask the user whether to adopt the related assumptions.
  6. Periodically summarize the current requirements during the discussion and synchronize them into the requirement discussion file.

Phase Gate:

  • Before entering Phase Two, ask the user to confirm whether the requirements are complete enough for PRD generation.
  • Acceptable confirmations include "you can generate the PRD", "the requirements are fine", "generate the requirements document", and similar expressions.
  • If the user prematurely asks for PRD generation, first summarize the current gaps, then ask only the most necessary questions.

Phase Two: Requirement Specification

Goal: Generate a complete, well-structured Markdown PRD document.

Create the next version at the following path:

workspace/02-specifications/{requirement-name}/v00N-{requirement-name}-spec.md

Recommended PRD Structure:

# {Requirement Name} Product Requirements Document v00N

## 1.  Requirements Goal
## 2.  Background and User Pain Points
## 3.  User Roles and Core Scenarios
## 4.  Requirements Scope
## 5.  Out-of-Scope Items
## 6.  Product Architecture
## 7.  Usage Flow
## 8.  Product Style and Feature Layout
## 9.  Feature Details and Interaction Logic
## 10. Data Objects and Fields
## 11. States, Rules, and Exception Handling
## 12. Prototype Page List
## 13. Acceptance Criteria
## 14. Pending Questions
## 15. Version History

PRD Quality Requirements:

  • Content must be specific enough to support prototype generation.
  • Do not simply list feature names; also describe page-level and component-level behavior.
  • Describe empty states, loading states, error states, permission states, and important boundary conditions as needed.
  • The product structure should be aesthetically pleasing, easy to use, and logically clear.
  • All assumptions must be clearly marked, indicating whether they are confirmed or pending.

After Delivery:

  • Update index.md in the specifications area.
  • Ask the user if they need to modify the PRD.
  • If the user requests modifications, first update the requirement discussion file, then create a new PRD version.

Phase Gate:

  • Do not enter Phase Three until the user explicitly confirms the PRD is acceptable and prototype generation can begin.
  • Acceptable confirmations include "the PRD is fine", "you can generate the prototype", "start making the HTML", and similar expressions.

Phase Three: Interactive HTML Prototype

Goal: Generate a visually appealing, unified, operable, and experienceable single-file HTML prototype.

Upon entering this phase, read and execute the prototype quality specifications in references/prototype-quality.md.

Before generating the file:

  • Briefly tell the user the expected prototype effect, including main pages, interaction depth, visual style, and simulation logic.
  • Explain key limitations only when necessary.
  • Generate a "prototype interaction checklist" clearly defining the interactive behavior for each page, navigation, button, tab, filter, search, form, modal, drawer, CRUD operations, and dynamic components.
  • For complex components like workflow orchestration, visual graphs, flowcharts, kanban boards, drag-and-drop sorting, and node relationships, explain which dynamic interactions will be implemented; do not just create static displays.

Create the next version at the following path:

workspace/03-prototypes/{requirement-name}/v00N-{prototype-name}.html

Prototype Requirements:

  • Deliver a single, independent .html file.
  • HTML, CSS, and JavaScript should be inlined in the same file by default.
  • The file must be directly openable in any modern browser.
  • The prototype must be an interactive functional prototype, not a static screenshot.
  • Implement realistic UI states, page transitions, forms, modals, drawers, tabs, filters, searches, validations, simulated flows, and business logic according to requirements.
  • Every clickable element must have a perceptible interactive result. Main buttons, menus, tabs, icon buttons, or operation entry points that appear clickable but do not respond to clicks are not allowed.
  • CRUD operation buttons must have simulated logic, such as adding data, editing with pre-fill, delete confirmation, detail viewing, search filtering, status updates, or feedback notifications.
  • Page layout must be checked for spacing to avoid issues like sidebar and content area touching, buttons adjacent without margin, text overlapping lines, elements overlapping, or content being clipped.
  • Use simulated data and client-side state. To improve experience, localStorage can be used to persist temporary data.
  • By default, do not rely on backend services, real databases, build steps, package installations, or external APIs.
  • Do not rely on external CDNs unless the user explicitly agrees.
  • The overall visual system must be unified, including spacing, fonts, colors, component styles, buttons, tables, cards, forms, charts, navigation, and feedback states.
  • All major flows should be demonstrable using sample data.
  • The interaction depth must be sufficient for the user to experience the core behavior of the product.

Important Notes:

  • A "single-file HTML prototype" does not mean "no interaction".
  • It means the prototype can run locally in a browser and implement interaction and business logic through front-end simulation.
  • If the user requests real login, real APIs, database persistence, payments, file storage, or production deployment, explain that this is beyond the scope of a single-file prototype and ask if they want to simulate it in the prototype or transition to an engineering implementation approach.

Verification Requirements:

  • Check the generated HTML for broken references.
  • If a browser or rendering tool is available, open the HTML and verify layout, responsive behavior, and core interactions.
  • Fix any obvious layout overlap, broken flows, missing states, or JavaScript errors before delivery.
  • Use the delivery checklist in references/prototype-quality.md to self-check item by item. If any item is unimplemented, unresponsive, or has layout issues, fix it before delivery.

After Delivery:

  • Update index.md in the prototype area.
  • Inform the user of the file path and the created version number.
  • Summarize the prototype's content first, then ask for the user's feedback.

Conversation Style

  • Be proactive, but strictly observe phase gates.
  • Ask questions only when they will significantly improve the outcome.
  • When the user is uncertain, provide 2 to 4 concrete options and recommend one.
  • When the user asks to move quickly, you may create a first version based on reasonable assumptions, but must still obtain confirmation before crossing a phase gate.
  • When the user requests changes, determine whether the change affects the requirement discussion, PRD, prototype, or all three.
  • When the user requests a rollback, use the corresponding index.md and versioned files to locate the target version.

Migration Notes

This skill is written as a generic Markdown workflow instruction. When migrating to non-Codex tools, use references/portable-prompt.md as a system prompt, custom instruction, project rule, or agent rule.

相关技能