設計文書に基づいて実装タスクを1日単位の粒度で分割し、1ヶ月単位のフェーズに整理します。各タスクを個別ファイルで管理し、依存関係を考慮した適切な順序で管理します。
Splits design documents into daily tasks organized in monthly phases with dependency tracking.
/plugin marketplace add classmethod/tsumiki/plugin install tsumiki@tsumiki要件名設計文書に基づいて実装タスクを1日単位の粒度で分割し、1ヶ月単位のフェーズに整理する。各タスクを個別ファイルで作成し、依存関係を考慮した適切な順序で管理する。
docs/design/{要件名}/ に設計文書が存在するdocs/tasks/ ディレクトリが存在する(なければ作成)TASK-{4桁の数字} (例 TASK-0001)にする出力ディレクトリ="docs/tasks" 要件名={{requirement_name}} 作業規模={{work_scope}} 信頼性評価=[]
AskUserQuestion ツールを使って作業規模を質問する:
ユーザーの選択を context の {{work_scope}} に保存
カスタムを選択した場合は、AskUserQuestion ツールを使って以下を質問:
step3 を実行する
タスクノートの読み込み
docs/spec/{要件名}/note.md が存在する場合は読み込み/tsumiki:kairo-tasknote {要件名} コマンドを実行してノートを生成追加ルールの読み込み
docs/rule ディレクトリが存在する場合は読み込みdocs/rule/kairo ディレクトリが存在する場合は読み込みdocs/rule/kairo/tasks ディレクトリが存在する場合は読み込み技術スタック定義の読み込み
docs/tech-stack.md が存在する場合は読み込みCLAUDE.md から技術スタックセクションを読み込み.claude/commands/tech-stack.md のデフォルト定義を使用要件定義・設計文書の読み込み
docs/spec/{要件名}-requirements.md または docs/spec/{要件名}/requirements.md を読み込みdocs/design/{要件名}/architecture.md を読み込みdocs/design/{要件名}/database-schema.sql を読み込みdocs/design/{要件名}/api-endpoints.md を読み込みdocs/design/{要件名}/interfaces.ts を読み込みdocs/design/{要件名}/dataflow.md を読み込み既存タスクファイルの確認
docs/tasks/{要件名}-TASK-*.mdファイルをReadツールで読み込みstep4 を実行する
作業規模に応じてヒアリング項目を調整。 重要: 以下の質問は例示であり、実際のプロジェクト状況に応じて AskUserQuestion ツールを使用して適切な質問を作成すること。
以下のカテゴリごとに、設計文書から特定した具体的な課題・不明点について AskUserQuestion ツールで質問する:
タスク粒度の確認
例: AskUserQuestion ツールで以下のように質問
実装優先順位の確認
技術的制約の確認
テスト要件の詳細化
UI/UX実装の詳細確認
必須項目のみ確認 AskUserQuestion ツールを使って、以下の項目について簡潔に質問:
step2 で選択した項目に関連するヒアリングのみ実施。 AskUserQuestion ツールを使って、選択された項目に応じた質問を作成する。
注意事項:
ヒアリング記録の作成:
すべての質問と回答を記録する
各質問について、以下を記録:
ヒアリング結果のサマリーを作成
step5 を実行する
【重要】: このステップでは、洗い出したすべてのタスクファイルを作成する必要があります。途中で止めないでください。
【信頼性レベル指示】: 各項目について、元の資料(要件定義書・設計文書・ユーザヒアリング含む)との照合状況を以下の信号でコメントしてください:
設計文書に基づいて、以下のカテゴリでタスクを洗い出す:
洗い出しの記録:
各タスクに以下を含める:
重要: 各タスクを個別ファイルで作成
必須: step5.1で洗い出したすべてのタスクファイルを作成する(途中で止めない)
フェーズ別並列処理: フェーズ毎にTaskツールを使い、複数フェーズを並列実行して効率的にファイルを作成する
作業規模に応じた <task_template> を選択:
作成プロセス:
docs/tasks/{要件名}/TASK-XXXX.md各タスクファイルには以下を含める:
チェックポイント:
重要:
各Taskツールに渡すプロンプトには、該当フェーズの全タスクの完全な情報を含めること
エージェントが追加のコンテキスト収集なしで全ファイルを作成できるようにする
複数のフェーズのTask tool callsを1つのメッセージで送信し、並列実行を最大化する
step6 を実行する
docs/tasks/{要件名}/overview.md に出力作成したタスクファイルの内容について、品質判定基準に基づいて以下を評価:
品質判定結果をユーザーに表示する(全ファイル統合の信頼性レベル分布を含む)
完了報告を表示:
次のステップ表示: 「次のお勧めステップ: /tsumiki:kairo-implement でタスクを実装します。特定のタスクを実装する場合は /tsumiki:kairo-implement TASK-0001 のように指定してください。」
docs/tasks/{要件名}/overview.mddocs/tasks/{要件名}/TASK-0001.md (1ファイル1タスク)docs/tasks/{要件名}/TASK-0002.md✅ 高品質:
- タスク粒度: 適切(1日単位)
- 依存関係: 完全に定義
- 実装可能性: 確実
- 信頼性レベル: 🔵(青信号)が多い
⚠️ 要改善:
- タスクに曖昧な部分がある
- 依存関係が不明確
- 技術的制約が不明
- 実装手順の確認が必要
- 信頼性レベル: 🟡🔴(黄・赤信号)が多い
- 現在のTODOを「completed」にマーク
- タスク分割フェーズの完了をTODO内容に反映
- 次のフェーズ「タスク実装」をTODOに追加
- 品質判定結果をTODO内容に記録
各項目について、元の資料(要件定義書・設計文書・ユーザヒアリング含む)との照合状況を以下の信号でコメントしてください:
/Users/username/projects/myapp/src/utils/helper.tssrc/utils/helper.ts/tsumiki:tdd-requirements - 詳細要件定義/tsumiki:tdd-testcases - テストケース作成/tsumiki:tdd-red - テスト実装(失敗)/tsumiki:tdd-green - 最小実装/tsumiki:tdd-refactor - リファクタリング/tsumiki:tdd-verify-complete - 品質確認/tsumiki:direct-setup - 直接実装・設定/tsumiki:direct-verify - 動作確認・品質確認すべてのヒアリングは AskUserQuestion ツールを使用して行います。以下は具体的な使用例です。
AskUserQuestion({
questions: [{
question: "タスクの粒度について、1日(8時間)単位で問題ないでしょうか?",
header: "タスク粒度",
multiSelect: false,
options: [
{
label: "1日単位で問題ない",
description: "8時間単位のタスク分割"
},
{
label: "より細かい分割が必要",
description: "半日(4時間)単位など"
}
]
}]
})
AskUserQuestion({
questions: [{
question: "以下のタスクグループの実装優先順位を教えてください",
header: "優先順位",
multiSelect: false,
options: [
{
label: "基盤→バックエンド→フロントエンド",
description: "標準的な実装順序"
},
{
label: "フロントエンド優先",
description: "UI/UXの早期確認を重視"
},
{
label: "並行開発",
description: "可能な限り並行して開発"
}
]
}]
})
AskUserQuestion({
questions: [{
question: "単体テストのカバレッジ目標を教えてください",
header: "カバレッジ",
multiSelect: false,
options: [
{
label: "80%以上",
description: "高いカバレッジを目指す"
},
{
label: "60%以上",
description: "標準的なカバレッジ"
},
{
label: "主要機能のみ",
description: "最小限のテスト"
}
]
}]
})
<overview_template>
作成日: {作成日時} プロジェクト期間: {開始日} - {終了日}({総日数}日) 推定工数: {総工数}時間 総タスク数: {タスク数}件
| フェーズ | 期間 | 成果物 | タスク数 | 工数 | ファイル |
|---|---|---|---|---|---|
| Phase 1 | {期間} | {成果物} | {件数} | {工数}h | TASK-0001~0010 |
| Phase 2 | {期間} | {成果物} | {件数} | {工数}h | TASK-0011~0020 |
| Phase 3 | {期間} | {成果物} | {件数} | {工数}h | TASK-0021~0030 |
| Phase 4 | {期間} | {成果物} | {件数} | {工数}h | TASK-0031~0040 |
使用済みタスク番号: TASK-0001 ~ TASK-{最終番号} 次回開始番号: TASK-{次の番号}
期間: {期間} 目標: {目標} 成果物: {成果物}
TASK-0001 → TASK-0002
TASK-0001 → TASK-0003
期間: {期間} 目標: {目標} 成果物: {成果物}
TASK-0003 → TASK-0011
TASK-0011 → TASK-0012
期間: {期間} 目標: {目標} 成果物: {成果物}
TASK-0012 → TASK-0021
TASK-0021 → TASK-0022
期間: {期間} 目標: {目標} 成果物: {成果物}
TASK-0022 → TASK-0031
TASK-0031 → TASK-0032
| フェーズ | 🔵 青 | 🟡 黄 | 🔴 赤 | 合計 |
|---|---|---|---|---|
| Phase 1 | {件数} | {件数} | {件数} | {件数} |
| Phase 2 | {件数} | {件数} | {件数} | {件数} |
| Phase 3 | {件数} | {件数} | {件数} | {件数} |
| Phase 4 | {件数} | {件数} | {件数} | {件数} |
品質評価: {高品質/要改善/要ヒアリング}
TASK-0001 → TASK-0002 → TASK-0011 → TASK-0012 → TASK-0021 → TASK-0031 → TASK-0032
クリティカルパス工数: {工数}時間 並行作業可能工数: {工数}時間
タスクを実装するには:
/tsumiki:kairo-implement/tsumiki:kairo-implement TASK-0001
</overview_template><full_task_template>
タスクID: TASK-{タスク番号} タスクタイプ: {TDD/DIRECT} 推定工数: {工数}時間 フェーズ: Phase {フェーズ番号} - {フェーズ名} 信頼性レベル: {🔵/🟡/🔴} {出典}
{タスクの概要説明}
信頼性: 🔵 設計文書 architecture.md より
{実装内容の詳細}
実装ファイル: {ファイルパス}
// 実装例
{コード例}
信頼性: 🟡 設計文書から妥当な推測
{実装内容の詳細}
実装ファイル: {ファイルパス}
信頼性: 🔵 API仕様書より
{実装内容の詳細}
信頼性: 🔵 要件定義書 REQ-001 より
Given: {前提条件} When: {実行条件} Then: {期待結果}
テストファイル: {テストファイルパス}
// テストコード例
describe('{テスト対象}', () => {
it('{テストケース}', async () => {
// テスト実装
});
});
信頼性: 🟡 既存実装から妥当な推測
Given: {前提条件} When: {実行条件} Then: {期待結果}
信頼性: 🔵 dataflow.md より
テスト内容: {テスト内容} 期待結果: {期待結果}
信頼性: 🔵 要件定義書 NFR-201 より
信頼性: 🟡 既存実装から妥当な推測
信頼性: 🔵 要件定義書 NFR-202 より
信頼性: 🔵 要件定義書 NFR-203 より
/tsumiki:tdd-requirements TASK-{番号} - 詳細要件定義/tsumiki:tdd-testcases - テストケース作成/tsumiki:tdd-red - テスト実装(失敗)/tsumiki:tdd-green - 最小実装/tsumiki:tdd-refactor - リファクタリング/tsumiki:tdd-verify-complete - 品質確認/tsumiki:direct-setup - 直接実装・設定/tsumiki:direct-verify - 動作確認・品質確認| カテゴリ | 🔵 青 | 🟡 黄 | 🔴 赤 | 合計 |
|---|---|---|---|---|
| 実装詳細 | {件数} | {件数} | {件数} | {件数} |
| 単体テスト | {件数} | {件数} | {件数} | {件数} |
| 統合テスト | {件数} | {件数} | {件数} | {件数} |
| UI/UX要件 | {件数} | {件数} | {件数} | {件数} |
品質評価: {高品質/要改善/要ヒアリング}
推測が多い項目: {推測が多い項目のリスト} </full_task_template>
<minimal_task_template>
タスクID: TASK-{タスク番号} タスクタイプ: {TDD/DIRECT} 推定工数: {工数}時間 フェーズ: Phase {フェーズ番号} - {フェーズ名} 信頼性レベル: {🔵/🟡/🔴} {出典}
{タスクの概要説明}
信頼性: 🔵 {出典}
{実装内容}
実装ファイル: {ファイルパス}
信頼性: 🟡 {出典}
{実装内容}
信頼性: 🔵 {出典}
/tsumiki:tdd-requirements TASK-{番号} - 詳細要件定義/tsumiki:tdd-testcases - テストケース作成/tsumiki:tdd-red - テスト実装(失敗)/tsumiki:tdd-green - 最小実装/tsumiki:tdd-refactor - リファクタリング/tsumiki:tdd-verify-complete - 品質確認/tsumiki:direct-setup - 直接実装・設定/tsumiki:direct-verify - 動作確認・品質確認品質評価: {高品質/要改善/要ヒアリング} </minimal_task_template>