@k2works/claude-code-booster 1.13.0 → 2.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 (64) hide show
  1. package/bin/claude-code-booster +5 -7
  2. package/lib/assets/.claude/README.md +73 -19
  3. package/lib/assets/.claude/agents/xp-architect.md +250 -0
  4. package/lib/assets/.claude/agents/xp-executive.md +207 -0
  5. package/lib/assets/.claude/agents/xp-interaction-designer.md +239 -0
  6. package/lib/assets/.claude/agents/xp-product-manager.md +245 -0
  7. package/lib/assets/.claude/agents/xp-programmer.md +268 -0
  8. package/lib/assets/.claude/agents/xp-project-manager.md +229 -0
  9. package/lib/assets/.claude/agents/xp-technical-writer.md +224 -0
  10. package/lib/assets/.claude/agents/xp-tester.md +265 -0
  11. package/lib/assets/.claude/agents/xp-user-representative.md +204 -0
  12. package/lib/assets/.claude/skills/ai-agent-guidelines/SKILL.md +49 -57
  13. package/lib/assets/.claude/skills/analyzing-architecture/SKILL.md +54 -58
  14. package/lib/assets/.claude/skills/analyzing-business/SKILL.md +52 -74
  15. package/lib/assets/.claude/skills/analyzing-data-model/SKILL.md +50 -53
  16. package/lib/assets/.claude/skills/analyzing-domain-model/SKILL.md +56 -56
  17. package/lib/assets/.claude/skills/analyzing-inception-deck/SKILL.md +56 -109
  18. package/lib/assets/.claude/skills/analyzing-non-functional/SKILL.md +61 -57
  19. package/lib/assets/.claude/skills/analyzing-operation/SKILL.md +61 -57
  20. package/lib/assets/.claude/skills/analyzing-requirements/SKILL.md +57 -55
  21. package/lib/assets/.claude/skills/analyzing-tech-stack/SKILL.md +66 -67
  22. package/lib/assets/.claude/skills/analyzing-test-strategy/SKILL.md +58 -56
  23. package/lib/assets/.claude/skills/analyzing-ui-design/SKILL.md +51 -57
  24. package/lib/assets/.claude/skills/analyzing-usecases/SKILL.md +45 -60
  25. package/lib/assets/.claude/skills/creating-adr/SKILL.md +38 -40
  26. package/lib/assets/.claude/skills/developing-backend/SKILL.md +49 -55
  27. package/lib/assets/.claude/skills/developing-frontend/SKILL.md +47 -50
  28. package/lib/assets/.claude/skills/developing-release/SKILL.md +60 -95
  29. package/lib/assets/.claude/skills/generating-slides/SKILL.md +58 -100
  30. package/lib/assets/.claude/skills/git-commit/SKILL.md +27 -52
  31. package/lib/assets/.claude/skills/killing-processes/SKILL.md +16 -70
  32. package/lib/assets/.claude/skills/operating-backup/SKILL.md +59 -0
  33. package/lib/assets/.claude/skills/operating-cicd/SKILL.md +54 -0
  34. package/lib/assets/.claude/skills/operating-deploy/SKILL.md +67 -0
  35. package/lib/assets/.claude/skills/{managing-docs → operating-docs}/SKILL.md +1 -1
  36. package/lib/assets/.claude/skills/operating-provision/SKILL.md +77 -0
  37. package/lib/assets/.claude/skills/operating-setup/SKILL.md +63 -0
  38. package/lib/assets/.claude/skills/orchestrating-analysis/SKILL.md +65 -95
  39. package/lib/assets/.claude/skills/orchestrating-development/SKILL.md +60 -155
  40. package/lib/assets/.claude/skills/orchestrating-operation/SKILL.md +158 -0
  41. package/lib/assets/.claude/skills/orchestrating-project/SKILL.md +60 -119
  42. package/lib/assets/.claude/skills/planning-releases/SKILL.md +63 -168
  43. package/lib/assets/.claude/skills/syncing-github-project/SKILL.md +62 -266
  44. package/lib/assets/.claude/skills/tracking-progress/SKILL.md +49 -122
  45. package/lib/assets/CLAUDE.md +7 -2
  46. package/lib/assets/README.md +3 -34
  47. package/lib/assets/docs/development/index.md +14 -8
  48. 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 +29 -39
  49. package/lib/assets/docs/reference//351/201/213/347/224/250/343/202/271/343/202/257/343/203/252/343/203/227/343/203/210/344/275/234/346/210/220/343/202/254/343/202/244/343/203/211.md +421 -0
  50. package/lib/assets/docs/reference//351/226/213/347/231/272/343/202/254/343/202/244/343/203/211.md +69 -5
  51. package/lib/assets/docs/template/AWS/343/202/271/343/203/206/343/203/274/343/202/270/343/203/263/343/202/260/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +1366 -0
  52. package/lib/assets/docs/template/AWS/343/203/227/343/203/255/343/203/200/343/202/257/343/202/267/343/203/247/343/203/263/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +634 -0
  53. package/lib/assets/docs/template//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/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +547 -0
  54. 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/350/250/210/347/224/273.md +123 -1
  55. package/lib/assets/docs/template//350/250/255/350/250/210.md +12 -2
  56. package/lib/assets/docs/template//351/226/213/347/231/272/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +688 -0
  57. package/package.json +1 -1
  58. package/lib/assets/.claude/SKILLS_TEMPLATE.md +0 -100
  59. package/lib/assets/.claude/agents/roles/.gitkeep +0 -0
  60. package/lib/assets/.claude/skills/managing-operations/DEPLOY.md +0 -77
  61. package/lib/assets/.claude/skills/managing-operations/SETUP_CSHARP.md +0 -80
  62. package/lib/assets/.claude/skills/managing-operations/SETUP_FRONTEND.md +0 -84
  63. package/lib/assets/.claude/skills/managing-operations/SETUP_JAVA.md +0 -75
  64. package/lib/assets/.claude/skills/managing-operations/SKILL.md +0 -156
