@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
@@ -0,0 +1,202 @@
1
+ # テスト・検証ガイド
2
+
3
+ > **凡例について**: `<feature>` などの記号の意味は [README.md#凡例の記号説明](../README.md#凡例の記号説明) を参照してください。
4
+
5
+ ## E2Eテストシナリオ
6
+
7
+ ### シナリオ1: 単一機能の完全フロー
8
+
9
+ 新機能「ユーザー認証」を要件定義からリリースまで実行:
10
+
11
+ #### Step 1: 要件定義
12
+ ```bash
13
+ # 凡例
14
+ /kiro:spec-init <機能説明>
15
+ /kiro:spec-requirements <feature>
16
+ jj commit -m "docs: <feature> 要件定義"
17
+ jj git push
18
+ npm run confluence:sync <feature> requirements
19
+
20
+ # 具体例
21
+ /kiro:spec-init OAuth 2.0を使ったユーザー認証機能
22
+ /kiro:spec-requirements user-auth
23
+ jj commit -m "docs: ユーザー認証 要件定義"
24
+ jj git push
25
+ npm run confluence:sync user-auth requirements
26
+ ```
27
+
28
+ **確認ポイント**:
29
+ - [ ] `.kiro/specs/user-auth/requirements.md` が生成された
30
+ - [ ] Confluenceページが作成された
31
+ - [ ] ラベル `project:michi, requirements, user-auth` が付与された
32
+ - [ ] 企画・部長にメンション通知が届いた
33
+
34
+ #### Step 2: 設計
35
+ ```bash
36
+ # 凡例
37
+ /kiro:spec-design <feature>
38
+ jj commit -m "docs: <feature> 設計"
39
+ jj git push
40
+ npm run confluence:sync <feature> design
41
+ npm run excel:sync <feature>
42
+
43
+ # 具体例
44
+ /kiro:spec-design user-auth
45
+ jj commit -m "docs: ユーザー認証 設計"
46
+ jj git push
47
+ npm run confluence:sync user-auth design
48
+ npm run excel:sync user-auth
49
+ ```
50
+
51
+ **確認ポイント**:
52
+ - [ ] `.kiro/specs/user-auth/design.md` が生成された
53
+ - [ ] 見積もりセクションが含まれている
54
+ - [ ] Confluenceページが作成された(親: 要件定義)
55
+ - [ ] Excelファイルが出力された
56
+
57
+ #### Step 3: タスク分割
58
+ ```bash
59
+ # 凡例
60
+ /kiro:spec-tasks <feature>
61
+ jj commit -m "docs: <feature> タスク分割"
62
+ jj git push
63
+ npm run jira:sync <feature>
64
+
65
+ # 具体例
66
+ /kiro:spec-tasks user-auth
67
+ jj commit -m "docs: ユーザー認証 タスク分割"
68
+ jj git push
69
+ npm run jira:sync user-auth
70
+ ```
71
+
72
+ **確認ポイント**:
73
+ - [ ] `.kiro/specs/user-auth/tasks.md` が生成された
74
+ - [ ] JIRA Epicが作成された
75
+ - [ ] JIRA Storyが作成された(複数)
76
+ - [ ] Epic-Storyリンクが設定された
77
+
78
+ #### Step 4: 実装
79
+ ```
80
+ /kiro:spec-impl user-auth FE-1,BE-1
81
+ jj commit -m "feat: ユーザー認証実装 [MICHI-123]"
82
+ jj bookmark create michi/feature/user-auth -r '@-'
83
+ jj git push --bookmark michi/feature/user-auth --allow-new
84
+ npm run github:create-pr michi/feature/user-auth
85
+ ```
86
+
87
+ **確認ポイント**:
88
+ - [ ] テストが先に書かれた(TDD)
89
+ - [ ] コードが実装された
90
+ - [ ] PRが作成された
91
+ - [ ] JIRA ステータスが "In Review" に更新された
92
+
93
+ ### シナリオ2: マルチプロジェクト横断テスト
94
+
95
+ 3つのプロジェクトで同時に要件定義を実施:
96
+
97
+ ```bash
98
+ # プロジェクトA
99
+ cd customer-a-service-1
100
+ /kiro:spec-requirements payment-feature
101
+ npm run confluence:sync payment-feature
102
+
103
+ # プロジェクトB
104
+ cd ../customer-b-api
105
+ /kiro:spec-requirements user-api
106
+ npm run confluence:sync user-api
107
+
108
+ # プロジェクトC(Michi)
109
+ cd ../michi
110
+ /kiro:spec-requirements integration-hub
111
+ npm run confluence:sync integration-hub
112
+
113
+ # 横断確認
114
+ npm run project:list
115
+ npm run project:dashboard
116
+ ```
117
+
118
+ **確認ポイント**:
119
+ - [ ] 3つのプロジェクトすべてでページ作成成功
120
+ - [ ] Confluenceダッシュボードに3プロジェクト表示
121
+ - [ ] ラベルでフィルタリング可能
122
+ - [ ] JIRAダッシュボードに3プロジェクト表示
123
+
124
+ ## チームフィードバック収集
125
+
126
+ ### フィードバック項目
127
+
128
+ #### 使いやすさ
129
+ - [ ] Cursorコマンドは直感的か?
130
+ - [ ] ドキュメントは理解しやすいか?
131
+ - [ ] エラーメッセージは明確か?
132
+
133
+ #### 効率性
134
+ - [ ] 要件定義の時間短縮できたか?
135
+ - [ ] Confluence/JIRA連携は手間を減らしたか?
136
+ - [ ] 全体の開発スピードは向上したか?
137
+
138
+ #### 品質
139
+ - [ ] AIが生成する仕様書の品質は十分か?
140
+ - [ ] テンプレートは実務に適しているか?
141
+ - [ ] 見積もりの精度は妥当か?
142
+
143
+ ### フィードバック方法
144
+
145
+ GitHub Issuesで収集:
146
+ ```bash
147
+ gh issue create --title "フィードバック: <内容>" --body "<詳細>"
148
+ ```
149
+
150
+ ラベル:
151
+ - `feedback:usability`: 使いやすさ
152
+ - `feedback:efficiency`: 効率性
153
+ - `feedback:quality`: 品質
154
+
155
+ ## 継続的改善
156
+
157
+ ### Week 1-2: パイロット運用
158
+ - 1プロジェクトで全フロー実行
159
+ - 問題点を記録
160
+ - フィードバック収集
161
+
162
+ ### Week 3-4: 改善
163
+ - テンプレート調整
164
+ - スクリプト改善
165
+ - ドキュメント更新
166
+
167
+ ### Week 5-6: 横展開
168
+ - 2-3プロジェクトに展開
169
+ - チーム全体でフィードバック
170
+
171
+ ### Week 7-8: 最適化
172
+ - ベストプラクティス確立
173
+ - 自動化範囲の拡大
174
+ - ツールの安定化
175
+
176
+ ## メトリクス
177
+
178
+ ### 効率化指標
179
+
180
+ | 指標 | 導入前 | 導入後 | 改善率 |
181
+ |------|--------|--------|--------|
182
+ | 要件定義時間 | 3日 | 0.5日 | 83% |
183
+ | 設計時間 | 5日 | 1日 | 80% |
184
+ | タスク分割時間 | 2日 | 0.5日 | 75% |
185
+ | ドキュメント作成 | 2日 | 0.2日 | 90% |
186
+
187
+ ### 品質指標
188
+
189
+ | 指標 | 目標値 | 測定方法 |
190
+ |------|--------|---------|
191
+ | 仕様書の完成度 | 90%以上 | レビュースコア |
192
+ | 見積もり精度 | ±20%以内 | 実績との比較 |
193
+ | テストカバレッジ | 95%以上 | 自動測定 |
194
+
195
+ ## 次のステップ
196
+
197
+ 1. パイロットプロジェクトでE2Eテスト実行
198
+ 2. フィードバック収集
199
+ 3. 改善実施
200
+ 4. 他プロジェクトに横展開
201
+ 5. ベストプラクティス確立
202
+
@@ -0,0 +1,342 @@
1
+ # AI開発ワークフローガイド
2
+
3
+ > **凡例について**: `<feature>` などの記号の意味は [README.md#凡例の記号説明](../README.md#凡例の記号説明) を参照してください。
4
+
5
+ ## 概要
6
+
7
+ このガイドでは、Michiを使用したAI駆動開発フローの全体像を説明します。
8
+
9
+ ## ワークフロー全体像
10
+
11
+ ```
12
+ 1. 要件定義 (/kiro:spec-requirements)
13
+ ↓ GitHub → Confluence同期
14
+ ↓ 企画・部長が承認
15
+
16
+ 2. 設計 (/kiro:spec-design)
17
+ ↓ GitHub → Confluence同期
18
+ ↓ 見積もり生成 → Excel出力
19
+ ↓ アーキテクト・部長が承認
20
+
21
+ 3. タスク分割 (/kiro:spec-tasks)
22
+ ↓ GitHub → JIRA連携
23
+ ↓ Epic/Story/Subtask自動作成
24
+
25
+ 4. 実装 (/kiro:spec-impl)
26
+ ↓ TDD(テスト → コード → リファクタリング)
27
+ ↓ GitHub PR作成
28
+ ↓ JIRA ステータス更新
29
+
30
+ 5. テスト
31
+ ↓ テストレポート生成
32
+ ↓ Confluence同期
33
+
34
+ 6. リリース準備 (/kiro:release-prep)
35
+ ↓ リリースノート生成
36
+ ↓ JIRA Release作成
37
+ ↓ GitHub Release作成
38
+ ```
39
+
40
+ ## フェーズ別詳細
41
+
42
+ ### Phase 1: 要件定義
43
+
44
+ #### Step 1: 仕様の初期化
45
+
46
+ Cursorで実行:
47
+ ```bash
48
+ # 凡例
49
+ /kiro:spec-init <機能説明>
50
+
51
+ # 具体例
52
+ /kiro:spec-init ユーザー認証機能を実装したい。OAuth 2.0とJWTを使用。
53
+ ```
54
+
55
+ AIが `.kiro/specs/<feature>/` ディレクトリを作成します。
56
+
57
+ #### Step 2: 要件定義の生成
58
+
59
+ ```bash
60
+ # 凡例
61
+ /kiro:spec-requirements <feature>
62
+
63
+ # 具体例
64
+ /kiro:spec-requirements user-auth
65
+ ```
66
+
67
+ AIが以下を生成:
68
+ - `.kiro/specs/<feature>/requirements.md`
69
+ - ビジネス要件、機能要件、非機能要件、リスク
70
+
71
+ #### Step 3: GitHubにコミット
72
+
73
+ ```bash
74
+ # 凡例
75
+ jj commit -m "docs: <feature> 要件定義追加"
76
+ jj git push
77
+
78
+ # 具体例
79
+ jj commit -m "docs: ユーザー認証 要件定義追加"
80
+ jj git push
81
+ ```
82
+
83
+ #### Step 4: Confluenceに同期
84
+
85
+ Cursorで実行:
86
+ ```bash
87
+ # 凡例
88
+ /kiro:confluence-sync <feature> requirements
89
+
90
+ # 具体例
91
+ /kiro:confluence-sync user-auth requirements
92
+ ```
93
+
94
+ または:
95
+ ```bash
96
+ # 凡例
97
+ npm run confluence:sync <feature> requirements
98
+
99
+ # 具体例
100
+ npm run confluence:sync user-auth requirements
101
+ ```
102
+
103
+ AIが自動的に:
104
+ - Confluenceページ作成
105
+ - プロジェクト情報付与
106
+ - 企画・部長にメンション通知
107
+
108
+ #### Step 5: 承認待ち
109
+
110
+ 企画・部長がConfluenceで:
111
+ - 要件をレビュー
112
+ - コメントでフィードバック
113
+ - Page Propertiesで承認
114
+
115
+ ### Phase 2: 設計
116
+
117
+ #### Step 1: 設計書の生成
118
+
119
+ ```bash
120
+ # 凡例
121
+ /kiro:spec-design <feature>
122
+
123
+ # 具体例
124
+ /kiro:spec-design user-auth
125
+ ```
126
+
127
+ AIが以下を生成:
128
+ - アーキテクチャ図
129
+ - API設計
130
+ - データベース設計
131
+ - 見積もり
132
+
133
+ #### Step 2: GitHubにコミット
134
+
135
+ ```bash
136
+ # 凡例
137
+ jj commit -m "docs: <feature> 設計追加"
138
+ jj git push
139
+
140
+ # 具体例
141
+ jj commit -m "docs: ユーザー認証 設計追加"
142
+ jj git push
143
+ ```
144
+
145
+ #### Step 3: Confluenceに同期 + 見積もり出力
146
+
147
+ ```bash
148
+ # 凡例
149
+ npm run confluence:sync <feature> design
150
+ npm run excel:sync <feature>
151
+
152
+ # 具体例
153
+ npm run confluence:sync user-auth design
154
+ npm run excel:sync user-auth
155
+ ```
156
+
157
+ 見積もりExcelファイルが `estimates/<feature>-estimate.xlsx` に出力されます。
158
+
159
+ #### Step 4: 承認待ち
160
+
161
+ アーキテクト・部長がレビュー・承認
162
+
163
+ ### Phase 3: タスク分割
164
+
165
+ #### Step 1: タスク生成
166
+
167
+ ```bash
168
+ # 凡例
169
+ /kiro:spec-tasks <feature>
170
+
171
+ # 具体例
172
+ /kiro:spec-tasks user-auth
173
+ ```
174
+
175
+ AIが実装タスクをストーリーに分割します。
176
+
177
+ #### Step 2: GitHubにコミット
178
+
179
+ ```bash
180
+ # 凡例
181
+ jj commit -m "docs: <feature> タスク分割追加"
182
+ jj git push
183
+
184
+ # 具体例
185
+ jj commit -m "docs: ユーザー認証 タスク分割追加"
186
+ jj git push
187
+ ```
188
+
189
+ #### Step 3: JIRAに同期
190
+
191
+ ```bash
192
+ # 凡例
193
+ npm run jira:sync <feature>
194
+
195
+ # 具体例
196
+ npm run jira:sync user-auth
197
+ ```
198
+
199
+ 自動的に:
200
+ - Epic作成: `[<project-name>] <feature>`
201
+ - Story作成: 各実装タスク
202
+ - Subtask作成: テスト、レビュータスク
203
+
204
+ ### Phase 4: 実装
205
+
206
+ #### Step 1: TDD実装
207
+
208
+ ```bash
209
+ # 凡例
210
+ /kiro:spec-impl <feature> <tasks>
211
+
212
+ # 具体例
213
+ /kiro:spec-impl user-auth FE-1,BE-1
214
+ ```
215
+
216
+ AIがTDD(テスト駆動開発)で実装:
217
+ 1. テストを書く
218
+ 2. コードを書く
219
+ 3. リファクタリング
220
+
221
+ #### Step 2: コミット
222
+
223
+ ```bash
224
+ # 凡例
225
+ jj commit -m "feat: <feature> 実装 [JIRA-XXX]"
226
+ jj bookmark create <project-id>/feature/<feature> -r '@-'
227
+ jj git push --bookmark <project-id>/feature/<feature> --allow-new
228
+
229
+ # 具体例
230
+ jj commit -m "feat: ユーザー認証実装 [MICHI-123]"
231
+ jj bookmark create michi/feature/user-auth -r '@-'
232
+ jj git push --bookmark michi/feature/user-auth --allow-new
233
+ ```
234
+
235
+ #### Step 3: PR作成
236
+
237
+ ```bash
238
+ # 凡例
239
+ npm run github:create-pr <project-id>/feature/<feature> "[JIRA-XXX] <タイトル>"
240
+
241
+ # 具体例
242
+ npm run github:create-pr michi/feature/user-auth "[MICHI-123] ユーザー認証実装"
243
+ ```
244
+
245
+ または手動で:
246
+ ```bash
247
+ # 凡例
248
+ gh pr create --head <project-id>/feature/<feature> --base main \
249
+ --title "[JIRA-XXX] <タイトル>" \
250
+ --body "<説明>"
251
+
252
+ # 具体例
253
+ gh pr create --head michi/feature/user-auth --base main \
254
+ --title "[MICHI-123] ユーザー認証実装" \
255
+ --body "実装内容..."
256
+ ```
257
+
258
+ ### Phase 5-6: テスト・リリース
259
+
260
+ テストレポート生成とリリース準備は、同様のフローで実行します。
261
+
262
+ ## 統合ワークフロー実行
263
+
264
+ すべてのフェーズを自動実行:
265
+
266
+ ```bash
267
+ # 凡例
268
+ npm run workflow:run -- --feature <feature>
269
+
270
+ # 具体例
271
+ npm run workflow:run -- --feature user-auth
272
+ ```
273
+
274
+ 承認ゲートで一時停止し、承認後に次のフェーズに進みます。
275
+
276
+ ### 承認ゲートの設定
277
+
278
+ ワークフロー実行時の承認ゲートで使用するロール名は、環境変数で設定できます。
279
+
280
+ #### 環境変数設定
281
+
282
+ `.env` ファイルに以下を追加:
283
+
284
+ ```bash
285
+ # 要件定義フェーズの承認者
286
+ APPROVAL_GATES_REQUIREMENTS=pm,director
287
+
288
+ # 設計フェーズの承認者
289
+ APPROVAL_GATES_DESIGN=architect,director
290
+
291
+ # リリースフェーズの承認者
292
+ APPROVAL_GATES_RELEASE=sm,director
293
+ ```
294
+
295
+ #### 設定例
296
+
297
+ **デフォルト(英語ロール名):**
298
+ ```bash
299
+ APPROVAL_GATES_REQUIREMENTS=pm,director
300
+ APPROVAL_GATES_DESIGN=architect,director
301
+ APPROVAL_GATES_RELEASE=sm,director
302
+ ```
303
+
304
+ **日本語ロール名:**
305
+ ```bash
306
+ APPROVAL_GATES_REQUIREMENTS=企画,部長
307
+ APPROVAL_GATES_DESIGN=アーキテクト,部長
308
+ APPROVAL_GATES_RELEASE=SM,部長
309
+ ```
310
+
311
+ **カスタムロール名:**
312
+ ```bash
313
+ APPROVAL_GATES_REQUIREMENTS=product-manager,cto,legal
314
+ APPROVAL_GATES_DESIGN=tech-lead,architect,security
315
+ APPROVAL_GATES_RELEASE=release-manager,qa-lead,director
316
+ ```
317
+
318
+ 詳細は [セットアップガイド](./setup.md#4-3-ワークフロー承認ゲートの設定オプション) を参照してください。
319
+
320
+ ## ベストプラクティス
321
+
322
+ 1. **小さく始める**: 最初は1フェーズずつ手動実行
323
+ 2. **承認を待つ**: 各フェーズで承認を取ってから次へ
324
+ 3. **GitHubを真実の源に**: 編集は常にGitHubで
325
+ 4. **定期的な同期**: GitHub更新後は必ずConfluence/JIRA同期
326
+ 5. **プロジェクトメタデータの維持**: `.kiro/project.json` を最新に保つ
327
+
328
+ ## トラブルシューティング
329
+
330
+ ### Confluence同期エラー
331
+ - `.env` の認証情報を確認
332
+ - Confluenceスペースが存在するか確認
333
+ - Markdownファイルが存在するか確認
334
+
335
+ ### JIRA同期エラー
336
+ - JIRAプロジェクトキーが正しいか確認
337
+ - Epic/Storyの作成権限があるか確認
338
+
339
+ ### PR作成エラー
340
+ - GitHub認証を確認: `gh auth status`
341
+ - ブランチが存在するか確認: `jj bookmark list`
342
+
package/env.example ADDED
@@ -0,0 +1,44 @@
1
+ # Atlassian設定
2
+ ATLASSIAN_URL=https://your-domain.atlassian.net
3
+ ATLASSIAN_EMAIL=your-email@company.com
4
+ ATLASSIAN_API_TOKEN=your-atlassian-api-token-here
5
+
6
+ # GitHub設定
7
+ GITHUB_ORG=your-github-org
8
+ GITHUB_TOKEN=your-github-token-here
9
+ GITHUB_REPO=your-org/your-repo
10
+
11
+ # Confluence設定
12
+ CONFLUENCE_PRD_SPACE=PRD
13
+ CONFLUENCE_QA_SPACE=QA
14
+ CONFLUENCE_RELEASE_SPACE=RELEASE
15
+
16
+ # JIRA設定
17
+ JIRA_PROJECT_KEYS=PROJECT
18
+
19
+ # JIRA Issue Type IDs(JIRAインスタンス固有の値 - 必須)
20
+ # JIRA管理画面(Settings > Issues > Issue types)またはREST APIで確認してください
21
+ # REST API: GET /rest/api/3/issuetype で取得可能
22
+ JIRA_ISSUE_TYPE_STORY=10036
23
+ JIRA_ISSUE_TYPE_SUBTASK=10037
24
+
25
+ # レートリミット対策(オプション、デフォルト: 500ms)
26
+ ATLASSIAN_REQUEST_DELAY=500
27
+
28
+ # Story Pointsカスタムフィールド(JIRAプロジェクト固有)
29
+ # 環境変数 JIRA_STORY_POINTS_FIELD で設定可能(例: customfield_10016)
30
+ JIRA_STORY_POINTS_FIELD=customfield_10016
31
+
32
+ # Epic Linkカスタムフィールド(JIRAプロジェクト固有)
33
+ # 環境変数 JIRA_EPIC_LINK_FIELD で設定可能(例: customfield_10014)
34
+ JIRA_EPIC_LINK_FIELD=customfield_10014
35
+
36
+ # Slack通知(オプション)
37
+ SLACK_WEBHOOK_URL=your-slack-webhook-url-here
38
+
39
+ # ワークフロー承認ゲート(オプション)
40
+ # カンマ区切りでロール名を指定。未設定の場合はデフォルト値を使用
41
+ # デフォルト: requirements=pm,director, design=architect,director, release=sm,director
42
+ APPROVAL_GATES_REQUIREMENTS=pm,director
43
+ APPROVAL_GATES_DESIGN=architect,director
44
+ APPROVAL_GATES_RELEASE=sm,director
@@ -0,0 +1,14 @@
1
+ {
2
+ "mcpServers": {
3
+ "atlassian": {
4
+ "command": "npx",
5
+ "args": ["-y", "@atlassian/mcp-server-atlassian"],
6
+ "env": {
7
+ "ATLASSIAN_URL": "https://your-domain.atlassian.net",
8
+ "ATLASSIAN_EMAIL": "your-email@company.com",
9
+ "ATLASSIAN_API_TOKEN": "your-atlassian-api-token-here"
10
+ }
11
+ }
12
+ }
13
+ }
14
+
package/package.json ADDED
@@ -0,0 +1,97 @@
1
+ {
2
+ "name": "@sk8metal/michi-cli",
3
+ "version": "0.0.1",
4
+ "description": "Managed Intelligent Comprehensive Hub for Integration - AI-driven development workflow automation",
5
+ "license": "MIT",
6
+ "type": "module",
7
+ "publishConfig": {
8
+ "access": "public"
9
+ },
10
+ "repository": {
11
+ "type": "git",
12
+ "url": "git+https://github.com/sk8metalme/michi.git"
13
+ },
14
+ "homepage": "https://github.com/sk8metalme/michi#readme",
15
+ "bugs": {
16
+ "url": "https://github.com/sk8metalme/michi/issues"
17
+ },
18
+ "keywords": [
19
+ "ai",
20
+ "development",
21
+ "workflow",
22
+ "automation",
23
+ "confluence",
24
+ "jira",
25
+ "atlassian",
26
+ "spec-driven-development",
27
+ "cc-sdd",
28
+ "cursor",
29
+ "github"
30
+ ],
31
+ "bin": {
32
+ "michi": "dist/src/cli.js"
33
+ },
34
+ "files": [
35
+ "dist",
36
+ "docs",
37
+ "README.md",
38
+ "LICENSE",
39
+ "env.example",
40
+ "mcp.json.example"
41
+ ],
42
+ "scripts": {
43
+ "build": "tsc",
44
+ "prepare": "npm run build",
45
+ "setup:env": "bash scripts/setup-env.sh",
46
+ "create-project": "tsx scripts/create-project.ts",
47
+ "setup-existing": "tsx scripts/setup-existing-project.ts",
48
+ "confluence:sync": "tsx scripts/confluence-sync.ts",
49
+ "jira:sync": "tsx scripts/jira-sync.ts",
50
+ "github:create-pr": "tsx scripts/pr-automation.ts",
51
+ "project:list": "tsx scripts/list-projects.ts",
52
+ "project:dashboard": "tsx scripts/resource-dashboard.ts",
53
+ "multi-estimate": "tsx scripts/multi-project-estimate.ts",
54
+ "markdown:convert": "tsx scripts/markdown-to-confluence.ts",
55
+ "michi": "tsx src/cli.ts",
56
+ "workflow:run": "tsx scripts/workflow-orchestrator.ts",
57
+ "validate:phase": "tsx scripts/validate-phase.ts",
58
+ "phase:run": "tsx scripts/phase-runner.ts",
59
+ "preflight": "tsx scripts/pre-flight-check.ts",
60
+ "config:interactive": "tsx scripts/config-interactive.ts",
61
+ "config:validate": "tsx scripts/utils/config-validator.ts",
62
+ "test": "vitest",
63
+ "test:run": "vitest --run",
64
+ "test:ui": "vitest --ui",
65
+ "lint": "eslint .",
66
+ "lint:fix": "eslint . --fix",
67
+ "type-check": "tsc --noEmit"
68
+ },
69
+ "dependencies": {
70
+ "@octokit/rest": "^20.0.2",
71
+ "axios": "^1.13.1",
72
+ "commander": "^14.0.2",
73
+ "dotenv": "^16.3.1",
74
+ "exceljs": "^4.4.0",
75
+ "googleapis": "^126.0.1",
76
+ "jira-client": "^8.2.2",
77
+ "markdown-it": "^14.0.0",
78
+ "turndown": "^7.1.2",
79
+ "zod": "^3.22.4"
80
+ },
81
+ "devDependencies": {
82
+ "@types/markdown-it": "^13.0.7",
83
+ "@types/node": "^20.10.6",
84
+ "@types/turndown": "^5.0.4",
85
+ "@typescript-eslint/eslint-plugin": "^6.17.0",
86
+ "@typescript-eslint/parser": "^6.17.0",
87
+ "eslint": "^8.56.0",
88
+ "prettier": "^3.1.1",
89
+ "tsx": "^4.7.0",
90
+ "typescript": "^5.3.3",
91
+ "vitest": "^1.1.1"
92
+ },
93
+ "engines": {
94
+ "node": ">=20.0.0",
95
+ "npm": ">=10.0.0"
96
+ }
97
+ }