본문으로 건너뛰기
REPL WorksREPL Works
Menu

PROMPT SPECIFICATION

PRODUCT_SPEC.md 작성 프롬프트

PRODUCT_SPEC.md 작성을 위한 제품 명세 생성 프롬프트

03B. 코딩형 AI를 위한 4종 문서 생성 단계 (Specification Phase)

`PRODUCT_SPEC.md` 생성

PRODUCT_SPEC.md Generation

생성 대상
PRODUCT_SPEC.md

제품의 도메인 비전, 타겟 유저, 정보 아키텍처 및 세부 기능 요구사항 규격을 구조화한 PRODUCT_SPEC.md 파일을 생성합니다.

🎯 프롬프트 목적

제품 관점에서 무엇을 만들어야 하는지(Scope & Feature Requirements) 명확하고 세부적으로 정의합니다.

이 단계에서는 아직 프로그래밍 언어나 DB 같은 기술 아키텍처를 다루지 않습니다. 사용자 관점의 기능, 입출력 구조, 성공 기준 등 구현 대상을 명확히 규격화하는 것에 집중합니다.


📦 생성 산출물

PRODUCT_SPEC.md

💡 사용 방법 & 대화 가이드

  1. 사전 준비: PITCHING_SCRIPT.md 생성이 완료된 후 사용하세요.
  2. 제품 범위 정의: AI는 기술 구현 방식이 아닌 사용자 경험(UX)과 제품 기능에 집중하여 질문하고 명세를 작성합니다.
  3. 확정 명세 도출: 과도한 자의적 확장 없이 제품 책임자(PM) 및 개발팀이 즉시 구현 상태를 검증할 수 있는 명세서가 완성됩니다.

🤖 AI 프롬프트 원문

아래 프롬프트를 복사하여 AI 대화창에 그대로 전달해 보세요.

PRODUCT_SPECIFICATION_PROMPT.txt
Generate PRODUCT_SPEC.md.
INPUT
- The product information provided with this request.
Product discovery and idea validation are complete and final.
It is the only source of product information.
- If wireframes or mockups are provided, translate their structure into text.
MUST NOT reference or embed image files.
- MUST NOT create any other document.
- Output the contents of PRODUCT_SPEC.md only.
STOP CONDITIONS
If information required for any section is missing, ambiguous, or contradictory:
output ONLY a numbered list of questions. Nothing else.
After I answer, treat my answers as final input and continue.
MUST NOT invent information to fill a gap.
PURPOSE
The purpose of PRODUCT_SPEC.md is to define:
What the product is.
What the product does.
How it works from the end user's perspective, including its UI and UX.
What the user can do.
SCOPE BOUNDARY
- Specify only what the end user can observe and do.
- Specify only what is to be built now. Features that were discussed but
deferred to later MUST NOT appear in the document, except as
Non-Goals if explicitly excluded.
- UI and UX are product behavior. MUST specify them (see USER INTERFACE RULES).
- How the product works internally (mechanism) belongs to ARCHITECTURE.md.
MUST NOT describe implementation, architecture, technologies, tech stacks,
programming languages, databases, internal APIs, internal components,
or directory structures.
- Persistence is specified as observable behavior (what is kept across sessions),
never as storage technology.
- Human-owned. MUST NOT specify:
wording, copy, translations, images,
visual styling (colors, typography, spacing, visual polish).
Specify which content slots exist and what each is for, not their content.
- Business outcomes (revenue, user counts, conversion, growth, market targets)
are out of scope. MUST NOT include them anywhere in the document.
- MUST NOT propose improvements.
- MUST NOT add features that were not discussed.
- MUST NOT expand the scope.
USER INTERFACE RULES
For every surface the user interacts with:
- Screens: give each a stable ID (SCR-001, ...), its purpose, and the elements on it.
- Elements: for each, its purpose and what the user can do with it.
- Arrangement: relative placement, grouping, and hierarchy only.
MUST NOT specify exact sizes, spacing, or visual styling.
- States: every state that applies (initial, empty, loading, populated, error,
disabled) and what is shown in each.
- Navigation: for each trigger, the destination.
- Interactions: for each user action, the observable result.
- Platform or window-size differences, only if stated in the input.
For non-graphical products (e.g. command-line):
- Every command, option, input, and the structure of output that users
or other programs rely on, and exit behavior.
MUST NOT specify exact output wording unless programs depend on it.
REQUIREMENT RULES
- Give every Functional Requirement a stable ID (FR-001, FR-002, ...).
- Each requirement is one externally observable behavior that can be
verified pass/fail. If it cannot be written objectively, ask.
- Product Goals: only what the product enables the end user to do.
MUST NOT include business outcomes.
- Error Conditions specify the observable behavior for each condition.
- Acceptance Criteria reference requirement and screen IDs and are pass/fail verifiable.
- Non-Goals: only what the input explicitly excludes.
- External Systems: list each external system the product depends on
and the behavior relied on.
Mark with [UNVERIFIED] the heading of any section whose behavior depends on
an external system whose behavior has not been observed.
- Constraints: only observable non-functional requirements stated in the input
(supported platforms or environments, performance, offline behavior,
data retention, accessibility). If none are stated, write "None stated."
The document must include, in this order:
- Purpose
- Problem
- Product Goals
- Users
- Inputs
- Outputs
- Constraints
- External Systems
- User Interface
- Functional Requirements
- User Flows
- Error Conditions
- Non-Goals
- Acceptance Criteria
FORMAT
LANGUAGE
- Write the entire document in English, regardless of the input language.
Translate all input content into English.
- Exception: proper nouns and identifiers stay as given.
- Content slots are specified by purpose only (see SCOPE BOUNDARY),
so this rule never requires writing product copy.
READER
- The only reader is a coding AI agent. There is no human reader.
- Optimize for unambiguous, direct implementation and test derivation.
- Every line MUST be an actionable, verifiable statement or a defined fact.
STYLE
- MUST NOT include background, rationale, motivation, narrative,
introductions, summaries, transitions, or commentary.
- One behavior or fact per bullet. MUST NOT combine multiple behaviors
in one bullet.
- Use only "MUST" and "MUST NOT" for requirements.
MUST NOT use "should", "may", "can", "ideally", "preferably".
- MUST NOT use vague terms: "etc.", "and so on", "appropriate", "as needed",
"fast", "user-friendly", "properly", "similar".
Enumerate every item explicitly. If it cannot be enumerated, ask.
- Use one term per concept. Define it once in the section where it
first appears and reuse it exactly. MUST NOT use synonyms.
- Reference other items by ID only (FR-xxx, SCR-xxx, EL-xxx, ERR-xxx).
MUST NOT refer to them by description.
STRUCTURE
- Flat bullets. Maximum nesting depth: 2.
- Per screen, use this fixed schema in this order:
ID / Purpose / Elements (EL-xxx: purpose, user actions) /
States / Navigation (trigger -> destination) /
Interactions (action -> observable result)
- Use "trigger -> result" lines for navigation and interactions.
- Give IDs to every element (EL-), error condition (ERR-),
and acceptance criterion (AC-).
- No emphasis styling, no emoji, no ASCII art, no images.
- Output the document only.