@@ -1,87 +1,72 @@
1
1
  ---
2
2
  name: analyzing-usecases
3
- description: ユースケースとユーザーストーリーの作成を支援。ビジネスユースケースの抽出からシステムユースケースの定義まで。ユースケース分析やストーリー作成時に使用。
3
+ description: 要件定義からユースケースとユーザーストーリーを体系的に作成。ビジネスユースケース→システムユースケース→ユーザーストーリーの順に導出し、トレーサビリティを維持する。「ユースケースを作成したい」「ユーザーストーリーを書きたい」「要件定義からストーリーを導出したい」「受け入れ基準を定義したい」といった場面で発動する。ユースケースとストーリーを構造的に紐づけることで、開発フェーズでの「なぜこの機能を作るのか」が常に追跡可能になる。
4
4
  ---
5
5
 
6
- # ユースケース・ユーザーストーリー作成支援
6
+ # ユースケース・ユーザーストーリー作成
7
7
 
8
- 要件定義からユースケースを抽出し、トレーサビリティを維持します。
8
+ 要件定義からユースケースを抽出し、ユーザーストーリーまで一貫したトレーサビリティを維持しながら作成する。
9
9
 
10
- ## Instructions
10
+ ビジネスユースケース→システムユースケース→ユーザーストーリーの 3 段階で具体化することで、「ビジネス要求」と「実装タスク」の間の論理的なつながりを保証する。
11
11
 
12
- ### 1. 参照ドキュメント
12
+ ## 参照ドキュメントとテンプレート
13
13
 
14
- - @docs/reference/ユースケース作成ガイド.md - ユースケース作成の進め方
14
+ | 種類 | パス | 備考 |
15
+ |------|------|------|
16
+ | ガイド | @docs/reference/ユースケース作成ガイド.md | ユースケース作成の進め方詳細 |
17
+ | テンプレート | @docs/template/完全形式のユースケース.md | 編集禁止。参照のみ |
18
+ | 入力 | @docs/requirements/requirements_definition.md | 要件定義 |
19
+ | 成果物 | `docs/requirements/business_usecase.md` | ビジネスユースケース |
20
+ | 成果物 | `docs/requirements/system_usecase.md` | システムユースケース |
21
+ | 成果物 | `docs/requirements/user_story.md` | ユーザーストーリー |
15
22
 
16
- ### 2. テンプレート
23
+ ## 作成の 3 ステップ
17
24
 
18
- - @docs/template/完全形式のユースケース.md - ユースケーステンプレート(**編集禁止**)
25
+ ### ステップ 1: ビジネスユースケース作成
19
26
 
20
- ### 3. 入力
27
+ 要件定義からビジネスレベルのユースケースを抽出する。システムの詳細には踏み込まず、業務目標とアクターの関係を定義する。
21
28
 
22
- - @docs/requirements/requirements_definition.md - 要件定義
29
+ - 要件定義のシステム外部環境(層 2)を起点にアクターとユースケースを識別する
30
+ - アクターとユースケースの関係を PlantUML で図示する
23
31
 
24
- ### 4. 成果物
32
+ ### ステップ 2: システムユースケース作成
25
33
 
