@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
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: operating-backup
3
+ description: データベースのバックアップ・リストアを実行。AWS Backup による自動バックアップ、SSH トンネル経由の手動バックアップ、スナップショットからのリストア。バックアップやリストア、データ復旧時に使用。
4
+ ---
5
+
6
+ # バックアップ・リストア
7
+
8
+ データベースのバックアップ・リストアを実行します。
9
+
10
+ ## Instructions
11
+
12
+ ### 1. AWS Backup(自動バックアップ)
13
+
14
+ `Backup = "true"` タグが付与された RDS インスタンスに対して日次・週次でスナップショットを自動取得する。
15
+
16
+ | ルール | スケジュール | 保持期間 |
17
+ |--------|-------------|---------|
18
+ | daily | 毎日 JST 0:00 | 7 日 |
19
+ | weekly | 毎週日曜 JST 0:00 | 35 日 |
20
+
21
+ ### 2. 手動バックアップ(SSH トンネル経由)
22
+
23
+ 踏み台サーバー経由で RDS に接続し、スキーマ単位のバックアップを実行する。
24
+
25
+ ```bash
26
+ # SSH トンネルを確立
27
+ ssh -L 5432:<RDS エンドポイント>:5432 ec2-user@<踏み台 IP> -i <キーペア>.pem
28
+
29
+ # スキーマ単位でバックアップ
30
+ PGPASSWORD=<パスワード> pg_dump -h 127.0.0.1 -p 5432 -U <ユーザー名> -d <DB 名> -n <スキーマ名> -Fc -f <スキーマ名>_backup.dump
31
+ ```
32
+
33
+ ### 3. リストア
34
+
35
+ ```bash
36
+ # pg_restore によるリストア
37
+ PGPASSWORD=<パスワード> pg_restore -h 127.0.0.1 -p 5432 -U <ユーザー名> -d <DB 名> --clean --if-exists <ダンプファイル>
38
+ ```
39
+
40
+ ### 4. AWS Backup からのリストア
41
+
42
+ 1. AWS コンソール → AWS Backup → バックアップボールト → リカバリポイントを選択
43
+ 2. 「復元」をクリック → リストア先の DB インスタンス識別子を指定
44
+ 3. リストア完了後、アプリケーションの接続先を切り替え
45
+
46
+ > **注意**: AWS Backup からのリストアは新しい RDS インスタンスとして作成されます。
47
+
48
+ ### 5. 基本例
49
+
50
+ ```bash
51
+ # 「データベースをバックアップして」
52
+ # 「SMS スキーマをバックアップして」
53
+ # 「バックアップからリストアして」
54
+ ```
55
+
56
+ ### 関連スキル
57
+
58
+ - `operating-deploy` : デプロイ前のバックアップ確認
59
+ - `operating-provision` : AWS Backup リソースのプロビジョニング
@@ -0,0 +1,54 @@
1
+ ---
2
+ name: operating-cicd
3
+ description: CI/CD パイプラインを構築。CI(Lint・テスト・ビルド・セキュリティスキャン)と CD(環境別デプロイ・OIDC 認証)の設計・実装。CI/CD パイプラインの構築やデプロイ自動化の設定時に使用。
4
+ ---
5
+
6
+ # CI/CD パイプライン構築
7
+
8
+ 継続的インテグレーション・デプロイのパイプラインを構築します。
9
+
10
+ ## Instructions
11
+
12
+ ### 1. CI パイプライン
13
+
14
+ ビルド・テスト・品質チェックを自動化する。
15
+
16
+ | 段階 | 内容 | 目的 |
17
+ |------|------|------|
18
+ | ソースチェックアウト | リポジトリのコード取得 | 最新コードの取得 |
19
+ | 依存関係インストール | パッケージのインストール | ビルド環境の準備 |
20
+ | 静的解析 | Lint、型チェック | コード品質の担保 |
21
+ | テスト | 単体・統合テストの実行 | 機能の正しさの検証 |
22
+ | ビルド | アプリケーションのビルド | デプロイ可能な成果物の生成 |
23
+ | セキュリティスキャン | 依存関係の脆弱性チェック | セキュリティリスクの排除 |
24
+
25
+ ### 2. CD パイプライン
26
+
27
+ 環境別のデプロイを自動化する。
28
+
29
+ | 環境 | トリガー | 方式 | 承認 |
30
+ |------|---------|------|------|
31
+ | Development | `develop` ブランチ push | 即座デプロイ | 不要 |
32
+ | Staging | `main` ブランチ push | 自動デプロイ | 不要 |
33
+ | Production | リリースタグ作成 | ローリング or Blue/Green | 必須 |
34
+
35
+ ### 3. OIDC 認証
36
+
37
+ クラウド環境へのデプロイではシークレットキーの直接管理を避け、OIDC(OpenID Connect)認証を使用する。
38
+
39
+ - **AWS**: GitHub Actions OIDC Provider + IAM Role
40
+ - **GCP**: Workload Identity Federation
41
+ - **Azure**: Federated Identity Credentials
42
+
43
+ ### 4. ベストプラクティス
44
+
45
+ - **高速フィードバック**: Lint → テスト → ビルドの順で失敗を早期検知
46
+ - **キャッシュ活用**: 依存関係のキャッシュで実行時間を短縮
47
+ - **並列実行**: 独立したジョブは並列で実行
48
+ - **段階的導入**: CI 基盤 → 開発環境 CD → ステージング CD → 本番 CD の順
49
+
50
+ ### 関連スキル
51
+
52
+ - `operating-deploy` : デプロイの実行
53
+ - `operating-provision` : OIDC 用 IAM ロールのプロビジョニング
54
+ - `orchestrating-operation` : 運用フェーズ全体のワークフロー案内
@@ -0,0 +1,67 @@
1
+ ---
2
+ name: operating-deploy
3
+ description: 各環境へのデプロイを実行。Docker イメージのビルド・プッシュ、ローリングデプロイ、Blue/Green デプロイ、ロールバック、ステータス確認、ログ取得。デプロイやロールバック、サービス状態確認時に使用。
4
+ ---
5
+
6
+ # デプロイ
7
+
8
+ 各環境へのデプロイ、ロールバック、ステータス確認を実行します。
9
+
10
+ ## Instructions
11
+
12
+ ### 1. デプロイフロー
13
+
14
+ ```
15
+ Docker ビルド → Registry プッシュ → 対象環境でプル → サービス更新 → ヘルスチェック
16
+ ```
17
+
18
+ ### 2. デプロイ方式
19
+
20
+ | 方式 | 説明 | 用途 |
21
+ |------|------|------|
22
+ | Docker イメージ配布 | Registry 経由でイメージをプル | 開発環境 |
23
+ | ローリングデプロイ | 段階的にインスタンスを更新 | ECS ステージング・本番 |
24
+ | Blue/Green | 新旧環境を切り替え | RDS アップグレード |
25
+
26
+ ### 3. 環境別デプロイ
27
+
28
+ ```bash
29
+ # 開発環境: Docker イメージ配布
30
+ # 「開発環境にデプロイして」
31
+
32
+ # ステージング環境: ECS ローリングデプロイ
33
+ # 「ステージングにデプロイして」
34
+
35
+ # 本番環境: 承認後デプロイ
36
+ # 「本番にデプロイして」
37
+ ```
38
+
39
+ ### 4. ロールバック
40
+
41
+ 問題発生時は前バージョンに切り戻す。
42
+
43
+ ```bash
44
+ # 「開発環境をロールバックして」
45
+ # 「本番を前バージョンに戻して」
46
+ ```
47
+
48
+ ### 5. ステータス確認・ログ
49
+
50
+ ```bash
51
+ # 「開発環境の状態を確認して」
52
+ # 「ステージングのログを見せて」
53
+ # 「全環境の状態を確認して」
54
+ ```
55
+
56
+ ### 6. 注意事項
57
+
58
+ - **段階的デプロイ**: Development → Staging → Production の順序を厳守
59
+ - **ステージング検証**: 本番デプロイ前にステージングで十分に検証
60
+ - **ロールバック準備**: デプロイ前にロールバック手順を確認
61
+ - **ヘルスチェック**: デプロイ後に必ず動作確認を実施
62
+
63
+ ### 関連スキル
64
+
65
+ - `operating-cicd` : CI/CD パイプライン構築
66
+ - `operating-backup` : デプロイ前のバックアップ
67
+ - `developing-release` : リリースワークフロー
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: managing-docs
2
+ name: operating-docs
3
3
  description: 設計ドキュメントの一覧表示、進捗確認、内容参照、インデックス更新、Markdown Lint を実行。ドキュメント管理や整備時に使用。
