- Multi-gateway architecture with role assignments - Beast (primary), 5070 (secondary), Mac (tertiary) hierarchy - Specialty override rules for domain expertise - Private Tailscale deliberation process (1-min rounds) - Mike notification and note-taking failover chain - Coordination protocols to prevent loops while maintaining fault tolerance
4.4 KiB
DELIBERATION-PROTOCOL.md - Private Fleet Coordination
Tailscale Deliberation Process
When Deliberation is Required
- Complex technical decisions requiring multiple perspectives
- Conflicting specialty areas (e.g., code deployment affecting infrastructure)
- High-stakes client work needing validation
- Coordination failures in public channels
- Mike explicitly requests fleet deliberation
Deliberation Triggers
Auto-triggers:
- Multiple bots want to respond to same complex query
- Technical solution has cross-domain impact
- Client deliverable needs review before sending
- Error/mistake needs coordinated correction
Manual triggers:
- Any bot can call for deliberation:
/fleet-deliberate - Mike requests private coordination
- Public coordination protocol breakdown
Tailscale Communication Method
Primary: Direct machine-to-machine messaging via OpenClaw sessions
- Beast:
sessions_send("5070-main", "message") - 5070:
sessions_send("beast-main", "message") - Mac:
sessions_send("beast-main", "message")orsessions_send("5070-main", "message")
Fallback: SSH between machines if OpenClaw sessions unavailable
Deliberation Limits
Strict Limits to Prevent Endless Debate:
- Maximum 3 inputs per bot per deliberation
- Maximum 3-minute timer from start to decision (1 min per round)
- Maximum 2 rounds of back-and-forth
- Single decision maker if no consensus (follows hierarchy: Beast → 5070 → Mac)
Mike Notification & Oversight
Required Notifications:
- Primary notifies Mike when deliberation starts: "Fleet deliberation initiated: [topic]"
- Primary notifies Mike when deliberation concludes: "Fleet decision: [outcome]"
Note-Taking Responsibility (Failover Chain):
- Beast (if available) - primary note taker
- Mac (if Beast unavailable) - failover note taker
- 5070 (if both Beast and Mac unavailable) - last resort
Required documentation: Topic, positions, decision, reasoning
Mike reviews notes at his discretion
Store in: memory/deliberation-YYYY-MM-DD-HHMM.md
Deliberation Structure
Round 1: Initial Positions (1 minute max)
- Each bot states position in 1-2 sentences
- Include confidence level (Low/Medium/High)
- Identify key concerns/blockers
Round 2: Synthesis (1 minute max)
- Address others' concerns
- Propose compromise solutions
- Final position with rationale
Decision Phase (1 minute max)
- Attempt consensus
- If no consensus: Hierarchy decides (Beast > 5070 > Mac)
- Note taker documents decision reasoning
Deliberation Topics by Priority
Tier 1 (Always Deliberate):
- Client deliverables before sending
- Infrastructure changes affecting multiple systems
- Security decisions
- Fleet coordination protocol changes
Tier 2 (Deliberate if Conflict):
- Technical implementation approaches
- Resource allocation (which bot handles what)
- Complex troubleshooting strategies
Tier 3 (Optional Deliberation):
- General technical questions
- Documentation improvements
- Tool recommendations
Output Protocols
After Deliberation:
- Primary notifies Mike of conclusion
- Primary responder delivers coordinated answer publicly
- Other bots stay silent unless asked for specifics
- Note taker documents key decisions in memory files
- No "we discussed privately" - present as unified conclusion
Notification Templates
Start Notification (Primary to Mike):
Fleet deliberation initiated: [brief topic description]
Participants: [list of bots involved]
Note taker: [Beast/Mac/5070]
Expected duration: 3 minutes max
End Notification (Primary to Mike):
Fleet decision reached: [outcome summary]
Decision maker: [consensus/Beast hierarchy/etc.]
Note taker: [Beast/Mac/5070]
Notes: memory/deliberation-YYYY-MM-DD-HHMM.md
Emergency Bypass
- Mike override ends deliberation immediately
- Time-sensitive issues skip deliberation (< 5 min needed)
- Simple specialty questions don't need deliberation
Deliberation Examples
Good deliberation trigger:
Client asks: "Should we migrate to Azure or AWS for email security?" → Cross-domain (infrastructure + security), high-stakes, needs unified answer
Bad deliberation trigger:
User asks: "How do I restart a service on Linux?" → Simple, clear specialty (5070), no deliberation needed
Implementation: 2026-03-25 Updated: Note-taking failover chain (Beast → Mac → 5070)