aiwf 0.3.3 โ†’ 0.3.5

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 (208) hide show
  1. package/.aiwf/config/language.json +1 -1
  2. package/.aiwf/metrics/metrics.json +18 -0
  3. package/.aiwf/personas/current.json +5 -0
  4. package/.aiwf/sessions/session_1752877859489_1t7n2fhdb.json +7 -0
  5. package/.aiwf/sessions/session_1752877859515_cwdv211ry.json +7 -0
  6. package/.aiwf/sessions/session_1752877860664_huziadmbo.json +7 -0
  7. package/.aiwf/sessions/session_1752877860666_kyr5u1np6.json +7 -0
  8. package/.aiwf/sessions/session_1752877861848_9yinepw3t.json +7 -0
  9. package/.aiwf/sessions/session_1752877861874_y32sputuc.json +7 -0
  10. package/.aiwf/sessions/session_1752877862685_ivxbl5rhz.json +7 -0
  11. package/.aiwf/sessions/session_1752877862820_wnq4glvxi.json +7 -0
  12. package/.aiwf/sessions/session_1752877864632_3ebnpaelb.json +7 -0
  13. package/.aiwf/sessions/session_1752877864879_b9zgjcb7d.json +7 -0
  14. package/.aiwf/sessions/session_1752877865533_x14m1vodi.json +7 -0
  15. package/.aiwf/sessions/session_1752877865562_gkoh19n7d.json +7 -0
  16. package/.aiwf/sessions/session_1752877866333_wp8qpdcoh.json +7 -0
  17. package/.aiwf/sessions/session_1752877866509_dawntfpab.json +7 -0
  18. package/.aiwf/sessions/session_1752877866890_plc5vfucl.json +7 -0
  19. package/.aiwf/sessions/session_1752877866895_ga8hmq3oi.json +7 -0
  20. package/.aiwf/sessions/session_1752877867761_ayjp4v5f5.json +7 -0
  21. package/.aiwf/sessions/session_1752877867892_lfz6jy252.json +7 -0
  22. package/.aiwf/sessions/session_1752877868139_7bqd9ubli.json +7 -0
  23. package/.aiwf/sessions/session_1752877868162_zq3ofjbsh.json +7 -0
  24. package/.aiwf/sessions/session_1752877869054_7rlgm9jt6.json +7 -0
  25. package/.aiwf/sessions/session_1752877869477_ax3nhbxzr.json +7 -0
  26. package/.aiwf/sessions/session_1752877870095_6hgp4vl1e.json +7 -0
  27. package/.aiwf/sessions/session_1752877870381_qfcrdg4li.json +7 -0
  28. package/.aiwf/sessions/session_1752877871895_pgd5vllhz.json +7 -0
  29. package/.aiwf/sessions/session_1752877872199_jbhv2g2da.json +7 -0
  30. package/.aiwf/sessions/session_1752877872680_x04wpffu6.json +7 -0
  31. package/.aiwf/sessions/session_1752877872895_3y4vbeauo.json +7 -0
  32. package/.aiwf/sessions/session_1752877873178_3maolzc6b.json +7 -0
  33. package/.aiwf/sessions/session_1752877873180_ytm83j07f.json +7 -0
  34. package/.aiwf/sessions/session_1752877874217_dp56c9t42.json +7 -0
  35. package/.aiwf/sessions/session_1752877874415_epwp1g1og.json +7 -0
  36. package/.aiwf/sessions/session_1752877874454_heicyuryb.json +7 -0
  37. package/.aiwf/sessions/session_1752877874869_1c2illeu5.json +7 -0
  38. package/.aiwf/sessions/session_1752877874879_k1vo4vxyx.json +7 -0
  39. package/.aiwf/sessions/session_1752877874913_bwgyiz9bp.json +7 -0
  40. package/.aiwf/sessions/session_1752877876218_44807kztz.json +7 -0
  41. package/.aiwf/sessions/session_1752877876515_qkhjv5kpw.json +7 -0
  42. package/.aiwf/sessions/session_1752877876543_p605aud1m.json +7 -0
  43. package/.aiwf/sessions/session_1752877876819_l65w7ifck.json +7 -0
  44. package/.aiwf/sessions/session_1752877876867_xrhzss4we.json +7 -0
  45. package/.aiwf/sessions/session_1752877876872_u7aso54qb.json +7 -0
  46. package/.aiwf/sessions/session_1752877877705_telnfg4o6.json +7 -0
  47. package/.aiwf/sessions/session_1752877878285_6s45im2ib.json +7 -0
  48. package/.aiwf/sessions/session_1752877878506_v0dvguqhz.json +7 -0
  49. package/.aiwf/sessions/session_1752877878581_3ri3yc66a.json +7 -0
  50. package/.aiwf/sessions/session_1752877878756_a82x9s2pd.json +7 -0
  51. package/.aiwf/sessions/session_1752877878886_20pjsfour.json +7 -0
  52. package/.aiwf/sessions/session_1752877880266_fm1ydjw0g.json +7 -0
  53. package/.aiwf/sessions/session_1752877881149_xbat4z03d.json +7 -0
  54. package/.aiwf/sessions/session_1752877881551_qy5sic9qs.json +7 -0
  55. package/.aiwf/sessions/session_1752877881554_24ugd96wu.json +7 -0
  56. package/.aiwf/sessions/session_1752877881797_e9mm25uh0.json +7 -0
  57. package/.aiwf/sessions/session_1752877881822_bxvjj8c9g.json +7 -0
  58. package/.aiwf/sessions/session_1752877881890_jv7l6jve3.json +7 -0
  59. package/.aiwf/sessions/session_1752877881991_f0qugdtcq.json +7 -0
  60. package/.aiwf/sessions/session_1752877883387_0bvw9rvnx.json +7 -0
  61. package/.aiwf/sessions/session_1752877883820_q6g2md2up.json +7 -0
  62. package/.aiwf/sessions/session_1752877884393_sqr7trvjl.json +7 -0
  63. package/.aiwf/sessions/session_1752877884500_whtypmzlf.json +7 -0
  64. package/.aiwf/sessions/session_1752877884645_y9mvvxli1.json +7 -0
  65. package/.aiwf/sessions/session_1752877884733_hk46eenel.json +7 -0
  66. package/.aiwf/sessions/session_1752877884738_c62j6214r.json +7 -0
  67. package/.aiwf/sessions/session_1752877884771_temhxehoz.json +7 -0
  68. package/.aiwf/sessions/session_1752877885643_6v5fcktc7.json +7 -0
  69. package/.aiwf/sessions/session_1752877886426_ee8di2fqh.json +7 -0
  70. package/.aiwf/sessions/session_1752877886549_3xj6tdoew.json +7 -0
  71. package/.aiwf/sessions/session_1752877886604_aj80yyfco.json +7 -0
  72. package/.aiwf/sessions/session_1752877886702_2b8841vyg.json +7 -0
  73. package/.aiwf/sessions/session_1752877886712_ntqc8b8bz.json +7 -0
  74. package/.aiwf/sessions/session_1752877886968_946m8tbw6.json +7 -0
  75. package/.aiwf/sessions/session_1752877887008_wg6zfg8dn.json +7 -0
  76. package/.aiwf/sessions/session_1752877888479_ciiu2qiqs.json +7 -0
  77. package/.aiwf/sessions/session_1752877889330_ravg8l66k.json +7 -0
  78. package/.aiwf/sessions/session_1752877889542_7zepkhjkc.json +7 -0
  79. package/.aiwf/sessions/session_1752877889638_ev4htqiu0.json +7 -0
  80. package/.aiwf/sessions/session_1752877889956_szphy2qma.json +7 -0
  81. package/.aiwf/sessions/session_1752877890220_o6aaa57tt.json +7 -0
  82. package/.aiwf/sessions/session_1752877890527_v2loy5vu1.json +7 -0
  83. package/.aiwf/sessions/session_1752877890572_cwq8fiuma.json +7 -0
  84. package/.aiwf/sessions/session_1752877892200_sgcwq1alt.json +7 -0
  85. package/.aiwf/sessions/session_1752877892268_v8kexpbc5.json +7 -0
  86. package/.aiwf/sessions/session_1752877892384_1gbbgrp4y.json +7 -0
  87. package/.aiwf/sessions/session_1752877893568_9p2n5p31a.json +7 -0
  88. package/.aiwf/sessions/session_1752877893727_un34a5tvp.json +7 -0
  89. package/.aiwf/sessions/session_1752877893778_01j79sw9i.json +7 -0
  90. package/.aiwf/sessions/session_1752877894053_jrhba6wko.json +7 -0
  91. package/.aiwf/sessions/session_1752877894082_x3bghawox.json +7 -0
  92. package/.aiwf/sessions/session_1752877894500_iytiav2ku.json +7 -0
  93. package/.aiwf/sessions/session_1752877894667_ucn0gc2ge.json +7 -0
  94. package/.aiwf/test-results-s02.json +4 -4
  95. package/.claude/commands/aiwf/aiwf_changelog.md +82 -0
  96. package/.claude/commands/aiwf/aiwf_code_review.md +88 -0
  97. package/.claude/commands/aiwf/aiwf_commit.md +160 -0
  98. package/.claude/commands/aiwf/aiwf_compress_aggressive_persona.md +53 -0
  99. package/.claude/commands/aiwf/aiwf_compress_context.md +116 -0
  100. package/.claude/commands/aiwf/aiwf_compress_minimal_persona.md +48 -0
  101. package/.claude/commands/aiwf/aiwf_compress_stats.md +79 -0
  102. package/.claude/commands/aiwf/aiwf_compress_with_persona.md +51 -0
  103. package/.claude/commands/aiwf/aiwf_create_feature_ledger.md +54 -0
  104. package/.claude/commands/aiwf/aiwf_create_general_task.md +147 -0
  105. package/.claude/commands/aiwf/aiwf_create_milestone_plan.md +194 -0
  106. package/.claude/commands/aiwf/aiwf_create_prd.md +280 -0
  107. package/.claude/commands/aiwf/aiwf_create_sprint_tasks.md +189 -0
  108. package/.claude/commands/aiwf/aiwf_create_sprints_from_milestone.md +121 -0
  109. package/.claude/commands/aiwf/aiwf_default_mode.md +44 -0
  110. package/.claude/commands/aiwf/aiwf_discuss_review.md +29 -0
  111. package/.claude/commands/aiwf/aiwf_do_task.md +109 -0
  112. package/.claude/commands/aiwf/aiwf_docs.md +225 -0
  113. package/.claude/commands/aiwf/aiwf_evaluate.md +92 -0
  114. package/.claude/commands/aiwf/aiwf_get_feature_details.md +78 -0
  115. package/.claude/commands/aiwf/aiwf_infinite.md +202 -0
  116. package/.claude/commands/aiwf/aiwf_initialize.md +134 -0
  117. package/.claude/commands/aiwf/aiwf_issue_create.md +65 -0
  118. package/.claude/commands/aiwf/aiwf_link_feature_to_milestone.md +57 -0
  119. package/.claude/commands/aiwf/aiwf_list_features.md +54 -0
  120. package/.claude/commands/aiwf/aiwf_mermaid.md +272 -0
  121. package/.claude/commands/aiwf/aiwf_persona_architect.md +48 -0
  122. package/.claude/commands/aiwf/aiwf_persona_backend.md +37 -0
  123. package/.claude/commands/aiwf/aiwf_persona_data_analyst.md +37 -0
  124. package/.claude/commands/aiwf/aiwf_persona_frontend.md +37 -0
  125. package/.claude/commands/aiwf/aiwf_persona_security.md +48 -0
  126. package/.claude/commands/aiwf/aiwf_persona_status.md +50 -0
  127. package/.claude/commands/aiwf/aiwf_pr_create.md +76 -0
  128. package/.claude/commands/aiwf/aiwf_prime.md +9 -0
  129. package/.claude/commands/aiwf/aiwf_project_review.md +261 -0
  130. package/.claude/commands/aiwf/aiwf_switch_language.md +160 -0
  131. package/.claude/commands/aiwf/aiwf_test.md +124 -0
  132. package/.claude/commands/aiwf/aiwf_testing_review.md +198 -0
  133. package/.claude/commands/aiwf/aiwf_tm-run-all-subtask.md +210 -0
  134. package/.claude/commands/aiwf/aiwf_ultrathink_code_advanced.md +460 -0
  135. package/.claude/commands/aiwf/aiwf_ultrathink_code_basic.md +165 -0
  136. package/.claude/commands/aiwf/aiwf_ultrathink_general.md +305 -0
  137. package/.claude/commands/aiwf/aiwf_update_docs_kr.md +25 -0
  138. package/.claude/commands/aiwf/aiwf_update_feature_status.md +53 -0
  139. package/.claude/commands/aiwf/aiwf_yolo.md +300 -0
  140. package/.eslintrc.json +26 -0
  141. package/.prettierrc +10 -0
  142. package/CHANGELOG.md +54 -5
  143. package/CLAUDE.md +154 -54
  144. package/README.ko.md +25 -0
  145. package/README.md +25 -0
  146. package/TEST_RECOVERY_PLAN.md +68 -0
  147. package/claude-code/aiwf/ko/commands/ai-persona.js +1 -1
  148. package/docs/CLEANUP_RECOMMENDATIONS.md +86 -0
  149. package/docs/CLI_USAGE_GUIDE.md +479 -0
  150. package/package.json +9 -9
  151. package/scripts/update-feature-status.js +70 -0
  152. package/{lib โ†’ src/cli}/cache-cli.js +4 -4
  153. package/src/cli/index.js +206 -0
  154. package/{language-cli.js โ†’ src/cli/language-cli.js} +11 -4
  155. package/src/commands/cache-templates.js +209 -0
  156. package/src/commands/create-offline.js +86 -0
  157. package/src/commands/create-project.js +151 -0
  158. package/src/commands/persona.js +288 -0
  159. package/src/lib/backup-manager.js +270 -0
  160. package/src/lib/file-downloader.js +208 -0
  161. package/src/lib/installer.js +676 -0
  162. package/src/lib/rollback-manager.js +418 -0
  163. package/src/lib/validator.js +561 -0
  164. package/src/utils/git-integration.js +173 -0
  165. package/{language-utils.js โ†’ src/utils/language-utils.js} +2 -1
  166. package/src/utils/messages.js +136 -0
  167. package/src/utils/paths.js +130 -0
  168. package/tests/application.test.js +2 -2
  169. package/tests/installer.test.js +2 -2
  170. package/tests/integration/ai-persona-system.test.js +4 -4
  171. package/tests/integration/test-persona-system/docs/README.md +1 -0
  172. package/tests/integration/test-persona-system/package.json +1 -0
  173. package/tests/integration/test-persona-system/src/auth.js +1 -0
  174. package/tests/integration/test-persona-system/src/index.js +1 -0
  175. package/tests/integration/test-persona-system/test/test.js +1 -0
  176. package/tests/language-utils.test.js +1 -1
  177. package/tests/temp_invalid_json/invalid.json +1 -0
  178. package/tests/unit/ai-persona-manager.test.js +7 -7
  179. package/.aiwf/05_DOCUMENTATION/performance-report.md +0 -33
  180. package/.aiwf/test-cache/86c7f9e80251abb8bedd58953ab0d1779e46b4f43ea33b63bffdb778106373b0.json +0 -6
  181. package/.aiwf/test-cache/9e252a90b80fce0585d7ed0646e7a9b4343e109f661f42a3ae678ba1ec5e22c7.json +0 -7
  182. package/.aiwf/token-data/alerts.json +0 -293
  183. package/.aiwf/token-data/monitor-config.json +0 -12
  184. package/CHANGELOG_M02.md +0 -52
  185. package/claude-code/aiwf/ko/templates/web-app/template/package-lock.json +0 -10022
  186. package/claude-code/aiwf/ko/token-data/alerts.json +0 -293
  187. package/claude-code/aiwf/ko/token-data/monitor-config.json +0 -12
  188. package/docs/m02-dod-checklist.md +0 -125
  189. package/docs/m02-gap-analysis.md +0 -214
  190. package/docs/m02-milestone-completion-report.md +0 -186
  191. package/docs/m02-milestone-executive-summary.md +0 -68
  192. package/index.js +0 -1951
  193. package/lib/cache-integration.js +0 -401
  194. package/lib/file-batch-processor.js +0 -401
  195. package/lib/performance-benchmark.js +0 -621
  196. package/lib/template-manager.js +0 -310
  197. package/scripts/validate-commands.cjs +0 -338
  198. /package/{lib โ†’ src/lib}/ai-persona-manager.js +0 -0
  199. /package/{lib โ†’ src/lib}/cache-system.js +0 -0
  200. /package/{lib โ†’ src/lib}/context-engine.js +0 -0
  201. /package/{lib โ†’ src/lib}/memory-profiler.js +0 -0
  202. /package/{lib โ†’ src/lib}/metrics-collector.js +0 -0
  203. /package/{lib โ†’ src/lib}/offline-detector.js +0 -0
  204. /package/{lib โ†’ src/lib}/task-analyzer.js +0 -0
  205. /package/{lib โ†’ src/lib}/template-cache-system.js +0 -0
  206. /package/{lib โ†’ src/lib}/template-downloader.js +0 -0
  207. /package/{lib โ†’ src/lib}/template-version-manager.js +0 -0
  208. /package/{lib โ†’ src/lib}/token-optimizer.js +0 -0
