aiwf 0.3.8 → 0.3.12

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 (711) hide show
  1. package/CHANGELOG.md +97 -0
  2. package/README.ko.md +114 -28
  3. package/README.md +152 -40
  4. package/docs/AI-WORKFLOW.md +121 -19
  5. package/docs/API_DOCUMENTATION.md +1 -1
  6. package/docs/API_REFERENCE.md +1 -1
  7. package/docs/CLI_USAGE_GUIDE.ko.md +634 -0
  8. package/docs/CLI_USAGE_GUIDE.md +339 -178
  9. package/docs/COMMANDS_GUIDE.ko.md +308 -4
  10. package/docs/COMMANDS_GUIDE.md +117 -0
  11. package/docs/CONTRIBUTING.ko.md +6 -6
  12. package/docs/CONTRIBUTING.md +6 -6
  13. package/docs/DEVELOPMENT_GUIDE.ko.md +440 -0
  14. package/docs/DEVELOPMENT_GUIDE.md +1 -1
  15. package/docs/EXAMPLES.md +8 -6
  16. package/docs/GETTING_STARTED.md +6 -3
  17. package/docs/STATE_MANAGEMENT_GUIDE.ko.md +278 -0
  18. package/docs/STATE_MANAGEMENT_GUIDE.md +278 -0
  19. package/docs/TROUBLESHOOTING.md +14 -13
  20. package/docs/guides/checkpoint-system-guide-ko.md +356 -0
  21. package/docs/guides/checkpoint-system-guide.md +356 -0
  22. package/docs/guides/independent-sprint-guide-ko.md +321 -0
  23. package/docs/guides/independent-sprint-guide.md +321 -0
  24. package/package.json +30 -3
  25. package/scripts/update-file-lists.js +267 -0
  26. package/src/cli/checkpoint-cli.js +417 -0
  27. package/src/cli/index.js +337 -50
  28. package/src/cli/sprint-cli.js +287 -0
  29. package/src/commands/sprint-independent.js +393 -0
  30. package/src/commands/state-refactored.js +419 -0
  31. package/src/commands/state.js +1164 -0
  32. package/src/commands/yolo-config.js +502 -0
  33. package/src/config/file-lists.js +147 -0
  34. package/src/config/yolo-config-template.yaml +168 -0
  35. package/src/lib/file-downloader.js +7 -72
  36. package/src/lib/github-integration.js +402 -0
  37. package/src/lib/resource-loader-enhanced.js +399 -0
  38. package/src/lib/state/priority-calculator.js +217 -0
  39. package/src/lib/state/state-index.js +155 -0
  40. package/src/lib/state/task-scanner.js +328 -0
  41. package/src/utils/checkpoint-manager.js +425 -0
  42. package/src/utils/engineering-guard.js +389 -0
  43. package/.aiwf/00_PROJECT_MANIFEST.md +0 -420
  44. package/.aiwf/01_PROJECT_DOCS/ARCHITECTURE.md +0 -121
  45. package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_ADVANCED_USE_CASES.md +0 -412
  46. package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_API_REFERENCE.md +0 -361
  47. package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_COMMANDS_GUIDE.md +0 -254
  48. package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_FAQ.md +0 -365
  49. package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_SYSTEM_OVERVIEW.md +0 -305
  50. package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_USER_GUIDE.md +0 -416
  51. package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_/354/213/234/354/236/221_/352/260/200/354/235/264/353/223/234.md +0 -247
  52. package/.aiwf/02_REQUIREMENTS/CLAUDE.md +0 -78
  53. package/.aiwf/02_REQUIREMENTS/M02_Context_Engineering_Enhancement/M02_milestone_meta.md +0 -34
  54. package/.aiwf/02_REQUIREMENTS/M02_Context_Engineering_Enhancement/PRD_Context_Engineering_Enhancement.md +0 -108
  55. package/.aiwf/02_REQUIREMENTS/M02_Context_Engineering_Enhancement/SPECS_AI_Persona_System.md +0 -299
  56. package/.aiwf/02_REQUIREMENTS/M02_Context_Engineering_Enhancement/SPECS_Feature_Ledger_System.md +0 -330
  57. package/.aiwf/02_REQUIREMENTS/M02_Context_Engineering_Enhancement/SPECS_Token_Optimization.md +0 -833
  58. package/.aiwf/02_REQUIREMENTS/M03_Simone_Integration_Enhancement/M03_milestone_meta.md +0 -55
  59. package/.aiwf/02_REQUIREMENTS/M03_Simone_Integration_Enhancement/SPECS_AIWF_Simplified_Plan.md +0 -221
  60. package/.aiwf/03_SPRINTS/CLAUDE.md +0 -83
  61. package/.aiwf/03_SPRINTS/S01_M02_context_foundation/S01_M02_sprint_meta.md +0 -95
  62. package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX01_S01_Feature_Ledger_/353/215/260/354/235/264/355/204/260_/352/265/254/354/241/260_/354/204/244/352/263/204.md +0 -111
  63. package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX02_S01_Feature_Ledger_CLI_/353/252/205/353/240/271/354/226/264_/352/260/234/353/260/234.md +0 -115
  64. package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX03_S01_Git_/354/227/260/353/217/231_Feature_/354/266/224/354/240/201.md +0 -141
  65. package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX04_S01_Feature_Ledger_/353/254/270/354/204/234/355/231/224.md +0 -114
  66. package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX05_S01_AI_/355/216/230/353/245/264/354/206/214/353/202/230_/353/215/260/354/235/264/355/204/260_/352/265/254/354/241/260_/354/204/244/352/263/204.md +0 -123
  67. package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX06_S01_/355/216/230/353/245/264/354/206/214/353/202/230_/352/264/200/353/246/254_/353/252/205/353/240/271/354/226/264_/352/265/254/355/230/204.md +0 -114
  68. package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX07_S01_Context_/354/225/225/354/266/225_/354/225/204/355/202/244/355/205/215/354/262/230_/354/204/244/352/263/204.md +0 -114
  69. package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX08_S01_/355/206/240/355/201/260_/354/266/224/354/240/201_/354/213/234/354/212/244/355/205/234_/355/224/204/353/241/234/355/206/240/355/203/200/354/236/205.md +0 -112
  70. package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX09_S01_/354/225/225/354/266/225_/354/225/214/352/263/240/353/246/254/354/246/230_/355/224/204/353/241/234/355/206/240/355/203/200/354/236/205.md +0 -118
  71. package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX10_S01_update_docs_/353/252/205/353/240/271/354/226/264_/353/263/265/352/265/254.md +0 -118
  72. package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX11_S01_/355/206/265/355/225/251_/355/205/214/354/212/244/355/212/270_Suite_/352/265/254/354/266/225.md +0 -128
  73. package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX12_S01_/354/204/261/353/212/245_/354/265/234/354/240/201/355/231/224_/353/260/217_/353/254/270/354/204/234/355/231/224.md +0 -122
  74. package/.aiwf/03_SPRINTS/S02_M02_ai_enhancement/S02_M02_sprint_meta.md +0 -107
  75. package/.aiwf/03_SPRINTS/S02_M02_ai_enhancement/TX01_S02_AI_/355/216/230/353/245/264/354/206/214/353/202/230_/353/252/205/353/240/271/354/226/264_/352/265/254/355/230/204.md +0 -129
  76. package/.aiwf/03_SPRINTS/S02_M02_ai_enhancement/TX02_S02_/355/216/230/353/245/264/354/206/214/353/202/230_/354/273/250/355/205/215/354/212/244/355/212/270_/354/240/201/354/232/251_/354/213/234/354/212/244/355/205/234.md +0 -152
  77. package/.aiwf/03_SPRINTS/S02_M02_ai_enhancement/TX03_S02_Context_/354/225/225/354/266/225_/354/225/214/352/263/240/353/246/254/354/246/230_/352/265/254/355/230/204.md +0 -186
  78. package/.aiwf/03_SPRINTS/S02_M02_ai_enhancement/TX05_S02_S02_/355/206/265/355/225/251_/355/205/214/354/212/244/355/212/270_/353/260/217_/353/254/270/354/204/234/355/231/224.md +0 -192
  79. package/.aiwf/03_SPRINTS/S02_M02_ai_enhancement/TX4_S02_Feature_Git_/354/227/260/353/217/231_/353/260/217_/354/236/220/353/217/231/355/231/224.md +0 -162
  80. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/S03_FINAL_SPRINT_SUMMARY.md +0 -137
  81. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/S03_M02_sprint_meta.md +0 -217
  82. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T01_S03_new_test_task.md +0 -39
  83. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T02_S03_first_task.md +0 -39
  84. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T03_S03_test_task.md +0 -39
  85. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T04_S03_task_with_special_characters.md +0 -39
  86. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T05_S03_test.md +0 -39
  87. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T06_S03_test_task.md +0 -39
  88. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T07_S03_next_task.md +0 -39
  89. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T08_S03_next_task.md +0 -39
  90. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T09_S03_new_test_task.md +0 -39
  91. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T100_S03_task_with_special_characters.md +0 -39
  92. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T101_S03_test.md +0 -39
  93. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T102_S03_test_task.md +0 -39
  94. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T103_S03_next_task.md +0 -39
  95. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T104_S03_next_task.md +0 -39
  96. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T105_S03_new_test_task.md +0 -39
  97. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T106_S03_first_task.md +0 -39
  98. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T107_S03_test_task.md +0 -39
  99. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T108_S03_task_with_special_characters.md +0 -39
  100. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T109_S03_test.md +0 -39
  101. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T10_S03_first_task.md +0 -39
  102. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T110_S03_test_task.md +0 -39
  103. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T111_S03_next_task.md +0 -39
  104. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T112_S03_next_task.md +0 -39
  105. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T11_S03_test_task.md +0 -39
  106. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T12_S03_task_with_special_characters.md +0 -39
  107. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T13_S03_test.md +0 -39
  108. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T14_S03_test_task.md +0 -39
  109. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T15_S03_next_task.md +0 -39
  110. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T16_S03_next_task.md +0 -39
  111. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T17_S03_new_test_task.md +0 -39
  112. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T18_S03_first_task.md +0 -39
  113. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T19_S03_test_task.md +0 -39
  114. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T20_S03_task_with_special_characters.md +0 -39
  115. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T21_S03_test.md +0 -39
  116. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T22_S03_test_task.md +0 -39
  117. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T23_S03_next_task.md +0 -39
  118. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T24_S03_next_task.md +0 -39
  119. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T25_S03_new_test_task.md +0 -39
  120. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T26_S03_first_task.md +0 -39
  121. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T27_S03_test_task.md +0 -39
  122. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T28_S03_task_with_special_characters.md +0 -39
  123. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T29_S03_test.md +0 -39
  124. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T30_S03_test_task.md +0 -39
  125. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T31_S03_next_task.md +0 -39
  126. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T32_S03_next_task.md +0 -39
  127. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T33_S03_new_test_task.md +0 -39
  128. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T34_S03_first_task.md +0 -39
  129. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T35_S03_test_task.md +0 -39
  130. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T36_S03_task_with_special_characters.md +0 -39
  131. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T37_S03_test.md +0 -39
  132. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T38_S03_test_task.md +0 -39
  133. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T39_S03_next_task.md +0 -39
  134. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T40_S03_next_task.md +0 -39
  135. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T41_S03_new_test_task.md +0 -39
  136. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T42_S03_first_task.md +0 -39
  137. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T43_S03_test_task.md +0 -39
  138. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T44_S03_task_with_special_characters.md +0 -39
  139. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T45_S03_test.md +0 -39
  140. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T46_S03_test_task.md +0 -39
  141. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T47_S03_next_task.md +0 -39
  142. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T48_S03_next_task.md +0 -39
  143. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T49_S03_new_test_task.md +0 -39
  144. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T50_S03_first_task.md +0 -39
  145. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T51_S03_test_task.md +0 -39
  146. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T52_S03_task_with_special_characters.md +0 -39
  147. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T53_S03_test.md +0 -39
  148. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T54_S03_test_task.md +0 -39
  149. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T55_S03_next_task.md +0 -39
  150. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T56_S03_next_task.md +0 -39
  151. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T57_S03_new_test_task.md +0 -39
  152. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T58_S03_first_task.md +0 -39
  153. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T59_S03_test_task.md +0 -39
  154. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T60_S03_task_with_special_characters.md +0 -39
  155. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T61_S03_test.md +0 -39
  156. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T62_S03_test_task.md +0 -39
  157. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T63_S03_next_task.md +0 -39
  158. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T64_S03_next_task.md +0 -39
  159. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T65_S03_new_test_task.md +0 -39
  160. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T66_S03_first_task.md +0 -39
  161. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T67_S03_test_task.md +0 -39
  162. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T68_S03_task_with_special_characters.md +0 -39
  163. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T69_S03_test.md +0 -39
  164. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T70_S03_test_task.md +0 -39
  165. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T71_S03_next_task.md +0 -39
  166. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T72_S03_next_task.md +0 -39
  167. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T73_S03_new_test_task.md +0 -39
  168. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T74_S03_first_task.md +0 -39
  169. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T75_S03_test_task.md +0 -39
  170. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T76_S03_task_with_special_characters.md +0 -39
  171. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T77_S03_test.md +0 -39
  172. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T78_S03_test_task.md +0 -39
  173. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T79_S03_next_task.md +0 -39
  174. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T80_S03_next_task.md +0 -39
  175. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T81_S03_new_test_task.md +0 -39
  176. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T82_S03_first_task.md +0 -39
  177. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T83_S03_test_task.md +0 -39
  178. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T84_S03_task_with_special_characters.md +0 -39
  179. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T85_S03_test.md +0 -39
  180. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T86_S03_test_task.md +0 -39
  181. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T87_S03_next_task.md +0 -39
  182. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T88_S03_next_task.md +0 -39
  183. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T89_S03_new_test_task.md +0 -39
  184. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T90_S03_first_task.md +0 -39
  185. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T91_S03_test_task.md +0 -39
  186. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T92_S03_task_with_special_characters.md +0 -39
  187. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T93_S03_test.md +0 -39
  188. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T94_S03_test_task.md +0 -39
  189. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T95_S03_next_task.md +0 -39
  190. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T96_S03_next_task.md +0 -39
  191. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T97_S03_new_test_task.md +0 -39
  192. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T98_S03_first_task.md +0 -39
  193. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/T99_S03_test_task.md +0 -39
  194. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/TX14_S03_M02_/353/247/210/354/235/274/354/212/244/355/206/244_/354/265/234/354/242/205_/352/262/200/354/246/235_/353/260/217_/353/254/270/354/204/234/355/231/224.md +0 -214
  195. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/TX15_S03_/352/270/260/353/263/270_/355/224/204/353/241/234/354/240/235/355/212/270_/355/205/234/355/224/214/353/246/277_/352/260/234/353/260/234.md +0 -177
  196. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/TX16_S03_/354/230/244/355/224/204/353/235/274/354/235/270_/355/205/234/355/224/214/353/246/277_/354/272/220/354/213/234_/354/213/234/354/212/244/355/205/234.md +0 -206
  197. package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/TX_T13_S03_AI_/353/217/204/352/265/254_/355/206/265/355/225/251_/355/205/234/355/224/214/353/246/277_/352/260/234/353/260/234.md +0 -151
  198. package/.aiwf/04_GENERAL_TASKS/CLAUDE.md +0 -96
  199. package/.aiwf/04_GENERAL_TASKS/TX001_complete_english_translation.md +0 -127
  200. package/.aiwf/06_FEATURE_LEDGERS/FEATURE_GIT_INTEGRATION.md +0 -314
  201. package/.aiwf/06_FEATURE_LEDGERS/FEATURE_INTEGRATION_GUIDE.md +0 -227
  202. package/.aiwf/06_FEATURE_LEDGERS/FEATURE_LEDGER_INDEX.md +0 -23
  203. package/.aiwf/06_FEATURE_LEDGERS/FEATURE_SCHEMA.md +0 -205
  204. package/.aiwf/06_FEATURE_LEDGERS/FEATURE_STATE_DIAGRAM.md +0 -190
  205. package/.aiwf/06_FEATURE_LEDGERS/active/FL001_user_authentication_system.md +0 -47
  206. package/.aiwf/06_FEATURE_LEDGERS/active/FL002_user_authentication_system.md +0 -47
  207. package/.aiwf/07_AI_PERSONAS/PERSONA_INDEX.md +0 -57
  208. package/.aiwf/07_AI_PERSONAS/architect/best_practices.md +0 -104
  209. package/.aiwf/07_AI_PERSONAS/architect/context_rules.md +0 -46
  210. package/.aiwf/07_AI_PERSONAS/architect/knowledge_base.md +0 -235
  211. package/.aiwf/07_AI_PERSONAS/backend/best_practices.md +0 -363
  212. package/.aiwf/07_AI_PERSONAS/backend/context_rules.md +0 -61
  213. package/.aiwf/07_AI_PERSONAS/backend/knowledge_base.md +0 -623
  214. package/.aiwf/07_AI_PERSONAS/data_analyst/best_practices.md +0 -32
  215. package/.aiwf/07_AI_PERSONAS/data_analyst/context_rules.md +0 -43
  216. package/.aiwf/07_AI_PERSONAS/data_analyst/knowledge_base.md +0 -36
  217. package/.aiwf/07_AI_PERSONAS/frontend/best_practices.md +0 -31
  218. package/.aiwf/07_AI_PERSONAS/frontend/context_rules.md +0 -43
  219. package/.aiwf/07_AI_PERSONAS/frontend/knowledge_base.md +0 -32
  220. package/.aiwf/07_AI_PERSONAS/security/best_practices.md +0 -63
  221. package/.aiwf/07_AI_PERSONAS/security/context_rules.md +0 -53
  222. package/.aiwf/07_AI_PERSONAS/security/knowledge_base.md +0 -93
  223. package/.aiwf/10_PERSONAS/active.json +0 -1
  224. package/.aiwf/10_PERSONAS/developer.md +0 -37
  225. package/.aiwf/10_STATE_OF_PROJECT/2025-07-09-07-20-solid-progress.md +0 -144
  226. package/.aiwf/98_PROMPTS/SAAS_DEVELOPMENT_GUIDE.md +0 -302
  227. package/.aiwf/98_PROMPTS/github_integration.md +0 -130
  228. package/.aiwf/98_PROMPTS/useful-prompts.md +0 -31
  229. package/.aiwf/98_PROMPTS/vibe-front-prompts.md +0 -89
  230. package/.aiwf/99_TEMPLATES/adr_template.md +0 -49
  231. package/.aiwf/99_TEMPLATES/feature_template.md +0 -263
  232. package/.aiwf/99_TEMPLATES/milestone_meta_template.md +0 -25
  233. package/.aiwf/99_TEMPLATES/project_manifest_template.md +0 -39
  234. package/.aiwf/99_TEMPLATES/sprint_meta_template.md +0 -23
  235. package/.aiwf/99_TEMPLATES/task_template.md +0 -36
  236. package/.aiwf/CLAUDE.md +0 -76
  237. package/.aiwf/ai-tools/README.md +0 -105
  238. package/.aiwf/ai-tools/augment/README.md +0 -371
  239. package/.aiwf/ai-tools/augment/config.json +0 -30
  240. package/.aiwf/ai-tools/augment/template/.augment/aiwf-integration.md +0 -387
  241. package/.aiwf/ai-tools/augment/template/.augment/augment.yaml +0 -347
  242. package/.aiwf/ai-tools/augment/template/augment.config.json +0 -64
  243. package/.aiwf/ai-tools/claude-code/README.md +0 -151
  244. package/.aiwf/ai-tools/claude-code/config.json +0 -28
  245. package/.aiwf/ai-tools/claude-code/template/CLAUDE.md +0 -91
  246. package/.aiwf/ai-tools/cursor/README.md +0 -314
  247. package/.aiwf/ai-tools/cursor/config.json +0 -29
  248. package/.aiwf/ai-tools/cursor/template/.cursorrules +0 -362
  249. package/.aiwf/ai-tools/github-copilot/README.md +0 -195
  250. package/.aiwf/ai-tools/github-copilot/config.json +0 -24
  251. package/.aiwf/ai-tools/github-copilot/template/.github/copilot-instructions.md +0 -202
  252. package/.aiwf/ai-tools/windsurf/README.md +0 -355
  253. package/.aiwf/ai-tools/windsurf/config.json +0 -29
  254. package/.aiwf/ai-tools/windsurf/template/.windsurf/aiwf-rules.md +0 -260
  255. package/.aiwf/ai-tools/windsurf/template/.windsurf/windsurf.config.js +0 -312
  256. package/.aiwf/ai-tools/windsurf/template/windsurf.config.json +0 -63
  257. package/.aiwf/config/language.json +0 -6
  258. package/.aiwf/feature-ledger/FL-001-authentication.json +0 -52
  259. package/.aiwf/feature-ledger/feature-index.json +0 -20
  260. package/.aiwf/installed.flag +0 -1
  261. package/.aiwf/metrics/metrics.json +0 -18
  262. package/.aiwf/personas/analyst.json +0 -44
  263. package/.aiwf/personas/architect/best_practices.md +0 -136
  264. package/.aiwf/personas/architect/knowledge_base.md +0 -377
  265. package/.aiwf/personas/architect.json +0 -44
  266. package/.aiwf/personas/backend/best_practices.md +0 -766
  267. package/.aiwf/personas/backend/knowledge_base.md +0 -1070
  268. package/.aiwf/personas/current.json +0 -5
  269. package/.aiwf/personas/data_analyst/best_practices.md +0 -594
  270. package/.aiwf/personas/data_analyst/knowledge_base.md +0 -1057
  271. package/.aiwf/personas/developer.json +0 -44
  272. package/.aiwf/personas/evaluation_criteria.json +0 -137
  273. package/.aiwf/personas/frontend/best_practices.md +0 -445
  274. package/.aiwf/personas/frontend/knowledge_base.md +0 -729
  275. package/.aiwf/personas/persona-index.json +0 -31
  276. package/.aiwf/personas/reviewer.json +0 -44
  277. package/.aiwf/personas/security/best_practices.md +0 -307
  278. package/.aiwf/personas/security/knowledge_base.md +0 -498
  279. package/.aiwf/personas/tester.json +0 -44
  280. package/.aiwf/scripts/cache-templates.js +0 -209
  281. package/.aiwf/scripts/create-offline.js +0 -86
  282. package/.aiwf/scripts/create-project.js +0 -151
  283. package/.aiwf/scripts/feature-progress-calculator.cjs +0 -236
  284. package/.aiwf/scripts/git-integration.cjs +0 -391
  285. package/.aiwf/scripts/install-git-hooks.cjs +0 -226
  286. package/.aiwf/scripts/test-commit-parsing.cjs +0 -125
  287. package/.aiwf/scripts/update-feature-status.cjs +0 -198
  288. package/.aiwf/test-results-s02.json +0 -36
  289. package/.claude/commands/aiwf/aiwf_add_task_to_sprint.md +0 -283
  290. package/.claude/commands/aiwf/aiwf_changelog.md +0 -82
  291. package/.claude/commands/aiwf/aiwf_code_review.md +0 -88
  292. package/.claude/commands/aiwf/aiwf_commit.md +0 -160
  293. package/.claude/commands/aiwf/aiwf_compress_aggressive_persona.md +0 -41
  294. package/.claude/commands/aiwf/aiwf_compress_context.md +0 -116
  295. package/.claude/commands/aiwf/aiwf_compress_minimal_persona.md +0 -35
  296. package/.claude/commands/aiwf/aiwf_compress_stats.md +0 -30
  297. package/.claude/commands/aiwf/aiwf_compress_with_persona.md +0 -38
  298. package/.claude/commands/aiwf/aiwf_create_feature_ledger.md +0 -54
  299. package/.claude/commands/aiwf/aiwf_create_general_task.md +0 -147
  300. package/.claude/commands/aiwf/aiwf_create_milestone_plan.md +0 -194
  301. package/.claude/commands/aiwf/aiwf_create_prd.md +0 -280
  302. package/.claude/commands/aiwf/aiwf_create_sprint_tasks.md +0 -189
  303. package/.claude/commands/aiwf/aiwf_create_sprints_from_milestone.md +0 -121
  304. package/.claude/commands/aiwf/aiwf_default_mode.md +0 -44
  305. package/.claude/commands/aiwf/aiwf_discuss_review.md +0 -29
  306. package/.claude/commands/aiwf/aiwf_do_task.md +0 -109
  307. package/.claude/commands/aiwf/aiwf_docs.md +0 -225
  308. package/.claude/commands/aiwf/aiwf_evaluate.md +0 -79
  309. package/.claude/commands/aiwf/aiwf_get_feature_details.md +0 -78
  310. package/.claude/commands/aiwf/aiwf_infinite.md +0 -202
  311. package/.claude/commands/aiwf/aiwf_initialize.md +0 -134
  312. package/.claude/commands/aiwf/aiwf_install_git_hooks.md +0 -63
  313. package/.claude/commands/aiwf/aiwf_issue_create.md +0 -65
  314. package/.claude/commands/aiwf/aiwf_link_feature_branch.md +0 -43
  315. package/.claude/commands/aiwf/aiwf_link_feature_commit.md +0 -46
  316. package/.claude/commands/aiwf/aiwf_link_feature_to_milestone.md +0 -57
  317. package/.claude/commands/aiwf/aiwf_list_features.md +0 -54
  318. package/.claude/commands/aiwf/aiwf_mermaid.md +0 -272
  319. package/.claude/commands/aiwf/aiwf_persona_architect.md +0 -48
  320. package/.claude/commands/aiwf/aiwf_persona_backend.md +0 -37
  321. package/.claude/commands/aiwf/aiwf_persona_data_analyst.md +0 -37
  322. package/.claude/commands/aiwf/aiwf_persona_frontend.md +0 -37
  323. package/.claude/commands/aiwf/aiwf_persona_security.md +0 -48
  324. package/.claude/commands/aiwf/aiwf_persona_status.md +0 -50
  325. package/.claude/commands/aiwf/aiwf_pr_create.md +0 -76
  326. package/.claude/commands/aiwf/aiwf_prime.md +0 -9
  327. package/.claude/commands/aiwf/aiwf_project_review.md +0 -261
  328. package/.claude/commands/aiwf/aiwf_switch_language.md +0 -88
  329. package/.claude/commands/aiwf/aiwf_test.md +0 -124
  330. package/.claude/commands/aiwf/aiwf_testing_review.md +0 -198
  331. package/.claude/commands/aiwf/aiwf_tm-run-all-subtask.md +0 -210
  332. package/.claude/commands/aiwf/aiwf_ultrathink_code_advanced.md +0 -460
  333. package/.claude/commands/aiwf/aiwf_ultrathink_code_basic.md +0 -165
  334. package/.claude/commands/aiwf/aiwf_ultrathink_general.md +0 -305
  335. package/.claude/commands/aiwf/aiwf_update_docs_kr.md +0 -25
  336. package/.claude/commands/aiwf/aiwf_update_feature_status.md +0 -53
  337. package/.claude/commands/aiwf/aiwf_yolo.md +0 -300
  338. package/.eslintrc.json +0 -26
  339. package/.prettierrc +0 -10
  340. package/CLAUDE.md +0 -254
  341. package/RELEASE_NOTES_M02.md +0 -177
  342. package/TEST_RECOVERY_PLAN.md +0 -68
  343. package/claude-code/aiwf/en/.aiwf/00_PROJECT_MANIFEST.md +0 -49
  344. package/claude-code/aiwf/en/.aiwf/01_PROJECT_DOCS/ARCHITECTURE.md +0 -55
  345. package/claude-code/aiwf/en/.aiwf/02_REQUIREMENTS/CLAUDE.md +0 -78
  346. package/claude-code/aiwf/en/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/M01_milestone_meta.md +0 -42
  347. package/claude-code/aiwf/en/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/PRD_AMEND_01_Auth_Flow_Update.md +0 -73
  348. package/claude-code/aiwf/en/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/PRD_Backend_Setup.md +0 -98
  349. package/claude-code/aiwf/en/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/SPECS_API_V1.md +0 -232
  350. package/claude-code/aiwf/en/.aiwf/03_SPRINTS/CLAUDE.md +0 -83
  351. package/claude-code/aiwf/en/.aiwf/03_SPRINTS/S01_M01_Initial_API/S01_sprint_meta.md +0 -49
  352. package/claude-code/aiwf/en/.aiwf/03_SPRINTS/S01_M01_Initial_API/T01_S01_Setup_Project_Structure.md +0 -60
  353. package/claude-code/aiwf/en/.aiwf/04_GENERAL_TASKS/CLAUDE.md +0 -96
  354. package/claude-code/aiwf/en/.aiwf/04_GENERAL_TASKS/T002_API_Rate_Limiting.md +0 -54
  355. package/claude-code/aiwf/en/.aiwf/04_GENERAL_TASKS/TX001_Refactor_Logging_Module.md +0 -58
  356. package/claude-code/aiwf/en/.aiwf/05_ARCHITECTURAL_DECISIONS/ADR001_Chosen_Database_System.md +0 -119
  357. package/claude-code/aiwf/en/.aiwf/05_ARCHITECTURAL_DECISIONS/ADR002_API_Authentication_Method.md +0 -124
  358. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-12-12-00-needs-focus.md +0 -139
  359. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-12-12-00-test-alignment.md +0 -155
  360. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-13-00-50-solid-progress.md +0 -122
  361. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-14-08-30-infrastructure-challenges.md +0 -141
  362. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-16-21-48-critical-foundation-issues.md +0 -177
  363. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-17-15-08-solid-progress.md +0 -149
  364. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/index.json +0 -5
  365. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/sync-index.js +0 -78
  366. package/claude-code/aiwf/en/.aiwf/98_PROMPTS/github_integration.md +0 -130
  367. package/claude-code/aiwf/en/.aiwf/98_PROMPTS/useful-prompts.md +0 -31
  368. package/claude-code/aiwf/en/.aiwf/98_PROMPTS/vibe-front-prompts.md +0 -89
  369. package/claude-code/aiwf/en/.aiwf/99_TEMPLATES/adr_template.md +0 -49
  370. package/claude-code/aiwf/en/.aiwf/99_TEMPLATES/milestone_meta_template.md +0 -25
  371. package/claude-code/aiwf/en/.aiwf/99_TEMPLATES/project_manifest_template.md +0 -39
  372. package/claude-code/aiwf/en/.aiwf/99_TEMPLATES/sprint_meta_template.md +0 -23
  373. package/claude-code/aiwf/en/.aiwf/99_TEMPLATES/task_template.md +0 -36
  374. package/claude-code/aiwf/en/.aiwf/CLAUDE.md +0 -74
  375. package/claude-code/aiwf/en/.aiwf/README.md +0 -97
  376. package/claude-code/aiwf/en/.claude/CLAUDE_BE.md +0 -276
  377. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_changelog.md +0 -82
  378. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_code_review.md +0 -88
  379. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_commit.md +0 -160
  380. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_feature_ledger.md +0 -54
  381. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_general_task.md +0 -147
  382. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_milestone_plan.md +0 -194
  383. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_prd.md +0 -272
  384. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_sprint_tasks.md +0 -189
  385. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_sprints_from_milestone.md +0 -121
  386. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_testcase.md +0 -561
  387. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_default_mode.md +0 -66
  388. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_discuss_review.md +0 -29
  389. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_do_task.md +0 -109
  390. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_docs.md +0 -225
  391. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_get_feature_details.md +0 -78
  392. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_infinite.md +0 -202
  393. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_initialize.md +0 -134
  394. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_issue_create.md +0 -65
  395. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_link_feature_to_milestone.md +0 -57
  396. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_list_features.md +0 -54
  397. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_mermaid.md +0 -272
  398. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_persona_architect.md +0 -60
  399. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_persona_backend.md +0 -60
  400. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_persona_data_analyst.md +0 -60
  401. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_persona_frontend.md +0 -60
  402. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_persona_security.md +0 -60
  403. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_persona_status.md +0 -72
  404. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_pr_create.md +0 -76
  405. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_prime.md +0 -9
  406. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_project_review.md +0 -261
  407. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_switch_language.md +0 -160
  408. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_test.md +0 -125
  409. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_testing_review.md +0 -198
  410. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_tm-run-all-subtask.md +0 -206
  411. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_ultrathink_code_advanced.md +0 -460
  412. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_ultrathink_code_basic.md +0 -165
  413. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_ultrathink_general.md +0 -362
  414. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_update_feature_status.md +0 -53
  415. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_yolo.md +0 -300
  416. package/claude-code/aiwf/en/.claude/mcp.json +0 -31
  417. package/claude-code/aiwf/en/.claude/settings.json +0 -102
  418. package/claude-code/aiwf/en/commands/ai-persona.js +0 -667
  419. package/claude-code/aiwf/en/commands/compress-context.js +0 -355
  420. package/claude-code/aiwf/en/commands/feature-ledger.js +0 -565
  421. package/claude-code/aiwf/en/commands/feature_commit_report.js +0 -370
  422. package/claude-code/aiwf/en/commands/scan_git_history.js +0 -234
  423. package/claude-code/aiwf/en/commands/sync_feature_commits.js +0 -154
  424. package/claude-code/aiwf/en/commands/token-tracking.js +0 -443
  425. package/claude-code/aiwf/en/config/commit-patterns.js +0 -103
  426. package/claude-code/aiwf/en/hooks/install-hooks.sh +0 -100
  427. package/claude-code/aiwf/en/hooks/post-commit +0 -84
  428. package/claude-code/aiwf/en/tests/compression-test-suite.js +0 -1252
  429. package/claude-code/aiwf/en/tests/test-git-integration.js +0 -164
  430. package/claude-code/aiwf/en/tests/token-tracking.test.js +0 -537
  431. package/claude-code/aiwf/en/utils/compression-metrics.js +0 -1031
  432. package/claude-code/aiwf/en/utils/compression-strategies.js +0 -557
  433. package/claude-code/aiwf/en/utils/content-normalizer.js +0 -455
  434. package/claude-code/aiwf/en/utils/context-compressor.js +0 -583
  435. package/claude-code/aiwf/en/utils/feature-updater.js +0 -271
  436. package/claude-code/aiwf/en/utils/git-utils.js +0 -220
  437. package/claude-code/aiwf/en/utils/importance-classifier.js +0 -645
  438. package/claude-code/aiwf/en/utils/information-filter.js +0 -710
  439. package/claude-code/aiwf/en/utils/text-summarizer.js +0 -487
  440. package/claude-code/aiwf/en/utils/token-counter.js +0 -177
  441. package/claude-code/aiwf/en/utils/token-monitor.js +0 -484
  442. package/claude-code/aiwf/en/utils/token-reporter.js +0 -453
  443. package/claude-code/aiwf/en/utils/token-storage.js +0 -433
  444. package/claude-code/aiwf/en/utils/token-tracker.js +0 -283
  445. package/claude-code/aiwf/ko/.aiwf/00_PROJECT_MANIFEST.md +0 -49
  446. package/claude-code/aiwf/ko/.aiwf/01_PROJECT_DOCS/ARCHITECTURE.md +0 -55
  447. package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/CLAUDE.md +0 -78
  448. package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/M01_milestone_meta.md +0 -42
  449. package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/PRD_AMEND_01_Auth_Flow_Update.md +0 -73
  450. package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/PRD_Backend_Setup.md +0 -98
  451. package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/SPECS_API_V1.md +0 -232
  452. package/claude-code/aiwf/ko/.aiwf/03_SPRINTS/CLAUDE.md +0 -83
  453. package/claude-code/aiwf/ko/.aiwf/03_SPRINTS/S01_M01_Initial_API/S01_sprint_meta.md +0 -49
  454. package/claude-code/aiwf/ko/.aiwf/03_SPRINTS/S01_M01_Initial_API/T01_S01_Setup_Project_Structure.md +0 -60
  455. package/claude-code/aiwf/ko/.aiwf/04_GENERAL_TASKS/CLAUDE.md +0 -96
  456. package/claude-code/aiwf/ko/.aiwf/04_GENERAL_TASKS/T002_API_Rate_Limiting.md +0 -54
  457. package/claude-code/aiwf/ko/.aiwf/04_GENERAL_TASKS/TX001_Refactor_Logging_Module.md +0 -58
  458. package/claude-code/aiwf/ko/.aiwf/05_ARCHITECTURAL_DECISIONS/ADR001_Chosen_Database_System.md +0 -119
  459. package/claude-code/aiwf/ko/.aiwf/05_ARCHITECTURAL_DECISIONS/ADR002_API_Authentication_Method.md +0 -124
  460. package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/FEATURE_ID_GENERATOR.md +0 -138
  461. package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/FEATURE_INDEX.md +0 -186
  462. package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/FEATURE_METADATA.md +0 -240
  463. package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/FEATURE_WORKFLOW.md +0 -183
  464. package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/README.md +0 -94
  465. package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/active/FL001_/354/202/254/354/232/251/354/236/220_/354/235/270/354/246/235_/354/213/234/354/212/244/355/205/234.md +0 -154
  466. package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/active/FL002_ai_/355/216/230/353/245/264/354/206/214/353/202/230_/354/213/234/354/212/244/355/205/234.md +0 -272
  467. package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/completed/FL003_/353/213/244/352/265/255/354/226/264_/353/252/205/353/240/271/354/226/264_/355/221/234/354/244/200/355/231/224.md +0 -266
  468. package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/schemas/feature_schema.json +0 -122
  469. package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/schemas/feature_validator.cjs +0 -406
  470. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-12-12-00-needs-focus.md +0 -139
  471. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-12-12-00-test-alignment.md +0 -155
  472. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-13-00-50-solid-progress.md +0 -122
  473. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-14-08-30-infrastructure-challenges.md +0 -141
  474. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-16-21-48-critical-foundation-issues.md +0 -177
  475. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-17-15-08-solid-progress.md +0 -149
  476. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/index.json +0 -5
  477. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/sync-index.js +0 -78
  478. package/claude-code/aiwf/ko/.aiwf/98_PROMPTS/github_integration.md +0 -130
  479. package/claude-code/aiwf/ko/.aiwf/98_PROMPTS/useful-prompts.md +0 -31
  480. package/claude-code/aiwf/ko/.aiwf/98_PROMPTS/vibe-front-prompts.md +0 -89
  481. package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/adr_template.md +0 -49
  482. package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/milestone_meta_template.md +0 -25
  483. package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/project_manifest_template.md +0 -39
  484. package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/sprint_meta_template.md +0 -23
  485. package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/task_template.md +0 -36
  486. package/claude-code/aiwf/ko/.aiwf/CLAUDE.md +0 -76
  487. package/claude-code/aiwf/ko/.aiwf/README.md +0 -97
  488. package/claude-code/aiwf/ko/.claude/CLAUDE_BE.md +0 -276
  489. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_changelog.md +0 -82
  490. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_code_review.md +0 -88
  491. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_commit.md +0 -160
  492. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_compress_aggressive_persona.md +0 -53
  493. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_compress_context.md +0 -116
  494. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_compress_minimal_persona.md +0 -48
  495. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_compress_stats.md +0 -42
  496. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_compress_with_persona.md +0 -51
  497. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_feature_ledger.md +0 -54
  498. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_general_task.md +0 -147
  499. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_milestone_plan.md +0 -194
  500. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_prd.md +0 -280
  501. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_sprint_tasks.md +0 -189
  502. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_sprints_from_milestone.md +0 -121
  503. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_testcase.md +0 -561
  504. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_default_mode.md +0 -44
  505. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_discuss_review.md +0 -29
  506. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_do_task.md +0 -109
  507. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_docs.md +0 -225
  508. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_evaluate.md +0 -92
  509. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_get_feature_details.md +0 -78
  510. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_infinite.md +0 -202
  511. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_initialize.md +0 -134
  512. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_issue_create.md +0 -65
  513. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_link_feature_to_milestone.md +0 -57
  514. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_list_features.md +0 -54
  515. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_mermaid.md +0 -272
  516. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_persona_architect.md +0 -48
  517. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_persona_backend.md +0 -37
  518. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_persona_data_analyst.md +0 -37
  519. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_persona_frontend.md +0 -37
  520. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_persona_security.md +0 -48
  521. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_persona_status.md +0 -50
  522. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_pr_create.md +0 -76
  523. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_prime.md +0 -9
  524. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_project_review.md +0 -261
  525. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_test.md +0 -124
  526. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_testing_review.md +0 -198
  527. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_tm-run-all-subtask.md +0 -210
  528. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_ultrathink_code_advanced.md +0 -460
  529. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_ultrathink_code_basic.md +0 -165
  530. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_ultrathink_general.md +0 -305
  531. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_update_docs.md +0 -25
  532. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_update_feature_status.md +0 -53
  533. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_yolo.md +0 -300
  534. package/claude-code/aiwf/ko/.claude/mcp.json +0 -31
  535. package/claude-code/aiwf/ko/.claude/settings.json +0 -102
  536. package/claude-code/aiwf/ko/CLAUDE.md +0 -76
  537. package/claude-code/aiwf/ko/ai-tools/README.md +0 -105
  538. package/claude-code/aiwf/ko/ai-tools/augment/README.md +0 -371
  539. package/claude-code/aiwf/ko/ai-tools/augment/config.json +0 -30
  540. package/claude-code/aiwf/ko/ai-tools/augment/template/.augment/aiwf-integration.md +0 -387
  541. package/claude-code/aiwf/ko/ai-tools/augment/template/.augment/augment.yaml +0 -347
  542. package/claude-code/aiwf/ko/ai-tools/augment/template/augment.config.json +0 -64
  543. package/claude-code/aiwf/ko/ai-tools/claude-code/README.md +0 -151
  544. package/claude-code/aiwf/ko/ai-tools/claude-code/config.json +0 -28
  545. package/claude-code/aiwf/ko/ai-tools/claude-code/template/CLAUDE.md +0 -91
  546. package/claude-code/aiwf/ko/ai-tools/cursor/README.md +0 -314
  547. package/claude-code/aiwf/ko/ai-tools/cursor/config.json +0 -29
  548. package/claude-code/aiwf/ko/ai-tools/cursor/template/.cursorrules +0 -362
  549. package/claude-code/aiwf/ko/ai-tools/github-copilot/README.md +0 -195
  550. package/claude-code/aiwf/ko/ai-tools/github-copilot/config.json +0 -24
  551. package/claude-code/aiwf/ko/ai-tools/github-copilot/template/.github/copilot-instructions.md +0 -202
  552. package/claude-code/aiwf/ko/ai-tools/windsurf/README.md +0 -355
  553. package/claude-code/aiwf/ko/ai-tools/windsurf/config.json +0 -29
  554. package/claude-code/aiwf/ko/ai-tools/windsurf/template/.windsurf/aiwf-rules.md +0 -260
  555. package/claude-code/aiwf/ko/ai-tools/windsurf/template/.windsurf/windsurf.config.js +0 -312
  556. package/claude-code/aiwf/ko/ai-tools/windsurf/template/windsurf.config.json +0 -63
  557. package/claude-code/aiwf/ko/commands/ai-persona.js +0 -602
  558. package/claude-code/aiwf/ko/commands/compress-context.js +0 -389
  559. package/claude-code/aiwf/ko/commands/evaluate.js +0 -246
  560. package/claude-code/aiwf/ko/commands/feature-ledger.js +0 -565
  561. package/claude-code/aiwf/ko/commands/feature_commit_report.js +0 -370
  562. package/claude-code/aiwf/ko/commands/persona-context-apply.js +0 -562
  563. package/claude-code/aiwf/ko/commands/scan_git_history.js +0 -234
  564. package/claude-code/aiwf/ko/commands/sync_feature_commits.js +0 -154
  565. package/claude-code/aiwf/ko/commands/token-tracking.js +0 -443
  566. package/claude-code/aiwf/ko/config/commit-patterns.js +0 -103
  567. package/claude-code/aiwf/ko/config/language.json +0 -6
  568. package/claude-code/aiwf/ko/feature-ledger/FL-001-authentication.json +0 -52
  569. package/claude-code/aiwf/ko/feature-ledger/feature-index.json +0 -20
  570. package/claude-code/aiwf/ko/hooks/install-hooks.sh +0 -100
  571. package/claude-code/aiwf/ko/hooks/post-commit +0 -84
  572. package/claude-code/aiwf/ko/personas/PERSONA_INDEX.md +0 -57
  573. package/claude-code/aiwf/ko/personas/analyst.json +0 -44
  574. package/claude-code/aiwf/ko/personas/architect/best_practices.md +0 -136
  575. package/claude-code/aiwf/ko/personas/architect/knowledge_base.md +0 -377
  576. package/claude-code/aiwf/ko/personas/architect.json +0 -44
  577. package/claude-code/aiwf/ko/personas/backend/best_practices.md +0 -766
  578. package/claude-code/aiwf/ko/personas/backend/knowledge_base.md +0 -1070
  579. package/claude-code/aiwf/ko/personas/data_analyst/best_practices.md +0 -594
  580. package/claude-code/aiwf/ko/personas/data_analyst/knowledge_base.md +0 -1057
  581. package/claude-code/aiwf/ko/personas/developer.json +0 -44
  582. package/claude-code/aiwf/ko/personas/developer.md +0 -37
  583. package/claude-code/aiwf/ko/personas/evaluation_criteria.json +0 -137
  584. package/claude-code/aiwf/ko/personas/frontend/best_practices.md +0 -445
  585. package/claude-code/aiwf/ko/personas/frontend/knowledge_base.md +0 -729
  586. package/claude-code/aiwf/ko/personas/persona-index.json +0 -31
  587. package/claude-code/aiwf/ko/personas/reviewer.json +0 -44
  588. package/claude-code/aiwf/ko/personas/security/best_practices.md +0 -307
  589. package/claude-code/aiwf/ko/personas/security/knowledge_base.md +0 -498
  590. package/claude-code/aiwf/ko/personas/tester.json +0 -44
  591. package/claude-code/aiwf/ko/scripts/cache-templates.js +0 -209
  592. package/claude-code/aiwf/ko/scripts/create-offline.js +0 -86
  593. package/claude-code/aiwf/ko/scripts/create-project.js +0 -151
  594. package/claude-code/aiwf/ko/scripts/feature-progress-calculator.cjs +0 -236
  595. package/claude-code/aiwf/ko/scripts/git-integration.cjs +0 -391
  596. package/claude-code/aiwf/ko/scripts/install-git-hooks.cjs +0 -226
  597. package/claude-code/aiwf/ko/scripts/test-commit-parsing.cjs +0 -125
  598. package/claude-code/aiwf/ko/scripts/update-feature-status.cjs +0 -198
  599. package/claude-code/aiwf/ko/templates/README.md +0 -78
  600. package/claude-code/aiwf/ko/templates/api-server/config.json +0 -64
  601. package/claude-code/aiwf/ko/templates/api-server/template/.aiwf/config.json +0 -56
  602. package/claude-code/aiwf/ko/templates/api-server/template/.aiwf/feature-ledger.json +0 -42
  603. package/claude-code/aiwf/ko/templates/api-server/template/.aiwf/personas/backend-engineer.json +0 -40
  604. package/claude-code/aiwf/ko/templates/api-server/template/.aiwf/scripts/cli.js +0 -111
  605. package/claude-code/aiwf/ko/templates/api-server/template/.env.example +0 -29
  606. package/claude-code/aiwf/ko/templates/api-server/template/.eslintrc.json +0 -23
  607. package/claude-code/aiwf/ko/templates/api-server/template/README.md +0 -171
  608. package/claude-code/aiwf/ko/templates/api-server/template/jest.config.js +0 -26
  609. package/claude-code/aiwf/ko/templates/api-server/template/nodemon.json +0 -9
  610. package/claude-code/aiwf/ko/templates/api-server/template/package.json +0 -61
  611. package/claude-code/aiwf/ko/templates/api-server/template/src/app.ts +0 -60
  612. package/claude-code/aiwf/ko/templates/api-server/template/src/config/swagger.ts +0 -38
  613. package/claude-code/aiwf/ko/templates/api-server/template/src/controllers/aiwfController.ts +0 -68
  614. package/claude-code/aiwf/ko/templates/api-server/template/src/controllers/authController.ts +0 -128
  615. package/claude-code/aiwf/ko/templates/api-server/template/src/controllers/statusController.ts +0 -28
  616. package/claude-code/aiwf/ko/templates/api-server/template/src/index.ts +0 -28
  617. package/claude-code/aiwf/ko/templates/api-server/template/src/middleware/aiwfMiddleware.ts +0 -50
  618. package/claude-code/aiwf/ko/templates/api-server/template/src/middleware/authMiddleware.ts +0 -41
  619. package/claude-code/aiwf/ko/templates/api-server/template/src/middleware/errorHandler.ts +0 -42
  620. package/claude-code/aiwf/ko/templates/api-server/template/src/middleware/notFoundHandler.ts +0 -14
  621. package/claude-code/aiwf/ko/templates/api-server/template/src/middleware/requestLogger.ts +0 -20
  622. package/claude-code/aiwf/ko/templates/api-server/template/src/routes/aiwf.ts +0 -42
  623. package/claude-code/aiwf/ko/templates/api-server/template/src/routes/index.ts +0 -13
  624. package/claude-code/aiwf/ko/templates/api-server/template/src/routes/v1/index.ts +0 -67
  625. package/claude-code/aiwf/ko/templates/api-server/template/src/utils/logger.ts +0 -37
  626. package/claude-code/aiwf/ko/templates/api-server/template/tests/app.test.ts +0 -40
  627. package/claude-code/aiwf/ko/templates/api-server/template/tsconfig.json +0 -43
  628. package/claude-code/aiwf/ko/templates/npm-library/config.json +0 -61
  629. package/claude-code/aiwf/ko/templates/npm-library/template/LICENSE +0 -21
  630. package/claude-code/aiwf/ko/templates/npm-library/template/README.md +0 -201
  631. package/claude-code/aiwf/ko/templates/npm-library/template/package.json +0 -78
  632. package/claude-code/aiwf/ko/templates/web-app/config.json +0 -53
  633. package/claude-code/aiwf/ko/templates/web-app/template/.aiwf/config.json +0 -54
  634. package/claude-code/aiwf/ko/templates/web-app/template/.aiwf/feature-ledger.json +0 -37
  635. package/claude-code/aiwf/ko/templates/web-app/template/.aiwf/personas/fullstack-developer.json +0 -40
  636. package/claude-code/aiwf/ko/templates/web-app/template/.aiwf/scripts/cli.js +0 -110
  637. package/claude-code/aiwf/ko/templates/web-app/template/.eslintrc.cjs +0 -20
  638. package/claude-code/aiwf/ko/templates/web-app/template/README.md +0 -151
  639. package/claude-code/aiwf/ko/templates/web-app/template/index.html +0 -14
  640. package/claude-code/aiwf/ko/templates/web-app/template/package.json +0 -44
  641. package/claude-code/aiwf/ko/templates/web-app/template/postcss.config.js +0 -6
  642. package/claude-code/aiwf/ko/templates/web-app/template/public/vite.svg +0 -1
  643. package/claude-code/aiwf/ko/templates/web-app/template/src/App.tsx +0 -21
  644. package/claude-code/aiwf/ko/templates/web-app/template/src/components/Layout.tsx +0 -57
  645. package/claude-code/aiwf/ko/templates/web-app/template/src/components/aiwf/ContextStatus.tsx +0 -107
  646. package/claude-code/aiwf/ko/templates/web-app/template/src/components/aiwf/FeatureLedger.tsx +0 -93
  647. package/claude-code/aiwf/ko/templates/web-app/template/src/components/aiwf/TokenUsage.tsx +0 -71
  648. package/claude-code/aiwf/ko/templates/web-app/template/src/index.css +0 -60
  649. package/claude-code/aiwf/ko/templates/web-app/template/src/main.tsx +0 -10
  650. package/claude-code/aiwf/ko/templates/web-app/template/src/pages/AiwfDashboard.tsx +0 -60
  651. package/claude-code/aiwf/ko/templates/web-app/template/src/pages/HomePage.tsx +0 -89
  652. package/claude-code/aiwf/ko/templates/web-app/template/src/pages/NotFound.tsx +0 -25
  653. package/claude-code/aiwf/ko/templates/web-app/template/src/stores/aiwfStore.ts +0 -126
  654. package/claude-code/aiwf/ko/templates/web-app/template/src/types/global.d.ts +0 -9
  655. package/claude-code/aiwf/ko/templates/web-app/template/src/vite-env.d.ts +0 -1
  656. package/claude-code/aiwf/ko/templates/web-app/template/tailwind.config.js +0 -30
  657. package/claude-code/aiwf/ko/templates/web-app/template/tsconfig.json +0 -37
  658. package/claude-code/aiwf/ko/templates/web-app/template/tsconfig.node.json +0 -10
  659. package/claude-code/aiwf/ko/templates/web-app/template/vite.config.ts +0 -23
  660. package/claude-code/aiwf/ko/tests/compression-test-suite.js +0 -1252
  661. package/claude-code/aiwf/ko/tests/test-git-integration.js +0 -164
  662. package/claude-code/aiwf/ko/tests/token-tracking.test.js +0 -537
  663. package/claude-code/aiwf/ko/utils/background-monitor.js +0 -223
  664. package/claude-code/aiwf/ko/utils/compression-metrics.js +0 -1031
  665. package/claude-code/aiwf/ko/utils/compression-strategies.js +0 -557
  666. package/claude-code/aiwf/ko/utils/content-normalizer.js +0 -455
  667. package/claude-code/aiwf/ko/utils/context-compressor.js +0 -583
  668. package/claude-code/aiwf/ko/utils/context-rule-parser.js +0 -180
  669. package/claude-code/aiwf/ko/utils/context-token-monitor.js +0 -463
  670. package/claude-code/aiwf/ko/utils/context-update-manager.js +0 -502
  671. package/claude-code/aiwf/ko/utils/feature-updater.js +0 -271
  672. package/claude-code/aiwf/ko/utils/git-utils.js +0 -220
  673. package/claude-code/aiwf/ko/utils/importance-classifier.js +0 -645
  674. package/claude-code/aiwf/ko/utils/information-filter.js +0 -710
  675. package/claude-code/aiwf/ko/utils/persona-aware-compressor.js +0 -598
  676. package/claude-code/aiwf/ko/utils/prompt-injector.js +0 -242
  677. package/claude-code/aiwf/ko/utils/simplified-evaluator.js +0 -119
  678. package/claude-code/aiwf/ko/utils/text-summarizer.js +0 -492
  679. package/claude-code/aiwf/ko/utils/token-counter.js +0 -177
  680. package/claude-code/aiwf/ko/utils/token-monitor.js +0 -484
  681. package/claude-code/aiwf/ko/utils/token-reporter.js +0 -453
  682. package/claude-code/aiwf/ko/utils/token-storage.js +0 -433
  683. package/claude-code/aiwf/ko/utils/token-tracker.js +0 -283
  684. package/claude-code/docker/Dockerfile +0 -117
  685. package/jest.config.js +0 -23
  686. package/scripts/update-feature-status.js +0 -70
  687. package/src/commands/feature.js +0 -365
  688. package/tests/application.test.js +0 -260
  689. package/tests/basic.test.js +0 -62
  690. package/tests/commands.test.js +0 -127
  691. package/tests/installer.test.js +0 -129
  692. package/tests/integration/ai-persona-system.test.js +0 -396
  693. package/tests/integration/ai-persona.test.js +0 -390
  694. package/tests/integration/command-integration.test.js +0 -600
  695. package/tests/integration/context-compression.test.js +0 -361
  696. package/tests/integration/feature-ledger.test.js +0 -226
  697. package/tests/integration/git-integration.test.js +0 -307
  698. package/tests/integration/m02-milestone.test.js +0 -420
  699. package/tests/integration/persona-context-application.test.js +0 -508
  700. package/tests/integration/setup.js +0 -174
  701. package/tests/integration/test-persona-aware-compression.js +0 -93
  702. package/tests/integration/test-persona-system/.aiwf/metrics/metrics.json +0 -833
  703. package/tests/integration/test-persona-system/docs/README.md +0 -1
  704. package/tests/integration/test-persona-system/package.json +0 -1
  705. package/tests/integration/test-persona-system/src/auth.js +0 -1
  706. package/tests/integration/test-persona-system/src/index.js +0 -1
  707. package/tests/integration/test-persona-system/test/test.js +0 -1
  708. package/tests/language-utils.test.js +0 -287
  709. package/tests/s02-integration.test.js +0 -422
  710. package/tests/unit/ai-persona-manager.test.js +0 -514
  711. package/tests/unit/sprint-task.test.js +0 -172
