yodogawa 1.0.7 → 2.0.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 +12 -12
- package/bin/cli.js +20 -42
- package/package.json +6 -4
- package/{.windsurf/workflows/a-001-SetupDocStructure.md → skills/a-001-setup-doc-structure/SKILL.md} +3 -2
- package/{.windsurf/workflows/a-002-InitializeProject.md → skills/a-002-initialize-project/SKILL.md} +11 -5
- package/{.windsurf/workflows/a-003-CreateScenarios.md → skills/a-003-create-scenarios/SKILL.md} +3 -1
- package/{.windsurf/workflows/a-004-DefineDomainModel.md → skills/a-004-define-domain-model/SKILL.md} +4 -2
- package/{.windsurf/workflows/a-005-CreateDomainDiagram.md → skills/a-005-create-domain-diagram/SKILL.md} +1 -0
- package/{.windsurf/workflows/a-006-ReviewRequirementsDomain.md → skills/a-006-review-requirements-domain/SKILL.md} +1 -0
- package/{.windsurf/workflows/a-007-DefineTechStack.md → skills/a-007-define-tech-stack/SKILL.md} +3 -1
- package/{.windsurf/workflows/a-008-DefineRepositoryStructure.md → skills/a-008-define-repository-structure/SKILL.md} +3 -1
- package/{.windsurf/workflows/a-009-DefineScreenDesign.md → skills/a-009-define-screen-design/SKILL.md} +3 -1
- package/{.windsurf/workflows/a-010-DefineDesignSystem.md → skills/a-010-define-design-system/SKILL.md} +3 -1
- package/{.windsurf/workflows/a-011-DefineDataModel.md → skills/a-011-define-data-model/SKILL.md} +3 -1
- package/{.windsurf/workflows/a-012-DefineAPISpec.md → skills/a-012-define-api-spec/SKILL.md} +3 -1
- package/{.windsurf/workflows/a-013-DefineArchitecture.md → skills/a-013-define-architecture/SKILL.md} +3 -1
- package/{.windsurf/workflows/a-014-DefineInfrastructure.md → skills/a-014-define-infrastructure/SKILL.md} +3 -1
- package/{.windsurf/workflows/a-015-ReviewDesign.md → skills/a-015-review-design/SKILL.md} +1 -0
- package/{.windsurf/workflows/b-001-CreateTaskDirectory.md → skills/b-001-create-task-directory/SKILL.md} +1 -0
- package/{.windsurf/workflows/b-002-CreateTaskDefinition.md → skills/b-002-create-task-definition/SKILL.md} +4 -2
- package/{.windsurf/workflows/b-003-CreateTaskResearch.md → skills/b-003-create-task-research/SKILL.md} +4 -2
- package/{.windsurf/workflows/b-004-CreateTaskImplementation.md → skills/b-004-create-task-implementation/SKILL.md} +4 -2
- package/{.windsurf/workflows/b-005-ReviewTask.md → skills/b-005-review-task/SKILL.md} +1 -0
- package/{.windsurf/workflows/c-001-ImplementTask.md → skills/c-001-implement-task/SKILL.md} +1 -0
- package/{.windsurf/workflows/c-002-UpdateDocumentation.md → skills/c-002-update-documentation/SKILL.md} +2 -1
- /package/{.windsurf/scripts → scripts}/setup-docs.sh +0 -0
- /package/{.windsurf/templates → templates}/documentation-rules.md +0 -0
- /package/{.windsurf/templates → templates}/project/01-requirements/01-system-overview.md +0 -0
- /package/{.windsurf/templates → templates}/project/01-requirements/02-features-implemented.md +0 -0
- /package/{.windsurf/templates → templates}/project/01-requirements/03-features-planned.md +0 -0
- /package/{.windsurf/templates → templates}/project/01-requirements/04-non-functional-requirements.md +0 -0
- /package/{.windsurf/templates → templates}/project/01-requirements/05-user-stories.md +0 -0
- /package/{.windsurf/templates → templates}/project/02-behavior/01-scenarios.md +0 -0
- /package/{.windsurf/templates → templates}/project/03-domain/01-domain-model.md +0 -0
- /package/{.windsurf/templates → templates}/project/03-domain/02-ubiquitous-language.md +0 -0
- /package/{.windsurf/templates → templates}/project/04-design/01-tech-stack.md +0 -0
- /package/{.windsurf/templates → templates}/project/04-design/02-repository-structure.md +0 -0
- /package/{.windsurf/templates → templates}/project/04-design/03-screen-design.md +0 -0
- /package/{.windsurf/templates → templates}/project/04-design/04-design-system.md +0 -0
- /package/{.windsurf/templates → templates}/project/04-design/05-data-model.md +0 -0
- /package/{.windsurf/templates → templates}/project/04-design/06-api-spec.md +0 -0
- /package/{.windsurf/templates → templates}/project/04-design/07-architecture.md +0 -0
- /package/{.windsurf/templates → templates}/project/04-design/08-infrastructure.md +0 -0
- /package/{.windsurf/templates → templates}/tasks/task-template/a-definition.md +0 -0
- /package/{.windsurf/templates → templates}/tasks/task-template/b-research.md +0 -0
- /package/{.windsurf/templates → templates}/tasks/task-template/c-implementation.md +0 -0
package/README.md
CHANGED
|
@@ -17,12 +17,12 @@ Yodogawaは、このドキュメント作成プロセスを標準化し、AIエ
|
|
|
17
17
|
|
|
18
18
|
以下のAIネイティブIDE・コードエディタで使用できます:
|
|
19
19
|
|
|
20
|
-
| IDE / エディタ | 使い方
|
|
21
|
-
| :-------------- |
|
|
22
|
-
| **
|
|
23
|
-
| **Cursor** |
|
|
24
|
-
| **
|
|
25
|
-
| **
|
|
20
|
+
| IDE / エディタ | 使い方 |
|
|
21
|
+
| :-------------- | :-------------------------------------------------- |
|
|
22
|
+
| **Antigravity** | `.agent/skills/{name}/SKILL.md` にコピーして参照 |
|
|
23
|
+
| **Cursor** | `.cursor/skills/{name}/SKILL.md` として認識 |
|
|
24
|
+
| **Claude Code** | `.claude/skills/{name}/SKILL.md` として認識 |
|
|
25
|
+
| **Codex** | `.codex/skills/{name}/SKILL.md` として認識 |
|
|
26
26
|
|
|
27
27
|
---
|
|
28
28
|
|
|
@@ -157,16 +157,16 @@ cd your-project-dir
|
|
|
157
157
|
yodogawa init
|
|
158
158
|
```
|
|
159
159
|
|
|
160
|
-
|
|
160
|
+
これにより各IDE向けのスキルがプロジェクトに配置されます。
|
|
161
161
|
|
|
162
162
|
### 方法2: 手動導入
|
|
163
163
|
|
|
164
|
-
このリポジトリの
|
|
164
|
+
このリポジトリの `skills/`, `templates/`, `scripts/` をプロジェクトの IDE ディレクトリにコピーしてください:
|
|
165
165
|
|
|
166
|
-
-
|
|
167
|
-
- Cursor: `.cursor
|
|
168
|
-
-
|
|
169
|
-
-
|
|
166
|
+
- Antigravity: `.agent/`
|
|
167
|
+
- Cursor: `.cursor/`
|
|
168
|
+
- Claude Code: `.claude/`
|
|
169
|
+
- Codex: `.codex/`
|
|
170
170
|
|
|
171
171
|
---
|
|
172
172
|
|
package/bin/cli.js
CHANGED
|
@@ -6,17 +6,17 @@ const prompts = require('prompts');
|
|
|
6
6
|
const { bold, green, cyan, red } = require('kleur');
|
|
7
7
|
|
|
8
8
|
async function main() {
|
|
9
|
-
console.log(bold().cyan('\n🚀 Welcome to Yodogawa
|
|
9
|
+
console.log(bold().cyan('\n🚀 Welcome to Yodogawa Skills Installer!\n'));
|
|
10
10
|
|
|
11
11
|
const response = await prompts({
|
|
12
12
|
type: 'select',
|
|
13
13
|
name: 'type',
|
|
14
14
|
message: 'Which configuration would you like to install?',
|
|
15
15
|
choices: [
|
|
16
|
-
{ title: 'Windsurf (.windsurf)', value: 'windsurf' },
|
|
17
16
|
{ title: 'Antigravity (.agent)', value: 'antigravity' },
|
|
18
17
|
{ title: 'Cursor (.cursor)', value: 'cursor' },
|
|
19
|
-
{ title: 'Claude Code (.claude)', value: 'claude' }
|
|
18
|
+
{ title: 'Claude Code (.claude)', value: 'claude' },
|
|
19
|
+
{ title: 'Codex (.codex)', value: 'codex' }
|
|
20
20
|
]
|
|
21
21
|
});
|
|
22
22
|
|
|
@@ -25,29 +25,16 @@ async function main() {
|
|
|
25
25
|
process.exit(0);
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
targetDirName = '.agent';
|
|
37
|
-
} else if (response.type === 'cursor') {
|
|
38
|
-
targetDirName = '.cursor';
|
|
39
|
-
} else {
|
|
40
|
-
targetDirName = '.claude';
|
|
41
|
-
}
|
|
42
|
-
|
|
28
|
+
const pkgRoot = path.join(__dirname, '..');
|
|
29
|
+
const dirMap = {
|
|
30
|
+
antigravity: '.agent',
|
|
31
|
+
cursor: '.cursor',
|
|
32
|
+
claude: '.claude',
|
|
33
|
+
codex: '.codex',
|
|
34
|
+
};
|
|
35
|
+
const targetDirName = dirMap[response.type];
|
|
43
36
|
const targetDir = path.join(process.cwd(), targetDirName);
|
|
44
37
|
|
|
45
|
-
if (!fs.existsSync(sourceDir)) {
|
|
46
|
-
console.error(red(`✖ Error: Source directory not found at ${sourceDir}`));
|
|
47
|
-
console.error(red(` Please ensure the package is installed correctly.`));
|
|
48
|
-
process.exit(1);
|
|
49
|
-
}
|
|
50
|
-
|
|
51
38
|
try {
|
|
52
39
|
if (fs.existsSync(targetDir)) {
|
|
53
40
|
const confirm = await prompts({
|
|
@@ -56,34 +43,25 @@ async function main() {
|
|
|
56
43
|
message: `Directory ${targetDirName} already exists. Overwrite?`,
|
|
57
44
|
initial: false
|
|
58
45
|
});
|
|
59
|
-
|
|
60
46
|
if (!confirm.overwrite) {
|
|
61
47
|
console.log(red('✖ Operation cancelled.'));
|
|
62
48
|
process.exit(0);
|
|
63
49
|
}
|
|
64
50
|
}
|
|
65
51
|
|
|
66
|
-
console.log(`\
|
|
67
|
-
await fs.copy(sourceDir, targetDir);
|
|
52
|
+
console.log(`\nInstalling Yodogawa skills to ${bold(targetDirName)}...`);
|
|
68
53
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
if (fs.existsSync(workflowsDir)) {
|
|
75
|
-
console.log(`Renaming workflows to commands for ${response.type}...`);
|
|
76
|
-
await fs.move(workflowsDir, commandsDir, { overwrite: true });
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
console.log(green(`\n✔ Successfully installed ${response.type} workflows!`));
|
|
54
|
+
await fs.copy(path.join(pkgRoot, 'skills'), path.join(targetDir, 'skills'));
|
|
55
|
+
await fs.copy(path.join(pkgRoot, 'templates'), path.join(targetDir, 'templates'));
|
|
56
|
+
await fs.copy(path.join(pkgRoot, 'scripts'), path.join(targetDir, 'scripts'));
|
|
57
|
+
|
|
58
|
+
console.log(green(`\n✔ Successfully installed Yodogawa skills for ${response.type}!`));
|
|
81
59
|
console.log(`\nNext steps:`);
|
|
82
|
-
console.log(`1. Open ${bold(targetDirName)} to explore the
|
|
60
|
+
console.log(`1. Open ${bold(targetDirName + '/skills/')} to explore the skills.`);
|
|
83
61
|
console.log(`2. Start using them in your project!\n`);
|
|
84
|
-
|
|
62
|
+
|
|
85
63
|
} catch (err) {
|
|
86
|
-
console.error(red(`\n✖ Error
|
|
64
|
+
console.error(red(`\n✖ Error installing skills: ${err.message}`));
|
|
87
65
|
process.exit(1);
|
|
88
66
|
}
|
|
89
67
|
}
|
package/package.json
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "yodogawa",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"description": "CLI to install Yodogawa Slash Commands workflows",
|
|
5
5
|
"bin": {
|
|
6
|
-
"yodogawa": "
|
|
6
|
+
"yodogawa": "bin/cli.js"
|
|
7
7
|
},
|
|
8
8
|
"files": [
|
|
9
9
|
"bin",
|
|
10
|
-
"
|
|
10
|
+
"skills",
|
|
11
|
+
"templates",
|
|
12
|
+
"scripts",
|
|
11
13
|
"README.md",
|
|
12
14
|
"CHANGELOG.md"
|
|
13
15
|
],
|
|
@@ -18,10 +20,10 @@
|
|
|
18
20
|
"prepare": "husky"
|
|
19
21
|
},
|
|
20
22
|
"keywords": [
|
|
21
|
-
"windsurf",
|
|
22
23
|
"antigravity",
|
|
23
24
|
"cursor",
|
|
24
25
|
"claude-code",
|
|
26
|
+
"codex",
|
|
25
27
|
"workflows",
|
|
26
28
|
"slash-commands",
|
|
27
29
|
"spec-driven-development",
|
package/{.windsurf/workflows/a-001-SetupDocStructure.md → skills/a-001-setup-doc-structure/SKILL.md}
RENAMED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: a-001-setup-doc-structure
|
|
2
3
|
description: プロジェクトのドキュメントディレクトリ構造を作成し、README で構成を説明する軽量セットアップワークフロー
|
|
3
4
|
auto_execution_mode: 1
|
|
4
5
|
---
|
|
@@ -25,12 +26,12 @@ auto_execution_mode: 1
|
|
|
25
26
|
# 環境を自動検出してスクリプトを実行
|
|
26
27
|
if [ -d ".agent" ]; then
|
|
27
28
|
SCRIPT_DIR=".agent"
|
|
28
|
-
elif [ -d ".windsurf" ]; then
|
|
29
|
-
SCRIPT_DIR=".windsurf"
|
|
30
29
|
elif [ -d ".cursor" ]; then
|
|
31
30
|
SCRIPT_DIR=".cursor"
|
|
32
31
|
elif [ -d ".claude" ]; then
|
|
33
32
|
SCRIPT_DIR=".claude"
|
|
33
|
+
elif [ -d ".codex" ]; then
|
|
34
|
+
SCRIPT_DIR=".codex"
|
|
34
35
|
else
|
|
35
36
|
echo "エラー: AI coding assistant ディレクトリが見つかりません"
|
|
36
37
|
exit 1
|
package/{.windsurf/workflows/a-002-InitializeProject.md → skills/a-002-initialize-project/SKILL.md}
RENAMED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: a-002-initialize-project
|
|
2
3
|
description: プロジェクトのシステム概要・機能要件・非機能要件・ユーザーストーリーを体系的にヒアリングし、詳細なドキュメントを作成するワークフロー
|
|
3
4
|
auto_execution_mode: 1
|
|
4
5
|
---
|
|
@@ -65,7 +66,8 @@ auto_execution_mode: 1
|
|
|
65
66
|
1. **テンプレートの準備**:
|
|
66
67
|
|
|
67
68
|
```bash
|
|
68
|
-
|
|
69
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
70
|
+
cp "$SCRIPT_DIR/templates/project/01-requirements/01-system-overview.md" "docs/project/requirements/01-system-overview.md"
|
|
69
71
|
```
|
|
70
72
|
|
|
71
73
|
2. **ヒアリングと記入**:
|
|
@@ -89,7 +91,8 @@ auto_execution_mode: 1
|
|
|
89
91
|
1. **テンプレートの準備**:
|
|
90
92
|
|
|
91
93
|
```bash
|
|
92
|
-
|
|
94
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
95
|
+
cp "$SCRIPT_DIR/templates/project/01-requirements/02-features-implemented.md" "docs/project/requirements/02-features-implemented.md"
|
|
93
96
|
```
|
|
94
97
|
|
|
95
98
|
2. **コードベースの調査と提案**:
|
|
@@ -122,7 +125,8 @@ auto_execution_mode: 1
|
|
|
122
125
|
1. **テンプレートの準備**:
|
|
123
126
|
|
|
124
127
|
```bash
|
|
125
|
-
|
|
128
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
129
|
+
cp "$SCRIPT_DIR/templates/project/01-requirements/03-features-planned.md" "docs/project/requirements/03-features-planned.md"
|
|
126
130
|
```
|
|
127
131
|
|
|
128
132
|
2. **要件ギャップ分析と提案**:
|
|
@@ -149,7 +153,8 @@ auto_execution_mode: 1
|
|
|
149
153
|
1. **テンプレートの準備**:
|
|
150
154
|
|
|
151
155
|
```bash
|
|
152
|
-
|
|
156
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
157
|
+
cp "$SCRIPT_DIR/templates/project/01-requirements/04-non-functional-requirements.md" "docs/project/requirements/04-non-functional-requirements.md"
|
|
153
158
|
```
|
|
154
159
|
|
|
155
160
|
2. **必要性の確認と標準提案**:
|
|
@@ -195,7 +200,8 @@ auto_execution_mode: 1
|
|
|
195
200
|
1. **テンプレートの準備**:
|
|
196
201
|
|
|
197
202
|
```bash
|
|
198
|
-
|
|
203
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
204
|
+
cp "$SCRIPT_DIR/templates/project/01-requirements/05-user-stories.md" "docs/project/requirements/05-user-stories.md"
|
|
199
205
|
```
|
|
200
206
|
|
|
201
207
|
2. **分析と提案**:
|
package/{.windsurf/workflows/a-003-CreateScenarios.md → skills/a-003-create-scenarios/SKILL.md}
RENAMED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: a-003-create-scenarios
|
|
2
3
|
description: ユーザーストーリーから具体的なGherkinシナリオを作成し、BDD形式で振る舞いを定義するワークフロー
|
|
3
4
|
---
|
|
4
5
|
|
|
@@ -37,7 +38,8 @@ description: ユーザーストーリーから具体的なGherkinシナリオを
|
|
|
37
38
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
38
39
|
|
|
39
40
|
```bash
|
|
40
|
-
|
|
41
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
42
|
+
cp "$SCRIPT_DIR/templates/project/02-behavior/01-scenarios.md" "docs/project/behavior/01-scenarios.md"
|
|
41
43
|
```
|
|
42
44
|
|
|
43
45
|
### 3. 分析と提案
|
package/{.windsurf/workflows/a-004-DefineDomainModel.md → skills/a-004-define-domain-model/SKILL.md}
RENAMED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: a-004-define-domain-model
|
|
2
3
|
description: Event Storming形式でドメインモデルを定義し、ユビキタス言語を反復的に洗練させるワークフロー
|
|
3
4
|
---
|
|
4
5
|
|
|
@@ -37,8 +38,9 @@ description: Event Storming形式でドメインモデルを定義し、ユビ
|
|
|
37
38
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
38
39
|
|
|
39
40
|
```bash
|
|
40
|
-
|
|
41
|
-
cp "
|
|
41
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
42
|
+
cp "$SCRIPT_DIR/templates/project/03-domain/01-domain-model.md" "docs/project/domain/01-domain-model.md"
|
|
43
|
+
cp "$SCRIPT_DIR/templates/project/03-domain/02-ubiquitous-language.md" "docs/project/domain/02-ubiquitous-language.md"
|
|
42
44
|
```
|
|
43
45
|
|
|
44
46
|
### 3. Bounded Context の特定
|
package/{.windsurf/workflows/a-007-DefineTechStack.md → skills/a-007-define-tech-stack/SKILL.md}
RENAMED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: a-007-define-tech-stack
|
|
2
3
|
description: 要件を分析して推奨技術スタックを提案し、ユーザーとの詳細なインタビューを通じて最適な技術選定を行うワークフロー
|
|
3
4
|
---
|
|
4
5
|
|
|
@@ -39,7 +40,8 @@ description: 要件を分析して推奨技術スタックを提案し、ユー
|
|
|
39
40
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
40
41
|
|
|
41
42
|
```bash
|
|
42
|
-
|
|
43
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
44
|
+
cp "$SCRIPT_DIR/templates/project/04-design/01-tech-stack.md" "docs/project/design/01-tech-stack.md"
|
|
43
45
|
```
|
|
44
46
|
|
|
45
47
|
### 3. 要件分析と推奨技術スタックの生成
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: a-008-define-repository-structure
|
|
2
3
|
description: 技術スタックに基づいてプロジェクトのディレクトリ構造、アーキテクチャパターン、命名規則を定義するワークフロー
|
|
3
4
|
---
|
|
4
5
|
|
|
@@ -33,7 +34,8 @@ description: 技術スタックに基づいてプロジェクトのディレク
|
|
|
33
34
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
34
35
|
|
|
35
36
|
```bash
|
|
36
|
-
|
|
37
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
38
|
+
cp "$SCRIPT_DIR/templates/project/04-design/02-repository-structure.md" "docs/project/design/02-repository-structure.md"
|
|
37
39
|
```
|
|
38
40
|
|
|
39
41
|
### 3. アーキテクチャパターンの提案
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: a-009-define-screen-design
|
|
2
3
|
description: ユーザーストーリーとシナリオから画面一覧を抽出し、画面遷移フローとレスポンシブデザインポリシーを定義するワークフロー
|
|
3
4
|
---
|
|
4
5
|
|
|
@@ -33,7 +34,8 @@ description: ユーザーストーリーとシナリオから画面一覧を抽
|
|
|
33
34
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
34
35
|
|
|
35
36
|
```bash
|
|
36
|
-
|
|
37
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
38
|
+
cp "$SCRIPT_DIR/templates/project/04-design/03-screen-design.md" "docs/project/design/03-screen-design.md"
|
|
37
39
|
```
|
|
38
40
|
|
|
39
41
|
### 3. 画面の抽出と提案
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: a-010-define-design-system
|
|
2
3
|
description: プロジェクトのデザインシステム(カラー、タイポグラフィ、スペーシング、コンポーネントスタイル)を定義するワークフロー
|
|
3
4
|
---
|
|
4
5
|
|
|
@@ -29,7 +30,8 @@ description: プロジェクトのデザインシステム(カラー、タイ
|
|
|
29
30
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
30
31
|
|
|
31
32
|
```bash
|
|
32
|
-
|
|
33
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
34
|
+
cp "$SCRIPT_DIR/templates/project/04-design/04-design-system.md" "docs/project/design/04-design-system.md"
|
|
33
35
|
```
|
|
34
36
|
|
|
35
37
|
### 3. カラーパレットの定義
|
package/{.windsurf/workflows/a-011-DefineDataModel.md → skills/a-011-define-data-model/SKILL.md}
RENAMED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: a-011-define-data-model
|
|
2
3
|
description: ドメインモデルと画面設計からデータベース構造(ERD)を定義し、エンティティ、属性、リレーションシップ、制約を明確化するワークフロー
|
|
3
4
|
---
|
|
4
5
|
|
|
@@ -34,7 +35,8 @@ description: ドメインモデルと画面設計からデータベース構造
|
|
|
34
35
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
35
36
|
|
|
36
37
|
```bash
|
|
37
|
-
|
|
38
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
39
|
+
cp "$SCRIPT_DIR/templates/project/04-design/05-data-model.md" "docs/project/design/05-data-model.md"
|
|
38
40
|
```
|
|
39
41
|
|
|
40
42
|
### 3. エンティティの抽出と提案
|
package/{.windsurf/workflows/a-012-DefineAPISpec.md → skills/a-012-define-api-spec/SKILL.md}
RENAMED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: a-012-define-api-spec
|
|
2
3
|
description: データモデルと画面設計からAPI仕様を定義し、認証方式、エンドポイント一覧、共通レスポンス形式を明確化するワークフロー
|
|
3
4
|
---
|
|
4
5
|
|
|
@@ -35,7 +36,8 @@ description: データモデルと画面設計からAPI仕様を定義し、認
|
|
|
35
36
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
36
37
|
|
|
37
38
|
```bash
|
|
38
|
-
|
|
39
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
40
|
+
cp "$SCRIPT_DIR/templates/project/04-design/06-api-spec.md" "docs/project/design/06-api-spec.md"
|
|
39
41
|
```
|
|
40
42
|
|
|
41
43
|
### 3. APIスタイルの確認と提案
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: a-013-define-architecture
|
|
2
3
|
description: 技術スタック、リポジトリ構造、データモデル、API仕様を統合し、システム全体のアーキテクチャ設計とADRを定義するワークフロー
|
|
3
4
|
---
|
|
4
5
|
|
|
@@ -36,7 +37,8 @@ description: 技術スタック、リポジトリ構造、データモデル、A
|
|
|
36
37
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
37
38
|
|
|
38
39
|
```bash
|
|
39
|
-
|
|
40
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
41
|
+
cp "$SCRIPT_DIR/templates/project/04-design/07-architecture.md" "docs/project/design/07-architecture.md"
|
|
40
42
|
```
|
|
41
43
|
|
|
42
44
|
### 3. アーキテクチャの提案
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: a-014-define-infrastructure
|
|
2
3
|
description: 技術スタックとアーキテクチャ設計を基に、インフラ構成図、環境構成、運用方針を定義するワークフロー
|
|
3
4
|
---
|
|
4
5
|
|
|
@@ -32,7 +33,8 @@ description: 技術スタックとアーキテクチャ設計を基に、イン
|
|
|
32
33
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
33
34
|
|
|
34
35
|
```bash
|
|
35
|
-
|
|
36
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
37
|
+
cp "$SCRIPT_DIR/templates/project/04-design/08-infrastructure.md" "docs/project/design/08-infrastructure.md"
|
|
36
38
|
```
|
|
37
39
|
|
|
38
40
|
### 3. インフラ構成の提案
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: b-002-create-task-definition
|
|
2
3
|
description: ユーザーストーリーとインタビューからタスク定義ドキュメントを作成し、目的・変更内容・受け入れ基準を明確化するワークフロー
|
|
3
4
|
---
|
|
4
5
|
|
|
@@ -13,7 +14,7 @@ description: ユーザーストーリーとインタビューからタスク定
|
|
|
13
14
|
## 前提
|
|
14
15
|
|
|
15
16
|
- `docs/tasks/task{ID}-{SLUG}/` が `CreateTaskDirectory (b-001)` で作成済みであること。
|
|
16
|
-
- テンプレート:
|
|
17
|
+
- テンプレート: `{IDE_DIR}/templates/tasks/task-template/a-definition.md`
|
|
17
18
|
- タスクの概要が関係者と共有済みであること。
|
|
18
19
|
|
|
19
20
|
## 手順
|
|
@@ -29,7 +30,8 @@ description: ユーザーストーリーとインタビューからタスク定
|
|
|
29
30
|
2. テンプレートが未配置の場合はコピーする。
|
|
30
31
|
|
|
31
32
|
```bash
|
|
32
|
-
|
|
33
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
34
|
+
cp "$SCRIPT_DIR/templates/tasks/task-template/a-definition.md" \
|
|
33
35
|
"docs/tasks/task{ID}-{SLUG}/a-definition.md"
|
|
34
36
|
```
|
|
35
37
|
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: b-003-create-task-research
|
|
2
3
|
description: タスク実装前の技術調査を行い、ベストプラクティス、既存コード、再利用コンポーネント、技術選定、リスクを記録するワークフロー
|
|
3
4
|
---
|
|
4
5
|
|
|
@@ -14,7 +15,7 @@ description: タスク実装前の技術調査を行い、ベストプラクテ
|
|
|
14
15
|
|
|
15
16
|
- `CreateTaskDefinition (b-002)` が完了し、`a-definition.md` に目的・変更内容が記載されている。
|
|
16
17
|
- タスクディレクトリ: `docs/tasks/task{ID}-{SLUG}/`
|
|
17
|
-
- テンプレート:
|
|
18
|
+
- テンプレート: `{IDE_DIR}/templates/tasks/task-template/b-research.md`
|
|
18
19
|
|
|
19
20
|
## 手順
|
|
20
21
|
|
|
@@ -25,7 +26,8 @@ description: タスク実装前の技術調査を行い、ベストプラクテ
|
|
|
25
26
|
ls -d docs/tasks/task*
|
|
26
27
|
|
|
27
28
|
# テンプレート未設置ならコピー
|
|
28
|
-
|
|
29
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
30
|
+
cp "$SCRIPT_DIR/templates/tasks/task-template/b-research.md" \
|
|
29
31
|
"docs/tasks/task{ID}-{SLUG}/b-research.md"
|
|
30
32
|
```
|
|
31
33
|
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: b-004-create-task-implementation
|
|
2
3
|
description: タスクの実装計画を段階的に分割し、ステップごとの成果物と受け入れ基準を定義するワークフロー
|
|
3
4
|
---
|
|
4
5
|
|
|
@@ -14,7 +15,7 @@ description: タスクの実装計画を段階的に分割し、ステップご
|
|
|
14
15
|
|
|
15
16
|
- `a-definition.md`(b-002)と `b-research.md`(b-003)が作成済みであること。
|
|
16
17
|
- タスクディレクトリ: `docs/tasks/task{ID}-{SLUG}/`
|
|
17
|
-
- テンプレート:
|
|
18
|
+
- テンプレート: `{IDE_DIR}/templates/tasks/task-template/c-implementation.md`
|
|
18
19
|
|
|
19
20
|
## 手順
|
|
20
21
|
|
|
@@ -22,7 +23,8 @@ description: タスクの実装計画を段階的に分割し、ステップご
|
|
|
22
23
|
|
|
23
24
|
```bash
|
|
24
25
|
ls -d docs/tasks/task*
|
|
25
|
-
|
|
26
|
+
SCRIPT_DIR=$(for d in .agent .cursor .claude .codex; do [ -d "$d" ] && echo "$d" && break; done)
|
|
27
|
+
cp "$SCRIPT_DIR/templates/tasks/task-template/c-implementation.md" \
|
|
26
28
|
"docs/tasks/task{ID}-{SLUG}/c-implementation.md"
|
|
27
29
|
```
|
|
28
30
|
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: c-002-update-documentation
|
|
2
3
|
description: 実装完了後にタスクドキュメントとプロジェクトドキュメントを実装内容に合わせて更新するワークフロー
|
|
3
4
|
auto_execution_mode: 1
|
|
4
5
|
---
|
|
@@ -760,7 +761,7 @@ gh pr create --title "feat(task-{id}): {タスク概要}" --body-file docs/tasks
|
|
|
760
761
|
|
|
761
762
|
#### 8.2. テンプレートの更新(必要に応じて)
|
|
762
763
|
|
|
763
|
-
|
|
764
|
+
**タスクテンプレート**(`{IDE_DIR}/templates/tasks/task-template/`)の更新:
|
|
764
765
|
|
|
765
766
|
- 今回のタスクで有効だった形式・セクションをテンプレートに反映
|
|
766
767
|
- 次回のタスクで使いやすいテンプレートに改善
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/{.windsurf/templates → templates}/project/01-requirements/02-features-implemented.md
RENAMED
|
File without changes
|
|
File without changes
|
/package/{.windsurf/templates → templates}/project/01-requirements/04-non-functional-requirements.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|