Problem
When delegating work to subagents via the Task tool, empty or generic task subjects make conversations:
- Untraceable: Cannot identify what a subagent was working on
- Unreferencable: Cannot discuss specific subagent work later
- Confusing: Multiple subagents with empty subjects are indistinguishable
From 48 Task invocations across 88 sessions, empty task subjects were identified as a major pain point. This pattern has strong academic foundations in multi-agent communication standards (FIPA ACL, KQML) and distributed systems naming principles (REST, MapReduce).
Solution
Enforce clear, specific task subjects for every Task tool invocation. This is a meta-pattern that enables the effectiveness of all sub-agent delegation patterns (parallel spawning, factory over assistant, planner-worker). A good subject should:
- Not be empty (baseline requirement)
- Be specific and descriptive (what is being done)
- Be reference-able (can be discussed later)
- Follow naming conventions (imperative mood, clear target)
Examples:
❌ Bad subjects:
""(empty)"research""explore""task"
✅ Good subjects:
"Explore newsletter component implementation""Search for dark mode patterns in codebase""Analyze error handling in API routes""Find all OAuth configuration files"
How to use it
Before invoking Task tool, verify the subject meets all criteria:
- Length check: Minimum 3-4 words
- Action check: Starts with verb (Explore, Analyze, Search, Find)
- Target check: Specifies what is being acted upon
- Reference check: Could you point to this conversation later and say "the one that [subject]"?
Template for good subjects:
[Action Verb] + [Target/Scope] + [Optional Context]
Examples:
- "Explore + newsletter component + implementation details"
- "Search + codebase + for dark mode patterns"
- "Analyze + API routes + error handling approach"
- "Find + all OAuth + configuration files"
Anti-pattern prevention:
Prevents "Empty Subject Anti-Pattern" which makes conversations untraceable and subagent work indistinguishable.
Real-world impact:
Validated in production across Claude Code, Cursor, AMP, LangChain, AutoGen, and CrewAI. From nibzard-web session with 4 parallel subagents:
- agent-a7911db: "Newsletter component exploration"
- agent-adeac17: "Modal pattern discovery"
- agent-a03b9c9: "Search implementation research"
- agent-b84c3d1: "Log page analysis"
Clear subjects enabled the main agent to synthesize findings from each subagent effectively.
Trade-offs
Pros:
- Traceable subagent conversations
- Reference-able work items
- Clearer synthesis of parallel work
- Better communication with user
- Easier debugging of delegation issues
Cons:
- Requires upfront thinking about subject
- Longer subject strings (minor overhead)
- No technical enforcement (requires discipline)
When it matters most:
- Parallel subagent delegations (2+ agents)
- Complex research tasks
- Long-running subagent work
- When user needs to review subagent output
References
- SKILLS-AGENTIC-LESSONS.md - Skills based on lessons learned from analyzing 88 real-world Claude conversation sessions
- FIPA. "FIPA ACL Communicative Act Library Specification." 2002 - Agent communication language with conversation-id for task traceability
- Smith, R. G. "The contract net protocol." IEEE Transactions on Computers 1980 - Task identification in distributed delegation
- Related patterns: Sub-Agent Spawning, Parallel Tool Call Learning