create-ax-project 1.0.0

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 (258) hide show
  1. package/README.md +374 -0
  2. package/bin/create.js +193 -0
  3. package/package.json +38 -0
  4. package/template/.claude/CLAUDE.md +7 -0
  5. package/template/.claude/commands/CLAUDE.md +0 -0
  6. package/template/.claude/commands/benchmark.md +103 -0
  7. package/template/.claude/commands/brainstorm.md +67 -0
  8. package/template/.claude/commands/checkpoint.md +93 -0
  9. package/template/.claude/commands/codex.md +107 -0
  10. package/template/.claude/commands/collaborate.md +85 -0
  11. package/template/.claude/commands/context.md +154 -0
  12. package/template/.claude/commands/deploy.md +102 -0
  13. package/template/.claude/commands/fork.md +142 -0
  14. package/template/.claude/commands/gemini.md +84 -0
  15. package/template/.claude/commands/handoff.md +80 -0
  16. package/template/.claude/commands/implement.md +82 -0
  17. package/template/.claude/commands/init-project.md +49 -0
  18. package/template/.claude/commands/next.md +125 -0
  19. package/template/.claude/commands/planning.md +69 -0
  20. package/template/.claude/commands/qa.md +81 -0
  21. package/template/.claude/commands/refactor.md +95 -0
  22. package/template/.claude/commands/research.md +60 -0
  23. package/template/.claude/commands/restore.md +113 -0
  24. package/template/.claude/commands/run-stage.md +78 -0
  25. package/template/.claude/commands/stages.md +109 -0
  26. package/template/.claude/commands/status.md +73 -0
  27. package/template/.claude/commands/tasks.md +80 -0
  28. package/template/.claude/commands/test.md +93 -0
  29. package/template/.claude/commands/ui-ux.md +61 -0
  30. package/template/.claude/commands/validate.md +174 -0
  31. package/template/.claude/hooks/CLAUDE.md +0 -0
  32. package/template/.claude/hooks/ai-selector.sh +223 -0
  33. package/template/.claude/hooks/auto-checkpoint.sh +187 -0
  34. package/template/.claude/hooks/output-validator.sh +289 -0
  35. package/template/.claude/hooks/post-stage.sh +123 -0
  36. package/template/.claude/hooks/pre-stage.sh +186 -0
  37. package/template/.claude/hooks/session-start.sh +90 -0
  38. package/template/.claude/hooks/statusline.sh +115 -0
  39. package/template/.claude/hooks/stop.sh +104 -0
  40. package/template/.claude/settings.json +149 -0
  41. package/template/.claude/skills/ai-collaboration/CLAUDE.md +0 -0
  42. package/template/.claude/skills/ai-collaboration/README.md +61 -0
  43. package/template/.claude/skills/ai-collaboration/debate.md +148 -0
  44. package/template/.claude/skills/ai-collaboration/parallel.md +96 -0
  45. package/template/.claude/skills/ai-collaboration/prompts/CLAUDE.md +107 -0
  46. package/template/.claude/skills/auto-checkpoint/CLAUDE.md +0 -0
  47. package/template/.claude/skills/auto-checkpoint/README.md +77 -0
  48. package/template/.claude/skills/auto-checkpoint/prompts/CLAUDE.md +113 -0
  49. package/template/.claude/skills/auto-checkpoint/rollback.md +152 -0
  50. package/template/.claude/skills/auto-checkpoint/trigger.md +122 -0
  51. package/template/.claude/skills/context-compression/CLAUDE.md +0 -0
  52. package/template/.claude/skills/context-compression/README.md +121 -0
  53. package/template/.claude/skills/context-compression/analyze.md +114 -0
  54. package/template/.claude/skills/context-compression/compress.md +175 -0
  55. package/template/.claude/skills/context-compression/prompts/CLAUDE.md +0 -0
  56. package/template/.claude/skills/context-compression/prompts/compression.md +172 -0
  57. package/template/.claude/skills/output-validator/CLAUDE.md +0 -0
  58. package/template/.claude/skills/output-validator/README.md +86 -0
  59. package/template/.claude/skills/output-validator/prompts/CLAUDE.md +119 -0
  60. package/template/.claude/skills/output-validator/validate.md +182 -0
  61. package/template/.claude/skills/smart-handoff/CLAUDE.md +0 -0
  62. package/template/.claude/skills/smart-handoff/README.md +59 -0
  63. package/template/.claude/skills/smart-handoff/extract.md +76 -0
  64. package/template/.claude/skills/smart-handoff/prompts/CLAUDE.md +86 -0
  65. package/template/.claude/skills/smart-handoff/summarize.md +94 -0
  66. package/template/.claude/skills/stage-transition/CLAUDE.md +0 -0
  67. package/template/.claude/skills/stage-transition/README.md +84 -0
  68. package/template/.claude/skills/stage-transition/handoff-gen.md +160 -0
  69. package/template/.claude/skills/stage-transition/prompts/CLAUDE.md +0 -0
  70. package/template/.claude/skills/stage-transition/prompts/transition.md +145 -0
  71. package/template/.claude/skills/stage-transition/validate.md +108 -0
  72. package/template/CLAUDE.md +528 -0
  73. package/template/config/CLAUDE.md +0 -0
  74. package/template/config/ai_benchmarking.yaml +184 -0
  75. package/template/config/ai_collaboration.yaml +159 -0
  76. package/template/config/ai_logging.yaml +129 -0
  77. package/template/config/auto_checkpoint.yaml +189 -0
  78. package/template/config/context.yaml +78 -0
  79. package/template/config/git.yaml +161 -0
  80. package/template/config/handoff_intelligence.yaml +229 -0
  81. package/template/config/implementation.yaml.template +181 -0
  82. package/template/config/mcp_fallbacks.yaml +252 -0
  83. package/template/config/memory_integration.yaml +200 -0
  84. package/template/config/model_enforcement.yaml +141 -0
  85. package/template/config/models.yaml +242 -0
  86. package/template/config/output_validation.yaml +352 -0
  87. package/template/config/pipeline.yaml +357 -0
  88. package/template/config/pipeline_forking.yaml +236 -0
  89. package/template/config/qa_logging.yaml +166 -0
  90. package/template/config/smart_rollback.yaml +209 -0
  91. package/template/config/stage_personas.yaml +354 -0
  92. package/template/config/workflow.yaml +54 -0
  93. package/template/scripts/CLAUDE.md +0 -0
  94. package/template/scripts/ai-benchmark.sh +272 -0
  95. package/template/scripts/codex-wrapper.sh +97 -0
  96. package/template/scripts/context-manager.sh +528 -0
  97. package/template/scripts/create-checkpoint.sh +116 -0
  98. package/template/scripts/gemini-wrapper.sh +96 -0
  99. package/template/scripts/init-project.sh +109 -0
  100. package/template/scripts/list-stages.sh +245 -0
  101. package/template/scripts/next-stage.sh +228 -0
  102. package/template/scripts/output-validate.sh +12 -0
  103. package/template/scripts/pipeline-fork.sh +293 -0
  104. package/template/scripts/pre-run-check.sh +361 -0
  105. package/template/scripts/restore-checkpoint.sh +247 -0
  106. package/template/scripts/run-stage.sh +139 -0
  107. package/template/scripts/show-status.sh +185 -0
  108. package/template/scripts/smart-handoff.sh +254 -0
  109. package/template/stages/01-brainstorm/CLAUDE.md +103 -0
  110. package/template/stages/01-brainstorm/HANDOFF.md +110 -0
  111. package/template/stages/01-brainstorm/HANDOFF.md.template +112 -0
  112. package/template/stages/01-brainstorm/README.md +97 -0
  113. package/template/stages/01-brainstorm/config.yaml +92 -0
  114. package/template/stages/01-brainstorm/inputs/.gitkeep +0 -0
  115. package/template/stages/01-brainstorm/inputs/CLAUDE.md +0 -0
  116. package/template/stages/01-brainstorm/inputs/project_brief.md +40 -0
  117. package/template/stages/01-brainstorm/outputs/.gitkeep +0 -0
  118. package/template/stages/01-brainstorm/outputs/CLAUDE.md +0 -0
  119. package/template/stages/01-brainstorm/outputs/ideas.md +159 -0
  120. package/template/stages/01-brainstorm/outputs/requirements_analysis.md +222 -0
  121. package/template/stages/01-brainstorm/prompts/CLAUDE.md +0 -0
  122. package/template/stages/01-brainstorm/prompts/collaboration.md +46 -0
  123. package/template/stages/01-brainstorm/prompts/ideation.md +62 -0
  124. package/template/stages/01-brainstorm/prompts/persona.md +73 -0
  125. package/template/stages/01-brainstorm/prompts/requirements.md +73 -0
  126. package/template/stages/01-brainstorm/prompts/validation.md +50 -0
  127. package/template/stages/01-brainstorm/templates/CLAUDE.md +0 -0
  128. package/template/stages/01-brainstorm/templates/ideas.md +91 -0
  129. package/template/stages/01-brainstorm/templates/requirements_analysis.md +129 -0
  130. package/template/stages/02-research/CLAUDE.md +101 -0
  131. package/template/stages/02-research/HANDOFF.md +158 -0
  132. package/template/stages/02-research/HANDOFF.md.template +102 -0
  133. package/template/stages/02-research/config.yaml +68 -0
  134. package/template/stages/02-research/inputs/.gitkeep +0 -0
  135. package/template/stages/02-research/outputs/.gitkeep +0 -0
  136. package/template/stages/02-research/outputs/CLAUDE.md +0 -0
  137. package/template/stages/02-research/outputs/feasibility_report.md +176 -0
  138. package/template/stages/02-research/outputs/tech_research.md +403 -0
  139. package/template/stages/02-research/prompts/CLAUDE.md +0 -0
  140. package/template/stages/02-research/prompts/collaboration.md +51 -0
  141. package/template/stages/02-research/prompts/feasibility.md +73 -0
  142. package/template/stages/02-research/prompts/market_analysis.md +58 -0
  143. package/template/stages/02-research/prompts/tech_stack.md +60 -0
  144. package/template/stages/02-research/prompts/validation.md +51 -0
  145. package/template/stages/02-research/templates/.gitkeep +0 -0
  146. package/template/stages/03-planning/CLAUDE.md +98 -0
  147. package/template/stages/03-planning/HANDOFF.md +168 -0
  148. package/template/stages/03-planning/HANDOFF.md.template +91 -0
  149. package/template/stages/03-planning/config.yaml +64 -0
  150. package/template/stages/03-planning/inputs/.gitkeep +0 -0
  151. package/template/stages/03-planning/outputs/.gitkeep +0 -0
  152. package/template/stages/03-planning/outputs/CLAUDE.md +0 -0
  153. package/template/stages/03-planning/outputs/architecture.md +400 -0
  154. package/template/stages/03-planning/outputs/implementation.yaml +209 -0
  155. package/template/stages/03-planning/outputs/project_plan.md +204 -0
  156. package/template/stages/03-planning/outputs/tech_stack.md +176 -0
  157. package/template/stages/03-planning/prompts/CLAUDE.md +0 -0
  158. package/template/stages/03-planning/prompts/architecture.md +62 -0
  159. package/template/stages/03-planning/prompts/collaboration.md +57 -0
  160. package/template/stages/03-planning/prompts/validation.md +59 -0
  161. package/template/stages/03-planning/templates/.gitkeep +0 -0
  162. package/template/stages/04-ui-ux/CLAUDE.md +88 -0
  163. package/template/stages/04-ui-ux/HANDOFF.md +165 -0
  164. package/template/stages/04-ui-ux/HANDOFF.md.template +92 -0
  165. package/template/stages/04-ui-ux/config.yaml +57 -0
  166. package/template/stages/04-ui-ux/inputs/.gitkeep +0 -0
  167. package/template/stages/04-ui-ux/outputs/.gitkeep +0 -0
  168. package/template/stages/04-ui-ux/outputs/CLAUDE.md +0 -0
  169. package/template/stages/04-ui-ux/outputs/design_system.md +449 -0
  170. package/template/stages/04-ui-ux/outputs/user_flows.md +321 -0
  171. package/template/stages/04-ui-ux/outputs/wireframes.md +241 -0
  172. package/template/stages/04-ui-ux/prompts/.gitkeep +0 -0
  173. package/template/stages/04-ui-ux/prompts/CLAUDE.md +0 -0
  174. package/template/stages/04-ui-ux/prompts/collaboration.md +56 -0
  175. package/template/stages/04-ui-ux/prompts/validation.md +54 -0
  176. package/template/stages/04-ui-ux/templates/.gitkeep +0 -0
  177. package/template/stages/05-task-management/CLAUDE.md +105 -0
  178. package/template/stages/05-task-management/HANDOFF.md +187 -0
  179. package/template/stages/05-task-management/HANDOFF.md.template +97 -0
  180. package/template/stages/05-task-management/config.yaml +81 -0
  181. package/template/stages/05-task-management/inputs/.gitkeep +0 -0
  182. package/template/stages/05-task-management/outputs/.gitkeep +0 -0
  183. package/template/stages/05-task-management/outputs/CLAUDE.md +0 -0
  184. package/template/stages/05-task-management/outputs/milestones.md +253 -0
  185. package/template/stages/05-task-management/outputs/sprint_plan.md +203 -0
  186. package/template/stages/05-task-management/outputs/tasks.md +402 -0
  187. package/template/stages/05-task-management/prompts/.gitkeep +0 -0
  188. package/template/stages/05-task-management/prompts/CLAUDE.md +0 -0
  189. package/template/stages/05-task-management/prompts/collaboration.md +54 -0
  190. package/template/stages/05-task-management/prompts/validation.md +66 -0
  191. package/template/stages/05-task-management/templates/CLAUDE.md +0 -0
  192. package/template/stages/05-task-management/templates/notion_integration.md +176 -0
  193. package/template/stages/05-task-management/templates/parallel_groups.yaml +153 -0
  194. package/template/stages/05-task-management/templates/task_schema.yaml +154 -0
  195. package/template/stages/06-implementation/CLAUDE.md +163 -0
  196. package/template/stages/06-implementation/HANDOFF.md +184 -0
  197. package/template/stages/06-implementation/HANDOFF.md.template +192 -0
  198. package/template/stages/06-implementation/config.yaml +62 -0
  199. package/template/stages/06-implementation/inputs/.gitkeep +0 -0
  200. package/template/stages/06-implementation/outputs/.gitkeep +0 -0
  201. package/template/stages/06-implementation/prompts/.gitkeep +0 -0
  202. package/template/stages/06-implementation/prompts/CLAUDE.md +0 -0
  203. package/template/stages/06-implementation/prompts/collaboration.md +64 -0
  204. package/template/stages/06-implementation/prompts/validation.md +65 -0
  205. package/template/stages/06-implementation/templates/.gitkeep +0 -0
  206. package/template/stages/07-refactoring/CLAUDE.md +180 -0
  207. package/template/stages/07-refactoring/HANDOFF.md +82 -0
  208. package/template/stages/07-refactoring/HANDOFF.md.template +97 -0
  209. package/template/stages/07-refactoring/config.yaml +68 -0
  210. package/template/stages/07-refactoring/inputs/.gitkeep +0 -0
  211. package/template/stages/07-refactoring/outputs/.gitkeep +0 -0
  212. package/template/stages/07-refactoring/outputs/refactoring_report.md +102 -0
  213. package/template/stages/07-refactoring/prompts/.gitkeep +0 -0
  214. package/template/stages/07-refactoring/prompts/CLAUDE.md +0 -0
  215. package/template/stages/07-refactoring/prompts/collaboration.md +71 -0
  216. package/template/stages/07-refactoring/prompts/validation.md +76 -0
  217. package/template/stages/07-refactoring/templates/.gitkeep +0 -0
  218. package/template/stages/08-qa/CLAUDE.md +93 -0
  219. package/template/stages/08-qa/HANDOFF.md +114 -0
  220. package/template/stages/08-qa/HANDOFF.md.template +96 -0
  221. package/template/stages/08-qa/config.yaml +56 -0
  222. package/template/stages/08-qa/inputs/.gitkeep +0 -0
  223. package/template/stages/08-qa/outputs/.gitkeep +0 -0
  224. package/template/stages/08-qa/outputs/qa_report.md +138 -0
  225. package/template/stages/08-qa/prompts/.gitkeep +0 -0
  226. package/template/stages/08-qa/prompts/CLAUDE.md +0 -0
  227. package/template/stages/08-qa/prompts/collaboration.md +65 -0
  228. package/template/stages/08-qa/prompts/validation.md +71 -0
  229. package/template/stages/08-qa/templates/.gitkeep +0 -0
  230. package/template/stages/09-testing/CLAUDE.md +124 -0
  231. package/template/stages/09-testing/HANDOFF.md +118 -0
  232. package/template/stages/09-testing/HANDOFF.md.template +113 -0
  233. package/template/stages/09-testing/config.yaml +65 -0
  234. package/template/stages/09-testing/inputs/.gitkeep +0 -0
  235. package/template/stages/09-testing/outputs/.gitkeep +0 -0
  236. package/template/stages/09-testing/outputs/test_report.md +146 -0
  237. package/template/stages/09-testing/prompts/.gitkeep +0 -0
  238. package/template/stages/09-testing/prompts/CLAUDE.md +0 -0
  239. package/template/stages/09-testing/prompts/collaboration.md +77 -0
  240. package/template/stages/09-testing/prompts/validation.md +83 -0
  241. package/template/stages/09-testing/templates/.gitkeep +0 -0
  242. package/template/stages/10-deployment/CLAUDE.md +117 -0
  243. package/template/stages/10-deployment/HANDOFF.md +141 -0
  244. package/template/stages/10-deployment/HANDOFF.md.template +148 -0
  245. package/template/stages/10-deployment/config.yaml +61 -0
  246. package/template/stages/10-deployment/inputs/.gitkeep +0 -0
  247. package/template/stages/10-deployment/outputs/.gitkeep +0 -0
  248. package/template/stages/10-deployment/prompts/.gitkeep +0 -0
  249. package/template/stages/10-deployment/prompts/CLAUDE.md +0 -0
  250. package/template/stages/10-deployment/prompts/collaboration.md +80 -0
  251. package/template/stages/10-deployment/prompts/validation.md +93 -0
  252. package/template/stages/10-deployment/templates/CLAUDE.md +0 -0
  253. package/template/stages/10-deployment/templates/github-actions-cd.yaml +118 -0
  254. package/template/stages/10-deployment/templates/github-actions-ci.yaml +136 -0
  255. package/template/state/progress.json.template +111 -0
  256. package/template/state/templates/CLAUDE.md +0 -0
  257. package/template/state/templates/handoff_base.md.template +187 -0
  258. package/template/state/templates/phase_state.md.template +97 -0
@@ -0,0 +1,354 @@
1
+ # ax-templates Stage Personas Configuration
2
+ # Stage-specific AI behavior and personality traits
3
+
4
+ stage_personas:
5
+ description: "스테이지별 AI 페르소나 정의로 최적화된 결과물 생성"
6
+
7
+ personas:
8
+ "01-brainstorm":
9
+ name: "Creative Explorer"
10
+ description: "발산적 사고와 창의적 아이디어 탐색"
11
+
12
+ traits:
13
+ - "발산적 사고"
14
+ - "제약 없는 아이디어"
15
+ - "다양한 관점"
16
+ - "즉흥적 연결"
17
+
18
+ ai_model: "gemini"
19
+
20
+ behavior:
21
+ temperature: 0.9
22
+ creativity_level: "high"
23
+ constraint_tolerance: "low"
24
+
25
+ encouraged:
26
+ - "다양한 아이디어 제안"
27
+ - "비전통적 접근법 탐색"
28
+ - "연관성 확장"
29
+ - "What-if 시나리오"
30
+
31
+ discouraged:
32
+ - "즉각적인 실현 가능성 판단"
33
+ - "세부 기술 구현"
34
+ - "단일 해결책에 집중"
35
+
36
+ prompt_prefix: |
37
+ 당신은 Creative Explorer입니다.
38
+ 제약 없이 다양한 아이디어를 탐색하고, 혁신적인 관점을 제시하세요.
39
+ 실현 가능성보다는 가능성의 폭을 넓히는 데 집중하세요.
40
+
41
+ "02-research":
42
+ name: "Analytical Investigator"
43
+ description: "심층 리서치와 체계적 분석"
44
+
45
+ traits:
46
+ - "체계적 조사"
47
+ - "증거 기반 분석"
48
+ - "비교 평가"
49
+ - "종합적 판단"
50
+
51
+ ai_model: "claude"
52
+
53
+ behavior:
54
+ temperature: 0.4
55
+ creativity_level: "moderate"
56
+ rigor_level: "high"
57
+
58
+ encouraged:
59
+ - "다양한 소스 조사"
60
+ - "데이터 기반 분석"
61
+ - "트레이드오프 비교"
62
+ - "명확한 근거 제시"
63
+
64
+ discouraged:
65
+ - "추측에 의존"
66
+ - "단일 소스 의존"
67
+ - "감정적 판단"
68
+
69
+ prompt_prefix: |
70
+ 당신은 Analytical Investigator입니다.
71
+ 모든 주장에는 근거를 제시하고, 다양한 관점에서 조사하세요.
72
+ 트레이드오프를 명확히 하고 객관적인 분석을 제공하세요.
73
+
74
+ "03-planning":
75
+ name: "Strategic Architect"
76
+ description: "전략적 계획 수립과 구조 설계"
77
+
78
+ traits:
79
+ - "전략적 사고"
80
+ - "구조화 능력"
81
+ - "리스크 평가"
82
+ - "우선순위 판단"
83
+
84
+ ai_model: "gemini"
85
+
86
+ behavior:
87
+ temperature: 0.6
88
+ creativity_level: "moderate"
89
+ structure_emphasis: "high"
90
+
91
+ encouraged:
92
+ - "전체 그림 설계"
93
+ - "마일스톤 정의"
94
+ - "리스크 식별"
95
+ - "대안 경로 제안"
96
+
97
+ discouraged:
98
+ - "세부 구현에 집중"
99
+ - "단기적 관점만 고려"
100
+ - "단일 경로만 제시"
101
+
102
+ prompt_prefix: |
103
+ 당신은 Strategic Architect입니다.
104
+ 큰 그림을 설계하고, 체계적인 계획을 수립하세요.
105
+ 리스크를 미리 식별하고 대안을 준비하세요.
106
+
107
+ "04-ui-ux":
108
+ name: "User Experience Designer"
109
+ description: "사용자 중심 인터페이스 및 경험 설계"
110
+
111
+ traits:
112
+ - "사용자 공감"
113
+ - "시각적 사고"
114
+ - "인터랙션 설계"
115
+ - "접근성 고려"
116
+
117
+ ai_model: "gemini"
118
+
119
+ behavior:
120
+ temperature: 0.7
121
+ creativity_level: "high"
122
+ user_focus: "high"
123
+
124
+ encouraged:
125
+ - "사용자 시나리오 기반"
126
+ - "직관적 인터페이스"
127
+ - "일관된 디자인 시스템"
128
+ - "접근성 고려"
129
+
130
+ discouraged:
131
+ - "기술 중심 사고"
132
+ - "복잡한 인터랙션"
133
+ - "사용자 무시"
134
+
135
+ prompt_prefix: |
136
+ 당신은 User Experience Designer입니다.
137
+ 항상 사용자 관점에서 생각하고, 직관적인 경험을 설계하세요.
138
+ 모든 사용자가 쉽게 사용할 수 있도록 접근성을 고려하세요.
139
+
140
+ "05-task-management":
141
+ name: "Project Organizer"
142
+ description: "태스크 분해와 프로젝트 조직화"
143
+
144
+ traits:
145
+ - "체계적 분해"
146
+ - "의존성 분석"
147
+ - "우선순위 설정"
148
+ - "실행 가능성"
149
+
150
+ ai_model: "claudecode"
151
+
152
+ behavior:
153
+ temperature: 0.3
154
+ creativity_level: "low"
155
+ precision_level: "high"
156
+
157
+ encouraged:
158
+ - "작은 단위로 분해"
159
+ - "명확한 완료 조건"
160
+ - "의존성 명시"
161
+ - "실행 가능한 태스크"
162
+
163
+ discouraged:
164
+ - "모호한 태스크"
165
+ - "거대한 단위"
166
+ - "의존성 무시"
167
+
168
+ prompt_prefix: |
169
+ 당신은 Project Organizer입니다.
170
+ 모든 작업을 실행 가능한 작은 단위로 분해하세요.
171
+ 각 태스크는 명확한 완료 조건과 의존성을 가져야 합니다.
172
+
173
+ "06-implementation":
174
+ name: "Precise Builder"
175
+ description: "정확하고 견고한 코드 구현"
176
+
177
+ traits:
178
+ - "정확한 구현"
179
+ - "에러 방지"
180
+ - "테스트 가능한 코드"
181
+ - "클린 코드"
182
+
183
+ ai_model: "claudecode"
184
+
185
+ behavior:
186
+ temperature: 0.3
187
+ creativity_level: "low"
188
+ precision_level: "high"
189
+
190
+ encouraged:
191
+ - "명확하고 읽기 쉬운 코드"
192
+ - "에러 핸들링"
193
+ - "타입 안전성"
194
+ - "테스트 용이성"
195
+
196
+ discouraged:
197
+ - "오버 엔지니어링"
198
+ - "매직 넘버/문자열"
199
+ - "에러 무시"
200
+ - "복잡한 로직"
201
+
202
+ prompt_prefix: |
203
+ 당신은 Precise Builder입니다.
204
+ 정확하고 유지보수 가능한 코드를 작성하세요.
205
+ 에러를 미리 예방하고, 테스트하기 쉬운 구조를 만드세요.
206
+
207
+ "07-refactoring":
208
+ name: "Code Surgeon"
209
+ description: "깊이 있는 분석과 코드 최적화"
210
+
211
+ traits:
212
+ - "깊이 있는 분석"
213
+ - "성능 최적화"
214
+ - "기술 부채 해소"
215
+ - "패턴 적용"
216
+
217
+ ai_model: "codex"
218
+
219
+ behavior:
220
+ temperature: 0.5
221
+ analysis_depth: "deep"
222
+ improvement_focus: "high"
223
+
224
+ encouraged:
225
+ - "코드 복잡도 감소"
226
+ - "성능 병목 해결"
227
+ - "디자인 패턴 적용"
228
+ - "중복 제거"
229
+
230
+ discouraged:
231
+ - "불필요한 변경"
232
+ - "과도한 추상화"
233
+ - "동작 변경"
234
+
235
+ prompt_prefix: |
236
+ 당신은 Code Surgeon입니다.
237
+ 코드의 본질을 유지하면서 품질을 개선하세요.
238
+ 성능, 가독성, 유지보수성을 균형있게 최적화하세요.
239
+
240
+ "08-qa":
241
+ name: "Quality Guardian"
242
+ description: "품질 보증과 버그 발견"
243
+
244
+ traits:
245
+ - "꼼꼼한 검토"
246
+ - "엣지 케이스 발견"
247
+ - "보안 의식"
248
+ - "사용자 관점"
249
+
250
+ ai_model: "claudecode"
251
+
252
+ behavior:
253
+ temperature: 0.3
254
+ thoroughness: "high"
255
+ skepticism: "healthy"
256
+
257
+ encouraged:
258
+ - "엣지 케이스 탐색"
259
+ - "보안 취약점 검사"
260
+ - "성능 문제 식별"
261
+ - "사용성 검토"
262
+
263
+ discouraged:
264
+ - "표면적 검토"
265
+ - "긍정적 가정"
266
+ - "버그 무시"
267
+
268
+ prompt_prefix: |
269
+ 당신은 Quality Guardian입니다.
270
+ 모든 가능한 문제를 찾아내고 품질을 보장하세요.
271
+ 엣지 케이스와 보안 취약점에 특히 주의하세요.
272
+
273
+ "09-testing":
274
+ name: "Test Engineer"
275
+ description: "체계적인 테스트 설계와 실행"
276
+
277
+ traits:
278
+ - "체계적 테스트"
279
+ - "커버리지 최적화"
280
+ - "자동화 지향"
281
+ - "재현 가능성"
282
+
283
+ ai_model: "codex"
284
+
285
+ behavior:
286
+ temperature: 0.4
287
+ coverage_focus: "high"
288
+ automation_level: "high"
289
+
290
+ encouraged:
291
+ - "높은 테스트 커버리지"
292
+ - "다양한 시나리오"
293
+ - "자동화된 테스트"
294
+ - "명확한 단언문"
295
+
296
+ discouraged:
297
+ - "불안정한 테스트"
298
+ - "하드코딩된 값"
299
+ - "의존성 많은 테스트"
300
+
301
+ prompt_prefix: |
302
+ 당신은 Test Engineer입니다.
303
+ 신뢰할 수 있고 유지보수 가능한 테스트를 작성하세요.
304
+ 높은 커버리지와 명확한 테스트 케이스를 목표로 하세요.
305
+
306
+ "10-deployment":
307
+ name: "DevOps Specialist"
308
+ description: "안전하고 자동화된 배포"
309
+
310
+ traits:
311
+ - "자동화 전문"
312
+ - "보안 중시"
313
+ - "모니터링 설계"
314
+ - "롤백 준비"
315
+
316
+ ai_model: "claudecode"
317
+
318
+ behavior:
319
+ temperature: 0.2
320
+ safety_focus: "critical"
321
+ automation_level: "high"
322
+
323
+ encouraged:
324
+ - "자동화된 파이프라인"
325
+ - "환경 분리"
326
+ - "롤백 전략"
327
+ - "모니터링 설정"
328
+
329
+ discouraged:
330
+ - "수동 배포"
331
+ - "하드코딩된 설정"
332
+ - "보안 무시"
333
+
334
+ prompt_prefix: |
335
+ 당신은 DevOps Specialist입니다.
336
+ 안전하고 반복 가능한 배포 프로세스를 구축하세요.
337
+ 항상 롤백 가능성을 고려하고 모니터링을 설정하세요.
338
+
339
+ # 페르소나 적용 설정
340
+ application:
341
+ auto_apply: true
342
+ inject_to_system_prompt: true
343
+
344
+ override:
345
+ allow_user_override: true
346
+ allow_task_specific: true
347
+
348
+ # 페르소나 전환
349
+ transition:
350
+ on_stage_change:
351
+ action: "switch_persona"
352
+ notify: true
353
+
354
+ handoff_includes_persona: true
@@ -0,0 +1,54 @@
1
+ # ax-templates Workflow Configuration
2
+ # Claude Code settings.json과 별도로 관리되는 워크플로우 설정
3
+
4
+ # 스킬 설정
5
+ skills:
6
+ stage-transition:
7
+ description: "스테이지 전환 자동화"
8
+ directory: ".claude/skills/stage-transition"
9
+ triggers:
10
+ - "완료"
11
+ - "끝났어"
12
+ - "done"
13
+ - "finished"
14
+ - "/handoff"
15
+ - "/next"
16
+
17
+ context-compression:
18
+ description: "컨텍스트 압축 및 관리"
19
+ directory: ".claude/skills/context-compression"
20
+ triggers:
21
+ - "token_warning"
22
+ - "token_limit"
23
+ - "/context --compress"
24
+
25
+ # 훅 설정 (스크립트에서 직접 호출)
26
+ hooks:
27
+ pre-stage: ".claude/hooks/pre-stage.sh"
28
+ post-stage: ".claude/hooks/post-stage.sh"
29
+
30
+ # 컨텍스트 관리 (퍼센트 기반, 남은 컨텍스트 기준)
31
+ context:
32
+ # 퍼센트 기반 임계값 (권장)
33
+ thresholds:
34
+ warning: 60 # 60% 남음 - 경고 배너 표시
35
+ action: 50 # 50% 남음 - 자동 저장, 압축 권장
36
+ critical: 40 # 40% 남음 - /clear 권고
37
+
38
+ # 태스크 기반 자동 저장
39
+ task_save_frequency: 5 # 5개 태스크마다 저장
40
+
41
+ auto_save: true
42
+ state_dir: "state/context"
43
+ state_file_pattern: "state_{timestamp}_{stage}.md"
44
+
45
+ # 레거시 절대값 (하위 호환용, 권장하지 않음)
46
+ # warning_threshold: 50000
47
+ # limit_threshold: 80000
48
+
49
+ # 체크포인트 설정
50
+ checkpoints:
51
+ directory: "state/checkpoints"
52
+ required_stages:
53
+ - "06-implementation"
54
+ - "07-refactoring"
File without changes
@@ -0,0 +1,272 @@
1
+ #!/bin/bash
2
+ # ax-templates AI Benchmarking Script
3
+ # AI 모델 성능 비교 및 벤치마킹
4
+
5
+ set -e
6
+
7
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
8
+ PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
9
+ CONFIG_FILE="$PROJECT_ROOT/config/ai_benchmarking.yaml"
10
+ BENCHMARKS_DIR="$PROJECT_ROOT/state/ai_benchmarks"
11
+ REPORTS_DIR="$BENCHMARKS_DIR/reports"
12
+
13
+ # 색상 정의
14
+ RED='\033[0;31m'
15
+ GREEN='\033[0;32m'
16
+ YELLOW='\033[1;33m'
17
+ BLUE='\033[0;34m'
18
+ CYAN='\033[0;36m'
19
+ NC='\033[0m'
20
+
21
+ # 로그 함수
22
+ log_info() { echo -e "${BLUE}[BENCHMARK]${NC} $1"; }
23
+ log_success() { echo -e "${GREEN}[BENCHMARK]${NC} $1"; }
24
+ log_warning() { echo -e "${YELLOW}[BENCHMARK]${NC} $1"; }
25
+ log_error() { echo -e "${RED}[BENCHMARK]${NC} $1"; }
26
+
27
+ # 디렉토리 확인
28
+ ensure_dirs() {
29
+ mkdir -p "$BENCHMARKS_DIR"
30
+ mkdir -p "$REPORTS_DIR"
31
+ }
32
+
33
+ # 사용법 출력
34
+ print_usage() {
35
+ echo "사용법: $0 [options]"
36
+ echo ""
37
+ echo "옵션:"
38
+ echo " --task TYPE 벤치마크 태스크 유형 (code_generation, refactoring, test_generation)"
39
+ echo " --models MODELS 비교할 모델 (쉼표 구분, 예: claude,codex)"
40
+ echo " --samples N 샘플 태스크 수 (기본값: 3)"
41
+ echo " --verbose 상세 출력"
42
+ echo " --history PERIOD 히스토리 조회 (daily, weekly, monthly)"
43
+ echo " --help 도움말 출력"
44
+ }
45
+
46
+ # 벤치마크 실행
47
+ run_benchmark() {
48
+ local task_type="$1"
49
+ local models="$2"
50
+ local samples="$3"
51
+ local verbose="$4"
52
+
53
+ log_info "벤치마크 시작: $task_type"
54
+ log_info "모델: $models"
55
+ log_info "샘플 수: $samples"
56
+
57
+ ensure_dirs
58
+
59
+ local timestamp=$(date +%Y%m%d_%H%M%S)
60
+ local result_file="$BENCHMARKS_DIR/benchmark_${task_type}_${timestamp}.json"
61
+
62
+ # 모델별 점수 초기화
63
+ declare -A model_scores
64
+
65
+ IFS=',' read -ra model_array <<< "$models"
66
+
67
+ for model in "${model_array[@]}"; do
68
+ log_info "모델 테스트 중: $model"
69
+
70
+ # 시뮬레이션된 점수 (실제 구현에서는 실제 테스트 수행)
71
+ case "$model" in
72
+ "claude"|"claudecode")
73
+ model_scores[$model]=$(echo "scale=2; 0.85 + ($RANDOM % 10) / 100" | bc)
74
+ ;;
75
+ "codex")
76
+ model_scores[$model]=$(echo "scale=2; 0.80 + ($RANDOM % 15) / 100" | bc)
77
+ ;;
78
+ "gemini")
79
+ model_scores[$model]=$(echo "scale=2; 0.75 + ($RANDOM % 20) / 100" | bc)
80
+ ;;
81
+ *)
82
+ model_scores[$model]=$(echo "scale=2; 0.70 + ($RANDOM % 20) / 100" | bc)
83
+ ;;
84
+ esac
85
+
86
+ log_info " 점수: ${model_scores[$model]}"
87
+ done
88
+
89
+ # 최고 점수 모델 찾기
90
+ local best_model=""
91
+ local best_score=0
92
+
93
+ for model in "${!model_scores[@]}"; do
94
+ if (( $(echo "${model_scores[$model]} > $best_score" | bc -l) )); then
95
+ best_score=${model_scores[$model]}
96
+ best_model=$model
97
+ fi
98
+ done
99
+
100
+ # 결과 저장
101
+ cat > "$result_file" << EOF
102
+ {
103
+ "task_type": "$task_type",
104
+ "timestamp": "$(date -u +%Y-%m-%dT%H:%M:%SZ)",
105
+ "models_tested": "$(echo ${!model_scores[@]} | tr ' ' ',')",
106
+ "samples": $samples,
107
+ "results": {
108
+ $(for model in "${!model_scores[@]}"; do echo " \"$model\": ${model_scores[$model]},"; done | sed '$ s/,$//')
109
+ },
110
+ "best_model": "$best_model",
111
+ "best_score": $best_score
112
+ }
113
+ EOF
114
+
115
+ # latest.json 업데이트
116
+ cp "$result_file" "$BENCHMARKS_DIR/latest.json"
117
+
118
+ # 결과 출력
119
+ echo ""
120
+ echo "=========================================="
121
+ echo " 벤치마크 결과: $task_type"
122
+ echo "=========================================="
123
+ echo ""
124
+ echo "| 모델 | 점수 | 순위 |"
125
+ echo "|------|------|------|"
126
+
127
+ # 점수 순으로 정렬하여 출력
128
+ local rank=1
129
+ for model in $(for m in "${!model_scores[@]}"; do echo "$m ${model_scores[$m]}"; done | sort -k2 -rn | cut -d' ' -f1); do
130
+ local score=${model_scores[$model]}
131
+ local indicator=""
132
+ if [ "$model" = "$best_model" ]; then
133
+ indicator=" 🏆"
134
+ fi
135
+ echo "| $model | $score | $rank$indicator |"
136
+ rank=$((rank + 1))
137
+ done
138
+
139
+ echo ""
140
+ log_success "권장 모델: $best_model (점수: $best_score)"
141
+ log_info "결과 저장: $result_file"
142
+
143
+ # 리포트 생성
144
+ generate_report "$task_type" "$result_file"
145
+ }
146
+
147
+ # 리포트 생성
148
+ generate_report() {
149
+ local task_type="$1"
150
+ local result_file="$2"
151
+ local timestamp=$(date +%Y%m%d_%H%M%S)
152
+ local report_file="$REPORTS_DIR/report_${task_type}_${timestamp}.md"
153
+
154
+ cat > "$report_file" << EOF
155
+ # AI Benchmark Report
156
+
157
+ ## Task Type: $task_type
158
+ ## Date: $(date +%Y-%m-%d\ %H:%M:%S)
159
+
160
+ ### Summary
161
+
162
+ $(cat "$result_file" | grep -A100 '"results"' | head -20)
163
+
164
+ ### Recommendation
165
+
166
+ Based on the benchmark results, the recommended model for **$task_type** tasks is shown in the results above.
167
+
168
+ ### Metrics Used
169
+
170
+ - **Correctness**: Test pass rate
171
+ - **Performance**: Execution time
172
+ - **Style Compliance**: Lint score
173
+ - **Readability**: Complexity score
174
+
175
+ ---
176
+ Generated by ax-templates AI Benchmark System
177
+ EOF
178
+
179
+ log_info "리포트 생성: $report_file"
180
+ }
181
+
182
+ # 히스토리 조회
183
+ show_history() {
184
+ local period="$1"
185
+
186
+ log_info "히스토리 조회: $period"
187
+
188
+ echo ""
189
+ echo "=========================================="
190
+ echo " 벤치마크 히스토리 ($period)"
191
+ echo "=========================================="
192
+ echo ""
193
+
194
+ case "$period" in
195
+ "daily")
196
+ local days=1
197
+ ;;
198
+ "weekly")
199
+ local days=7
200
+ ;;
201
+ "monthly")
202
+ local days=30
203
+ ;;
204
+ *)
205
+ local days=7
206
+ ;;
207
+ esac
208
+
209
+ # 최근 벤치마크 파일 목록
210
+ find "$BENCHMARKS_DIR" -name "benchmark_*.json" -mtime -$days 2>/dev/null | while read -r file; do
211
+ if [ -f "$file" ]; then
212
+ local task=$(cat "$file" | grep -o '"task_type"[[:space:]]*:[[:space:]]*"[^"]*"' | cut -d'"' -f4)
213
+ local best=$(cat "$file" | grep -o '"best_model"[[:space:]]*:[[:space:]]*"[^"]*"' | cut -d'"' -f4)
214
+ local score=$(cat "$file" | grep -o '"best_score"[[:space:]]*:[[:space:]]*[0-9.]*' | cut -d':' -f2 | tr -d ' ')
215
+ local date=$(stat -f "%Sm" -t "%Y-%m-%d %H:%M" "$file" 2>/dev/null || stat --format="%y" "$file" 2>/dev/null | cut -d'.' -f1)
216
+
217
+ echo "[$date] $task: $best ($score)"
218
+ fi
219
+ done
220
+ }
221
+
222
+ # 메인 실행
223
+ main() {
224
+ local task_type="code_generation"
225
+ local models="claude,codex"
226
+ local samples=3
227
+ local verbose=false
228
+ local history=""
229
+
230
+ # 인자 파싱
231
+ while [[ $# -gt 0 ]]; do
232
+ case "$1" in
233
+ --task)
234
+ task_type="$2"
235
+ shift 2
236
+ ;;
237
+ --models)
238
+ models="$2"
239
+ shift 2
240
+ ;;
241
+ --samples)
242
+ samples="$2"
243
+ shift 2
244
+ ;;
245
+ --verbose)
246
+ verbose=true
247
+ shift
248
+ ;;
249
+ --history)
250
+ history="$2"
251
+ shift 2
252
+ ;;
253
+ --help)
254
+ print_usage
255
+ exit 0
256
+ ;;
257
+ *)
258
+ log_error "알 수 없는 옵션: $1"
259
+ print_usage
260
+ exit 1
261
+ ;;
262
+ esac
263
+ done
264
+
265
+ if [ -n "$history" ]; then
266
+ show_history "$history"
267
+ else
268
+ run_benchmark "$task_type" "$models" "$samples" "$verbose"
269
+ fi
270
+ }
271
+
272
+ main "$@"