4
4
  ---
5
5
 
@@ -0,0 +1,77 @@
1
+ ---
2
+ name: operating-provision
3
+ description: IaC(Terraform)によるインフラプロビジョニングを実行。S3 状態管理、VPC、RDS、ECR、ECS 等の AWS リソースを段階的に構築・管理。Terraform の init/plan/apply やインフラ構築時に使用。
4
+ ---
5
+
6
+ # インフラプロビジョニング
7
+
8
+ IaC(Infrastructure as Code)により、ステージング・本番環境のインフラを構築・管理します。
9
+
10
+ ## Instructions
11
+
12
+ ### 1. Terraform ワークフロー
13
+
14
+ ```
15
+ インフラコード作成 → init → plan → apply → テスト → ドキュメント更新
16
+ ```
17
+
18
+ ```bash
19
+ # 初期化
20
+ terraform init --backend-config=backend.hcl
21
+
22
+ # 変更確認
23
+ terraform plan
24
+
25
+ # 適用
26
+ terraform apply
27
+
28
+ # 廃棄
29
+ terraform destroy
30
+ ```
31
+
32
+ aws-vault 使用時は `aws-vault exec <profile> --` プレフィックスを付与する。
33
+
34
+ ### 2. プロビジョニング順序
35
+
36
+ ステージング・本番環境では以下のリソースを段階的にプロビジョニングする。
37
+
38
+ 1. **状態管理**: S3 バケット + DynamoDB(Terraform State)
39
+ 2. **IAM**: OIDC 認証用 IAM ロール(GitHub Actions 連携)
40
+ 3. **シークレット**: SSM パラメータストア(DB 認証情報)
41
+ 4. **ネットワーク**: VPC・サブネット・NAT Gateway
42
+ 5. **データストア**: RDS
43
+ 6. **バックアップ**: AWS Backup
44
+ 7. **レジストリ**: ECR リポジトリ
45
+ 8. **コンピュート**: ECS(Fargate + ALB)
46
+ 9. **管理**: Application Manager(リソースグループ)
47
+ 10. **DNS**: Route 53・カスタムドメイン(任意)
48
+ 11. **踏み台**: EC2 踏み台サーバー(任意)
49
+
50
+ ### 3. Terraform ディレクトリ構成
51
+
52
+ ```text
53
+ ops/terraform/
54
+ ├── live/
55
+ │ ├── global/ # S3 状態管理、IAM ロール
56
+ │ ├── stage/ # ステージング環境リソース
57
+ │ └── prod/ # 本番環境リソース
58
+ ├── modules/ # 再利用可能モジュール
59
+ └── test/ # Terratest
60
+ ```
61
+
62
+ ### 4. 環境廃棄
63
+
64
+ 廃棄は**構築時と逆の順序**で実行する。本番環境では `deletion_protection` を事前に `false` に変更する。
65
+
66
+ ### 5. 注意事項
67
+
68
+ - **状態管理が先**: S3 + DynamoDB は他の全リソースより先に作成
69
+ - **IaC 優先**: 手作業を最小限に抑え、インフラをコードで管理
70
+ - **テスト**: LocalStack(ローカル)、Terratest(単体・結合)で検証
71
+ - **secret.tfvars**: Git 管理外にすること
72
+
73
+ ### 関連スキル
74
+
75
+ - `operating-setup` : 環境構築の段階的実行
76
+ - `operating-cicd` : CI/CD パイプライン構築
77
+ - `operating-deploy` : デプロイ実行
@@ -0,0 +1,63 @@
1
+ ---
2
+ name: operating-setup
3
+ description: 環境構築を段階的に実行。アプリケーション開発環境→開発環境→ステージング→本番の順序でセットアップ。テンプレートから手順書を生成し環境を構築。環境構築やセットアップ、新しい環境の追加時に使用。
4
+ ---
5
+
6
+ # 環境構築
7
+
8
+ 開発ガイドの運用セクションに準拠し、各環境を段階的にセットアップします。テンプレートからプロジェクト固有の手順書を生成し、その手順書に従って環境を構築します。
9
+
10
+ ## Instructions
11
+
12
+ ### 1. 段階的構築フロー
13
+
14
+ 環境構築は以下の順序で段階的に進める。前段の環境が構築済みであることを確認してから次に進む。
15
+
16
+ ```
17
+ アプリケーション開発環境 → 開発環境 → ステージング環境 → 本番環境
18
+ ```
19
+
20
+ | 段階 | 環境 | テンプレート | 目的 |
21
+ |------|------|-------------|------|
22
+ | 1 | アプリケーション開発環境 | @docs/template/アプリケーション開発環境セットアップ手順書.md | ローカル開発の効率化 |
23
+ | 2 | 開発環境 | @docs/template/開発環境セットアップ手順書.md | Docker ベースのチーム共有環境 |
24
+ | 3 | ステージング環境 | @docs/template/AWSステージング環境セットアップ手順書.md | AWS 上の本番相当テスト環境 |
25
+ | 4 | 本番環境 | @docs/template/AWSプロダクション環境セットアップ手順書.md | プロダクション環境 |
26
+
27
+ ### 2. 実行手順
28
+
29
+ 1. テンプレートを読み込む
30
+ 2. プレースホルダー(`{プロジェクト名}`、`{サービス名}` 等)をプロジェクト固有の値に置換
31
+ 3. `docs/operation/` 配下にプロジェクト固有の手順書を生成
32
+ 4. 手順書に従って環境を構築
33
+ 5. 構築完了後、運用スクリプトを作成(`operating-script` 参照)
34
+ 6. 手順書とドキュメントを更新
35
+
36
+ ### 3. 基本例
37
+
38
+ ```bash
39
+ # アプリケーション開発環境のセットアップ
40
+ # 「ローカル開発環境を構築して」
41
+
42
+ # 開発環境のセットアップ(Docker ベース)
43
+ # 「開発サーバーの環境を構築して」
44
+
45
+ # ステージング環境のセットアップ(AWS)
46
+ # 「ステージング環境を AWS にセットアップしたい」
47
+
48
+ # 本番環境のセットアップ(AWS)
49
+ # 「本番環境を構築して」
50
+ ```
51
+
52
+ ### 4. 注意事項
53
+
54
+ - **段階的構築**: アプリ開発環境 → 開発環境 → ステージング → 本番の順序を厳守
55
+ - **テンプレート活用**: 手順書テンプレートを基にプロジェクト固有の手順書を必ず作成してから環境構築を実行
56
+ - **ドキュメント同期**: 環境変更時は手順書を同時更新
57
+ - **本番環境の安全**: 本番環境の構築は十分な確認と承認のもとで実行
58
+
59
+ ### 関連スキル
60
+
61
+ - `orchestrating-operation` : 運用フェーズ全体のワークフロー案内
62
+ - `operating-provision` : IaC によるインフラプロビジョニング
63
+ - `operating-cicd` : CI/CD パイプライン構築
@@ -1,134 +1,104 @@
1
1
  ---
