yodogawa 2.1.0 → 2.1.3

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 (48) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/LICENSE +21 -0
  3. package/README.md +27 -4
  4. package/bin/cli.js +0 -1
  5. package/package.json +3 -4
  6. package/skills/a-001-setup-doc-structure/SKILL.md +68 -67
  7. package/skills/a-001-setup-doc-structure/reference/directory-structure.md +75 -52
  8. package/skills/a-002-initialize-project/SKILL.md +118 -124
  9. package/skills/a-002-initialize-project/reference/structure-check.md +7 -7
  10. package/skills/a-003-create-scenarios/SKILL.md +96 -99
  11. package/skills/a-003-create-scenarios/reference/structure-check.md +5 -5
  12. package/skills/a-004-define-domain-model/SKILL.md +98 -99
  13. package/skills/a-004-define-domain-model/reference/event-storming-guide.md +3 -3
  14. package/skills/a-005-create-domain-diagram/SKILL.md +7 -7
  15. package/skills/a-005-create-domain-diagram/reference/structure-check.md +4 -4
  16. package/skills/a-006-review-requirements-domain/SKILL.md +4 -4
  17. package/skills/a-006-review-requirements-domain/reference/consistency-checks.md +5 -5
  18. package/skills/a-007-define-tech-stack/SKILL.md +99 -102
  19. package/skills/a-007-define-tech-stack/reference/structure-check.md +5 -5
  20. package/skills/a-008-define-repository-structure/SKILL.md +96 -99
  21. package/skills/a-008-define-repository-structure/reference/structure-check.md +5 -5
  22. package/skills/a-009-define-screen-design/SKILL.md +103 -106
  23. package/skills/a-009-define-screen-design/reference/structure-check.md +5 -5
  24. package/skills/a-010-define-design-system/SKILL.md +130 -134
  25. package/skills/a-011-define-data-model/SKILL.md +118 -121
  26. package/skills/a-011-define-data-model/reference/structure-check.md +5 -5
  27. package/skills/a-012-define-api-spec/SKILL.md +105 -108
  28. package/skills/a-012-define-api-spec/reference/structure-check.md +5 -5
  29. package/skills/a-013-define-architecture/SKILL.md +98 -101
  30. package/skills/a-013-define-architecture/reference/structure-check.md +5 -5
  31. package/skills/a-014-define-infrastructure/SKILL.md +110 -113
  32. package/skills/a-014-define-infrastructure/reference/structure-check.md +5 -5
  33. package/skills/a-015-review-design/SKILL.md +8 -8
  34. package/skills/a-015-review-design/reference/consistency-checks.md +2 -2
  35. package/skills/b-001-create-task-directory/SKILL.md +68 -68
  36. package/skills/b-002-create-task-definition/SKILL.md +114 -115
  37. package/skills/b-003-create-task-research/SKILL.md +128 -130
  38. package/skills/b-004-create-task-implementation/SKILL.md +98 -97
  39. package/skills/b-005-review-task/reference/assessment-criteria.md +79 -79
  40. package/skills/c-001-implement-task/SKILL.md +186 -186
  41. package/skills/c-001-implement-task/reference/implementation-loop.md +65 -65
  42. package/skills/c-002-update-documentation/SKILL.md +159 -159
  43. package/skills/c-002-update-documentation/reference/doc-structure-and-checks.md +97 -100
  44. package/templates/tasks/task-template/a-definition.md +1 -1
  45. package/templates/tasks/task-template/b-research.md +1 -1
  46. package/templates/tasks/task-template/c-implementation.md +3 -3
  47. package/scripts/setup-docs.sh +0 -92
  48. package/templates/documentation-rules.md +0 -143
