aiwf 0.1.0 → 0.3.1

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 (163) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/CLAUDE.md +19 -0
  3. package/LICENSE +1 -1
  4. package/README.ko.md +90 -62
  5. package/README.md +109 -62
  6. package/claude-code/{simone/.simone → aiwf/en/.aiwf}/01_PROJECT_DOCS/ARCHITECTURE.md +1 -1
  7. package/claude-code/{simone/.simone → aiwf/en/.aiwf}/02_REQUIREMENTS/M01_Backend_Setup/M01_milestone_meta.md +5 -1
  8. package/claude-code/{simone/.simone → aiwf/en/.aiwf}/02_REQUIREMENTS/M01_Backend_Setup/PRD_AMEND_01_Auth_Flow_Update.md +5 -1
  9. package/claude-code/{simone/.simone/03_SPRINTS/CLAUDE.MD → aiwf/en/.aiwf/03_SPRINTS/CLAUDE.md} +28 -7
  10. package/claude-code/{simone/.simone → aiwf/en/.aiwf}/03_SPRINTS/S01_M01_Initial_API/S01_sprint_meta.md +8 -1
  11. package/claude-code/{simone/.simone → aiwf/en/.aiwf}/03_SPRINTS/S01_M01_Initial_API/T01_S01_Setup_Project_Structure.md +5 -1
  12. package/claude-code/aiwf/en/.aiwf/04_GENERAL_TASKS/CLAUDE.md +96 -0
  13. package/claude-code/{simone/.simone → aiwf/en/.aiwf}/04_GENERAL_TASKS/T002_API_Rate_Limiting.md +7 -2
  14. package/claude-code/{simone/.simone → aiwf/en/.aiwf}/04_GENERAL_TASKS/TX001_Refactor_Logging_Module.md +7 -2
  15. package/claude-code/{simone/.simone → aiwf/en/.aiwf}/05_ARCHITECTURAL_DECISIONS/ADR001_Chosen_Database_System.md +7 -1
  16. package/claude-code/{simone/.simone → aiwf/en/.aiwf}/05_ARCHITECTURAL_DECISIONS/ADR002_API_Authentication_Method.md +7 -1
  17. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-12-12-00-needs-focus.md +139 -0
  18. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-12-12-00-test-alignment.md +155 -0
  19. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-13-00-50-solid-progress.md +122 -0
  20. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-14-08-30-infrastructure-challenges.md +141 -0
  21. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-16-21-48-critical-foundation-issues.md +177 -0
  22. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-17-15-08-solid-progress.md +149 -0
  23. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/index.json +5 -0
  24. package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/sync-index.js +78 -0
  25. package/claude-code/aiwf/en/.aiwf/98_PROMPTS/github_integration.md +130 -0
  26. package/claude-code/aiwf/en/.aiwf/98_PROMPTS/useful-prompts.md +31 -0
  27. package/claude-code/aiwf/en/.aiwf/98_PROMPTS/vibe-front-prompts.md +89 -0
  28. package/claude-code/{simone/.simone → aiwf/en/.aiwf}/99_TEMPLATES/task_template.md +1 -0
  29. package/claude-code/{simone/.simone/CLAUDE.MD → aiwf/en/.aiwf/CLAUDE.md} +13 -4
  30. package/claude-code/{simone/.simone → aiwf/en/.aiwf}/README.md +6 -6
  31. package/claude-code/aiwf/en/.claude/CLAUDE_BE.md +276 -0
  32. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_changelog.md +82 -0
  33. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_code_review.md +88 -0
  34. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_commit.md +160 -0
  35. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_general_task.md +147 -0
  36. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_milestone_plan.md +194 -0
  37. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_prd.md +272 -0
  38. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_sprint_tasks.md +189 -0
  39. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_sprints_from_milestone.md +121 -0
  40. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_discuss_review.md +29 -0
  41. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_do_task.md +109 -0
  42. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_docs.md +225 -0
  43. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_infinite.md +202 -0
  44. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_initialize.md +134 -0
  45. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_issue_create.md +65 -0
  46. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_language_manager.md +287 -0
  47. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_language_status.md +246 -0
  48. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_mermaid.md +272 -0
  49. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_pr_create.md +76 -0
  50. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_prime.md +9 -0
  51. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_project_review.md +261 -0
  52. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_switch_language.md +160 -0
  53. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_test.md +125 -0
  54. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_testing_review.md +198 -0
  55. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_tm-run-all-subtask.md +206 -0
  56. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_ultrathink_code_advanced.md +460 -0
  57. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_ultrathink_code_basic.md +165 -0
  58. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_ultrathink_general.md +362 -0
  59. package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_yolo.md +300 -0
  60. package/claude-code/aiwf/en/.claude/mcp.json +31 -0
  61. package/claude-code/aiwf/en/.claude/settings.json +102 -0
  62. package/claude-code/aiwf/ko/.aiwf/00_PROJECT_MANIFEST.md +49 -0
  63. package/claude-code/aiwf/ko/.aiwf/01_PROJECT_DOCS/ARCHITECTURE.md +55 -0
  64. package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/CLAUDE.md +78 -0
  65. package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/M01_milestone_meta.md +42 -0
  66. package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/PRD_AMEND_01_Auth_Flow_Update.md +73 -0
  67. package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/PRD_Backend_Setup.md +98 -0
  68. package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/SPECS_API_V1.md +232 -0
  69. package/claude-code/aiwf/ko/.aiwf/03_SPRINTS/CLAUDE.md +83 -0
  70. package/claude-code/aiwf/ko/.aiwf/03_SPRINTS/S01_M01_Initial_API/S01_sprint_meta.md +49 -0
  71. package/claude-code/aiwf/ko/.aiwf/03_SPRINTS/S01_M01_Initial_API/T01_S01_Setup_Project_Structure.md +60 -0
  72. package/claude-code/aiwf/ko/.aiwf/04_GENERAL_TASKS/CLAUDE.md +96 -0
  73. package/claude-code/aiwf/ko/.aiwf/04_GENERAL_TASKS/T002_API_Rate_Limiting.md +54 -0
  74. package/claude-code/aiwf/ko/.aiwf/04_GENERAL_TASKS/TX001_Refactor_Logging_Module.md +58 -0
  75. package/claude-code/aiwf/ko/.aiwf/05_ARCHITECTURAL_DECISIONS/ADR001_Chosen_Database_System.md +119 -0
  76. package/claude-code/aiwf/ko/.aiwf/05_ARCHITECTURAL_DECISIONS/ADR002_API_Authentication_Method.md +124 -0
  77. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-12-12-00-needs-focus.md +139 -0
  78. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-12-12-00-test-alignment.md +155 -0
  79. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-13-00-50-solid-progress.md +122 -0
  80. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-14-08-30-infrastructure-challenges.md +141 -0
  81. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-16-21-48-critical-foundation-issues.md +177 -0
  82. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-17-15-08-solid-progress.md +149 -0
  83. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/index.json +5 -0
  84. package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/sync-index.js +78 -0
  85. package/claude-code/aiwf/ko/.aiwf/98_PROMPTS/github_integration.md +130 -0
  86. package/claude-code/aiwf/ko/.aiwf/98_PROMPTS/useful-prompts.md +31 -0
  87. package/claude-code/aiwf/ko/.aiwf/98_PROMPTS/vibe-front-prompts.md +89 -0
  88. package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/adr_template.md +49 -0
  89. package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/milestone_meta_template.md +25 -0
  90. package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/project_manifest_template.md +39 -0
  91. package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/sprint_meta_template.md +23 -0
  92. package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/task_template.md +36 -0
  93. package/claude-code/aiwf/ko/.aiwf/CLAUDE.md +76 -0
  94. package/claude-code/aiwf/ko/.aiwf/README.md +97 -0
  95. package/claude-code/aiwf/ko/.claude/CLAUDE_BE.md +276 -0
  96. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_changelog.md +82 -0
  97. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_code_review.md +88 -0
  98. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_commit.md +160 -0
  99. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_general_task.md +147 -0
  100. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_milestone_plan.md +194 -0
  101. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_prd.md +280 -0
  102. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_sprint_tasks.md +189 -0
  103. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_sprints_from_milestone.md +121 -0
  104. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_discuss_review.md +29 -0
  105. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_do_task.md +109 -0
  106. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_docs.md +225 -0
  107. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_infinite.md +202 -0
  108. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_initialize.md +134 -0
  109. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_issue_create.md +65 -0
  110. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_language_manager.md +287 -0
  111. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_language_status.md +246 -0
  112. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_mermaid.md +272 -0
  113. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_pr_create.md +76 -0
  114. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_prime.md +9 -0
  115. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_project_review.md +261 -0
  116. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_switch_language.md +160 -0
  117. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_test.md +124 -0
  118. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_testing_review.md +198 -0
  119. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_tm-run-all-subtask.md +210 -0
  120. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_ultrathink_code_advanced.md +460 -0
  121. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_ultrathink_code_basic.md +165 -0
  122. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_ultrathink_general.md +305 -0
  123. package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_yolo.md +300 -0
  124. package/claude-code/aiwf/ko/.claude/mcp.json +31 -0
  125. package/claude-code/aiwf/ko/.claude/settings.json +102 -0
  126. package/{AI-WORKFLOW.md → docs/AI-WORKFLOW.ko.md} +38 -24
  127. package/docs/AI-WORKFLOW.md +299 -0
  128. package/docs/COMMANDS_GUIDE.ko.md +727 -0
  129. package/docs/COMMANDS_GUIDE.md +726 -0
  130. package/docs/CONTRIBUTING.md +406 -0
  131. package/docs/DEVELOPMENT_GUIDE.md +727 -0
  132. package/docs/Enhanced_Installation_Flow_Design.md +498 -0
  133. package/docs/PRD.ko.md +148 -0
  134. package/docs/PRD.md +150 -0
  135. package/docs/moonklabs-metadata-system-prd.md +127 -0
  136. package/index.js +1493 -122
  137. package/jest.config.js +4 -0
  138. package/language-cli.js +279 -0
  139. package/language-utils.js +330 -0
  140. package/package.json +23 -10
  141. package/scripts/validate-commands.cjs +338 -0
  142. package/scripts/validate-commands.js +254 -0
  143. package/tests/basic.test.js +62 -0
  144. package/tests/commands.test.js +127 -0
  145. package/tests/installer.test.js +129 -0
  146. package/tests/language-utils.test.js +271 -0
  147. package/COMMANDS_GUIDE.md +0 -462
  148. package/PRD.ko.md +0 -96
  149. package/PRD.md +0 -98
  150. package/claude-code/simone/.simone/04_GENERAL_TASKS/CLAUDE.MD +0 -51
  151. package/claude-code/simone/CHANGELOG.md +0 -71
  152. package/claude-code/simone/LICENSE +0 -21
  153. package/claude-code/simone/README.md +0 -219
  154. package/claude-code/simone/SYNC_GUIDE.md +0 -172
  155. package/claude-code/simone/sync-simone.sh +0 -138
  156. /package/claude-code/{simone/.simone → aiwf/en/.aiwf}/00_PROJECT_MANIFEST.md +0 -0
  157. /package/claude-code/{simone/.simone → aiwf/en/.aiwf}/02_REQUIREMENTS/CLAUDE.md +0 -0
  158. /package/claude-code/{simone/.simone → aiwf/en/.aiwf}/02_REQUIREMENTS/M01_Backend_Setup/PRD_Backend_Setup.md +0 -0
  159. /package/claude-code/{simone/.simone → aiwf/en/.aiwf}/02_REQUIREMENTS/M01_Backend_Setup/SPECS_API_V1.md +0 -0
  160. /package/claude-code/{simone/.simone → aiwf/en/.aiwf}/99_TEMPLATES/adr_template.md +0 -0
  161. /package/claude-code/{simone/.simone → aiwf/en/.aiwf}/99_TEMPLATES/milestone_meta_template.md +0 -0
  162. /package/claude-code/{simone/.simone → aiwf/en/.aiwf}/99_TEMPLATES/project_manifest_template.md +0 -0
  163. /package/claude-code/{simone/.simone → aiwf/en/.aiwf}/99_TEMPLATES/sprint_meta_template.md +0 -0
