planning について
planning は、モデルのカスタマイズ作業を確認可能な計画にまとめるエージェントスキルです。評価を先に行うか直接ファインチューニングするかを確認し、承認後に関連スキルで計画を進めます。
主な機能
- 01分岐に関わる判断を一つずつ確認
- 02後続工程への制約を早期に提示
- 03スキルの前提条件に沿ってタスクを配置
- 04承認後に計画の状態を更新
活用シーン
- 01モデル評価やファインチューニングの計画
- 02既存の入力に応じた工程の省略
- 03ユーザーの意見を反映した残タスクの修正
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ awslabs/ agent-plugins --skill planningインストール後、Claude Code で/planningを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/evaluate-first-plan.mdinput-output-contracts.mdmodel-customization-plan.mdskill-routing-constraints.md詳細
原則
- 一度に質問するのは一つだけです。 各質問で、プランの分岐に関する判断が一つ決まるようにしてください。一般的な質問や、対象範囲外の質問は避けてください。
- 制約は早めに明らかにしてください。 ユーザーの判断によって後続の選択肢が制限される場合は、プランを確定する前にそのことを伝えてください。
- プランは短く保ってください。 ユーザーが明示した目標の達成に必要なタスクだけを含めてください。
- すでに把握していることは尋ねないでください。 ユーザーに質問する前に、会話履歴とプロジェクトファイルを確認してください。
フェーズ 1:ブレインストーミング
目標: ユーザーが達成したいことを理解し、プランに含めるスキルを特定します。
references/input-output-contracts.md、references/model-customization-plan.md、references/evaluate-first-plan.md を読んで、次のことを行います。
- ユーザーが明示した目標に関連するスキルを特定します。
- 各スキルに必要な入力成果物がユーザーにあるか確認します。ない場合は、それらの入力を生成するスキルを探し、先に追加します。
- 次のスキルへスムーズに移行でき、行き詰まりを避けられるようにスキルの順序を決めます。
- 推奨ワークフローがユーザーのニーズに合っているか確認します。合わない場合は、必要な変更を検討し、コントラクト表に照らして実施可能か確認します。
- 該当するワークフローで省略できるスキルを判断します。
- 制約を早めに明らかにします。ユーザーの判断(モデルの選択、リージョン、評価方法など)によって後続の選択肢が制限される場合は、先回りして伝え、ユーザーの意見を聞いて、それに応じてプランを調整します。
ブレインストーミング中:
- ワークフロー選択の確認: プランを生成する前に、ユーザーが評価先行ワークフローと直接ファインチューニングのどちらを希望するか確認します。ユーザーが明示的に選択している場合(例:「まず評価する」「評価を省略する」「ベースモデルはすでに評価済み」)は、その選択に従って進めます。それ以外の場合は、両方の選択肢を簡単な長所・短所とともに提示し、どちらにするか尋ねます。「ファインチューニングする」と言ったり、手法を挙げたりしただけでは、評価を省略する明示的な選択とは見なしません。ユーザーは評価先行の選択肢を知らない可能性があります。ユーザーが進め方を選択するまでは、プランを提示しないでください。選択後は、対応する参照プランのみを読んでください。
- コントラクト表の「制約」列を使い、該当する判断が下された時点ですぐに制約を伝えます。例(網羅的な一覧ではありません。全体像についてはコントラクト表を確認してください):
- ユーザーが Nova モデルを選択した場合 → デプロイ先のリージョンが限られることを伝えます。
- ユーザーがリージョンを選択した場合 → モデルの提供状況と競合するかどうかを伝えます。
- 制約がある場合は、プランの他のステップを変更する必要があるか確認します。
- ベースモデルの選択や好みについてユーザーに尋ねないでください。モデルの選択は
model-selectionスキルのみが担当します。 - プランに必要なスキルとツールを判断できたら、すぐにフェーズ 2 に進みます。
フェーズ 2:プランの生成
目標: ユーザーが確認できるよう、構成されたプランを提案します。
タスクを番号付きリストにしてプランを作成します。各タスクには以下を含めます。
- 短い名前
- 実施内容を説明する一文
- 担当するスキル(該当する場合)
形式:
Based on what you've described, here's what I propose:
1. ⬜ **[Task Name]** — [What happens]. *(Skill: [skill-name])*
2. ⬜ **[Task Name]** — [What happens]. *(Skill: [skill-name])*
3. ⬜ **[Task Name]** — [What happens]. *(Skill: [skill-name])*
Does this plan look right, or would you like to change anything?
プラン生成のルール:
- コントラクト表の「前提条件」列から順序を判断します。前提条件を満たしていないスキルを先に置くことはできません。判断に迷う場合は、
references/skill-routing-constraints.mdを参照してください。 - 利用可能なスキルで対応できる機能のみを提案します。ユーザーが必要としている機能に対応するスキルがない場合は、その旨を伝えてください。
- プランはユーザーの実際の意図に合わせます。すべてのプランにすべてのスキルが必要とは限りません。
- ユーザーが入力成果物(例:学習済みモデル)をすでに持っている場合は、それらを作成するステップを省略します。
ユーザーがプランを承認したら、PLAN.md に書き込み、directory-management スキルで定義されたプロジェクトディレクトリ構成の下に保存します。
# Plan
1. ⬜ **[Task Name]** — [Description]. _(Skill: [skill-name])_
2. ⬜ **[Task Name]** — [Description]. _(Skill: [skill-name])_
3. ⬜ **[Task Name]** — [Description]. _(Skill: [skill-name])_
ステータス表示:
- ⬜ 未着手
- 🔄 進行中
- ✅ 完了
タスクのステータスが変わるたびに、PLAN.md を更新します。
フェーズ 3:計画の反復
目標: ユーザーが承認するまで計画を調整します。
- ユーザーが変更を提案した場合は、そのフィードバックを反映して計画を再生成します。
- ユーザーが承認した場合は、最初のタスクのスキルに引き継いで実行を開始します。
実行
計画が承認されたら:
- タスクを開始する前に、
PLAN.mdでそのステータスを 🔄(進行中)に更新します。 - タスクがスキルに該当する場合は、作業を始める前にそのスキルの
SKILL.md全体を読み込みます。一般知識だけでタスクに取り組んではいけません。必ずスキルの指示に従ってください。 - 読み込んだスキルのワークフローに従ってタスクを実行します。
- タスクが完了したら:
-
PLAN.mdでそのステータスを ✅(完了)に更新します。タスクで出力ファイル(スクリプト、ノートブック、マニフェスト)が生成された場合は、完了したタスクの下にファイルパスを記録します。- [x] モデルをファインチューニングする - Output: `scripts/01_sft_finetuning.py` - Output: `manifests/sft-llama-20260515.json` -
完了を簡潔に伝え、次のタスクに進みます。
-
- 実行中にユーザーが新しいリクエストで中断した場合:
- 完了したタスクは変更できません。変更してはいけません。
- 残りのタスクを再生成し、ユーザーの新しい入力を反映します。
- 続行する前に、更新した残りの計画を提示して承認を求めます。
計画の完了
計画内のすべてのタスクが完了したら、ユーザーに次のように伝えます。
"計画のすべての項目が完了しました。次は何をしましょうか?"
これにより、新しい目標に向けてフェーズ 1(ブレインストーミング)に戻ります。終着点はありません。ユーザーが望む限り、会話は続きます。
参考資料
顧客の意図に合った参考計画を読み込み、ニーズに合わせて調整します。
references/evaluate-first-plan.md— ファインチューニングを行うか判断する前に、ベースモデルを評価するワークフローです。references/model-customization-plan.md— 直接ファインチューニングを行う計画です。ユーザーがファインチューニングを明確に決定している場合に使用します。references/input-output-contracts.md- すべてのスキル、必要な入力、生成される出力、前提条件、制約を示す表です。references/skill-routing-constraints.md— 必須の組み込みルール、順序の制約、スキル境界のルールに関する任意の補足資料です。