@sk8metal/michi-cli 0.10.1 → 0.11.0
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/README.md +77 -847
- package/dist/scripts/phase-runner.js +1 -1
- package/dist/scripts/phase-runner.js.map +1 -1
- package/dist/scripts/utils/multi-repo-validator.d.ts +18 -0
- package/dist/scripts/utils/multi-repo-validator.d.ts.map +1 -1
- package/dist/scripts/utils/multi-repo-validator.js +42 -0
- package/dist/scripts/utils/multi-repo-validator.js.map +1 -1
- package/dist/scripts/utils/tasks-format-validator.js +3 -3
- package/dist/scripts/utils/tasks-format-validator.js.map +1 -1
- package/docs/README.md +20 -83
- package/docs/getting-started/configuration.md +379 -0
- package/docs/getting-started/installation.md +59 -0
- package/docs/getting-started/quick-start.md +76 -0
- package/docs/guides/ai-tools.md +311 -0
- package/docs/guides/atlassian-integration.md +116 -0
- package/docs/guides/claude-code.md +155 -0
- package/docs/guides/multi-repo.md +117 -0
- package/docs/guides/workflow.md +382 -0
- package/docs/reference/ai-commands.md +92 -0
- package/docs/reference/cli.md +756 -0
- package/docs/reference/environment-variables.md +192 -0
- package/docs/troubleshooting.md +543 -0
- package/package.json +1 -1
- package/scripts/phase-runner.ts +1 -1
- package/scripts/utils/__tests__/multi-repo-validator.test.ts +159 -1
- package/scripts/utils/multi-repo-validator.ts +50 -0
- package/scripts/utils/tasks-format-validator.ts +3 -3
- package/templates/claude/agents/e2e-first-planner/AGENT.md +1 -1
- package/templates/claude/agents/pr-resolver/AGENT.md +15 -3
- package/templates/claude/commands/michi/e2e-plan.md +1 -1
- package/templates/claude/commands/michi/spec-design.md +2 -2
- package/templates/claude/commands/michi/spec-tasks.md +156 -0
- package/templates/claude/commands/michi/test-planning.md +1 -1
- package/templates/claude/commands/michi/validate-design.md +3 -3
- package/templates/claude/commands/michi-multi-repo/impl-all.md +30 -1
- package/templates/claude/commands/michi-multi-repo/propagate-specs.md +14 -1
- package/templates/claude/commands/michi-multi-repo/spec-review.md +16 -2
- package/templates/claude-agent/agents/repo-spec-executor.md +1 -1
- package/templates/claude-agent/commands/michi/spec-tasks.md +117 -0
- package/templates/claude-agent/rules/code-size-monitor.md +26 -0
- package/templates/claude-agent/rules/code-size-rules.md +32 -0
- package/templates/codex/AGENTS.override.md +1 -1
- package/templates/codex/rules/README.md +2 -2
- package/templates/cursor/commands/michi/spec-tasks.md +117 -0
- package/templates/michi/cc-sdd-overrides/settings/rules/design-review-michi.md +1 -1
- package/docs/context.md +0 -59
- package/docs/michi-development/contributing/development.md +0 -341
- package/docs/michi-development/contributing/release.md +0 -365
- package/docs/michi-development/design/config-unification.md +0 -733
- package/docs/michi-development/design/design-config-current-state.md +0 -330
- package/docs/michi-development/design/design-config-implementation.md +0 -628
- package/docs/michi-development/design/design-config-migration.md +0 -952
- package/docs/michi-development/design/design-config-security.md +0 -771
- package/docs/michi-development/design/design-config-solution.md +0 -583
- package/docs/michi-development/design/design-config-testing.md +0 -892
- package/docs/michi-development/testing/manual-verification-flow.md +0 -871
- package/docs/michi-development/testing/manual-verification-other-tools.md +0 -1279
- package/docs/michi-development/testing/manual-verification-troubleshooting.md +0 -122
- package/docs/michi-development/testing/pre-publish-checklist.md +0 -560
- package/docs/michi-development/testing-strategy.md +0 -87
- package/docs/plan.md +0 -275
- package/docs/user-guide/getting-started/github-token-setup.md +0 -510
- package/docs/user-guide/getting-started/new-repository-setup.md +0 -704
- package/docs/user-guide/getting-started/quick-start.md +0 -212
- package/docs/user-guide/getting-started/setup.md +0 -819
- package/docs/user-guide/guides/agent-skills-integration.md +0 -222
- package/docs/user-guide/guides/customization.md +0 -537
- package/docs/user-guide/guides/internationalization.md +0 -540
- package/docs/user-guide/guides/migration-guide.md +0 -138
- package/docs/user-guide/guides/multi-project.md +0 -368
- package/docs/user-guide/guides/multi-repo-guide.md +0 -1590
- package/docs/user-guide/guides/phase-automation.md +0 -419
- package/docs/user-guide/guides/workflow.md +0 -574
- package/docs/user-guide/hands-on/README.md +0 -142
- package/docs/user-guide/hands-on/claude-agent-setup.md +0 -597
- package/docs/user-guide/hands-on/claude-setup.md +0 -452
- package/docs/user-guide/hands-on/cursor-setup.md +0 -353
- package/docs/user-guide/hands-on/troubleshooting.md +0 -964
- package/docs/user-guide/hands-on/verification-checklist.md +0 -439
- package/docs/user-guide/hands-on/workflow-walkthrough.md +0 -1078
- package/docs/user-guide/reference/config.md +0 -589
- package/docs/user-guide/reference/multi-repo-api.md +0 -771
- package/docs/user-guide/reference/quick-reference.md +0 -297
- package/docs/user-guide/reference/security-test-payloads.md +0 -50
- package/docs/user-guide/reference/tasks-template.md +0 -550
- package/docs/user-guide/release/ci-setup-java.md +0 -114
- package/docs/user-guide/release/ci-setup-nodejs.md +0 -94
- package/docs/user-guide/release/ci-setup-php.md +0 -102
- package/docs/user-guide/release/ci-setup-troubleshooting.md +0 -94
- package/docs/user-guide/release/ci-setup.md +0 -188
- package/docs/user-guide/release/release-flow.md +0 -476
- package/docs/user-guide/templates/test-specs/README.md +0 -173
- package/docs/user-guide/templates/test-specs/e2e-test-spec-template.md +0 -553
- package/docs/user-guide/templates/test-specs/integration-test-spec-template.md +0 -435
- package/docs/user-guide/templates/test-specs/performance-test-spec-template.md +0 -454
- package/docs/user-guide/templates/test-specs/security-test-spec-template.md +0 -625
- package/docs/user-guide/templates/test-specs/unit-test-spec-template.md +0 -328
- package/docs/user-guide/testing/integration-tests.md +0 -312
- package/docs/user-guide/testing/tdd-cycle.md +0 -349
- package/docs/user-guide/testing/test-execution-flow.md +0 -396
- package/docs/user-guide/testing/test-failure-handling.md +0 -521
- package/docs/user-guide/testing/test-planning-flow.md +0 -185
- package/docs/user-guide/testing-strategy.md +0 -185
- package/docs/verification-guide.md +0 -518
|
@@ -1,704 +0,0 @@
|
|
|
1
|
-
# 新規リポジトリセットアップガイド
|
|
2
|
-
|
|
3
|
-
> **凡例について**: `<feature>` などの記号の意味は [README.md#凡例の記号説明](../README.md#凡例の記号説明) を参照してください。
|
|
4
|
-
|
|
5
|
-
新規リポジトリを作成してMichiを使い始める手順です。
|
|
6
|
-
|
|
7
|
-
## クイックスタート
|
|
8
|
-
|
|
9
|
-
### 方法1: 新規プロジェクト自動作成(新規リポジトリ)
|
|
10
|
-
|
|
11
|
-
GitHubに新規リポジトリを作成してプロジェクトをセットアップ:
|
|
12
|
-
|
|
13
|
-
```bash
|
|
14
|
-
# Michiリポジトリから実行
|
|
15
|
-
cd /path/to/michi
|
|
16
|
-
|
|
17
|
-
# 凡例
|
|
18
|
-
npm run create-project -- \
|
|
19
|
-
--name "<project-id>" \
|
|
20
|
-
--project-name "<project-name>" \
|
|
21
|
-
--jira-key "<jira-key>"
|
|
22
|
-
|
|
23
|
-
# 具体例
|
|
24
|
-
npm run create-project -- \
|
|
25
|
-
--name "20240115-payment-api" \
|
|
26
|
-
--project-name "プロジェクトA" \
|
|
27
|
-
--jira-key "PRJA"
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
スクリプトが自動的に:
|
|
31
|
-
1. GitHub リポジトリ作成
|
|
32
|
-
2. `projects/{project-id}/`ディレクトリ作成
|
|
33
|
-
3. cc-sdd 導入
|
|
34
|
-
4. `projects/{project-id}/.kiro/project.json` 作成
|
|
35
|
-
5. 共通ファイルコピー
|
|
36
|
-
6. `projects/{project-id}/.env` テンプレート作成
|
|
37
|
-
7. npm install(リポジトリルートで実行)
|
|
38
|
-
8. 初期コミット(`main`ブランチ作成)
|
|
39
|
-
|
|
40
|
-
**注意**: プッシュは手動で実行する必要があります。スクリプト完了後、以下のコマンドを実行してください:
|
|
41
|
-
|
|
42
|
-
```bash
|
|
43
|
-
# Jujutsu (jj) を使用する場合
|
|
44
|
-
jj git push --bookmark main --allow-new
|
|
45
|
-
|
|
46
|
-
# Git を使用する場合
|
|
47
|
-
git push -u origin main
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
**重要**: すべてのプロジェクトは`projects/{project-id}/`配下に配置されます。
|
|
51
|
-
|
|
52
|
-
### 方法2: 既存プロジェクトにMichi共通ルール・コマンドを追加(推奨 - 既存リポジトリ)
|
|
53
|
-
|
|
54
|
-
既存のリポジトリにMichiを導入する推奨ワークフロー:
|
|
55
|
-
|
|
56
|
-
#### cc-sdd準拠の3ステップ
|
|
57
|
-
|
|
58
|
-
```bash
|
|
59
|
-
# Step 1: cc-sddで標準ファイル生成
|
|
60
|
-
npx cc-sdd@latest --cursor --lang ja
|
|
61
|
-
|
|
62
|
-
# Step 2: Michi固有ファイルを追加
|
|
63
|
-
npx @sk8metal/michi-cli setup-existing --cursor --lang ja
|
|
64
|
-
# または npm run michi:setup:cursor
|
|
65
|
-
|
|
66
|
-
# Step 3: 環境設定
|
|
67
|
-
npm run setup:interactive
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
#### IDE別実行例
|
|
71
|
-
|
|
72
|
-
**Cursor IDE(推奨)**:
|
|
73
|
-
|
|
74
|
-
```bash
|
|
75
|
-
# 既存プロジェクトのディレクトリに移動
|
|
76
|
-
cd /path/to/existing-repo
|
|
77
|
-
|
|
78
|
-
# Step 1: cc-sdd導入
|
|
79
|
-
npx cc-sdd@latest --cursor --lang ja
|
|
80
|
-
|
|
81
|
-
# Step 2: Michi固有ファイル追加
|
|
82
|
-
npx @sk8metal/michi-cli setup-existing --cursor --lang ja
|
|
83
|
-
# または npm run michi:setup:cursor
|
|
84
|
-
|
|
85
|
-
# Step 3: 環境設定
|
|
86
|
-
npm run setup:interactive
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
**Claude Code**:
|
|
90
|
-
|
|
91
|
-
```bash
|
|
92
|
-
# 既存プロジェクトのディレクトリに移動
|
|
93
|
-
cd /path/to/existing-repo
|
|
94
|
-
|
|
95
|
-
# Step 1: cc-sdd導入
|
|
96
|
-
npx cc-sdd@latest --claude --lang ja
|
|
97
|
-
|
|
98
|
-
# Step 2: Michi固有ファイル追加
|
|
99
|
-
npx @sk8metal/michi-cli setup-existing --claude --lang ja
|
|
100
|
-
# または npm run michi:setup:claude
|
|
101
|
-
|
|
102
|
-
# Step 3: 環境設定
|
|
103
|
-
npm run setup:interactive
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
**その他のIDE(Gemini, Codex, Windsurf)**:
|
|
107
|
-
|
|
108
|
-
```bash
|
|
109
|
-
# 既存プロジェクトのディレクトリに移動
|
|
110
|
-
cd /path/to/existing-repo
|
|
111
|
-
|
|
112
|
-
# Step 1: cc-sdd導入(IDE別)
|
|
113
|
-
npx cc-sdd@latest --gemini --lang ja # Gemini CLI
|
|
114
|
-
npx cc-sdd@next --codex --lang ja # Codex CLI
|
|
115
|
-
npx cc-sdd@next --windsurf --lang ja # Windsurf IDE
|
|
116
|
-
|
|
117
|
-
# Step 2: Michi固有ファイル追加(Cursor互換モード)
|
|
118
|
-
npx @sk8metal/michi-cli setup-existing --cursor --lang ja
|
|
119
|
-
|
|
120
|
-
# Step 3: 環境設定
|
|
121
|
-
npm run setup:interactive
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
#### 自動的に追加されるもの
|
|
125
|
-
|
|
126
|
-
このワークフローにより以下が自動的に追加されます:
|
|
127
|
-
|
|
128
|
-
1. **cc-sdd導入(Step 1)**:
|
|
129
|
-
- `.kiro/settings/` - テンプレート設定
|
|
130
|
-
- `.cursor/commands/kiro/` または `.claude/commands/kiro/` - 11のスラッシュコマンド
|
|
131
|
-
- `CLAUDE.md` - プロジェクト設定
|
|
132
|
-
|
|
133
|
-
2. **Michi固有ファイル追加(Step 2)**:
|
|
134
|
-
- 共通ルール(`.cursor/rules/` または `.claude/rules/`)
|
|
135
|
-
- Michi専用コマンド(`.cursor/commands/michi/` または `.claude/commands/michi/`)
|
|
136
|
-
- Steeringテンプレート(`.kiro/steering/`)
|
|
137
|
-
- Specテンプレート(`.kiro/settings/templates/`)
|
|
138
|
-
- プロジェクトメタデータ(`.kiro/project.json`)
|
|
139
|
-
- 環境変数テンプレート(`.env`)
|
|
140
|
-
|
|
141
|
-
3. **環境設定(Step 3)**:
|
|
142
|
-
- 対話的に `project.json` と `.env` を設定
|
|
143
|
-
|
|
144
|
-
**重要**: すべてのプロジェクトは`projects/{project-id}/`配下に配置されます。
|
|
145
|
-
|
|
146
|
-
**完了後**:
|
|
147
|
-
```bash
|
|
148
|
-
# 認証情報を設定
|
|
149
|
-
vim .env
|
|
150
|
-
|
|
151
|
-
# 依存関係インストール(package.jsonが新規作成された場合)
|
|
152
|
-
npm install
|
|
153
|
-
|
|
154
|
-
# セットアップをコミット
|
|
155
|
-
# Jujutsu (jj) を使用する場合:
|
|
156
|
-
jj commit -m "chore: Michiワークフロー追加"
|
|
157
|
-
jj git push
|
|
158
|
-
|
|
159
|
-
# Git を使用する場合:
|
|
160
|
-
git add .
|
|
161
|
-
git commit -m "chore: Michiワークフロー追加"
|
|
162
|
-
git push
|
|
163
|
-
|
|
164
|
-
# 開発開始
|
|
165
|
-
cursor .
|
|
166
|
-
/kiro:spec-init <機能説明>
|
|
167
|
-
```
|
|
168
|
-
|
|
169
|
-
### 方法3: 手動セットアップ
|
|
170
|
-
|
|
171
|
-
詳細な制御が必要な場合は、以下の手順で手動セットアップします。
|
|
172
|
-
|
|
173
|
-
## 手動セットアップ手順
|
|
174
|
-
|
|
175
|
-
### Step 1: GitHubリポジトリ作成
|
|
176
|
-
|
|
177
|
-
#### Jujutsu (jj) を使用する場合
|
|
178
|
-
|
|
179
|
-
```bash
|
|
180
|
-
# GitHub CLI で新規リポジトリ作成
|
|
181
|
-
gh repo create your-org/20240115-payment-api --private --description "プロジェクトA"
|
|
182
|
-
|
|
183
|
-
# ローカルにクローン
|
|
184
|
-
cd ~/work/projects
|
|
185
|
-
jj git clone https://github.com/your-org/20240115-payment-api
|
|
186
|
-
cd 20240115-payment-api
|
|
187
|
-
```
|
|
188
|
-
|
|
189
|
-
#### Git を使用する場合
|
|
190
|
-
|
|
191
|
-
```bash
|
|
192
|
-
# GitHub CLI で新規リポジトリ作成
|
|
193
|
-
gh repo create your-org/20240115-payment-api --private --description "プロジェクトA"
|
|
194
|
-
|
|
195
|
-
# ローカルにクローン
|
|
196
|
-
cd ~/work/projects
|
|
197
|
-
git clone https://github.com/your-org/20240115-payment-api
|
|
198
|
-
cd 20240115-payment-api
|
|
199
|
-
```
|
|
200
|
-
|
|
201
|
-
### Step 2: cc-sdd 導入
|
|
202
|
-
|
|
203
|
-
```bash
|
|
204
|
-
# cc-sddをインストール
|
|
205
|
-
npx cc-sdd@latest --cursor --lang ja --yes
|
|
206
|
-
```
|
|
207
|
-
|
|
208
|
-
これにより以下が作成されます:
|
|
209
|
-
- `.cursor/commands/kiro/`: 11のスラッシュコマンド
|
|
210
|
-
- 基本的なプロジェクト構造
|
|
211
|
-
|
|
212
|
-
### Step 3: プロジェクトメタデータ作成
|
|
213
|
-
|
|
214
|
-
`.kiro/project.json` を作成:
|
|
215
|
-
|
|
216
|
-
```json
|
|
217
|
-
{
|
|
218
|
-
"projectId": "20240115-payment-api",
|
|
219
|
-
"projectName": "プロジェクトA",
|
|
220
|
-
"jiraProjectKey": "PRJA",
|
|
221
|
-
"confluenceLabels": ["project:20240115-payment-api", "service:payment"],
|
|
222
|
-
"status": "active",
|
|
223
|
-
"team": ["@dev1", "@dev2"],
|
|
224
|
-
"stakeholders": ["@企画", "@部長"],
|
|
225
|
-
"repository": "https://github.com/your-org/20240115-payment-api",
|
|
226
|
-
"description": "プロジェクトA向け決済APIの開発"
|
|
227
|
-
}
|
|
228
|
-
```
|
|
229
|
-
|
|
230
|
-
**重要なフィールド**:
|
|
231
|
-
- `projectId`: リポジトリ名と一致させる
|
|
232
|
-
- `jiraProjectKey`: JIRA プロジェクトキー(一意)
|
|
233
|
-
- `confluenceLabels`: プロジェクト識別用ラベル(`project:{projectId}`形式で自動生成)
|
|
234
|
-
|
|
235
|
-
**ラベル生成ロジック**:
|
|
236
|
-
|
|
237
|
-
プロジェクトラベルは常に生成され、サービスラベルは条件付きで生成されます:
|
|
238
|
-
|
|
239
|
-
- **プロジェクトラベル**: `project:{projectId}` を常に生成
|
|
240
|
-
- **サービスラベル**: ハイフン(`-`)が含まれる場合のみ生成
|
|
241
|
-
- ハイフンがない場合: `project:michi` のみ(サービスラベルなし)
|
|
242
|
-
- ハイフンがある場合: `project:20240115-payment-api, service:payment`
|
|
243
|
-
- 重複防止: サービスラベルがプロジェクトラベルと同一の場合は追加しない
|
|
244
|
-
|
|
245
|
-
**動作例**:
|
|
246
|
-
- `projectId: 'michi'` → `['project:michi']`(サービスラベルなし)
|
|
247
|
-
- `projectId: '20240115-payment-api'` → `['project:20240115-payment-api', 'service:payment']`
|
|
248
|
-
- `projectId: 'michi-service'` → `['project:michi-service']`(サービスラベルがプロジェクトラベルと同一のため追加しない)
|
|
249
|
-
### Step 5: Michiから共通設定をコピー
|
|
250
|
-
|
|
251
|
-
Michiリポジトリから必要なファイルをコピー:
|
|
252
|
-
|
|
253
|
-
```bash
|
|
254
|
-
# Michiリポジトリの場所
|
|
255
|
-
MICHI_PATH=/path/to/michi
|
|
256
|
-
|
|
257
|
-
# ルールファイルをコピー
|
|
258
|
-
cp $MICHI_PATH/.cursor/rules/multi-project.mdc .cursor/rules/
|
|
259
|
-
cp $MICHI_PATH/.cursor/rules/github-ssot.mdc .cursor/rules/
|
|
260
|
-
cp $MICHI_PATH/.cursor/rules/atlassian-mcp.mdc .cursor/rules/
|
|
261
|
-
|
|
262
|
-
# カスタムコマンドをコピー(v0.8.7以降の構造)
|
|
263
|
-
mkdir -p .cursor/commands/michi
|
|
264
|
-
cp $MICHI_PATH/.cursor/commands/michi/confluence-sync.md .cursor/commands/michi/
|
|
265
|
-
cp $MICHI_PATH/.cursor/commands/michi/project-switch.md .cursor/commands/michi/
|
|
266
|
-
|
|
267
|
-
# Steeringテンプレートをコピー
|
|
268
|
-
mkdir -p .kiro/steering
|
|
269
|
-
cp $MICHI_PATH/.kiro/steering/*.md .kiro/steering/
|
|
270
|
-
|
|
271
|
-
# package.json と tsconfig.json をコピー(必要に応じて)
|
|
272
|
-
# 注意: スクリプトはコピーしません。CLIツールを使用します
|
|
273
|
-
cp $MICHI_PATH/tsconfig.json .
|
|
274
|
-
```
|
|
275
|
-
|
|
276
|
-
### Step 6: 環境変数設定
|
|
277
|
-
|
|
278
|
-
**重要**: `.env`ファイルは`projects/{project-id}/`配下に作成します。
|
|
279
|
-
|
|
280
|
-
#### 方法A: 対話的設定ツールを使用(推奨)
|
|
281
|
-
|
|
282
|
-
対話的設定ツールを使用すると、`project.json`と`.env`を一度に設定できます:
|
|
283
|
-
|
|
284
|
-
```bash
|
|
285
|
-
# リポジトリルートから実行
|
|
286
|
-
cd /path/to/repository
|
|
287
|
-
npm run setup:interactive
|
|
288
|
-
|
|
289
|
-
# または直接実行
|
|
290
|
-
npx tsx /path/to/michi/scripts/setup-interactive.ts
|
|
291
|
-
```
|
|
292
|
-
|
|
293
|
-
**機能**:
|
|
294
|
-
- `project.json`と`.env`を対話的に設定
|
|
295
|
-
- 既存の設定値を読み込んで編集可能
|
|
296
|
-
- 複数プロジェクトが存在する場合、プロジェクトを選択可能
|
|
297
|
-
- 必須項目のバリデーション
|
|
298
|
-
- 新規プロジェクトの場合、`projects/{project-id}/`配下に自動作成
|
|
299
|
-
|
|
300
|
-
詳細は [セットアップガイド](./setup.md#対話的設定ツール) を参照してください。
|
|
301
|
-
|
|
302
|
-
#### 方法B: 手動で.envファイルを作成
|
|
303
|
-
|
|
304
|
-
対話的設定ツールを使用しない場合は、手動で`.env`ファイルを作成します:
|
|
305
|
-
|
|
306
|
-
```bash
|
|
307
|
-
# プロジェクトディレクトリに移動
|
|
308
|
-
cd projects/20240115-payment-api
|
|
309
|
-
|
|
310
|
-
# .env テンプレート作成
|
|
311
|
-
cat > .env << 'EOF'
|
|
312
|
-
# Atlassian設定(MCP + REST API共通)
|
|
313
|
-
ATLASSIAN_URL=https://your-domain.atlassian.net
|
|
314
|
-
ATLASSIAN_EMAIL=your-email@company.com
|
|
315
|
-
ATLASSIAN_API_TOKEN=your-token-here
|
|
316
|
-
|
|
317
|
-
# GitHub設定
|
|
318
|
-
GITHUB_ORG=your-org
|
|
319
|
-
GITHUB_TOKEN=ghp_xxx
|
|
320
|
-
# Note: リポジトリ情報は .kiro/project.json の repository フィールドで管理されます
|
|
321
|
-
|
|
322
|
-
# Confluence共有スペース
|
|
323
|
-
CONFLUENCE_PRD_SPACE=PRD
|
|
324
|
-
CONFLUENCE_QA_SPACE=QA
|
|
325
|
-
CONFLUENCE_RELEASE_SPACE=RELEASE
|
|
326
|
-
|
|
327
|
-
# JIRAプロジェクトキー
|
|
328
|
-
JIRA_PROJECT_KEYS=PRJA
|
|
329
|
-
EOF
|
|
330
|
-
|
|
331
|
-
# 実際の認証情報を編集
|
|
332
|
-
# .env ファイルを編集してください
|
|
333
|
-
```
|
|
334
|
-
|
|
335
|
-
### Step 7: 依存関係インストール
|
|
336
|
-
|
|
337
|
-
**重要**: `package.json`と`tsconfig.json`はリポジトリルートに配置します。`npm install`はリポジトリルートで実行してください。
|
|
338
|
-
|
|
339
|
-
```bash
|
|
340
|
-
# リポジトリルートに移動
|
|
341
|
-
cd /path/to/repository
|
|
342
|
-
|
|
343
|
-
# 依存関係をインストール
|
|
344
|
-
npm install
|
|
345
|
-
```
|
|
346
|
-
|
|
347
|
-
### Step 8: 動作確認
|
|
348
|
-
|
|
349
|
-
#### Jujutsu (jj) を使用する場合
|
|
350
|
-
|
|
351
|
-
```bash
|
|
352
|
-
# プロジェクトディレクトリに移動
|
|
353
|
-
cd projects/20240115-payment-api
|
|
354
|
-
|
|
355
|
-
# プロジェクト情報を表示
|
|
356
|
-
cat .kiro/project.json
|
|
357
|
-
|
|
358
|
-
# TypeScriptコンパイル確認
|
|
359
|
-
npm run type-check
|
|
360
|
-
|
|
361
|
-
# Jujutsu初期化(まだの場合)
|
|
362
|
-
git init
|
|
363
|
-
jj git init
|
|
364
|
-
jj bookmark track main@origin
|
|
365
|
-
```
|
|
366
|
-
|
|
367
|
-
#### Git を使用する場合
|
|
368
|
-
|
|
369
|
-
```bash
|
|
370
|
-
# プロジェクト情報を表示
|
|
371
|
-
cat .kiro/project.json
|
|
372
|
-
|
|
373
|
-
# TypeScriptコンパイル確認
|
|
374
|
-
npm run type-check
|
|
375
|
-
|
|
376
|
-
# Git初期化(まだの場合)
|
|
377
|
-
git init
|
|
378
|
-
git branch -M main
|
|
379
|
-
git remote add origin https://github.com/your-org/20240115-payment-api.git
|
|
380
|
-
```
|
|
381
|
-
|
|
382
|
-
### Step 9: 初期コミット
|
|
383
|
-
|
|
384
|
-
#### Jujutsu (jj) を使用する場合
|
|
385
|
-
|
|
386
|
-
```bash
|
|
387
|
-
jj commit -m "chore: プロジェクト初期化
|
|
388
|
-
|
|
389
|
-
- cc-sdd導入
|
|
390
|
-
- プロジェクトメタデータ設定
|
|
391
|
-
- 自動化スクリプト追加
|
|
392
|
-
- ドキュメント追加"
|
|
393
|
-
|
|
394
|
-
jj bookmark create main -r '@-'
|
|
395
|
-
jj git push --bookmark main --allow-new
|
|
396
|
-
```
|
|
397
|
-
|
|
398
|
-
#### Git を使用する場合
|
|
399
|
-
|
|
400
|
-
```bash
|
|
401
|
-
# すべてのファイルをステージング
|
|
402
|
-
git add .
|
|
403
|
-
|
|
404
|
-
# 初期コミット
|
|
405
|
-
git commit -m "chore: プロジェクト初期化
|
|
406
|
-
|
|
407
|
-
- cc-sdd導入
|
|
408
|
-
- プロジェクトメタデータ設定
|
|
409
|
-
- 自動化スクリプト追加
|
|
410
|
-
- ドキュメント追加"
|
|
411
|
-
|
|
412
|
-
# mainブランチにプッシュ
|
|
413
|
-
git push -u origin main
|
|
414
|
-
```
|
|
415
|
-
|
|
416
|
-
## プロジェクト開始後の開発フロー
|
|
417
|
-
|
|
418
|
-
### 新機能開発
|
|
419
|
-
|
|
420
|
-
#### Jujutsu (jj) を使用する場合
|
|
421
|
-
|
|
422
|
-
```bash
|
|
423
|
-
# 1. 要件定義
|
|
424
|
-
# 凡例
|
|
425
|
-
/kiro:spec-init <機能説明>
|
|
426
|
-
/kiro:spec-requirements <feature>
|
|
427
|
-
jj commit -m "docs: 要件定義追加"
|
|
428
|
-
jj git push
|
|
429
|
-
npx @sk8metal/michi-cli phase:run <feature> requirements
|
|
430
|
-
|
|
431
|
-
# 具体例
|
|
432
|
-
/kiro:spec-init ユーザー認証機能
|
|
433
|
-
/kiro:spec-requirements user-auth
|
|
434
|
-
jj commit -m "docs: 要件定義追加"
|
|
435
|
-
jj git push
|
|
436
|
-
npx @sk8metal/michi-cli phase:run user-auth requirements
|
|
437
|
-
|
|
438
|
-
# 2. 設計
|
|
439
|
-
# 凡例
|
|
440
|
-
/kiro:spec-design <feature>
|
|
441
|
-
jj commit -m "docs: 設計追加"
|
|
442
|
-
jj git push
|
|
443
|
-
npx @sk8metal/michi-cli phase:run <feature> design
|
|
444
|
-
|
|
445
|
-
# 具体例
|
|
446
|
-
/kiro:spec-design user-auth
|
|
447
|
-
jj commit -m "docs: 設計追加"
|
|
448
|
-
jj git push
|
|
449
|
-
npx @sk8metal/michi-cli phase:run user-auth design
|
|
450
|
-
|
|
451
|
-
# 3. タスク分割
|
|
452
|
-
# 凡例
|
|
453
|
-
/kiro:spec-tasks <feature>
|
|
454
|
-
jj commit -m "docs: タスク分割追加"
|
|
455
|
-
jj git push
|
|
456
|
-
npx @sk8metal/michi-cli phase:run <feature> tasks
|
|
457
|
-
|
|
458
|
-
# 具体例
|
|
459
|
-
/kiro:spec-tasks user-auth
|
|
460
|
-
jj commit -m "docs: タスク分割追加"
|
|
461
|
-
jj git push
|
|
462
|
-
npx @sk8metal/michi-cli phase:run user-auth tasks
|
|
463
|
-
|
|
464
|
-
# 4. 実装
|
|
465
|
-
# 凡例
|
|
466
|
-
/kiro:spec-impl <feature> <tasks>
|
|
467
|
-
jj commit -m "feat: 実装 [<jira-key>-XXX]"
|
|
468
|
-
jj bookmark create <project-id>/feature/<feature> -r '@-'
|
|
469
|
-
jj git push --bookmark <project-id>/feature/<feature> --allow-new
|
|
470
|
-
gh pr create --head <project-id>/feature/<feature> --base main
|
|
471
|
-
|
|
472
|
-
# 具体例
|
|
473
|
-
/kiro:spec-impl user-auth FE-1,BE-1
|
|
474
|
-
jj commit -m "feat: 実装 [PRJA-123]"
|
|
475
|
-
jj bookmark create 20240115-payment-api/feature/user-auth -r '@-'
|
|
476
|
-
jj git push --bookmark 20240115-payment-api/feature/user-auth --allow-new
|
|
477
|
-
gh pr create --head 20240115-payment-api/feature/user-auth --base main
|
|
478
|
-
```
|
|
479
|
-
|
|
480
|
-
#### Git を使用する場合
|
|
481
|
-
|
|
482
|
-
```bash
|
|
483
|
-
# 1. 要件定義
|
|
484
|
-
# 凡例
|
|
485
|
-
/kiro:spec-init <機能説明>
|
|
486
|
-
/kiro:spec-requirements <feature>
|
|
487
|
-
git add .
|
|
488
|
-
git commit -m "docs: 要件定義追加"
|
|
489
|
-
git push
|
|
490
|
-
npx @sk8metal/michi-cli phase:run <feature> requirements
|
|
491
|
-
|
|
492
|
-
# 具体例
|
|
493
|
-
/kiro:spec-init ユーザー認証機能
|
|
494
|
-
/kiro:spec-requirements user-auth
|
|
495
|
-
git add .
|
|
496
|
-
git commit -m "docs: 要件定義追加"
|
|
497
|
-
git push
|
|
498
|
-
npx @sk8metal/michi-cli phase:run user-auth requirements
|
|
499
|
-
|
|
500
|
-
# 2. 設計
|
|
501
|
-
# 凡例
|
|
502
|
-
/kiro:spec-design <feature>
|
|
503
|
-
git add .
|
|
504
|
-
git commit -m "docs: 設計追加"
|
|
505
|
-
git push
|
|
506
|
-
npx @sk8metal/michi-cli phase:run <feature> design
|
|
507
|
-
|
|
508
|
-
# 具体例
|
|
509
|
-
/kiro:spec-design user-auth
|
|
510
|
-
git add .
|
|
511
|
-
git commit -m "docs: 設計追加"
|
|
512
|
-
git push
|
|
513
|
-
npx @sk8metal/michi-cli phase:run user-auth design
|
|
514
|
-
|
|
515
|
-
# 3. タスク分割
|
|
516
|
-
# 凡例
|
|
517
|
-
/kiro:spec-tasks <feature>
|
|
518
|
-
git add .
|
|
519
|
-
git commit -m "docs: タスク分割追加"
|
|
520
|
-
git push
|
|
521
|
-
npx @sk8metal/michi-cli phase:run <feature> tasks
|
|
522
|
-
|
|
523
|
-
# 具体例
|
|
524
|
-
/kiro:spec-tasks user-auth
|
|
525
|
-
git add .
|
|
526
|
-
git commit -m "docs: タスク分割追加"
|
|
527
|
-
git push
|
|
528
|
-
npx @sk8metal/michi-cli phase:run user-auth tasks
|
|
529
|
-
|
|
530
|
-
# 4. 実装
|
|
531
|
-
# 凡例
|
|
532
|
-
/kiro:spec-impl <feature> <tasks>
|
|
533
|
-
git checkout -b <project-id>/feature/<feature>
|
|
534
|
-
git add .
|
|
535
|
-
git commit -m "feat: 実装 [<jira-key>-XXX]"
|
|
536
|
-
git push -u origin <project-id>/feature/<feature>
|
|
537
|
-
gh pr create --head <project-id>/feature/<feature> --base main
|
|
538
|
-
|
|
539
|
-
# 具体例
|
|
540
|
-
/kiro:spec-impl user-auth FE-1,BE-1
|
|
541
|
-
git checkout -b 20240115-payment-api/feature/user-auth
|
|
542
|
-
git add .
|
|
543
|
-
git commit -m "feat: 実装 [PRJA-123]"
|
|
544
|
-
git push -u origin 20240115-payment-api/feature/user-auth
|
|
545
|
-
gh pr create --head 20240115-payment-api/feature/user-auth --base main
|
|
546
|
-
```
|
|
547
|
-
|
|
548
|
-
## プロジェクト間の切り替え
|
|
549
|
-
|
|
550
|
-
### Cursor で切り替え
|
|
551
|
-
|
|
552
|
-
```text
|
|
553
|
-
/kiro:project-switch 20240115-payment-api
|
|
554
|
-
```
|
|
555
|
-
|
|
556
|
-
### ターミナルで切り替え
|
|
557
|
-
|
|
558
|
-
```bash
|
|
559
|
-
# プロジェクトAに切り替え
|
|
560
|
-
cd ~/work/projects/20240115-payment-api
|
|
561
|
-
|
|
562
|
-
# プロジェクトBに切り替え
|
|
563
|
-
cd ~/work/projects/20240201-user-management
|
|
564
|
-
|
|
565
|
-
# Michiハブに戻る
|
|
566
|
-
cd ~/work/projects/michi
|
|
567
|
-
```
|
|
568
|
-
|
|
569
|
-
## プロジェクト一覧確認
|
|
570
|
-
|
|
571
|
-
すべてのプロジェクトを一覧表示:
|
|
572
|
-
|
|
573
|
-
```bash
|
|
574
|
-
# Michiリポジトリから実行
|
|
575
|
-
cd /path/to/michi
|
|
576
|
-
npm run project:list
|
|
577
|
-
```
|
|
578
|
-
|
|
579
|
-
出力例:
|
|
580
|
-
```text
|
|
581
|
-
📋 プロジェクト一覧:
|
|
582
|
-
|
|
583
|
-
| プロジェクト | ID | ステータス | JIRA | チーム |
|
|
584
|
-
|------------|-------|----------|------|--------|
|
|
585
|
-
| Michi | michi | active | MICHI | @developer1 |
|
|
586
|
-
| プロジェクトA | 20240115-payment-api | active | PRJA | @dev1, @dev2 |
|
|
587
|
-
| プロジェクトC | 20240310-analytics-api | active | PRJB | @dev3 |
|
|
588
|
-
```
|
|
589
|
-
|
|
590
|
-
## トラブルシューティング
|
|
591
|
-
|
|
592
|
-
### cc-sddがインストールできない
|
|
593
|
-
|
|
594
|
-
キャッシュをクリア:
|
|
595
|
-
```bash
|
|
596
|
-
npm cache clean --force
|
|
597
|
-
npx cc-sdd@latest --cursor --lang ja --yes
|
|
598
|
-
```
|
|
599
|
-
|
|
600
|
-
### .kiro/project.json が見つからない
|
|
601
|
-
|
|
602
|
-
手動で作成してください(上記Step 3参照)
|
|
603
|
-
|
|
604
|
-
### Confluence/JIRA連携が動作しない
|
|
605
|
-
|
|
606
|
-
1. `.env` の認証情報を確認
|
|
607
|
-
2. `~/.cursor/mcp.json` の設定を確認
|
|
608
|
-
3. Atlassian API Token が有効か確認
|
|
609
|
-
|
|
610
|
-
## ベストプラクティス
|
|
611
|
-
|
|
612
|
-
### プロジェクト命名規則
|
|
613
|
-
|
|
614
|
-
**リポジトリ名**: `{YYYYMMDD}-{PJ名}`
|
|
615
|
-
- 例: `20240115-payment-api`, `20240201-user-management`, `20240310-analytics-api`
|
|
616
|
-
|
|
617
|
-
**プロジェクトID**: リポジトリ名と同じ
|
|
618
|
-
- 例: `20240115-payment-api`
|
|
619
|
-
|
|
620
|
-
**JIRA プロジェクトキー**: 3-4文字、一意
|
|
621
|
-
- 例: `PRJA`, `PRJB`, `PRJC`
|
|
622
|
-
|
|
623
|
-
**Confluenceラベル**: `project:{projectId}, service:{service}`
|
|
624
|
-
- 例: `["project:20240115-payment-api", "service:payment"]`
|
|
625
|
-
|
|
626
|
-
### チーム構成
|
|
627
|
-
|
|
628
|
-
プロジェクトごとにチームメンバーを明確化:
|
|
629
|
-
|
|
630
|
-
```json
|
|
631
|
-
{
|
|
632
|
-
"team": ["@tech-lead", "@frontend-dev", "@backend-dev"],
|
|
633
|
-
"stakeholders": ["@企画", "@部長", "@客先担当"]
|
|
634
|
-
}
|
|
635
|
-
```
|
|
636
|
-
|
|
637
|
-
### ステータス管理
|
|
638
|
-
|
|
639
|
-
プロジェクトのライフサイクルに応じてステータスを更新:
|
|
640
|
-
|
|
641
|
-
- `planning`: 企画中
|
|
642
|
-
- `active`: 開発中
|
|
643
|
-
- `maintenance`: 保守フェーズ
|
|
644
|
-
- `completed`: 完了
|
|
645
|
-
- `inactive`: 休止中
|
|
646
|
-
|
|
647
|
-
## 複数プロジェクト同時開発のTips
|
|
648
|
-
|
|
649
|
-
### ターミナルを分ける
|
|
650
|
-
|
|
651
|
-
```bash
|
|
652
|
-
# ターミナル1: プロジェクトA
|
|
653
|
-
cd ~/work/projects/20240115-payment-api
|
|
654
|
-
|
|
655
|
-
# ターミナル2: プロジェクトB
|
|
656
|
-
cd ~/work/projects/20240201-user-management
|
|
657
|
-
|
|
658
|
-
# ターミナル3: Michiハブ(横断操作用)
|
|
659
|
-
cd ~/work/projects/michi
|
|
660
|
-
```
|
|
661
|
-
|
|
662
|
-
### VS Code Workspaceを使う
|
|
663
|
-
|
|
664
|
-
`.code-workspace` ファイル作成:
|
|
665
|
-
|
|
666
|
-
```json
|
|
667
|
-
{
|
|
668
|
-
"folders": [
|
|
669
|
-
{ "path": "../michi" },
|
|
670
|
-
{ "path": "../20240115-payment-api" },
|
|
671
|
-
{ "path": "../20240201-user-management" }
|
|
672
|
-
],
|
|
673
|
-
"settings": {
|
|
674
|
-
"files.associations": {
|
|
675
|
-
"*.mdc": "markdown"
|
|
676
|
-
}
|
|
677
|
-
}
|
|
678
|
-
}
|
|
679
|
-
```
|
|
680
|
-
|
|
681
|
-
### プロジェクト横断確認
|
|
682
|
-
|
|
683
|
-
```bash
|
|
684
|
-
# Michiから全プロジェクトの状況を確認
|
|
685
|
-
cd /path/to/michi
|
|
686
|
-
npx @sk8metal/michi-cli project:list
|
|
687
|
-
npx @sk8metal/michi-cli project:dashboard
|
|
688
|
-
npm run multi-estimate
|
|
689
|
-
```
|
|
690
|
-
|
|
691
|
-
## 次のステップ
|
|
692
|
-
|
|
693
|
-
新規プロジェクトを作成したら:
|
|
694
|
-
|
|
695
|
-
1. `docs/setup.md` でセットアップ
|
|
696
|
-
2. `docs/workflow.md` で開発フロー確認
|
|
697
|
-
3. `/kiro:spec-init` で最初の機能を開始
|
|
698
|
-
|
|
699
|
-
## 参考ドキュメント
|
|
700
|
-
|
|
701
|
-
- [セットアップガイド](./setup.md)
|
|
702
|
-
- [ワークフローガイド](../guides/workflow.md)
|
|
703
|
-
- [マルチプロジェクト管理](../guides/multi-project.md)
|
|
704
|
-
|