tasks について
`.agents/tasks/`内の構造化ファイルでコーディングタスクを管理するスキルです。エージェントがコードベースの情報を記録し、変更を計画し、TODOを順に追跡して、セッション間で進捗を引き継げるようにします。
主な機能
- 01`.agents/tasks/`でのタスクファイル管理
- 02CURRENT_DESIGN.mdへのコードベース情報の記録
- 03変更計画と番号付きTODO
- 04ステップファイルでの進捗・メモ管理
- 05ナレッジとブロッカーの管理
活用シーン
- 01複数段階のコード変更の整理
- 02後のセッションでのタスク再開
- 03ユーザー対応が必要なタスクの追跡
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ taoeffect/ tasks --skill tasksインストール後、Claude Code で/tasksを入力して読み込まれたか確認します。
同梱ファイルREADME.md
詳細
タスク
タスクはプロジェクトのルートにある次のフォルダーに保存されます:.agents/tasks/<task name>/
このフォルダーが存在しない場合は、作成してください。
<task name> は、ユーザーが指定したタスク名を指します。たとえば、ユーザーが Begin task: update-pull-request-workflow と言った場合、<task name> は update-pull-request-workflow です。
この <task name> フォルダーには、次のファイルが含まれる場合があります。
-
CURRENT_DESIGN.md- 作業中のタスクに関連するコードベースのすべての箇所を詳しく説明します。依頼されたタスクに関わるすべてのファイルと重要な関数やセレクターが記載されています。このファイルが存在しない場合は、最初に作成してください。すでに存在する場合、現在の TODO に関連しない限り、読む必要はありません。最初の TODO に取り組む際は、必ず読んでください。 -
PLAN.md- 実施する変更の詳細な計画です。このファイルには、プロジェクトのAGENTS.mdファイル(存在する場合)とCURRENT_DESIGN.mdで把握したコードベースの情報に基づいて、タスクを完了するために必要な変更の大まかな計画が記載されています。このファイルが存在しない場合は、ユーザーのタスク説明に基づいて作成し、その後、この計画に基づいてTODOs.mdを作成してください(次の項目を参照)。すでに存在し、まだ読んでいない場合は、読んでください。 -
TODOs.md- 順番に進める項目を、階層化せず番号付きで示したリストです。このファイルの各 TODO はSTEP-<N>.mdファイルに対応し、サブステップはそのファイルに記載します。作業を始める前に、必ずこのファイルを読んで、次に取り組む具体的なステップを確認してください。TODO は、実施するタスクの概要を簡潔に記述します(詳細は STEP ファイルに記載します)。例:1. [x] ユーザー作成に関連する既存のコードをすべて分析する 2. [ ] 新規ユーザーが作成時に必ず `#general` チャンネルに参加するよう、コードベースをリファクタリングする -
STEP-<N>.md-TODOs.mdの番号付きステップに対応するファイルです。現在のステップのステータス、番号付きのサブステップ、ステップの進捗に関する最後のセクションが含まれます。このファイルは、セッションの終了やコンテキストのクリア後に、新しいコンテキストで作業を再開できるように、重要な情報を記録するメモとして使用できます。例:# ユーザー作成に関連する既存のコードをすべて分析する Status: COMPLETED ## サブタスク 1. [x] `backend/` 内のユーザー作成コードをすべて確認する 2. [x] `frontend/` 内のユーザー作成コードをすべて確認する ## メモ 調査を完了し、ユーザー作成に関連する以下の関数を特定しました。まずはバックエンドから示します。 ### バックエンドのユーザー作成コード - `createUser()` - `backend/userManagement.ts:78-190` - ... -
KNOWLEDGE.md- このファイルが存在する場合は、TODO に取り組む前に必ず読んでください。プロジェクト固有の注意点や、すべきこと・避けるべきことが記載されています。ユーザーから得た役立つフィードバックや、作業中にコードベースについて発見した情報があれば、必要に応じてこのファイルを作成・更新してください。簡潔にまとめ、長くなりすぎないようにしてください。重要: このファイルは各セッションの開始時に必ず読み込まれます。今後の TODO に必要となる発見(注意点、制約、後続のステップに関係する予期しない動作など)は、現在のステップのメモだけでなく、必ずここにも記録してください。関連する TODO が分かるよう、項目の先頭に TODO を付けてください(例:TODO-3 のテストについて:...)。
NOTES
特に指示がない限り、TODO は一度に 1 つずつ進めてください。TODO を完了したら、実施した内容を簡潔にユーザーへ報告してください。それ以外の詳細は、該当する STEP-<N>.md ファイルの NOTES セクションに記載してください。今後の TODO が依存する発見事項があれば、古いステップファイルは再度読まれない可能性があるため、前述のとおり KNOWLEDGE.md にも記録してください。
不要なコンテキストの消費を避けるため、現在のステップを完了するのに必要な場合を除き、以前のステップファイルは読まないでください。
進捗は、作業中の該当する STEP-<N>.md ファイルで管理してください。ただし、現在のステップを完了するうえで関係がある場合は、tasks フォルダー内のほかのファイルを更新してもかまいません。
サブタスクの作業中に、PLAN.md または TODOs.md の調整が必要だと判明した場合は、実装を続ける前に直ちに更新してください。既存のタスクに TODO を追加する場合は、「既存のタスクへの TODO の追加」セクションのルールに従ってください。
- 重要:対応する
STEP-<N>.mdファイルを作成し、そのステップを実施して、NOTES セクションを更新し、ステータスをCOMPLETEDにするまでは、TODOs.md の TODO を完了済みにしてはいけません。 - 重要:作業中は、サブタスクを完了したら、その都度すぐに現在の
STEP-<N>.mdファイルを更新して、完了済みとして記録してください。例外はありません。完了したサブタスクを記録するまで、次のサブタスクに進まないでください。これにより、作業が中断されてもスムーズに再開できます。 - 重要:エージェント環境に
todosタイプのツール(UI チェックリスト)があっても、このスキルを使う際は絶対に使用しないでください。 - 重要:タスク用のファイルを作成する際、
STEP-<N>.mdファイルを連続して複数作成してはいけません。既存のタスクに TODO を追加する場合を除き、関連ファイルを確認し、作業を開始する準備が整ってから、作業中の TODO に対応する STEP ファイルだけを作成してください。
ステップを完了し、TODOs.md の該当 TODO を完了済みにしたら、ユーザーから続行するよう指示がない限り、そこで止まり、変更内容をユーザーに確認してもらってください。
既存のタスクへの TODO の追加
CURRENT_DESIGN.md、PLAN.md、TODOs.md がすでに存在する既存のタスクに TODO を追加するようユーザーから依頼された場合は、次の手順に従ってください。まだ着手していない TODO については、STEP ファイルは不要です。
この手順は、既存の TODO の後に完了できる追加作業に適用されます。
TODOs.md、PLAN.md、KNOWLEDGE.mdと、追加依頼に関係するほかのタスクファイルを読みます。TODOs.mdの末尾に、概要を示す簡潔な TODO を追加します。- 既存の計画と矛盾しない限り、
PLAN.mdは変更しないでください。矛盾する場合は、方針の変更について説明する簡潔な追記をPLAN.mdの末尾に追加し、該当する TODO 番号を記載してください。このルールは、前述の PLAN 更新に関する一般ルールに優先します。 - 対応する
STEP-<N>.mdファイルを作成し、実装の詳細をすべて記載します。ステータスはNOT STARTEDにします。- この STEP ファイルの作成は、TODO が現在の作業対象になる前に STEP ファイルを作成してはならないというルールの明示的な例外です。
- 最も早い未完了の TODO が、引き続き現在の TODO です。
実装は行わず、続行するよう指示がない限り、ここで止めてください。
ユーザーの介入のために一時停止する
ユーザーにしか解決できない障害が発生した場合(たとえば、自分には権限のないコマンドが必要な場合(sudo / dnf / apt によるインストール)、認証情報が不足している場合、自分では取得できないリソースが必要な場合など)は、回避策を無理に実行したり、何度も再試行したり、影響を受ける作業を黙って飛ばしたりしないでください。代わりに、次の対応をしてください。
- 現在の
STEP-<N>.mdに、見出しを正確に## PAUSED: user intervention requiredとしたセクションを追加します。何がブロックされているか、ユーザーに何をしてもらう必要があるか(実行する正確なコマンドを含む)、提案できる代替手段や回避策を記載してください。 - 直ちに停止します。サブタスクや TODO を完了としてマークせず、ブロッカーと提案を最終出力として報告してください。
ユーザーから回答があったら、すぐに回答が届いた場合でも、後のセッションで届いた場合でも(タスクを再開する際は、現在のステップのファイルに未解決の ## PAUSED: セクションがないか確認してください)、自分で対応し、回答内容とブロッカーの解決方法をそのセクションに記録して、見出しを ## RESOLVED: user intervention に変更し、ステップを中断したところから続けてください。回答を得ても引き続きブロックされている場合は、何が不足しているかを明記して、同じ方法で再度一時停止してください。
レビューのみの指示
ユーザーがタスクについて「review only」「verify only」「verify plan」、または同様の指示をした場合、TODO を実際に完了することは求められていません。このセッションでは、既存の CURRENT_DESIGN.md、PLAN.md、TODOs.md(および関連する STEP ファイル)を確認し、コードベースと照らし合わせて、現在の計画が妥当か、調整が必要かを検証してください。調整が必要な場合は、ドキュメントを更新してから、変更点の簡潔な概要をユーザーに伝えて終了してください。
限られたコンテキストの管理
エージェント環境には、次の便利なツールがある場合があります。
- (A)残りのコンテキスト量を把握する機能
- (B)新しいセッションコンテキストを開始し、コンテキストを渡して作業を引き継ぐ機能
(A)はあるが(B)がない場合は、コンテキストの残りが少なくなった時点で停止し、ユーザーに簡潔な報告をしてください。
(A)と(B)の両方があり、コンテキストに余裕がなくなって新しいセッションを開始する必要がある場合は、(B)を使って、作業を引き継げるように新しいセッションを開始してください。新しいセッションのコンテキストでは、必ず「tasks」スキルを読み込むよう自分に指示し、ここに記載された指示に従って、作業中のユーザー指定の <task name> を引き継いでください。
どちらもない場合は、特に対応する必要はありません。自動的にコンテキストが圧縮されることを想定してください。