2
2
  name: orchestrating-analysis
3
- description: 分析フェーズ全体のワークフローをオーケストレーション。要件定義から非機能要件まで各 analyzing-* スキルの実行順序を案内。分析フェーズの開始や全体像の把握時に使用。
3
+ description: 分析フェーズ全体のワークフローをオーケストレーション。戦略→要件定義→機能要件→非機能要件の順序で各 analyzing-* スキルの実行を案内。分析フェーズの開始、全体像の把握、次に何を分析すべきかの判断、分析の進め方の相談時に使用。「分析を始めたい」「要件定義の次は何?」「設計ドキュメントを一通り作りたい」といった場面で発動する。
4
4
  ---
5
5
 
6
6
  # 分析フェーズオーケストレーション
7
7
 
8
- 分析フェーズ全体の作業を支援します。要件定義から非機能要件まで包括的な分析ワークフローを提供します。
8
+ 分析フェーズ全体の作業順序を案内する。各工程には専門の analyzing-* スキルがあるため、このスキルの役割は「何を・どの順序で・なぜその順序で」進めるかを示すことにある。
9
9
 
10
- ## Instructions
10
+ 開発ガイド(@docs/reference/開発ガイド.md)の分析セクションに定義されたフローに準拠する。
11
11
 
12
- ### 1. 分析フェーズの全体像
12
+ ## 分析フェーズの構成
13
13
 