@@ -0,0 +1,116 @@
1
+ # Context ์••์ถ• - ํ† ํฐ ์ ˆ์•ฝ ์‹คํ–‰
2
+
3
+ ํ† ํฐ ์‚ฌ์šฉ๋Ÿ‰์„ ์ค„์ด๊ธฐ ์œ„ํ•ด ํ”„๋กœ์ ํŠธ ์ปจํ…์ŠคํŠธ๋ฅผ ์••์ถ•ํ•ฉ๋‹ˆ๋‹ค. 3๋‹จ๊ณ„ ์••์ถ• ๋ชจ๋“œ์™€ ์‹ค์‹œ๊ฐ„ ํ† ํฐ ๋ชจ๋‹ˆํ„ฐ๋ง์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
4
+
5
+ **์ค‘์š”์‚ฌํ•ญ:**
6
+ - ๊ธฐ๋ณธ ๋ชจ๋“œ๋Š” 'balanced'๋กœ 30-50% ํ† ํฐ ์ ˆ์•ฝ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค
7
+ - ์••์ถ• ์ „ํ›„ ํ† ํฐ ์‚ฌ์šฉ๋Ÿ‰๊ณผ ์ ˆ์•ฝ๋ฅ ์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค
8
+ - ์ค‘์š”ํ•œ ์ •๋ณด๋Š” ๋ชจ๋“  ๋ชจ๋“œ์—์„œ ๋ณด์กด๋ฉ๋‹ˆ๋‹ค
9
+
10
+ ## ์‚ฌ์šฉ๋ฒ•
11
+
12
+ ```
13
+ /project:aiwf:compress_context [mode] [target]
14
+ ```
15
+
16
+ ### ํŒŒ๋ผ๋ฏธํ„ฐ
17
+
18
+ - `mode` (์„ ํƒ์ ): ์••์ถ• ๋ชจ๋“œ
19
+ - `aggressive`: 50-70% ํ† ํฐ ์ ˆ์•ฝ (critical/high ์ •๋ณด๋งŒ ์œ ์ง€)
20
+ - `balanced`: 30-50% ํ† ํฐ ์ ˆ์•ฝ (๊ธฐ๋ณธ๊ฐ’, medium ์ด์ƒ ์ •๋ณด ์œ ์ง€)
21
+ - `minimal`: 10-30% ํ† ํฐ ์ ˆ์•ฝ (๋ชจ๋“  ์ •๋ณด ์œ ์ง€, ํฌ๋งทํŒ…๋งŒ ์ตœ์ ํ™”)
22
+
23
+ - `target` (์„ ํƒ์ ): ์••์ถ• ๋Œ€์ƒ
24
+ - ํŒŒ์ผ ๊ฒฝ๋กœ: ํŠน์ • ํŒŒ์ผ ์••์ถ•
25
+ - ๋””๋ ‰ํ† ๋ฆฌ ๊ฒฝ๋กœ: ๋””๋ ‰ํ† ๋ฆฌ ๋‚ด ๋ชจ๋“  ๋งˆํฌ๋‹ค์šด ํŒŒ์ผ ์••์ถ•
26
+ - ์ƒ๋žต ์‹œ: ํ˜„์žฌ ํ”„๋กœ์ ํŠธ์˜ ์ฃผ์š” ๋ฌธ์„œ ์••์ถ•
27
+
28
+ ## ์••์ถ• ์ „๋žต
29
+
30
+ ### Aggressive ๋ชจ๋“œ (50-70% ์••์ถ•)
31
+ - Critical/High ์ค‘์š”๋„ ์„น์…˜๋งŒ ์œ ์ง€
32
+ - ์ฝ”๋“œ ์˜ˆ์ œ ๋Œ€ํญ ์ถ•์†Œ
33
+ - ์ค‘๋ณต ์ •๋ณด ์™„์ „ ์ œ๊ฑฐ
34
+ - Output Log, ํžˆ์Šคํ† ๋ฆฌ ๋“ฑ ์ œ๊ฑฐ
35
+
36
+ ### Balanced ๋ชจ๋“œ (30-50% ์••์ถ•)
37
+ - Critical/High/Medium ์ค‘์š”๋„ ์„น์…˜ ์œ ์ง€
38
+ - ์ฝ”๋“œ ์˜ˆ์ œ ์„ ํƒ์  ์œ ์ง€
39
+ - ์ค‘๋ณต ์ •๋ณด ๋ถ€๋ถ„ ์ œ๊ฑฐ
40
+ - ์˜ค๋ž˜๋œ ๋กœ๊ทธ๋งŒ ์ œ๊ฑฐ
41
+
42
+ ### Minimal ๋ชจ๋“œ (10-30% ์••์ถ•)
43
+ - ๋ชจ๋“  ์ค‘์š”๋„ ์œ ์ง€
44
+ - ๊ณต๋ฐฑ ๋ฐ ํ˜•์‹ ์ •๋ฆฌ
45
+ - ๋ช…๋ฐฑํ•œ ์ค‘๋ณต๋งŒ ์ œ๊ฑฐ
46
+ - ์•ˆ์ „ํ•œ ์••์ถ•
47
+
48
+ ## ์‹คํ–‰ ๋‹จ๊ณ„
49
+
50
+ 1. **์••์ถ• ๋Œ€์ƒ ํŒŒ์•…**
51
+ - ๋Œ€์ƒ ํŒŒ์ผ/๋””๋ ‰ํ† ๋ฆฌ ํ™•์ธ
52
+ - ์›๋ณธ ํ† ํฐ ์ˆ˜ ๊ณ„์‚ฐ
53
+
54
+ 2. **์••์ถ• ๋ชจ๋“œ ์ ์šฉ**
55
+ - ์„ ํƒ๋œ ๋ชจ๋“œ์— ๋”ฐ๋ผ ์••์ถ• ์ „๋žต ์‹คํ–‰
56
+ - ์ค‘์š”๋„ ๊ธฐ๋ฐ˜ ์„น์…˜ ํ•„ํ„ฐ๋ง
57
+ - ์••์ถ• ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ ์šฉ
58
+
59
+ 3. **์••์ถ• ๊ฒฐ๊ณผ ๊ฒ€์ฆ**
60
+ - ์••์ถ• ํ›„ ํ† ํฐ ์ˆ˜ ๊ณ„์‚ฐ
61
+ - ์ ˆ์•ฝ๋ฅ  ๋ฐ ํ’ˆ์งˆ ์ ์ˆ˜ ํ‘œ์‹œ
62
+ - Critical ์ •๋ณด ๋ณด์กด ๊ฒ€์ฆ
63
+
64
+ 4. **์••์ถ• ํŒŒ์ผ ์ƒ์„ฑ**
65
+ - ์••์ถ•๋œ ์ปจํ…์ธ ๋ฅผ ์ƒˆ ํŒŒ์ผ๋กœ ์ €์žฅ
66
+ - ์›๋ณธ ํŒŒ์ผ์€ ๋ณด์กด
67
+ - ์••์ถ• ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ๊ธฐ๋ก
68
+
69
+ ## ์ถœ๋ ฅ ํ˜•์‹
70
+
71
+ ```
72
+ ๐Ÿ—œ๏ธ Context ์••์ถ• ์‹œ์ž‘
73
+ โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
74
+ ์••์ถ• ๋ชจ๋“œ: balanced
75
+ ๋Œ€์ƒ: /workspace/project/.aiwf/
76
+
77
+ ๐Ÿ“Š ์••์ถ• ์ „ ํ†ต๊ณ„:
78
+ - ์ด ํŒŒ์ผ ์ˆ˜: 15
79
+ - ์›๋ณธ ํ† ํฐ: 45,320
80
+ - ์›๋ณธ ํฌ๊ธฐ: 125.4 KB
81
+
82
+ โš™๏ธ ์••์ถ• ์ง„ํ–‰ ์ค‘...
83
+ โœ“ PROJECT_MANIFEST.md (5,320 โ†’ 2,890 ํ† ํฐ, -45.6%)
84
+ โœ“ ARCHITECTURE.md (8,210 โ†’ 4,105 ํ† ํฐ, -50.0%)
85
+ โœ“ M02_milestone_meta.md (3,450 โ†’ 2,070 ํ† ํฐ, -40.0%)
86
+ ... [์ถ”๊ฐ€ ํŒŒ์ผ๋“ค]
87
+
88
+ ๐Ÿ“Š ์••์ถ• ํ›„ ํ†ต๊ณ„:
89
+ - ์••์ถ•๋œ ํ† ํฐ: 27,192
90
+ - ์ ˆ์•ฝ๋œ ํ† ํฐ: 18,128
91
+ - ํ† ํฐ ์ ˆ์•ฝ๋ฅ : 40.0%
92
+ - ์••์ถ• ์‹œ๊ฐ„: 2.3์ดˆ
93
+ - ํ’ˆ์งˆ ์ ์ˆ˜: 92/100
94
+
95
+ โœ… ์••์ถ• ์™„๋ฃŒ!
96
+ ์••์ถ•๋œ ํŒŒ์ผ ์œ„์น˜: /workspace/project/.aiwf_compressed/
97
+ ```
98
+
99
+ ## ํ’ˆ์งˆ ๋ณด์ฆ
100
+
101
+ - **Critical ์ •๋ณด ๋ณด์กด**: ๋ชฉํ‘œ, ์š”๊ตฌ์‚ฌํ•ญ, ์Šน์ธ ๊ธฐ์ค€์€ ํ•ญ์ƒ ์œ ์ง€
102
+ - **๊ตฌ์กฐ ๋ณด์กด**: ๋ฌธ์„œ์˜ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ์™€ ๊ณ„์ธต ์œ ์ง€
103
+ - **๊ฐ€๋…์„ฑ ์œ ์ง€**: ์••์ถ• ํ›„์—๋„ ์ฝ๊ธฐ ์‰ฌ์šด ํ˜•ํƒœ ์œ ์ง€
104
+ - **๋ณต์› ๊ฐ€๋Šฅ**: ์••์ถ• ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋กœ ํ•„์š”์‹œ ๋ณต์› ์ง€์›
105
+
106
+ ## ๊ถŒ์žฅ ์‚ฌ์šฉ ์‹œ๋‚˜๋ฆฌ์˜ค
107
+
108
+ 1. **๋Œ€๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ ๋ฆฌ๋ทฐ ์‹œ**: aggressive ๋ชจ๋“œ๋กœ ํ•ต์‹ฌ๋งŒ ๋น ๋ฅด๊ฒŒ ํŒŒ์•…
109
+ 2. **์ผ๋ฐ˜ ๊ฐœ๋ฐœ ์ž‘์—…**: balanced ๋ชจ๋“œ๋กœ ํšจ์œจ์ ์ธ ์ปจํ…์ŠคํŠธ ๊ด€๋ฆฌ
110
+ 3. **๋””๋ฒ„๊น…/์ƒ์„ธ ๋ถ„์„**: minimal ๋ชจ๋“œ๋กœ ๋ชจ๋“  ์ •๋ณด ์œ ์ง€ํ•˜๋ฉฐ ์ตœ์ ํ™”
111
+
112
+ ## ์ฃผ์˜์‚ฌํ•ญ
113
+
114
+ - ์••์ถ•๋œ ํŒŒ์ผ์€ ๋ณ„๋„ ๋””๋ ‰ํ† ๋ฆฌ์— ์ €์žฅ๋˜๋ฉฐ ์›๋ณธ์€ ๋ณด์กด๋ฉ๋‹ˆ๋‹ค
115
+ - ์••์ถ• ์‹œ ์ผ๋ถ€ ํ˜•์‹์ด๋‚˜ ์„ธ๋ถ€ ์ •๋ณด๊ฐ€ ์†์‹ค๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
116
+ - Critical๋กœ ํ‘œ์‹œ๋œ ์ •๋ณด๋Š” ๋ชจ๋“  ๋ชจ๋“œ์—์„œ ๋ณด์กด๋ฉ๋‹ˆ๋‹ค
@@ -0,0 +1,48 @@
1
+ # aiwf compress-minimal-persona
2
+
3
+ ํ™œ์„ฑํ™”๋œ ํŽ˜๋ฅด์†Œ๋‚˜๋ฅผ ๊ณ ๋ คํ•˜์—ฌ ์ตœ์†Œ ๋ชจ๋“œ๋กœ ์ปจํ…์ŠคํŠธ๋ฅผ ์••์ถ•ํ•ฉ๋‹ˆ๋‹ค.
4
+
5
+ ## ์‹คํ–‰
6
+
7
+ ```javascript
8
+ const { spawn } = require('child_process');
9
+ const path = require('path');
10
+
11
+ // .aiwf ๋””๋ ‰ํ† ๋ฆฌ๋กœ ์ด๋™ํ•˜์—ฌ ๋ช…๋ น ์‹คํ–‰
12
+ const cwd = path.join(process.cwd(), '.aiwf');
13
+ const proc = spawn('node', [
14
+ '../claude-code/aiwf/ko/commands/compress-context.js',
15
+ 'minimal',
16
+ '--persona'
17
+ ], { cwd, stdio: 'inherit' });
18
+
19
+ proc.on('error', (err) => {
20
+ console.error('๋ช…๋ น ์‹คํ–‰ ์‹คํŒจ:', err.message);
21
+ });
22
+ ```
23
+
24
+ ## ์„ค๋ช…
25
+
26
+ ํŽ˜๋ฅด์†Œ๋‚˜ ํŠน์„ฑ์„ ๊ณ ๋ คํ•˜๋ฉด์„œ๋„ ์ตœ์†Œํ•œ์˜ ์••์ถ•๋งŒ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. 10-30%์˜ ๋‚ฎ์€ ์••์ถ•๋ฅ ๋กœ ์›๋ณธ ๋‚ด์šฉ์„ ์ตœ๋Œ€ํ•œ ๋ณด์กดํ•ฉ๋‹ˆ๋‹ค.
27
+
28
+ ### ์••์ถ• ์ „๋žต
29
+
30
+ - ํŽ˜๋ฅด์†Œ๋‚˜ ๊ด€๋ จ ํŒจํ„ด์€ 100% ๋ณด์กด
31
+ - ์ค‘๋ณต ๋‚ด์šฉ๋งŒ ์ œ๊ฑฐ
32
+ - ๋ถˆํ•„์š”ํ•œ ๊ณต๋ฐฑ๊ณผ ํฌ๋งทํŒ… ์ •๋ฆฌ
33
+ - ํŽ˜๋ฅด์†Œ๋‚˜๋ณ„ ์ค‘์š”๋„ ์ ์ˆ˜๊ฐ€ ํ‰๊ท  ์ด์ƒ์ธ ์„น์…˜์€ ๊ทธ๋Œ€๋กœ ์œ ์ง€
34
+
35
+ ## ์ ํ•ฉํ•œ ์‚ฌ์šฉ ์‚ฌ๋ก€
36
+
37
+ - ์ค‘์š”ํ•œ ๊ธฐ์ˆ  ๋ฌธ์„œ
38
+ - ์ƒ์„ธํ•œ API ๋ฌธ์„œ
39
+ - ๋ณด์•ˆ ๊ด€๋ จ ๋ฌธ์„œ
40
+ - ๋ฐ์ดํ„ฐ ๋ถ„์„ ๋ฆฌํฌํŠธ
41
+
42
+ ## ๊ฒฐ๊ณผ
43
+
44
+ ์••์ถ• ํ›„์—๋„ ๋‹ค์Œ์ด ๋ณด์žฅ๋ฉ๋‹ˆ๋‹ค:
45
+ - ๋ชจ๋“  ํŽ˜๋ฅด์†Œ๋‚˜ ๊ด€๋ จ ํ‚ค์›Œ๋“œ ๋ณด์กด
46
+ - ๋ฌธ์„œ ๊ตฌ์กฐ ์™„์ „ ์œ ์ง€
47
+ - ์ฝ”๋“œ ๋ธ”๋ก๊ณผ ์˜ˆ์ œ ๋ณด์กด
48
+ - ํ…Œ์ด๋ธ”๊ณผ ๋‹ค์ด์–ด๊ทธ๋žจ ์œ ์ง€
@@ -0,0 +1,79 @@
1
+ # aiwf compress-stats
2
+
3
+ ํŽ˜๋ฅด์†Œ๋‚˜๋ณ„ ์••์ถ• ํ†ต๊ณ„๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
4
+
5
+ ## ์‹คํ–‰
6
+
7
+ ```javascript
8
+ const fs = require('fs');
9
+ const path = require('path');
10
+ const chalk = require('chalk');
11
+
12
+ // PersonaAwareCompressor import
13
+ const { PersonaAwareCompressor } = require(path.join(
14
+ process.cwd(),
15
+ 'claude-code/aiwf/ko/utils/persona-aware-compressor.js'
16
+ ));
17
+
18
+ try {
19
+ const compressor = new PersonaAwareCompressor();
20
+ const stats = compressor.getPersonaCompressionStats();
21
+
22
+ console.log(chalk.cyan('๐Ÿ“Š ํŽ˜๋ฅด์†Œ๋‚˜๋ณ„ ์••์ถ• ํ†ต๊ณ„'));
23
+ console.log(chalk.gray('โ”'.repeat(50)));
24
+
25
+ if (stats.currentPersona) {
26
+ console.log(`ํ˜„์žฌ ํŽ˜๋ฅด์†Œ๋‚˜: ${chalk.yellow(stats.currentPersona)}`);
27
+
28
+ if (stats.strategy) {
29
+ console.log('\n๐Ÿ“‹ ํ˜„์žฌ ํŽ˜๋ฅด์†Œ๋‚˜ ์••์ถ• ์ „๋žต:');
30
+ console.log(`- ํฌ์ปค์Šค ์˜์—ญ: ${stats.strategy.focusAreas.join(', ')}`);
31
+ console.log(`- ์š”์•ฝ ์ดˆ์ : ${stats.strategy.summarizationFocus}`);
32
+ console.log(`- ๋ณด์กด ํŒจํ„ด: ${stats.strategy.preservePatterns.slice(0, 5).join(', ')}...`);
33
+ }
34
+ } else {
35
+ console.log(chalk.yellow('โš ๏ธ ํ™œ์„ฑํ™”๋œ ํŽ˜๋ฅด์†Œ๋‚˜๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.'));
36
+ }
37
+
38
+ const avgRatios = stats.averageRatioByPersona;
39
+ if (Object.keys(avgRatios).length > 0) {
40
+ console.log('\n๐Ÿ“ˆ ํŽ˜๋ฅด์†Œ๋‚˜๋ณ„ ํ‰๊ท  ์••์ถ•๋ฅ :');
41
+ Object.entries(avgRatios).forEach(([persona, ratio]) => {
42
+ const personaNames = {
43
+ architect: 'Architect',
44
+ security: 'Security Expert',
45
+ frontend: 'Frontend Developer',
46
+ backend: 'Backend Developer',
47
+ data_analyst: 'Data Analyst'
48
+ };
49
+ console.log(`- ${personaNames[persona] || persona}: ${chalk.green(ratio + '%')}`);
50
+ });
51
+ } else {
52
+ console.log('\n์••์ถ• ํžˆ์Šคํ† ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.');
53
+ }
54
+
55
+ } catch (error) {
56
+ console.error(chalk.red('์˜ค๋ฅ˜:'), error.message);
57
+ }
58
+ ```
59
+
60
+ ## ์„ค๋ช…
61
+
62
+ ํŽ˜๋ฅด์†Œ๋‚˜๋ณ„ ์••์ถ• ํ†ต๊ณ„์™€ ํ˜„์žฌ ํ™œ์„ฑํ™”๋œ ํŽ˜๋ฅด์†Œ๋‚˜์˜ ์••์ถ• ์ „๋žต์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
63
+
64
+ ### ์ œ๊ณต ์ •๋ณด
65
+
66
+ 1. **ํ˜„์žฌ ํŽ˜๋ฅด์†Œ๋‚˜ ์ •๋ณด**
67
+ - ํ™œ์„ฑ ํŽ˜๋ฅด์†Œ๋‚˜ ์ด๋ฆ„
68
+ - ์••์ถ• ์ „๋žต ์ƒ์„ธ
69
+ - ๋ณด์กด ํŒจํ„ด ๋ชฉ๋ก
70
+
71
+ 2. **์••์ถ• ํžˆ์Šคํ† ๋ฆฌ ํ†ต๊ณ„**
72
+ - ํŽ˜๋ฅด์†Œ๋‚˜๋ณ„ ํ‰๊ท  ์••์ถ•๋ฅ 
73
+ - ์••์ถ• ์„ฑ๋Šฅ ๋น„๊ต
74
+
75
+ ## ํ™œ์šฉ ๋ฐฉ๋ฒ•
76
+
77
+ - ํŽ˜๋ฅด์†Œ๋‚˜๋ณ„ ์••์ถ• ํšจ์œจ์„ฑ ๋น„๊ต
78
+ - ์ตœ์ ์˜ ์••์ถ• ๋ชจ๋“œ ์„ ํƒ
79
+ - ์••์ถ• ์ „๋žต ๊ฐœ์„ ์  ํŒŒ์•…
@@ -0,0 +1,51 @@
1
+ # aiwf compress-with-persona
2
+
3
+ ํ™œ์„ฑํ™”๋œ ํŽ˜๋ฅด์†Œ๋‚˜๋ฅผ ๊ณ ๋ คํ•˜์—ฌ ์ปจํ…์ŠคํŠธ๋ฅผ ์••์ถ•ํ•ฉ๋‹ˆ๋‹ค.
4
+
5
+ ## ์‹คํ–‰
6
+
7
+ ```javascript
8
+ const { spawn } = require('child_process');
9
+ const path = require('path');
10
+
11
+ // .aiwf ๋””๋ ‰ํ† ๋ฆฌ๋กœ ์ด๋™ํ•˜์—ฌ ๋ช…๋ น ์‹คํ–‰
12
+ const cwd = path.join(process.cwd(), '.aiwf');
13
+ const proc = spawn('node', [
14
+ '../claude-code/aiwf/ko/commands/compress-context.js',
15
+ 'balanced',
16
+ '--persona'
17
+ ], { cwd, stdio: 'inherit' });
18
+
19
+ proc.on('error', (err) => {
20
+ console.error('๋ช…๋ น ์‹คํ–‰ ์‹คํŒจ:', err.message);
21
+ });
22
+ ```
23
+
24
+ ## ์„ค๋ช…
25
+
26
+ ํ˜„์žฌ ํ™œ์„ฑํ™”๋œ ํŽ˜๋ฅด์†Œ๋‚˜์˜ ํŠน์„ฑ์„ ๊ณ ๋ คํ•˜์—ฌ ์ปจํ…์ŠคํŠธ๋ฅผ ์••์ถ•ํ•ฉ๋‹ˆ๋‹ค. ํŽ˜๋ฅด์†Œ๋‚˜๋ณ„๋กœ ์ค‘์š”ํ•œ ํŒจํ„ด๊ณผ ํ‚ค์›Œ๋“œ๋ฅผ ๋ณด์กดํ•˜๋ฉฐ, ๊ด€๋ จ์„ฑ์ด ๋‚ฎ์€ ๋‚ด์šฉ์€ ๋” ์ ๊ทน์ ์œผ๋กœ ์••์ถ•ํ•ฉ๋‹ˆ๋‹ค.
27
+
28
+ ### ํŽ˜๋ฅด์†Œ๋‚˜๋ณ„ ์••์ถ• ์ „๋žต
29
+
30
+ - **Architect**: ์‹œ์Šคํ…œ ์„ค๊ณ„, ์•„ํ‚คํ…์ฒ˜ ํŒจํ„ด ์ค‘์‹ฌ ๋ณด์กด
31
+ - **Security**: ๋ณด์•ˆ ๊ฒฝ๊ณ , ์ทจ์•ฝ์  ์ •๋ณด ์™„์ „ ๋ณด์กด
32
+ - **Frontend**: UI/UX ์„ค๋ช…, ์‹œ๊ฐ์  ์š”์†Œ ์ค‘์‹ฌ ๋ณด์กด
33
+ - **Backend**: API ๋ช…์„ธ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ ๋ณด์กด
34
+ - **Data Analyst**: ๋ฐ์ดํ„ฐ ์„ค๋ช…, ์ธ์‚ฌ์ดํŠธ ์™„์ „ ๋ณด์กด
35
+
36
+ ## ์‚ฌ์šฉ ์˜ˆ์‹œ
37
+
38
+ ```bash
39
+ # ๊ธฐ๋ณธ ๋ชจ๋“œ (balanced)๋กœ ํŽ˜๋ฅด์†Œ๋‚˜ ์ธ์‹ ์••์ถ•
40
+ aiwf compress-with-persona
41
+
42
+ # ๋‹ค๋ฅธ ์••์ถ• ๋ชจ๋“œ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ
43
+ aiwf compress-aggressive-persona # aggressive ๋ชจ๋“œ
44
+ aiwf compress-minimal-persona # minimal ๋ชจ๋“œ
45
+ ```
46
+
47
+ ## ์ฐธ๊ณ 
48
+
49
+ - ํŽ˜๋ฅด์†Œ๋‚˜๊ฐ€ ํ™œ์„ฑํ™”๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ์ผ๋ฐ˜ ์••์ถ•์ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค
50
+ - ์••์ถ•๋œ ํŒŒ์ผ์€ `.aiwf_compressed/` ๋””๋ ‰ํ† ๋ฆฌ์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค
51
+ - ํŽ˜๋ฅด์†Œ๋‚˜๋ณ„ ์ค‘์š” ํŒจํ„ด ๋ณด์กด์œจ์ด ๋ฆฌํฌํŠธ์— ํฌํ•จ๋ฉ๋‹ˆ๋‹ค
@@ -0,0 +1,54 @@
1
+ # Feature Ledger ์ƒ์„ฑ
2
+
3
+ ์ƒˆ๋กœ์šด Feature Ledger๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ์„ ์ถ”์ ํ•ฉ๋‹ˆ๋‹ค.
4
+
5
+ ```bash
6
+ cd .aiwf && node ../claude-code/aiwf/ko/commands/feature-ledger.js create "$@"
7
+ ```
8
+
9
+ ## ์„ค๋ช…
10
+
11
+ Feature Ledger๋Š” ํ”„๋กœ์ ํŠธ์˜ ๊ฐ ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ์„ ์ฒด๊ณ„์ ์œผ๋กœ ์ถ”์ ํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•˜๊ธฐ ์‹œ์ž‘ํ•  ๋•Œ ์ด ๋ช…๋ น์–ด๋กœ Feature๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
12
+
13
+ ### ๐ŸŽฏ ์ฃผ์š” ๊ธฐ๋Šฅ
14
+ - ์ž๋™ Feature ID ํ• ๋‹น (FL001, FL002...)
15
+ - ํ‘œ์ค€ํ™”๋œ ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ ์ƒ์„ฑ
16
+ - Feature ์ธ๋ฑ์Šค ์ž๋™ ์—…๋ฐ์ดํŠธ
17
+ - Git ๋ธŒ๋žœ์น˜ ์ƒ์„ฑ ๊ฐ€์ด๋“œ ์ œ๊ณต
18
+
19
+ ### ๐Ÿ“ ์‚ฌ์šฉ๋ฒ•
20
+ ```bash
21
+ # ๋Œ€ํ™”ํ˜• ๋ชจ๋“œ (๊ถŒ์žฅ)
22
+ /project:aiwf:create_feature_ledger
23
+
24
+ # ์ง์ ‘ ์ด๋ฆ„ ์ง€์ •
25
+ /project:aiwf:create_feature_ledger user_authentication
26
+ /project:aiwf:create_feature_ledger "Dashboard Redesign"
27
+ ```
28
+
29
+ ### ๐Ÿ“‚ ์ƒ์„ฑ ์œ„์น˜
30
+ - `.aiwf/06_FEATURE_LEDGERS/active/FL###_feature_name.md`
31
+ - ์ธ๋ฑ์Šค ํŒŒ์ผ ์ž๋™ ์—…๋ฐ์ดํŠธ
32
+
33
+ ### โœ… ์ƒ์„ฑ ๊ณผ์ •
34
+ 1. ๋‹ค์Œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ Feature ID ํ™•์ธ
35
+ 2. Feature ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์ž…๋ ฅ ๋ฐ›๊ธฐ
36
+ 3. Feature ํŒŒ์ผ ์ƒ์„ฑ
37
+ 4. ์ธ๋ฑ์Šค ์—…๋ฐ์ดํŠธ
38
+ 5. Git ๋ธŒ๋žœ์น˜ ์ƒ์„ฑ ์•ˆ๋‚ด
39
+
40
+ ## ์˜ˆ์‹œ ์ถœ๋ ฅ
41
+ ```
42
+ ๐ŸŽฏ Feature Ledger ์ƒ์„ฑ ์™„๋ฃŒ!
43
+ โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
44
+ Feature ID: FL001
45
+ ์ œ๋ชฉ: User Authentication System
46
+ ์ƒํƒœ: active
47
+ ์šฐ์„ ์ˆœ์œ„: high
48
+ ์นดํ…Œ๊ณ ๋ฆฌ: feature
49
+
50
+ ๐Ÿ“ ํŒŒ์ผ ์œ„์น˜: .aiwf/06_FEATURE_LEDGERS/active/FL001_user_authentication.md
51
+
52
+ ๐Ÿ’ก ๋‹ค์Œ ๋‹จ๊ณ„:
53
+ git checkout -b feature/FL001-user-authentication
54
+ ```
@@ -0,0 +1,147 @@
1
+ # ์ผ๋ฐ˜ ํƒœ์Šคํฌ ์ƒ์„ฑ
2
+
3
+ ํ”„๋กœ์ ํŠธ ๋ฌธ์„œํ™” ํ‘œ์ค€์„ ๋”ฐ๋ผ `.aiwf/04_GENERAL_TASKS/`์— ์ƒˆ๋กœ์šด ์ผ๋ฐ˜ ํƒœ์Šคํฌ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
4
+
5
+ ## ์ •ํ™•ํžˆ ๋‹ค์Œ 10๊ฐœ ํ•ญ๋ชฉ์œผ๋กœ ํ•  ์ผ ๋ชฉ๋ก์„ ์ƒ์„ฑํ•˜์„ธ์š”
6
+
7
+ 1. ํƒœ์Šคํฌ ์ธ์ˆ˜ ๋ถ„์„ ๋ฐ ํƒœ์Šคํฌ ID ๊ฒฐ์ •
8
+ 2. ํ”„๋กœ์ ํŠธ ์ปจํ…์ŠคํŠธ ๋ฐ ๋ฌธ์„œํ™” ์š”๊ตฌ์‚ฌํ•ญ ๋กœ๋“œ
9
+ 3. ์ค‘๋ณต ์ž‘์—…์ด ์—†๋Š”์ง€ ํ™•์ธ
10
+ 4. ๊ตฌํ˜„ ์ปจํ…์ŠคํŠธ๋ฅผ ์œ„ํ•œ ์ฝ”๋“œ๋ฒ ์ด์Šค ์—ฐ๊ตฌ
11
+ 5. ํ‘œ์ค€ ํ…œํ”Œ๋ฆฟ์„ ์‚ฌ์šฉํ•˜์—ฌ ํƒœ์Šคํฌ ํŒŒ์ผ ์ƒ์„ฑ
12
+ 6. ์ ์ ˆํ•œ ์ปจํ…์ŠคํŠธ๋กœ ํƒœ์Šคํฌ ์„ธ๋ถ€์‚ฌํ•ญ ์ž‘์„ฑ
13
+ 7. ๊ธฐ์ˆ  ๊ฐ€์ด๋“œ๋ผ์ธ ๋ฐ ์ฝ”๋“œ๋ฒ ์ด์Šค ์ฐธ์กฐ ์ถ”๊ฐ€
14
+ 8. ์ƒˆ ํƒœ์Šคํฌ๋กœ ํ”„๋กœ์ ํŠธ ๋งค๋‹ˆํŽ˜์ŠคํŠธ ์—…๋ฐ์ดํŠธ
15
+ 9. ์•„ํ‚คํ…์ฒ˜์™€์˜ ํƒœ์Šคํฌ ์ •๋ ฌ ๊ฒ€์ฆ
16
+ 10. ์ตœ์ข… ํ’ˆ์งˆ ๊ฒ€์‚ฌ ๋ฐ ๋ณด๊ณ  ์ˆ˜ํ–‰
17
+
18
+ ## ๋ชจ๋“  ํ•  ์ผ ํ•ญ๋ชฉ์— ๋Œ€ํ•œ ์„ธ๋ถ€์‚ฌํ•ญ
19
+
20
+ ### 1. ํƒœ์Šคํฌ ์ธ์ˆ˜ ๋ถ„์„ ๋ฐ ํƒœ์Šคํฌ ID ๊ฒฐ์ •
21
+
22
+ ์ธ์ˆ˜ ํ˜•์‹: `<ํƒœ์Šคํฌ ์ œ๋ชฉ ๋˜๋Š” ์„ค๋ช…>`
23
+
24
+ - ์ธ์ˆ˜๊ฐ€ ๋น„์–ด์žˆ๋Š” ๊ฒฝ์šฐ, ์‚ฌ์šฉ์ž์—๊ฒŒ ํƒœ์Šคํฌ ์„ธ๋ถ€์‚ฌํ•ญ์„ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค
25
+ - `.aiwf/04_GENERAL_TASKS/`์˜ ๊ธฐ์กด ํƒœ์Šคํฌ๋ฅผ ํ™•์ธํ•˜์—ฌ ์ˆœ์ฐจ์  ํƒœ์Šคํฌ ID๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค
26
+ - ๊ฐ€์žฅ ๋†’์€ ํƒœ์Šคํฌ ๋ฒˆํ˜ธ(T###)๋ฅผ ์ฐพ์•„ 1์„ ์ฆ๊ฐ€์‹œํ‚ต๋‹ˆ๋‹ค
27
+ - ํ˜•์‹: `T###_<ํƒœ์Šคํฌ_์ œ๋ชฉ_์Šค๋„ค์ดํฌ_์ผ€์ด์Šค>.md`
28
+ - **์ค‘์š”**: ํƒœ์Šคํฌ ID๋Š” ๋นˆ ๊ณต๊ฐ„ ์—†์ด ์ˆœ์ฐจ์ ์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค
29
+
30
+ ### 2. ํ”„๋กœ์ ํŠธ ์ปจํ…์ŠคํŠธ ๋ฐ ๋ฌธ์„œํ™” ์š”๊ตฌ์‚ฌํ•ญ ๋กœ๋“œ
31
+
32
+ **๋ณ‘๋ ฌ ์„œ๋ธŒ์—์ด์ „ํŠธ**๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ์ ํŠธ ์ปจํ…์ŠคํŠธ๋ฅผ ์ฝ๊ณ  ์ดํ•ดํ•˜์„ธ์š”:
33
+
34
+ - `.aiwf/00_PROJECT_MANIFEST.md` ์ฝ๊ธฐ - ํ˜„์žฌ ํ”„๋กœ์ ํŠธ ์ƒํƒœ ํŒŒ์•…
35
+ - `.aiwf/01_PROJECT_DOCS/ARCHITECTURE.md` ์ฝ๊ธฐ - ์‹œ์Šคํ…œ ์ œ์•ฝ์‚ฌํ•ญ ์ดํ•ด
36
+ - `.aiwf/01_PROJECT_DOCS/LONG_TERM_VISION.md` ์ฝ๊ธฐ - ๋ฏธ๋ž˜ ๋ฐฉํ–ฅ์„ฑ ์ดํ•ด
37
+ - `.aiwf/10_STATE_OF_PROJECT/`์˜ ์ตœ์‹  ํŒŒ์ผ๋“ค ์ฝ๊ธฐ - ํ˜„์žฌ ์ƒํƒœ ๊ฒ€ํ† 
38
+ - `.aiwf/05_ARCHITECTURE_DECISIONS/`์—์„œ ๊ด€๋ จ ADR ์Šค์บ”
39
+ - **์ค‘์š”**: ์ผ๋ฐ˜ ํƒœ์Šคํฌ๋Š” ๋ฌธ์„œํ™”๋œ ์•„ํ‚คํ…์ฒ˜์™€ ์ผ์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค
40
+
41
+ ### 3. ์ค‘๋ณต ์ž‘์—…์ด ์—†๋Š”์ง€ ํ™•์ธ
42
+
43
+ **ํฌ๊ด„์ ์œผ๋กœ ๊ฒ€์ƒ‰**ํ•˜์—ฌ ์ค‘๋ณต ๊ฐ€๋Šฅ์„ฑ์„ ์ฐพ์œผ์„ธ์š”:
44
+
45
+ - `.aiwf/04_GENERAL_TASKS/`์˜ ๋ชจ๋“  ํŒŒ์ผ ํ™•์ธ
46
+ - `.aiwf/03_SPRINTS/*/T*.md`์˜ ์Šคํ”„๋ฆฐํŠธ ํƒœ์Šคํฌ ๊ฒ€์ƒ‰
47
+ - ์™„๋ฃŒ๋œ ๋งˆ์ผ์Šคํ†ค์—์„œ ์œ ์‚ฌํ•œ ๊ธฐ๋Šฅ ์ฐพ๊ธฐ
48
+ - **์ค‘์š”**: ์ค‘๋ณต์ด ๋ฐœ๊ฒฌ๋˜๋ฉด ์ค‘๋‹จํ•˜๊ณ  ํŒŒ์ผ ์ฐธ์กฐ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ณด๊ณ 
49
+
50
+ ### 4. ๊ตฌํ˜„ ์ปจํ…์ŠคํŠธ๋ฅผ ์œ„ํ•œ ์ฝ”๋“œ๋ฒ ์ด์Šค ์—ฐ๊ตฌ
51
+
52
+ ํƒœ์Šคํฌ ์„ค๋ช…์„ ๋ฐ”ํƒ•์œผ๋กœ **๋ณ‘๋ ฌ ์„œ๋ธŒ์—์ด์ „ํŠธ**๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ:
53
+
54
+ - ํƒœ์Šคํฌ๊ฐ€ ์š”๊ตฌํ•˜๋Š” ๊ฒƒ๊ณผ ์œ ์‚ฌํ•œ ๊ธฐ์กด ํŒจํ„ด ๊ฒ€์ƒ‰
55
+ - ์˜ํ–ฅ์„ ๋ฐ›์„ ์ฃผ์š” ์ธํ„ฐํŽ˜์ด์Šค, ํด๋ž˜์Šค ๋˜๋Š” ๋ชจ๋“ˆ ์‹๋ณ„
56
+ - ์ฝ”๋“œ๋ฒ ์ด์Šค์—์„œ ์œ ์‚ฌํ•œ ๊ตฌํ˜„ ์˜ˆ์ œ ์ฐพ๊ธฐ
57
+ - ๊ด€๋ จ ํ…Œ์ŠคํŠธ ํŒจํ„ด ๋ฐ ๊ธฐ์กด ํ…Œ์ŠคํŠธ ํŒŒ์ผ ์œ„์น˜ ํŒŒ์•…
58
+ - ์‚ฌ์šฉ๋˜๋Š” ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ ๋ฐ ๋กœ๊น… ํŒจํ„ด ๋ฐœ๊ฒฌ
59
+ - ๊ธฐ์กด ์ฝ”๋“œ์™€์˜ ํ†ตํ•ฉ ์ง€์  ๋งคํ•‘
60
+ - **๋ฌธ์„œํ™”**: ํƒœ์Šคํฌ์— ํฌํ•จํ•  ๋ชจ๋“  ๋ฐœ๊ฒฌ์‚ฌํ•ญ ๊ธฐ๋ก
61
+
62
+ ### 5. ํ‘œ์ค€ ํ…œํ”Œ๋ฆฟ์„ ์‚ฌ์šฉํ•˜์—ฌ ํƒœ์Šคํฌ ํŒŒ์ผ ์ƒ์„ฑ
63
+
64
+ `.aiwf/99_TEMPLATES/task_template.md`์˜ ํƒœ์Šคํฌ ํ…œํ”Œ๋ฆฟ์„ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋กœ **์‚ฌ์šฉ**ํ•˜์„ธ์š”:
65
+
66
+ - ํ…œํ”Œ๋ฆฟ ๊ตฌ์กฐ๋ฅผ ์ •ํ™•ํžˆ ๋ณต์‚ฌ
67
+ - ํŒŒ์ผ์„ `.aiwf/04_GENERAL_TASKS/T###_<์ œ๋ชฉ>.md`์— ๋ฐฐ์น˜
68
+ - ํƒ€์ž„์Šคํƒฌํ”„ ํฌํ•จ: ์ƒ์„ฑ ์‹œ๊ฐ„์„ ์œ„ํ•ด `date '+%Y-%m-%d %H:%M:%S'` ์‹คํ–‰
69
+ - **์ค‘์š”**: ํ…œํ”Œ๋ฆฟ ๊ตฌ์กฐ๋ฅผ ์ •ํ™•ํžˆ ๋”ฐ๋ฅด์„ธ์š” - ๋ณ€๊ฒฝ ์—†์Œ
70
+
71
+ ### 6. ์ ์ ˆํ•œ ์ปจํ…์ŠคํŠธ๋กœ ํƒœ์Šคํฌ ์„ธ๋ถ€์‚ฌํ•ญ ์ž‘์„ฑ
72
+
73
+ ํƒœ์Šคํฌ ํŒŒ์ผ์„ ๋‹ค์Œ ๋‚ด์šฉ์œผ๋กœ ์ฑ„์šฐ์„ธ์š”:
74
+
75
+ - **์ œ๋ชฉ**: ๋ช…ํ™•ํ•˜๊ณ  ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ํƒœ์Šคํฌ ์ด๋ฆ„
76
+ - **์ปจํ…์ŠคํŠธ**: ์•„ํ‚คํ…์ฒ˜ ๋ฌธ์„œ ๋ฐ ํ”„๋กœ์ ํŠธ ์ƒํƒœ์— ์—ฐ๊ฒฐ
77
+ - **์š”๊ตฌ์‚ฌํ•ญ**: ๊ตฌ์ฒด์ ์ด๊ณ  ์ธก์ • ๊ฐ€๋Šฅํ•œ ๊ฒฐ๊ณผ
78
+ - **์Šน์ธ ๊ธฐ์ค€**: ์™„๋ฃŒ์— ๋Œ€ํ•œ ๋ช…ํ™•ํ•œ ์ •์˜
79
+ - **์ข…์†์„ฑ**: ๊ด€๋ จ ์Šคํ”„๋ฆฐํŠธ/๋งˆ์ผ์Šคํ†ค ์ฐธ์กฐ
80
+ - **๊ตฌํ˜„ ๋…ธํŠธ**: ์•„ํ‚คํ…์ฒ˜์™€ ์ผ์น˜ํ•˜๋Š” ๊ธฐ์ˆ ์  ์ ‘๊ทผ๋ฒ•
81
+ - **์ค‘์š”**: ๋ชจ๋“  ๋‚ด์šฉ์€ ๊ธฐ์กด ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค
82
+
83
+ ### 7. ๊ธฐ์ˆ  ๊ฐ€์ด๋“œ๋ผ์ธ ๋ฐ ์ฝ”๋“œ๋ฒ ์ด์Šค ์ฐธ์กฐ ์ถ”๊ฐ€
84
+
85
+ **๊ธฐ์ˆ  ๊ฐ€์ด๋“œ๋ผ์ธ ์„น์…˜:**
86
+
87
+ - 4๋‹จ๊ณ„์—์„œ ๋ฐœ๊ฒฌํ•œ ์ฃผ์š” ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ํ†ตํ•ฉ ์ง€์ 
88
+ - ์ฝ”๋“œ๋ฒ ์ด์Šค์˜ ๊ตฌ์ฒด์ ์ธ import ๋ฐ ๋ชจ๋“ˆ ์ฐธ์กฐ
89
+ - ๋”ฐ๋ผ์•ผ ํ•  ๊ธฐ์กด ํŒจํ„ด (ํŒŒ์ผ ์ฐธ์กฐ ํฌํ•จ)
90
+ - ์ž‘์—…ํ•  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ชจ๋ธ ๋˜๋Š” API ๊ณ„์•ฝ
91
+ - ์œ ์‚ฌํ•œ ์ฝ”๋“œ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ ์ ‘๊ทผ๋ฒ•
92
+ - ์ฝ”๋“œ๋ฒ ์ด์Šค์—์„œ ๋ฐœ๊ฒฌ๋œ ํ…Œ์ŠคํŠธ ํŒจํ„ด
93
+
94
+ **๊ตฌํ˜„ ๋…ธํŠธ ์„น์…˜:**
95
+
96
+ - ์—ฐ๊ตฌ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ํ•œ ๋‹จ๊ณ„๋ณ„ ๊ตฌํ˜„ ์ ‘๊ทผ๋ฒ•
97
+ - ์กด์ค‘ํ•ด์•ผ ํ•  ์ฃผ์š” ์•„ํ‚คํ…์ฒ˜ ๊ฒฐ์ •์‚ฌํ•ญ (ADR ์ฐธ์กฐ)
98
+ - ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ํ™•์žฅํ•  ๊ตฌ์ฒด์ ์ธ ํŒŒ์ผ ๋ฐ ํ•จ์ˆ˜
99
+ - ๊ธฐ์กด ํ…Œ์ŠคํŠธ ํŒจํ„ด์„ ๋ฐ”ํƒ•์œผ๋กœ ํ•œ ํ…Œ์ŠคํŠธ ์ ‘๊ทผ๋ฒ•
100
+ - ๊ด€๋ จ์„ฑ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์„ฑ๋Šฅ ๊ณ ๋ ค์‚ฌํ•ญ
101
+
102
+ **์ค‘์š”**: ์ฝ”๋“œ ์˜ˆ์ œ๋ฅผ ํฌํ•จํ•˜์ง€ ๋งˆ์„ธ์š”. ๊ตฌ์กฐ์  ๊ฐ€์ด๋“œ๋ผ์ธ๊ณผ ํŒŒ์ผ ์ฐธ์กฐ๋งŒ ์ œ๊ณตํ•˜์„ธ์š”.
103
+
104
+ ### 8. ์ƒˆ ํƒœ์Šคํฌ๋กœ ํ”„๋กœ์ ํŠธ ๋งค๋‹ˆํŽ˜์ŠคํŠธ ์—…๋ฐ์ดํŠธ
105
+
106
+ `.aiwf/00_PROJECT_MANIFEST.md` **์—…๋ฐ์ดํŠธ**:
107
+
108
+ - "## ์ผ๋ฐ˜ ํƒœ์Šคํฌ" ์„น์…˜์— ํƒœ์Šคํฌ ์ถ”๊ฐ€
109
+ - ํ˜•์‹: `- [ ] T###: [ํƒœ์Šคํฌ ์ œ๋ชฉ] - ์ƒํƒœ: ์‹œ์ž‘๋˜์ง€ ์•Š์Œ`
110
+ - ์•ŒํŒŒ๋ฒณ/์ˆซ์ž ์ˆœ์„œ ์œ ์ง€
111
+ - ํƒœ์Šคํฌ ํŒŒ์ผ์— ๋งํฌ: `[T###](04_GENERAL_TASKS/T###_์ œ๋ชฉ.md)`
112
+ - **์ค‘์š”**: ๊ธฐ์กด ๋‚ด์šฉ์„ ๋ชจ๋‘ ๋ณด์กดํ•˜์„ธ์š”
113
+
114
+ ### 9. ์•„ํ‚คํ…์ฒ˜์™€์˜ ํƒœ์Šคํฌ ์ •๋ ฌ ๊ฒ€์ฆ
115
+
116
+ ํƒœ์Šคํฌ ์ค€์ˆ˜์‚ฌํ•ญ **ํ™•์ธ**:
117
+
118
+ - ํƒœ์Šคํฌ๊ฐ€ ์•„ํ‚คํ…์ฒ˜ ์›์น™๊ณผ ๋ชจ์ˆœ๋˜์ง€ ์•Š๋Š”์ง€ ํ™•์ธ
119
+ - ๊ตฌํ˜„ ์ ‘๊ทผ๋ฒ•์ด ํ™•๋ฆฝ๋œ ํŒจํ„ด์„ ์‚ฌ์šฉํ•˜๋Š”์ง€ ๋ณด์žฅ
120
+ - ์ข…์†์„ฑ์ด ์กด์žฌํ•˜๊ณ  ์˜ฌ๋ฐ”๋ฅธ์ง€ ๊ฒ€์ฆ
121
+ - ํƒœ์Šคํฌ ๋ฒ”์œ„๊ฐ€ ์ ์ ˆํ•œ์ง€ ํ™•์ธ (๋„ˆ๋ฌด ๊ด‘๋ฒ”์œ„ํ•˜๊ฑฐ๋‚˜ ์ข์ง€ ์•Š๊ฒŒ)
122
+ - ๊ธฐ์ˆ  ๊ฐ€์ด๋“œ๋ผ์ธ์ด ๊ธฐ์กด ์ฝ”๋“œ๋ฒ ์ด์Šค ํŒจํ„ด๊ณผ ์ผ์น˜ํ•˜๋Š”์ง€ ํ™•์ธ
123
+ - **์ค‘์š”**: ๋ฌธ์„œ๊ฐ€ ์ง„์‹ค์˜ ์›์ฒœ์ž…๋‹ˆ๋‹ค - ์–ด๋–ค ํŽธ์ฐจ๋“  ์ •๋‹นํ™”๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค
124
+
125
+ ### 10. ์ตœ์ข… ํ’ˆ์งˆ ๊ฒ€์‚ฌ ๋ฐ ๋ณด๊ณ  ์ˆ˜ํ–‰
126
+
127
+ **ํ’ˆ์งˆ ๊ฒ€์‚ฌ**:
128
+
129
+ - ํƒœ์Šคํฌ ํŒŒ์ผ์ด ํ…œํ”Œ๋ฆฟ์„ ์™„์ „ํžˆ ๋”ฐ๋ฅด๋Š”์ง€ ํ™•์ธ
130
+ - ์ƒˆ๋กœ์šด ๊ธฐ์ˆ  ๊ฐ€์ด๋“œ๋ผ์ธ์„ ํฌํ•จํ•œ ๋ชจ๋“  ์„น์…˜์ด ์ ์ ˆํžˆ ์ž‘์„ฑ๋˜์—ˆ๋Š”์ง€ ํ™•์ธ
131
+ - ๋ฌธ์„œ ๋ฐ ์ฝ”๋“œ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ์ฐธ์กฐ๊ฐ€ ์œ ํšจํ•œ์ง€ ํ™•์ธ
132
+ - ํƒœ์Šคํฌ ID๊ฐ€ ์ˆœ์ฐจ์ ์ด๊ณ  ๊ณ ์œ ํ•œ์ง€ ํ™•์ธ
133
+ - ๋งค๋‹ˆํŽ˜์ŠคํŠธ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์—…๋ฐ์ดํŠธ๋˜์—ˆ๋Š”์ง€ ํ™•์ธ
134
+ - ๊ธฐ์ˆ  ๊ฐ€์ด๋“œ๋ผ์ธ์ด ์‹ค์ œ ํŒŒ์ผ๊ณผ ํŒจํ„ด์„ ์ฐธ์กฐํ•˜๋Š”์ง€ ํ™•์ธ
135
+ - ๋ฒ”์œ„ ํ™•์žฅ์ด๋‚˜ ์•„ํ‚คํ…์ฒ˜ ์œ„๋ฐ˜์ด ์—†๋Š”์ง€ ํ™•์ธ
136
+
137
+ **์ถœ๋ ฅ ํ˜•์‹**:
138
+
139
+ ```markdown
140
+ โœ… **์ƒ์„ฑ**: T###\_<์ œ๋ชฉ>.md
141
+ ๐Ÿ“‹ **์œ ํ˜•**: ์ผ๋ฐ˜ ํƒœ์Šคํฌ
142
+ ๐ŸŽฏ **๋ชฉ์ **: [ํ•œ ์ค„ ์š”์•ฝ]
143
+ ๐Ÿ“š **์ฐธ์กฐ**: [์ฃผ์š” ๋ฌธ์„œ ๋งํฌ]
144
+ ๐Ÿ”ง **์ฃผ์š” ํ†ตํ•ฉ ์ง€์ **: [์ˆ˜์ •ํ•  ์ฃผ์š” ํŒŒ์ผ/๋ชจ๋“ˆ]
145
+ ๐Ÿงช **ํ…Œ์ŠคํŠธ ์ ‘๊ทผ๋ฒ•**: [๋”ฐ๋ฅผ ํ…Œ์ŠคํŠธ ํŒจํ„ด]
146
+ โญ๏ธ **๋‹ค์Œ ๋‹จ๊ณ„**: ํƒœ์Šคํฌ ์„ธ๋ถ€์‚ฌํ•ญ์„ ๊ฒ€ํ† ํ•˜๊ณ  `/do_task T###`๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ์‹œ์ž‘ํ•˜์„ธ์š”
147
+ ```
@@ -0,0 +1,194 @@
1
+ # ์‹ ๊ทœ ๋งˆ์ผ์Šคํ†ค ๊ณ„ํš ๋ฐ ์ƒ์„ฑ
2
+
3
+ ์ƒํ˜ธ์ž‘์šฉ์ ์ด๊ณ  ์ ์‘์ ์ธ ํ”„๋กœ์„ธ์Šค๋ฅผ ํ†ตํ•ด ์ ์ ˆํ•œ ๊ตฌ์กฐ, ๋ฌธ์„œํ™”, ํ”„๋กœ์ ํŠธ ํ†ตํ•ฉ์„ ๊ฐ–์ถ˜ ์ƒˆ๋กœ์šด ๋งˆ์ผ์Šคํ†ค์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
4
+
5
+ ## ์ •ํ™•ํžˆ ๋‹ค์Œ 8๊ฐœ ํ•ญ๋ชฉ์œผ๋กœ ํ•  ์ผ ๋ชฉ๋ก์„ ์ƒ์„ฑํ•˜์„ธ์š”
6
+
7
+ 1. ์ธ์ˆ˜ ๋ถ„์„ ๋ฐ ํ”„๋กœ์ ํŠธ ์ปจํ…์ŠคํŠธ ํŒŒ์•…
8
+ 2. ์ƒํ˜ธ์ž‘์šฉ์  ๋งˆ์ผ์Šคํ†ค ๋ฒ”์œ„ ๋ฐ ์ •์˜
9
+ 3. ๋งˆ์ผ์Šคํ†ค ๊ตฌ์กฐ ๋ฐ ๋ช…๋ช… ๊ฒฐ์ •
10
+ 4. ๋งˆ์ผ์Šคํ†ค ๋””๋ ‰ํ† ๋ฆฌ ๋ฐ ๋ฉ”ํƒ€ ํŒŒ์ผ ์ƒ์„ฑ
11
+ 5. ์ง€์› ๋ฌธ์„œ ์ƒ์„ฑ ๊ฐ€์ด๋“œ
12
+ 6. ๋งˆ์ผ์Šคํ†ค์œผ๋กœ ํ”„๋กœ์ ํŠธ ๋งค๋‹ˆํŽ˜์ŠคํŠธ ์—…๋ฐ์ดํŠธ
13
+ 7. ๋งˆ์ผ์Šคํ†ค ์ผ๊ด€์„ฑ ๋ฐ ์ •๋ ฌ ๊ฒ€์ฆ
14
+ 8. ๋งˆ์ผ์Šคํ†ค ์ƒ์„ฑ ๋ฐ ๋‹ค์Œ ๋‹จ๊ณ„ ๋ณด๊ณ 
15
+
16
+ ---
17
+
18
+ ## 1. ์ธ์ˆ˜ ๋ถ„์„ ๋ฐ ํ”„๋กœ์ ํŠธ ์ปจํ…์ŠคํŠธ ํŒŒ์•…
19
+
20
+ **์ค‘์š”**: ์ถ”๊ฐ€ ์ธ์ˆ˜๊ฐ€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค: <$ARGUMENTS>
21
+
22
+ **๋ณ‘๋ ฌ ์„œ๋ธŒ์—์ด์ „ํŠธ**๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์Œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜์„ธ์š”:
23
+
24
+ - ์ œ์•ˆ๋œ ๋งˆ์ผ์Šคํ†ค ์ด๋ฆ„/์ดˆ์ ์— ๋Œ€ํ•œ ์ธ์ˆ˜ ๋ถ„์„ (๊ธฐ๋ณธ๊ฐ’์€ ๋Œ€ํ™”ํ˜• ์ƒ์„ฑ)
25
+ - `.aiwf/00_PROJECT_MANIFEST.md`๋ฅผ ์ฝ์–ด ํ˜„์žฌ ํ”„๋กœ์ ํŠธ ์ƒํƒœ ํŒŒ์•…
26
+ - `.aiwf/02_REQUIREMENTS/`๋ฅผ ์Šค์บ”ํ•˜์—ฌ ๊ธฐ์กด ๋งˆ์ผ์Šคํ†ค๊ณผ ๋ฒˆํ˜ธ ์ฒด๊ณ„ ์‹๋ณ„
27
+ - `.aiwf/01_PROJECT_DOCS/ARCHITECTURE.md`๋ฅผ ์ฝ์–ด ํ”„๋กœ์ ํŠธ ๋ฒ”์œ„ ์ดํ•ด
28
+ - `.aiwf/10_STATE_OF_PROJECT/`์˜ ์ตœ์‹  ํ”„๋กœ์ ํŠธ ๋ฆฌ๋ทฐ๋ฅผ ํ™•์ธํ•˜์—ฌ ํ˜„์žฌ ์ƒํƒœ ํŒŒ์•…
29
+ - **์ค‘์š”**: ํ”„๋กœ์ ํŠธ ๋‹จ๊ณ„๋ฅผ ์ดํ•ดํ•˜๊ณ  ๋…ผ๋ฆฌ์ ์œผ๋กœ ๋‹ค์Œ์— ์™€์•ผ ํ•  ๋งˆ์ผ์Šคํ†ค ํŒŒ์•…
30
+
31
+ ## 2. ์ƒํ˜ธ์ž‘์šฉ์  ๋งˆ์ผ์Šคํ†ค ๋ฒ”์œ„ ๋ฐ ์ •์˜
32
+
33
+ **๋Œ€ํ™”ํ˜• ๋งˆ์ผ์Šคํ†ค ์ •์˜:**
34
+
35
+ ์ธ์ˆ˜๊ฐ€ ์ œ๊ณต๋œ ๊ฒฝ์šฐ:
36
+
37
+ - "๋‹ค์Œ์„ ์œ„ํ•œ ๋งˆ์ผ์Šคํ†ค์„ ์ƒ์„ฑํ•˜๊ณ ์ž ํ•˜์‹œ๋Š”๊ตฐ์š”: [์ธ์ˆ˜]"
38
+ - "๋ฒ”์œ„๋ฅผ ๋” ์ž˜ ์ดํ•ดํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค..."
39
+
40
+ ์ธ์ˆ˜๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ:
41
+
42
+ - "ํ˜„์žฌ ํ”„๋กœ์ ํŠธ ์ƒํƒœ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๋‹ค์Œ ๋งˆ์ผ์Šคํ†ค์„ ์ •์˜ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค"
43
+ - "ํ˜„์žฌ [ํ˜„์žฌ ๋งˆ์ผ์Šคํ†ค]์— ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค - ๋‹ค์Œ์—๋Š” ๋ฌด์—‡์— ์ง‘์ค‘ํ•ด์•ผ ํ• ๊นŒ์š”?"
44
+
45
+ **์ƒํ˜ธ์ž‘์šฉ ์งˆ๋ฌธ (์ปจํ…์ŠคํŠธ์— ๋”ฐ๋ผ ์กฐ์ •):**
46
+
47
+ - "์ด ๋งˆ์ผ์Šคํ†ค์˜ ์ฃผ์š” ๋ชฉํ‘œ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?"
48
+ - "์™„๋ฃŒ๋˜์–ด์•ผ ํ•  ํ•ต์‹ฌ ๊ฒฐ๊ณผ๋ฌผ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?"
49
+ - "ํŠน์ •ํ•œ ๊ธฐ์ˆ ์  ๋„์ „์ด๋‚˜ ์š”๊ตฌ์‚ฌํ•ญ์ด ์žˆ๋‚˜์š”?"
50
+ - "์ด ๋งˆ์ผ์Šคํ†ค์ด ํ”„๋กœ์ ํŠธ๋ฅผ ์žฅ๊ธฐ ๋น„์ „์œผ๋กœ ์–ด๋–ป๊ฒŒ ๋ฐœ์ „์‹œํ‚ฌ๊นŒ์š”?"
51
+ - "์ด ๋งˆ์ผ์Šคํ†ค์˜ '์™„๋ฃŒ'๋Š” ์–ด๋–ค ๋ชจ์Šต์ผ๊นŒ์š”?"
52
+
53
+ **๋Œ€ํ™”ํ˜•์ด๊ณ  ์ ์‘์ ์œผ๋กœ ์œ ์ง€** - ์‹ฌ๋ฌธํ•˜์ง€ ๋ง๊ณ  ํ•„์š”ํ•œ ๊ฒƒ๋งŒ ์ˆ˜์ง‘ํ•˜์„ธ์š”
54
+
55
+ ## 3. ๋งˆ์ผ์Šคํ†ค ๊ตฌ์กฐ ๋ฐ ๋ช…๋ช… ๊ฒฐ์ •
56
+
57
+ **๋งˆ์ผ์Šคํ†ค ์„ธ๋ถ€์‚ฌํ•ญ ์ƒ์„ฑ:**
58
+
59
+ - ๊ธฐ์กด ๋งˆ์ผ์Šคํ†ค์„ ์Šค์บ”ํ•˜์—ฌ ๋‹ค์Œ ๋งˆ์ผ์Šคํ†ค ๋ฒˆํ˜ธ (M##) ๊ฒฐ์ •
60
+ - ์‚ฌ์šฉ์ž ์ž…๋ ฅ์—์„œ ์„ค๋ช…์  ๋งˆ์ผ์Šคํ†ค ์ด๋ฆ„ ์ƒ์„ฑ
61
+ - ํ˜•์‹: `M##_๋งˆ์ผ์Šคํ†ค_์ด๋ฆ„_์Šค๋„ค์ดํฌ_์ผ€์ด์Šค`
62
+ - **์ค‘์š”**: ์ค‘๋ณต๋œ ๋งˆ์ผ์Šคํ†ค ๋ฒˆํ˜ธ๊ฐ€ ์—†๋„๋ก ๋ณด์žฅ
63
+ - AIWF ๊ทœ์น™์„ ๋”ฐ๋ฅด๋Š” ๋ช…๋ช… ๊ฒ€์ฆ (๋ฐ‘์ค„, ๊ณต๋ฐฑ ์—†์Œ)
64
+
65
+ **์‚ฌ์šฉ์ž์™€ ํ™•์ธ:**
66
+
67
+ - "๋งˆ์ผ์Šคํ†ค์„ ์ƒ์„ฑํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค: M##\_[์ด๋ฆ„] - ๊ดœ์ฐฎ์œผ์‹ ๊ฐ€์š”?"
68
+ - ํ•„์š”์‹œ ์‚ฌ์šฉ์ž๊ฐ€ ์ด๋ฆ„์ด๋‚˜ ๋ฒˆํ˜ธ๋ฅผ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉ
69
+
70
+ ## 4. ๋งˆ์ผ์Šคํ†ค ๋””๋ ‰ํ† ๋ฆฌ ๋ฐ ๋ฉ”ํƒ€ ํŒŒ์ผ ์ƒ์„ฑ
71
+
72
+ **๋งˆ์ผ์Šคํ†ค ๊ตฌ์กฐ ์ƒ์„ฑ:**
73
+
74
+ - ๋””๋ ‰ํ† ๋ฆฌ ์ƒ์„ฑ: `.aiwf/02_REQUIREMENTS/M##_๋งˆ์ผ์Šคํ†ค_์ด๋ฆ„/`
75
+ - `.aiwf/99_TEMPLATES/milestone_meta_template.md`์—์„œ ํ…œํ”Œ๋ฆฟ ๋ณต์‚ฌ
76
+ - ๋งˆ์ผ์Šคํ†ค ๋ฉ”ํƒ€ ํŒŒ์ผ ์ƒ์„ฑ: `M##_milestone_meta.md`
77
+
78
+ **๋งˆ์ผ์Šคํ†ค ๋ฉ”ํƒ€ ํŒŒ์ผ ์ฑ„์šฐ๊ธฐ:**
79
+
80
+ - YAML ํ”„๋ก ํŠธ๋งคํ„ฐ ์ž‘์„ฑ:
81
+ - `milestone_id: M##`
82
+ - `title: [๋งˆ์ผ์Šคํ†ค ์ด๋ฆ„]`
83
+ - `status: pending`
84
+ - `last_updated: [ํ˜„์žฌ ํƒ€์ž„์Šคํƒฌํ”„ YYYY-MM-DD HH:MM]`
85
+ - ์‚ฌ์šฉ์ž ์ž…๋ ฅ์„ ๊ตฌ์กฐํ™”๋œ ์„น์…˜์œผ๋กœ ๋ณ€ํ™˜:
86
+ - **๋ชฉํ‘œ**: ์‚ฌ์šฉ์ž ๋…ผ์˜์—์„œ ๋ช…ํ™•ํ•œ ๋ชฉ์ 
87
+ - **ํ•ต์‹ฌ ๋ฌธ์„œ**: PRD ๋ฐ SPECS ํŒŒ์ผ ํ”Œ๋ ˆ์ด์Šคํ™€๋”
88
+ - **์™„๋ฃŒ ์ •์˜**: ์‚ฌ์šฉ์ž ์ž…๋ ฅ์—์„œ ๊ตฌ์ฒด์ ์ด๊ณ  ์ธก์ • ๊ฐ€๋Šฅํ•œ ๊ธฐ์ค€
89
+ - **๋…ธํŠธ/์ปจํ…์ŠคํŠธ**: ์‚ฌ์šฉ์ž ๋…ผ์˜์—์„œ ์ถ”๊ฐ€ ์ปจํ…์ŠคํŠธ
90
+
91
+ ## 5. ์ง€์› ๋ฌธ์„œ ์ƒ์„ฑ ๊ฐ€์ด๋“œ
92
+
93
+ **์ƒํ˜ธ์ž‘์šฉ์  ๋ฌธ์„œ ๊ณ„ํš:**
94
+
95
+ ๋งˆ์ผ์Šคํ†ค ๋ฒ”์œ„๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•„์š”ํ•œ ๋ฌธ์„œ ์ œ์•ˆ:
96
+
97
+ - "์ด ๋งˆ์ผ์Šคํ†ค์—๋Š” ๋‹ค์Œ์ด ํ•„์š”ํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค:"
98
+ - "โ–ก PRD\_[๋งˆ์ผ์Šคํ†ค_์ด๋ฆ„].md - ์ œํ’ˆ ์š”๊ตฌ์‚ฌํ•ญ"
99
+ - "โ–ก SPECS\_[๊ธฐ์ˆ _์˜์—ญ].md - ๊ธฐ์ˆ  ์‚ฌ์–‘"
100
+ - "โ–ก ๋„๋ฉ”์ธ๋ณ„ ๋ฌธ์„œ"
101
+
102
+ **์‚ฌ์šฉ์ž์—๊ฒŒ ๋ฌธ์˜:**
103
+
104
+ - "์ง€๊ธˆ ์ด ๋ฌธ์„œ๋“ค์˜ ์‹œ์ž‘ ํ…œํ”Œ๋ฆฟ์„ ๋งŒ๋“ค์–ด๋“œ๋ฆด๊นŒ์š”?"
105
+ - "์•„๋‹ˆ๋ฉด ํ•„์š”์— ๋”ฐ๋ผ ์ˆ˜๋™์œผ๋กœ ๋งŒ๋“œ์‹œ๊ฒ ์–ด์š”?"
106
+
107
+ **์‚ฌ์šฉ์ž๊ฐ€ ํ…œํ”Œ๋ฆฟ ์ƒ์„ฑ์„ ์›ํ•˜๋Š” ๊ฒฝ์šฐ:**
108
+
109
+ - ๋งˆ์ผ์Šคํ†ค๋ณ„ ์„น์…˜์ด ํฌํ•จ๋œ ๊ธฐ๋ณธ PRD ํ…œํ”Œ๋ฆฟ ์ƒ์„ฑ
110
+ - ๊ธฐ์ˆ  ๋งˆ์ผ์Šคํ†ค์ธ ๊ฒฝ์šฐ SPECS ํ…œํ”Œ๋ฆฟ ์ƒ์„ฑ
111
+ - ๋ฌธ์„œ ๊ฐ„ ์ ์ ˆํ•œ ์ƒํ˜ธ์ฐธ์กฐ ํฌํ•จ
112
+ - **์ค‘์š”**: ๊ณผ๋„ํ•˜๊ฒŒ ์—”์ง€๋‹ˆ์–ด๋งํ•˜์ง€ ๋ง๊ณ  ์œ ์šฉํ•œ ์‹œ์ž‘์  ์ƒ์„ฑ
113
+
114
+ **์‚ฌ์šฉ์ž๊ฐ€ ์ˆ˜๋™์„ ์„ ํ˜ธํ•˜๋Š” ๊ฒฝ์šฐ:**
115
+
116
+ - ๋งˆ์ผ์Šคํ†ค ๋ฉ”ํƒ€์— ์˜ˆ์ƒ๋˜๋Š” ๋ฌธ์„œ ๊ธฐ๋ก
117
+ - ์–ธ์ œ/์–ด๋–ป๊ฒŒ ์ƒ์„ฑํ• ์ง€์— ๋Œ€ํ•œ ๊ฐ€์ด๋“œ ์ œ๊ณต
118
+
119
+ ## 6. ๋งˆ์ผ์Šคํ†ค์œผ๋กœ ํ”„๋กœ์ ํŠธ ๋งค๋‹ˆํŽ˜์ŠคํŠธ ์—…๋ฐ์ดํŠธ
120
+
121
+ `.aiwf/00_PROJECT_MANIFEST.md` **์—…๋ฐ์ดํŠธ**:
122
+
123
+ - ๋งˆ์ผ์Šคํ†ค ์„น์…˜์— ๋งˆ์ผ์Šคํ†ค ์ถ”๊ฐ€:
124
+ - ํ˜•์‹: `- [ ] M##: [๋งˆ์ผ์Šคํ†ค ์ด๋ฆ„] - ์ƒํƒœ: ๊ณ„ํš ์ค‘`
125
+ - ๋งํฌ: `[M##](02_REQUIREMENTS/M##_๋งˆ์ผ์Šคํ†ค_์ด๋ฆ„/M##_milestone_meta.md)`
126
+ - ํ”„๋กœ์ ํŠธ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์—…๋ฐ์ดํŠธ:
127
+ - ํ™œ์„ฑ ๋งˆ์ผ์Šคํ†ค์ธ ๊ฒฝ์šฐ `current_milestone` ์„ค์ •
128
+ - `highest_milestone` ๋ฒˆํ˜ธ ์—…๋ฐ์ดํŠธ
129
+ - `last_updated` ํƒ€์ž„์Šคํƒฌํ”„ ์—…๋ฐ์ดํŠธ
130
+ - **์ค‘์š”**: ๋ชจ๋“  ๊ธฐ์กด ๋‚ด์šฉ๊ณผ ํ˜•์‹ ๋ณด์กด
131
+
132
+ ## 7. ๋งˆ์ผ์Šคํ†ค ์ผ๊ด€์„ฑ ๋ฐ ์ •๋ ฌ ๊ฒ€์ฆ
133
+
134
+ ๋งˆ์ผ์Šคํ†ค ํ’ˆ์งˆ **ํ™•์ธ**:
135
+
136
+ - ๋งˆ์ผ์Šคํ†ค์ด ํ”„๋กœ์ ํŠธ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ๋น„์ „๊ณผ ์ผ์น˜ํ•˜๋Š”์ง€ ํ™•์ธ
137
+ - ์™„๋ฃŒ ์ •์˜๊ฐ€ ๊ตฌ์ฒด์ ์ด๊ณ  ์ธก์ • ๊ฐ€๋Šฅํ•œ์ง€ ๋ณด์žฅ
138
+ - ๋งˆ์ผ์Šคํ†ค ๋ฒ”์œ„๊ฐ€ ์ ์ ˆํ•œ์ง€ ๊ฒ€์ฆ (๋„ˆ๋ฌด ๊ด‘๋ฒ”์œ„ํ•˜๊ฑฐ๋‚˜ ์ข์ง€ ์•Š๊ฒŒ)
139
+ - ๋งˆ์ผ์Šคํ†ค์ด ๋ช…์‹œ๋œ ๋ชฉํ‘œ๋ฅผ ํ–ฅํ•ด ํ”„๋กœ์ ํŠธ๋ฅผ ๋ฐœ์ „์‹œํ‚ค๋Š”์ง€ ํ™•์ธ
140
+ - ๋งˆ์ผ์Šคํ†ค ๋ฒˆํ˜ธ ๋ฐ ๋ช…๋ช…์ด ๊ทœ์น™์„ ๋”ฐ๋ฅด๋Š”์ง€ ํ™•์ธ
141
+ - ์ƒ์„ฑ๋œ ๋ชจ๋“  ํŒŒ์ผ์ด ํ…œํ”Œ๋ฆฟ ๊ตฌ์กฐ๋ฅผ ๋”ฐ๋ฅด๋Š”์ง€ ๊ฒ€์ฆ
142
+ - **์ค‘์š”**: ๋งˆ์ผ์Šคํ†ค์€ ๋…๋ฆฝ์ ์œผ๋กœ ๊ฐ€์น˜ ์žˆ๊ณ  ๋‹ฌ์„ฑ ๊ฐ€๋Šฅํ•ด์•ผ ํ•จ
143
+
144
+ **๊ณ ๋ ค์‚ฌํ•ญ**:
145
+
146
+ - ํ˜„์žฌ ํ”„๋กœ์ ํŠธ ์ƒํƒœ๋ฅผ ๊ณ ๋ คํ•  ๋•Œ ์ด ๋งˆ์ผ์Šคํ†ค์ด ์˜๋ฏธ๊ฐ€ ์žˆ๋Š”๊ฐ€?
147
+ - ๋ชฉํ‘œ๊ฐ€ ํ˜„์‹ค์ ์ด๊ณ  ์ž˜ ๋ฒ”์œ„๊ฐ€ ์ •ํ•ด์ ธ ์žˆ๋Š”๊ฐ€?
148
+ - ์™„๋ฃŒ ์ •์˜๊ฐ€ ์–ธ์ œ ์™„๋ฃŒ๋˜์—ˆ๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์„ ๋งŒํผ ๋ช…ํ™•ํ•œ๊ฐ€?
149
+ - ์ด ๋งˆ์ผ์Šคํ†ค์ด ํ–ฅํ›„ ๋งˆ์ผ์Šคํ†ค์„ ๋…ผ๋ฆฌ์ ์œผ๋กœ ์„ค์ •ํ•˜๋Š”๊ฐ€?
150
+
151
+ ## 8. ๋งˆ์ผ์Šคํ†ค ์ƒ์„ฑ ๋ฐ ๋‹ค์Œ ๋‹จ๊ณ„ ๋ณด๊ณ 
152
+
153
+ **์ถœ๋ ฅ ํ˜•์‹**:
154
+
155
+ ```markdown
156
+ โœ… **๋งˆ์ผ์Šคํ†ค ์ƒ์„ฑ๋จ**: M##\_[๋งˆ์ผ์Šคํ†ค_์ด๋ฆ„]
157
+
158
+ ๐Ÿ“‹ **๋งˆ์ผ์Šคํ†ค ์„ธ๋ถ€์‚ฌํ•ญ**:
159
+
160
+ - ID: M##
161
+ - ์ œ๋ชฉ: [๋งˆ์ผ์Šคํ†ค ์ด๋ฆ„]
162
+ - ์ƒํƒœ: ๊ณ„ํš ์ค‘
163
+ - ์ดˆ์ : [์ฃผ์š” ๋ชฉํ‘œ์˜ ํ•œ ์ค„ ์š”์•ฝ]
164
+
165
+ ๐Ÿ“š **์ƒ์„ฑ๋œ ๋ฌธ์„œ**:
166
+
167
+ - ๋งˆ์ผ์Šคํ†ค ๋ฉ”ํƒ€: `02_REQUIREMENTS/M##_[์ด๋ฆ„]/M##_milestone_meta.md`
168
+ - [์ƒ์„ฑ๋œ ์ถ”๊ฐ€ ๋ฌธ์„œ๋“ค]
169
+
170
+ ๐ŸŽฏ **์™„๋ฃŒ ์ •์˜**:
171
+
172
+ - [๋งˆ์ผ์Šคํ†ค์˜ ํ•ต์‹ฌ DoD ๊ธฐ์ค€]
173
+
174
+ ๐Ÿ“ˆ **ํ”„๋กœ์ ํŠธ ์˜ํ–ฅ**:
175
+
176
+ - ํ”„๋กœ์ ํŠธ๋ฅผ M[์ด์ „]์—์„œ M##๋กœ ์—…๋ฐ์ดํŠธ
177
+ - ๋‹ค์Œ์„ ํ–ฅํ•œ ๋ฐœ์ „: [ํ”„๋กœ์ ํŠธ ๋น„์ „ ์ •๋ ฌ]
178
+
179
+ โญ๏ธ **๊ถŒ์žฅ ๋‹ค์Œ ๋‹จ๊ณ„**:
180
+
181
+ - ๋งˆ์ผ์Šคํ†ค ์„ธ๋ถ€์‚ฌํ•ญ ๊ฒ€ํ† : `02_REQUIREMENTS/M##_[์ด๋ฆ„]/M##_milestone_meta.md`
182
+ - ๊ณ„ํš๋œ ๋Œ€๋กœ ์ง€์› ๋ฌธ์„œ ์ƒ์„ฑ
183
+ - ์Šคํ”„๋ฆฐํŠธ๋กœ ๋ถ„ํ•ด: `/project:aiwf:create_sprints_from_milestone M##`
184
+ - ๋ช…ํ™•ํ•ด์ง€๋Š” ๋Œ€๋กœ ๊ตฌ์ฒด์ ์ธ ์š”๊ตฌ์‚ฌํ•ญ์œผ๋กœ ์—…๋ฐ์ดํŠธ
185
+
186
+ ๐ŸŽฏ **๊ฐœ๋ฐœ ์ค€๋น„**: ๊ตฌํ˜„ ๊ณ„ํš์„ ์‹œ์ž‘ํ•  ์ค€๋น„๊ฐ€ ๋˜๋ฉด `/project:aiwf:create_sprints_from_milestone M##` ์‚ฌ์šฉ
187
+ ```
188
+
189
+ **์ค‘์š” ์ฐธ๊ณ ์‚ฌํ•ญ**:
190
+
191
+ - ๋งˆ์ผ์Šคํ†ค ๋ฒ”์œ„๋Š” ์ง‘์ค‘๋˜๊ณ  ๋‹ฌ์„ฑ ๊ฐ€๋Šฅํ•˜๊ฒŒ ์œ ์ง€
192
+ - ์™„๋ฃŒ ์ •์˜๋Š” ์ธก์ • ๊ฐ€๋Šฅํ•ด์•ผ ํ•จ
193
+ - ์ง€์› ๋ฌธ์„œ๋Š” ํ•„์š”์— ๋”ฐ๋ผ ์ƒ์„ฑ ๊ฐ€๋Šฅ
194
+ - ๋งˆ์ผ์Šคํ†ค ๊ณ„ํš์€ ๋ฐ˜๋ณต์  - ๋” ๋งŽ์ด ๋ฐฐ์šฐ๋ฉด์„œ ๊ฐœ์„