LogoSkills

seed:create

Seed Spec Creation โ€” Transform Socratic interview results into an immutable core spec

ํ•ญ๋ชฉ๋‚ด์šฉ
Invoke/seed:create
Categoryspec-clarity
Complexitymoderate

/spec:seed โ€” ํ”๋“ค๋ฆฌ์ง€ ์•Š๋Š” "ํ•ต์‹ฌ ๋ช…์„ธ" ๊ตณํžˆ๊ธฐ#

์†Œํฌ๋ผํ…Œ์Šค์‹ ์ธํ„ฐ๋ทฐ๋กœ ๋Œ์–ด๋‚ธ ๋‹ต์„, ํ•จ๋ถ€๋กœ ๋ฐ”๊พธ์ง€ ์•Š๋Š” ์ œํ’ˆ์˜ "๋ณ€ํ•˜์ง€ ์•Š๋Š” ๋ผˆ๋Œ€(Seed ๋ช…์„ธ)" ํ•œ ์žฅ์œผ๋กœ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

ํ•œ๋งˆ๋””๋กœ#

๊นŠ์€ ์งˆ๋ฌธ(์ธํ„ฐ๋ทฐ)์œผ๋กœ ์•Œ์•„๋‚ธ ๋‚ด์šฉ์„, ๋‚˜์ค‘์— ํ”๋“ค๋ฆฌ์ง€ ์•Š๋Š” "ํ•ต์‹ฌ ์•ฝ์†" ํ•œ ์žฅ์œผ๋กœ ๊ตณํžˆ๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค. ๊ฑด๋ฌผ๋กœ ์น˜๋ฉด, ์ธํ…Œ๋ฆฌ์–ด๋Š” ๋ฐ”๊ฟ”๋„ ๋˜์ง€๋งŒ ์ ˆ๋Œ€ ๋ชป ์˜ฎ๊ธฐ๋Š” "๊ธฐ๋‘ฅ๊ณผ ๊ณจ์กฐ"๋ฅผ ๋จผ์ € ๋ฐ•์•„๋‘๋Š” ์ผ๊ณผ ๊ฐ™์•„์š”.

๋ˆ„๊ฐ€ยท์–ธ์ œ ์“ฐ๋‚˜์š”#

  • ๊นŠ์€ ์ธํ„ฐ๋ทฐ(/spec:interview)๋ฅผ ์ด๋ฏธ ๋๋‚ด์„œ, ๋ฌด์—‡์„ ๋งŒ๋“ค์ง€ ํ•ฉ์˜๊ฐ€ ๊ฑฐ์˜ ๋‹ค ๋œ ๊ฒฝ์šฐ
  • "์ด๊ฑด ์ ˆ๋Œ€ ๋ฐ”๋€Œ๋ฉด ์•ˆ ๋œ๋‹ค"๋Š” ํ•ต์‹ฌ ๋ฌธ์ œยท์ œ์•ฝ์„ ๋ฌธ์„œ๋กœ ๋ชป ๋ฐ•์•„๋‘๊ณ  ์‹ถ์„ ๋•Œ

๐Ÿ‘‰ ๋จผ์ € ํ•„์š”ํ•œ ๊ฒƒ: ์ธํ„ฐ๋ทฐ ๊ฒฐ๊ณผ ํŒŒ์ผ(docs/socratic-discovery-{ํ”„๋กœ์ ํŠธ์ด๋ฆ„}.md)์ด ์žˆ์–ด์•ผ ํ•˜๊ณ , ๊ทธ ํ•ฉ์˜ ์ˆ˜์ค€(์ˆ˜๋ ด๋„)์ด 0.95 ์ด์ƒ์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ถ€์กฑํ•˜๋ฉด ๋ช…๋ น์ด "์ธํ„ฐ๋ทฐ๋ฅผ ๋” ์ง„ํ–‰ํ• ๊นŒ์š”?"๋ผ๊ณ  ์•Œ๋ ค์ค๋‹ˆ๋‹ค.

๋ฌด์—‡์„ ํ•ด์ฃผ๋‚˜์š”#

