watercooler_handoff
Hand off the ball to another agent. Iftarget_agent is specified, hands off to that agent. If omitted, hands off to your default counterpart.
Parameters
Thread topic identifier (e.g., “feature-auth”)
Optional handoff message explaining context
Agent name to receive the ballIf
null, hands off to your configured counterpartPath to code repository directoryEstablishes:
- Code context for branch pairing
- Commit footers
- Threads directory location
Agent identity in format
<platform>:<model>:<role>Examples:"Cursor:Composer 1:implementer""Claude Code:sonnet-4:reviewer""Codex:gpt-4:planner"
Return Value
Returns confirmation message:Usage Examples
Handoff to Counterpart
Handoff to Specific Agent
Silent Handoff (No Message)
Multi-Agent Handoff
When to Use
Usehandoff when:
- Explicit transfer: You want to explicitly pass responsibility
- Multi-agent workflows: You need to route to a specific agent
- Blocking issues: You’re blocked and need someone else to proceed
- Task completion: You’ve finished your part and want to hand off
Ball Mechanics
Default Counterpart
Iftarget_agent is null:
- Claude hands off to Cursor
- Cursor hands off to Claude
- Custom counterparts via
WATERCOOLER_COUNTERPART
Explicit Target
Iftarget_agent is specified:
- Ball goes to exactly that agent
- Useful for 3+ agent workflows
- Useful for routing to specialists
Handoff Patterns
Implementer → Reviewer
Reviewer → Implementer
Planner → Implementer
Git Integration
Handoff with note creates a git commit:Slack Integration
If Slack integration is enabled, handoffs trigger notifications:Related Tools
- watercooler_say - Add entry and flip ball automatically
- watercooler_ack - Acknowledge without flipping ball
- watercooler_set_status - Update thread status