14
- 分析フェーズは以下の工程で構成されます:
14
+ 分析は **戦略 → 要件定義 → 機能要件 → 非機能要件** の 4 段階で進める。各段階の出力が次の段階の入力になるため、この順序を守ることが品質を確保する上で重要になる。
15
15
 
16
- 1. **ビジネスアーキテクチャ分析** (Skill: `analyzing-business`)
16
+ ### 段階 1: 戦略
17
17
 
18
- - ビジネスモデルキャンバスの作成
19
- - バリューストリームの設計
20
- - ビジネスケイパビリティモデルの構築
18
+ プロジェクトの「なぜ・何を・どうやって」を明確にする。ここが曖昧だと後工程すべてがブレるため、最初に固める。
21
19
 
22
- 2. **インセプションデッキ作成** (Skill: `analyzing-inception-deck`)
20
+ | 工程 | スキル | 成果物 |
21
+ |------|--------|--------|
22
+ | ビジネスアーキテクチャ分析 | `analyzing-business` | ビジネスモデルキャンバス、バリューストリーム、ケイパビリティマップ |
23
+ | インセプションデッキ作成 | `analyzing-inception-deck` | 10 の問いへの回答、概念アーキテクチャ、マイルストーン |
23
24
 
24
- - プロジェクトの「なぜ」「何を」「どうやって」を 10 の問いで整理
25
- - スコープ・リスク・トレードオフの明確化
26
- - 概念アーキテクチャとマイルストーンの策定
25
+ ### 段階 2: 要件定義
27
26
 
