Skip to content

Instantly share code, notes, and snippets.

@therealparmesh
Last active September 11, 2026 02:18
Show Gist options
  • Select an option

  • Save therealparmesh/df40ba743e84df6f1e1b32300c94d566 to your computer and use it in GitHub Desktop.

Select an option

Save therealparmesh/df40ba743e84df6f1e1b32300c94d566 to your computer and use it in GitHub Desktop.
Claude Code skill: plan with Fable, execute with Opus/Sonnet subagents
name plan-with-fable-execute-with-subagents
description Use when the user wants a task planned by the Fable model and built by Opus or Sonnet subagents. Triggers: "plan with fable", "fable then opus", "fable then sonnet", "fable plans and sonnet executes", "plan then dispatch subagents".

Plan With Fable, Execute With Subagents

Overview

One model plans. Other models build. Fable writes the plan. Opus or Sonnet subagents do the work in it.

When to Use

  • The task needs a plan before any code change.
  • The user names Fable for the plan.
  • The user names Opus, Sonnet, or both, for the build.

Skip this skill for a one-step task with no plan.

Steps

  1. Plan with Fable. Call the Agent tool with subagent_type: "Plan" and model: "fable". State the task in full — the agent has no memory of this chat. Ask for a short numbered list. Each step gets one outcome and its own inputs, written out for a reader with no other context. The Plan agent has no Edit or Write tool, but it does have Bash, so tell it to plan only.
  2. Read the plan. Every step needs a clear outcome and its inputs. To correct a vague step, use SendMessage with the planner's agent ID. A new Agent call starts fresh and loses the plan.
  3. Assign a model per step. A step with a hard trade-off, an unclear boundary, or a design call gets model: "opus". A step that is direct and well-scoped gets model: "sonnet". Do not use subagent_type: "fork" — a fork ignores model and runs your own model.
  4. Execute. Call the Agent tool once per step. State the step's outcome and inputs in full, because a fresh subagent never saw the plan. Send independent steps as separate tool calls in one message, so they run in parallel. Send a dependent step only after the step it needs finishes.
  5. Verify. Run the checks the task needs — tests, lint, build. Confirm each step's output matches its plan line before you call the task done.

Quick Reference

Role subagent_type model Task
Planner Plan fable Break the task into steps. Cannot edit a file, but has Bash.
Builder general-purpose (or a fitting agent) opus A step with a judgment call.
Builder general-purpose (or a fitting agent) sonnet A step that is clear and bounded.

Common Mistakes

  • One subagent gets the whole plan. Fix: one Agent call per step.
  • Two independent steps run one after the other. Fix: read the plan for real dependencies, then send the independent steps in one message.
  • A step runs with no context. Fix: write the step's outcome and inputs in full in the dispatch prompt.

Related Skills

  • superpowers:writing-plans — for a plan that needs its own review checkpoint.
  • superpowers:subagent-driven-development — for running the plan's steps in the current session.
  • superpowers:dispatching-parallel-agents — for the rule on which steps can run together.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment