@gaebalai/cdd
v0.1.1
Published
Install CDD prompts to AI coding assistants (Claude Code, Cursor, Windsurf, GitHub Copilot, OpenAI Codex)
Downloads
90
Maintainers
Readme
CDD(Conversation-Driven Development)
AI와의 대화에서 생성된 문맥을 잃지 않고 구현 단계로 전달하기 위한 개발 스타일
CDD란?
CDD(Conversation-Driven Development)는 AI와의 대화를 통해 만들어진 아이디어와 의사결정 사항을 구현 단계로 확실하게 전달하기 위한 개발 방법론입니다.
기존의 AI 지원 개발에서는 대화 중에 결정된 내용이 구현 단계에서 사라지거나, “왜 이런 구현이 되었는지”를 알 수 없게 되는 문제가 있었습니다.
CDD는 이러한 문제를 해결하기 위해 대화 → 구조화 → 구현 단계를 명확히 분리합니다.
설치
npx @gaebalai/cdd대화형으로 AI 에이전트와 설치 위치를 선택할 수 있습니다.
지원 AI 에이전트
| 에이전트 | 로컬 | 글로벌 | 명령어 |
|------------|:--------:|:----------:|-----------|
| Claude Code | ✅ | ✅ | cdd:verify 등 |
| OpenAI Codex | - | ✅ | cdd-verify 등 |
| GitHub Copilot | ✅ | - | cdd-verify.prompt 등 |
| Cursor | ✅ | ✅ | cdd-verify 등 |
| Windsurf | ✅ | ✅ | cdd-verify 등 |
설치 대상 디렉터리
- Claude Code:
.claude/commands/cdd/(로컬) 또는~/.claude/commands/cdd/(글로벌) - OpenAI Codex:
~/.codex/prompts/(글로벌 전용) - GitHub Copilot:
.github/prompts/(로컬 전용) - Cursor:
.cursor/commands/(로컬) 또는~/.cursor/commands/(글로벌) - Windsurf:
.windsurf/rules/(로컬) 또는~/.codeium/windsurf/global_workflows/(글로벌)
CDD 전체 구조 (3개의 Lane)
CDD는 3개의 Lane으로 구성됩니다.
1. Idea Lane (사고 · 브레인스토밍)
아이디어 도출과 요구사항 검토를 진행하는 단계입니다.
- 목적: 아이디어 도출 / 요구사항 검토 / 제약 조건 및 대안 논의
- 사용 AI: ChatGPT / Claude / Gemini 등 자유롭게 사용
- 특징:
- 고민해도 괜찮음
- 미확정 사항이 남아 있어도 괜찮음
- 사람이 충분히 납득할 때까지 생각하는 단계
2. Context Lane (문맥 정리)
대화 로그를 구현을 위한 형태로 번역·확정하는 단계입니다.
- 목적: 대화 로그에서 전제 조건, 판단 근거, 결정 사항을 추출 / 구현 가능한 형태로 구조화
- 사용 AI: Idea Lane에서 사용한 동일한 AI
- 산출물:
handoff.yml(Handoff Pack v1)
Idea Lane에서 대화한 동일한 채팅 내에서
prompts/context-lane.md 프롬프트를 실행하면
Handoff Pack v1을 생성할 수 있습니다.
미확정 사항이 남아 있는 경우 질문이 반환되며,
이에 응답함으로써 Handoff Pack v1을 완성합니다.
3. Code Lane (구현)
handoff.yml을 전제로 실제 코드를 작성하는 단계입니다.
- 목적: 구조화된 요구사항을 기반으로 구현 수행
- 사용 AI: Claude Code / Cursor 등
- 전제: 구현의 근거는
handoff.yml에 기재된 내용만 사용
Code Lane의 구현 방식
사전 준비: handoff.yml 검증
handoff.yml은 코드베이스 정보를 알지 못하므로,
verify 명령을 통해 구현 상의 문제를 사전에 검증합니다.
# Claude Code 사용 시
/cdd:verify
<Handoff Pack v1 붙여넣기>검증이 완료되면
.cdd/<slug>/handoff.yml 파일이 생성됩니다.
프로젝트 규모와 요구사항에 따라 아래 3가지 구현 방식 중 하나를 선택할 수 있습니다.
1. Direct Implementation (직접 구현)
handoff.yml을 기반으로 바로 구현하는 방식입니다.
/cdd:impl-direct <slug>- 적용 상황:
- 소~중규모 구현
- 수정 범위가 명확한 경우
- 특징:
- Intent Snapshot → Mini Plan → Implement → Verify 흐름
- 빠르게 구현을 시작할 수 있음
2. Task-Oriented Implementation (태스크 분해 구현)
handoff.yml 을 기반으로 태스크를 분해하여 순차적으로 구현합니다.
# 태스크 분해
/cdd:tasks <slug>
# 구현 (태스크 또는 페이즈 단위)
/cdd:impl <slug> <task_id> # 예: /cdd:impl user-auth 1-1
/cdd:impl <slug> <phase_id> # 예: /cdd:impl user-auth 1- 적용 상황:
- 대규모 구현
- 영향 범위가 넓은 기능
- 단계적으로 진행하고 싶은 경우
- 특징:
- Phase (2~5개)와 Task (1~4시간 단위)로 분해
tasks.yaml로 진행 상황 추적- 의존성을 고려한 구현 순서 관리
3. CDD-SDD Hybrid (사양 주도 개발 연계)
cc-sdd (Spec-Driven Development)와 연계하여
보다 엄격한 사양 기반 개발 프로세스를 적용하는 방식입니다.
cc-sdd에서 kiro:spec-init 실행 후
아래 명령을 실행합니다.
/cdd:cc-sdd <cdd:slug> <cc-sdd:slug>이후 cc-sdd에서 kiro:spec-requirements를 실행하여
requirements.md형식으로 맞춥니다.
- 적용 상황:
- 엄격한 사양 기반 개발
- 문서화와 프로세스를 중시하는 경우
- 특징:
handoff.yml→requirements.md변환- 요구사항 정의 → 설계 → 구현까지 일관된 흐름
라이선스
MIT License
기여
Issue 및 Pull Request를 환영합니다.