28
- 3. **要件定義** (Skill: `analyzing-requirements`)
27
+ システムが解決すべき問題と境界を定義する。RDRA 2.0 の体系に従い、システム価値→外部環境→境界の順で分析を進める。
29
28
 
30
- - システム価値の明確化
31
- - システム外部環境の分析
32
- - システム境界の定義
29
+ | 工程 | スキル | 成果物 |
30
+ |------|--------|--------|
31
+ | 要件定義 | `analyzing-requirements` | システムコンテキスト、要求モデル、業務フロー |
32
+ | ユースケース・ユーザーストーリー | `analyzing-usecases` | ビジネスユースケース、システムユースケース、ユーザーストーリー |
33
33
 
34
- 4. **ユースケース作成** (Skill: `analyzing-usecases`)
34
+ ### 段階 3: 機能要件
35
35
 
36
- - ビジネスユースケースの抽出
37
- - システムユースケースの定義
38
- - ユーザーストーリーの作成
36
+ 要件をどう実現するかの設計を行う。アーキテクチャが決まらないとデータモデルやドメインモデルの粒度が定まらないため、アーキテクチャ設計を先に行う。
39
37
 
40
- 5. **アーキテクチャ設計** (Skill: `analyzing-architecture`)
38
+ | 工程 | スキル | 成果物 |
39
+ |------|--------|--------|
40
+ | アーキテクチャ設計 | `analyzing-architecture` | バックエンド・フロントエンド・インフラ設計 |
41
+ | データモデル設計 | `analyzing-data-model` | ER 図、テーブル定義 |
42
+ | ドメインモデル設計 | `analyzing-domain-model` | エンティティ、値オブジェクト、集約 |
43
+ | UI 設計 | `analyzing-ui-design` | 画面遷移図、画面イメージ |
41
44
 
