claude-symphony 0.0.1 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. package/README.md +16 -12
  2. package/assets/claude_symphony.webp +0 -0
  3. package/assets/claude_symphony_ascii.txt +8 -0
  4. package/bin/create.js +80 -69
  5. package/package.json +3 -2
  6. package/template/.claude/commands/benchmark.md +32 -32
  7. package/template/.claude/commands/brainstorm.md +33 -33
  8. package/template/.claude/commands/checkpoint.md +42 -42
  9. package/template/.claude/commands/codex.md +52 -52
  10. package/template/.claude/commands/collaborate.md +47 -47
  11. package/template/.claude/commands/context.md +77 -77
  12. package/template/.claude/commands/deploy.md +50 -50
  13. package/template/.claude/commands/fork.md +46 -46
  14. package/template/.claude/commands/gemini.md +43 -43
  15. package/template/.claude/commands/handoff.md +42 -42
  16. package/template/.claude/commands/implement.md +42 -42
  17. package/template/.claude/commands/init-project.md +25 -25
  18. package/template/.claude/commands/next.md +67 -67
  19. package/template/.claude/commands/planning.md +38 -38
  20. package/template/.claude/commands/qa.md +47 -47
  21. package/template/.claude/commands/refactor.md +50 -50
  22. package/template/.claude/commands/research.md +31 -31
  23. package/template/.claude/commands/restore.md +53 -53
  24. package/template/.claude/commands/run-stage.md +45 -45
  25. package/template/.claude/commands/stages.md +49 -49
  26. package/template/.claude/commands/status.md +41 -41
  27. package/template/.claude/commands/tasks.md +33 -33
  28. package/template/.claude/commands/test.md +45 -45
  29. package/template/.claude/commands/ui-ux.md +31 -31
  30. package/template/.claude/commands/validate.md +81 -81
  31. package/template/.claude/hooks/ai-selector.sh +39 -39
  32. package/template/.claude/hooks/auto-checkpoint.sh +30 -30
  33. package/template/.claude/hooks/output-validator.sh +45 -45
  34. package/template/.claude/hooks/post-stage.sh +28 -28
  35. package/template/.claude/hooks/pre-stage.sh +47 -47
  36. package/template/.claude/hooks/session-start.sh +27 -27
  37. package/template/.claude/hooks/statusline.sh +24 -24
  38. package/template/.claude/hooks/stop.sh +26 -26
  39. package/template/.claude/settings.json +32 -32
  40. package/template/.claude/skills/ai-collaboration/README.md +31 -31
  41. package/template/.claude/skills/ai-collaboration/debate.md +66 -66
  42. package/template/.claude/skills/ai-collaboration/parallel.md +34 -34
  43. package/template/.claude/skills/ai-collaboration/prompts/CLAUDE.md +59 -63
  44. package/template/.claude/skills/auto-checkpoint/README.md +46 -46
  45. package/template/.claude/skills/auto-checkpoint/prompts/CLAUDE.md +68 -72
  46. package/template/.claude/skills/auto-checkpoint/rollback.md +95 -95
  47. package/template/.claude/skills/auto-checkpoint/trigger.md +37 -37
  48. package/template/.claude/skills/context-compression/README.md +69 -69
  49. package/template/.claude/skills/context-compression/analyze.md +74 -74
  50. package/template/.claude/skills/context-compression/compress.md +103 -103
  51. package/template/.claude/skills/context-compression/prompts/compression.md +78 -78
  52. package/template/.claude/skills/output-validator/README.md +33 -33
  53. package/template/.claude/skills/output-validator/prompts/CLAUDE.md +74 -78
  54. package/template/.claude/skills/output-validator/validate.md +76 -76
  55. package/template/.claude/skills/smart-handoff/README.md +35 -35
  56. package/template/.claude/skills/smart-handoff/extract.md +42 -42
  57. package/template/.claude/skills/smart-handoff/prompts/CLAUDE.md +52 -54
  58. package/template/.claude/skills/smart-handoff/summarize.md +55 -55
  59. package/template/.claude/skills/stage-transition/README.md +50 -50
  60. package/template/.claude/skills/stage-transition/handoff-gen.md +89 -89
  61. package/template/.claude/skills/stage-transition/prompts/transition.md +74 -74
  62. package/template/.claude/skills/stage-transition/validate.md +41 -41
  63. package/template/CLAUDE.md +334 -335
  64. package/template/config/ai_benchmarking.yaml +22 -22
  65. package/template/config/ai_collaboration.yaml +18 -18
  66. package/template/config/ai_logging.yaml +50 -50
  67. package/template/config/auto_checkpoint.yaml +32 -32
  68. package/template/config/context.yaml +20 -20
  69. package/template/config/git.yaml +51 -51
  70. package/template/config/handoff_intelligence.yaml +23 -23
  71. package/template/config/mcp_fallbacks.yaml +71 -71
  72. package/template/config/memory_integration.yaml +23 -23
  73. package/template/config/model_enforcement.yaml +53 -53
  74. package/template/config/models.yaml +24 -24
  75. package/template/config/output_validation.yaml +44 -44
  76. package/template/config/pipeline.yaml +25 -25
  77. package/template/config/pipeline_forking.yaml +40 -40
  78. package/template/config/qa_logging.yaml +67 -67
  79. package/template/config/smart_rollback.yaml +48 -48
  80. package/template/config/stage_personas.yaml +154 -154
  81. package/template/config/workflow.yaml +16 -16
  82. package/template/scripts/ai-benchmark.sh +41 -41
  83. package/template/scripts/codex-wrapper.sh +32 -32
  84. package/template/scripts/context-manager.sh +136 -136
  85. package/template/scripts/create-checkpoint.sh +34 -34
  86. package/template/scripts/gemini-wrapper.sh +31 -31
  87. package/template/scripts/init-project.sh +40 -40
  88. package/template/scripts/list-stages.sh +30 -30
  89. package/template/scripts/next-stage.sh +67 -67
  90. package/template/scripts/output-validate.sh +2 -2
  91. package/template/scripts/pipeline-fork.sh +68 -68
  92. package/template/scripts/pre-run-check.sh +84 -84
  93. package/template/scripts/restore-checkpoint.sh +50 -50
  94. package/template/scripts/run-stage.sh +44 -44
  95. package/template/scripts/show-status.sh +30 -30
  96. package/template/scripts/smart-handoff.sh +70 -70
  97. package/template/stages/01-brainstorm/CLAUDE.md +70 -74
  98. package/template/stages/01-brainstorm/README.md +54 -54
  99. package/template/stages/01-brainstorm/config.yaml +18 -18
  100. package/template/stages/01-brainstorm/prompts/collaboration.md +24 -24
  101. package/template/stages/01-brainstorm/prompts/ideation.md +41 -41
  102. package/template/stages/01-brainstorm/prompts/persona.md +50 -50
  103. package/template/stages/01-brainstorm/prompts/requirements.md +55 -55
  104. package/template/stages/01-brainstorm/prompts/validation.md +28 -28
  105. package/template/stages/01-brainstorm/templates/ideas.md +47 -47
  106. package/template/stages/01-brainstorm/templates/requirements_analysis.md +61 -61
  107. package/template/stages/02-research/CLAUDE.md +72 -76
  108. package/template/stages/02-research/config.yaml +12 -12
  109. package/template/stages/02-research/prompts/collaboration.md +29 -29
  110. package/template/stages/02-research/prompts/feasibility.md +38 -38
  111. package/template/stages/02-research/prompts/market_analysis.md +29 -29
  112. package/template/stages/02-research/prompts/tech_stack.md +34 -34
  113. package/template/stages/02-research/prompts/validation.md +29 -29
  114. package/template/stages/03-planning/CLAUDE.md +88 -92
  115. package/template/stages/03-planning/config.yaml +10 -10
  116. package/template/stages/03-planning/prompts/architecture.md +43 -43
  117. package/template/stages/03-planning/prompts/collaboration.md +34 -34
  118. package/template/stages/03-planning/prompts/validation.md +34 -34
  119. package/template/stages/04-ui-ux/CLAUDE.md +68 -72
  120. package/template/stages/04-ui-ux/config.yaml +5 -5
  121. package/template/stages/04-ui-ux/prompts/collaboration.md +35 -35
  122. package/template/stages/04-ui-ux/prompts/validation.md +30 -30
  123. package/template/stages/05-task-management/CLAUDE.md +81 -85
  124. package/template/stages/05-task-management/config.yaml +17 -17
  125. package/template/stages/05-task-management/prompts/collaboration.md +30 -30
  126. package/template/stages/05-task-management/prompts/validation.md +33 -33
  127. package/template/stages/05-task-management/templates/notion_integration.md +70 -70
  128. package/template/stages/05-task-management/templates/parallel_groups.yaml +64 -64
  129. package/template/stages/05-task-management/templates/task_schema.yaml +33 -33
  130. package/template/stages/06-implementation/CLAUDE.md +117 -121
  131. package/template/stages/06-implementation/config.yaml +10 -10
  132. package/template/stages/06-implementation/prompts/collaboration.md +29 -29
  133. package/template/stages/06-implementation/prompts/validation.md +36 -36
  134. package/template/stages/07-refactoring/CLAUDE.md +120 -124
  135. package/template/stages/07-refactoring/config.yaml +11 -11
  136. package/template/stages/07-refactoring/prompts/collaboration.md +36 -36
  137. package/template/stages/07-refactoring/prompts/validation.md +40 -40
  138. package/template/stages/08-qa/CLAUDE.md +80 -84
  139. package/template/stages/08-qa/config.yaml +7 -7
  140. package/template/stages/08-qa/prompts/collaboration.md +34 -34
  141. package/template/stages/08-qa/prompts/validation.md +41 -41
  142. package/template/stages/09-testing/CLAUDE.md +86 -90
  143. package/template/stages/09-testing/config.yaml +10 -10
  144. package/template/stages/09-testing/prompts/collaboration.md +38 -38
  145. package/template/stages/09-testing/prompts/validation.md +41 -41
  146. package/template/stages/10-deployment/CLAUDE.md +86 -90
  147. package/template/stages/10-deployment/config.yaml +11 -11
  148. package/template/stages/10-deployment/prompts/collaboration.md +37 -37
  149. package/template/stages/10-deployment/prompts/validation.md +54 -54
  150. package/template/stages/10-deployment/templates/github-actions-cd.yaml +1 -1
