aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--claude-rules/subagents.md27
1 files changed, 27 insertions, 0 deletions
diff --git a/claude-rules/subagents.md b/claude-rules/subagents.md
index 310f979..8578dea 100644
--- a/claude-rules/subagents.md
+++ b/claude-rules/subagents.md
@@ -7,6 +7,33 @@ independent work. They are not free — every spawn pays a prompt-construction
cost and breaks the chain of context from the current conversation. Use them
deliberately, not reflexively.
+## Pre-Dispatch Checks
+
+Run these two checks before any spawn. Both can send the work back to the
+main thread without the spawn ever happening.
+
+### Availability
+
+The dispatch path assumes a subagent/Agent capability exists in the
+environment. If it doesn't — no Agent tool, no spawn mechanism — don't
+block. Do the work in the main thread, but preserve the same scope
+boundaries the subagent contract would have enforced: bounded scope, the
+explicit "do NOT" constraints, and the named output shape. The discipline
+is in the contract, not the tool. Hold the task to it even when you're the
+one executing, so the work doesn't sprawl.
+
+### Cost
+
+Dispatching isn't free — it pays the prompt-construction cost and breaks
+context continuity (see the opening paragraph). For a small task, writing
+the full contract (scope, context, constraints, output format) can cost
+more than just doing the task inline. When that's the case, do it inline.
+The subagent earns its place by absorbing context pollution and running
+work in parallel, not on tasks where the handoff exceeds the work itself.
+This is the same boundary the "Don't Subagent At All" section and the
+"Subagenting trivial work" anti-pattern draw; treat it as an explicit gate
+at dispatch time.
+
## When to Spawn a Subagent
### Parallel-safe (spawn multiple in parallel)