26
- - @docs/requirements/business_usecase.md - ビジネスユースケース
27
- - @docs/requirements/system_usecase.md - システムユースケース
28
- - @docs/requirements/user_story.md - ユーザーストーリー
34
+ ビジネスユースケースをシステム境界の視点で詳細化する。「システムが何を提供するか」を明確にする。
29
35
 
30
- ### 5. 作業内容
36
+ - ビジネスユースケースの各項目をシステムレベルに分解する
37
+ - システム境界を明確にし、テンプレートの完全形式で記述する
31
38
 
32
- #### ビジネスユースケース作成
39
+ ### ステップ 3: ユーザーストーリー作成
33
40
 
34
- - 要件定義からビジネスユースケースを抽出
35
- - アクターとユースケースの関係を定義
41
+ システムユースケースから開発可能な粒度のユーザーストーリーを導出する。
36
42
 
37
- #### システムユースケース作成
43
+ - 「〜として、〜したい。なぜなら〜だからだ」の形式で記述する
44
+ - 各ストーリーに受け入れ基準を定義する
45
+ - ユースケースとの対応関係を明記してトレーサビリティを確保する
38
46
 
39
- - ビジネスユースケースを詳細化
40
- - システム境界を明確化
47
+ ## 途中から再開・更新
41
48
 
42
- #### ユーザーストーリー作成
49
+ 既存の成果物がある場合は、まず現在の状態を確認する。不足しているステップや更新が必要な部分のみを修正する。
43
50
 
44
- - システムユースケースからユーザーストーリーを導出
45
- - 受け入れ基準の定義
51
+ **Example:**
46
52
 
47
- #### トレーサビリティ維持
48
-
49
- - ユースケースとユーザーストーリー間のトレーサビリティを確保
50
-
51
- ### 6. 注意事項
52
-
53
- - **前提条件**: @docs/requirements/requirements_definition.md が存在すること
54
- - **制限事項**:
55
- - テンプレート @docs/template/完全形式のユースケース.md は絶対に編集しないこと
56
- - user_story.md にはユーザーストーリーのみ記述する
57
- - リリース計画とイテレーション計画は別途作成する
58
- - **推奨事項**: ユースケースとユーザーストーリーでトレーサビリティを維持する
59
-
60
- ### 7. 記述ルール
61
-
62
- タスク項目などは一行開けて記述する。
63
-
64
- OK:
65
-
66
- ```markdown
67
- **受入条件**:
68
-
69
- - [ ] ビジネスユースケースが作成されている
70
- - [ ] ユーザーストーリーが作成されている
71
53
  ```
72
-
73
- NG:
74
-
75
- ```markdown
76
- **受入条件**:
77
- - [ ] ビジネスユースケースが作成されている
78
- - [ ] ユーザーストーリーが作成されている
54
+ ユーザー: 「ビジネスユースケースは作った。ユーザーストーリーを書きたい」
55
+ 回答: ステップ 2(システムユースケース)の存在を確認する。
56
+ 未作成ならステップ 2 から開始。作成済みならステップ 3 に進む。
57
+ 既存のビジネスユースケースのアクターとユースケースを起点に、
58
+ システムユースケースを詳細化してからユーザーストーリーを導出する。
79
59
  ```
80
60
 
81
- ## Examples
61
+ ## 注意事項
62
+
63
+ - 入力の `requirements_definition.md` が存在しない場合は `analyzing-requirements` を先に実行する
64
+ - テンプレートは編集禁止。参照のみとし、成果物は別ファイルに作成する
65
+ - `user_story.md` にはユーザーストーリーのみ記述する。リリース計画・イテレーション計画は `planning-releases` で別途作成する
66
+ - タスク項目(リスト)の前には空行を入れる(Markdown Lint 準拠)
82
67
 
83
- ### 要件定義に基づくユースケース作成
68
+ ## 関連スキル
84
69
 
85
- 1. @docs/requirements/requirements_definition.md を読み込む
86
- 2. @docs/reference/ユースケース作成ガイド.md に基づいてユースケースを作成
87
- 3. ビジネスユースケース システムユースケース → ユーザーストーリーの順に作成
70
+ - `analyzing-requirements` — 前段の要件定義(RDRA 2.0)
71
+ - `planning-releases` — 後続のリリース・イテレーション計画
72
+ - `orchestrating-analysis` 分析フェーズ全体のワークフロー案内
@@ -1,32 +1,20 @@
1
1
  ---
2
2
  name: creating-adr