@@ -1,667 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- * AI Persona Commands for Claude Code
5
- * Manages AI behavior personas for different development tasks
6
- */
7
-
8
- import { AIPersonaManager } from '../../../../lib/ai-persona-manager.js';
9
- import { getBackgroundMonitor } from '../../ko/utils/background-monitor.js';
10
- import path from 'path';
11
- import chalk from 'chalk';
12
-
13
- // Global persona manager instance
14
- let personaManager = null;
15
-
16
- /**
17
- * Get or create persona manager instance
18
- */
19
- async function getPersonaManager() {
20
- if (!personaManager) {
21
- personaManager = new AIPersonaManager({
22
- personaConfigPath: path.join(process.cwd(), '.aiwf', 'personas'),
23
- metricsPath: path.join(process.cwd(), '.aiwf', 'metrics'),
24
- metricsEnabled: true,
25
- autoDetectionEnabled: true
26
- });
27
-
28
- await personaManager.init();
29
- }
30
-
31
- return personaManager;
32
- }
33
-
34
- /**
35
- * Format persona status for display
36
- */
37
- function formatPersonaStatus(persona, metrics) {
38
- const lines = [];
39
-
40
- lines.push(chalk.cyan('🎭 AI Persona Status'));
41
- lines.push(chalk.gray('━'.repeat(50)));
42
- lines.push(`Current Persona: ${chalk.yellow(persona.name)}`);
43
- lines.push(`Description: ${persona.description}`);
44
-
45
- if (persona.behaviors?.length) {
46
- lines.push('\nKey Behaviors:');
47
- persona.behaviors.forEach(behavior => {
48
- lines.push(` • ${behavior}`);
49
- });
50
- }
51
-
52
- if (persona.recommendedTools?.length) {
53
- lines.push(`\nRecommended Tools: ${persona.recommendedTools.join(', ')}`);
54
- }
55
-
56
- if (metrics && metrics.duration !== undefined) {
57
- lines.push('\nCurrent Session:');
58
- lines.push(` Duration: ${Math.round(metrics.duration / 1000)}s`);
59
- lines.push(` Interactions: ${metrics.interactions}`);
60
- lines.push(` Token Usage: ${metrics.tokenUsage.current}`);
61
- }
62
-
63
- return lines.join('\n');
64
- }
65
-
66
- /**
67
- * Format persona report
68
- */
69
- function formatPersonaReport(report) {
70
- const lines = [];
71
-
72
- lines.push(chalk.cyan('📊 AI Persona Performance Report'));
73
- lines.push(chalk.gray('━'.repeat(50)));
74
- lines.push(`Generated: ${new Date(report.generatedAt).toLocaleString()}`);
75
- lines.push(`Time Range: ${report.timeRange}`);
76
-
77
- // Summary
78
- lines.push('\n' + chalk.yellow('Summary:'));
79
- lines.push(`Total Sessions: ${report.summary.totalSessions}`);
80
- lines.push(`Avg Completion Time: ${Math.round(report.summary.averageCompletionTime / 1000)}s`);
81
-
82
- // Persona Usage
83
- if (report.summary.personaUsage) {
84
- lines.push('\n' + chalk.yellow('Persona Usage:'));
85
- Object.entries(report.summary.personaUsage).forEach(([persona, stats]) => {
86
- lines.push(` ${persona}: ${stats.count} sessions (${stats.percentage.toFixed(1)}%)`);
87
- });
88
- }
89
-
90
- // Quality Trend
91
- if (report.summary.qualityTrend) {
92
- lines.push('\n' + chalk.yellow('Quality Trend:'));
93
- lines.push(` Trend: ${report.summary.qualityTrend.trend}`);
94
- if (report.summary.qualityTrend.averageScore) {
95
- lines.push(` Average Score: ${(report.summary.qualityTrend.averageScore * 100).toFixed(1)}%`);
96
- }
97
- }
98
-
99
- // Persona Analysis
100
- if (report.personaAnalysis) {
101
- lines.push('\n' + chalk.yellow('Persona Performance:'));
102
- Object.entries(report.personaAnalysis).forEach(([persona, analysis]) => {
103
- lines.push(`\n ${chalk.green(persona)}:`);
104
- lines.push(` Sessions: ${analysis.sessionCount}`);
105
- lines.push(` Completion Rate: ${(analysis.completionRate * 100).toFixed(1)}%`);
106
- lines.push(` Avg Quality: ${(analysis.averageQualityScore * 100).toFixed(1)}%`);
107
- lines.push(` Token Efficiency: ${(analysis.tokenEfficiency * 100).toFixed(1)}%`);
108
-
109
- if (analysis.bestUseCases?.length) {
110
- lines.push(` Best For: ${analysis.bestUseCases.join(', ')}`);
111
- }
112
- });
113
- }
114
-
115
- // Recommendations
116
- if (report.recommendations?.length) {
117
- lines.push('\n' + chalk.yellow('Recommendations:'));
118
- report.recommendations.forEach(rec => {
119
- const icon = rec.priority === 'high' ? '🔴' : '🟡';
120
- lines.push(` ${icon} ${rec.message}`);
121
- });
122
- }
123
-
124
- return lines.join('\n');
125
- }
126
-
127
- /**
128
- * Command handlers
129
- */
130
- export const commands = {
131
- /**
132
- * Switch to a specific persona
133
- */
134
- '/project:aiwf:ai_persona:switch': async (args) => {
135
- const personaName = args[0];
136
-
137
- if (!personaName) {
138
- return chalk.red('Error: Please specify a persona name (architect, security, frontend, backend, data_analyst)');
139
- }
140
-
141
- try {
142
- const manager = await getPersonaManager();
143
-
144
- if (!manager.isValidPersona(personaName)) {
145
- return chalk.red(`Error: Invalid persona '${personaName}'. Available personas: ${manager.getAvailablePersonas().join(', ')}`);
146
- }
147
-
148
- await manager.switchPersona(personaName, { manual: true });
149
-
150
- // Initialize background monitor (non-blocking)
151
- const monitor = getBackgroundMonitor();
152
- monitor.initialize().catch(() => {}); // Ignore errors
153
-
154
- return chalk.green(`✅ Switched to ${personaName} persona`);
155
- } catch (error) {
156
- return chalk.red(`Error: ${error.message}`);
157
- }
158
- },
159
-
160
- /**
161
- * Shortcuts for specific personas
162
- */
163
- '/project:aiwf:ai_persona:architect': async () => {
164
- return commands['/project:aiwf:ai_persona:switch'](['architect']);
165
- },
166
-
167
- '/project:aiwf:ai_persona:security': async () => {
168
- return commands['/project:aiwf:ai_persona:switch'](['security']);
169
- },
170
-
171
- '/project:aiwf:ai_persona:frontend': async () => {
172
- return commands['/project:aiwf:ai_persona:switch'](['frontend']);
173
- },
174
-
175
- '/project:aiwf:ai_persona:backend': async () => {
176
- return commands['/project:aiwf:ai_persona:switch'](['backend']);
177
- },
178
-
179
- '/project:aiwf:ai_persona:data_analyst': async () => {
180
- return commands['/project:aiwf:ai_persona:switch'](['data_analyst']);
181
- },
182
-
183
- // Shorter aliases for personas
184
- '/aiwf:persona:architect': async () => {
185
- return commands['/project:aiwf:ai_persona:switch'](['architect']);
186
- },
187
-
188
- '/aiwf:persona:security': async () => {
189
- return commands['/project:aiwf:ai_persona:switch'](['security']);
190
- },
191
-
192
- '/aiwf:persona:frontend': async () => {
193
- return commands['/project:aiwf:ai_persona:switch'](['frontend']);
194
- },
195
-
196
- '/aiwf:persona:backend': async () => {
197
- return commands['/project:aiwf:ai_persona:switch'](['backend']);
198
- },
199
-
200
- '/aiwf:persona:data_analyst': async () => {
201
- return commands['/project:aiwf:ai_persona:switch'](['data_analyst']);
202
- },
203
-
204
- /**
205
- * Enable/disable auto-detection
206
- */
207
- '/project:aiwf:ai_persona:auto': async (args) => {
208
- const enabled = args[0] !== 'false' && args[0] !== 'off';
209
-
210
- try {
211
- const manager = await getPersonaManager();
212
- manager.options.autoDetectionEnabled = enabled;
213
-
214
- return chalk.green(`✅ Auto-detection ${enabled ? 'enabled' : 'disabled'}`);
215
- } catch (error) {
216
- return chalk.red(`Error: ${error.message}`);
217
- }
218
- },
219
-
220
- /**
221
- * Show current persona status
222
- */
223
- '/project:aiwf:ai_persona:status': async () => {
224
- try {
225
- const manager = await getPersonaManager();
226
- const current = manager.getCurrentPersona();
227
-
228
- if (!current) {
229
- return chalk.yellow('No persona currently active');
230
- }
231
-
232
- const metrics = await manager.metricsCollector.getCurrentSessionMetrics();
233
-
234
- return formatPersonaStatus(current, metrics);
235
- } catch (error) {
236
- return chalk.red(`Error: ${error.message}`);
237
- }
238
- },
239
-
240
- /**
241
- * Generate persona performance report
242
- */
243
- '/project:aiwf:ai_persona:report': async (args) => {
244
- const timeRange = args[0] || 'all';
245
-
246
- try {
247
- const manager = await getPersonaManager();
248
- const report = await manager.generateReport({ timeRange });
249
-
250
- return formatPersonaReport(report);
251
- } catch (error) {
252
- return chalk.red(`Error: ${error.message}`);
253
- }
254
- },
255
-
256
- /**
257
- * List available personas
258
- */
259
- '/project:aiwf:ai_persona:list': async () => {
260
- try {
261
- const manager = await getPersonaManager();
262
- const personas = manager.getAvailablePersonas();
263
- const current = manager.getCurrentPersona();
264
-
265
- const lines = [];
266
- lines.push(chalk.cyan('🎭 Available AI Personas'));
267
- lines.push(chalk.gray('━'.repeat(50)));
268
-
269
- for (const personaName of personas) {
270
- const persona = manager.availablePersonas[personaName];
271
- const isCurrent = current?.name === personaName;
272
-
273
- lines.push(`\n${isCurrent ? '▶ ' : ' '}${chalk.yellow(personaName)}${isCurrent ? ' (current)' : ''}`);
274
- lines.push(` ${persona.description}`);
275
-
276
- if (persona.focusAreas?.length) {
277
- lines.push(` Focus: ${persona.focusAreas.slice(0, 3).join(', ')}`);
278
- }
279
- }
280
-
281
- lines.push('\n' + chalk.gray('Use /project:aiwf:ai_persona:switch <name> to change persona'));
282
-
283
- return lines.join('\n');
284
- } catch (error) {
285
- return chalk.red(`Error: ${error.message}`);
286
- }
287
- },
288
-
289
- /**
290
- * Get persona statistics
291
- */
292
- '/project:aiwf:ai_persona:stats': async (args) => {
293
- const personaName = args[0];
294
-
295
- try {
296
- const manager = await getPersonaManager();
297
-
298
- if (personaName && !manager.isValidPersona(personaName)) {
299
- return chalk.red(`Error: Invalid persona '${personaName}'`);
300
- }
301
-
302
- const targetPersona = personaName || manager.getCurrentPersona()?.name;
303
-
304
- if (!targetPersona) {
305
- return chalk.yellow('No persona specified or active');
306
- }
307
-
308
- const stats = await manager.getPersonaStats(targetPersona);
309
-
310
- if (stats.message) {
311
- return chalk.yellow(stats.message);
312
- }
313
-
314
- const lines = [];
315
- lines.push(chalk.cyan(`📊 ${targetPersona} Persona Statistics`));
316
- lines.push(chalk.gray('━'.repeat(50)));
317
- lines.push(`Total Sessions: ${stats.totalSessions}`);
318
- lines.push(`Completion Rate: ${(stats.completionRate * 100).toFixed(1)}%`);
319
- lines.push(`Average Duration: ${Math.round(stats.averageDuration / 1000)}s`);
320
- lines.push(`Average Tokens: ${Math.round(stats.averageTokens)}`);
321
- lines.push(`Error Rate: ${stats.errorRate.toFixed(2)} per session`);
322
- lines.push(`Average Quality: ${(stats.averageQualityScore * 100).toFixed(1)}%`);
323
-
324
- if (stats.taskDistribution && Object.keys(stats.taskDistribution).length > 0) {
325
- lines.push('\nTask Distribution:');
326
- Object.entries(stats.taskDistribution).forEach(([task, count]) => {
327
- lines.push(` ${task}: ${count}`);
328
- });
329
- }
330
-
331
- return lines.join('\n');
332
- } catch (error) {
333
- return chalk.red(`Error: ${error.message}`);
334
- }
335
- },
336
-
337
- /**
338
- * Reset persona system
339
- */
340
- '/project:aiwf:ai_persona:reset': async () => {
341
- try {
342
- const manager = await getPersonaManager();
343
- await manager.reset();
344
-
345
- return chalk.green('✅ Persona system reset to default');
346
- } catch (error) {
347
- return chalk.red(`Error: ${error.message}`);
348
- }
349
- },
350
-
351
- /**
352
- * Detect optimal persona for current task
353
- */
354
- '/project:aiwf:ai_persona:detect': async (args) => {
355
- const command = args.join(' ');
356
-
357
- if (!command) {
358
- return chalk.red('Error: Please provide a task description');
359
- }
360
-
361
- try {
362
- const manager = await getPersonaManager();
363
-
364
- const taskContext = {
365
- command,
366
- description: command
367
- };
368
-
369
- const optimal = await manager.detectOptimalPersona(taskContext);
370
-
371
- const lines = [];
372
- lines.push(chalk.cyan('🔍 Persona Detection Result'));
373
- lines.push(chalk.gray('━'.repeat(50)));
374
- lines.push(`Task: "${command}"`);
375
- lines.push(`Recommended Persona: ${chalk.yellow(optimal)}`);
376
-
377
- const persona = manager.availablePersonas[optimal];
378
- if (persona) {
379
- lines.push(`\nReason: ${persona.description}`);
380
- lines.push(`Focus Areas: ${persona.focusAreas.join(', ')}`);
381
- }
382
-
383
- lines.push('\n' + chalk.gray('Use /project:aiwf:ai_persona:switch ' + optimal + ' to activate'));
384
-
385
- return lines.join('\n');
386
- } catch (error) {
387
- return chalk.red(`Error: ${error.message}`);
388
- }
389
- },
390
-
391
- // Shorter aliases for common commands
392
- '/aiwf:persona:status': async () => {
393
- return commands['/project:aiwf:ai_persona:status']();
394
- },
395
-
396
- '/aiwf:persona:list': async () => {
397
- return commands['/project:aiwf:ai_persona:list']();
398
- },
399
-
400
- '/aiwf:persona:switch': async (args) => {
401
- return commands['/project:aiwf:ai_persona:switch'](args);
402
- }
403
- };
404
-
405
- /**
406
- * Persona Command Mappings
407
- * Maps persona names to their available command shortcuts
408
- */
409
- export const personaCommandMappings = {
410
- 'architect': [
411
- '/project:aiwf:ai_persona:architect',
412
- '/aiwf:persona:architect'
413
- ],
414
- 'security': [
415
- '/project:aiwf:ai_persona:security',
416
- '/aiwf:persona:security'
417
- ],
418
- 'frontend': [
419
- '/project:aiwf:ai_persona:frontend',
420
- '/aiwf:persona:frontend'
421
- ],
422
- 'backend': [
423
- '/project:aiwf:ai_persona:backend',
424
- '/aiwf:persona:backend'
425
- ],
426
- 'data_analyst': [
427
- '/project:aiwf:ai_persona:data_analyst',
428
- '/aiwf:persona:data_analyst'
429
- ]
430
- };
431
-
432
- /**
433
- * Detailed persona descriptions for AI assistance
434
- */
435
- export const personaDescriptions = {
436
- architect: {
437
- name: 'architect',
438
- description: 'System design and architecture expert focused on scalable, maintainable solutions',
439
- behaviors: [
440
- 'Analyzes overall system architecture and design patterns',
441
- 'Recommends scalable and maintainable solutions',
442
- 'Creates clear architectural diagrams and documentation',
443
- 'Considers non-functional requirements (performance, security, scalability)',
444
- 'Evaluates technology choices and trade-offs'
445
- ],
446
- focusAreas: ['system design', 'architecture patterns', 'scalability', 'maintainability'],
447
- recommendedTools: ['design tools', 'diagramming', 'documentation']
448
- },
449
-
450
- security: {
451
- name: 'security',
452
- description: 'Security specialist ensuring code safety and best practices',
453
- behaviors: [
454
- 'Identifies security vulnerabilities and risks',
455
- 'Implements security best practices',
456
- 'Reviews authentication and authorization logic',
457
- 'Ensures data protection and encryption',
458
- 'Validates input sanitization and output encoding'
459
- ],
460
- focusAreas: ['security audit', 'vulnerability assessment', 'encryption', 'authentication'],
461
- recommendedTools: ['security scanners', 'static analysis', 'penetration testing']
462
- },
463
-
464
- frontend: {
465
- name: 'frontend',
466
- description: 'Frontend development expert specializing in UI/UX and modern web technologies',
467
- behaviors: [
468
- 'Creates responsive and accessible user interfaces',
469
- 'Optimizes frontend performance and bundle sizes',
470
- 'Implements modern frontend frameworks and patterns',
471
- 'Ensures cross-browser compatibility',
472
- 'Focuses on user experience and interaction design'
473
- ],
474
- focusAreas: ['UI/UX', 'React/Vue/Angular', 'CSS/styling', 'performance optimization'],
475
- recommendedTools: ['component libraries', 'build tools', 'testing frameworks']
476
- },
477
-
478
- backend: {
479
- name: 'backend',
480
- description: 'Backend development specialist for APIs, databases, and server-side logic',
481
- behaviors: [
482
- 'Designs efficient database schemas and queries',
483
- 'Implements robust API endpoints and services',
484
- 'Optimizes server-side performance',
485
- 'Handles data processing and business logic',
486
- 'Ensures data integrity and consistency'
487
- ],
488
- focusAreas: ['API design', 'database optimization', 'microservices', 'server architecture'],
489
- recommendedTools: ['ORMs', 'API frameworks', 'database tools', 'monitoring']
490
- },
491
-
492
- data_analyst: {
493
- name: 'data_analyst',
494
- description: 'Data analysis expert for insights, visualization, and data-driven decisions',
495
- behaviors: [
496
- 'Analyzes data patterns and trends',
497
- 'Creates meaningful visualizations and reports',
498
- 'Implements data processing pipelines',
499
- 'Performs statistical analysis and modeling',
500
- 'Optimizes data queries and transformations'
501
- ],
502
- focusAreas: ['data analysis', 'visualization', 'statistics', 'reporting'],
503
- recommendedTools: ['pandas', 'visualization libraries', 'SQL', 'analytics tools']
504
- }
505
- };
506
-
507
- // Export for testing
508
- export { getPersonaManager };
509
-
510
- /**
511
- * Handle persona command from command line
512
- * Supports direct persona activation and management
513
- */
514
- async function handlePersonaCommand() {
515
- const command = process.argv[2];
516
- const args = process.argv.slice(3);
517
-
518
- // If no command provided, show help
519
- if (!command) {
520
- console.log(chalk.cyan('🎭 AIWF AI Persona Manager'));
521
- console.log(chalk.gray('━'.repeat(50)));
522
- console.log('\nUsage:');
523
- console.log(' ai-persona <persona> Switch to specific persona');
524
- console.log(' ai-persona status Show current persona status');
525
- console.log(' ai-persona list List available personas');
526
- console.log(' ai-persona default Restore default mode');
527
- console.log('\nAvailable personas:');
528
- console.log(' architect - System design and architecture expert');
529
- console.log(' security - Security specialist');
530
- console.log(' frontend - Frontend development expert');
531
- console.log(' backend - Backend development specialist');
532
- console.log(' data_analyst - Data analysis expert');
533
- return;
534
- }
535
-
536
- try {
537
- // Initialize persona manager
538
- const manager = await getPersonaManager();
539
-
540
- // Check if command is a persona name
541
- const validPersonas = ['architect', 'security', 'frontend', 'backend', 'data_analyst'];
542
-
543
- if (validPersonas.includes(command)) {
544
- // Save current persona state
545
- const personaState = {
546
- persona: command,
547
- timestamp: new Date().toISOString(),
548
- contextRules: []
549
- };
550
-
551
- // Load context rules for the persona
552
- try {
553
- const contextPath = path.join(process.cwd(), '.aiwf', 'personas', `${command}_context.json`);
554
- const { readFile } = await import('fs/promises');
555
- const contextData = await readFile(contextPath, 'utf8');
556
- const context = JSON.parse(contextData);
557
- personaState.contextRules = context.rules || [];
558
- } catch (error) {
559
- // Context file might not exist, which is okay
560
- }
561
-
562
- // Save persona state
563
- const statePath = path.join(process.cwd(), '.aiwf', 'current_persona.json');
564
- const { writeFile, mkdir } = await import('fs/promises');
565
- await mkdir(path.dirname(statePath), { recursive: true });
566
- await writeFile(statePath, JSON.stringify(personaState, null, 2));
567
-
568
- // Switch persona
569
- await manager.switchPersona(command, { manual: true });
570
-
571
- console.log(chalk.green(`✅ Activated ${command} persona`));
572
-
573
- // Show persona info
574
- const persona = personaDescriptions[command];
575
- if (persona) {
576
- console.log(chalk.gray('━'.repeat(50)));
577
- console.log(chalk.yellow(`Role: ${persona.description}`));
578
-
579
- if (persona.behaviors?.length) {
580
- console.log('\nKey behaviors:');
581
- persona.behaviors.forEach(behavior => {
582
- console.log(` • ${behavior}`);
583
- });
584
- }
585
-
586
- if (personaState.contextRules?.length) {
587
- console.log('\nContext rules applied:');
588
- personaState.contextRules.forEach(rule => {
589
- console.log(` • ${rule.description || rule.pattern || 'Custom rule'}`);
590
- });
591
- }
592
- }
593
-
594
- return;
595
- }
596
-
597
- // Handle other commands
598
- switch (command) {
599
- case 'status':
600
- const current = manager.getCurrentPersona();
601
- if (current) {
602
- const metrics = await manager.metricsCollector.getCurrentSessionMetrics();
603
- console.log(formatPersonaStatus(current, metrics));
604
- } else {
605
- console.log(chalk.yellow('No persona currently active'));
606
- }
607
- break;
608
-
609
- case 'list':
610
- const personas = manager.getAvailablePersonas();
611
- const currentPersona = manager.getCurrentPersona();
612
-
613
- console.log(chalk.cyan('🎭 Available AI Personas'));
614
- console.log(chalk.gray('━'.repeat(50)));
615
-
616
- for (const personaName of personas) {
617
- const persona = personaDescriptions[personaName];
618
- const isCurrent = currentPersona?.name === personaName;
619
-
620
- console.log(`\n${isCurrent ? '▶ ' : ' '}${chalk.yellow(personaName)}${isCurrent ? ' (current)' : ''}`);
621
- if (persona) {
622
- console.log(` ${persona.description}`);
623
- }
624
- }
625
- break;
626
-
627
- case 'default':
628
- case 'reset':
629
- // Remove persona state file to restore default mode
630
- try {
631
- const statePath = path.join(process.cwd(), '.aiwf', 'current_persona.json');
632
- const { unlink } = await import('fs/promises');
633
- await unlink(statePath);
634
- console.log(chalk.green('✅ Restored default mode'));
635
- } catch (error) {
636
- // File might not exist
637
- console.log(chalk.yellow('Already in default mode'));
638
- }
639
-
640
- // Reset persona manager
641
- await manager.reset();
642
- break;
643
-
644
- default:
645
- // Check if it's a command format
646
- if (command.startsWith('/')) {
647
- if (commands[command]) {
648
- const result = await commands[command](args);
649
- console.log(result);
650
- } else {
651
- console.error(chalk.red(`Unknown command: ${command}`));
652
- }
653
- } else {
654
- console.error(chalk.red(`Unknown command: ${command}`));
655
- console.log(chalk.gray('Use "ai-persona" without arguments to see help'));
656
- }
657
- }
658
- } catch (error) {
659
- console.error(chalk.red(`Error: ${error.message}`));
660
- process.exit(1);
661
- }
662
- }
663
-
664
- // If running directly, handle command line arguments
665
- if (import.meta.url === `file://${process.argv[1]}`) {
666
- handlePersonaCommand();
667
- }