@sk8metal/michi-cli 0.0.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 (99) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +465 -0
  3. package/dist/scripts/config/config-schema.d.ts +707 -0
  4. package/dist/scripts/config/config-schema.d.ts.map +1 -0
  5. package/dist/scripts/config/config-schema.js +100 -0
  6. package/dist/scripts/config/config-schema.js.map +1 -0
  7. package/dist/scripts/config-interactive.d.ts +10 -0
  8. package/dist/scripts/config-interactive.d.ts.map +1 -0
  9. package/dist/scripts/config-interactive.js +357 -0
  10. package/dist/scripts/config-interactive.js.map +1 -0
  11. package/dist/scripts/confluence-sync.d.ts +54 -0
  12. package/dist/scripts/confluence-sync.d.ts.map +1 -0
  13. package/dist/scripts/confluence-sync.js +407 -0
  14. package/dist/scripts/confluence-sync.js.map +1 -0
  15. package/dist/scripts/create-project.d.ts +12 -0
  16. package/dist/scripts/create-project.d.ts.map +1 -0
  17. package/dist/scripts/create-project.js +244 -0
  18. package/dist/scripts/create-project.js.map +1 -0
  19. package/dist/scripts/jira-sync.d.ts +39 -0
  20. package/dist/scripts/jira-sync.d.ts.map +1 -0
  21. package/dist/scripts/jira-sync.js +549 -0
  22. package/dist/scripts/jira-sync.js.map +1 -0
  23. package/dist/scripts/list-projects.d.ts +7 -0
  24. package/dist/scripts/list-projects.d.ts.map +1 -0
  25. package/dist/scripts/list-projects.js +61 -0
  26. package/dist/scripts/list-projects.js.map +1 -0
  27. package/dist/scripts/markdown-to-confluence.d.ts +19 -0
  28. package/dist/scripts/markdown-to-confluence.d.ts.map +1 -0
  29. package/dist/scripts/markdown-to-confluence.js +121 -0
  30. package/dist/scripts/markdown-to-confluence.js.map +1 -0
  31. package/dist/scripts/multi-project-estimate.d.ts +27 -0
  32. package/dist/scripts/multi-project-estimate.d.ts.map +1 -0
  33. package/dist/scripts/multi-project-estimate.js +202 -0
  34. package/dist/scripts/multi-project-estimate.js.map +1 -0
  35. package/dist/scripts/phase-runner.d.ts +19 -0
  36. package/dist/scripts/phase-runner.d.ts.map +1 -0
  37. package/dist/scripts/phase-runner.js +260 -0
  38. package/dist/scripts/phase-runner.js.map +1 -0
  39. package/dist/scripts/pr-automation.d.ts +12 -0
  40. package/dist/scripts/pr-automation.d.ts.map +1 -0
  41. package/dist/scripts/pr-automation.js +45 -0
  42. package/dist/scripts/pr-automation.js.map +1 -0
  43. package/dist/scripts/pre-flight-check.d.ts +15 -0
  44. package/dist/scripts/pre-flight-check.d.ts.map +1 -0
  45. package/dist/scripts/pre-flight-check.js +244 -0
  46. package/dist/scripts/pre-flight-check.js.map +1 -0
  47. package/dist/scripts/resource-dashboard.d.ts +7 -0
  48. package/dist/scripts/resource-dashboard.d.ts.map +1 -0
  49. package/dist/scripts/resource-dashboard.js +100 -0
  50. package/dist/scripts/resource-dashboard.js.map +1 -0
  51. package/dist/scripts/setup-existing-project.d.ts +13 -0
  52. package/dist/scripts/setup-existing-project.d.ts.map +1 -0
  53. package/dist/scripts/setup-existing-project.js +334 -0
  54. package/dist/scripts/setup-existing-project.js.map +1 -0
  55. package/dist/scripts/utils/config-loader.d.ts +20 -0
  56. package/dist/scripts/utils/config-loader.d.ts.map +1 -0
  57. package/dist/scripts/utils/config-loader.js +291 -0
  58. package/dist/scripts/utils/config-loader.js.map +1 -0
  59. package/dist/scripts/utils/config-validator.d.ts +34 -0
  60. package/dist/scripts/utils/config-validator.d.ts.map +1 -0
  61. package/dist/scripts/utils/config-validator.js +286 -0
  62. package/dist/scripts/utils/config-validator.js.map +1 -0
  63. package/dist/scripts/utils/confluence-hierarchy.d.ts +47 -0
  64. package/dist/scripts/utils/confluence-hierarchy.d.ts.map +1 -0
  65. package/dist/scripts/utils/confluence-hierarchy.js +516 -0
  66. package/dist/scripts/utils/confluence-hierarchy.js.map +1 -0
  67. package/dist/scripts/utils/feature-name-validator.d.ts +25 -0
  68. package/dist/scripts/utils/feature-name-validator.d.ts.map +1 -0
  69. package/dist/scripts/utils/feature-name-validator.js +113 -0
  70. package/dist/scripts/utils/feature-name-validator.js.map +1 -0
  71. package/dist/scripts/utils/project-meta.d.ts +23 -0
  72. package/dist/scripts/utils/project-meta.d.ts.map +1 -0
  73. package/dist/scripts/utils/project-meta.js +50 -0
  74. package/dist/scripts/utils/project-meta.js.map +1 -0
  75. package/dist/scripts/validate-phase.d.ts +17 -0
  76. package/dist/scripts/validate-phase.d.ts.map +1 -0
  77. package/dist/scripts/validate-phase.js +234 -0
  78. package/dist/scripts/validate-phase.js.map +1 -0
  79. package/dist/scripts/workflow-orchestrator.d.ts +35 -0
  80. package/dist/scripts/workflow-orchestrator.d.ts.map +1 -0
  81. package/dist/scripts/workflow-orchestrator.js +130 -0
  82. package/dist/scripts/workflow-orchestrator.js.map +1 -0
  83. package/dist/src/cli.d.ts +11 -0
  84. package/dist/src/cli.d.ts.map +1 -0
  85. package/dist/src/cli.js +229 -0
  86. package/dist/src/cli.js.map +1 -0
  87. package/docs/config-reference.md +666 -0
  88. package/docs/customization-guide.md +432 -0
  89. package/docs/multi-project.md +233 -0
  90. package/docs/new-project-setup.md +576 -0
  91. package/docs/phase-automation.md +361 -0
  92. package/docs/quick-reference.md +291 -0
  93. package/docs/setup.md +404 -0
  94. package/docs/tasks-template.md +550 -0
  95. package/docs/testing.md +202 -0
  96. package/docs/workflow.md +342 -0
  97. package/env.example +44 -0
  98. package/mcp.json.example +14 -0
  99. package/package.json +97 -0
