문서 목차
이 페이지에서목차

/cc-product:specify — 무엇을 만들지 "확정"하는 단계

2단계: Specification — Seed spec 을 쓰고(/cc-spec:seed) Jev(판정 전용 모델)로 모호성·패널을 판정해 잠급니다(/cc-spec:verify --lock). `docs/seed-spec-{slug}.md`(LOCKED)·결정 기록·판정 리포트가 남고, PASS 여야 기획(/cc-product:plan)으로 넘어갑니다.

항목내용
실행 명령/cc-product:specify
분류파이프라인
난이도●●● 높음

파이프라인 2단계(Specification). "무엇을 만들지"를 누가 봐도 똑같이 이해되도록 한 장(Seed spec)에 못 박고, 그것이 충분히 또렷한지를 문서를 쓴 AI 가 아니라 판정 전용 모델(Jev) 에게 판정받아 잠급니다.

한마디로#

만들 것을 **"애매하지 않게 글로 못 박는 단계"**입니다. 집을 짓기 전에 "방은 몇 개, 창문은 어디"를 도면 한 장에 확정하고, 그 도면을 제3의 감리자가 통과시켜야 착공하는 것과 같아요.

누가·언제 쓰나요#

  • 만들 방향은 정해졌는데 "정확히 무엇을, 어디까지" 만들지 아직 흐릿한 경우
  • 명세 품질을 사람의 인상이 아니라 확률·점수로 확인하고 싶을 때
  • 시점으로는 조사(Discovery)를 끝낸 뒤, 기획(Planning)에 들어가기 직전

👉 건너뛰어도 되는 경우: 이미 확정(LOCKED)된 핵심 명세(Seed spec)가 있고, 메타데이터의 Gate: 가 PASS 이며 그 지문(hash)이 현재 파일과 같은 경우.

👉 먼저 필요한 것: TYPESAFE_API_KEY. 없으면 판정은 "판정 불가(UNVERIFIED)"로 멈추고 이 단계는 완료되지 않습니다.

무엇을 해주나요#

docs/ 폴더에 세 파일이 남습니다.

  • 핵심 명세 (docs/seed-spec-(프로젝트이름).md) — 못 박은 "무엇을 만들지"의 확정본 (LOCKED)
  • 의사결정 기록 (docs/decision-log-(프로젝트이름).md) — 무엇을 왜 그렇게 정했는지
  • 판정 리포트 (docs/spec-evaluation-(프로젝트이름).md) — Jev 의 모호성 점수·패널 판정·보완 안내

통과하면 다음 단계인 기획(/cc-product:plan) 으로 넘어갑니다.

어떻게 쓰나요#

/cc-product:specify "커뮤니티 기능"
/cc-product:specify --from docs/discovery-community.md

안에서 무슨 일이 벌어지나요#

  1. 핵심 명세 작성 (/cc-spec:seed) — 요청에서 숨은 가정을 한 번 확인해 표로 받고, 핵심 문제·불변 제약·핵심 개념·합격 기준(AC-01…)을 초안으로 씁니다.
  2. 판정·잠금 (/cc-spec:verify --lock) — 기계 검사 10항목을 코드로 센 뒤, Jev 에 한 번의 요청으로 모호성 5차원과 3관점 패널을 묻습니다. 합격이면 잠급니다. 조건부면 지적을 고쳐 최대 2번 다시 받습니다.

작업이 길어 대화가 늘어났다면 /clear 후 새로 시작해도 됩니다 — 결과는 파일에 남아 있습니다.


⚙️ 상세 옵션·실행 명세 (개발자 / AI 에이전트용)

Triggers#

  • After Discovery completion, before Planning
  • When spec quality must be verified by a backend other than the authoring model

Usage#

/cc-product:specify "Community feature"
/cc-product:specify --from docs/discovery-{slug}.md

Parameters#

ParameterRequiredDescriptionExample
description✅ (or --from)One-paragraph spec target"Community feature"

Options#

OptionDefaultDescription
--fromlatest docs/discovery-*.mdBrief / discovery document to start from
--slugderivedProject slug

Skip Conditions#

  • A LOCKED Seed spec exists and its Gate: metadata is PASS and the recorded spec_hash_short equals python3 "${CLAUDE_PLUGIN_ROOT:-plugins/cc-spec}/skills/jev-gate/scripts/jev_judge.py" parse → spec_hash[:7] (a changed file invalidates the stamp).

Execution Flow#

Phase 1: Seed Spec#

Source: cc-spec → /cc-spec:seed

  1. Resolve input (argument / --from / latest discovery doc)
  2. One assumption pass (≥ 3 assumptions, confirmed in a single round)
  3. Draft from template; self-check with jev_judge.py check (no Jev call)
  4. Artifacts: docs/seed-spec-{slug}.md (DRAFT), docs/decision-log-{slug}.md

Phase 2: Jev Gate + Lock#

Source: cc-spec → /cc-spec:verify --lock

  1. Stage 1 — mechanical M-01..M-10 (jev_judge.py check)
  2. Stage 2 — one Jev request: ambiguity (5 score) + panel (3 choice)
  3. PASS → lock. CONDITIONAL → fix → re-run (≤ 2 rounds). FAIL → back to Phase 1. UNVERIFIED (no key / API error / unparseable) → stop; the stage is not complete.
  4. Artifact: docs/spec-evaluation-{slug}.md; Seed metadata Ambiguity Score + Gate stamp

Gate: Specification Gate#

ConditionCriteria
MechanicalM-01..M-10 all PASS
Ambiguity score≤ 0.2, and no flagged Must/Must-Not row or contradiction
Panelblocking = 0 (seats computed from row-level judgments; an uncertain check is not an approval)
Jev verifiedverdict ≠ UNVERIFIED; stamp matches the file hash

Pass → /cc-product:plan · Fail → revise and re-run

Artifacts#

FilePath
Seed spec (LOCKED)docs/seed-spec-{slug}.md
Decision logdocs/decision-log-{slug}.md
Evaluation reportdocs/spec-evaluation-{slug}.md

After Completion#

  • Update specification status to completed in .pipeline/{slug}.yaml, record artifact paths and the Jev stamp
  • Present context-clear handoff:
✅ Specification stage complete (Gate PASSED · Jev {model} · {spec_hash_short}). Artifacts saved:
  - docs/seed-spec-{slug}.md (LOCKED)
  - docs/decision-log-{slug}.md
  - docs/spec-evaluation-{slug}.md

**Option 1 (Recommended)**: Clear context and continue to Planning
  /clear
  Then run: /cc-product:plan

**Option 2**: Continue in current context
  Proceed directly to /cc-product:plan
  • /cc-product:discover — Previous stage (Discovery)
  • /cc-product:plan — Next stage (Planning)
  • /cc-spec:status --against … — later, drift checks of work against the locked seed

검색어를 입력하면 문서를 찾습니다.

↑ ↓ 이동 · Enter 열기Esc 닫기