3
- description: Architecture Decision Record の作成を支援。技術的意思決定の記録フォーマットとベストプラクティス。アーキテクチャ上の意思決定を記録する際に使用。
3
+ description: Architecture Decision Record(ADR)の作成・管理を支援。技術的意思決定の背景・決定・影響をテンプレートに沿って記録する。「ADR を作成したい」「アーキテクチャの決定を記録したい」「技術選定の理由を残したい」「設計判断を文書化したい」といった場面で発動する。意思決定の経緯を記録することで、将来「なぜこの技術を選んだのか」が追跡可能になり、同じ議論の繰り返しを防ぐ。
4
4
  ---
5
5
 
6
- # ADR (Architecture Decision Record) 作成支援
6
+ # ADR 作成
7
7
 
8
- アーキテクチャ決定記録(ADR)の作成・管理を支援します。
8
+ アーキテクチャ決定記録(ADR)を作成・管理する。技術的意思決定のコンテキスト・決定内容・影響を構造化して記録する。
9
9
 
10
- ## Instructions
10
+ ADR の価値は「決定そのもの」ではなく「なぜその決定に至ったか」を残すこと。代替案と却下理由を含めることで、将来の見直し時に同じ検討を繰り返さずに済む。
11
11
 
12
- ### 1. ADR ファイル構造
13
-
14
- ADR は `docs/adr/` ディレクトリに以下の命名規則で保存:
15
-
16
- ```
17
- docs/adr/
18
- ├── 001-backend-architecture-pattern.md
19
- ├── 002-backend-framework.md
20
- ├── 003-frontend-framework.md
21
- └── 004-database.md
22
- ```
23
-
24
- ### 2. ADR テンプレート
12
+ ## ADR テンプレート
25
13
 
26
14
  ```markdown
27
15
  # ADR-NNN: タイトル
28
16
 
29
- 簡潔な説明(1行で決定内容を要約)。
17
+ 簡潔な説明(1 行で決定内容を要約)。
30
18
 
31
19
  日付: YYYY-MM-DD
32
20
 
@@ -75,7 +63,7 @@ docs/adr/
75
63
  - 関連 ADR: ADR-XXX
76
64
  ```
77
65
 
78
- ### 3. ステータスの種類
66
+ ## ステータスの種類
79
67
 
80
68
  | ステータス | 説明 |
81
69
  |-----------|------|
@@ -84,32 +72,42 @@ docs/adr/
84
72
  | 廃止 | 無効になった決定 |
85
73
  | 置換 | 別の ADR で置き換えられた |
86
74
 
87
- ### 4. 注意事項
75
+ ## 作成の進め方
88
76
 
89
- - **採番規則**: ADR 番号は 001 から連番で管理。既存の最大番号 + 1 で採番
90
- - **ファイル名**: `NNN-kebab-case-title.md` 形式(例: `006-cache-strategy.md`)
91
- - **配置場所**: 必ず `docs/adr/` ディレクトリに配置
92
- - **ドキュメント更新**: 新規 ADR 作成時は `docs/index.md` と `mkdocs.yml` も更新が必要
93
- - **コミット禁止**: ユーザーの指示があるまでコミットしない
77
+ ### 新規 ADR の作成
94
78
 
95
- ### 5. ベストプラクティス
79
+ 1. `docs/adr/` ディレクトリ内の既存 ADR の最大番号を確認する
80
+ 2. 次の連番でテンプレートに基づいて ADR を作成する
81
+ 3. `docs/index.md` と `mkdocs.yml` を更新する
96
82
 
97
- 1. **簡潔な要約**: タイトル直下に 1 行で決定内容を要約する
98
- 2. **コンテキストの明確化**: なぜこの決定が必要なのか背景を説明
99
- 3. **代替案の記録**: 検討した選択肢と却下理由を残す
100
- 4. **影響の両面記載**: ポジティブ・ネガティブ両方の影響を記載
101
- 5. **コンプライアンス項目**: 決定が守られていることを確認する方法を記載
83
+ ### 既存設計からの ADR 抽出
102
84
 
103
- ## Examples
85
+ 1. アーキテクチャ設計ドキュメントを読み込む
86
+ 2. 主要な技術的意思決定を識別する
87
+ 3. 各決定を ADR として記録する
104
88
 
105
- ### 新しい ADR の作成
89
+ ## 途中から再開・更新
106
90
 
107
- 1. `docs/adr/` ディレクトリ内の既存 ADR の最大番号を確認
108
- 2. 次の連番でテンプレートに基づいて ADR を作成
109
- 3. `docs/index.md` と `mkdocs.yml` を更新
91
+ 既存の ADR がある場合は `docs/adr/` の内容を確認する。ステータス変更や新規 ADR の追記のみを行う。
110
92
 
