@sk8metal/michi-cli 0.0.4 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +42 -0
- package/README.md +66 -55
- package/dist/scripts/config-interactive.d.ts +1 -1
- package/dist/scripts/config-interactive.d.ts.map +1 -1
- package/dist/scripts/config-interactive.js +4 -4
- package/dist/scripts/config-interactive.js.map +1 -1
- package/dist/scripts/confluence-sync.js +2 -2
- package/dist/scripts/confluence-sync.js.map +1 -1
- package/dist/scripts/create-project.d.ts +2 -2
- package/dist/scripts/create-project.js +2 -2
- package/dist/scripts/jira-sync.js +3 -3
- package/dist/scripts/jira-sync.js.map +1 -1
- package/dist/scripts/utils/__tests__/config-loader.test.d.ts +5 -0
- package/dist/scripts/utils/__tests__/config-loader.test.d.ts.map +1 -0
- package/dist/scripts/utils/__tests__/config-loader.test.js +201 -0
- package/dist/scripts/utils/__tests__/config-loader.test.js.map +1 -0
- package/dist/scripts/utils/__tests__/config-validator.test.js +29 -16
- package/dist/scripts/utils/__tests__/config-validator.test.js.map +1 -1
- package/dist/scripts/utils/config-loader.d.ts +4 -0
- package/dist/scripts/utils/config-loader.d.ts.map +1 -1
- package/dist/scripts/utils/config-loader.js +24 -2
- package/dist/scripts/utils/config-loader.js.map +1 -1
- package/dist/scripts/utils/config-validator.js +8 -9
- package/dist/scripts/utils/config-validator.js.map +1 -1
- package/dist/src/cli.js +2 -2
- package/dist/src/cli.js.map +1 -1
- package/docs/README.md +93 -0
- package/docs/contributing/development.md +304 -0
- package/docs/{new-project-setup.md → getting-started/new-project-setup.md} +38 -38
- package/docs/getting-started/quick-start.md +145 -0
- package/docs/{setup.md → getting-started/setup.md} +63 -49
- package/docs/{customization-guide.md → guides/customization.md} +64 -12
- package/docs/guides/multi-project.md +365 -0
- package/docs/{config-reference.md → reference/config.md} +76 -197
- package/docs/{quick-reference.md → reference/quick-reference.md} +23 -20
- package/env.example +3 -1
- package/package.json +3 -1
- package/scripts/config-interactive.ts +4 -3
- package/scripts/confluence-sync.ts +2 -2
- package/scripts/create-project.ts +4 -4
- package/scripts/jira-sync.ts +3 -3
- package/scripts/set-permissions.js +29 -0
- package/scripts/setup-existing.sh +1 -1
- package/scripts/utils/__tests__/config-loader.test.ts +254 -0
- package/scripts/utils/__tests__/config-validator.test.ts +32 -16
- package/scripts/utils/config-loader.ts +30 -2
- package/scripts/utils/config-validator.ts +8 -8
- package/docs/multi-project.md +0 -233
- package/docs/testing.md +0 -202
- /package/docs/{release.md → contributing/release.md} +0 -0
- /package/docs/{phase-automation.md → guides/phase-automation.md} +0 -0
- /package/docs/{workflow.md → guides/workflow.md} +0 -0
- /package/docs/{tasks-template.md → reference/tasks-template.md} +0 -0
|
@@ -4,7 +4,50 @@
|
|
|
4
4
|
|
|
5
5
|
## 概要
|
|
6
6
|
|
|
7
|
-
Michi
|
|
7
|
+
Michiでは、チームやPJごとに異なる開発フローに対応するため、Confluence/JIRAの作成粒度やワークフロー設定をカスタマイズ可能にしています。
|
|
8
|
+
|
|
9
|
+
## cc-sddのカスタマイズとの関係
|
|
10
|
+
|
|
11
|
+
Michiは[cc-sdd](https://github.com/gotalab/cc-sdd)をベースとしており、カスタマイズには2つの種類があります:
|
|
12
|
+
|
|
13
|
+
### 1. cc-sddのカスタマイズ(テンプレート・ルール)
|
|
14
|
+
|
|
15
|
+
**対象**: AIが生成するドキュメントの構造や判断基準
|
|
16
|
+
- **templates/**: `requirements.md`, `design.md`, `tasks.md`の構造・フォーマット
|
|
17
|
+
- **rules/**: AIの判断基準・生成原則
|
|
18
|
+
- **steering/**: プロジェクトメモリ(`/kiro:steering-custom`で作成)
|
|
19
|
+
|
|
20
|
+
**詳細**: [cc-sdd カスタマイズガイド](https://github.com/gotalab/cc-sdd/blob/main/docs/guides/ja/customization-guide.md)
|
|
21
|
+
|
|
22
|
+
**主なカスタマイズ内容**:
|
|
23
|
+
- 要件定義書の見出し形式(日本語/英語/カスタム)
|
|
24
|
+
- 設計ドキュメントのセクション構造
|
|
25
|
+
- タスク分解の粒度と形式
|
|
26
|
+
- EARS形式の要件記述ルール
|
|
27
|
+
- カスタムSteeringドキュメント(API標準、セキュリティポリシーなど)
|
|
28
|
+
|
|
29
|
+
### 2. Michiのカスタマイズ(設定ファイル)
|
|
30
|
+
|
|
31
|
+
**対象**: Confluence/JIRAの作成方法やワークフロー設定
|
|
32
|
+
- **`.michi/config.json`**: Confluence階層構造、JIRA Story作成粒度、承認ゲート設定
|
|
33
|
+
|
|
34
|
+
**詳細**: 本ドキュメント(以下を参照)
|
|
35
|
+
|
|
36
|
+
**主なカスタマイズ内容**:
|
|
37
|
+
- Confluenceページの階層構造(フラット/階層/セクション分割)
|
|
38
|
+
- JIRA Story作成粒度(全作成/フェーズごと/選択フェーズのみ)
|
|
39
|
+
- ワークフロー承認ゲート設定
|
|
40
|
+
|
|
41
|
+
### 使い分け
|
|
42
|
+
|
|
43
|
+
| カスタマイズ種類 | 対象 | 設定場所 | コマンド |
|
|
44
|
+
|----------------|------|---------|---------|
|
|
45
|
+
| **cc-sdd** | ドキュメント構造・AI判断基準 | `.kiro/settings/templates/`, `.kiro/settings/rules/`, `.kiro/steering/` | `/kiro:steering-custom` |
|
|
46
|
+
| **Michi** | Confluence/JIRA作成方法 | `.michi/config.json` | `michi config:interactive` |
|
|
47
|
+
|
|
48
|
+
**例**:
|
|
49
|
+
- 要件定義書の見出しを「要件 N:」から「REQ-N:」に変更 → **cc-sddのカスタマイズ**(`templates/requirements.md`を編集)
|
|
50
|
+
- Confluenceページを階層構造にする → **Michiのカスタマイズ**(`.michi/config.json`で設定)
|
|
8
51
|
|
|
9
52
|
## 設定ファイルの構造
|
|
10
53
|
|
|
@@ -14,9 +57,11 @@ Michiでは、チームごとに異なる開発フローに対応するため、
|
|
|
14
57
|
|
|
15
58
|
### プロジェクト固有設定
|
|
16
59
|
|
|
17
|
-
`.
|
|
60
|
+
`.michi/config.json` - プロジェクトルートに配置(オプション)
|
|
61
|
+
|
|
62
|
+
**重要**: `.michi/config.json`は`.gitignore`に追加することを推奨します(チーム固有設定のため)
|
|
18
63
|
|
|
19
|
-
|
|
64
|
+
**注意**: 以前は `.kiro/config.json` を使用していましたが、Michi専用の設定ファイルとして `.michi/config.json` に変更されました。
|
|
20
65
|
|
|
21
66
|
### 設定のマージ順序
|
|
22
67
|
|
|
@@ -26,7 +71,7 @@ Michiでは、チームごとに異なる開発フローに対応するため、
|
|
|
26
71
|
|
|
27
72
|
### 設定値の詳細
|
|
28
73
|
|
|
29
|
-
すべての設定値の詳細は [設定値リファレンス](
|
|
74
|
+
すべての設定値の詳細は [設定値リファレンス](../reference/config.md) を参照してください。
|
|
30
75
|
|
|
31
76
|
## Confluence階層構造のカスタマイズ
|
|
32
77
|
|
|
@@ -297,14 +342,14 @@ Confluenceスペース
|
|
|
297
342
|
}
|
|
298
343
|
```
|
|
299
344
|
|
|
300
|
-
###
|
|
345
|
+
### 承認者の設定
|
|
301
346
|
|
|
302
347
|
**設定例: 日本語ロール名を使用**
|
|
303
348
|
```json
|
|
304
349
|
{
|
|
305
350
|
"workflow": {
|
|
306
351
|
"approvalGates": {
|
|
307
|
-
"requirements": ["
|
|
352
|
+
"requirements": ["PL", "部長"],
|
|
308
353
|
"design": ["アーキテクト", "部長"],
|
|
309
354
|
"release": ["SM", "部長"]
|
|
310
355
|
}
|
|
@@ -314,7 +359,7 @@ Confluenceスペース
|
|
|
314
359
|
|
|
315
360
|
## 対話式設定ツール
|
|
316
361
|
|
|
317
|
-
`.
|
|
362
|
+
`.michi/config.json`を対話的に作成・更新できます:
|
|
318
363
|
|
|
319
364
|
```bash
|
|
320
365
|
# 対話式設定ツールを実行
|
|
@@ -333,7 +378,7 @@ npm run config:interactive
|
|
|
333
378
|
- ワークフロー設定のカスタマイズ
|
|
334
379
|
3. **各設定を対話的に入力**: プロンプトに従って選択・入力
|
|
335
380
|
4. **設定を確認**: 最終的な設定内容を確認
|
|
336
|
-
5. **保存**: 設定ファイルを`.
|
|
381
|
+
5. **保存**: 設定ファイルを`.michi/config.json`に保存
|
|
337
382
|
|
|
338
383
|
### 設定項目
|
|
339
384
|
|
|
@@ -341,7 +386,7 @@ npm run config:interactive
|
|
|
341
386
|
- **ページタイトル形式**: カスタマイズ可能
|
|
342
387
|
- **JIRA Story作成粒度**: 全作成/フェーズごと/選択フェーズのみ
|
|
343
388
|
- **ワークフロー有効化フェーズ**: 要件定義/設計/タスク分割から選択
|
|
344
|
-
-
|
|
389
|
+
- **承認者**: 各フェーズの承認者を設定
|
|
345
390
|
|
|
346
391
|
## 設定ファイルのバリデーション
|
|
347
392
|
|
|
@@ -408,7 +453,7 @@ npm run config:validate
|
|
|
408
453
|
|
|
409
454
|
### 設定ファイルが読み込まれない
|
|
410
455
|
|
|
411
|
-
1. `.
|
|
456
|
+
1. `.michi/config.json`がプロジェクトルートに存在するか確認
|
|
412
457
|
2. JSONの構文エラーがないか確認
|
|
413
458
|
3. 設定ファイルのパスが正しいか確認
|
|
414
459
|
|
|
@@ -426,7 +471,14 @@ npm run config:validate
|
|
|
426
471
|
|
|
427
472
|
## 参考リンク
|
|
428
473
|
|
|
429
|
-
|
|
474
|
+
### Michi関連
|
|
475
|
+
- [セットアップガイド](../getting-started/setup.md)
|
|
430
476
|
- [ワークフローガイド](./workflow.md)
|
|
431
|
-
- [新規プロジェクトセットアップ](
|
|
477
|
+
- [新規プロジェクトセットアップ](../getting-started/new-project-setup.md)
|
|
478
|
+
- [設定値リファレンス](../reference/config.md)
|
|
479
|
+
|
|
480
|
+
### cc-sdd関連
|
|
481
|
+
- [cc-sdd カスタマイズガイド](https://github.com/gotalab/cc-sdd/blob/main/docs/guides/ja/customization-guide.md) - テンプレート・ルール・Steeringのカスタマイズ方法
|
|
482
|
+
- [cc-sdd コマンドリファレンス](https://github.com/gotalab/cc-sdd/blob/main/docs/guides/ja/command-reference.md) - `/kiro:steering-custom`などのコマンド詳細
|
|
483
|
+
- [cc-sdd Spec-Driven Guide](https://github.com/gotalab/cc-sdd/blob/main/docs/guides/ja/spec-driven.md) - 仕様駆動開発のワークフロー
|
|
432
484
|
|
|
@@ -0,0 +1,365 @@
|
|
|
1
|
+
# マルチプロジェクト管理ガイド
|
|
2
|
+
|
|
3
|
+
> **凡例について**: `<feature>` などの記号の意味は [README.md#凡例の記号説明](../README.md#凡例の記号説明) を参照してください。
|
|
4
|
+
|
|
5
|
+
## 概要
|
|
6
|
+
|
|
7
|
+
Michiは、複数プロジェクト(3-5案件)を同時並行で管理できるように設計されています。
|
|
8
|
+
|
|
9
|
+
## アーキテクチャ
|
|
10
|
+
|
|
11
|
+
### プロジェクト構成
|
|
12
|
+
|
|
13
|
+
**構成**: 1つのリポジトリ内で複数プロジェクトを管理します。各プロジェクトは独立したディレクトリに配置され、それぞれに`.kiro/project.json`を持ちます。
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
repository/ ← 1つのGitHubリポジトリ
|
|
17
|
+
├── projects/
|
|
18
|
+
│ ├── 20240115-payment-api/ ← プロジェクトA
|
|
19
|
+
│ │ └── .kiro/
|
|
20
|
+
│ │ ├── project.json
|
|
21
|
+
│ │ └── specs/
|
|
22
|
+
│ ├── 20240201-user-management/ ← プロジェクトB
|
|
23
|
+
│ │ └── .kiro/
|
|
24
|
+
│ └── 20240310-analytics-api/ ← プロジェクトC
|
|
25
|
+
│ └── .kiro/
|
|
26
|
+
└── michi/ ← 統合ハブ(オプション)
|
|
27
|
+
└── .kiro/
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
**プロジェクト識別方法**:
|
|
31
|
+
- 各プロジェクトディレクトリに`.kiro/project.json`を配置
|
|
32
|
+
- 作業ディレクトリ(`process.cwd()`)から`.kiro/project.json`を読み込んでプロジェクトを識別
|
|
33
|
+
- プロジェクト切り替えは、該当ディレクトリに移動するだけ
|
|
34
|
+
|
|
35
|
+
### 統合管理
|
|
36
|
+
|
|
37
|
+
**Confluence**: 共有スペース(PRD, QA, RELEASE)
|
|
38
|
+
- ラベルでプロジェクトを識別
|
|
39
|
+
- プロジェクト横断ダッシュボード
|
|
40
|
+
|
|
41
|
+
**JIRA**: プロジェクトキー別
|
|
42
|
+
- PRJA(プロジェクトA)
|
|
43
|
+
- PRJB(プロジェクトB)
|
|
44
|
+
- MICHI(統合ハブ)
|
|
45
|
+
|
|
46
|
+
## プロジェクトのセットアップ
|
|
47
|
+
|
|
48
|
+
### 新規プロジェクト追加
|
|
49
|
+
|
|
50
|
+
詳細な手順は [新規プロジェクトセットアップガイド](../getting-started/new-project-setup.md) を参照してください。
|
|
51
|
+
|
|
52
|
+
**クイックスタート**:
|
|
53
|
+
1. 既存リポジトリに追加: `bash /path/to/michi/scripts/setup-existing.sh`
|
|
54
|
+
2. 新規リポジトリ作成: `npm run create-project -- --name <id> --project-name <name> --jira-key <key>`
|
|
55
|
+
|
|
56
|
+
**マルチプロジェクト特有の注意点**:
|
|
57
|
+
- 1つのリポジトリ内で複数プロジェクトを管理
|
|
58
|
+
- 各プロジェクトは独立したディレクトリに配置
|
|
59
|
+
- `.kiro/project.json`でプロジェクトを識別
|
|
60
|
+
- Confluenceラベルでプロジェクト横断検索が可能
|
|
61
|
+
- プロジェクト切り替えは、該当ディレクトリに移動するだけ
|
|
62
|
+
|
|
63
|
+
### 環境変数設定
|
|
64
|
+
|
|
65
|
+
各プロジェクトで`.env`ファイルを設定します。詳細は [新規プロジェクトセットアップガイド](../getting-started/new-project-setup.md#step-5-環境変数設定) を参照してください。
|
|
66
|
+
|
|
67
|
+
### 動作確認
|
|
68
|
+
|
|
69
|
+
セットアップ完了後、プロジェクト情報を確認します:
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
# プロジェクト情報を表示
|
|
73
|
+
cat .kiro/project.json
|
|
74
|
+
|
|
75
|
+
# テスト機能で確認(オプション)
|
|
76
|
+
/kiro:spec-init テスト機能
|
|
77
|
+
/kiro:spec-requirements test-feature
|
|
78
|
+
npx @michi/cli phase:run test-feature requirements
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## プロジェクト切り替え
|
|
82
|
+
|
|
83
|
+
### 現在のプロジェクトを確認
|
|
84
|
+
|
|
85
|
+
作業中のプロジェクトを確認するには:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
# 現在のディレクトリを確認
|
|
89
|
+
pwd
|
|
90
|
+
|
|
91
|
+
# プロジェクト情報を表示
|
|
92
|
+
cat .kiro/project.json
|
|
93
|
+
|
|
94
|
+
# プロジェクトIDのみ表示
|
|
95
|
+
cat .kiro/project.json | grep projectId
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### Cursorで切り替え
|
|
99
|
+
|
|
100
|
+
Cursor IDE内でプロジェクトを切り替える場合:
|
|
101
|
+
|
|
102
|
+
**対話式切り替え(推奨)**:
|
|
103
|
+
```
|
|
104
|
+
/kiro:project-switch
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
パラメータを指定しない場合、リポジトリ内のプロジェクトリストが表示され、対話的に選択できます:
|
|
108
|
+
|
|
109
|
+
```
|
|
110
|
+
📋 利用可能なプロジェクト:
|
|
111
|
+
1. 20240115-payment-api (プロジェクトA サービス1) [active]
|
|
112
|
+
2. 20240201-user-management (プロジェクトA サービス2) [active]
|
|
113
|
+
3. 20240310-analytics-api (プロジェクトB API) [active]
|
|
114
|
+
|
|
115
|
+
選択してください (1-3): 1
|
|
116
|
+
|
|
117
|
+
✅ プロジェクト切り替え: 20240115-payment-api
|
|
118
|
+
📁 ディレクトリ: projects/20240115-payment-api
|
|
119
|
+
|
|
120
|
+
プロジェクト情報:
|
|
121
|
+
名前: プロジェクトA サービス1
|
|
122
|
+
JIRA: PRJA
|
|
123
|
+
Confluence Labels: project:20240115-payment-api, service:payment
|
|
124
|
+
ステータス: active
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
**直接指定**:
|
|
128
|
+
```
|
|
129
|
+
/kiro:project-switch 20240115-payment-api
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
**実行内容**:
|
|
133
|
+
1. プロジェクトIDに対応するディレクトリを特定(`projects/20240115-payment-api`)
|
|
134
|
+
2. 該当ディレクトリに移動(Cursorの作業ディレクトリを変更)
|
|
135
|
+
3. `.kiro/project.json` を読み込んで表示
|
|
136
|
+
4. プロジェクト情報を表示
|
|
137
|
+
|
|
138
|
+
### ターミナルで切り替え
|
|
139
|
+
|
|
140
|
+
ターミナルでプロジェクトを切り替える場合:
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
# リポジトリルートに移動
|
|
144
|
+
cd /path/to/repository
|
|
145
|
+
|
|
146
|
+
# プロジェクトAに切り替え
|
|
147
|
+
cd projects/20240115-payment-api
|
|
148
|
+
|
|
149
|
+
# プロジェクト情報を確認
|
|
150
|
+
cat .kiro/project.json
|
|
151
|
+
|
|
152
|
+
# プロジェクトBに切り替え
|
|
153
|
+
cd ../20240310-analytics-api
|
|
154
|
+
|
|
155
|
+
# プロジェクト情報を確認
|
|
156
|
+
cat .kiro/project.json
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
**ショートカット**:
|
|
160
|
+
```bash
|
|
161
|
+
# プロジェクトディレクトリへのエイリアスを設定(.zshrc または .bashrc)
|
|
162
|
+
alias pj-a='cd /path/to/repository/projects/20240115-payment-api'
|
|
163
|
+
alias pj-b='cd /path/to/repository/projects/20240310-analytics-api'
|
|
164
|
+
|
|
165
|
+
# 使用例
|
|
166
|
+
pj-a
|
|
167
|
+
cat .kiro/project.json
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
### 切り替え後の確認
|
|
171
|
+
|
|
172
|
+
プロジェクト切り替え後、以下のコマンドで正しく切り替わったか確認:
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
# 現在のディレクトリを確認
|
|
176
|
+
pwd
|
|
177
|
+
|
|
178
|
+
# プロジェクト情報を表示
|
|
179
|
+
cat .kiro/project.json
|
|
180
|
+
|
|
181
|
+
# プロジェクトIDを確認
|
|
182
|
+
cat .kiro/project.json | jq .projectId
|
|
183
|
+
|
|
184
|
+
# 仕様書の一覧を確認
|
|
185
|
+
ls -la .kiro/specs/
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
### よくあるトラブル
|
|
189
|
+
|
|
190
|
+
#### プロジェクトが見つからない
|
|
191
|
+
|
|
192
|
+
**症状**: `/kiro:project-switch`でエラーが発生する
|
|
193
|
+
|
|
194
|
+
**原因と解決方法**:
|
|
195
|
+
1. プロジェクトディレクトリが存在するか確認
|
|
196
|
+
```bash
|
|
197
|
+
ls -la projects/
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
2. プロジェクトIDが正しいか確認
|
|
201
|
+
```bash
|
|
202
|
+
cat projects/20240115-payment-api/.kiro/project.json | grep projectId
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
3. パスが正しいか確認(絶対パスまたはリポジトリルートからの相対パス)
|
|
206
|
+
|
|
207
|
+
#### `.kiro/project.json`が見つからない
|
|
208
|
+
|
|
209
|
+
**症状**: プロジェクトディレクトリに移動したが、`.kiro/project.json`が存在しない
|
|
210
|
+
|
|
211
|
+
**解決方法**:
|
|
212
|
+
1. プロジェクトディレクトリが正しいか確認
|
|
213
|
+
2. `.kiro/project.json`を作成([新規プロジェクトセットアップガイド](../getting-started/new-project-setup.md)を参照)
|
|
214
|
+
|
|
215
|
+
## プロジェクト横断操作
|
|
216
|
+
|
|
217
|
+
### すべてのプロジェクトを一覧表示
|
|
218
|
+
|
|
219
|
+
```bash
|
|
220
|
+
npm run project:list
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
出力例:
|
|
224
|
+
```
|
|
225
|
+
📋 プロジェクト一覧:
|
|
226
|
+
|
|
227
|
+
| プロジェクト | ID | ステータス | JIRA | チーム |
|
|
228
|
+
|------------|-------|----------|------|--------|
|
|
229
|
+
| Michi | michi | active | MICHI | @developer1 |
|
|
230
|
+
| プロジェクトA サービス1 | 20240115-payment-api | active | PRJA | @dev1, @dev2 |
|
|
231
|
+
| プロジェクトB API | 20240310-analytics-api | active | PRJB | @dev3 |
|
|
232
|
+
|
|
233
|
+
合計: 3 プロジェクト
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
### リソースダッシュボード生成
|
|
237
|
+
|
|
238
|
+
```bash
|
|
239
|
+
npm run project:dashboard
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
Confluenceに「プロジェクトリソースダッシュボード」ページを作成します。
|
|
243
|
+
|
|
244
|
+
### プロジェクト横断見積もり集計
|
|
245
|
+
|
|
246
|
+
```bash
|
|
247
|
+
npm run multi-estimate
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
すべてのプロジェクトの見積もりを集計し、Excelファイルに出力します。
|
|
251
|
+
|
|
252
|
+
## Confluenceダッシュボード
|
|
253
|
+
|
|
254
|
+
### プロジェクト一覧ページ
|
|
255
|
+
|
|
256
|
+
Confluenceで作成:
|
|
257
|
+
|
|
258
|
+
**ページタイトル**: プロジェクト一覧
|
|
259
|
+
|
|
260
|
+
**コンテンツ**:
|
|
261
|
+
```
|
|
262
|
+
{report-table:space=PRD|label=requirements|columns=title,labels,status}
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
**フィルタ例**:
|
|
266
|
+
- プロジェクトAのみ: `label = "project:20240115-payment-api"`
|
|
267
|
+
- レビュー待ち: `status = "レビュー待ち"`
|
|
268
|
+
- 設計フェーズ: `label = "design"`
|
|
269
|
+
|
|
270
|
+
### JIRAダッシュボード
|
|
271
|
+
|
|
272
|
+
**フィルタ**:
|
|
273
|
+
```
|
|
274
|
+
project IN (MICHI, PRJA, PRJB) AND status IN ("In Progress", "In Review")
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
**グルーピング**: プロジェクトキー別
|
|
278
|
+
|
|
279
|
+
**集計**: ストーリーポイント合計
|
|
280
|
+
|
|
281
|
+
## プロジェクト間の依存関係
|
|
282
|
+
|
|
283
|
+
プロジェクトは基本的に独立していますが、共通基盤がある場合:
|
|
284
|
+
|
|
285
|
+
### 共通ライブラリプロジェクト
|
|
286
|
+
|
|
287
|
+
```
|
|
288
|
+
shared-infrastructure/
|
|
289
|
+
└── .kiro/
|
|
290
|
+
└── project.json
|
|
291
|
+
{
|
|
292
|
+
"projectId": "shared-infra",
|
|
293
|
+
"projectName": "共通基盤",
|
|
294
|
+
"jiraProjectKey": "INFRA",
|
|
295
|
+
...
|
|
296
|
+
}
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
### 依存関係の記述
|
|
300
|
+
|
|
301
|
+
各プロジェクトの `.kiro/project.json` に追加:
|
|
302
|
+
```json
|
|
303
|
+
{
|
|
304
|
+
"dependencies": ["shared-infra"],
|
|
305
|
+
"dependents": ["20240115-payment-api", "20240310-analytics-api"]
|
|
306
|
+
}
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
## ベストプラクティス
|
|
310
|
+
|
|
311
|
+
### 命名規則の統一
|
|
312
|
+
|
|
313
|
+
**プロジェクトID**: `{YYYYMMDD}-{PJ名}`
|
|
314
|
+
- 例: `20240115-payment-api`, `20240201-user-management`
|
|
315
|
+
- 形式: `YYYYMMDD-{kebab-case-name}`
|
|
316
|
+
- 開始日はプロジェクト開始日(YYYYMMDD形式、ハイフンなし)
|
|
317
|
+
- プロジェクトディレクトリ名としても使用
|
|
318
|
+
|
|
319
|
+
**JIRA プロジェクトキー**: 3-4文字
|
|
320
|
+
- 例: `PRJA`, `PRJB`, `MICHI`
|
|
321
|
+
|
|
322
|
+
**Confluenceラベル**: `project:{projectId}, service:{service}`
|
|
323
|
+
- 例: `project:20240115-payment-api, service:payment`
|
|
324
|
+
|
|
325
|
+
**ラベル生成ロジック**: 詳細は [新規プロジェクトセットアップガイド](../getting-started/new-project-setup.md#ラベル生成ロジック) を参照してください。
|
|
326
|
+
### チーム構成の明確化
|
|
327
|
+
|
|
328
|
+
各プロジェクトの `team` フィールドに担当者を記載:
|
|
329
|
+
```json
|
|
330
|
+
{
|
|
331
|
+
"team": ["@tech-lead", "@frontend-dev", "@backend-dev"]
|
|
332
|
+
}
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
### ステータス管理
|
|
336
|
+
|
|
337
|
+
プロジェクトのステータスを適切に更新:
|
|
338
|
+
- `active`: 開発中
|
|
339
|
+
- `maintenance`: 保守フェーズ
|
|
340
|
+
- `completed`: 完了
|
|
341
|
+
- `inactive`: 休止中
|
|
342
|
+
|
|
343
|
+
## トラブルシューティング
|
|
344
|
+
|
|
345
|
+
### プロジェクトが一覧に表示されない
|
|
346
|
+
|
|
347
|
+
`.kiro/project.json` が正しく作成されているか確認:
|
|
348
|
+
```bash
|
|
349
|
+
cat .kiro/project.json
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
### Confluenceで他のプロジェクトが見える
|
|
353
|
+
|
|
354
|
+
ラベルでフィルタリング:
|
|
355
|
+
```
|
|
356
|
+
label = "project:michi"
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
### JIRA チケットが混在
|
|
360
|
+
|
|
361
|
+
プロジェクトキーでフィルタリング:
|
|
362
|
+
```
|
|
363
|
+
project = MICHI
|
|
364
|
+
```
|
|
365
|
+
|