Files
2025-11-29 17:52:09 +08:00

5.5 KiB
Raw Permalink Blame History

description, argument-hint
description argument-hint
機能開発のサブタスクを作成する
機能名

サブタスクの作成

現在の機能開発に対するサブタスクを作成し、進捗を管理します。

機能名

$ARGUMENTS

あなたの役割

task-manager エージェントを起動して、以下を実行してください:

1. メインタスク(ワークフローフタスク)の確認

まず .tasks.json ファイルを確認し、メインタスクが作成されていることを確認します:

必須条件:

  • /new-feature によってワークフロータスクID 1-5が既に作成されていること
  • メインタスクには以下が含まれます:
    • ID 1: 要件整理 (/new-feature)
    • ID 2: ドキュメント作成 (/create-docs)
    • ID 3: テスト作成 (/create-tests)
    • ID 4: タスク作成 (/create-tasks)
    • ID 5: 実装 (/implement)

メインタスクが存在しない場合:

⚠️  メインタスクが作成されていません

先に `/new-feature [機能の説明]` を実行して、
ワークフローを開始してください。

2. 既存サブタスクの確認

.tasks.json に既存のサブタスクtype: "subtask")がある場合は、それを確認します。

3. サブタスクの分析と作成

重要: サブタスクは必ず親タスクメインタスクID 5: 実装)に紐付けて作成してください。

ユーザーのリクエストと既存のドキュメント(機能仕様書など)を分析し、以下の観点でサブタスクに分割します:

  • 技術領域別: フロントエンド、バックエンド、データベース、API、テストなど
  • 機能単位別: ユーザー認証、データ保存、バリデーション、エラーハンドリングなど
  • 優先度別: 必須機能、拡張機能、最適化など

4. タスクの粒度

各サブタスクは以下の基準を満たすようにします:

  • 適切なサイズ: 独立して完了できる単位
  • テスト可能: 独立してテストできる
  • 明確な完了条件: 完了したかどうかが明確に判断できる

5. タスクの構造

タスクの階層関係:

メインタスクworkflow
  ├─ ID 1: 要件整理 (/new-feature)
  ├─ ID 2: ドキュメント作成 (/create-docs)
  ├─ ID 3: テスト作成 (/create-tests)
  ├─ ID 4: タスク作成 (/create-tasks)
  └─ ID 5: 実装 (/implement) ← サブタスクの親
       ├─ ID 6: ユーザーモデルの作成subtask
       ├─ ID 7: 認証APIエンドポイントの実装subtask
       └─ ID 8: フロントエンドフォームの作成subtask

完全な .tasks.json の例:

{
  "feature": "機能名",
  "createdAt": "2025-10-12T10:00:00Z",
  "updatedAt": "2025-10-12T14:00:00Z",
  "tasks": [
    {
      "id": 4,
      "type": "workflow",
      "name": "タスク作成",
      "status": "in_progress",
      "command": "/create-tasks",
      "createdAt": "2025-10-12T10:00:00Z",
      "startedAt": "2025-10-12T13:00:00Z"
    },
    {
      "id": 5,
      "type": "workflow",
      "name": "実装",
      "status": "pending",
      "command": "/implement",
      "createdAt": "2025-10-12T10:00:00Z"
    },
    {
      "id": 6,
      "type": "subtask",
      "name": "ユーザーモデルの作成",
      "status": "pending",
      "parent": 5,
      "dependencies": [],
      "createdAt": "2025-10-12T14:00:00Z"
    },
    {
      "id": 7,
      "type": "subtask",
      "name": "認証APIエンドポイントの実装",
      "status": "pending",
      "parent": 5,
      "dependencies": [6],
      "createdAt": "2025-10-12T14:00:00Z"
    }
  ]
}

重要なポイント:

  • すべてのサブタスクは "parent": 5 を持つ(メインタスク「実装」に紐付け)
  • type は "subtask" にする
  • ID は既存タスクと重複しない6から開始
  • 完了したタスクは .tasks-history.json に移動されているため、.tasks.json には進行中・未完了のタスクのみが含まれる

6. タスクの状態

  • pending: 未着手
  • in_progress: 作業中
  • completed: 完了
  • blocked: ブロック中(依存関係や問題により進められない)

出力形式

サブタスクを作成したら、以下の形式でユーザーに表示してください:

## サブタスク一覧

### ワークフロータスク
- [x] 1. 要件整理 (/new-feature)
- [x] 2. ドキュメント作成 (/create-docs)
- [x] 3. テスト作成 (/create-tests)
- [x] 4. タスク作成 (/create-tasks)
- [ ] 5. 実装 (/implement)

### 実装サブタスク
- [ ] 6. ユーザーモデルの作成
- [ ] 7. 認証APIエンドポイントの実装 (依存: #6)
- [ ] 8. フロントエンドフォームの作成

## 進捗
- 完了: 4/8 (50%)

次のステップ

サブタスクを作成したら、ユーザーに以下を確認してください:

サブタスクを確認してください。
承認いただければ、次のステップ(実装)を自動的に開始します。

承認しますか? (yes/no)

ユーザーが承認した場合: SlashCommandツールを使って /implement を実行してください。

タスク管理コマンド:

  • タスクを確認・修正する場合: /update-task [タスクID] [新しい状態]
  • タスクを完了する場合: /complete-task [タスクID]
  • タスク一覧を表示する場合: /list-tasks