111
- ### 既存設計からの ADR 抽出
93
+ **Example:**
112
94
 
113
- 1. アーキテクチャ設計ドキュメントを読み込む
114
- 2. 主要な技術的意思決定を識別
115
- 3. 各決定を ADR として記録
95
+ ```
96
+ ユーザー: 「フレームワークを変更する決定を記録したい」
97
+ 回答: docs/adr/ の最大番号を確認し、次の連番で ADR を作成する。
98
+ 既存の関連 ADR があればステータスを「置換」に変更し、
99
+ 新しい ADR の「コンテキスト」に経緯を記載する。
100
+ ```
101
+
102
+ ## 注意事項
103
+
104
+ - 採番は `001` から連番。ファイル名は `NNN-kebab-case-title.md` 形式(例: `006-cache-strategy.md`)
105
+ - 配置場所は必ず `docs/adr/`。新規作成時は `docs/index.md` と `mkdocs.yml` も更新する
106
+ - ユーザーの指示があるまでコミットしない
107
+ - コンテキストの明確化・代替案の記録・影響の両面記載・コンプライアンス項目を必ず含める
108
+
109
+ ## 関連スキル
110
+
111
+ - `analyzing-architecture` — アーキテクチャ設計(ADR の主な発生源)
112
+ - `analyzing-tech-stack` — 技術スタック選定(ADR として記録すべき決定)
113
+ - `git-commit` — ADR 作成後のコミット
@@ -1,37 +1,39 @@
1
1
  ---
2
2
  name: developing-backend
3
- description: バックエンド開発の TDD ワークフロー。Red-Green-Refactor サイクル、インサイドアウトアプローチ、品質チェックリスト。Java/Spring Boot のバックエンド実装時に使用。
3
+ description: バックエンド開発の TDD ワークフローを支援。Red-Green-Refactor サイクルとインサイドアウトアプローチで品質の高いバックエンドを実装する。「バックエンドを実装したい」「API を作りたい」「サーバーサイドの機能を追加したい」「バックエンドのテストを書きたい」といった場面で発動する。TDD で開発することで、リファクタリングの安全網を確保し、変更を楽に安全にできるコードを維持する。
4
4
  ---
5
5
 
6
- # バックエンド開発ガイド
6
+ # バックエンド開発
7
7
 
8
- TDD サイクルに従ったバックエンド開発を支援します。
8
+ TDD サイクルに従いバックエンドを開発する。インサイドアウトアプローチ(データ層→ドメイン層→API 層)で、内側から外側へ段階的に構築する。
9
9
 
10
- ## Instructions
10
+ インサイドアウトの利点は、ドメインロジックのテストが外部依存なしで書けること。テストの実行速度が速く、フィードバックループを短く保てる。
11
11
 
12
- ### 1. 参照ドキュメント
12
+ ## 参照ドキュメント
13
13
 
14
- - @docs/reference/コーディングとテストガイド.md - ワークフロー
15
- - @docs/design/architecture_backend.md - バックエンドアーキテクチャ
16
- - @docs/design/data-model.md - データモデル
17
- - @docs/design/domain-model.md - ドメインモデル
18
- - @docs/design/tech_stack.md - 技術スタック
19
- - @docs/design/test_strategy.md - テスト戦略
14
+ | 種類 | パス |
15
+ |------|------|
16
+ | ワークフロー | @docs/reference/コーディングとテストガイド.md |
17
+ | アーキテクチャ | @docs/design/architecture_backend.md |
18
+ | データモデル | @docs/design/data-model.md |
19
+ | ドメインモデル | @docs/design/domain-model.md |
20
+ | 技術スタック | @docs/design/tech_stack.md |
21
+ | テスト戦略 | @docs/design/test_strategy.md |
20
22
 
21
- ### 2. TDD サイクルの実践
23
+ ## TDD サイクル
22
24
 
23
- Red-Green-Refactor サイクルを厳密に実行:
25
+ 10-15 分で 1 サイクルを完了させる。サイクルが長引くなら、タスクの粒度が大きすぎる。
24
26
 
25
- 1. **Red フェーズ**: 失敗するテストを最初に書く
26
- 2. **Green フェーズ**: テストを通す最小限のコードを実装
27
- 3. **Refactor フェーズ**: 重複を除去し設計を改善
27
+ 1. **Red**: 失敗するテストを最初に書く
28
+ 2. **Green**: テストを通す最小限のコードを実装する
29
+ 3. **Refactor**: 重複を除去し設計を改善する
28
30
 