42
- - バックエンドアーキテクチャ
43
- - フロントエンドアーキテクチャ
44
- - インフラストラクチャアーキテクチャ
45
+ ### 段階 4: 非機能要件
45
46
 
46
- 6. **データモデル設計** (Skill: `analyzing-data-model`)
47
+ システムの品質特性と運用方針を定義する。機能要件が見えた段階で策定することで、現実的な要件を設定できる。
47
48
 
48
- - ER 図の作成
49
- - テーブル定義
49
+ | 工程 | スキル | 成果物 |
50
+ |------|--------|--------|
51
+ | テスト戦略 | `analyzing-test-strategy` | テストピラミッド、テスト種別、カバレッジ目標 |
52
+ | 非機能要件 | `analyzing-non-functional` | 性能・セキュリティ・可用性・保守性要件 |
53
+ | 運用要件 | `analyzing-operation` | 運用フロー、監視設計、障害対応手順 |
50
54
 
51
- 7. **ドメインモデル設計** (Skill: `analyzing-domain-model`)
55
+ ### 横断: 技術スタック・ADR
52
56
 
53
- - エンティティ定義
54
- - 値オブジェクト定義
55
- - 集約の設計
57
+ 技術スタック選定とアーキテクチャ決定記録は、分析の進行に応じて随時実施する。
56
58
 
57
- 8. **UI 設計** (Skill: `analyzing-ui-design`)
59
+ | 工程 | スキル | 成果物 |
60
+ |------|--------|--------|
61
+ | 技術スタック選定 | `analyzing-tech-stack` | 技術選定・評価結果 |
62
+ | ADR 作成 | `creating-adr` | Architecture Decision Record |
58
63
 
59
- - 画面遷移図
60
- - 画面イメージ
64
+ ## 進め方
61
65
 
62
- 9. **テスト戦略** (Skill: `analyzing-test-strategy`)
66
+ ### 現状を確認してから始める
63
67
 
64
- - テストピラミッド設計
65
- - テスト種別の定義
68
+ 分析を開始する前に、プロジェクトの現状を把握する。既存のドキュメントやコードがある場合、ゼロから始める必要はない。
66
69
 
67
- 10. **非機能要件** (Skill: `analyzing-non-functional`)
70
+ 1. `docs/` 配下の既存ドキュメントを確認
71
+ 2. `docs/design/` 配下の設計ドキュメントの有無を確認
72
+ 3. 未着手の工程を特定し、次のアクションを提案
68
73
 
69
- - 性能要件
70
- - セキュリティ要件
74
+ ### 途中から再開する場合
71
75
 
72
- 11. **運用要件** (Skill: `analyzing-operation`)
76
+ すべての工程を最初から実施する必要はない。既に完了している工程はスキップし、未着手または更新が必要な工程から再開する。
73
77
 
74
- - 運用フロー
75
- - 監視設計
78
+ **Example:**
76
79
 
77
- 12. **技術スタック** (Skill: `analyzing-tech-stack`)
80
+ ```
81
+ ユーザー: 「要件定義は終わった。次は何をすればいい?」
82
+ 回答: 段階 3(機能要件)のアーキテクチャ設計から開始。
83
+ analyzing-architecture スキルを使ってアーキテクチャ設計を進める。
84
+ ```
78
85
 
79
- - 技術選定
80
- - バージョン管理
86
+ ### 工程間のフィードバック
81
87
 