ํŒŒ์ผ ๋‘ ๊ฐœ๊ฐ€ ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค.

  • docs/seed-spec-{ํ”„๋กœ์ ํŠธ์ด๋ฆ„}.md โ€” ํ•ต์‹ฌ ๋ช…์„ธ(์ฒ˜์Œ์—” ์ดˆ์•ˆ/DRAFT ์ƒํƒœ). ํ•ต์‹ฌ ๋ฌธ์ œ, ์ ˆ๋Œ€ ๋ฐ”๊พธ๋ฉด ์•ˆ ๋˜๋Š” ์ œ์•ฝ, ํ•ต์‹ฌ ๊ฐœ๋…, ํ•ฉ๊ฒฉ ๊ธฐ์ค€, ๋“œ๋Ÿฌ๋‚œ ๊ฐ€์ • ๋“ฑ์ด ์ •๋ฆฌ๋ฉ๋‹ˆ๋‹ค.
  • docs/decision-log-{ํ”„๋กœ์ ํŠธ์ด๋ฆ„}.md โ€” ์•ž์œผ๋กœ์˜ ๊ฒฐ์ •๋“ค์„ ๊ธฐ๋กํ•  "์˜์‚ฌ๊ฒฐ์ • ์ผ์ง€"์˜ ์‹œ์ž‘์ 

์—ฌ๊ธฐ์„œ ๋งŒ๋“  ๋ช…์„ธ๋Š” ์•„์ง "์ดˆ์•ˆ"์ž…๋‹ˆ๋‹ค. ์ดํ›„ ๋ชจํ˜ธํ•จ ์ ๊ฒ€ยท๋ฐ˜๋ก  ๊ฒ€ํ† ยท๋‹จ์ˆœํ™”ยท๊ตฌ์กฐ ๊ฒ€์ฆ์„ ๊ฑฐ์ณ ์ตœ์ข…์ ์œผ๋กœ "์ž ๊ธˆ(lock)"๋ฉ๋‹ˆ๋‹ค.

์–ด๋–ป๊ฒŒ ์“ฐ๋‚˜์š”#

/spec:seed                           # ์ธํ„ฐ๋ทฐ ๊ฒฐ๊ณผ๋กœ๋ถ€ํ„ฐ ํ•ต์‹ฌ ๋ช…์„ธ ๋งŒ๋“ค๊ธฐ
/spec:seed --from {discovery-file}   # ์‚ฌ์šฉํ•  ์ธํ„ฐ๋ทฐ ๊ฒฐ๊ณผ ํŒŒ์ผ์„ ์ง์ ‘ ์ง€์ •
/spec:seed --slug {project-slug}     # ํ”„๋กœ์ ํŠธ ์‹๋ณ„ ์ด๋ฆ„(์Šฌ๋Ÿฌ๊ทธ) ์ง์ ‘ ์ง€์ •

--from์„ ์ƒ๋žตํ•˜๋ฉด ๊ฐ€์žฅ ์ตœ๊ทผ ์ธํ„ฐ๋ทฐ ๊ฒฐ๊ณผ(docs/socratic-discovery-*.md)๋ฅผ ์ž๋™์œผ๋กœ ์”๋‹ˆ๋‹ค. --slug์„ ์ƒ๋žตํ•˜๋ฉด ์ธํ„ฐ๋ทฐ ๊ฒฐ๊ณผ์—์„œ ํ”„๋กœ์ ํŠธ ์ด๋ฆ„์„ ์ž๋™์œผ๋กœ ๋ฝ‘์•„๋ƒ…๋‹ˆ๋‹ค.

์•ˆ์—์„œ ๋ฌด์Šจ ์ผ์ด ๋ฒŒ์–ด์ง€๋‚˜์š”#