29
- ### 3. アプローチ戦略の選択
31
+ ## アプローチ
30
32
 
31
- - **インサイドアウト**: データ層から開始し上位層へ展開(推奨)
32
- - **アウトサイドイン**: API から開始しドメインロジックを段階的に実装
33
+ - **インサイドアウト**(推奨): データ層から開始し上位層へ展開する
34
+ - **アウトサイドイン**: API から開始しドメインロジックを段階的に実装する
33
35
 
34
- ### 4. テストコマンド
36
+ ## テストコマンド
35
37
 
36
38
  ```bash
37
39
  # 全テスト実行
@@ -44,20 +46,18 @@ cd apps/backend && ./gradlew test --tests "UserServiceTest"
44
46
  cd apps/backend && ./gradlew jacocoTestReport
45
47
  ```
46
48
 
47
- ### 5. API ドキュメント
48
-
49
- バックエンドには Swagger UI が組み込まれています。
49
+ ## API ドキュメント
50
50
 
51
51
  ```bash
52
52
  # バックエンドを起動
53
53
  cd apps/backend && ./gradlew bootRun
54
-
55
54
  # Swagger UI: http://localhost:8080/swagger-ui.html
56
55
  # OpenAPI JSON: http://localhost:8080/v3/api-docs
57
- # OpenAPI YAML: http://localhost:8080/api-docs.yaml
58
56
  ```
59
57
 
60
- ### 6. 品質チェックリスト
58
+ ## 品質チェックリスト
59
+
60
+ コミット前に必ず確認する。
61
61
 
62
62
  - [ ] すべてのテストがパス
63
63
  - [ ] ESLint/コンパイラの警告がゼロ
@@ -65,42 +65,36 @@ cd apps/backend && ./gradlew bootRun
65
65
  - [ ] 単一の論理的作業単位を表現
66
66
  - [ ] コミットメッセージが変更内容を明確に説明
67
67
 
68
- ### 7. コンテキスト管理
69
-
70
- 長時間の開発セッションでは Context limit reached エラーを回避するため、タスクの区切りごとに `/compact` を実施してコンテキストを圧縮する。
68
+ ## 途中から再開
71
69
 
72
- **`/compact` を実施するタイミング**:
70
+ 開発セッションの途中から再開する場合は、まず現在のテスト状態を確認する。
73
71
 
74
- - TDD サイクル(Red-Green-Refactor)を数回繰り返した後
75
- - ユーザーストーリー 1 件の実装が完了したとき
76
- - コミット完了後、次のタスクに着手する前
77
- - テストスイートの実行と結果確認が完了したとき
72
+ **Example:**
78
73
 
79
- **運用ルール**:
80
-
81
- 1. `/compact` 実施前に、現在の作業状態と次のタスクをメモとして出力する
82
- 2. `/compact` 実施後、次のタスクの作業を継続する
83
- 3. 大規模なユーザーストーリーでは、サブタスクごとに `/compact` を検討する
74
+ ```
75
+ ユーザー: 「ユーザー認証の Entity と Repository は実装済み。Service 層に進みたい」
76
+ 回答: 既存テストを実行して Green 状態を確認する。
77
+ Service 層の失敗するテスト(Red)を書いてから実装に進む。
78
+ Repository の戻り値を使った Service のビジネスロジックをテストする。
79
+ ```
84
80
 
85
- ### 8. 注意事項
81
+ ## コンテキスト管理
86
82
 
87
- - **前提条件**: Java/Gradle のテスト環境が設定済みであること
88
- - **制限事項**: TDD の三原則を厳密に守る(テストなしでプロダクションコードを書かない)
89
- - **推奨事項**: コミット前に必ず品質チェックリストを実行
90
- - 作業完了後に対象のイテレーション @docs/development/iteration_plan-N.md の進捗を更新する
83
+ タスクの区切りごとに `/compact` を実施して Context limit reached エラーを回避する。
91
84
 
92
- ## Examples
85
+ - TDD サイクルを数回繰り返した後、ユーザーストーリー完了時、コミット完了後に実施する
86
+ - `/compact` 前に現在の作業状態と次のタスクをメモとして出力する
93
87
 
94
- ### 新機能の TDD 実装
88
+ ## 注意事項
95
89
 
96
- 1. 失敗するテストを書く(Red)
97
- 2. テストを通す最小限のコードを実装(Green)
98
- 3. 重複を排除し設計を改善(Refactor)
99
- 4. 品質チェックリストを実行してコミット
90
+ - Java/Gradle のテスト環境が設定済みであること(前提条件)
91
+ - TDD の三原則を厳密に守る。テストなしでプロダクションコードを書かない
92
+ - コミット前に必ず品質チェックリストを実行する
93
+ - 作業完了後に対象の @docs/development/iteration_plan-N.md の進捗を更新する
94
+ - TODO 駆動開発でタスクを細かく分割し、Rule of Three で 3 回同じコードが現れたらリファクタリングする
100
95
 
