LogoSkills

/cc-spec:interview — "왜?"를 5번 파고드는 심층 인터뷰

'왜'를 5단계로 되물어 숨은 전제를 끄집어내고, 가정 목록·모순 지도·한 문장으로 압축한 문제 정의를 담은 `docs/socratic-discovery-*.md` 를 남깁니다 — Seed spec 을 쓰기 전에.

/cc-spec:interview — "왜?"를 5번 파고드는 심층 인터뷰#

항목내용
실행 명령/cc-spec:interview
분류스펙 명확화
난이도●●● 높음

한마디로#

프로젝트를 시작하기 전에 "우리가 당연하게 여기는 것들이 정말 맞는지" 꼬리에 꼬리를 무는 질문으로 캐묻는 인터뷰입니다. 아이를 키우듯 "왜?"를 다섯 번 반복해서, 미처 말하지 않은 숨은 전제를 끄집어냅니다.

누가·언제 쓰나요#

  • 새 프로젝트나 기능을 시작하기 전, 우리가 무의식적으로 깔고 있는 가정을 드러내고 싶을 때
  • "사용자는 당연히 이걸 원할 거야" 같은 검증 안 된 믿음이 위험해 보일 때
  • 본격적인 기획에 들어가기 전, 핵심 문제를 한 문장으로 또렷하게 정리하고 싶을 때

무엇을 해주나요#

인터뷰가 끝나면 docs/socratic-discovery-(프로젝트이름).md 파일 한 개가 만들어집니다. 그 안에는:

  • 가정 목록 — 우리가 당연하게 여겼던 전제들을 모아 정리
  • 모순 지도(contradiction map) — 서로 동시에 참일 수 없는 가정들을 짚어냄
  • 정제된 문제 정의 — 군더더기 가정 없이, 핵심 문제를 한 문장으로 압축

작업이 끝나면 다음 단계로 Seed 스펙 만들기(/cc-spec:seed) 를 추천합니다.

어떻게 쓰나요#

/cc-spec:interview                      # 새 인터뷰 시작
/cc-spec:interview --resume {slug}      # 중단했던 인터뷰 이어서 진행
/cc-spec:interview --depth 3            # 지정한 깊이까지만 진행 (1~5)
  • --resume: 예전에 하던 인터뷰를 이어서 합니다(프로젝트 식별자 slug 지정).
  • --depth: 질문을 어디까지 깊게 파고들지 정합니다(1~5, 기본값 5).
  • --slug: 프로젝트 식별자를 직접 지정합니다(미지정 시 프로젝트 이름에서 자동 생성).

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

질문이 점점 깊어지는 5단계로 진행되고, 마지막에 한 문서로 정리합니다.

  1. 표면(Level 1) — "이 프로젝트가 풀려는 문제는?", "핵심 사용자는 누구?", "성공하면 사용자의 삶이 어떻게 바뀌나?" 같은 기본 질문을 합니다.
  2. 가정(Level 2) — 앞 답변 속에 숨은 전제를 끄집어내 "이렇게 말한 건 ○○을 전제로 한 건데, 맞나요?"라고 되묻습니다(최소 3개까지).
  3. 모순(Level 3) — 가정들을 서로 맞붙여 "A 가정과 C 가정이 동시에 참일 수 있나요?"를 확인하고, 충돌이 있으면 해결책을 묻습니다.
  4. 경계(Level 4) — 각 가정이 틀렸을 경우의 시나리오를 따져봅니다. "이 가정이 틀리면 프로젝트에 어떤 영향이? 대안은?"
  5. 수렴(Level 5) — 지금까지 논의를 바탕으로 "가정 없이 핵심 문제를 한 문장으로" 정의하게 하고, 답이 충분히 모였는지(수렴도)를 점검합니다.

마지막으로 가정 목록·모순 지도·정제된 문제 정의를 docs/socratic-discovery-(프로젝트이름).md 한 파일로 합칩니다. 수렴도가 0.95 이상이면 인터뷰를 마치고 Seed 스펙 작성을 제안하며, 그보다 낮으면 답하지 않은 항목에 대해 후속 질문을 던집니다.


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

Usage#

/cc-spec:interview                      # Start a new interview
/cc-spec:interview --resume {slug}      # Resume an existing interview
/cc-spec:interview --depth 3            # Run up to a specific depth only

Parameters#

ParameterDescriptionDefault
--resumeResume existing interview (slug)None (new interview)
--depthMaximum question depth (1-5)5
--slugProject slugAuto-generated from project name

Execution Flow#

1. Initialization#

  • Check for existing interview file (docs/socratic-discovery-{slug}.md)
  • If none exists, start new interview; if exists, confirm whether to resume

2. Level 1: Surface#

Ask the user sequentially:

  • "What problem is this project trying to solve?"
  • "Who is the core user?"
  • "If this project succeeds, how does the user's life change?"

Provide interim summary upon Level 1 completion.

3. Level 2: Assumptions#

Extract implicit assumptions from Level 1 responses and confirm with the user:

  • "You said '{user statement}', which presupposes {extracted assumption}. Is that correct?"
  • Repeat until at least 3 assumptions are exposed

4. Level 3: Contradictions#

Cross-validate between assumptions:

  • "Can assumption A-01 ('{assumption}') and A-03 ('{assumption}') both be true simultaneously?"
  • Ask for resolution methods for discovered contradictions

5. Level 4: Boundaries#

Failure scenarios for each assumption:

  • "If '{assumption}' turns out to be wrong, what impact does it have on the project?"
  • "Are there alternatives or mitigation approaches?"

6. Level 5: Convergence#

Final refinement:

  • "Based on our discussion so far, please define the core problem in one sentence without any assumptions."
  • Check convergence (unanswered questions / total questions)

7. Report Generation#

  • Generate docs/socratic-discovery-{slug}.md
  • Include assumption list, contradiction map, refined problem definition

Convergence Assessment#

convergence = answered questions / generated questions
  • = 0.95: Interview complete → Suggest Seed spec creation

  • < 0.95: Follow-up questions on unanswered items

Output#

FilePath
Interview Reportdocs/socratic-discovery-{slug}.md

Next Steps#

After interview completion → Create Seed spec with /cc-spec:seed

  • /cc-spec:seed — Create Seed spec
  • /cc-spec:score — Calculate ambiguity score

References#

  • agents/socratic-interviewer.md — Detailed agent definition
  • config/thresholds.yaml — Convergence thresholds