aiwf 0.3.3 โ 0.3.4
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.
- package/.aiwf/config/language.json +1 -1
- package/.aiwf/sessions/session_1752877859489_1t7n2fhdb.json +7 -0
- package/.aiwf/sessions/session_1752877859515_cwdv211ry.json +7 -0
- package/.aiwf/sessions/session_1752877860664_huziadmbo.json +7 -0
- package/.aiwf/sessions/session_1752877860666_kyr5u1np6.json +7 -0
- package/.aiwf/sessions/session_1752877861848_9yinepw3t.json +7 -0
- package/.aiwf/sessions/session_1752877861874_y32sputuc.json +7 -0
- package/.aiwf/sessions/session_1752877862685_ivxbl5rhz.json +7 -0
- package/.aiwf/sessions/session_1752877862820_wnq4glvxi.json +7 -0
- package/.aiwf/sessions/session_1752877864632_3ebnpaelb.json +7 -0
- package/.aiwf/sessions/session_1752877864879_b9zgjcb7d.json +7 -0
- package/.aiwf/sessions/session_1752877865533_x14m1vodi.json +7 -0
- package/.aiwf/sessions/session_1752877865562_gkoh19n7d.json +7 -0
- package/.aiwf/sessions/session_1752877866333_wp8qpdcoh.json +7 -0
- package/.aiwf/sessions/session_1752877866509_dawntfpab.json +7 -0
- package/.aiwf/sessions/session_1752877866890_plc5vfucl.json +7 -0
- package/.aiwf/sessions/session_1752877866895_ga8hmq3oi.json +7 -0
- package/.aiwf/sessions/session_1752877867761_ayjp4v5f5.json +7 -0
- package/.aiwf/sessions/session_1752877867892_lfz6jy252.json +7 -0
- package/.aiwf/sessions/session_1752877868139_7bqd9ubli.json +7 -0
- package/.aiwf/sessions/session_1752877868162_zq3ofjbsh.json +7 -0
- package/.aiwf/sessions/session_1752877869054_7rlgm9jt6.json +7 -0
- package/.aiwf/sessions/session_1752877869477_ax3nhbxzr.json +7 -0
- package/.aiwf/sessions/session_1752877870095_6hgp4vl1e.json +7 -0
- package/.aiwf/sessions/session_1752877870381_qfcrdg4li.json +7 -0
- package/.aiwf/sessions/session_1752877871895_pgd5vllhz.json +7 -0
- package/.aiwf/sessions/session_1752877872199_jbhv2g2da.json +7 -0
- package/.aiwf/sessions/session_1752877872680_x04wpffu6.json +7 -0
- package/.aiwf/sessions/session_1752877872895_3y4vbeauo.json +7 -0
- package/.aiwf/sessions/session_1752877873178_3maolzc6b.json +7 -0
- package/.aiwf/sessions/session_1752877873180_ytm83j07f.json +7 -0
- package/.aiwf/sessions/session_1752877874217_dp56c9t42.json +7 -0
- package/.aiwf/sessions/session_1752877874415_epwp1g1og.json +7 -0
- package/.aiwf/sessions/session_1752877874454_heicyuryb.json +7 -0
- package/.aiwf/sessions/session_1752877874869_1c2illeu5.json +7 -0
- package/.aiwf/sessions/session_1752877874879_k1vo4vxyx.json +7 -0
- package/.aiwf/sessions/session_1752877874913_bwgyiz9bp.json +7 -0
- package/.aiwf/sessions/session_1752877876218_44807kztz.json +7 -0
- package/.aiwf/sessions/session_1752877876515_qkhjv5kpw.json +7 -0
- package/.aiwf/sessions/session_1752877876543_p605aud1m.json +7 -0
- package/.aiwf/sessions/session_1752877876819_l65w7ifck.json +7 -0
- package/.aiwf/sessions/session_1752877876867_xrhzss4we.json +7 -0
- package/.aiwf/sessions/session_1752877876872_u7aso54qb.json +7 -0
- package/.aiwf/sessions/session_1752877877705_telnfg4o6.json +7 -0
- package/.aiwf/sessions/session_1752877878285_6s45im2ib.json +7 -0
- package/.aiwf/sessions/session_1752877878506_v0dvguqhz.json +7 -0
- package/.aiwf/sessions/session_1752877878581_3ri3yc66a.json +7 -0
- package/.aiwf/sessions/session_1752877878756_a82x9s2pd.json +7 -0
- package/.aiwf/sessions/session_1752877878886_20pjsfour.json +7 -0
- package/.aiwf/sessions/session_1752877880266_fm1ydjw0g.json +7 -0
- package/.aiwf/sessions/session_1752877881149_xbat4z03d.json +7 -0
- package/.aiwf/sessions/session_1752877881551_qy5sic9qs.json +7 -0
- package/.aiwf/sessions/session_1752877881554_24ugd96wu.json +7 -0
- package/.aiwf/sessions/session_1752877881797_e9mm25uh0.json +7 -0
- package/.aiwf/sessions/session_1752877881822_bxvjj8c9g.json +7 -0
- package/.aiwf/sessions/session_1752877881890_jv7l6jve3.json +7 -0
- package/.aiwf/sessions/session_1752877881991_f0qugdtcq.json +7 -0
- package/.aiwf/sessions/session_1752877883387_0bvw9rvnx.json +7 -0
- package/.aiwf/sessions/session_1752877883820_q6g2md2up.json +7 -0
- package/.aiwf/sessions/session_1752877884393_sqr7trvjl.json +7 -0
- package/.aiwf/sessions/session_1752877884500_whtypmzlf.json +7 -0
- package/.aiwf/sessions/session_1752877884645_y9mvvxli1.json +7 -0
- package/.aiwf/sessions/session_1752877884733_hk46eenel.json +7 -0
- package/.aiwf/sessions/session_1752877884738_c62j6214r.json +7 -0
- package/.aiwf/sessions/session_1752877884771_temhxehoz.json +7 -0
- package/.aiwf/sessions/session_1752877885643_6v5fcktc7.json +7 -0
- package/.aiwf/sessions/session_1752877886426_ee8di2fqh.json +7 -0
- package/.aiwf/sessions/session_1752877886549_3xj6tdoew.json +7 -0
- package/.aiwf/sessions/session_1752877886604_aj80yyfco.json +7 -0
- package/.aiwf/sessions/session_1752877886702_2b8841vyg.json +7 -0
- package/.aiwf/sessions/session_1752877886712_ntqc8b8bz.json +7 -0
- package/.aiwf/sessions/session_1752877886968_946m8tbw6.json +7 -0
- package/.aiwf/sessions/session_1752877887008_wg6zfg8dn.json +7 -0
- package/.aiwf/sessions/session_1752877888479_ciiu2qiqs.json +7 -0
- package/.aiwf/sessions/session_1752877889330_ravg8l66k.json +7 -0
- package/.aiwf/sessions/session_1752877889542_7zepkhjkc.json +7 -0
- package/.aiwf/sessions/session_1752877889638_ev4htqiu0.json +7 -0
- package/.aiwf/sessions/session_1752877889956_szphy2qma.json +7 -0
- package/.aiwf/sessions/session_1752877890220_o6aaa57tt.json +7 -0
- package/.aiwf/sessions/session_1752877890527_v2loy5vu1.json +7 -0
- package/.aiwf/sessions/session_1752877890572_cwq8fiuma.json +7 -0
- package/.aiwf/sessions/session_1752877892200_sgcwq1alt.json +7 -0
- package/.aiwf/sessions/session_1752877892268_v8kexpbc5.json +7 -0
- package/.aiwf/sessions/session_1752877892384_1gbbgrp4y.json +7 -0
- package/.aiwf/sessions/session_1752877893568_9p2n5p31a.json +7 -0
- package/.aiwf/sessions/session_1752877893727_un34a5tvp.json +7 -0
- package/.aiwf/sessions/session_1752877893778_01j79sw9i.json +7 -0
- package/.aiwf/sessions/session_1752877894053_jrhba6wko.json +7 -0
- package/.aiwf/sessions/session_1752877894082_x3bghawox.json +7 -0
- package/.aiwf/sessions/session_1752877894500_iytiav2ku.json +7 -0
- package/.aiwf/sessions/session_1752877894667_ucn0gc2ge.json +7 -0
- package/.aiwf/test-results-s02.json +4 -4
- package/.claude/commands/aiwf/aiwf_changelog.md +82 -0
- package/.claude/commands/aiwf/aiwf_code_review.md +88 -0
- package/.claude/commands/aiwf/aiwf_commit.md +160 -0
- package/.claude/commands/aiwf/aiwf_compress_aggressive_persona.md +53 -0
- package/.claude/commands/aiwf/aiwf_compress_context.md +116 -0
- package/.claude/commands/aiwf/aiwf_compress_minimal_persona.md +48 -0
- package/.claude/commands/aiwf/aiwf_compress_stats.md +79 -0
- package/.claude/commands/aiwf/aiwf_compress_with_persona.md +51 -0
- package/.claude/commands/aiwf/aiwf_create_feature_ledger.md +54 -0
- package/.claude/commands/aiwf/aiwf_create_general_task.md +147 -0
- package/.claude/commands/aiwf/aiwf_create_milestone_plan.md +194 -0
- package/.claude/commands/aiwf/aiwf_create_prd.md +280 -0
- package/.claude/commands/aiwf/aiwf_create_sprint_tasks.md +189 -0
- package/.claude/commands/aiwf/aiwf_create_sprints_from_milestone.md +121 -0
- package/.claude/commands/aiwf/aiwf_default_mode.md +44 -0
- package/.claude/commands/aiwf/aiwf_discuss_review.md +29 -0
- package/.claude/commands/aiwf/aiwf_do_task.md +109 -0
- package/.claude/commands/aiwf/aiwf_docs.md +225 -0
- package/.claude/commands/aiwf/aiwf_evaluate.md +92 -0
- package/.claude/commands/aiwf/aiwf_get_feature_details.md +78 -0
- package/.claude/commands/aiwf/aiwf_infinite.md +202 -0
- package/.claude/commands/aiwf/aiwf_initialize.md +134 -0
- package/.claude/commands/aiwf/aiwf_issue_create.md +65 -0
- package/.claude/commands/aiwf/aiwf_link_feature_to_milestone.md +57 -0
- package/.claude/commands/aiwf/aiwf_list_features.md +54 -0
- package/.claude/commands/aiwf/aiwf_mermaid.md +272 -0
- package/.claude/commands/aiwf/aiwf_persona_architect.md +48 -0
- package/.claude/commands/aiwf/aiwf_persona_backend.md +37 -0
- package/.claude/commands/aiwf/aiwf_persona_data_analyst.md +37 -0
- package/.claude/commands/aiwf/aiwf_persona_frontend.md +37 -0
- package/.claude/commands/aiwf/aiwf_persona_security.md +48 -0
- package/.claude/commands/aiwf/aiwf_persona_status.md +50 -0
- package/.claude/commands/aiwf/aiwf_pr_create.md +76 -0
- package/.claude/commands/aiwf/aiwf_prime.md +9 -0
- package/.claude/commands/aiwf/aiwf_project_review.md +261 -0
- package/.claude/commands/aiwf/aiwf_switch_language.md +160 -0
- package/.claude/commands/aiwf/aiwf_test.md +124 -0
- package/.claude/commands/aiwf/aiwf_testing_review.md +198 -0
- package/.claude/commands/aiwf/aiwf_tm-run-all-subtask.md +210 -0
- package/.claude/commands/aiwf/aiwf_ultrathink_code_advanced.md +460 -0
- package/.claude/commands/aiwf/aiwf_ultrathink_code_basic.md +165 -0
- package/.claude/commands/aiwf/aiwf_ultrathink_general.md +305 -0
- package/.claude/commands/aiwf/aiwf_update_docs_kr.md +25 -0
- package/.claude/commands/aiwf/aiwf_update_feature_status.md +53 -0
- package/.claude/commands/aiwf/aiwf_yolo.md +300 -0
- package/.eslintrc.json +26 -0
- package/.prettierrc +10 -0
- package/CLAUDE.md +154 -54
- package/README.ko.md +25 -0
- package/README.md +25 -0
- package/TEST_RECOVERY_PLAN.md +68 -0
- package/docs/CLEANUP_RECOMMENDATIONS.md +86 -0
- package/docs/CLI_USAGE_GUIDE.md +479 -0
- package/package.json +9 -9
- package/scripts/update-feature-status.js +70 -0
- package/{lib โ src/cli}/cache-cli.js +4 -4
- package/src/cli/index.js +165 -0
- package/{language-cli.js โ src/cli/language-cli.js} +11 -4
- package/src/commands/cache-templates.js +209 -0
- package/src/commands/create-offline.js +86 -0
- package/src/commands/create-project.js +151 -0
- package/src/lib/backup-manager.js +270 -0
- package/src/lib/file-downloader.js +208 -0
- package/src/lib/installer.js +676 -0
- package/src/lib/rollback-manager.js +418 -0
- package/src/lib/validator.js +561 -0
- package/src/utils/git-integration.js +173 -0
- package/{language-utils.js โ src/utils/language-utils.js} +2 -1
- package/src/utils/messages.js +136 -0
- package/src/utils/paths.js +130 -0
- package/tests/application.test.js +2 -2
- package/tests/installer.test.js +2 -2
- package/tests/integration/ai-persona-system.test.js +4 -4
- package/tests/integration/test-persona-system/docs/README.md +1 -0
- package/tests/integration/test-persona-system/package.json +1 -0
- package/tests/integration/test-persona-system/src/auth.js +1 -0
- package/tests/integration/test-persona-system/src/index.js +1 -0
- package/tests/integration/test-persona-system/test/test.js +1 -0
- package/tests/language-utils.test.js +1 -1
- package/tests/temp_invalid_json/invalid.json +1 -0
- package/tests/unit/ai-persona-manager.test.js +7 -7
- package/.aiwf/05_DOCUMENTATION/performance-report.md +0 -33
- package/.aiwf/test-cache/86c7f9e80251abb8bedd58953ab0d1779e46b4f43ea33b63bffdb778106373b0.json +0 -6
- package/.aiwf/test-cache/9e252a90b80fce0585d7ed0646e7a9b4343e109f661f42a3ae678ba1ec5e22c7.json +0 -7
- package/.aiwf/token-data/alerts.json +0 -293
- package/.aiwf/token-data/monitor-config.json +0 -12
- package/CHANGELOG_M02.md +0 -52
- package/claude-code/aiwf/ko/templates/web-app/template/package-lock.json +0 -10022
- package/claude-code/aiwf/ko/token-data/alerts.json +0 -293
- package/claude-code/aiwf/ko/token-data/monitor-config.json +0 -12
- package/docs/m02-dod-checklist.md +0 -125
- package/docs/m02-gap-analysis.md +0 -214
- package/docs/m02-milestone-completion-report.md +0 -186
- package/docs/m02-milestone-executive-summary.md +0 -68
- package/index.js +0 -1951
- package/lib/cache-integration.js +0 -401
- package/lib/file-batch-processor.js +0 -401
- package/lib/performance-benchmark.js +0 -621
- package/lib/template-manager.js +0 -310
- package/scripts/validate-commands.cjs +0 -338
- /package/{lib โ src/lib}/ai-persona-manager.js +0 -0
- /package/{lib โ src/lib}/cache-system.js +0 -0
- /package/{lib โ src/lib}/context-engine.js +0 -0
- /package/{lib โ src/lib}/memory-profiler.js +0 -0
- /package/{lib โ src/lib}/metrics-collector.js +0 -0
- /package/{lib โ src/lib}/offline-detector.js +0 -0
- /package/{lib โ src/lib}/task-analyzer.js +0 -0
- /package/{lib โ src/lib}/template-cache-system.js +0 -0
- /package/{lib โ src/lib}/template-downloader.js +0 -0
- /package/{lib โ src/lib}/template-version-manager.js +0 -0
- /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
|
+
- ๋ง์ผ์คํค ๊ณํ์ ๋ฐ๋ณต์ - ๋ ๋ง์ด ๋ฐฐ์ฐ๋ฉด์ ๊ฐ์
|