package/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 sk8metalme
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
package/README.md ADDED
@@ -0,0 +1,465 @@
1
+ # Michi (道)
2
+ **M**anaged **I**ntelligent **C**omprehensive **H**ub for **I**ntegration
3
+
4
+ AI駆動開発ワークフロー自動化プラットフォーム
5
+
6
+ ## 概要
7
+
8
+ Michiは、企業の開発フロー全体(要件定義→設計→タスク分割→実装→テスト→リリース)をAIで自動化するプラットフォームです。
9
+
10
+ **Powered by [cc-sdd](https://github.com/gotalab/cc-sdd)** - AIコーディングエージェントを仕様駆動開発(Spec-Driven Development)に変換するワークフローフレームワーク
11
+
12
+ ### 主な機能
13
+
14
+ - ✅ **AI駆動開発**: cc-sdd + Cursor/VS Code統合
15
+ - ✅ **GitHub SSoT**: GitHubを真実の源として管理
16
+ - ✅ **Confluence/JIRA連携**: 企画・部長の承認フロー
17
+ - ✅ **マルチプロジェクト対応**: 3-5プロジェクト同時進行
18
+ - ✅ **自動化スクリプト**: Markdown↔Confluence同期、JIRA連携、PR自動化
19
+ - ✅ **フェーズバリデーション**: 抜け漏れ防止の自動チェック
20
+
21
+ ### アーキテクチャ
22
+
23
+ ```text
24
+ GitHub (.kiro/specs/) ← 真実の源
25
+ ↓ 自動同期
26
+ Confluence ← 企画・部長の承認フロー
27
+ JIRA ← タスク管理・進捗追跡
28
+ ```
29
+
30
+ ## クイックスタート
31
+
32
+ ### 前提条件
33
+
34
+ - Node.js 20.x以上
35
+ - Git(または Jujutsu (jj) も使用可能)
36
+ - Cursor IDE または VS Code
37
+ - GitHub CLI (gh) - PR作成時に使用
38
+ - **cc-sdd**: AI駆動開発ワークフローのコアフレームワーク
39
+
40
+ ### インストール
41
+
42
+ #### 方法1: NPMパッケージとしてインストール(推奨)
43
+
44
+ ```bash
45
+ # グローバルインストール
46
+ npm install -g @sk8metalme/michi-cli
47
+
48
+ # または、プロジェクトにローカルインストール
49
+ npm install --save-dev @sk8metalme/michi-cli
50
+
51
+ # 使用方法
52
+ npx @sk8metalme/michi-cli --help
53
+ # または、グローバルインストール後
54
+ michi --help
55
+ ```
56
+
57
+ #### 方法2: リポジトリからクローン(開発用)
58
+
59
+ ```bash
60
+ # リポジトリのクローン
61
+ git clone https://github.com/sk8metalme/michi
62
+ cd michi
63
+
64
+ # Jujutsu (jj) を使う場合
65
+ # jj git clone https://github.com/sk8metalme/michi
66
+ # cd michi
67
+
68
+ # cc-sddのインストール(AI駆動開発ワークフローのコア)
69
+ npx cc-sdd@latest --lang ja --cursor
70
+ # または Claude Code の場合: npx cc-sdd@latest --lang ja --claude
71
+
72
+ # 依存関係のインストール
73
+ npm install
74
+
75
+ # 環境変数の設定
76
+ cp env.example .env
77
+ # .env ファイルを編集して認証情報を設定
78
+ #
79
+ # 【重要】JIRA Issue Type IDの設定
80
+ # JIRA_ISSUE_TYPE_STORY と JIRA_ISSUE_TYPE_SUBTASK は必須です。
81
+ # これらの値はJIRAインスタンス固有のため、各デプロイメントで設定が必要です。
82
+ #
83
+ # 確認方法:
84
+ # 1. JIRA管理画面: Settings > Issues > Issue types で確認
85
+ # 2. REST API: GET https://your-domain.atlassian.net/rest/api/3/issuetype
86
+ # レスポンスから "Story" と "Subtask" の "id" フィールドを取得
87
+
88
+ # MCP設定(Cursor用)
89
+ # mcp.json.example を参考に ~/.cursor/mcp.json を作成
90
+ # (詳細はdocs/setup.md参照)
91
+ ```
92
+
93
+ 詳細なセットアップ手順は [docs/setup.md](./docs/setup.md) を参照してください。
94
+
95
+ ## 使い方
96
+
97
+ > **凡例について**: `<feature>` などの記号の意味は [凡例の記号説明](#凡例の記号説明) を参照してください。
98
+
99
+ ### 1. 新機能の開発(推奨フロー)
100
+
101
+ **AIコマンド + CLIツール実行** で抜け漏れを防止:
102
+
103
+ ```bash
104
+ # Phase 0: 初期化
105
+ # 凡例
106
+ /kiro:spec-init <機能説明>
107
+
108
+ # 具体例
109
+ /kiro:spec-init ユーザー認証機能
110
+
111
+ # Phase 1: 要件定義
112
+ # 凡例
113
+ /kiro:spec-requirements <feature> # AIで requirements.md 作成
114
+ npx @sk8metalme/michi-cli phase:run <feature> requirements # Confluence作成+バリデーション(必須)
115
+
116
+ # 具体例
117
+ /kiro:spec-requirements user-auth # AIで requirements.md 作成
118
+ npx @sk8metalme/michi-cli phase:run user-auth requirements # Confluence作成+バリデーション(必須)
119
+
120
+ # Phase 2: 設計
121
+ # 凡例
122
+ /kiro:spec-design <feature> # AIで design.md 作成
123
+ npx @sk8metalme/michi-cli phase:run <feature> design # Confluence作成+バリデーション(必須)
124
+
125
+ # 具体例
126
+ /kiro:spec-design user-auth # AIで design.md 作成
127
+ npx @sk8metalme/michi-cli phase:run user-auth design # Confluence作成+バリデーション(必須)
128
+
129
+ # Phase 3: タスク分割(6フェーズすべて)
130
+ # 凡例
131
+ /kiro:spec-tasks <feature> # AIで tasks.md 作成(要件定義~リリースまで)
132
+ npx @sk8metalme/michi-cli phase:run <feature> tasks # 全フェーズのJIRA作成+バリデーション(必須)
133
+
134
+ # 具体例
135
+ /kiro:spec-tasks user-auth # AIで tasks.md 作成(要件定義~リリースまで)
136
+ npx @sk8metalme/michi-cli phase:run user-auth tasks # 全フェーズのJIRA作成+バリデーション(必須)
137
+
138
+ # Phase 4: 実装
139
+ # 凡例
140
+ /kiro:spec-impl <feature> # TDD実装開始
141
+
142
+ # 具体例
143
+ /kiro:spec-impl user-auth # TDD実装開始
144
+
145
+ # Phase 5: 試験
146
+ # tasks.mdのPhase 3: 試験(Testing)に従ってテスト実施
147
+
148
+ # Phase 6: リリース準備・リリース
149
+ # tasks.mdのPhase 4-5に従ってリリース準備・本番リリース
150
+ ```
151
+
152
+ **重要**: 各フェーズで `npx @sk8metalme/michi-cli phase:run` を実行しないと、Confluence/JIRAが作成されず、PMや部長がレビューできません。
153
+
154
+ **CLIツールの使用方法**:
155
+ - **npx実行(推奨)**: `npx @sk8metalme/michi-cli <command>` - 常に最新版を使用
156
+ - **グローバルインストール**: `npm install -g @sk8metalme/michi-cli` 後、`michi <command>` で実行
157
+ - **ローカル開発**: `npm run michi <command>` または `tsx src/cli.ts <command>`
158
+
159
+ ### 2. バリデーション確認
160
+
161
+ ```bash
162
+ # 凡例
163
+ npx @sk8metalme/michi-cli validate:phase <feature> <phase>
164
+
165
+ # 具体例
166
+ npx @sk8metalme/michi-cli validate:phase user-auth requirements # 要件定義チェック
167
+ npx @sk8metalme/michi-cli validate:phase user-auth design # 設計チェック
168
+ npx @sk8metalme/michi-cli validate:phase user-auth tasks # タスク分割チェック
169
+ ```
170
+
171
+ ### 3. 個別実行
172
+
173
+ ```bash
174
+ # 凡例
175
+ npx @sk8metalme/michi-cli confluence:sync <feature> <doc-type>
176
+ npx @sk8metalme/michi-cli jira:sync <feature>
177
+ npx @sk8metalme/michi-cli workflow:run --feature <feature>
178
+
179
+ # 具体例
180
+ npx @sk8metalme/michi-cli confluence:sync user-auth requirements # Confluenceに同期
181
+ npx @sk8metalme/michi-cli jira:sync user-auth # JIRAタスク作成
182
+ npx @sk8metalme/michi-cli preflight # プリフライトチェック
183
+ npx @sk8metalme/michi-cli project:list # プロジェクト一覧
184
+ npx @sk8metalme/michi-cli workflow:run --feature user-auth # ワークフロー実行
185
+ ```
186
+
187
+ ## プロジェクト構造
188
+
189
+ ```text
190
+ michi/
191
+ ├── .cursor/ # Cursor IDE設定
192
+ ├── .kiro/ # AI-DLC設定
193
+ │ ├── project.json # プロジェクトメタデータ
194
+ │ ├── settings/ # テンプレート
195
+ │ ├── specs/ # 機能仕様書(GitHub SSoT)
196
+ │ └── steering/ # AIガイダンス
197
+ ├── scripts/ # 自動化スクリプト
198
+ ├── docs/ # ドキュメント
199
+ ├── env.example # 環境変数テンプレート
200
+ ├── mcp.json.example # MCP設定テンプレート
201
+ └── package.json # 依存関係
202
+ ```
203
+
204
+ ### 設定ファイル
205
+
206
+ OSS公開に対応するため、以下のテンプレートファイルを用意しています:
207
+
208
+ - **`env.example`**: 環境変数の設定テンプレート
209
+ - Atlassian (Confluence/JIRA) 認証情報
210
+ - GitHub認証情報
211
+ - プロジェクト固有設定
212
+ - **ワークフロー承認ゲート設定**(オプション)
213
+
214
+ - **`mcp.json.example`**: MCP設定テンプレート
215
+ - Cursor/VS Code用のAtlassian MCP設定
216
+
217
+ - **`.kiro/config.json`**: プロジェクト固有の設定ファイル(オプション)
218
+ - Confluenceページ作成粒度の設定
219
+ - JIRAストーリー作成粒度の設定
220
+ - ワークフロー設定
221
+ - 詳細は [設定値リファレンス](./docs/config-reference.md) を参照
222
+
223
+ **初回セットアップ時:**
224
+ ```bash
225
+ # 環境変数を設定
226
+ cp env.example .env
227
+ # .env を編集して実際の認証情報を入力
228
+ # 承認ゲートのロール名も必要に応じてカスタマイズ
229
+
230
+ # MCP設定を作成
231
+ cp mcp.json.example ~/.cursor/mcp.json
232
+ # ~/.cursor/mcp.json を編集して実際の認証情報を入力
233
+
234
+ # プロジェクト固有設定(オプション)
235
+ # .kiro/config.json を作成して、Confluence/JIRAの動作をカスタマイズ
236
+ # 詳細は docs/config-reference.md を参照
237
+ ```
238
+
239
+ **承認ゲートの設定:**
240
+ ワークフロー実行時の承認者ロール名は、`.env`ファイルで設定できます:
241
+
242
+ ```bash
243
+ # デフォルト値(英語)
244
+ APPROVAL_GATES_REQUIREMENTS=pm,director
245
+ APPROVAL_GATES_DESIGN=architect,director
246
+ APPROVAL_GATES_RELEASE=sm,director
247
+
248
+ # 日本語ロール名の例
249
+ APPROVAL_GATES_REQUIREMENTS=企画,部長
250
+ APPROVAL_GATES_DESIGN=アーキテクト,部長
251
+ APPROVAL_GATES_RELEASE=SM,部長
252
+ ```
253
+
254
+ 詳細は [セットアップガイド](./docs/setup.md#4-3-ワークフロー承認ゲートの設定オプション) を参照してください。
255
+
256
+ ## 他のリポジトリでプロジェクトを進める
257
+
258
+ ### 既存リポジトリにMichiワークフローを追加(最も簡単)
259
+
260
+ ```bash
261
+ # 既存プロジェクトのディレクトリに移動
262
+ cd /path/to/existing-repo
263
+
264
+ # Michiのセットアップスクリプトを実行(対話式)
265
+ bash /path/to/michi/scripts/setup-existing.sh
266
+ ```
267
+
268
+ 対話式で以下を入力:
269
+ - プロジェクト名
270
+ - JIRAプロジェクトキー
271
+ - 顧客名
272
+
273
+ 自動的にcc-sdd、ルール、スクリプトなどがセットアップされます。
274
+
275
+ ### 新規リポジトリを作成してセットアップ
276
+
277
+ ```bash
278
+ # Michiディレクトリから実行
279
+ cd /path/to/michi
280
+ npm run create-project -- \
281
+ --name "customer-a-service-1" \
282
+ --project-name "A社 サービス1" \
283
+ --customer "A社" \
284
+ --jira-key "PRJA"
285
+ ```
286
+
287
+ 詳細: [新規プロジェクトセットアップガイド](./docs/new-project-setup.md)
288
+
289
+ ## ドキュメント
290
+
291
+ - [クイックリファレンス](./docs/quick-reference.md) - コマンド一覧、チートシート ⭐
292
+ - [フェーズ自動化ガイド](./docs/phase-automation.md) - Confluence/JIRA自動作成、抜け漏れ防止 ⭐
293
+ - [新規プロジェクトセットアップ](./docs/new-project-setup.md) - 他リポジトリでの開始方法 ⭐
294
+ - [カスタマイズガイド](./docs/customization-guide.md) - Confluence/JIRA階層構造のカスタマイズ ⭐
295
+ - [セットアップガイド](./docs/setup.md) - インストール・設定手順
296
+ - [設定値リファレンス](./docs/config-reference.md) - `.kiro/config.json`の全設定値の説明
297
+ - [ワークフローガイド](./docs/workflow.md) - AI開発フロー
298
+ - [マルチプロジェクト管理](./docs/multi-project.md) - 複数プロジェクト管理
299
+ - [テスト・検証](./docs/testing.md) - E2Eテスト、フィードバック
300
+
301
+ ## 技術スタック
302
+
303
+ - **AI開発**: [cc-sdd](https://github.com/gotalab/cc-sdd), [Cursor IDE](https://cursor.sh/)
304
+ - **バージョン管理**: Git([Jujutsu (jj)](https://github.com/martinvonz/jj) も使用可能)
305
+ - **統合**: [Atlassian MCP](https://www.atlassian.com/ja/platform/remote-mcp-server) (Confluence/JIRA)
306
+ - **言語**: [TypeScript](https://www.typescriptlang.org/)
307
+ - **ランタイム**: [Node.js](https://nodejs.org/) 20.x
308
+ - **テスト**: [vitest](https://vitest.dev/)
309
+ - **HTTP**: [axios](https://github.com/axios/axios), [@octokit/rest](https://github.com/octokit/rest.js)
310
+
311
+ ## ライセンス
312
+
313
+ MIT License
314
+
315
+ Copyright (c) 2025 sk8metalme
316
+
317
+ 詳細は [LICENSE](./LICENSE) ファイルを参照してください。
318
+
319
+ ## 謝辞
320
+
321
+ このプロジェクトは以下のOSSプロジェクト・ツールに支えられています:
322
+
323
+ ### コアフレームワーク・ツール
324
+
325
+ - **[cc-sdd](https://github.com/gotalab/cc-sdd)** - AIコーディングエージェントを仕様駆動開発に変換するコアフレームワーク(MIT License)
326
+ - **[Atlassian MCP Server](https://www.atlassian.com/ja/platform/remote-mcp-server)** - Confluence/JIRA統合
327
+ - **[GitHub CLI](https://github.com/cli/cli)** - GitHubコマンドラインツール(MIT License)
328
+ - **[Node.js](https://nodejs.org/)** - JavaScript ランタイム(MIT License)
329
+ - **[TypeScript](https://www.typescriptlang.org/)** - 型安全なJavaScript(Apache 2.0 License)
330
+ - **[Jujutsu (jj)](https://github.com/martinvonz/jj)** - Gitの代替として使用可能(Apache 2.0 License)
331
+
332
+ ### IDE・エディタ
333
+
334
+ - **[Cursor IDE](https://cursor.sh/)** - AI統合開発環境
335
+ - **[Kiro IDE](https://kiro.dev/)** - AI駆動開発プラットフォーム
336
+
337
+ ### 主要npmパッケージ
338
+
339
+ - **[@octokit/rest](https://github.com/octokit/rest.js)** - GitHub REST API クライアント(MIT License)
340
+ - **[axios](https://github.com/axios/axios)** - HTTPクライアント(MIT License)
341
+ - **[commander](https://github.com/tj/commander.js)** - CLIフレームワーク(MIT License)
342
+ - **[markdown-it](https://github.com/markdown-it/markdown-it)** - Markdownパーサー(MIT License)
343
+ - **[turndown](https://github.com/mixmark-io/turndown)** - HTML→Markdown変換(MIT License)
344
+ - **[zod](https://github.com/colinhacks/zod)** - スキーマバリデーション(MIT License)
345
+ - **[vitest](https://vitest.dev/)** - テストフレームワーク(MIT License)
346
+
347
+ その他、多くのOSSパッケージに支えられています。詳細は [package.json](./package.json) を参照してください。
348
+
349
+ ## 凡例の記号説明
350
+
351
+ ドキュメント内で使用している記号の意味:
352
+
353
+ | 記号 | 説明 | 例 |
354
+ |------|------|-----|
355
+ | `<feature>` | 機能名 | user-auth, health-check-endpoint |
356
+ | `<project-id>` | プロジェクトID | michi, customer-a-service-1 |
357
+ | `<project-name>` | プロジェクト名 | Michi, A社 サービス1 |
358
+ | `<phase>` | フェーズ名 | requirements, design, tasks |
359
+ | `<tasks>` | タスクID | FE-1,BE-1, STORY-1 |
360
+ | `<doc-type>` | ドキュメント種類 | requirements, design, tasks |
361
+ | `<jira-key>` | JIRAプロジェクトキー | MICHI, PRJA |
362
+
363
+ ### 凡例と具体例の読み方
364
+
365
+ ドキュメント内のコマンド例は「凡例」と「具体例」を併記しています:
366
+
367
+ **凡例**: 汎用的なパターン(記号を使用)
368
+ ```bash
369
+ /kiro:spec-requirements <feature>
370
+ ```
371
+
372
+ **具体例**: 実際の使用例
373
+ ```bash
374
+ /kiro:spec-requirements user-auth
375
+ ```
376
+
377
+ **注**: `user-auth` は説明用の架空の機能例です。実際のmichiプロジェクトには `health-check-endpoint` などの機能が存在します(`.kiro/specs/` 参照)。
378
+
379
+ ### 機能名(feature)の命名規則
380
+
381
+ #### なぜ英語のkebab-caseが必要か
382
+
383
+ feature名は以下の場所で使用されるため、**英語・小文字・ハイフン区切り**が必須です:
384
+
385
+ | 使用箇所 | 例 | 制約理由 |
386
+ |---------|-----|---------|
387
+ | ディレクトリ名 | `.kiro/specs/user-auth/` | ファイルシステム互換性 |
388
+ | GitHub URL | `.../specs/user-auth/requirements.md` | URLセーフ |
389
+ | Confluenceラベル | `user-auth` | ラベル検索・フィルタ |
390
+ | JIRA Epic検索 | `labels = "user-auth"` | JQLクエリ |
391
+ | ブランチ名 | `michi/feature/user-auth` | Git命名規則 |
392
+
393
+ #### 命名ルール
394
+
395
+ **形式**: 英語、kebab-case(ハイフン区切り)、小文字のみ
396
+
397
+ **ルール**:
398
+ - 2-4単語推奨
399
+ - 英数字とハイフン(`-`)のみ使用
400
+ - スペース、アンダースコア、日本語は不可
401
+ - 先頭・末尾のハイフン不可
402
+
403
+ #### 変換例
404
+
405
+ | spec-init(日本語説明) | spec-requirements以降(feature名) |
406
+ |----------------------|--------------------------------|
407
+ | ユーザー認証機能 | `user-auth` |
408
+ | OAuth 2.0を使った認証 | `oauth-auth` |
409
+ | 支払い処理機能 | `payment` |
410
+ | ヘルスチェックエンドポイント | `health-check-endpoint` |
411
+ | 商品検索API | `product-search-api` |
412
+ | 在庫管理システム | `inventory-management` |
413
+
414
+ #### 変換のコツ
415
+
416
+ 1. **日本語→英語変換**: 機能の本質を表す英単語を選ぶ
417
+ 2. **短縮**: 2-4単語に凝縮(長すぎる場合)
418
+ 3. **一般的な単語**: チーム全員が理解できる英語
419
+ 4. **一貫性**: 類似機能は統一された命名パターン
420
+
421
+ #### 良い例・悪い例
422
+
423
+ ✅ **良い例**:
424
+ - `user-auth` - 短く明確
425
+ - `payment-processing` - 具体的
426
+ - `health-check` - 標準的な用語
427
+
428
+ ❌ **悪い例**:
429
+ - `ユーザー認証` - 日本語(URL/ラベルに不適)
430
+ - `user_auth` - アンダースコア(kebab-caseではない)
431
+ - `UserAuth` - CamelCase(kebab-caseではない)
432
+ - `user auth` - スペース(ファイルシステム/Git不可)
433
+ - `-user-auth` - 先頭ハイフン(無効)
434
+ - `very-long-feature-name-for-user-authentication` - 長すぎる
435
+
436
+ ## 参考リンク
437
+
438
+ ### AI開発フレームワーク
439
+
440
+ - [cc-sdd公式ドキュメント](https://github.com/gotalab/cc-sdd/blob/main/tools/cc-sdd/README_ja.md)
441
+ - [cc-sdd コマンドリファレンス](https://github.com/gotalab/cc-sdd/blob/main/docs/guides/command-reference.md)
442
+ - [cc-sdd カスタマイズガイド](https://github.com/gotalab/cc-sdd/blob/main/docs/guides/customization-guide.md)
443
+ - [Kiro IDE](https://kiro.dev/docs/)
444
+
445
+ ### バージョン管理・Git
446
+
447
+ - [Jujutsu (jj) 公式サイト](https://martinvonz.github.io/jj/)
448
+ - [Jujutsu GitHub](https://github.com/martinvonz/jj)
449
+ - [Jujutsu チュートリアル](https://steveklabnik.github.io/jujutsu-tutorial/)
450
+
451
+ ### Atlassian統合
452
+
453
+ - [Atlassian MCP Server](https://www.atlassian.com/ja/platform/remote-mcp-server)
454
+ - [Confluence REST API](https://developer.atlassian.com/cloud/confluence/rest/v2/intro/)
455
+ - [Jira REST API](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/)
456
+
457
+ ### IDE・エディタ
458
+
459
+ - [Cursor IDE](https://cursor.sh/)
460
+ - [VS Code](https://code.visualstudio.com/)
461
+
462
+ ### GitHub
463
+
464
+ - [GitHub CLI](https://cli.github.com/)
465
+ - [Octokit (GitHub REST API)](https://github.com/octokit/rest.js)