101
- ### ベストプラクティス
96
+ ## 関連スキル
102
97
 
103
- 1. **TODO 駆動開発**: タスクを細かい TODO に分割してから実装開始
104
- 2. **小さなサイクル**: Red-Green-Refactor 10-15 分で完了させる
105
- 3. **継続的コミット**: 各サイクル完了時に動作する状態でコミット
106
- 4. **Rule of Three**: 同じコードが 3 回現れたらリファクタリング
98
+ - `developing-frontend` フロントエンド TDD 開発
99
+ - `orchestrating-development` 開発フェーズ全体のワークフロー
100
+ - `git-commit` — Conventional Commits 準拠のコミット
@@ -1,36 +1,38 @@
1
1
  ---
2
2
  name: developing-frontend
3
- description: フロントエンド開発の TDD ワークフロー。Red-Green-Refactor サイクル、アウトサイドインアプローチ、コンポーネント設計。React/TypeScript のフロントエンド実装時に使用。
3
+ description: フロントエンド開発の TDD ワークフローを支援。Red-Green-Refactor サイクルとアウトサイドインアプローチで品質の高い UI を実装する。「フロントエンドを実装したい」「画面を作りたい」「コンポーネントを追加したい」「フロントエンドのテストを書きたい」といった場面で発動する。TDD で開発することで、UI の振る舞いを自動テストで保証し、安全なリファクタリングを可能にする。
4
4
  ---
5
5
 
6
- # フロントエンド開発ガイド
6
+ # フロントエンド開発
7
7
 
8
- TDD サイクルに従ったフロントエンド開発を支援します。
8
+ TDD サイクルに従いフロントエンドを開発する。アウトサイドインアプローチ(UI 層→ロジック層→データ層)で、ユーザー視点から内側へ段階的に構築する。
9
9
 
10
- ## Instructions
10
+ アウトサイドインの利点は、ユーザーが実際に操作する画面から始めるため、不要な機能を作らずに済むこと。テストがユーザーの振る舞いに基づくため、実装の詳細に依存しにくい。
11
11
 
12
- ### 1. 参照ドキュメント
12
+ ## 参照ドキュメント
13
13
 
14
- - @docs/reference/コーディングとテストガイド.md - ワークフロー
15
- - @docs/design/architecture_frontend.md - フロントエンドアーキテクチャ
16
- - @docs/design/ui-design.md - UI 設計
17
- - @docs/design/tech_stack.md - 技術スタック
18
- - @docs/design/test_strategy.md - テスト戦略
14
+ | 種類 | パス |
15
+ |------|------|
16
+ | ワークフロー | @docs/reference/コーディングとテストガイド.md |
17
+ | アーキテクチャ | @docs/design/architecture_frontend.md |
18
+ | UI 設計 | @docs/design/ui-design.md |
19
+ | 技術スタック | @docs/design/tech_stack.md |
20
+ | テスト戦略 | @docs/design/test_strategy.md |
19
21
 
20
- ### 2. TDD サイクルの実践
22
+ ## TDD サイクル
21
23
 
22
- Red-Green-Refactor サイクルを厳密に実行:
24
+ 10-15 分で 1 サイクルを完了させる。サイクルが長引くなら、タスクの粒度が大きすぎる。
23
25
 
24
- 1. **Red フェーズ**: 失敗するテストを最初に書く
25
- 2. **Green フェーズ**: テストを通す最小限のコードを実装
26
- 3. **Refactor フェーズ**: 重複を除去し設計を改善
26
+ 1. **Red**: 失敗するテストを最初に書く
27
+ 2. **Green**: テストを通す最小限のコードを実装する
28
+ 3. **Refactor**: 重複を除去し設計を改善する
27
29
 
28
- ### 3. アプローチ戦略の選択
30
+ ## アプローチ
29
31
 
30
- - **アウトサイドイン**: UI から開始しロジックを段階的に実装(推奨)
31
- - **インサイドアウト**: ユーティリティ/hooks から開始し上位層へ展開
32
+ - **アウトサイドイン**(推奨): UI から開始しロジックを段階的に実装する
33
+ - **インサイドアウト**: ユーティリティ/hooks から開始し上位層へ展開する
32
34
 
33
- ### 4. テストコマンド
35
+ ## テストコマンド
34
36
 