package/docs/PRD.md ADDED
@@ -0,0 +1,150 @@
1
+ [Read in Korean (한국어로 보기)](PRD.ko.md)
2
+
3
+ # AIWF - AI Workflow Framework
4
+
5
+ _Version: 0.3.0_
6
+
7
+ ## Overview
8
+
9
+ A comprehensive, `npx`-executable command-line tool to install the AIWF (AI Workflow Framework) into any project. It provides a structured directory layout and command-line tools for streamlined AI-assisted project management, with full support for multiple languages (English and Korean).
10
+
11
+ ## Core Functionality
12
+
13
+ ### Installation Command
14
+
15
+ The tool is executed via `npx`:
16
+
17
+ ```bash
18
+ npx aiwf # Interactive language selection
19
+ npx aiwf --force # Skip prompts (defaults to Korean)
20
+ ```
21
+
22
+ ### Key Features
23
+
24
+ 1. **Multi-language Support**:
25
+ - Interactive language selection (English/Korean)
26
+ - Language-specific command files and documentation
27
+ - Localized user interface and messages
28
+
29
+ 2. **Creates Directory Structure**:
30
+ - Initializes the `.aiwf/` directory with standardized subdirectories for documents, requirements, sprints, and more
31
+ - Sets up the `.claude/commands/aiwf/` directory for custom Claude commands
32
+ - Configures IDE-specific rules for Cursor and Windsurf
33
+
34
+ 3. **Fetches from GitHub**:
35
+ - Downloads the latest framework files from the `aiwf/aiwf` repository on GitHub
36
+ - Sources language-specific files from `claude-code/aiwf/ko/` or `claude-code/aiwf/en/`
37
+ - Installs commands, documentation templates, and the project manifest
38
+
39
+ 4. **Handles Existing Installations**:
40
+ - Detects if AIWF framework is already present
41
+ - Prompts the user to **Update**, **Skip**, or **Cancel**
42
+ - The update process preserves user-created files (tasks, sprints) while updating command scripts and `CLAUDE.md` documents
43
+ - Automatically backs up overwritten files with timestamped `.bak` extension
44
+
45
+ 5. **IDE Integration**:
46
+ - Automatically converts and installs rules for Cursor IDE (`.mdc` format)
47
+ - Supports Windsurf IDE with plain markdown rules
48
+ - Seamless integration with Claude Code
49
+
50
+ ## Technical Approach
51
+
52
+ - **Node.js Script**: A single executable script built with Node.js.
53
+ - **Dependencies**: Uses external libraries to enhance the command-line interface:
54
+ - `commander`: For command-line argument parsing.
55
+ - `ora`: To display loading spinners.
56
+ - `prompts`: For interactive user prompts.
57
+ - `chalk`: To add color to console output.
58
+ - **GitHub Fetching**: Downloads files directly from the `raw.githubusercontent.com` source, using the GitHub API to list directory contents.
59
+
60
+ ## Installation Flow
61
+
62
+ 1. A welcome message is displayed
63
+ 2. Language selection prompt (English/Korean) unless `--force` flag is used
64
+ 3. The script checks for an existing installation
65
+ 4. If one exists, it prompts the user to choose an action (Update, Skip, Cancel)
66
+ 5. If proceeding, a spinner indicates that files are being fetched from GitHub
67
+ 6. The required directory structure is created based on selected language
68
+ 7. Framework files (manifest, templates, docs, commands) are downloaded from language-specific directories
69
+ 8. IDE rules are processed and installed (Cursor/Windsurf)
70
+ 9. A success message is shown with next steps for getting started
71
+ 10. If any step fails, an error message is displayed and existing files are restored from backups if available
72
+
73
+ ## File Structure Created
74
+
75
+ The installer creates the following structure in your project
76
+
77
+ ```
78
+ your_project/
79
+ ├── .aiwf/ # AIWF project management structure
80
+ │ ├── 00_PROJECT_MANIFEST.md # Central project tracking
81
+ │ ├── 01_PROJECT_DOCS/ # Project documentation
82
+ │ │ └── ARCHITECTURE.md # System architecture docs
83
+ │ ├── 02_REQUIREMENTS/ # Milestone-based requirements
84
+ │ │ └── M01_*/ # Milestone folders
85
+ │ ├── 03_SPRINTS/ # Sprint execution folders
86
+ │ │ └── S01_*/ # Sprint folders with tasks
87
+ │ ├── 04_GENERAL_TASKS/ # Non-sprint tasks
88
+ │ ├── 98_PROMPTS/ # Useful prompts
89
+ │ └── 99_TEMPLATES/ # Document templates
90
+ ├── .claude/commands/aiwf/ # Claude Code custom commands
91
+ │ ├── initialize.md # Project initialization
92
+ │ ├── prime_context.md # Context loading
93
+ │ ├── plan_milestone.md # Milestone planning
94
+ │ ├── create_sprints_from_milestone.md # Sprint creation
95
+ │ ├── do_task.md # Task execution
96
+ │ ├── commit.md # Git commit workflow
97
+ │ ├── yolo.md # Autonomous execution
98
+ │ └── ... (20+ more commands)
99
+ ├── .cursor/rules/ # Cursor IDE integration (if detected)
100
+ │ ├── code-style-guide.mdc
101
+ │ ├── coding-principles.mdc
102
+ │ └── ... (converted rules)
103
+ └── .windsurf/rules/ # Windsurf IDE integration (if detected)
104
+ ├── code-style-guide.md
105
+ ├── coding-principles.md
106
+ └── ... (plain markdown rules)
107
+ ```
108
+
109
+ ## Features in Detail
110
+
111
+ ### Multi-language Support
112
+ - **Language Selection**: Interactive prompt during installation
113
+ - **Supported Languages**: English and Korean
114
+ - **Language-specific Files**: Commands and documentation are installed based on selected language
115
+ - **Fallback**: Defaults to Korean when using `--force` flag
116
+
117
+ ### Command System
118
+ The framework includes 25+ specialized commands for AI-assisted development:
119
+ - **Setup**: `initialize`, `prime`, `prime_context`
120
+ - **Planning**: `plan_milestone`, `create_sprints_from_milestone`, `create_sprint_tasks`
121
+ - **Development**: `do_task`, `commit`, `test`, `code_review`
122
+ - **Automation**: `yolo` (autonomous task execution)
123
+ - **GitHub Integration**: `issue_create`, `pr_create`
124
+ - **Analysis**: `ultrathink_*`, `mermaid`, `project_review`
125
+
126
+ ### IDE Integration
127
+ - **Cursor IDE**: Converts rules to `.mdc` format with frontmatter
128
+ - **Windsurf IDE**: Uses plain markdown format
129
+ - **Claude Code**: Native integration with custom commands
130
+
131
+ ## Current Status (v0.3.0)
132
+
133
+ ### Completed Features
134
+ - ✅ NPM package deployment (`npx aiwf`)
135
+ - ✅ Multi-language support (Korean/English)
136
+ - ✅ IDE integration (Cursor, Windsurf)
137
+ - ✅ 25+ Claude Code commands
138
+ - ✅ Backup/restore mechanism
139
+ - ✅ GitHub API integration
140
+
141
+ ### Known Issues
142
+ - `update_docs` command file missing (only `aiwf_docs.md` exists)
143
+ - GitHub repository URL references are now unified to `aiwf/aiwf`
144
+
145
+ ### Roadmap
146
+ - [ ] Offline installation option
147
+ - [ ] Additional language support
148
+ - [ ] VS Code extension
149
+ - [ ] Enhanced project templates
150
+ - [ ] Community marketplace for custom commands
@@ -0,0 +1,127 @@
1
+ # AIWF 메타데이터 관리 시스템 PRD
2
+
3
+ _(GitHub Issue 사용 옵션형 — 미사용 시에도 동작하도록 설계)_
4
+
5
+ ## 목차
6
+
7
+ 1. 제품 개요
8
+ 2. 참고 서비스 및 도입 근거
9
+ 3. 핵심 기능 및 상세 사양
10
+ 4. 추가 제안 기능
11
+ 5. 타깃 유저 페르소나 & 사용 시나리오
12
+ 6. 기술 스택 제안
13
+ 7. 부록 – 저장·동기화 전략(옵션별)
14
+
15
+ ---
16
+
17
+ ## 1. 제품 개요
18
+
19
+ > **문제**
20
+ > AIWF 프로젝트는 마일스톤·스프린트·태스크 정보를 Markdown 파일에 분산 저장한다. 여러 사람이 동시 작업할 때
21
+ > • 어떤 ID가 이미 존재하는지
22
+ > • 누가 어떤 태스크를 맡았는지
23
+ > • 상태가 최신인지
24
+ > 를 파악하기 위해 매번 디렉터리를 전수 검색해야 한다.
25
+
26
+ > **해결**
27
+ > `index.json` 단일 진실 소스(SSOT)를 자동 생성·검증하고, **Git 브랜치 + 잠금 필드**로 동시 편집 충돌을 차단한다.
28
+ > GitHub Issue 연동은 **옵션**으로 제공하여, 오프라인·사내 Git 서버에서도 동일한 워크플로를 유지한다.
29
+
30
+ ---
31
+
32
+ ## 2. 참고 서비스 및 도입 근거
33
+
34
+ | 레퍼런스 서비스 | 핵심 기능 | 도입 근거 |
35
+ | ---------------------- | -------------------------------- | -------------------------------------------------- |
36
+ | **GitHub Projects V2** | 칸반·타임라인 · Issue/PR 연동 | GitHub 저장소 기반 협업일 때 시각화·알림이 우수 |
37
+ | **Atlassian Jira** | 워크플로/상태 전이 · 강력한 필터 | 대규모 팀이 복잡한 워크플로를 모델링하는 사례 참고 |
38
+ | **Notion Database** | 자유로운 속성 추가 · 뷰 전환 | Markdown 유사 환경 + 메타데이터 확장성 참고 |
39
+ | **Linear** | 빠른 키보드 UX · 흐름 최소화 | 개발자 생산성을 높이는 경량 UI 아이디어 차용 |
40
+
41
+ ---
42
+
43
+ ## 3. 핵심 기능 및 상세 사양
44
+
45
+ | 분류 | 기능 | 사양 |
46
+ | ------------------- | --------------------------- | ---------------------------------------------------------------------------------------- |
47
+ | 메타데이터 | **index.json 생성** | `npm run aiwf:sync` → Markdown front-matter 파싱 후 마일스톤·스프린트·태스크 맵 생성 |
48
+ | 검증 | **validate-index** | 중복 ID, 잠금 충돌, 규칙 위반 CI 차단<br/>`npm run validate-index` & GitHub Actions |
49
+ | 동시 작업 | **lockedBy 필드** | `moon lock TS01` → `lockedBy`·`lockTime` 기록, 병행 작업 충돌 시 git merge conflict 유도 |
50
+ | Git 통합 | **브랜치 네이밍 규칙** | `feat/MS01-SP02-implement-login-api` 식으로 범위 명시 |
51
+ | CI/CD | **validate-index.yml** | PR 시 `aiwf:sync` → `validate-index` 자동 실행 |
52
+ | CLI | **moon lock/unlock** (단축) | commander 기반 CLI; 잠금/해제 & 상태 변경 |
53
+ | 옵션형 GitHub Issue | **Issue ↔ index 싱크** | (선택) `moon sync issues` 커맨드: Issue Label ↔ ID 매핑 후 index 갱신 |
54
+
55
+ ### 데이터 스키마 요약
56
+
57
+ ```jsonc
58
+ {
59
+ "tasks": {
60
+ "TS01": {
61
+ "type": "task", // task|sprint|milestone
62
+ "status": "in-progress",
63
+ "sprint": "SP01",
64
+ "milestone": "MS01",
65
+ "lockedBy": "drumcap", // null ⇒ free
66
+ "lockTime": "2025-06-29T08:15:03Z"
67
+ }
68
+ }
69
+ }
70
+ ```
71
+
72
+ ---
73
+
74
+ ## 4. 추가 제안 기능
75
+
76
+ | 기능 | 설명 | 기대 효과 |
77
+ | ------------------- | -------------------------------------------- | --------------------------------------- |
78
+ | VSCode 확장 | `index.json` 시각화 Tree View + 잠금 UI | 실시간 상태 확인 & 클릭 한 번 잠금/해제 |
79
+ | 간트 차트 HTML | `moon gantt` 명령으로 HTML 산출 | 프로젝트 진행률 리포트 공유 |
80
+ | Git pre-commit hook | 자동 `sync` & `validate` → 실패 시 커밋 차단 | 규칙 위반 사전 방지 |
81
+ | Slack/Bot 알림 | 태스크 락/언락, 상태 변경 시 알림 | 투명한 협업, 병렬 작업 충돌 최소화 |
82
+
83
+ ---
84
+
85
+ ## 5. 타깃 유저 페르소나 & 사용 시나리오
86
+
87
+ | 페르소나 | 목표 | Pain Point |
88
+ | ----------------- | ----------------------------- | ------------------------------------- |
89
+ | **Backend Dev A** | API 기능 구현 완료 후 빠른 PR | 누가 같은 태스크 작업 중인지 불명확 |
90
+ | **PM B** | 스프린트 진척률 리포트 | 여러 Markdown 파일을 열어 진척률 합산 |
91
+ | **DevOps C** | CI 실패 최소화 | 메타데이터 오류로 PR 병합 지연 |
92
+
93
+ ### 핵심 시나리오 ① — 개발자 작업 예약
94
+
95
+ 1. `moon lock TS14`로 태스크 잠금
96
+ 2. 기능 개발 후 `moon unlock TS14 --status=done`
97
+ 3. PR → CI 통과 → 병합
98
+
99
+ ### 핵심 시나리오 ② — PM 진척률 확인
100
+
101
+ 1. `moon gantt --export`
102
+ 2. HTML 레포트 Slack 공유 → 팀 회의에서 진행 상황 검토
103
+
104
+ ---
105
+
106
+ ## 6. 기술 스택 제안
107
+
108
+ | 범주 | 선택 | 비고 |
109
+ | ------ | ------------------------------------------------------------ | ------------------------------ |
110
+ | 런타임 | **Node.js ≥18** | ES Module, async fs |
111
+ | 언어 | **TypeScript** (추가 권장) | 타입 안전, CLI/라이브러리 공유 |
112
+ | 패키지 | `commander`, `ora`, **`gray-matter`**, **`fast-glob`** | front-matter 파싱 & 파일 찾기 |
113
+ | CI | **GitHub Actions** | PR 검증 · 배포 파이프라인 |
114
+ | 저장 | **Markdown + index.json** (기본)<br/>**GitHub Issue** (옵션) | 오프라인 OK / 클라우드 확장 |
115
+ | 배포 | npm package (`aiwf-cli`) | 사내 NPM 레지스트리 배포 가능 |
116
+
117
+ ---
118
+
119
+ ## 7. 부록 – 저장·동기화 전략
120
+
121
+ | 시나리오 | 기본 동작 | GitHub Issue 미사용 시 |
122
+ | ------------------- | ------------------------------------------- | -------------------------- |
123
+ | **로컬 오프라인** | Markdown edit → `sync-index` → `index.json` | 동일 – 모든 기능 100% 동작 |
124
+ | **GitHub PR** | CI `validate-index` → PR 머지 | 동일 – Issue API 호출 생략 |
125
+ | **Issue 연동 필요** | `moon sync issues` → Label ↔ ID 매핑 | (사용 안 함) 옵션 스킵 |
126
+
127
+ > ⚠️ **GitHub Issue 연동은 전 과정에서 선택적**이며, 미사용 시에도 동시 편집 차단·진척률 통계 등 핵심 기능은 그대로 제공됩니다.