@k2works/claude-code-booster 1.10.0 → 1.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/LICENSE +21 -21
- package/README.md +42 -42
- package/bin/claude-code-booster +79 -79
- package/lib/assets/.claude/README.md +162 -162
- package/lib/assets/.claude/SKILLS_TEMPLATE.md +100 -100
- package/lib/assets/.claude/scripts/generate-inception-deck.mjs +911 -911
- package/lib/assets/.claude/settings.json +11 -11
- package/lib/assets/.claude/skills/ai-agent-guidelines/SKILL.md +119 -119
- package/lib/assets/.claude/skills/analyzing-architecture/SKILL.md +87 -87
- package/lib/assets/.claude/skills/analyzing-business/SKILL.md +117 -117
- package/lib/assets/.claude/skills/analyzing-data-model/SKILL.md +80 -80
- package/lib/assets/.claude/skills/analyzing-domain-model/SKILL.md +88 -88
- package/lib/assets/.claude/skills/analyzing-inception-deck/SKILL.md +137 -137
- package/lib/assets/.claude/skills/analyzing-non-functional/SKILL.md +91 -91
- package/lib/assets/.claude/skills/analyzing-operation/SKILL.md +91 -91
- package/lib/assets/.claude/skills/analyzing-requirements/SKILL.md +89 -87
- package/lib/assets/.claude/skills/analyzing-tech-stack/SKILL.md +102 -102
- package/lib/assets/.claude/skills/analyzing-test-strategy/SKILL.md +87 -87
- package/lib/assets/.claude/skills/analyzing-ui-design/SKILL.md +86 -86
- package/lib/assets/.claude/skills/analyzing-usecases/SKILL.md +87 -87
- package/lib/assets/.claude/skills/creating-adr/SKILL.md +115 -115
- package/lib/assets/.claude/skills/developing-backend/SKILL.md +106 -106
- package/lib/assets/.claude/skills/developing-frontend/SKILL.md +96 -96
- package/lib/assets/.claude/skills/developing-release/SKILL.md +154 -154
- package/lib/assets/.claude/skills/generating-slides/SKILL.md +136 -136
- package/lib/assets/.claude/skills/git-commit/SKILL.md +106 -106
- package/lib/assets/.claude/skills/killing-processes/SKILL.md +98 -98
- package/lib/assets/.claude/skills/managing-docs/SKILL.md +200 -200
- package/lib/assets/.claude/skills/managing-operations/DEPLOY.md +77 -77
- package/lib/assets/.claude/skills/managing-operations/SETUP_CSHARP.md +80 -80
- package/lib/assets/.claude/skills/managing-operations/SETUP_FRONTEND.md +84 -84
- package/lib/assets/.claude/skills/managing-operations/SETUP_JAVA.md +75 -75
- package/lib/assets/.claude/skills/managing-operations/SKILL.md +156 -156
- package/lib/assets/.claude/skills/orchestrating-analysis/SKILL.md +134 -134
- package/lib/assets/.claude/skills/orchestrating-development/SKILL.md +243 -243
- package/lib/assets/.claude/skills/orchestrating-project/SKILL.md +193 -193
- package/lib/assets/.claude/skills/planning-releases/SKILL.md +222 -222
- package/lib/assets/.claude/skills/tracking-progress/SKILL.md +164 -164
- package/lib/assets/.devcontainer/devcontainer.json +34 -34
- package/lib/assets/.env.example +17 -17
- package/lib/assets/.gitattributes +4 -4
- package/lib/assets/.github/workflows/docker-publish.yml +77 -77
- package/lib/assets/.github/workflows/mkdocs.yml +39 -39
- package/lib/assets/AGENTS.md +94 -94
- package/lib/assets/CLAUDE.md +162 -162
- package/lib/assets/README.md +285 -269
- package/lib/assets/docker-compose.yml +33 -33
- package/lib/assets/docs/assets/css/extra.css +29 -29
- package/lib/assets/docs/assets/js/extra.js +44 -44
- package/lib/assets/docs/index.md +14 -14
- package/lib/assets/docs/reference/CodexCLIMCP/343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/351/226/213/347/231/272/343/203/225/343/203/255/343/203/274.md +532 -532
- package/lib/assets/docs/reference/CodexCLIMCP/343/202/265/343/203/274/343/203/220/343/203/274/350/250/255/345/256/232/346/211/213/351/240/206.md +341 -341
- package/lib/assets/docs/reference/Java/343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/347/222/260/345/242/203/346/247/213/347/257/211/343/202/254/343/202/244/343/203/211.md +578 -578
- package/lib/assets/docs/reference/TypeScript/343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/347/222/260/345/242/203/346/247/213/347/257/211/343/202/254/343/202/244/343/203/211.md +465 -465
- package/lib/assets/docs/reference/UI/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +448 -448
- package/lib/assets/docs/reference//343/202/210/343/201/204/343/202/275/343/203/225/343/203/210/343/202/246/343/202/247/343/202/242/343/201/250/343/201/257.md +242 -242
- package/lib/assets/docs/reference//343/202/242/343/203/274/343/202/255/343/203/206/343/202/257/343/203/201/343/203/243/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +2216 -2216
- package/lib/assets/docs/reference//343/202/244/343/203/263/343/203/225/343/203/251/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +1878 -1878
- package/lib/assets/docs/reference//343/202/250/343/202/257/343/202/271/343/203/210/343/203/252/343/203/274/343/203/240/343/203/227/343/203/255/343/202/260/343/203/251/343/203/237/343/203/263/343/202/260.md +554 -554
- package/lib/assets/docs/reference//343/202/263/343/203/274/343/203/207/343/202/243/343/203/263/343/202/260/343/201/250/343/203/206/343/202/271/343/203/210/343/202/254/343/202/244/343/203/211.md +705 -705
- package/lib/assets/docs/reference//343/203/206/343/202/271/343/203/210/346/210/246/347/225/245/343/202/254/343/202/244/343/203/211.md +1313 -1313
- package/lib/assets/docs/reference//343/203/207/343/203/274/343/202/277/343/203/242/343/203/207/343/203/253/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +311 -311
- package/lib/assets/docs/reference//343/203/211/343/203/241/343/202/244/343/203/263/343/203/242/343/203/207/343/203/253/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +599 -599
- package/lib/assets/docs/reference//343/203/223/343/202/270/343/203/215/343/202/271/343/202/242/343/203/274/343/202/255/343/203/206/343/202/257/343/203/201/343/203/243/345/210/206/346/236/220/343/202/254/343/202/244/343/203/211.md +528 -528
- package/lib/assets/docs/reference//343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271/344/275/234/346/210/220/343/202/254/343/202/244/343/203/211.md +682 -682
- package/lib/assets/docs/reference//343/203/252/343/203/252/343/203/274/343/202/271/343/202/254/343/202/244/343/203/211.md +442 -442
- package/lib/assets/docs/reference//343/203/252/343/203/252/343/203/274/343/202/271/343/203/273/343/202/244/343/203/206/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/350/250/210/347/224/273/343/202/254/343/202/244/343/203/211.md +558 -558
- package/lib/assets/docs/reference//347/222/260/345/242/203/345/244/211/346/225/260/347/256/241/347/220/206/343/202/254/343/202/244/343/203/211.md +663 -663
- package/lib/assets/docs/reference//350/246/201/344/273/266/345/256/232/347/276/251/343/202/254/343/202/244/343/203/211.md +1248 -1248
- package/lib/assets/docs/reference//351/201/213/347/224/250/350/246/201/344/273/266/345/256/232/347/276/251/343/202/254/343/202/244/343/203/211.md +392 -392
- package/lib/assets/docs/reference//351/226/213/347/231/272/343/202/254/343/202/244/343/203/211.md +235 -235
- package/lib/assets/docs/reference//351/235/236/346/251/237/350/203/275/350/246/201/344/273/266/345/256/232/347/276/251/343/202/254/343/202/244/343/203/211.md +1236 -1236
- package/lib/assets/docs/template/ADR.md +30 -30
- package/lib/assets/docs/template/README.md +50 -50
- package/lib/assets/docs/template//343/201/276/343/201/232/343/201/223/343/202/214/343/202/222/350/252/255/343/202/202/343/201/206/343/203/252/343/202/271/343/203/210.md +12 -12
- package/lib/assets/docs/template//343/202/244/343/203/206/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/345/256/214/344/272/206/345/240/261/345/221/212/346/233/270.md +58 -58
- package/lib/assets/docs/template//343/202/244/343/203/263/343/202/273/343/203/227/343/202/267/343/203/247/343/203/263/343/203/207/343/203/203/343/202/255.md +13 -13
- package/lib/assets/docs/template//343/203/223/343/202/270/343/203/215/343/202/271/343/202/242/343/203/274/343/202/255/343/203/206/343/202/257/343/203/201/343/203/243.md +379 -379
- package/lib/assets/docs/template//345/256/214/345/205/250/345/275/242/345/274/217/343/201/256/343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271.md +68 -68
- package/lib/assets/docs/template//350/246/201/344/273/266/345/256/232/347/276/251.md +669 -669
- package/lib/assets/docs/template//350/250/255/350/250/210.md +163 -163
- package/lib/assets/gulpfile.js +23 -23
- package/lib/assets/mkdocs.yml +65 -65
- package/lib/assets/ops/docker/mkdoc/Dockerfile +19 -19
- package/lib/assets/ops/scripts/journal.js +180 -180
- package/lib/assets/ops/scripts/mkdocs.js +82 -82
- package/lib/assets/ops/scripts/release.js +431 -431
- package/lib/assets/ops/scripts/ssh.js +190 -190
- package/lib/assets/ops/scripts/vault.js +299 -299
- package/lib/assets/package-lock.json +1653 -1653
- package/lib/assets/package.json +40 -40
- package/lib/gulpfile.js +37 -37
- package/package.json +41 -41
|
@@ -1,243 +1,243 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: orchestrating-development
|
|
3
|
-
description: 開発フェーズ全体の TDD ワークフローをオーケストレーション。バックエンド・フロントエンド開発の進め方、Codex 分業体制を案内。開発フェーズの開始や開発手法の確認時に使用。
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# 開発フェーズオーケストレーション
|
|
7
|
-
|
|
8
|
-
開発フェーズ全体の作業を支援します。TDD サイクルに従った開発ワークフローを提供します。
|
|
9
|
-
|
|
10
|
-
## Instructions
|
|
11
|
-
|
|
12
|
-
### 1. オプション
|
|
13
|
-
|
|
14
|
-
- なし : 開発フェーズ全体のワークフローを表示
|
|
15
|
-
- `--codex` : Claude(計画・設計・受入)と Codex(実装)の分業体制で開発
|
|
16
|
-
|
|
17
|
-
### 2. 基本例
|
|
18
|
-
|
|
19
|
-
```bash
|
|
20
|
-
# 開発フェーズ全体のワークフロー表示
|
|
21
|
-
# 「開発フェーズの全体的な進め方と TDD サイクルの説明」
|
|
22
|
-
|
|
23
|
-
# Claude と Codex の分業体制で開発
|
|
24
|
-
# --codex
|
|
25
|
-
# 「US-103 お知らせ管理を開始。計画・設計は Claude、実装は Codex が担当」
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
### 3. 開発フェーズの全体像
|
|
29
|
-
|
|
30
|
-
開発フェーズは以下の工程で構成されます:
|
|
31
|
-
|
|
32
|
-
1. **バックエンド開発** (Skill: `developing-backend`)
|
|
33
|
-
|
|
34
|
-
- 実装
|
|
35
|
-
- ビルド・テスト
|
|
36
|
-
- インサイドアウトアプローチ推奨
|
|
37
|
-
|
|
38
|
-
2. **フロントエンド開発** (Skill: `developing-frontend`)
|
|
39
|
-
|
|
40
|
-
- 実装
|
|
41
|
-
- ビルド・テスト
|
|
42
|
-
- アウトサイドインアプローチ推奨
|
|
43
|
-
|
|
44
|
-
### 4. TDD サイクルの実践
|
|
45
|
-
|
|
46
|
-
Red-Green-Refactor サイクルを厳密に実行:
|
|
47
|
-
|
|
48
|
-
1. **Red フェーズ**: 失敗するテストを最初に書く
|
|
49
|
-
2. **Green フェーズ**: テストを通す最小限のコードを実装
|
|
50
|
-
3. **Refactor フェーズ**: 重複を除去し設計を改善
|
|
51
|
-
4. @docs/reference/コーディングとテストガイド.md のワークフローに従う
|
|
52
|
-
|
|
53
|
-
### 5. 参照ドキュメント
|
|
54
|
-
|
|
55
|
-
- @docs/reference/CodexCLIMCPアプリケーション開発フロー.md を参照
|
|
56
|
-
- @docs/design/architecture.md を参照
|
|
57
|
-
- @docs/design/architecture_backend.md を参照
|
|
58
|
-
- @docs/design/architecture_frontend.md を参照
|
|
59
|
-
- @docs/design/data-model.md を参照
|
|
60
|
-
- @docs/design/domain-model.md を参照
|
|
61
|
-
- @docs/design/tech_stack.md を参照
|
|
62
|
-
- @docs/design/ui-design.md を参照
|
|
63
|
-
- @docs/design/test_strategy.md を参照
|
|
64
|
-
- 作業完了後に対象のイテレーション @docs/development/iteration_plan-N.md の進捗を更新する
|
|
65
|
-
|
|
66
|
-
### 6. アプローチ戦略の選択
|
|
67
|
-
|
|
68
|
-
プロジェクトの状態に応じた最適なアプローチを選択:
|
|
69
|
-
|
|
70
|
-
- **インサイドアウト**: データ層から開始し上位層へ展開(バックエンド推奨)
|
|
71
|
-
- **アウトサイドイン**: UI から開始しドメインロジックを段階的に実装(フロントエンド推奨)
|
|
72
|
-
|
|
73
|
-
### 7. Codex を活用した開発モード(--codex)
|
|
74
|
-
|
|
75
|
-
`--codex` オプションを指定すると、Claude と Codex の分業体制で開発を進めます。
|
|
76
|
-
|
|
77
|
-
**前提条件**:
|
|
78
|
-
|
|
79
|
-
- Codex MCP サーバーが設定済みであること
|
|
80
|
-
- @docs/reference/CodexCLIMCPサーバー設定手順.md を参照
|
|
81
|
-
- @docs/reference/CodexCLIMCPアプリケーション開発フロー.md を参照
|
|
82
|
-
|
|
83
|
-
**役割分担**:
|
|
84
|
-
|
|
85
|
-
| フェーズ | 担当 | 責務 |
|
|
86
|
-
|---------|------|------|
|
|
87
|
-
| 計画 | Claude | 要件分析、タスク分解、優先度決定 |
|
|
88
|
-
| 設計 | Claude | API 設計、UI 設計、データモデル設計 |
|
|
89
|
-
| 実装 | Codex | コード実装、ユニットテスト作成 |
|
|
90
|
-
| 受入 | Claude | 設計レビュー、E2E テスト作成・実行、品質確認 |
|
|
91
|
-
|
|
92
|
-
**開発フロー**:
|
|
93
|
-
|
|
94
|
-
```mermaid
|
|
95
|
-
graph LR
|
|
96
|
-
A[計画] --> B[設計]
|
|
97
|
-
B --> C[実装指示]
|
|
98
|
-
C --> D[受入]
|
|
99
|
-
|
|
100
|
-
subgraph Claude
|
|
101
|
-
A
|
|
102
|
-
B
|
|
103
|
-
D
|
|
104
|
-
end
|
|
105
|
-
|
|
106
|
-
subgraph Codex
|
|
107
|
-
C
|
|
108
|
-
end
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
**Codex MCP ツールのパラメータ**:
|
|
112
|
-
|
|
113
|
-
| パラメータ | 説明 | 推奨値 |
|
|
114
|
-
|-----------|------|--------|
|
|
115
|
-
| `prompt` | 実装指示(詳細な要件を含む) | タスク単位で明確に記述 |
|
|
116
|
-
| `sandbox` | 実行環境の権限レベル | `danger-full-access`(推奨) |
|
|
117
|
-
| `approval-policy` | コマンド実行時の承認ポリシー | `never` |
|
|
118
|
-
| `cwd` | 作業ディレクトリ | プロジェクトルート |
|
|
119
|
-
|
|
120
|
-
**指示サイズに関する注意**:
|
|
121
|
-
|
|
122
|
-
| 粒度 | 推奨度 | 説明 |
|
|
123
|
-
|------|--------|------|
|
|
124
|
-
| タスク単位(1-3 ファイル) | 推奨 | 1 つのコンポーネントや機能単位 |
|
|
125
|
-
| 機能単位(3-5 ファイル) | 注意 | 進捗確認を頻繁に行う |
|
|
126
|
-
| ユーザーストーリー単位 | 非推奨 | タスクに分割して実行 |
|
|
127
|
-
|
|
128
|
-
**Codex が書き込みできない場合の対処**:
|
|
129
|
-
|
|
130
|
-
1. Claude が勝手に直接編集を進めてはいけない
|
|
131
|
-
2. ユーザーに状況を報告し、確認を待つ
|
|
132
|
-
3. ユーザーの許可を得てから代替手段を実行
|
|
133
|
-
|
|
134
|
-
### 8. 開発フローの実践
|
|
135
|
-
|
|
136
|
-
`--codex` を使用した開発フローの実践例:
|
|
137
|
-
|
|
138
|
-
#### 計画フェーズ(Claude)
|
|
139
|
-
|
|
140
|
-
Claude の活動:
|
|
141
|
-
|
|
142
|
-
1. イテレーション計画を読み込み
|
|
143
|
-
2. 受入条件を確認
|
|
144
|
-
3. 既存コードを調査(API、フロントエンド構造)
|
|
145
|
-
4. タスクリストを作成
|
|
146
|
-
|
|
147
|
-
#### 設計フェーズ(Claude)
|
|
148
|
-
|
|
149
|
-
Claude の活動:
|
|
150
|
-
|
|
151
|
-
1. API エンドポイント設計を確認
|
|
152
|
-
2. フロントエンドコンポーネント設計
|
|
153
|
-
3. Codex への詳細指示を作成
|
|
154
|
-
|
|
155
|
-
#### 実装フェーズ(Codex)
|
|
156
|
-
|
|
157
|
-
**Codex への指示例**:
|
|
158
|
-
|
|
159
|
-
```
|
|
160
|
-
mcp__codex__codex
|
|
161
|
-
prompt: |
|
|
162
|
-
お知らせ管理機能を実装してください。
|
|
163
|
-
|
|
164
|
-
## 開発ガイド
|
|
165
|
-
docs/reference/コーディングとテストガイド.md に従って実装すること。
|
|
166
|
-
特に TDD サイクル(Red-Green-Refactor)を厳守すること。
|
|
167
|
-
|
|
168
|
-
## タスク
|
|
169
|
-
1. AuthContext に role と canManageAnnouncements を追加
|
|
170
|
-
2. API クライアントに create/update/delete 関数を追加
|
|
171
|
-
|
|
172
|
-
## 完了条件
|
|
173
|
-
- ESLint エラーなし
|
|
174
|
-
- 既存テストがパス
|
|
175
|
-
- TDD サイクルに従って実装
|
|
176
|
-
|
|
177
|
-
sandbox: danger-full-access
|
|
178
|
-
approval-policy: never
|
|
179
|
-
cwd: プロジェクトルート
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
**継続指示**(codex-reply ツール使用):
|
|
183
|
-
|
|
184
|
-
```
|
|
185
|
-
mcp__codex__codex-reply
|
|
186
|
-
threadId: "<前回のスレッドID>"
|
|
187
|
-
prompt: "テストを実行して結果を確認してください"
|
|
188
|
-
```
|
|
189
|
-
|
|
190
|
-
#### 受入フェーズ(Claude)
|
|
191
|
-
|
|
192
|
-
Claude の活動:
|
|
193
|
-
|
|
194
|
-
1. 設計レビュー: 実装が設計に準拠しているか確認
|
|
195
|
-
2. E2E テスト作成: 成功基準に基づくテストを作成
|
|
196
|
-
3. E2E テスト実行: 機能が正しく動作することを検証
|
|
197
|
-
4. バグ修正: 問題があれば修正
|
|
198
|
-
|
|
199
|
-
**受入基準**:
|
|
200
|
-
|
|
201
|
-
- [ ] すべての受入条件が満たされている
|
|
202
|
-
- [ ] E2E テストがすべてパス
|
|
203
|
-
- [ ] ESLint エラーがない
|
|
204
|
-
- [ ] 既存テストが壊れていない
|
|
205
|
-
|
|
206
|
-
### 9. コンテキスト管理
|
|
207
|
-
|
|
208
|
-
長時間の開発セッションでは Context limit reached エラーを回避するため、タスクの区切りごとに `/compact` を実施してコンテキストを圧縮する。
|
|
209
|
-
|
|
210
|
-
**`/compact` を実施するタイミング**:
|
|
211
|
-
|
|
212
|
-
- ユーザーストーリー 1 件の実装が完了したとき
|
|
213
|
-
- TDD サイクル(Red-Green-Refactor)を数回繰り返した後
|
|
214
|
-
- Codex への実装指示と受入フェーズの間
|
|
215
|
-
- コミット完了後、次のタスクに着手する前
|
|
216
|
-
- テストスイートの実行と結果確認が完了したとき
|
|
217
|
-
|
|
218
|
-
**運用ルール**:
|
|
219
|
-
|
|
220
|
-
1. `/compact` 実施前に、現在の作業状態と次のタスクをメモとして出力する
|
|
221
|
-
2. `/compact` 実施後、次のタスクの作業を継続する
|
|
222
|
-
3. 大規模なユーザーストーリーでは、サブタスクごとに `/compact` を検討する
|
|
223
|
-
|
|
224
|
-
### 10. 注意事項
|
|
225
|
-
|
|
226
|
-
- **前提条件**: プロジェクトのテスト環境が設定済みであること
|
|
227
|
-
- **制限事項**: TDD の三原則を厳密に守る(テストなしでプロダクションコードを書かない)
|
|
228
|
-
- **推奨事項**: コミット前に必ず品質チェックリストを実行
|
|
229
|
-
|
|
230
|
-
### 11. ベストプラクティス
|
|
231
|
-
|
|
232
|
-
1. **TODO 駆動開発**: タスクを細かい TODO に分割してから実装開始
|
|
233
|
-
2. **小さなサイクル**: Red-Green-Refactor を 10-15 分で完了させる
|
|
234
|
-
3. **継続的コミット**: 各サイクル完了時に動作する状態でコミット
|
|
235
|
-
4. **Rule of Three**: 同じコードが 3 回現れたらリファクタリング
|
|
236
|
-
|
|
237
|
-
### 関連スキル / ドキュメント
|
|
238
|
-
|
|
239
|
-
- Skill: `developing-backend` : バックエンド開発ガイド
|
|
240
|
-
- Skill: `developing-frontend` : フロントエンド開発ガイド
|
|
241
|
-
- Skill: `developing-release` : リリースワークフロー(品質ゲート・バージョン管理・CHANGELOG)
|
|
242
|
-
- @docs/reference/CodexCLIMCPアプリケーション開発フロー.md : アプリケーション開発フロー
|
|
243
|
-
- @docs/reference/CodexCLIMCPサーバー設定手順.md : Codex MCP サーバー設定手順
|
|
1
|
+
---
|
|
2
|
+
name: orchestrating-development
|
|
3
|
+
description: 開発フェーズ全体の TDD ワークフローをオーケストレーション。バックエンド・フロントエンド開発の進め方、Codex 分業体制を案内。開発フェーズの開始や開発手法の確認時に使用。
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# 開発フェーズオーケストレーション
|
|
7
|
+
|
|
8
|
+
開発フェーズ全体の作業を支援します。TDD サイクルに従った開発ワークフローを提供します。
|
|
9
|
+
|
|
10
|
+
## Instructions
|
|
11
|
+
|
|
12
|
+
### 1. オプション
|
|
13
|
+
|
|
14
|
+
- なし : 開発フェーズ全体のワークフローを表示
|
|
15
|
+
- `--codex` : Claude(計画・設計・受入)と Codex(実装)の分業体制で開発
|
|
16
|
+
|
|
17
|
+
### 2. 基本例
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
# 開発フェーズ全体のワークフロー表示
|
|
21
|
+
# 「開発フェーズの全体的な進め方と TDD サイクルの説明」
|
|
22
|
+
|
|
23
|
+
# Claude と Codex の分業体制で開発
|
|
24
|
+
# --codex
|
|
25
|
+
# 「US-103 お知らせ管理を開始。計画・設計は Claude、実装は Codex が担当」
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
### 3. 開発フェーズの全体像
|
|
29
|
+
|
|
30
|
+
開発フェーズは以下の工程で構成されます:
|
|
31
|
+
|
|
32
|
+
1. **バックエンド開発** (Skill: `developing-backend`)
|
|
33
|
+
|
|
34
|
+
- 実装
|
|
35
|
+
- ビルド・テスト
|
|
36
|
+
- インサイドアウトアプローチ推奨
|
|
37
|
+
|
|
38
|
+
2. **フロントエンド開発** (Skill: `developing-frontend`)
|
|
39
|
+
|
|
40
|
+
- 実装
|
|
41
|
+
- ビルド・テスト
|
|
42
|
+
- アウトサイドインアプローチ推奨
|
|
43
|
+
|
|
44
|
+
### 4. TDD サイクルの実践
|
|
45
|
+
|
|
46
|
+
Red-Green-Refactor サイクルを厳密に実行:
|
|
47
|
+
|
|
48
|
+
1. **Red フェーズ**: 失敗するテストを最初に書く
|
|
49
|
+
2. **Green フェーズ**: テストを通す最小限のコードを実装
|
|
50
|
+
3. **Refactor フェーズ**: 重複を除去し設計を改善
|
|
51
|
+
4. @docs/reference/コーディングとテストガイド.md のワークフローに従う
|
|
52
|
+
|
|
53
|
+
### 5. 参照ドキュメント
|
|
54
|
+
|
|
55
|
+
- @docs/reference/CodexCLIMCPアプリケーション開発フロー.md を参照
|
|
56
|
+
- @docs/design/architecture.md を参照
|
|
57
|
+
- @docs/design/architecture_backend.md を参照
|
|
58
|
+
- @docs/design/architecture_frontend.md を参照
|
|
59
|
+
- @docs/design/data-model.md を参照
|
|
60
|
+
- @docs/design/domain-model.md を参照
|
|
61
|
+
- @docs/design/tech_stack.md を参照
|
|
62
|
+
- @docs/design/ui-design.md を参照
|
|
63
|
+
- @docs/design/test_strategy.md を参照
|
|
64
|
+
- 作業完了後に対象のイテレーション @docs/development/iteration_plan-N.md の進捗を更新する
|
|
65
|
+
|
|
66
|
+
### 6. アプローチ戦略の選択
|
|
67
|
+
|
|
68
|
+
プロジェクトの状態に応じた最適なアプローチを選択:
|
|
69
|
+
|
|
70
|
+
- **インサイドアウト**: データ層から開始し上位層へ展開(バックエンド推奨)
|
|
71
|
+
- **アウトサイドイン**: UI から開始しドメインロジックを段階的に実装(フロントエンド推奨)
|
|
72
|
+
|
|
73
|
+
### 7. Codex を活用した開発モード(--codex)
|
|
74
|
+
|
|
75
|
+
`--codex` オプションを指定すると、Claude と Codex の分業体制で開発を進めます。
|
|
76
|
+
|
|
77
|
+
**前提条件**:
|
|
78
|
+
|
|
79
|
+
- Codex MCP サーバーが設定済みであること
|
|
80
|
+
- @docs/reference/CodexCLIMCPサーバー設定手順.md を参照
|
|
81
|
+
- @docs/reference/CodexCLIMCPアプリケーション開発フロー.md を参照
|
|
82
|
+
|
|
83
|
+
**役割分担**:
|
|
84
|
+
|
|
85
|
+
| フェーズ | 担当 | 責務 |
|
|
86
|
+
|---------|------|------|
|
|
87
|
+
| 計画 | Claude | 要件分析、タスク分解、優先度決定 |
|
|
88
|
+
| 設計 | Claude | API 設計、UI 設計、データモデル設計 |
|
|
89
|
+
| 実装 | Codex | コード実装、ユニットテスト作成 |
|
|
90
|
+
| 受入 | Claude | 設計レビュー、E2E テスト作成・実行、品質確認 |
|
|
91
|
+
|
|
92
|
+
**開発フロー**:
|
|
93
|
+
|
|
94
|
+
```mermaid
|
|
95
|
+
graph LR
|
|
96
|
+
A[計画] --> B[設計]
|
|
97
|
+
B --> C[実装指示]
|
|
98
|
+
C --> D[受入]
|
|
99
|
+
|
|
100
|
+
subgraph Claude
|
|
101
|
+
A
|
|
102
|
+
B
|
|
103
|
+
D
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
subgraph Codex
|
|
107
|
+
C
|
|
108
|
+
end
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
**Codex MCP ツールのパラメータ**:
|
|
112
|
+
|
|
113
|
+
| パラメータ | 説明 | 推奨値 |
|
|
114
|
+
|-----------|------|--------|
|
|
115
|
+
| `prompt` | 実装指示(詳細な要件を含む) | タスク単位で明確に記述 |
|
|
116
|
+
| `sandbox` | 実行環境の権限レベル | `danger-full-access`(推奨) |
|
|
117
|
+
| `approval-policy` | コマンド実行時の承認ポリシー | `never` |
|
|
118
|
+
| `cwd` | 作業ディレクトリ | プロジェクトルート |
|
|
119
|
+
|
|
120
|
+
**指示サイズに関する注意**:
|
|
121
|
+
|
|
122
|
+
| 粒度 | 推奨度 | 説明 |
|
|
123
|
+
|------|--------|------|
|
|
124
|
+
| タスク単位(1-3 ファイル) | 推奨 | 1 つのコンポーネントや機能単位 |
|
|
125
|
+
| 機能単位(3-5 ファイル) | 注意 | 進捗確認を頻繁に行う |
|
|
126
|
+
| ユーザーストーリー単位 | 非推奨 | タスクに分割して実行 |
|
|
127
|
+
|
|
128
|
+
**Codex が書き込みできない場合の対処**:
|
|
129
|
+
|
|
130
|
+
1. Claude が勝手に直接編集を進めてはいけない
|
|
131
|
+
2. ユーザーに状況を報告し、確認を待つ
|
|
132
|
+
3. ユーザーの許可を得てから代替手段を実行
|
|
133
|
+
|
|
134
|
+
### 8. 開発フローの実践
|
|
135
|
+
|
|
136
|
+
`--codex` を使用した開発フローの実践例:
|
|
137
|
+
|
|
138
|
+
#### 計画フェーズ(Claude)
|
|
139
|
+
|
|
140
|
+
Claude の活動:
|
|
141
|
+
|
|
142
|
+
1. イテレーション計画を読み込み
|
|
143
|
+
2. 受入条件を確認
|
|
144
|
+
3. 既存コードを調査(API、フロントエンド構造)
|
|
145
|
+
4. タスクリストを作成
|
|
146
|
+
|
|
147
|
+
#### 設計フェーズ(Claude)
|
|
148
|
+
|
|
149
|
+
Claude の活動:
|
|
150
|
+
|
|
151
|
+
1. API エンドポイント設計を確認
|
|
152
|
+
2. フロントエンドコンポーネント設計
|
|
153
|
+
3. Codex への詳細指示を作成
|
|
154
|
+
|
|
155
|
+
#### 実装フェーズ(Codex)
|
|
156
|
+
|
|
157
|
+
**Codex への指示例**:
|
|
158
|
+
|
|
159
|
+
```
|
|
160
|
+
mcp__codex__codex
|
|
161
|
+
prompt: |
|
|
162
|
+
お知らせ管理機能を実装してください。
|
|
163
|
+
|
|
164
|
+
## 開発ガイド
|
|
165
|
+
docs/reference/コーディングとテストガイド.md に従って実装すること。
|
|
166
|
+
特に TDD サイクル(Red-Green-Refactor)を厳守すること。
|
|
167
|
+
|
|
168
|
+
## タスク
|
|
169
|
+
1. AuthContext に role と canManageAnnouncements を追加
|
|
170
|
+
2. API クライアントに create/update/delete 関数を追加
|
|
171
|
+
|
|
172
|
+
## 完了条件
|
|
173
|
+
- ESLint エラーなし
|
|
174
|
+
- 既存テストがパス
|
|
175
|
+
- TDD サイクルに従って実装
|
|
176
|
+
|
|
177
|
+
sandbox: danger-full-access
|
|
178
|
+
approval-policy: never
|
|
179
|
+
cwd: プロジェクトルート
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
**継続指示**(codex-reply ツール使用):
|
|
183
|
+
|
|
184
|
+
```
|
|
185
|
+
mcp__codex__codex-reply
|
|
186
|
+
threadId: "<前回のスレッドID>"
|
|
187
|
+
prompt: "テストを実行して結果を確認してください"
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
#### 受入フェーズ(Claude)
|
|
191
|
+
|
|
192
|
+
Claude の活動:
|
|
193
|
+
|
|
194
|
+
1. 設計レビュー: 実装が設計に準拠しているか確認
|
|
195
|
+
2. E2E テスト作成: 成功基準に基づくテストを作成
|
|
196
|
+
3. E2E テスト実行: 機能が正しく動作することを検証
|
|
197
|
+
4. バグ修正: 問題があれば修正
|
|
198
|
+
|
|
199
|
+
**受入基準**:
|
|
200
|
+
|
|
201
|
+
- [ ] すべての受入条件が満たされている
|
|
202
|
+
- [ ] E2E テストがすべてパス
|
|
203
|
+
- [ ] ESLint エラーがない
|
|
204
|
+
- [ ] 既存テストが壊れていない
|
|
205
|
+
|
|
206
|
+
### 9. コンテキスト管理
|
|
207
|
+
|
|
208
|
+
長時間の開発セッションでは Context limit reached エラーを回避するため、タスクの区切りごとに `/compact` を実施してコンテキストを圧縮する。
|
|
209
|
+
|
|
210
|
+
**`/compact` を実施するタイミング**:
|
|
211
|
+
|
|
212
|
+
- ユーザーストーリー 1 件の実装が完了したとき
|
|
213
|
+
- TDD サイクル(Red-Green-Refactor)を数回繰り返した後
|
|
214
|
+
- Codex への実装指示と受入フェーズの間
|
|
215
|
+
- コミット完了後、次のタスクに着手する前
|
|
216
|
+
- テストスイートの実行と結果確認が完了したとき
|
|
217
|
+
|
|
218
|
+
**運用ルール**:
|
|
219
|
+
|
|
220
|
+
1. `/compact` 実施前に、現在の作業状態と次のタスクをメモとして出力する
|
|
221
|
+
2. `/compact` 実施後、次のタスクの作業を継続する
|
|
222
|
+
3. 大規模なユーザーストーリーでは、サブタスクごとに `/compact` を検討する
|
|
223
|
+
|
|
224
|
+
### 10. 注意事項
|
|
225
|
+
|
|
226
|
+
- **前提条件**: プロジェクトのテスト環境が設定済みであること
|
|
227
|
+
- **制限事項**: TDD の三原則を厳密に守る(テストなしでプロダクションコードを書かない)
|
|
228
|
+
- **推奨事項**: コミット前に必ず品質チェックリストを実行
|
|
229
|
+
|
|
230
|
+
### 11. ベストプラクティス
|
|
231
|
+
|
|
232
|
+
1. **TODO 駆動開発**: タスクを細かい TODO に分割してから実装開始
|
|
233
|
+
2. **小さなサイクル**: Red-Green-Refactor を 10-15 分で完了させる
|
|
234
|
+
3. **継続的コミット**: 各サイクル完了時に動作する状態でコミット
|
|
235
|
+
4. **Rule of Three**: 同じコードが 3 回現れたらリファクタリング
|
|
236
|
+
|
|
237
|
+
### 関連スキル / ドキュメント
|
|
238
|
+
|
|
239
|
+
- Skill: `developing-backend` : バックエンド開発ガイド
|
|
240
|
+
- Skill: `developing-frontend` : フロントエンド開発ガイド
|
|
241
|
+
- Skill: `developing-release` : リリースワークフロー(品質ゲート・バージョン管理・CHANGELOG)
|
|
242
|
+
- @docs/reference/CodexCLIMCPアプリケーション開発フロー.md : アプリケーション開発フロー
|
|
243
|
+
- @docs/reference/CodexCLIMCPサーバー設定手順.md : Codex MCP サーバー設定手順
|