82
- ### 2. 連携シナリオ
88
+ 分析は一方通行ではない。後工程の検討で前工程の見直しが必要になることがある。たとえば、データモデル設計中に要件の不足に気づいた場合は、要件定義に戻って補完する。
83
89
 
84
- ```bash
85
- # プロジェクト情報の確認後に分析開始
86
- ls -la docs/
87
- cat README.md
88
- # 「プロジェクトの現状を踏まえた分析フェーズの進め方を提案」
89
- ```
90
+ ## コンテキスト管理
90
91
 
91
- ### 3. コンテキスト管理
92
+ 分析フェーズは多くの工程を含むため、長時間セッションになりやすい。以下のタイミングで `/compact` を実施し、コンテキストを圧縮する。
92
93
 
93
- 長時間の分析セッションでは Context limit reached エラーを回避するため、タスクの区切りごとに `/compact` を実施してコンテキストを圧縮する。
94
+ - 分析工程 1 件が完了したとき
95
+ - 設計ドキュメント 1 件の作成・更新が完了したとき
96
+ - コミット完了後、次の工程に着手する前
94
97
 
95
- **`/compact` を実施するタイミング**:
98
+ `/compact` 実施前に、現在の作業状態と次の工程をメモとして出力する。これにより、圧縮後も作業の連続性を保てる。
96
99
 
97
- - 分析工程 1 件(例: 要件定義、ユースケース作成)が完了したとき
98
- - 設計ドキュメント 1 件の作成・更新が完了したとき
99
- - 複数の analyzing-* スキルを連続実行する間
100
- - コミット完了後、次の分析工程に着手する前
101
-
102
- **運用ルール**:
103
-
104
- 1. `/compact` 実施前に、現在の作業状態と次の工程をメモとして出力する
105
- 2. `/compact` 実施後、次の工程の作業を継続する
106
- 3. 大規模な分析工程(例: アーキテクチャ設計)では、サブ工程ごとに `/compact` を検討する
107
-
108
- ### 4. 注意事項
109
-
110
- - **前提条件**: プロジェクトの基本的な背景情報の把握が必要
111
- - **制限事項**: 分析結果は開発フェーズで継続的に見直し・改善が必要
112
- - **推奨事項**: 各工程の成果物を文書化し、チーム内で共有することを推奨
113
-
114
- ### 5. ベストプラクティス
115
-
116
- 1. **段階的分析**: 要件定義から始めて段階的に詳細化する
117
- 2. **チーム連携**: 分析結果をチーム全体で共有し、合意形成を行う
118
- 3. **継続的改善**: 開発フェーズでのフィードバックを基に分析結果を見直す
119
- 4. **文書化**: 分析結果は PlantUML や Markdown で視覚的に文書化する
120
-
121
- ### 関連スキル
122
-
123
- - `analyzing-business` : ビジネスアーキテクチャ分析支援
124
- - `analyzing-inception-deck` : インセプションデッキ作成支援
125
- - `analyzing-requirements` : 要件定義関連の作業支援
126
- - `analyzing-usecases` : ユースケース・ユーザーストーリー作成支援
127
- - `analyzing-architecture` : アーキテクチャ設計支援
128
- - `analyzing-data-model` : データモデル設計支援
129
- - `analyzing-domain-model` : ドメインモデル設計支援
130
- - `analyzing-ui-design` : UI 設計支援
131
- - `analyzing-test-strategy` : テスト戦略策定支援
132
- - `analyzing-non-functional` : 非機能要件定義支援
133
- - `analyzing-operation` : 運用要件定義支援
134
- - `analyzing-tech-stack` : 技術スタック選定支援
100
+ ## 注意事項
101
+
102
+ - 分析結果は開発フェーズで継続的に見直す。完璧を目指して分析を長引かせるより、十分な品質で開発に進み、フィードバックで改善する方が効果的
103
+ - 各工程の成果物は `docs/` 配下に Markdown + PlantUML で文書化する
104
+ - リリース計画(`planning-releases`)は分析フェーズの最後に、技術スタック選定後に実施する