ํฌ๊ฒŒ ๋„ค ๋‹จ๊ณ„๋กœ ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค.

  1. ์ธํ„ฐ๋ทฐ ๊ฒฐ๊ณผ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ โ€” ์ธํ„ฐ๋ทฐ ๋ฌธ์„œ๋ฅผ ์ฝ๊ณ , ํ•ฉ์˜ ์ˆ˜์ค€(์ˆ˜๋ ด๋„)์ด ์ถฉ๋ถ„ํ•œ์ง€(0.95 ์ด์ƒ) ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ๋ถ€์กฑํ•˜๋ฉด ์ธํ„ฐ๋ทฐ๋ฅผ ๋” ํ•˜๋ผ๊ณ  ์•ˆ๋‚ดํ•ฉ๋‹ˆ๋‹ค.
  2. ํ•ต์‹ฌ ๋ช…์„ธ ์ดˆ์•ˆ ๋งŒ๋“ค๊ธฐ โ€” ์ •ํ•ด์ง„ ์–‘์‹์— ๋งž์ถฐ ํ•ต์‹ฌ ๋ฌธ์ œ, ์ ˆ๋Œ€ ๋ฐ”๊พธ๋ฉด ์•ˆ ๋˜๋Š” ์ œ์•ฝ, ํ•ต์‹ฌ ๊ฐœ๋…, ํ•ฉ๊ฒฉ ๊ธฐ์ค€(ํ•ด์•ผ ํ•จ/ํ•˜๋ฉด ์•ˆ ๋จ/ํ•ด๋„ ๋จ), ๋“œ๋Ÿฌ๋‚œ ๊ฐ€์ •, ๋ณ€๊ฒฝ ์ด๋ ฅ(v1.0.0)์„ ์ฑ„์›๋‹ˆ๋‹ค.
  3. ์‚ฌ์šฉ์ž ๊ฒ€ํ†  โ€” ๋งŒ๋“  ์ดˆ์•ˆ์„ ๋ณด์—ฌ์ฃผ๊ณ , ํ•ญ๋ชฉ๋ณ„๋กœ ์˜๊ฒฌ์„ ๋ฐ›์•„ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.
  4. ํŒŒ์ผ ์ €์žฅ โ€” ์ดˆ์•ˆ(DRAFT) ์ƒํƒœ๋กœ ๋ช…์„ธ ํŒŒ์ผ์„ ์ €์žฅํ•˜๊ณ , ์˜์‚ฌ๊ฒฐ์ • ์ผ์ง€ ํŒŒ์ผ์„ ์ƒˆ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

์ดํ›„ ๋ชจํ˜ธํ•จ ์ ๊ฒ€(/spec:ambiguity), ๋ฐ˜๋ก  ๊ฒ€ํ† (/spec:challenge), ๋‹จ์ˆœํ™”(/spec:simplify), ๊ตฌ์กฐ ๊ฒ€์ฆยท์ž ๊ธˆ(/spec:verify)์œผ๋กœ ์ด์–ด์ง‘๋‹ˆ๋‹ค.


โš™๏ธ ์ƒ์„ธ ์˜ต์…˜ยท์‹คํ–‰ ๋ช…์„ธ (๊ฐœ๋ฐœ์ž / AI ์—์ด์ „ํŠธ์šฉ)

Usage#

/spec:seed                           # Create from Socratic interview results
/spec:seed --from {discovery-file}   # Specify a specific interview result
/spec:seed --slug {project-slug}     # Specify project slug

Parameters#

ParameterDescriptionDefault
--fromSocratic interview result file pathLatest docs/socratic-discovery-*.md
--slugProject slugExtracted from interview results

Prerequisites#

  • Socratic interview completed (docs/socratic-discovery-{slug}.md exists)
  • Convergence >= 0.95

Execution Flow#

1. Load Interview Results#

  • Read docs/socratic-discovery-{slug}.md
  • Check convergence (if < 0.95, warn + suggest resuming interview)

2. Generate Seed Spec Draft#

Based on template (config/templates/seed-spec.md):

  • S1 Core Problem: Extract from Level 5 convergence results
  • S2 Immutable Constraints: Extract from Level 5 immutable constraint candidates
  • S3 Domain Entities: Structure core concepts identified in Levels 1-2
  • S4 Acceptance Boundaries: One flat table โ€” classify Level 2 assumptions by Type (Must/Must-Not/May), assign sequential AC-IDs (AC-01, AC-02, ...), and set each Status to PENDING
  • S5 Exposed Assumptions: Copy entire Level 2 assumption list
  • S6 Evolution Log: Record v1.0.0 initial version

3. User Review#

  • Present the generated draft to the user
  • Collect feedback per section
  • Apply revisions

4. Save File#

  • Save as docs/seed-spec-{slug}.md (Status: DRAFT)
  • Initialize docs/decision-log-{slug}.md

Output#

FilePath
Seed Spec (DRAFT)docs/seed-spec-{slug}.md
Decision Logdocs/decision-log-{slug}.md

Next Steps#

After Seed spec creation:

  1. /spec:ambiguity โ€” Calculate ambiguity score
  2. /spec:challenge โ€” Contrarian review
  3. /spec:simplify โ€” Simplifier complexity reduction
  4. /spec:verify โ€” Structural verification + lock
  • /spec:interview โ€” Socratic interview
  • /spec:verify โ€” Seed spec verification + lock
  • /spec:evolve โ€” Seed spec evolution

References#

  • references/SEED_SPEC_SCHEMA.md โ€” Schema definition
  • config/templates/seed-spec.md โ€” Template