35
37
  ```bash
36
38
  # 全テスト実行
@@ -46,7 +48,9 @@ cd apps/frontend && npm run test:coverage
46
48
  cd apps/frontend && npm run test:e2e
47
49
  ```
48
50
 
49
- ### 5. 品質チェックリスト
51
+ ## 品質チェックリスト
52
+
53
+ コミット前に必ず確認する。
50
54
 
51
55
  - [ ] すべてのテストがパス
52
56
  - [ ] ESLint の警告がゼロ
@@ -54,43 +58,36 @@ cd apps/frontend && npm run test:e2e
54
58
  - [ ] 単一の論理的作業単位を表現
55
59
  - [ ] コミットメッセージが変更内容を明確に説明
56
60
 
57
- ### 6. コンテキスト管理
58
-
59
- 長時間の開発セッションでは Context limit reached エラーを回避するため、タスクの区切りごとに `/compact` を実施してコンテキストを圧縮する。
60
-
61
- **`/compact` を実施するタイミング**:
61
+ ## 途中から再開
62
62
 
63
- - TDD サイクル(Red-Green-Refactor)を数回繰り返した後
64
- - コンポーネント 1 件の実装が完了したとき
65
- - コミット完了後、次のタスクに着手する前
66
- - テストスイートの実行と結果確認が完了したとき
63
+ 開発セッションの途中から再開する場合は、まず現在のテスト状態を確認する。
67
64
 
68
- **運用ルール**:
65
+ **Example:**
69
66
 
70
- 1. `/compact` 実施前に、現在の作業状態と次のタスクをメモとして出力する
71
- 2. `/compact` 実施後、次のタスクの作業を継続する
72
- 3. 大規模なユーザーストーリーでは、サブタスクごとに `/compact` を検討する
67
+ ```
68
+ ユーザー: 「ログイン画面のコンポーネントは作った。バリデーションを追加したい」
69
+ 回答: 既存テストを実行して Green 状態を確認する。
70
+ バリデーションの失敗するテスト(Red)を書いてから実装に進む。
71
+ ユーザーが不正な入力をした場合のエラー表示をテストする。
72
+ ```
73
73
 
74
- ### 7. 注意事項
74
+ ## コンテキスト管理
75
75
 
76
- - **前提条件**: Node.js/npm のテスト環境が設定済みであること
77
- - **制限事項**: TDD の三原則を厳密に守る(テストなしでプロダクションコードを書かない)
78
- - **推奨事項**: コミット前に必ず品質チェックリストを実行
79
- - 作業完了後に対象のイテレーション @docs/development/iteration_plan-N.md の進捗を更新する
76
+ タスクの区切りごとに `/compact` を実施して Context limit reached エラーを回避する。
80
77
 
81
- ## Examples
78
+ - TDD サイクルを数回繰り返した後、コンポーネント完了時、コミット完了後に実施する
79
+ - `/compact` 前に現在の作業状態と次のタスクをメモとして出力する
82
80
 
83
- ### 新コンポーネントの TDD 実装
81
+ ## 注意事項
84
82
 
85
- 1. 失敗するテストを書く(Red)
86
- 2. テストを通す最小限のコードを実装(Green)
87
- 3. 重複を排除し設計を改善(Refactor)
88
- 4. 品質チェックリストを実行してコミット
83
+ - Node.js/npm のテスト環境が設定済みであること(前提条件)
84
+ - TDD の三原則を厳密に守る。テストなしでプロダクションコードを書かない
85
+ - コミット前に必ず品質チェックリストを実行する
86
+ - 作業完了後に対象の @docs/development/iteration_plan-N.md の進捗を更新する
87
+ - コンポーネントは単一責任の原則に従い小さく保つ。TODO 駆動で分割し、Rule of Three でリファクタリングする
89
88
 
90
- ### ベストプラクティス
89
+ ## 関連スキル
91
90
 
92
- 1. **TODO 駆動開発**: タスクを細かい TODO に分割してから実装開始
93
- 2. **小さなサイクル**: Red-Green-Refactor 10-15 分で完了させる
94
- 3. **継続的コミット**: 各サイクル完了時に動作する状態でコミット
95
- 4. **Rule of Three**: 同じコードが 3 回現れたらリファクタリング
96
- 5. **コンポーネント分割**: 単一責任の原則に従いコンポーネントを小さく保つ
91
+ - `developing-backend` バックエンド TDD 開発
92
+ - `orchestrating-development` 開発フェーズ全体のワークフロー
93
+ - `git-commit` — Conventional Commits 準拠のコミット