split-tasks について
split-tasksは、確定したプロジェクト範囲を依存関係付きのタスクDAGに整理するスキルです。小さなエンドツーエンドのスライス、受け入れ基準、親情報への追跡を重視し、レビュー用Markdown表または自律ランナー向けJSONを出力します。
主な機能
- 01範囲を垂直スライスに分割
- 02DAGで依存関係を管理
- 03スライスの出所を追跡
- 04受け入れ基準を定義
- 05MarkdownまたはJSONで出力
活用シーン
- 01確定した変更内容から実装を計画
- 02順次実行するタスクの準備
- 03自律ランナー用タスクマニフェストの生成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ venhdev/ skills --skill split-tasksインストール後、Claude Code で/split-tasksを入力して読み込まれたか確認します。
詳細
split-tasks — タスク DAG の分解と来歴スライス
運用上の不変条件
- ゼロ永続化境界:タスクファイルをディスクに書き込んだり、リモートトラッカーに課題を作成したりしないでください。インメモリまたはレビュー可能なタスク DAG マニフェストのみを生成してください。
- 垂直スライスの必須化:作業は、観測可能な受け入れ基準を備えたエンドツーエンドの垂直スライス(1~4 ファイル、50~150 LOC)に厳密に分割してください。水平の技術レイヤー分割(DB のみ、API のみのスライス)は禁止です。
- 親来歴の厳密な追跡:各スライスは、その起点(
Parent Trace:ADR ID、Feature Slug、または Frozen Contract の座標)を明示的に追跡する必要があります。親を持たないスライスは禁止です。 - 非巡回依存関係の徹底:スライスは有向非巡回グラフ(DAG)を形成する必要があります。循環依存は禁止です。
- アトミックな分割回避:入力範囲がすでに 1 回の検証ターン(≤ 3 ファイル、単一の基準)に収まる場合は、統合された単一のスライスを維持してください。
- 呼び出し方法に応じた出力:人間によるレビュー用に完全な Markdown テーブルを出力し、自律ランナーから呼び出された場合はコンパクトな JSON DAG を出力してください。
ドメイン基準
1. スライスの規模と影響範囲
スライスは /forge の 1 ターンで検証可能でなければなりません。スライスが 4 ファイルを超える場合、または異なるドメインコンテキストにまたがる場合は、独立した呼び出し元またはシナリオの境界に沿って、さらに分割してください。
2. トポロジカルなフェーズ分け
スライスをトポロジカル順に並べます。
- コントラクト/シームの基点:型宣言、インターフェース、特性テスト。
- コアの垂直フロー:最小限のエンドツーエンドのハッピーパス。
- エッジ/レジリエンスのスライス:検証、エラー境界、並行処理の保護策。
- 整理/非推奨化:古くなったシム、フラグ、レガシーパスの削除。
3. 状態とディスパッチのライフサイクル
READY:すべての先行依存関係がDONEです。直ちに/forgeで実行できます。BLOCKED:前提となる上流スライスの完了を待っています。
標準出力コントラクト
# Task DAG: <Feature / Scope> · <STAGED | UNRESOLVED>
Basis: <Root intent, architecture anchor, or ADR link>
| Slice ID | Title & Scope | Dependencies | Parent Trace | Acceptance & Verification Criteria | Dispatch State |
| :--- | :--- | :--- | :--- | :--- | :--- |
| S-01 | <Vertical deliverable> | None | <ADR / Spec Anchor> | <Automated test command or invariant> | READY |
| S-02 | <Dependent deliverable>| S-01 | <ADR / Spec Anchor> | <Automated test command or invariant> | BLOCKED |
Summary: <N> slices (Max depth <K>, <D> direct dependencies).
*(omit if clean)* Gap: <Unresolved dependency or ambiguous boundary requiring decision.>
自律 JSON コントラクト(Model Runner 用):
{
"basis": "<anchor>",
"slices": [
{"id": "S-01", "scope": "<title>", "deps": [], "parent": "<trace>", "verify": "<cmd>", "state": "READY"},
{"id": "S-02", "scope": "<title>", "deps": ["S-01"], "parent": "<trace>", "verify": "<cmd>", "state": "BLOCKED"}
]
}
ルーティング
- 即時のセッション内実行 -> 最初の READY スライスを選択して(/changeset 経由で)->(/forge 経由で)実行します。
- 遅延実行またはチームのバックログ管理 ->(/tracking-tasks 経由)。
- 長時間実行する自動パイプラインの実行 -> Autonomous Runner(/goal)。
- 範囲が曖昧、または依存関係が競合 ->(/clarify 経由)。
実行プロトコル
- 確定済みの changeset、凍結されたコントラクト、またはアーキテクチャ上の指示を取り込みます。
- 範囲がアトミック(≤ 3 ファイル)であれば、分割せず単一の READY スライスを提示します。
- それ以外の場合は、垂直スライスを導出し、親の来歴を確立して、依存関係が非巡回であることを確認します。
- 人間の呼び出し元には Markdown DAG を、自律ランナーには JSON DAG を出力します。
コメント
Markdown 対応