package/README.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # claude-symphony
2
2
 
3
+ <p align="center">
4
+ <img src="./assets/claude_symphony.webp" alt="Claude Symphony Logo" width="400">
5
+ </p>
6
+
3
7
  Multi-AI Orchestration Framework for Software Development
4
8
 
5
9
  [![CI](https://github.com/znehraks/claude-symphony/actions/workflows/ci.yml/badge.svg)](https://github.com/znehraks/claude-symphony/actions/workflows/ci.yml)
@@ -107,22 +111,22 @@ cd my-saas-app
107
111
  Edit `stages/01-brainstorm/inputs/project_brief.md`:
108
112
 
109
113
  ```markdown
110
- ## 프로젝트 이름
114
+ ## Project Name
111
115
  my-saas-app
112
116
 
113
- ## 줄 설명
114
- [프로젝트를 줄로 설명해주세요]
117
+ ## One-line Description
118
+ [Describe your project in one line]
115
119
 
116
- ## 문제 정의
117
- [해결하려는 문제는 무엇인가요?]
120
+ ## Problem Definition
121
+ [What problem are you trying to solve?]
118
122
 
119
- ## 타겟 사용자
120
- [주요 사용자는 누구인가요?]
123
+ ## Target Users
124
+ [Who are the main users?]
121
125
 
122
- ## 핵심 기능 (초안)
123
- 1. [기능 1]
124
- 2. [기능 2]
125
- 3. [기능 3]
126
+ ## Core Features (Draft)
127
+ 1. [Feature 1]
128
+ 2. [Feature 2]
129
+ 3. [Feature 3]
126
130
  ```
127
131
 
128
132
  ## Packages
@@ -212,7 +216,7 @@ context:
212
216
  task_save_frequency: 5
213
217
 
214
218
  git:
215
- commit_language: "Korean"
219
+ commit_language: "English"
216
220
  auto_commit: true
217
221
  ```
218
222
 
Binary file
@@ -0,0 +1,8 @@
1
+
2
+ ______ __ __ _____ __
3
+ / ____/ / / ____ _ __ __ ____/ / ___ / ___/ __ __ ____ ___ ____ / /_ ____ ____ __ __
4
+ / / / / / __ `// / / // __ / / _ \ \__ \ / / / // __ `__ \ / __ \ / __ \ / __ \ / __ \ / / / /
5
+ / /___ / / / /_/ // /_/ // /_/ / / __/ ___/ // /_/ // / / / / // /_/ / / / / // /_/ // / / // /_/ /
6
+ \____/ /_/ \__,_/ \__,_/ \__,_/ \___/ /____/ \__, //_/ /_/ /_// .___/ /_/ /_/ \____//_/ /_/ \__, /
7
+ /____/ /_/ /____/
8
+
package/bin/create.js CHANGED
@@ -8,7 +8,7 @@ import { input } from '@inquirer/prompts';
8
8
  const __filename = fileURLToPath(import.meta.url);
9
9
  const __dirname = path.dirname(__filename);
10
10
 
11
- // 색상 코드
11
+ // Color codes
12
12
  const colors = {
13
13
  reset: '\x1b[0m',
14
14
  green: '\x1b[32m',
@@ -22,6 +22,14 @@ function log(message, color = 'reset') {
22
22
  console.log(`${colors[color]}${message}${colors.reset}`);
23
23
  }
24
24
 
25
+ function displayAsciiBanner() {
26
+ const bannerPath = path.join(__dirname, '..', 'assets', 'claude_symphony_ascii.txt');
27
+ if (fs.existsSync(bannerPath)) {
28
+ const banner = fs.readFileSync(bannerPath, 'utf8');
29
+ console.log(colors.cyan + banner + colors.reset);
30
+ }
31
+ }
32
+
25
33
  function copyRecursiveSync(src, dest) {
26
34
  const exists = fs.existsSync(src);
27
35
  const stats = exists && fs.statSync(src);
@@ -44,24 +52,24 @@ function copyRecursiveSync(src, dest) {
44
52
 
45
53
  async function collectBriefInfo() {
46
54
  console.log('');
47
- log('📝 프로젝트 브리프를 작성합니다. (Enter 누르면 건너뜁니다)', 'yellow');
55
+ log('📜 Creating project brief. (Press Enter to skip)', 'yellow');
48
56
  console.log('');
49
57
 
50
58
  const info = {};
51
59
 
52
- // 순차적으로 질문 ( input() 완료되어야 다음으로 진행)
53
- info.description = await input({ message: ' 설명:' });
54
- info.problem = await input({ message: '문제 정의 (해결하려는 문제):' });
55
- info.targetUser = await input({ message: '타겟 사용자:' });
56
- info.successCriteria = await input({ message: '성공 기준:' });
57
- info.constraintSchedule = await input({ message: '제약조건 - 일정:' });
58
- info.constraintBudget = await input({ message: '제약조건 - 예산:' });
59
- info.constraintTech = await input({ message: '제약조건 - 기술:' });
60
- info.references = await input({ message: '참고 자료 (URL 또는 문서):' });
61
-
62
- // 핵심 기능 - 여러 입력 (별도 루프)
60
+ // Sequential questions (each input() must complete before proceeding)
61
+ info.description = await input({ message: '📝 One-line description:' });
62
+ info.problem = await input({ message: '🔍 Problem definition (problem to solve):' });
63
+ info.targetUser = await input({ message: '🎯 Target users:' });
64
+ info.successCriteria = await input({ message: '🏆 Success criteria:' });
65
+ info.constraintSchedule = await input({ message: ' Constraints - Schedule:' });
66
+ info.constraintBudget = await input({ message: '💰 Constraints - Budget:' });
67
+ info.constraintTech = await input({ message: '⚙️ Constraints - Technology:' });
68
+ info.references = await input({ message: '🔗 References (URL or documents):' });
69
+
70
+ // Core features - multiple inputs (separate loop)
63
71
  console.log('');
64
- log('핵심 기능 ( 입력 종료):', 'reset');
72
+ log('🎺 Core features (empty input to finish):', 'reset');
65
73
  info.features = [];
66
74
  let featureNum = 1;
67
75
  while (true) {
@@ -75,68 +83,68 @@ async function collectBriefInfo() {
75
83
  }
76
84
 
77
85
  function generateBriefContent(projectName, info) {
78
- // 핵심 기능 포맷팅
86
+ // Core features formatting
79
87
  let featuresContent;
80
88
  if (info.features && info.features.length > 0) {
81
89
  featuresContent = info.features.map((f, i) => `${i + 1}. ${f}`).join('\n');
82
90
  } else {
83
- featuresContent = '1. [기능 1]\n2. [기능 2]\n3. [기능 3]';
91
+ featuresContent = '1. [Feature 1]\n2. [Feature 2]\n3. [Feature 3]';
84
92
  }
85
93
 
86
94
  return `# Project Brief
87
95
 
88
- ## 프로젝트 이름
96
+ ## Project Name
89
97
  ${projectName}
90
98
 
91
- ## 줄 설명
92
- ${info.description || '[프로젝트를 줄로 설명해주세요]'}
99
+ ## One-line Description
100
+ ${info.description || '[Describe your project in one line]'}
93
101
 
94
- ## 문제 정의
95
- ${info.problem || '[해결하려는 문제는 무엇인가요?]'}
102
+ ## Problem Definition
103
+ ${info.problem || '[What problem are you trying to solve?]'}
96
104
 
97
- ## 타겟 사용자
98
- ${info.targetUser || '[주요 사용자는 누구인가요?]'}
105
+ ## Target Users
106
+ ${info.targetUser || '[Who are the main users?]'}
99
107
 
100
- ## 핵심 기능 (초안)
108
+ ## Core Features (Draft)
101
109
  ${featuresContent}
102
110
 
103
- ## 성공 기준
104
- ${info.successCriteria || '[프로젝트가 성공했다고 판단하는 기준은?]'}
111
+ ## Success Criteria
112
+ ${info.successCriteria || '[What criteria define project success?]'}
105
113
 
106
- ## 제약조건
107
- - 일정: ${info.constraintSchedule || ''}
108
- - 예산: ${info.constraintBudget || ''}
109
- - 기술: ${info.constraintTech || ''}
114
+ ## Constraints
115
+ - Schedule: ${info.constraintSchedule || ''}
116
+ - Budget: ${info.constraintBudget || ''}
117
+ - Technology: ${info.constraintTech || ''}
110
118
 
111
- ## 참고 자료
112
- - ${info.references || '[URL 또는 문서]'}
119
+ ## References
120
+ - ${info.references || '[URL or documents]'}
113
121
  `;
114
122
  }
115
123
 
116
124
  async function main() {
117
125
  const args = process.argv.slice(2);
118
126
 
119
- // 도움말 체크 (가장 먼저 처리)
127
+ // Help check (process first)
120
128
  if (args.includes('--help') || args.includes('-h')) {
121
129
  console.log(`
122
- ${colors.cyan}claude-symphony${colors.reset} - Multi-AI Orchestration Framework 프로젝트 생성
130
+ ${colors.cyan}claude-symphony${colors.reset} - Multi-AI Orchestration Framework project creation
123
131
 
124
- ${colors.yellow}사용법:${colors.reset}
132
+ ${colors.yellow}Usage:${colors.reset}
125
133
  npx claude-symphony <project-name>
126
- npx claude-symphony . (현재 디렉토리에 생성)
134
+ npx claude-symphony . (create in current directory)
127
135
 
128
- ${colors.yellow}옵션:${colors.reset}
129
- --yes, -y 프롬프트 없이 기본값으로 생성
136
+ ${colors.yellow}Options:${colors.reset}
137
+ --yes, -y Create with defaults (no prompts)
130
138
 
131
- ${colors.yellow}예시:${colors.reset}
139
+ ${colors.yellow}Examples:${colors.reset}
132
140
  npx claude-symphony my-saas-app
133
141
  npx claude-symphony my-game
134
142
  npx claude-symphony my-project --yes
135
143
 
136
- ${colors.yellow}생성 후:${colors.reset}
144
+ ${colors.yellow}After creation:${colors.reset}
137
145
  1. cd <project-name>
138
- 2. stages/01-brainstorm/inputs/project_brief.md 작성
139
- 3. /run-stage 01-brainstorm 실행
146
+ 2. Edit stages/01-brainstorm/inputs/project_brief.md
147
+ 3. Run /run-stage 01-brainstorm
140
148
  `);
141
149
  process.exit(0);
142
150
  }
@@ -144,9 +152,9 @@ ${colors.yellow}생성 후:${colors.reset}
144
152
  const skipPrompts = args.includes('--yes') || args.includes('-y');
145
153
  const projectName = args.find(arg => !arg.startsWith('-')) || '.';
146
154
 
147
- // 프로젝트 이름 검증
155
+ // Project name validation
148
156
  if (projectName !== '.' && !/^[a-z0-9-]+$/.test(projectName)) {
149
- log('오류: 프로젝트 이름은 영문 소문자, 숫자, 하이픈만 허용됩니다.', 'red');
157
+ log('Error: Project name must contain only lowercase letters, numbers, and hyphens.', 'red');
150
158
  process.exit(1);
151
159
  }
152
160
 
@@ -154,45 +162,48 @@ ${colors.yellow}생성 후:${colors.reset}
154
162
  const targetDir = path.resolve(projectName);
155
163
  const actualProjectName = projectName === '.' ? path.basename(targetDir) : projectName;
156
164
 
157
- // 템플릿 존재 확인
165
+ // Template existence check
158
166
  if (!fs.existsSync(templateDir)) {
159
- log(`오류: 템플릿 디렉토리를 찾을 없습니다: ${templateDir}`, 'red');
167
+ log(`Error: Template directory not found: ${templateDir}`, 'red');
160
168
  process.exit(1);
161
169
  }
162
170
 
163
- // 대상 디렉토리 확인
171
+ // Target directory check
164
172
  if (projectName !== '.' && fs.existsSync(targetDir)) {
165
173
  const files = fs.readdirSync(targetDir);
166
174
  if (files.length > 0) {
167
- log(`오류: 디렉토리가 비어있지 않습니다: ${targetDir}`, 'red');
175
+ log(`Error: Directory is not empty: ${targetDir}`, 'red');
168
176
  process.exit(1);
169
177
  }
170
178
  }
171
179
 
180
+ // Display ASCII banner
181
+ displayAsciiBanner();
182
+
172
183
  console.log('');
173
184
  log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━', 'cyan');
174
- log(`🎼 claude-symphony 프로젝트 생성: ${actualProjectName}`, 'cyan');
185
+ log(`🎼 Creating claude-symphony project: ${actualProjectName}`, 'cyan');
175
186
  log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━', 'cyan');
176
187
  console.log('');
177
188
 
178
- // 1. 대상 디렉토리 생성
189
+ // 1. Create target directory
179
190
  if (!fs.existsSync(targetDir)) {
180
191
  fs.mkdirSync(targetDir, { recursive: true });
181
192
  }
182
- log(`✓ 프로젝트 디렉토리: ${targetDir}`, 'green');
193
+ log(`✓ Project directory: ${targetDir}`, 'green');
183
194
 
184
- // 2. 프로젝트 브리프 정보 수집 (--yes 플래그가 없을 때만)
195
+ // 2. Collect project brief info (only when --yes flag is not present)
185
196
  let briefInfo = {};
186
197
  if (!skipPrompts) {
187
198
  briefInfo = await collectBriefInfo();
188
199
  }
189
200
 
190
- // 3. 템플릿 복사
191
- log(' 템플릿 복사 중...', 'blue');
201
+ // 3. Copy template
202
+ log(' Copying template...', 'blue');
192
203
  copyRecursiveSync(templateDir, targetDir);
193
- log('✓ 템플릿 복사 완료', 'green');
204
+ log('✓ Template copy complete', 'green');
194
205
 
195
- // 4. progress.json 초기화
206
+ // 4. Initialize progress.json
196
207
  const progressTemplatePath = path.join(targetDir, 'state', 'progress.json.template');
197
208
  const progressPath = path.join(targetDir, 'state', 'progress.json');
198
209
 
@@ -205,11 +216,11 @@ ${colors.yellow}생성 후:${colors.reset}
205
216
  .replace('{{STARTED_AT}}', timestamp);
206
217
 
207
218
  fs.writeFileSync(progressPath, progressContent);
208
- fs.unlinkSync(progressTemplatePath); // 템플릿 파일 삭제
209
- log('✓ progress.json 초기화 완료', 'green');
219
+ fs.unlinkSync(progressTemplatePath); // Delete template file
220
+ log('✓ progress.json initialized', 'green');
210
221
  }
211
222
 
212
- // 5. project_brief.md 생성
223
+ // 5. Create project_brief.md
213
224
  const briefPath = path.join(targetDir, 'stages', '01-brainstorm', 'inputs', 'project_brief.md');
214
225
  const briefDir = path.dirname(briefPath);
215
226
 
@@ -219,25 +230,25 @@ ${colors.yellow}생성 후:${colors.reset}
219
230
 
220
231
  const briefContent = generateBriefContent(actualProjectName, briefInfo);
221
232
  fs.writeFileSync(briefPath, briefContent);
222
- log('✓ project_brief.md 생성 완료', 'green');
233
+ log('✓ project_brief.md created', 'green');
223
234
 
224
- // 6. 완료 메시지
235
+ // 6. Completion message
225
236
  console.log('');
226
237
  log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━', 'green');
227
- log(`✓ 프로젝트 '${actualProjectName}' 생성 완료!`, 'green');
238
+ log(`✓ Project '${actualProjectName}' created successfully!`, 'green');
228
239
  log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━', 'green');
229
240
  console.log('');
230
- log('다음 단계:', 'yellow');
241
+ log('Next steps:', 'yellow');
231
242
  if (projectName !== '.') {
232
243
  console.log(` 1. cd ${projectName}`);
233
- console.log(' 2. stages/01-brainstorm/inputs/project_brief.md 작성');
234
- console.log(' 3. /run-stage 01-brainstorm 실행');
244
+ console.log(' 2. Edit stages/01-brainstorm/inputs/project_brief.md');
245
+ console.log(' 3. Run /run-stage 01-brainstorm');
235
246
  } else {
236
- console.log(' 1. stages/01-brainstorm/inputs/project_brief.md 작성');
237
- console.log(' 2. /run-stage 01-brainstorm 실행');
247
+ console.log(' 1. Edit stages/01-brainstorm/inputs/project_brief.md');
248
+ console.log(' 2. Run /run-stage 01-brainstorm');
238
249
  }
239
250
  console.log('');
240
- log('파이프라인 스테이지:', 'cyan');
251
+ log('Pipeline stages:', 'cyan');
241
252
  console.log(' 01-brainstorm → 02-research → 03-planning → 04-ui-ux');
242
253
  console.log(' → 05-task-management → 06-implementation → 07-refactoring');
243
254
  console.log(' → 08-qa → 09-testing → 10-deployment');
@@ -245,6 +256,6 @@ ${colors.yellow}생성 후:${colors.reset}
245
256
  }
246
257
 
247
258
  main().catch(err => {
248
- log(`오류: ${err.message}`, 'red');
259
+ log(`Error: ${err.message}`, 'red');
249
260
  process.exit(1);
250
261
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-symphony",
3
- "version": "0.0.1",
3
+ "version": "0.0.3",
4
4
  "description": "Multi-AI Orchestration Framework - Create new projects with 10-stage development workflow",
5
5
  "type": "module",
6
6
  "bin": {
@@ -8,7 +8,8 @@
8
8
  },
9
9
  "files": [
10
10
  "bin/",
11
- "template/"
11
+ "template/",
12
+ "assets/"
12
13
  ],
13
14
  "scripts": {
14
15
  "create": "node bin/create.js"
@@ -1,44 +1,44 @@
1
1
  # /benchmark - AI Model Benchmarking Command
2
2
 
3
- AI 모델 성능을 비교하고 최적 모델을 선택합니다.
3
+ Compare AI model performance and select the optimal model.
4
4
 
5
- ## 사용법
5
+ ## Usage
6
6
 
7
7
  ```bash
8
8
  /benchmark [options]
9
9
  ```
10
10
 
11
- ## 옵션
11
+ ## Options
12
12
 
13
- | 옵션 | 설명 | 기본값 |
14
- |------|------|--------|
15
- | `--task` | 벤치마크할 태스크 유형 | code_generation |
16
- | `--models` | 비교할 모델 (쉼표 구분) | claude,codex |
17
- | `--samples` | 샘플 태스크 | 3 |
18
- | `--metrics` | 측정 메트릭 | correctness,performance |
19
- | `--verbose` | 상세 출력 | false |
13
+ | Option | Description | Default |
14
+ |--------|-------------|---------|
15
+ | `--task` | Task type to benchmark | code_generation |
16
+ | `--models` | Models to compare (comma-separated) | claude,codex |
17
+ | `--samples` | Number of sample tasks | 3 |
18
+ | `--metrics` | Metrics to measure | correctness,performance |
19
+ | `--verbose` | Verbose output | false |
20
20
 
21
- ## 벤치마크 태스크 유형
21
+ ## Benchmark Task Types
22
22
 
23
23
  ### code_generation
24
24
  ```bash
25
25
  /benchmark --task code_generation --models "claude,codex"
26
26
  ```
27
- - 메트릭: correctness, performance, style_compliance, readability
27
+ - Metrics: correctness, performance, style_compliance, readability
28
28
 
29
29
  ### refactoring
30
30
  ```bash
31
31
  /benchmark --task refactoring --models "codex,claude"
32
32
  ```
33
- - 메트릭: complexity_reduction, test_coverage, maintainability
33
+ - Metrics: complexity_reduction, test_coverage, maintainability
34
34
 
35
35
  ### test_generation
36
36
  ```bash
37
37
  /benchmark --task test_generation --models "codex,claude"
38
38
  ```
39
- - 메트릭: coverage, edge_cases, quality
39
+ - Metrics: coverage, edge_cases, quality
40
40
 
41
- ## 출력 형식
41
+ ## Output Format
42
42
 
43
43
  ```markdown
44
44
  # AI Benchmark Results
@@ -61,43 +61,43 @@ AI 모델 성능을 비교하고 최적 모델을 선택합니다.
61
61
  | Readability | 0.2 | 0.85 | 0.75 |
62
62
 
63
63
  ### Recommendation
64
- 현재 태스크에 **Claude** 사용 권장
64
+ **Claude** recommended for this task
65
65
  ```
66
66
 
67
- ## 예시
67
+ ## Examples
68
68
 
69
69
  ```bash
70
- # 코드 생성 벤치마크
70
+ # Code generation benchmark
71
71
  /benchmark --task code_generation
72
72
 
73
- # 상세 결과 출력
73
+ # Detailed results output
74
74
  /benchmark --task refactoring --verbose
75
75
 
76
- # 특정 모델만 비교
76
+ # Compare specific models only
77
77
  /benchmark --task test_generation --models "codex"
78
78
  ```
79
79
 
80
- ## 결과 저장
80
+ ## Result Storage
81
81
 
82
- - 결과: `state/ai_benchmarks/`
83
- - 리포트: `state/ai_benchmarks/reports/`
82
+ - Results: `state/ai_benchmarks/`
83
+ - Reports: `state/ai_benchmarks/reports/`
84
84
 
85
- ## 히스토리 조회
85
+ ## View History
86
86
 
87
87
  ```bash
88
- # 최근 벤치마크 결과 확인
88
+ # Check latest benchmark results
89
89
  cat state/ai_benchmarks/latest.json
90
90
 
91
- # 주간 트렌드 확인
91
+ # Check weekly trends
92
92
  scripts/ai-benchmark.sh --history weekly
93
93
  ```
94
94
 
95
- ## 설정
95
+ ## Configuration
96
96
 
97
- `config/ai_benchmarking.yaml` 참조
97
+ See `config/ai_benchmarking.yaml`
98
98
 
99
- ## 관련 커맨드
99
+ ## Related Commands
100
100
 
101
- - `/collaborate` - AI 협업
102
- - `/gemini` - Gemini 직접 호출
103
- - `/codex` - Codex 직접 호출
101
+ - `/collaborate` - AI collaboration
102
+ - `/gemini` - Direct Gemini call
103
+ - `/codex` - Direct Codex call
@@ -1,67 +1,67 @@
1
1
  # /brainstorm
2
2
 
3
- 01-brainstorm 스테이지를 바로 시작합니다.
3
+ Start the 01-brainstorm stage directly.
4
4
 
5
- ## 사용법
5
+ ## Usage
6
6
  ```
7
7
  /brainstorm [topic]
8
8
  ```
9
9
 
10
- ## 스테이지 정보
10
+ ## Stage Information
11
11
 
12
- | 항목 | |
13
- |------|-----|
14
- | 스테이지 | 01-brainstorm |
15
- | AI 모델 | Gemini + ClaudeCode |
16
- | 실행 모드 | YOLO (Container) |
17
- | 체크포인트 | 선택 |
12
+ | Item | Value |
13
+ |------|-------|
14
+ | Stage | 01-brainstorm |
15
+ | AI Model | Gemini + ClaudeCode |
16
+ | Execution Mode | YOLO (Container) |
17
+ | Checkpoint | Optional |
18
18
 
19
- ## 동작
19
+ ## Actions
20
20
 
21
- 1. **전제 조건 확인**
22
- - 프로젝트 초기화 여부 (progress.json)
21
+ 1. **Prerequisite Check**
22
+ - Project initialization status (progress.json)
23
23
 
24
- 2. **스테이지 시작**
25
- - Gemini CLI 호출 (창의적 아이디어)
26
- - ClaudeCode 병렬 실행 (기술 검토)
24
+ 2. **Stage Start**
25
+ - Gemini CLI call (creative ideas)
26
+ - ClaudeCode parallel execution (technical review)
27
27
 
28
- 3. **산출물 생성**
29
- - ideas.md - 브레인스토밍 아이디어
30
- - decisions.md - 핵심 결정사항
28
+ 3. **Output Generation**
29
+ - ideas.md - Brainstorming ideas
30
+ - decisions.md - Key decisions
31
31
 
32
- ## 실행
32
+ ## Execution
33
33
 
34
34
  ```bash
35
- # /run-stage 01과 동일
35
+ # Same as /run-stage 01
36
36
  scripts/run-stage.sh 01-brainstorm "$ARGUMENTS"
37
37
  ```
38
38
 
39
- ## 출력 예시
39
+ ## Output Example
40
40
 
41
41
  ```
42
42
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
43
43
  🧠 Stage 01: Brainstorm
44
44
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
45
- AI: Gemini + ClaudeCode (병렬)
45
+ AI: Gemini + ClaudeCode (parallel)
46
46
  Mode: YOLO (Container)
47
47
 
48
- 주제: $ARGUMENTS
48
+ Topic: $ARGUMENTS
49
49
 
50
- [Gemini] 창의적 아이디어 생성 중...
51
- [ClaudeCode] 기술 검토 중...
50
+ [Gemini] Generating creative ideas...
51
+ [ClaudeCode] Technical review in progress...
52
52
 
53
- 완료 후: /next 또는 /research
53
+ After completion: /next or /research
54
54
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
55
55
  ```
56
56
 
57
- ## 관련 명령어
57
+ ## Related Commands
58
58
 
59
- - `/run-stage 01` - 전제조건 확인 시작
60
- - `/next` - 다음 스테이지 (02-research)
61
- - `/gemini` - Gemini CLI 직접 호출
59
+ - `/run-stage 01` - Start after prerequisite check
60
+ - `/next` - Next stage (02-research)
61
+ - `/gemini` - Direct Gemini CLI call
62
62
 
63
63
  ## Tips
64
64
 
65
- - YOLO 모드: 실패해도 괜찮음, 창의성 우선
66
- - 여러 아이디어를 자유롭게 탐색
67
- - decisions.md에 최종 선택 기록
65
+ - YOLO mode: Failure is okay, creativity first
66
+ - Freely explore multiple ideas
67
+ - Record final selections in decisions.md