package/CHANGELOG.md CHANGED
@@ -5,6 +5,18 @@
5
5
  フォーマットは [Keep a Changelog](https://keepachangelog.com/ja/1.0.0/) に基づいており、
6
6
  このプロジェクトは [Semantic Versioning](https://semver.org/lang/ja/spec/v2.0.0.html) に準拠しています。
7
7
 
8
+ ## [2.1.3] - 2026-06-22
9
+
10
+ ### 修正
11
+
12
+ - **スキル参照の採番ズレと旧 PascalCase 名を修正**: ドキュメント生成スキル(`c-001-implement-task` / `b-005-review-task`)と配布テンプレート(`templates/tasks/task-template/`)に残っていた、1つ手前のスキルを指す採番ズレと、kebab-case でないと解決しない旧 PascalCase スラッシュ名(`/c-001-ImplementTask` 等)を正しいスキル名・採番へ修正しました(#4)。`templates/` は利用者へ配布されるため、誤ったスキル実行への誘導が解消されます。
13
+
14
+ ## [2.1.2] - 2026-06-16
15
+
16
+ ### 削除
17
+
18
+ - **孤立テンプレートの削除**: どのスキルからも参照されず、内容も実構造(`templates/project/**` の各テンプレート)と乖離していた `templates/documentation-rules.md` を削除しました。各ドキュメントに記載する内容は各テンプレートファイル本体が単一の情報源(Single Source of Truth)です。
19
+
8
20
  ## [2.1.0] - 2026-04-16
9
21
 
10
22
  ### 変更
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 tkysi-mi
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -165,7 +165,7 @@ Why? ─── What? ─── How?
165
165
 
166
166
  ## 導入
167
167
 
168
- ### 方法1: NPMパッケージ(推奨)
168
+ ### 方法1: NPMパッケージ(推奨/全IDE対応)
169
169
 
170
170
  ```bash
171
171
  npm install -g yodogawa
@@ -173,11 +173,28 @@ cd your-project-dir
173
173
  yodogawa
174
174
  ```
175
175
 
176
- 対話形式でIDEを選択すると、`skills/`, `templates/`, `scripts/` がプロジェクトの IDE ディレクトリに配置されます。
176
+ 対話形式でIDEを選択すると、`skills/`, `templates/` がプロジェクトの IDE ディレクトリに配置されます。
177
177
 
178
- ### 方法2: 手動導入
178
+ ### 方法2: Claude Code Plugin(Claude Code 限定)
179
179
 
180
- このリポジトリの `skills/`, `templates/`, `scripts/` をプロジェクトの IDE ディレクトリにコピーしてください:
180
+ Claude Code から直接マーケットプレイスを追加してインストールできます。リポジトリにファイルをコピーせず、`.claude/settings.json` に参照エントリのみ追加されます。
181
+
182
+ ```bash
183
+ # Claude Code 内で以下を実行
184
+ /plugin marketplace add tkysi-mi/Yodogawa
185
+ /plugin install yodogawa@yodogawa
186
+ /reload-plugins
187
+ ```
188
+
189
+ スキルは `/yodogawa:a-001` のようにプラグイン名のプレフィックス付きで呼び出されます。
190
+
191
+ > ℹ️ Plugin 機能は Claude Code 固有です。Cursor / Codex / Antigravity を使う場合は方法1または方法3を選んでください。
192
+ >
193
+ > ℹ️ スキルが参照するテンプレート(`templates/`)は、各スキルの配置ディレクトリを起点に相対参照で解決されるため、Plugin 導入でもプラグインキャッシュ上のテンプレートが利用されます。実行環境の差異で解決できない場合は、確実な方法1(NPM)または方法3(手動)を利用してください。
194
+
195
+ ### 方法3: 手動導入
196
+
197
+ このリポジトリの `skills/`, `templates/` をプロジェクトの IDE ディレクトリにコピーしてください:
181
198
 
182
199
  - **Claude Code**: `.claude/` 配下にコピー
183
200
  - **Cursor / Codex / Antigravity**: `.agents/` 配下にコピー
@@ -238,3 +255,9 @@ description: プロジェクトのドキュメントディレクトリ構造を
238
255
 
239
256
  - **`name`**: スキルの識別子(kebab-case)
240
257
  - **`description`**: AIエージェントがスキルを呼び出すトリガーとなる説明文
258
+
259
+ ---
260
+
261
+ ## ライセンス
262
+
263
+ [MIT License](LICENSE) — Copyright (c) 2025 tkysi-mi
package/bin/cli.js CHANGED
@@ -49,7 +49,6 @@ async function main() {
49
49
 
50
50
  await fs.copy(path.join(pkgRoot, 'skills'), path.join(targetDir, 'skills'));
51
51
  await fs.copy(path.join(pkgRoot, 'templates'), path.join(targetDir, 'templates'));
52
- await fs.copy(path.join(pkgRoot, 'scripts'), path.join(targetDir, 'scripts'));
53
52
 
54
53
  console.log(green(`\n✔ Successfully installed Yodogawa skills for ${response.type}!`));
55
54
  console.log(`\nNext steps:`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "yodogawa",
3
- "version": "2.1.0",
3
+ "version": "2.1.3",
4
4
  "description": "CLI to install Yodogawa Slash Commands workflows",
5
5
  "bin": {
6
6
  "yodogawa": "bin/cli.js"
@@ -9,7 +9,6 @@
9
9
  "bin",
10
10
  "skills",
11
11
  "templates",
12
- "scripts",
13
12
  "README.md",
14
13
  "CHANGELOG.md"
15
14
  ],
@@ -43,7 +42,7 @@
43
42
  "claude"
44
43
  ],
45
44
  "author": "",
46
- "license": "ISC",
45
+ "license": "MIT",
47
46
  "dependencies": {
48
47
  "fs-extra": "^11.2.0",
49
48
  "kleur": "^4.1.5",
@@ -51,6 +50,6 @@
51
50
  },
52
51
  "devDependencies": {
53
52
  "husky": "^9.1.7",
54
- "markdownlint-cli2": "^0.20.0"
53
+ "markdownlint-cli2": "^0.22.1"
55
54
  }
56
55
  }
@@ -1,67 +1,68 @@
1
- ---
2
- name: a-001-setup-doc-structure
3
- description: docs/ 配下にプロジェクト/タスク用のディレクトリ構造と README を作成する。新規リポジトリでドキュメント基盤を初期化する際に使用。
4
- disable-model-invocation: true
5
- allowed-tools: Read, Write, Bash, Glob
6
- ---
7
-
8
- # SetupDocStructure (a-001)
9
-
10
- ## 目的
11
-
12
- - プロジェクトルートに標準化されたドキュメントディレクトリ構造を作成する。
13
- - `docs/README.md` を作成し、ドキュメント構成と更新方針を明文化する。
14
-
15
- ## 前提
16
-
17
- - プロジェクトのルートディレクトリへの書き込み権限があること
18
- - `docs/` ディレクトリが存在しない、または既存の構造を拡張したいこと
19
-
20
- ## 手順
21
-
22
- ### 1. スクリプトの実行
23
-
24
- 環境に応じたスクリプトを実行。スクリプト本体とフォールバック実装は [reference/directory-structure.md](reference/directory-structure.md#スクリプト実行コマンド) を参照。
25
-
26
- ```bash
27
- SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
28
- bash "$SCRIPT_DIR/scripts/setup-docs.sh"
29
- ```
30
-
31
- ### 2. 結果の確認
32
-
33
- スクリプト実行結果にエラーがないこと、および期待した構造が生成されていることを確認。生成構造と各ディレクトリの用途は [reference/directory-structure.md](reference/directory-structure.md#生成されるディレクトリ構造) を参照。
34
-
35
- ### 3. Git への追加(オプション)
36
-
37
- ユーザーに確認し、「はい」なら:
38
-
39
- ```bash
40
- git add docs/
41
- git status
42
- ```
43
-
44
- 推奨コミットメッセージは [reference/directory-structure.md](reference/directory-structure.md#git-追加時の推奨コミットメッセージ) を参照。
45
-
46
- ### 4. 完了条件の確認
47
-
48
- - [ ] スクリプトが正常に終了した
49
- - [ ] `docs/` ディレクトリ構造が正しく作成されている
50
-
51
- ## 完了条件
52
-
53
- - プロジェクトルートに `docs/` ディレクトリが作成されている
54
- - `docs/project/` 配下に `01-requirements/`, `02-behavior/`, `03-domain/`, `04-design/` が存在する
55
- - `docs/tasks/` ディレクトリが存在する
56
- - `docs/README.md` が作成されている
57
- - ユーザーに作成結果が報告されている
58
-
59
- ## エスカレーション
60
-
61
- - **既存の `docs/` が存在し重要ファイルを含む**: 「既存のドキュメント構造が検出されました。上書きや削除のリスクがあるため、手動で確認してください。」と警告し処理を中断
62
- - **権限エラー**: 「ディレクトリの作成に失敗しました。書き込み権限を確認してください。」
63
- - **Git リポジトリでない**: 「このディレクトリは Git リポジトリではありません。必要なら `git init` を実行してください。」
64
-
65
- ## 参考
66
-
67
- - [reference/directory-structure.md](reference/directory-structure.md) — 生成構造、各ディレクトリの用途、スクリプト詳細、推奨コミットメッセージ
1
+ ---
2
+ name: a-001-setup-doc-structure
3
+ description: docs/ 配下にプロジェクト/タスク用のディレクトリ構造と README を作成する。新規リポジトリでドキュメント基盤を初期化する際に使用。
4
+ disable-model-invocation: true
5
+ allowed-tools: Read, Write, Bash, Glob
6
+ ---
7
+
8
+ # SetupDocStructure (a-001)
9
+
10
+ ## 目的
11
+
12
+ - プロジェクトルートに標準化されたドキュメントディレクトリ構造を作成する。
13
+ - `docs/README.md` を作成し、ドキュメント構成と更新方針を明文化する。
14
+
15
+ ## 前提
16
+
17
+ - プロジェクトのルートディレクトリへの書き込み権限があること
18
+ - `docs/` ディレクトリが存在しない、または既存の構造を拡張したいこと
19
+
20
+ ## 手順
21
+
22
+ ### 1. ディレクトリ構造の作成
23
+
24
+ 次のディレクトリを作成する(`mkdir -p` なので既存の場合は不足分のみ追加される)。
25
+
26
+ ```bash
27
+ mkdir -p docs/project/01-requirements docs/project/02-behavior docs/project/03-domain docs/project/04-design docs/tasks
28
+ ```
29
+
30
+ 続いて `docs/README.md` を作成する。内容は [reference/directory-structure.md](reference/directory-structure.md#docsreadmemd-テンプレート) の「docs/README.md テンプレート」をそのまま Write する。`docs/README.md` が既に存在する場合は、上書き前にユーザーへ確認する。
31
+
32
+ ### 2. 結果の確認
33
+
34
+ ディレクトリ構造と `docs/README.md` が期待どおり生成されていることを確認。生成構造と各ディレクトリの用途は [reference/directory-structure.md](reference/directory-structure.md#生成されるディレクトリ構造) を参照。
35
+
36
+ ### 3. Git への追加(オプション)
37
+
38
+ ユーザーに確認し、「はい」なら:
39
+
40
+ ```bash
41
+ git add docs/
42
+ git status
43
+ ```
44
+
45
+ 推奨コミットメッセージは [reference/directory-structure.md](reference/directory-structure.md#git-追加時の推奨コミットメッセージ) を参照。
46
+
47
+ ### 4. 完了条件の確認
48
+
49
+ - [ ] `docs/` ディレクトリ構造が正しく作成されている
50
+ - [ ] `docs/README.md` が作成されている
51
+
52
+ ## 完了条件
53
+
54
+ - プロジェクトルートに `docs/` ディレクトリが作成されている
55
+ - `docs/project/` 配下に `01-requirements/`, `02-behavior/`, `03-domain/`, `04-design/` が存在する
56
+ - `docs/tasks/` ディレクトリが存在する
57
+ - `docs/README.md` が作成されている
58
+ - ユーザーに作成結果が報告されている
59
+
60
+ ## エスカレーション
61
+
62
+ - **既存の `docs/` が存在し重要ファイルを含む**: 「既存のドキュメント構造が検出されました。上書きや削除のリスクがあるため、手動で確認してください。」と警告し処理を中断
63
+ - **権限エラー**: 「ディレクトリの作成に失敗しました。書き込み権限を確認してください。」
64
+ - **Git リポジトリでない**: 「このディレクトリは Git リポジトリではありません。必要なら `git init` を実行してください。」
65
+
66
+ ## 参考
67
+
68
+ - [reference/directory-structure.md](reference/directory-structure.md) — 生成構造、各ディレクトリの用途、スクリプト詳細、推奨コミットメッセージ
@@ -1,52 +1,75 @@
1
- # docs ディレクトリ構造とコミットメッセージ
2
-
3
- SKILL.md 手順2〜3で参照する生成構造とコミットメッセージテンプレート。
4
-
5
- ## 生成されるディレクトリ構造
6
-
7
- ```
8
- docs/
9
- ├── README.md
10
- ├── project/
11
- │ ├── 01-requirements/
12
- │ ├── 02-behavior/
13
- │ ├── 03-domain/
14
- │ └── 04-design/
15
- └── tasks/
16
- ```
17
-
18
- ### 各ディレクトリの用途
19
-
20
- - `project/01-requirements/` — 要件定義(システム概要、機能要件、非機能要件、ユーザーストーリー)
21
- - `project/02-behavior/` — 振る舞い定義(Gherkin シナリオ)
22
- - `project/03-domain/` — ドメインモデル、ユビキタス言語
23
- - `project/04-design/` — 画面設計、データモデル、API 仕様、アーキテクチャ等
24
- - `tasks/` — 個別タスク(`task{ID}-{SLUG}/` 形式)
25
-
26
- ## Git 追加時の推奨コミットメッセージ
27
-
28
- ```
29
- ドキュメント構造の初期化
30
-
31
- - 標準的な構造を持つ docs/ ディレクトリを追加
32
- - ドキュメント構成を説明する docs/README.md を追加
33
- ```
34
-
35
- ## スクリプト実行コマンド
36
-
37
- ```bash
38
- if [ -d ".agent" ]; then
39
- SCRIPT_DIR=".agent"
40
- elif [ -d ".cursor" ]; then
41
- SCRIPT_DIR=".cursor"
42
- elif [ -d ".claude" ]; then
43
- SCRIPT_DIR=".claude"
44
- elif [ -d ".codex" ]; then
45
- SCRIPT_DIR=".codex"
46
- else
47
- echo "エラー: AI coding assistant ディレクトリが見つかりません"
48
- exit 1
49
- fi
50
-
51
- bash "$SCRIPT_DIR/scripts/setup-docs.sh"
52
- ```
1
+ # docs ディレクトリ構造とコミットメッセージ
2
+
3
+ SKILL.md 手順2〜3で参照する生成構造とコミットメッセージテンプレート。
4
+
5
+ ## 生成されるディレクトリ構造
6
+
7
+ ```
8
+ docs/
9
+ ├── README.md
10
+ ├── project/
11
+ │ ├── 01-requirements/
12
+ │ ├── 02-behavior/
13
+ │ ├── 03-domain/
14
+ │ └── 04-design/
15
+ └── tasks/
16
+ ```
17
+
18
+ ### 各ディレクトリの用途
19
+
20
+ - `project/01-requirements/` — 要件定義(システム概要、機能要件、非機能要件、ユーザーストーリー)
21
+ - `project/02-behavior/` — 振る舞い定義(Gherkin シナリオ)
22
+ - `project/03-domain/` — ドメインモデル、ユビキタス言語
23
+ - `project/04-design/` — 画面設計、データモデル、API 仕様、アーキテクチャ等
24
+ - `tasks/` — 個別タスク(`task{ID}-{SLUG}/` 形式)
25
+
26
+ ## Git 追加時の推奨コミットメッセージ
27
+
28
+ ```
29
+ ドキュメント構造の初期化
30
+
31
+ - 標準的な構造を持つ docs/ ディレクトリを追加
32
+ - ドキュメント構成を説明する docs/README.md を追加
33
+ ```
34
+
35
+ ## docs/README.md テンプレート
36
+
37
+ SKILL.md 手順1で `docs/README.md` として Write する内容。
38
+
39
+ ```markdown
40
+ # プロジェクトドキュメント
41
+
42
+ このディレクトリには、プロジェクト全体のドキュメントと個別タスクのドキュメントを管理します。
43
+
44
+ ## 構成
45
+
46
+ ### project/
47
+ プロジェクト全体のドキュメント。要件定義、設計、アーキテクチャなど、プロジェクトスコープ全体に関わる情報を記載します。
48
+
49
+ - **01-requirements/**: 要件定義(システム概要、機能要件、非機能要件、ユーザーストーリーなど)
50
+ - **02-behavior/**: 振る舞い定義(シナリオ、ユースケース、ユーザージャーニーなど)
51
+ - **03-domain/**: ドメインモデル(エンティティ、用語集など)
52
+ - **04-design/**: 設計(アーキテクチャ、データモデル、API仕様など)
53
+
54
+ ### tasks/
55
+ 個別タスクのドキュメント。Issue やチケット単位で作成します。
56
+
57
+ ## 更新方針
58
+
59
+ ### プロジェクト全体のドキュメント (project/)
60
+ - プロジェクトのスコープ全体に影響する情報を記載
61
+ - チーム全体で共有すべき要件・設計・アーキテクチャを管理
62
+ - 更新時は関係者にレビューを依頼
63
+
64
+ ### 個別タスクのドキュメント (tasks/)
65
+ - 特定の Issue やチケットに紐づく情報を記載
66
+ - タスク単位で作成・完了・アーカイブ
67
+ - 完了後は参照資料として保持、または削除
68
+
69
+ ## ドキュメント作成ガイドライン
70
+
71
+ - **具体的**: 抽象的な表現を避け、数値・期限・制約を明確に記載
72
+ - **測定可能**: 成功基準やパフォーマンス目標を定量化
73
+ - **最新**: 変更があれば速やかに更新し、古い情報を残さない
74
+ - **簡潔**: 必要最低限の情報に絞り、詳細はコードやリンク先に委ねる
75
+ ```
@@ -1,124 +1,118 @@
1
- ---
2
- name: a-002-initialize-project
3
- description: プロジェクトの要件を対話形式で収集し、システム概要・機能要件・非機能要件・ユーザーストーリーのドキュメントを生成する。新規プロジェクト開始時、または要件が未整備の場合に使用。
4
- disable-model-invocation: true
5
- allowed-tools: Read, Write, Edit, Bash, Grep, Glob
6
- ---
7
-
8
- # InitializeProject (a-002)
9
-
10
- ## 目的
11
-
12
- - プロジェクトの目的・背景・機能要件を詳細にヒアリングし、具体的で実装可能なドキュメントを作成する。
13
- - システム概要・実装済み機能・予定機能・非機能要件・ユーザーストーリーを網羅する。
14
- - 抽象的・曖昧な表現を避け、対話を通じて具体的な数値・期限・制約・優先度を明確化する。
15
-
16
- ## 前提
17
-
18
- - `docs/project/requirements/` ディレクトリが存在すること(なければ先に `/a-001-setup-doc-structure` を実行)
19
- - `docs/` に書き込み権限があること
20
- - ユーザーがプロジェクト概要と主要機能の基本情報を提供できること
21
-
22
- ## 手順
23
-
24
- ### 1. ドキュメントディレクトリの確認
25
-
26
- ```bash
27
- ls -la docs/project/requirements/ 2>/dev/null || echo "ディレクトリが存在しません"
28
- ```
29
-
30
- 存在しない場合: 「`docs/project/requirements/` がありません。先に `/a-001-setup-doc-structure` を実行してください。」
31
-
32
- ### 2. コードベースの自動分析と提案
33
-
34
- **規模確認**:
35
-
36
- ```bash
37
- ls -F
38
- ```
39
-
40
- ファイルがほとんど無い/ソースコードが無い場合はスキップし、ユーザーへ通知。
41
-
42
- **詳細調査**(コードがある場合):
43
-
44
- ```bash
45
- cat package.json 2>/dev/null
46
- cat README.md 2>/dev/null
47
- find src app lib -maxdepth 2 2>/dev/null
48
- ```
49
-
50
- 結果から以下を推測・提示: システム概要(目的・技術スタック)、実装済み機能(ファイル構造からの推測)、想定ユーザー像。
51
-
52
- ### 3. システム概要の作成
53
-
54
- 1. テンプレートをコピー:
55
-
56
- ```bash
57
- SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
58
- cp "$SCRIPT_DIR/templates/project/01-requirements/01-system-overview.md" \
59
- "docs/project/requirements/01-system-overview.md"
60
- ```
61
-
62
- 2. 「背景」「目的」をヒアリングして記入。質問例は [reference/hearing-questions.md](reference/hearing-questions.md) を参照。
63
-
64
- ### 4. 実装済み機能一覧
65
-
66
- 1. `02-features-implemented.md` をテンプレートからコピー。
67
- 2. コードベースを調査し、検出したディレクトリ/ファイル名から機能を提案。
68
- 3. ヒアリング結果をテーブルに記入(Category 1/2、機能名、説明、機能 ID)。
69
-
70
- コード調査コマンドとヒアリング項目は [reference/hearing-questions.md](reference/hearing-questions.md#手順4-実装済み機能一覧) を参照。
71
-
72
- ### 5. 予定機能一覧
73
-
74
- 1. `03-features-planned.md` をテンプレートからコピー。
75
- 2. システム概要と実装済み機能のギャップを分析し、未実装機能を提案。
76
- 3. ヒアリング結果をテーブルに記入(機能 ID・優先度は未確定のまま)。
77
-
78
- ### 6. 非機能要件一覧
79
-
80
- 1. `04-non-functional-requirements.md` をテンプレートからコピー。
81
- 2. 詳細定義が必要か確認。不要なら標準ベースラインで仮置き([examples/nfr-baseline.md](examples/nfr-baseline.md))。
82
- 3. パフォーマンス/セキュリティ/可用性/スケーラビリティ/ユーザビリティ・保守性の観点で**定量的な目標**をヒアリング。
83
-
84
- ### 7. ユーザーストーリー
85
-
86
- 1. `05-user-stories.md` をテンプレートからコピー。
87
- 2. 作成済みドキュメントから主要ユーザージャーニーを抽出し、ストーリー案を提示。
88
- 3. ヒアリング結果をテーブルに記入(優先度・受け入れ基準含む)。
89
-
90
- ストーリーテンプレート: 「[役割]として、[〇〇機能]を使いたい、なぜなら[価値]だから」
91
-
92
- ### 8. 全体レビュー
93
-
94
- - 作成した全ドキュメントをユーザーに提示し、以下を確認:
95
- - 「記載内容に誤りや漏れはありませんか?」
96
- - 「抽象的すぎる記述や、解釈が分かれそうな表現はありますか?」
97
- - 「テンプレートのコメントや不要な例示は適切に処理されていますか?」
98
-
99
- ### 9. 完了条件と構造の確認
100
-
101
- - ファイルの存在と主要セクション/テーブル構造を検証。
102
- - 検証コマンド・チェックリスト・Git コミット手順は [reference/structure-check.md](reference/structure-check.md) を参照。
103
-
104
- ### 10. Git への追加(オプション)
105
-
106
- 詳細は [reference/structure-check.md](reference/structure-check.md#git-への追加オプション) を参照。
107
-
108
- ## 完了条件
109
-
110
- - `docs/project/requirements/` 5 つの要件定義ドキュメントが作成されている
111
- - すべてのドキュメントで抽象的表現が最小化され、具体的な数値・期限・制約が記載されている
112
- - ユーザーがドキュメント内容を確認し、承認またはフィードバックを提供している
113
-
114
- ## エスカレーション
115
-
116
- - **ユーザーが重要な情報を提供できない**: 「この情報は後続の設計・実装で必須です。確認できる担当者や資料はありますか?」と確認し、TODO として記録。
117
- - **競合する要件や矛盾**: 「以下の要件が競合しています: [詳細]。優先順位や調整方針を確認させてください。」と報告。
118
- - **想定工数が非現実的に大きい**: 「現在の計画では実現が困難です。スコープ縮小や優先度調整を検討しませんか?」と提案。
119
-
120
- ## 参考
121
-
122
- - [reference/hearing-questions.md](reference/hearing-questions.md) — 手順3〜7のヒアリング質問集
123
- - [reference/structure-check.md](reference/structure-check.md) — 手順9の構造チェックコマンドと Git コミット手順
124
- - [examples/nfr-baseline.md](examples/nfr-baseline.md) — 非機能要件の標準ベースライン提案値
1
+ ---
2
+ name: a-002-initialize-project
3
+ description: プロジェクトの要件を対話形式で収集し、システム概要・機能要件・非機能要件・ユーザーストーリーのドキュメントを生成する。新規プロジェクト開始時、または要件が未整備の場合に使用。
4
+ disable-model-invocation: true
5
+ allowed-tools: Read, Write, Edit, Bash, Grep, Glob
6
+ ---
7
+
8
+ # InitializeProject (a-002)
9
+
10
+ ## 目的
11
+
12
+ - プロジェクトの目的・背景・機能要件を詳細にヒアリングし、具体的で実装可能なドキュメントを作成する。
13
+ - システム概要・実装済み機能・予定機能・非機能要件・ユーザーストーリーを網羅する。
14
+ - 抽象的・曖昧な表現を避け、対話を通じて具体的な数値・期限・制約・優先度を明確化する。
15
+
16
+ ## 前提
17
+
18
+ - `docs/project/01-requirements/` ディレクトリが存在すること(なければ先に `/a-001-setup-doc-structure` を実行)
19
+ - `docs/` に書き込み権限があること
20
+ - ユーザーがプロジェクト概要と主要機能の基本情報を提供できること
21
+
22
+ ## 手順
23
+
24
+ ### 1. ドキュメントディレクトリの確認
25
+
26
+ ```bash
27
+ ls -la docs/project/01-requirements/ 2>/dev/null || echo "ディレクトリが存在しません"
28
+ ```
29
+
30
+ 存在しない場合: 「`docs/project/01-requirements/` がありません。先に `/a-001-setup-doc-structure` を実行してください。」
31
+
32
+ ### 2. テンプレート一括コピー
33
+
34
+ このスキルの配置ディレクトリ(`skills/a-002-initialize-project/`)を起点に、`docs/project/01-requirements/` へ次の 5 ファイルを Read→Write する(FOR EACH)。出力先に既に存在するファイルは上書きせずスキップして報告する(冪等)。出力先ディレクトリが無ければ作成する。
35
+
36
+ - `../../templates/project/01-requirements/01-system-overview.md` → `docs/project/01-requirements/01-system-overview.md`
37
+ - `../../templates/project/01-requirements/02-features-implemented.md` → `docs/project/01-requirements/02-features-implemented.md`
38
+ - `../../templates/project/01-requirements/03-features-planned.md` → `docs/project/01-requirements/03-features-planned.md`
39
+ - `../../templates/project/01-requirements/04-non-functional-requirements.md` → `docs/project/01-requirements/04-non-functional-requirements.md`
40
+ - `../../templates/project/01-requirements/05-user-stories.md` → `docs/project/01-requirements/05-user-stories.md`
41
+
42
+ ### 3. コードベースの自動分析と提案
43
+
44
+ **規模確認**:
45
+
46
+ ```bash
47
+ ls -F
48
+ ```
49
+
50
+ ファイルがほとんど無い/ソースコードが無い場合はスキップし、ユーザーへ通知。
51
+
52
+ **詳細調査**(コードがある場合):
53
+
54
+ ```bash
55
+ cat package.json 2>/dev/null
56
+ cat README.md 2>/dev/null
57
+ find src app lib -maxdepth 2 2>/dev/null
58
+ ```
59
+
60
+ 結果から以下を推測・提示: システム概要(目的・技術スタック)、実装済み機能(ファイル構造からの推測)、想定ユーザー像。
61
+
62
+ ### 4. システム概要の記入
63
+
64
+ `01-system-overview.md` を開き、「背景」「目的」をヒアリングして記入する。質問例は [reference/hearing-questions.md](reference/hearing-questions.md) を参照。
65
+
66
+ ### 5. 実装済み機能一覧の記入
67
+
68
+ `02-features-implemented.md` に、コードベース調査で検出したディレクトリ/ファイル名から機能を提案し、ヒアリング結果をテーブルに記入する(Category 1/2、機能名、説明、機能 ID)。
69
+
70
+ コード調査コマンドとヒアリング項目は [reference/hearing-questions.md](reference/hearing-questions.md#手順4-実装済み機能一覧) を参照。
71
+
72
+ ### 6. 予定機能一覧の記入
73
+
74
+ `03-features-planned.md` に、システム概要と実装済み機能のギャップを分析して未実装機能を提案し、ヒアリング結果をテーブルに記入する(機能 ID・優先度は未確定のまま)。
75
+
76
+ ### 7. 非機能要件の記入
77
+
78
+ `04-non-functional-requirements.md` に、詳細定義が必要か確認の上、パフォーマンス/セキュリティ/可用性/スケーラビリティ/ユーザビリティ・保守性の観点で**定量的な目標**をヒアリングして記入する。不要なら標準ベースライン([examples/nfr-baseline.md](examples/nfr-baseline.md))で仮置きする。
79
+
80
+ ### 8. ユーザーストーリーの記入
81
+
82
+ `05-user-stories.md` に、作成済みドキュメントから主要ユーザージャーニーを抽出してストーリー案を提示し、ヒアリング結果をテーブルに記入する(優先度・受け入れ基準含む)。
83
+
84
+ ストーリーテンプレート: 「[役割]として、[〇〇機能]を使いたい、なぜなら[価値]だから」
85
+
86
+ ### 9. 全体レビュー
87
+
88
+ - 作成した全ドキュメントをユーザーに提示し、以下を確認:
89
+ - 「記載内容に誤りや漏れはありませんか?」
90
+ - 「抽象的すぎる記述や、解釈が分かれそうな表現はありますか?」
91
+ - 「テンプレートのコメントや不要な例示は適切に処理されていますか?」
92
+
93
+ ### 10. 完了条件と構造の確認
94
+
95
+ - ファイルの存在と主要セクション/テーブル構造を検証。
96
+ - 検証コマンド・チェックリスト・Git コミット手順は [reference/structure-check.md](reference/structure-check.md) を参照。
97
+
98
+ ### 11. Git への追加(オプション)
99
+
100
+ 詳細は [reference/structure-check.md](reference/structure-check.md#git-への追加オプション) を参照。
101
+
102
+ ## 完了条件
103
+
104
+ - `docs/project/01-requirements/` 5 つの要件定義ドキュメントが作成されている
105
+ - すべてのドキュメントで抽象的表現が最小化され、具体的な数値・期限・制約が記載されている
106
+ - ユーザーがドキュメント内容を確認し、承認またはフィードバックを提供している
107
+
108
+ ## エスカレーション
109
+
110
+ - **ユーザーが重要な情報を提供できない**: 「この情報は後続の設計・実装で必須です。確認できる担当者や資料はありますか?」と確認し、TODO として記録。
111
+ - **競合する要件や矛盾**: 「以下の要件が競合しています: [詳細]。優先順位や調整方針を確認させてください。」と報告。
112
+ - **想定工数が非現実的に大きい**: 「現在の計画では実現が困難です。スコープ縮小や優先度調整を検討しませんか?」と提案。
113
+
114
+ ## 参考
115
+
116
+ - [reference/hearing-questions.md](reference/hearing-questions.md) 手順4〜8のヒアリング質問集
117
+ - [reference/structure-check.md](reference/structure-check.md) 手順10の構造チェックコマンドと Git コミット手順
118
+ - [examples/nfr-baseline.md](examples/nfr-baseline.md) — 非機能要件の標準ベースライン提案値