Initial commit
This commit is contained in:
12
.claude-plugin/plugin.json
Normal file
12
.claude-plugin/plugin.json
Normal file
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"name": "task-executor",
|
||||
"description": "docs/tasks.mdに記載されたタスクを読み取り、サブエージェントを使用して実装を自動実行します。並列実装可能なタスクは並列で処理し、タスクごとにコミットを作成します。タスク完了後はtasks.mdを更新して完了をマークします。",
|
||||
"version": "0.0.0-2025.11.28",
|
||||
"author": {
|
||||
"name": "Winds Chord",
|
||||
"email": "zhongweili@tubi.tv"
|
||||
},
|
||||
"skills": [
|
||||
"./skills/task-executor"
|
||||
]
|
||||
}
|
||||
3
README.md
Normal file
3
README.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# task-executor
|
||||
|
||||
docs/tasks.mdに記載されたタスクを読み取り、サブエージェントを使用して実装を自動実行します。並列実装可能なタスクは並列で処理し、タスクごとにコミットを作成します。タスク完了後はtasks.mdを更新して完了をマークします。
|
||||
48
plugin.lock.json
Normal file
48
plugin.lock.json
Normal file
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"$schema": "internal://schemas/plugin.lock.v1.json",
|
||||
"pluginId": "gh:windschord/claude_skils:task-executor",
|
||||
"normalized": {
|
||||
"repo": null,
|
||||
"ref": "refs/tags/v20251128.0",
|
||||
"commit": "76b924b7328933a1532c6fd2e56986fa8950783d",
|
||||
"treeHash": "2c2eed37ee6febba9c491bcb46a8d24586125d4f5fe3bca158fc0557d11d66fa",
|
||||
"generatedAt": "2025-11-28T10:29:02.763541Z",
|
||||
"toolVersion": "publish_plugins.py@0.2.0"
|
||||
},
|
||||
"origin": {
|
||||
"remote": "git@github.com:zhongweili/42plugin-data.git",
|
||||
"branch": "master",
|
||||
"commit": "aa1497ed0949fd50e99e70d6324a29c5b34f9390",
|
||||
"repoRoot": "/Users/zhongweili/projects/openmind/42plugin-data"
|
||||
},
|
||||
"manifest": {
|
||||
"name": "task-executor",
|
||||
"description": "docs/tasks.mdに記載されたタスクを読み取り、サブエージェントを使用して実装を自動実行します。並列実装可能なタスクは並列で処理し、タスクごとにコミットを作成します。タスク完了後はtasks.mdを更新して完了をマークします。"
|
||||
},
|
||||
"content": {
|
||||
"files": [
|
||||
{
|
||||
"path": "README.md",
|
||||
"sha256": "cae16825240a50ac79b45c5a7a521cb9ea001d6e176ca3a0fc1f15994de39a4e"
|
||||
},
|
||||
{
|
||||
"path": ".claude-plugin/plugin.json",
|
||||
"sha256": "5ccfe8bd6857994f87f8f2e6b81b33cd15fc35fa6154c1b3b1b258400dd42883"
|
||||
},
|
||||
{
|
||||
"path": "skills/task-executor/README.md",
|
||||
"sha256": "324b4cc40e887e6b539923eff72bdd47c54a1ab58df0397c9cff4ace4795c54d"
|
||||
},
|
||||
{
|
||||
"path": "skills/task-executor/SKILL.md",
|
||||
"sha256": "e8000a3cd57229769493f301606691c64cb3924849c33408cfe3fa5c3cd37ef7"
|
||||
}
|
||||
],
|
||||
"dirSha256": "2c2eed37ee6febba9c491bcb46a8d24586125d4f5fe3bca158fc0557d11d66fa"
|
||||
},
|
||||
"security": {
|
||||
"scannedAt": null,
|
||||
"scannerVersion": null,
|
||||
"flags": []
|
||||
}
|
||||
}
|
||||
187
skills/task-executor/README.md
Normal file
187
skills/task-executor/README.md
Normal file
@@ -0,0 +1,187 @@
|
||||
# Task Executor スキル
|
||||
|
||||
docs/tasks.mdに記載されたタスクを自動的に実行するClaude Codeスキルです。
|
||||
|
||||
## 概要
|
||||
|
||||
Task Executorスキルは、プロジェクトのdocs/tasks.mdファイルからタスクを読み取り、サブエージェントを使用して自動的に実装を行います。並列実行可能なタスクは並列で処理し、各タスク完了後に適切なコミットを作成します。
|
||||
|
||||
## 主な機能
|
||||
|
||||
- docs/tasks.mdからのタスク自動読み取り
|
||||
- サブエージェントを使用した自動実装
|
||||
- 並列実行可能なタスクの並列処理
|
||||
- タスクごとの自動コミット作成
|
||||
- 重要な変更前の安全なコミット作成
|
||||
- タスク完了時のtasks.md自動更新
|
||||
- 絵文字を使用しないクリーンなメッセージ
|
||||
|
||||
## 使用方法
|
||||
|
||||
### 基本的な使い方
|
||||
|
||||
```
|
||||
次のタスクを実行してください
|
||||
```
|
||||
|
||||
または
|
||||
|
||||
```
|
||||
tasks.mdのタスクを進めてください
|
||||
```
|
||||
|
||||
### 複数タスクの実行
|
||||
|
||||
```
|
||||
tasks.mdのすべてのTODOタスクを実行してください
|
||||
```
|
||||
|
||||
## タスクの実行フロー
|
||||
|
||||
1. docs/tasks.mdを読み取り、TODO状態のタスクを特定
|
||||
2. 依存関係を確認し、実行可能なタスクを決定
|
||||
3. 並列実行可能なタスクをグループ化
|
||||
4. サブエージェントを起動してタスクを実行
|
||||
5. タスク完了後、コミットを作成
|
||||
6. tasks.mdを更新して完了をマーク
|
||||
7. 次のタスクへ進む
|
||||
|
||||
## tasks.mdの形式
|
||||
|
||||
このスキルは、sdd-docsスキルで作成されたtasks.mdファイルを想定しています:
|
||||
|
||||
```markdown
|
||||
#### タスク1.1: ユーザー認証APIエンドポイントの実装
|
||||
|
||||
**説明**:
|
||||
`src/api/auth.ts`に以下のエンドポイントを実装する:
|
||||
- POST /api/auth/login - ユーザーログイン処理
|
||||
- POST /api/auth/logout - ログアウト処理
|
||||
|
||||
**技術的文脈**:
|
||||
- フレームワーク: Next.js 14
|
||||
- 認証: JWT + bcrypt
|
||||
|
||||
**受入基準**:
|
||||
- [ ] login/logoutエンドポイントが実装されている
|
||||
- [ ] JWTトークンが正しく生成・検証される
|
||||
- [ ] すべてのテストが通過する
|
||||
|
||||
**依存関係**: なし
|
||||
**推定工数**: 30分(AIエージェント作業時間)
|
||||
**ステータス**: `TODO`
|
||||
```
|
||||
|
||||
## コミット管理
|
||||
|
||||
### タスクごとのコミット
|
||||
|
||||
各タスク完了後、以下の形式でコミットを作成します:
|
||||
|
||||
```
|
||||
[Task 1.1] ユーザー認証APIエンドポイントの実装
|
||||
|
||||
POST /api/auth/login と POST /api/auth/logout エンドポイントを実装。
|
||||
JWTトークンを使用した認証方式を採用し、bcryptでパスワードをハッシュ化。
|
||||
|
||||
関連: docs/tasks.md Task 1.1
|
||||
```
|
||||
|
||||
### 重要な変更前のコミット
|
||||
|
||||
アーキテクチャの大幅な変更や大規模なリファクタリングの前には、安全なポイントとしてコミットを作成します:
|
||||
|
||||
```
|
||||
[Task 2.3] 認証システムリファクタリング前の安全なポイント
|
||||
|
||||
大規模なリファクタリングを開始する前の安定した状態を保存。
|
||||
```
|
||||
|
||||
## tasks.mdの更新
|
||||
|
||||
タスク完了後、以下のように更新されます:
|
||||
|
||||
```markdown
|
||||
#### タスク1.1: ユーザー認証APIエンドポイントの実装
|
||||
|
||||
**説明**: [元の説明]
|
||||
**受入基準**: [元の受入基準]
|
||||
**ステータス**: `DONE`
|
||||
**完了サマリー**: login/logoutエンドポイントをJWT認証で実装、すべてのテスト通過
|
||||
```
|
||||
|
||||
## 並列実行
|
||||
|
||||
依存関係のないタスクは自動的に並列実行されます:
|
||||
|
||||
```
|
||||
以下のタスクを並列実行します:
|
||||
|
||||
- Task 1.1: ユーザー認証APIエンドポイントの実装
|
||||
- Task 1.2: データモデルの定義
|
||||
- Task 1.3: 設定ファイルの作成
|
||||
|
||||
実行を開始してよろしいですか?
|
||||
```
|
||||
|
||||
## 制約事項
|
||||
|
||||
以下の場合は自動実行を行わず、ユーザーに確認を求めます:
|
||||
|
||||
- タスクの説明が曖昧で、実装方法が複数考えられる場合
|
||||
- 本番環境への直接的な変更など、リスクの高い操作
|
||||
- 技術選択やアーキテクチャの決定が必要な場合
|
||||
|
||||
## 絵文字の使用禁止
|
||||
|
||||
このスキルでは、すべてのメッセージ、コミットメッセージ、ドキュメント更新において絵文字を使用しません。クリーンで読みやすいテキストコミュニケーションを維持します。
|
||||
|
||||
## ベストプラクティス
|
||||
|
||||
### tasks.mdの作成
|
||||
|
||||
tasks.mdは、sdd-docsスキルを使用して作成することを推奨します:
|
||||
|
||||
1. requirements.mdで要件を定義
|
||||
2. design.mdで設計を文書化
|
||||
3. tasks.mdでタスクに分解
|
||||
4. task-executorスキルで実行
|
||||
|
||||
### タスクの粒度
|
||||
|
||||
各タスクは以下の粒度が推奨されます:
|
||||
- サブエージェント1回の実行で完了できる範囲
|
||||
- 20-90分程度の作業量
|
||||
- 明確な受入基準を持つ
|
||||
|
||||
### 受入基準の具体化
|
||||
|
||||
受入基準は検証可能な形で記載してください:
|
||||
```markdown
|
||||
**受入基準**:
|
||||
- [ ] 特定のファイルが存在する
|
||||
- [ ] すべてのテストが通過する
|
||||
- [ ] ESLintエラーがゼロ
|
||||
```
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
### タスクが並列実行されない
|
||||
|
||||
**原因**: 依存関係が設定されている
|
||||
|
||||
**解決**: tasks.mdの依存関係フィールドを確認し、不要な依存関係を削除
|
||||
|
||||
### サブエージェントがタスクを完了できない
|
||||
|
||||
**原因**: タスクの説明が不十分
|
||||
|
||||
**解決**: tasks.mdのタスク説明を詳細化し、以下を含める:
|
||||
- 実装すべきファイルパス
|
||||
- 使用する技術やライブラリ
|
||||
- 具体的な実装手順
|
||||
- 技術的文脈
|
||||
|
||||
## ライセンス
|
||||
|
||||
このスキルはMITライセンスの下で公開されています。
|
||||
422
skills/task-executor/SKILL.md
Normal file
422
skills/task-executor/SKILL.md
Normal file
@@ -0,0 +1,422 @@
|
||||
---
|
||||
name: task-executor
|
||||
description: docs/tasks.mdに記載されたタスクを読み取り、サブエージェントを使用して実装を自動実行します。並列実装可能なタスクは並列で処理し、タスクごとにコミットを作成します。タスク完了後はtasks.mdを更新して完了をマークします。
|
||||
---
|
||||
|
||||
# Task Executor スキル
|
||||
|
||||
docs/tasks.mdに記載されたタスクを自動的に実行するスキルです。サブエージェントを活用して効率的に実装を進め、適切なコミット管理を行います。
|
||||
|
||||
## 概要
|
||||
|
||||
このスキルは以下の機能を提供します:
|
||||
- docs/tasks.mdからタスクを読み取り、実行順序を決定
|
||||
- サブエージェントを使用した自動実装
|
||||
- 並列実行可能なタスクの並列処理
|
||||
- タスクごとの自動コミット
|
||||
- 重要な変更前の安全なコミット作成
|
||||
- タスク完了時のtasks.md自動更新
|
||||
|
||||
## このスキルを使用する場面
|
||||
|
||||
以下の状況でこのスキルを有効にしてください:
|
||||
|
||||
### タスク実行時
|
||||
- docs/tasks.mdに記載されたタスクを実行する場合
|
||||
- 次のタスクを自動的に実行してほしい場合
|
||||
- 複数のタスクを効率的に処理したい場合
|
||||
- タスクの実装を自動化したい場合
|
||||
|
||||
### プロジェクト管理時
|
||||
- タスクの進捗を自動的に追跡したい場合
|
||||
- タスク完了後にtasks.mdを更新したい場合
|
||||
- 実装とドキュメントの同期を保ちたい場合
|
||||
|
||||
## 基本的な使い方
|
||||
|
||||
### タスクの実行
|
||||
|
||||
「次のタスクを実行してください」「tasks.mdのタスクを進めてください」などと依頼されたら:
|
||||
|
||||
1. **tasks.mdの読み取り**
|
||||
- docs/tasks.mdの内容を確認
|
||||
- TODO状態のタスクを特定
|
||||
- 依存関係を確認
|
||||
|
||||
2. **実行計画の作成**
|
||||
- 実行可能なタスクを特定
|
||||
- 並列実行可能なタスクをグループ化
|
||||
- 実行順序を決定
|
||||
|
||||
3. **タスクの実行**
|
||||
- サブエージェントを使用して実装
|
||||
- 並列実行可能な場合は複数のサブエージェントを同時起動
|
||||
- タスクごとにコミットを作成
|
||||
|
||||
4. **tasks.mdの更新**
|
||||
- 完了したタスクを1行に要約
|
||||
- ステータスをDONEに変更
|
||||
- 変更をコミット
|
||||
|
||||
## タスク実行の原則
|
||||
|
||||
### 1. サブエージェントの活用
|
||||
|
||||
すべての実装タスクはサブエージェント(Task tool)を使用して実行します:
|
||||
|
||||
**使用方法**:
|
||||
```
|
||||
サブエージェントに以下のタスクを実行させます:
|
||||
- タスク内容:[tasks.mdから抽出したタスク説明]
|
||||
- 受入基準:[tasks.mdから抽出した受入基準]
|
||||
- 技術的文脈:[tasks.mdから抽出した技術情報]
|
||||
```
|
||||
|
||||
**サブエージェントへの指示**:
|
||||
- タスクの完全な説明を提供
|
||||
- 受入基準を明確に伝える
|
||||
- 必要な技術的文脈を共有
|
||||
- 実装のみを依頼(コミットは含めない)
|
||||
|
||||
### 2. 並列実行
|
||||
|
||||
依存関係のないタスクは並列で実行します:
|
||||
|
||||
**並列実行の条件**:
|
||||
- 依存関係フィールドが空、または「なし」
|
||||
- 前提となるタスクがすべて完了済み
|
||||
- 異なるファイル・コンポーネントを対象とする
|
||||
|
||||
**並列実行の方法**:
|
||||
```
|
||||
複数のサブエージェントを同時に起動します:
|
||||
- サブエージェント1: タスク1.1を実行
|
||||
- サブエージェント2: タスク1.2を実行
|
||||
- サブエージェント3: タスク1.3を実行
|
||||
```
|
||||
|
||||
### 3. コミット管理
|
||||
|
||||
#### 基本ルール
|
||||
|
||||
**タスクごとのコミット**:
|
||||
- 各タスク完了後、必ずコミットを作成
|
||||
- コミットメッセージにはタスクの内容を記載
|
||||
- 補足情報があれば追加
|
||||
|
||||
**コミットメッセージの形式**:
|
||||
```
|
||||
[タスクID] タスクの要約
|
||||
|
||||
tasks.mdに記載されたタスクの詳細説明。
|
||||
実装した内容の補足情報。
|
||||
|
||||
関連: docs/tasks.md [タスクID]
|
||||
```
|
||||
|
||||
**例**:
|
||||
```
|
||||
[Task 1.1] ユーザー認証APIエンドポイントの実装
|
||||
|
||||
POST /api/auth/login と POST /api/auth/logout エンドポイントを実装。
|
||||
JWTトークンを使用した認証方式を採用し、bcryptでパスワードをハッシュ化。
|
||||
|
||||
関連: docs/tasks.md Task 1.1
|
||||
```
|
||||
|
||||
#### 重要な変更前のコミット
|
||||
|
||||
以下の場合は、変更前に安全なコミットを作成します:
|
||||
|
||||
**重要な変更の例**:
|
||||
- アーキテクチャの大幅な変更
|
||||
- 複数のファイルにまたがる大規模なリファクタリング
|
||||
- データベーススキーマの変更
|
||||
- 既存のAPIインターフェースの変更
|
||||
- 依存ライブラリのメジャーバージョンアップ
|
||||
|
||||
**手順**:
|
||||
1. 現在の安定した状態をコミット
|
||||
2. コミットメッセージに「変更前の安全なポイント」と記載
|
||||
3. 変更を実施
|
||||
4. 変更完了後にタスクのコミットを作成
|
||||
|
||||
**例**:
|
||||
```
|
||||
# 変更前のコミット
|
||||
[Task 2.3] 認証システムリファクタリング前の安全なポイント
|
||||
|
||||
大規模なリファクタリングを開始する前の安定した状態を保存。
|
||||
|
||||
# 変更後のコミット
|
||||
[Task 2.3] 認証システムのリファクタリング
|
||||
|
||||
認証ロジックをミドルウェアに分離し、コードの再利用性を向上。
|
||||
既存のテストはすべて通過することを確認。
|
||||
|
||||
関連: docs/tasks.md Task 2.3
|
||||
```
|
||||
|
||||
### 4. tasks.mdの更新
|
||||
|
||||
タスク完了後、以下の手順でtasks.mdを更新します:
|
||||
|
||||
#### 更新内容
|
||||
|
||||
1. **タスクの要約**
|
||||
- タスクの説明を1行に要約
|
||||
- 実装した内容の要点を含める
|
||||
- 簡潔かつ明確に記述
|
||||
|
||||
2. **ステータスの変更**
|
||||
- `TODO` → `DONE`
|
||||
- 完了日時は不要(gitのコミット履歴で確認可能)
|
||||
|
||||
3. **フォーマット**
|
||||
```markdown
|
||||
#### タスク1.1: [タイトル]
|
||||
**説明**: [元の説明]
|
||||
**受入基準**: [元の受入基準]
|
||||
**ステータス**: `DONE`
|
||||
**完了サマリー**: [1行の要約]
|
||||
```
|
||||
|
||||
#### 更新のコミット
|
||||
|
||||
tasks.mdの更新は独立したコミットとして作成します:
|
||||
|
||||
```
|
||||
Update tasks.md: Mark Task 1.1 as completed
|
||||
|
||||
タスク1.1(ユーザー認証APIエンドポイントの実装)を完了としてマーク。
|
||||
```
|
||||
|
||||
### 5. 絵文字の使用禁止
|
||||
|
||||
すべてのメッセージ、コミットメッセージ、ドキュメントで絵文字を使用しません:
|
||||
|
||||
**禁止事項**:
|
||||
- コミットメッセージに絵文字を含めない
|
||||
- ユーザーへのメッセージに絵文字を使わない
|
||||
- tasks.mdの更新に絵文字を含めない
|
||||
- ログやエラーメッセージに絵文字を使わない
|
||||
|
||||
**良い例**:
|
||||
```
|
||||
[Task 1.1] ユーザー認証APIエンドポイントの実装
|
||||
|
||||
関連: docs/tasks.md Task 1.1
|
||||
```
|
||||
|
||||
**悪い例**:
|
||||
```
|
||||
✅ [Task 1.1] ユーザー認証APIエンドポイントの実装 🚀
|
||||
|
||||
関連: docs/tasks.md Task 1.1 📝
|
||||
```
|
||||
|
||||
## ワークフロー
|
||||
|
||||
### 基本的な実行フロー
|
||||
|
||||
```
|
||||
1. tasks.mdを読み取る
|
||||
↓
|
||||
2. 実行可能なタスクを特定
|
||||
↓
|
||||
3. 並列実行可能か判断
|
||||
↓
|
||||
4. サブエージェントを起動(並列または順次)
|
||||
↓
|
||||
5. 各タスクの実装を監視
|
||||
↓
|
||||
6. タスクごとにコミット作成
|
||||
↓
|
||||
7. tasks.mdを更新
|
||||
↓
|
||||
8. tasks.md更新をコミット
|
||||
↓
|
||||
9. 次のタスクへ(または完了)
|
||||
```
|
||||
|
||||
### 詳細な実行手順
|
||||
|
||||
#### ステップ1: タスクの読み取りと分析
|
||||
|
||||
```markdown
|
||||
1. docs/tasks.mdを読み取る
|
||||
2. 各タスクの情報を抽出:
|
||||
- タスクID
|
||||
- タスクタイトル
|
||||
- 説明
|
||||
- 受入基準
|
||||
- 依存関係
|
||||
- ステータス
|
||||
- 推定工数
|
||||
3. TODO状態のタスクをフィルタリング
|
||||
4. 依存関係グラフを作成
|
||||
```
|
||||
|
||||
#### ステップ2: 実行計画の作成
|
||||
|
||||
```markdown
|
||||
1. 依存関係のないタスクを特定
|
||||
2. 並列実行グループを作成
|
||||
3. 実行順序を決定
|
||||
4. ユーザーに実行計画を提示
|
||||
```
|
||||
|
||||
**実行計画の例**:
|
||||
```
|
||||
以下のタスクを実行します:
|
||||
|
||||
並列実行グループ1(依存関係なし):
|
||||
- Task 1.1: ユーザー認証APIエンドポイントの実装
|
||||
- Task 1.2: データモデルの定義
|
||||
- Task 1.3: 設定ファイルの作成
|
||||
|
||||
順次実行(Task 1.1, 1.2に依存):
|
||||
- Task 2.1: 認証ミドルウェアの実装
|
||||
|
||||
実行を開始してよろしいですか?
|
||||
```
|
||||
|
||||
#### ステップ3: タスクの実行
|
||||
|
||||
```markdown
|
||||
1. サブエージェントを起動
|
||||
2. タスクの完全な情報を提供
|
||||
3. 実装の完了を待つ
|
||||
4. 受入基準の確認
|
||||
5. コミットを作成
|
||||
```
|
||||
|
||||
#### ステップ4: tasks.mdの更新
|
||||
|
||||
```markdown
|
||||
1. 完了したタスクを1行に要約
|
||||
2. ステータスをDONEに変更
|
||||
3. 完了サマリーを追加
|
||||
4. 変更をコミット
|
||||
```
|
||||
|
||||
## エラーハンドリング
|
||||
|
||||
### タスク実行中のエラー
|
||||
|
||||
**エラーが発生した場合**:
|
||||
1. エラー内容をユーザーに報告
|
||||
2. 部分的に完了した作業をコミット
|
||||
3. タスクのステータスをBLOCKEDに変更
|
||||
4. エラー原因と対処方法を記録
|
||||
5. ユーザーに次の行動を確認
|
||||
|
||||
**例**:
|
||||
```
|
||||
Task 1.1の実行中にエラーが発生しました:
|
||||
|
||||
エラー内容:
|
||||
npm install時に依存関係の競合が発生
|
||||
|
||||
実施した内容:
|
||||
- 基本的なファイル構造を作成(コミット済み)
|
||||
- パッケージのインストールは未完了
|
||||
|
||||
次の行動:
|
||||
1. 依存関係の競合を解決してから再実行
|
||||
2. このタスクをスキップして次のタスクへ進む
|
||||
|
||||
どちらにしますか?
|
||||
```
|
||||
|
||||
### 依存関係の問題
|
||||
|
||||
**前提タスクが未完了の場合**:
|
||||
1. 依存関係を確認
|
||||
2. 前提タスクの実行を提案
|
||||
3. ユーザーに確認
|
||||
|
||||
## 制約事項
|
||||
|
||||
### 実行の制限
|
||||
|
||||
以下の場合は自動実行を行いません:
|
||||
|
||||
1. **タスクの曖昧性**
|
||||
- 受入基準が明確でない
|
||||
- 実装方法が複数考えられる
|
||||
- 技術的文脈が不足している
|
||||
|
||||
2. **リスクの高い操作**
|
||||
- 本番環境への直接的な変更
|
||||
- データベースの削除操作
|
||||
- 認証情報の変更
|
||||
|
||||
3. **ユーザーの判断が必要な場合**
|
||||
- 技術選択が必要
|
||||
- アーキテクチャの決定が必要
|
||||
- トレードオフの判断が必要
|
||||
|
||||
これらの場合は、ユーザーに確認を求めます。
|
||||
|
||||
## ベストプラクティス
|
||||
|
||||
### 1. タスクの粒度
|
||||
|
||||
tasks.mdのタスクは以下の粒度が推奨されます:
|
||||
- サブエージェント1回の実行で完了できる範囲
|
||||
- 20-90分程度の作業量
|
||||
- 明確な受入基準を持つ
|
||||
|
||||
### 2. 依存関係の明示
|
||||
|
||||
tasks.mdでは依存関係を明確に記載してください:
|
||||
```markdown
|
||||
**依存関係**: Task 1.1, Task 1.2
|
||||
```
|
||||
|
||||
### 3. 受入基準の具体化
|
||||
|
||||
受入基準は検証可能な形で記載してください:
|
||||
```markdown
|
||||
**受入基準**:
|
||||
- [ ] `src/api/auth.ts`が存在する
|
||||
- [ ] すべてのテストが通過する(npm test)
|
||||
- [ ] ESLintエラーがゼロ
|
||||
```
|
||||
|
||||
### 4. 技術的文脈の提供
|
||||
|
||||
サブエージェントが実装しやすいよう、技術的文脈を提供してください:
|
||||
```markdown
|
||||
**技術的文脈**:
|
||||
- フレームワーク: Next.js 14
|
||||
- 認証: JWT + bcrypt
|
||||
- 参照実装: src/api/users.ts
|
||||
```
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
### よくある問題と解決方法
|
||||
|
||||
**問題1: タスクが並列実行されない**
|
||||
- 原因: 依存関係が設定されている
|
||||
- 解決: tasks.mdの依存関係フィールドを確認
|
||||
|
||||
**問題2: コミットが作成されない**
|
||||
- 原因: git作業ディレクトリが汚れている
|
||||
- 解決: 未コミットの変更を確認し、適切にコミット
|
||||
|
||||
**問題3: サブエージェントがタスクを完了できない**
|
||||
- 原因: タスクの説明が不十分
|
||||
- 解決: tasks.mdのタスク説明を詳細化
|
||||
|
||||
## 今後の拡張
|
||||
|
||||
このスキルは将来的に以下の機能を追加予定です:
|
||||
|
||||
- タスクの優先順位付け
|
||||
- 実行時間の推定と実績の記録
|
||||
- タスク実行のロールバック機能
|
||||
- 複数プロジェクトの並行管理
|
||||
- GitHub Issuesとの連携
|
||||
Reference in New Issue
Block a user