U-MAKER Plugin v3.4.4
PDCA 기반 SSoT(Single Source of Truth) Claude Code 플러그인.
기획 자료를 넣으면, 분석 → 설계 → 구현 → 검증까지 자동으로 수행합니다.
1. 프로젝트 개요
U-MAKER는 Claude Code CLI 위에서 동작하는 PDCA(Plan-Design-Dev-Check-Ship) 기반 소프트웨어 개발 자동화 플러그인입니다. 원시 기획 자료(RFP, 회의록, 와이어프레임 등)를 투입하면, AI 에이전트가 분석 → 설계 → 코드 생성 → 테스트까지 전 과정을 자동 수행하며, 모든 산출물은 SSoT(Single Source of Truth) 원칙으로 일관되게 관리됩니다.
/u-plan, /u-design, /u-check, /u-reverse에서 HTML 출력 단계 삭제. HTML 생성은 /u-output 커맨드로만 가능. Phase 선행조건 자동 캐스케이드: /u-dev 실행 시 Design 문서 없으면 자동으로 /u-design 호출, /u-design 실행 시 Plan 문서 없으면 자동으로 /u-plan 호출.
2. 설치 방법
터미널에서 아래 명령 한 줄로 설치할 수 있습니다.
curl -fsSL https://raw.githubusercontent.com/upleat-ax/u-maker-plugin/main/install.sh | bash
Claude Code CLI 설치 필요
claude plugin add upleat-ax/u-maker-plugin
./install.sh --uninstall
install.ps1) 또는 install.bat을 사용하세요.
3. 파이프라인
U-MAKER의 데이터 흐름은 4단계 파이프라인으로 구성됩니다. 원시 자료가 정제, 분석, 산출물로 변환됩니다.
원시 자료"] -->|"digest-engine
분석 + 정제"| B["data/digest/
정제 JSON"] B -->|"doc-engine
문서 생성"| C["docs/{app}/
SSoT 산출물"] C -->|"html-engine
HTML 변환"| D["output/{app}/
HTML 리포트"] style A fill:#dbeafe,stroke:#3b82f6,stroke-width:2px,color:#1e40af style B fill:#d1fae5,stroke:#10b981,stroke-width:2px,color:#065f46 style C fill:#fef3c7,stroke:#f59e0b,stroke-width:2px,color:#92400e style D fill:#ede9fe,stroke:#8b5cf6,stroke-width:2px,color:#5b21b6
RFP, 회의록, 와이어프레임 등 원시 입력 파일
정제된 분석 JSON. 해시 기반 변경 감지
SSoT 문서 (.md + .json 쌍). Plan/Design/Check
HTML 산출물. Mermaid, SVG, Tailwind CSS
4. .u-maker/ 폴더 구조
프로젝트 루트에 생성되는 .u-maker/ 디렉토리 구조입니다. /u-plan 최초 실행 시 자동 생성됩니다.
.u-maker/
├── u-maker.config.json # 프로젝트 설정
├── data/
│ ├── dropzone/ # 원시 입력 파일 (RFP, 회의록 등)
│ ├── digest/ # 정제된 분석 JSON
│ │ └── _index.json # 해시 인덱스 (변경 감지)
│ └── links.json # 글로벌 의존성 그래프
├── docs/
│ └── {app}/
│ ├── plan/ # SRS + IA (.md + .json)
│ ├── design/ # ERD + API + Screens + Design System
│ └── check/ # Test Cases + Test Results
├── output/
│ └── {app}/
│ ├── index.html # 산출물 내비게이션 인덱스
│ ├── plan/ # Plan HTML (srs.html, ia.html)
│ ├── design/ # Design HTML (erd, api, screens, ds)
│ └── check/ # Check HTML (testcases, results)
├── reports/
│ └── {YYYY-MM-DD}/ # Daily Report HTML
│ └── daily-report.html
└── .state/
└── loop-state.json # 런타임 상태 (현재 Phase, Loop 카운트)
5. 13개 Skills
사용자가 직접 호출하는 슬래시 커맨드입니다. 각 스킬은 특정 Phase를 담당하거나 보조 기능을 제공합니다.
| Skill | Phase | 설명 | 주요 산출물 |
|---|---|---|---|
| /u-plan | Plan | 원시 자료 분석, SRS + IA 생성 | srs.md, ia.md + JSON |
| /u-design | Design | ERD, API, Screen, Design System 생성 | erd.md, api.md, screens.md, design-system.md |
| /u-dev | Dev | FE + BE + DB 코드 생성 | components, routes, migrations |
| /u-check (alias: /u-qa) | Check | TC 설계, 테스트 실행, 결과 기록 | testcases.md, test-results.md |
| /u-output | Output | 기존 docs/ 산출물을 독립 HTML로 변환. 도메인 분할 및 --diagram 모드 지원 |
output/{app}/*.html |
| /u-reverse | Reverse | 기존 코드에서 SSoT 역생성. Bottom-up: Code → Design (ERD, API, Screens, DS) → Plan (SRS, IA) | erd.md, api.md, screens.md, srs.md, ia.md |
| /u-wireframe | Design | screens.json 기반 화면별 HTML 와이어프레임 생성 | wireframes/{SCR-ID}.html |
| /u-loop | All | 무인 PDCA 자동 실행 루프 (각 Phase Gatekeeper 검증) | loop-state.json |
| /u-engine | Internal | 공유 엔진 (doc, html, dep, digest, router) | 내부 인프라 |
| /u-discuss | Any | 구조화된 토론 세션 (brainstorm, review, decision 등) | 세션 기록, 액션 아이템 |
| /u-git-pr | Any | Git PR/MR 자동 생성 | Pull Request |
| /u-init | Setup | 프로젝트 초기화, .u-maker/ 디렉토리 구조 생성 | u-maker.config.json |
| /u-meeting-report | Reporting | 회의록 기반 리포트 생성 | meeting-report.html |
6. 7개 Agents
각 에이전트는 특정 역할을 전담합니다. PM이 모든 커맨드를 라우팅하고, 나머지 에이전트가 Phase별 작업을 수행합니다.
u-agent-pm
Project Manager
모든 /u-* 커맨드의 단일 진입점. 커맨드 라우팅, Phase 상태 관리, Loop 제어를 담당합니다. 직접 문서를 생성하거나 코드를 작성하지 않습니다.
u-agent-plan
Plan Phase
dropzone 원시 자료를 분석하여 digest를 생성하고, SRS(소프트웨어 요구사항 명세서) + IA(정보 아키텍처)를 산출합니다.
u-agent-design
Design Phase
SRS + IA를 기반으로 ERD, API 계약서, Screen 명세, Design System 4개 설계 문서를 생성합니다.
u-agent-dev
Dev Phase
설계 명세(ERD, API, Screens, Design System)를 기반으로 FE 컴포넌트, BE 라우트, DB 스키마 코드를 생성합니다. Spec-Sync 100% 커버리지 검증.
u-agent-qa
Check Phase
SRS의 Feature(FT) 항목으로부터 테스트 케이스를 설계하고, 6가지 TC 유형(unit, integration, e2e, accessibility, performance, security)으로 검증합니다.
u-agent-gatekeeper
Quality Gate
N개 검증 항목(기본 5, 최대 11)으로 산출물 품질을 평가합니다. --loop [N]으로 검증 항목 수를 지정합니다. 매 검증마다 전체 스코어카드를 화면에 출력. 평균 95점 이상이어야 통과. 미달 시 개선 항목을 생성하여 최대 3회 반복합니다.
u-agent-report
Daily Report
프로젝트 상태, 문서 진행률, Gatekeeper 점수, 일일 변경사항을 집계하여 Daily Report HTML을 생성합니다.
7. Gatekeeper 검증항목 (기본 5개, 최대 11개)
모든 Phase 산출물은 Gatekeeper 기준으로 검증됩니다. --loop [N]으로 검증 항목 수를 지정하며(기본 5개, 최대 11개), 각 항목은 0~100점으로 채점되고 평균 95점 이상이어야 다음 Phase로 진행합니다.
--loop [N] 옵션 사용 시, 상위 N개 검증 항목(기본 5)으로 평가하며, 미달 항목에 대해 자동 개선을 수행합니다. 최대 3회 반복 후에도 미달이면 사용자에게 수동 개입을 요청합니다.
| # | ID | 검증 항목 | 한글명 | 설명 |
|---|---|---|---|---|
| 1 | GK-01 | Completeness | 완전성 | 필수 섹션/항목이 빠짐없이 존재하는지 확인 |
| 2 | GK-02 | Accuracy | 정확성 | 내용이 원본 digest 및 상위 문서와 일치하는지 확인 |
| 3 | GK-03 | Consistency | 일관성 | ID, 용어, 수치가 문서 간 일관되는지 확인 |
| 4 | GK-04 | Traceability | 추적성 | FR→US→FT→TC 체인이 빈틈없이 완성되는지 확인 |
| 5 | GK-05 | TOC Quality | TOC 적정성 | 목차의 논리적 구성, 적절한 깊이, 누락 항목 확인 |
| 6 | GK-06 | Content Composition | 내용 구성 | 논리적 구조, 자연스러운 흐름, 핵심 정보 배치 확인 |
| 7 | GK-07 | Visual Adequacy | 시각 표현 적정성 | 테이블, 리스트, 코드 블록 등 적절한 시각 요소 사용 확인 |
| 8 | GK-08 | Diagram Fitness | 다이어그램 적정성 | 다이어그램 유형이 적절하고 SVG가 올바르게 렌더링되는지 확인 |
| 9 | GK-09 | Mermaid Integrity | Mermaid 무결성 | Mermaid 문법 오류 없음, 노드/엣지 완전성 확인 |
| 10 | GK-10 | JSON Sync | JSON 동기화 | .md와 .json의 항목 수, ID, 상태가 동기화되는지 확인 |
| 11 | GK-11 | Cross-Reference | 교차참조 | links.json과 실제 문서 참조가 일치하는지 확인 |
스코어카드 출력 (필수)
모든 Phase 검증 시 선택된 N개 항목(기본 5, --loop 11로 전체 가능) 스코어카드가 반드시 화면에 표시됩니다. 생략이나 축약 없이 매번 전체 결과를 출력합니다.
┌─────────────────────────────────────────────────────────────┐ │ GATEKEEPER REPORT — Plan Phase (myapp) │ ├─────┬──────────────────────┬───────┬────────┬───────────────┤ │ # │ Criteria │ Score │ Status │ Findings │ ├─────┼──────────────────────┼───────┼────────┼───────────────┤ │ 01 │ Completeness 완전성 │ 98 │ PASS │ — │ │ 02 │ Accuracy 정확성 │ 95 │ PASS │ — │ │ 03 │ Consistency 일관성 │ 97 │ PASS │ — │ │ 04 │ Traceability 추적성 │ 88 │ FAIL │ FR-030 orphan │ │ 05 │ TOC Quality TOC │ 96 │ PASS │ — │ │ 06 │ Composition 구성 │ 95 │ PASS │ — │ │ 07 │ Visual 시각 │ 99 │ PASS │ — │ │ 08 │ Diagram 다이어 │ 93 │ FAIL │ SVG mismatch │ │ 09 │ Mermaid 무결성 │ 90 │ FAIL │ syntax L:45 │ │ 10 │ JSON Sync 동기화 │ 100 │ PASS │ — │ │ 11 │ Cross-Ref 교차 │ 96 │ PASS │ — │ ├─────┼──────────────────────┼───────┼────────┼───────────────┤ │ AVG │ │ 95.2 │ PASS │ │ └─────┴──────────────────────┴───────┴────────┴───────────────┘ Attempt: 1/3 · Threshold: 95 · Result: PASS → advance to Design
최종 실패 (3/3):
LOOP HALTED 경고와 함께 수동 개입을 요청합니다.
8. 커맨드 레퍼런스
모든 커맨드는 /u-{name} 형태로 호출됩니다. 공통 옵션은 아래와 같습니다.
| 옵션 | 기본값 | 설명 |
|---|---|---|
| --auto | ON | 질문 없이 자동 진행. -i로 대화형 전환 |
| --loop [N] | OFF | Gatekeeper 검증 (N개 항목, 기본 5, 최대 11). 자동 개선 반복 (최대 3회) |
| --app {name} | default | 멀티앱 프로젝트에서 대상 앱 지정 |
| --from / --to | — | /u-loop 전용. Phase 범위 지정 (plan/design/dev/check/ship) |
| --diagram | svg | 다이어그램 렌더링 모드: svg (인라인 SVG, 기본값) | mermaid (Mermaid CDN, 라이트 모드 전용) | all (SVG 우선 + UML Mermaid 폴백) |
커맨드 목록
| 커맨드 | 구문 | 설명 |
|---|---|---|
| /u-plan | /u-plan [--auto] [--loop [N]] [--app name] | Plan Phase: dropzone 분석 → SRS + IA 생성 |
| /u-design | /u-design [--auto] [--loop [N]] [--app name] | Design Phase: ERD + API + Screens + Design System 생성 |
| /u-dev | /u-dev [--auto] [--loop [N]] [--app name] [--only fe|be|db] | Dev Phase: FE + BE + DB 코드 생성 |
| /u-check (= /u-qa) | /u-check [--auto] [--loop [N]] [--app name] | Check Phase: TC 설계 + 테스트 실행 + 결과 기록 |
| /u-output | /u-output [--app name] [--diagram svg|mermaid|all] [--only doc-type] | 기존 docs/ 산출물을 독립 HTML로 변환. 도메인 분할 파이프라인 지원 |
| /u-discuss | /u-discuss {type} [topic] | 구조화된 토론 세션 (brainstorm / review / decision / workshop / retro) |
| /u-git-pr | /u-git-pr [--base branch] | Git PR/MR 자동 생성 |
| /u-wireframe | /u-wireframe [--app name] [--screen SCR-ID] [--all] | 화면별 HTML 와이어프레임 생성 (6-section: 앱 프레임 + 어노테이션, 컴포넌트 명세, 2-column SVG 다이어그램, 팝업/모달/BottomSheet UI) |
| /u-loop | /u-loop [--app name] [--from phase] [--to phase] [--criteria N] [--dry-run] | 무인 PDCA 자동 실행 루프 (Plan → Design → Dev → Check → Ship) |
| /u-reverse | /u-reverse [--app name] [--src path] [--db path] [--api path] [--pages path] | 기존 코드 역분석 → SSoT 문서 생성 (Code → Design → Plan) |
| /u-init | /u-init [--app name] | 프로젝트 초기화, .u-maker/ 디렉토리 및 config 생성 |
| /u-meeting-report | /u-meeting-report [topic] | 회의록 기반 리포트 생성 |
9. HTML 산출물
모든 SSoT 문서(.md)는 /u-output 커맨드를 통해 HTML로 변환되어 output/{app}/ 디렉토리에 저장됩니다.
Phase 스킬(/u-plan, /u-design, /u-check)은 문서(.md + .json)만 생성하며, HTML 출력은 /u-output으로만 가능합니다.
SVG-first 접근으로 인라인 SVG 다이어그램을 기본 사용하며, --diagram 옵션으로 렌더링 모드를 선택할 수 있습니다.
대형 문서(SRS, ERD, API, Screens, TestCases)는 도메인 분할 파이프라인으로 섹션별 개별 HTML을 생성합니다.
output/{app}/
├── index.html # 사이드바 내비게이션 인덱스
├── plan/
│ ├── srs.html # 요구사항 명세서
│ └── ia.html # 정보 아키텍처
├── design/
│ ├── erd.html # ER 다이어그램 (Mermaid erDiagram)
│ ├── api.html # API 계약서 (Mermaid classDiagram)
│ ├── screens.html # Screen 명세
│ ├── design-system.html # Design System (토큰 스워치)
│ └── wireframes/
│ ├── index.html # 와이어프레임 브라우저
│ └── {SCR-ID}.html # 화면별 와이어프레임
└── check/
├── testcases.html # 테스트 케이스 (필터링 테이블)
└── test-results.html # 테스트 결과 (커버리지 매트릭스)
--diagram 렌더링 모드
| 모드 | 다이어그램 렌더링 | Mermaid CDN |
|---|---|---|
| svg (기본값) | 모든 다이어그램을 인라인 SVG로 렌더링 | 미로드 |
| mermaid | 모든 다이어그램을 Mermaid CDN으로 렌더링 (항상 라이트 모드) | 로드 |
| all | SVG 우선 + UML(erDiagram, classDiagram, sequenceDiagram)만 Mermaid 폴백 | UML만 로드 |
HTML 산출물 특징
기본적으로 모든 다이어그램을 인라인 SVG로 렌더링. Mermaid 스타일에 구애받지 않는 자유형 SVG 표현 (UML 박스, 카드형 노드, 타임라인 등). 외부 의존성 없는 자체 완결형 HTML. Mermaid는 UML 폴백 전용
대형 문서(SRS, ERD, API, Screens, TestCases)를 섹션별로 분할하여 개별 HTML 파일로 생성. 성능과 탐색성 향상
Mermaid CDN 사용 시 항상 theme: 'default' (라이트 모드)로 렌더링. 다크 테마로 전환하지 않음
CDN 기반 유틸리티 클래스로 일관된 스타일링. 반응형 디자인 지원
기존 docs/ 산출물을 언제든 HTML로 변환. Phase 완료 없이도 독립적으로 실행 가능
index.html에서 모든 산출물을 탐색할 수 있는 통합 내비게이션 제공
10. 무인 자동 실행 (u-loop)
/u-loop --app myapp 커맨드로 전체 PDCA 파이프라인을 자동 실행합니다.
각 Phase마다 Gatekeeper가 검증하고, 미달 시 자동 개선합니다.
SRS + IA"] -->|"Gate ≥ 95"| D["Design
ERD+API+Screens+DS"] D -->|"Gate ≥ 95"| V["Dev
FE+BE+DB Code"] V -->|"Gate ≥ 95"| C["Check
TC + Results"] C -->|"Gate ≥ 95"| S["Ship
Package"] style P fill:#dbeafe,stroke:#3b82f6,stroke-width:2px,color:#1e40af style D fill:#d1fae5,stroke:#10b981,stroke-width:2px,color:#065f46 style V fill:#ffedd5,stroke:#f97316,stroke-width:2px,color:#9a3412 style C fill:#fef3c7,stroke:#f59e0b,stroke-width:2px,color:#92400e style S fill:#ede9fe,stroke:#8b5cf6,stroke-width:2px,color:#5b21b6
주요 기능
각 Phase에서 --auto --loop {N} 적용 (기본 5개 검증 항목). avg < 95이면 자동 재시도 (최대 3회)
중단 시 .state/loop-state.json에서 마지막 미완료 Phase부터 재개
--from design --to check로 특정 Phase 구간만 실행
--dry-run으로 실행 계획만 확인 (실제 실행 없음)
실행 예시:
/u-loop --app myapp
========================================
u-loop Complete: myapp
========================================
Phase | Score | Attempts | Time
Plan | 97.2 | 1 | 2m 15s
Design | 95.8 | 2 | 4m 30s
Dev | 96.1 | 1 | 3m 45s
Check | 98.0 | 1 | 1m 50s
Ship | 99.0 | 1 | 0m 30s
========================================
Status: ALL PHASES PASSED
========================================