Installs: 0
Used in: 1 repos
Updated: 1d ago
$
npx ai-builder add command jleechanorg/orchestrateInstalls to .claude/commands/orchestrate.md
## β‘ EXECUTION INSTRUCTIONS FOR CLAUDE
**When this command is invoked, YOU (Claude) must execute these steps immediately:**
**This is NOT documentation - these are COMMANDS to execute right now.**
**Use TodoWrite to track progress through multi-phase workflows.**
## π¨ EXECUTION WORKFLOW
### Phase 1: Execute Documented Workflow
**Action Steps:**
1. Review the reference documentation below and execute the detailed steps sequentially.
## π REFERENCE DOCUMENTATION
# Orchestrate Command
**Purpose**: Multi-agent orchestration system for complex development tasks
**Action**: Coordinate multiple specialized agents to work on complex development tasks with proper task distribution and result integration
**Usage**: `/orchestrate [task_description] [OPTIONS]`
**Options**:
| Option | Description | Default |
|--------|-------------|---------|
| `--agent-cli <cli>` | Agent CLI to use (claude, codex, gemini, cursor). Supports comma-separated chain for fallback (e.g., 'gemini,claude') | gemini |
| `--context <path>` | Path to markdown file to inject into agent prompt as context | - |
| `--branch <name>` | Force checkout of specific branch (prevents new branch creation) | - |
| `--pr <number>` | Existing PR number to update (prevents new PR creation) | - |
| `--mcp-agent <name>` | Pre-fill agent name for MCP Mail registration | - |
| `--bead <id>` | Pre-fill bead ID for tracking | - |
| `--validate <cmd>` | Semantic validation command to run after agent completes | - |
| `--no-new-pr` | Hard block on PR creation (agents must use existing PR) | false |
| `--no-new-branch` | Hard block on branch creation (agents must use existing branch) | false |
**CRITICAL RULE**: When `/orchestrate` is used, NEVER execute the task yourself. ALWAYS delegate to the orchestration agents. The orchestration system will handle all task execution through specialized agents.
π¨ **ORCHESTRATION DIRECT EXECUTION PREVENTION**: β οΈ MANDATORY HARD STOP PROTOCOL
**ABSOLUTE RULE**: When `/orchestrate` or `/orch` is used, you MUST:
1. β **NEVER use Edit, Write, Bash, or any execution tools yourself**
2. β **NEVER use Task tool to create agents**
3. β **NEVER start implementing the task directly**
4. β
**ONLY use the tmux-based orchestration system**
5. β
**ALWAYS respond**: "Delegating to tmux orchestration system..."
6. β
**USE**: `python3 .claude/commands/orchestrate.py "task description"`
π¨ **ABSOLUTE BRANCH ISOLATION PROTOCOL**: β οΈ MANDATORY - NEVER LEAVE CURRENT BRANCH
- β **FORBIDDEN**: `git checkout`, `git switch`, or any branch switching commands
- β **FORBIDDEN**: Working on other branches, PRs, or repositories
- β
**MANDATORY**: Stay on current branch for ALL work - delegate everything else to agents
- β
**DELEGATION RULE**: Any work requiring different branch β `/orch` or orchestration agents
- π **Evidence**: Branch switching violations cause context confusion and work contamination
- **MENTAL MODEL**: "Current branch = My workspace, Other branches = Agent territory"
**VIOLATION EXAMPLES** (NEVER DO THESE):
- β Using Task tool to create agents (Task tool β orchestration system)
- β Writing code to solve the problem yourself
- β Running commands to implement features yourself
- β Editing files to fix bugs yourself
- β **BRANCH VIOLATIONS**: `git checkout other-branch`, `git switch main`
- β **BRANCH VIOLATIONS**: Working on different PRs or repositories directly
**CORRECT BEHAVIOR**:
- β
Run orchestration command: `python3 .claude/commands/orchestrate.py "Fix bug X"`
- β
Monitor agent progress: `tmux attach -t agent-name`
- β
Check results: `/orch status`
- β
**BRANCH ISOLATION**: Stay on current branch, delegate other branch work to agents
- β
**BRANCH ISOLATION**: `/orch "Work on PR #123"` instead of `git checkout pr-branch`
- **Hard Stop Pattern**: `/orchestrate` or `/orch` prefix detected β immediate tmux agent delegation
- **User Urgency Safeguard**: "just decide", "just start", "you choose" are guidance for TMUX AGENTS, NOT permission for direct execution
- **Mental Model**: `/orch` = "create tmux agents to do this", NEVER "I should implement this directly"
- **Zero Exception Rule**: Orchestration commands ALWAYS trigger tmux agent creation regardless of user urgency
- **Behavioral Firewall**: Automatic "Delegating to tmux orchestration system..." response followed by tmux agent creation
- **Pattern Recognition**: Operational command classification β mandatory tmux protocol enforcement
- π **Evidence**: Session violation prevented by this protocol (see CLAUDE.md)
- **CRITICAL**: Task tool β orchestration system. Orchestration = tmux agents only.
**π¨ CRITICAL BRANCH PROTECTION RULE**: When monitoring orchestration agents:
- β **NEVER switch branches** without explicit user permission
- β **NEVER leave the current branch** to investigate agent work
- β
**ALWAYS stay on your current branch** while agents work in their isolated workspaces
- β
**Request explicit approval** before any branch switch: "May I switch to branch X? Please approve with 'approve [number]'"
- π **Branch Context**: Your branch = your workspace. Agent branches = their workspaces. Never mix them!
- β οΈ **Violation Impact**: Switching branches disrupts user's work context and can cause lost changes
**Implementation**:
- **Python Script**: `python3 .claude/commands/orchestrate.py [task_description]`
- **Shell Wrapper**: `./claude_command_scripts/orchestrate.sh` (if available)
- **Tmux Agents**: Creates real tmux sessions with Claude Code CLI agents
- **NOT Task Tool**: Task tool is for different purposes, orchestration uses tmux system
- **System Check**: ALWAYS checks system status first before executing tasks
**Features**:
- **Real tmux sessions**: Creates separate terminal sessions for each agent
- **Claude Code CLI integration**: Full access to all slash commands in each session
- **Task delegation**: Smart routing based on task content (UIβfrontend, APIβbackend, etc.)
- **Progress monitoring**: Real-time status via `/orchestrate What's the status?`
- **Agent collaboration**: Direct connection to agent sessions for collaboration
- **Natural language**: Understands commands like "Build user authentication urgently"
- **Priority handling**: Recognizes urgent, ASAP, critical keywords
- **Agent reuse optimization**: Idle agents reused before creating new ones (50-80% efficiency gains)
- **Individual agent per task**: Each task gets dedicated agent with complete isolation
- **Resource efficiency**: Strategic reuse while maintaining task isolation
**System Requirements**:
- Redis server running (for coordination)
- Orchestration system started: `./orchestration/start_system.sh start`
- Or started via: `./claude_start.sh` (auto-starts orchestration when not running git hooks)
**Automatic Behavior**:
- `/orch` commands automatically check if the orchestration system is running
- If not running, attempts to start it before executing the task
- Shows clear status messages about system state
- **Memory Integration**: Automatically queries Memory MCP for:
- Past mistakes and learnings related to the task
- Previous similar orchestration patterns
- Known issues and their solutions
- This helps agents avoid repeating past errors
- **Note**: If Memory MCP is unavailable, tasks proceed without memory context (non-blocking)
**Agent Types**:
- **Frontend Agent**: UI, React components, styling (`frontend-agent`)
- **Backend Agent**: APIs, database, server logic (`backend-agent`)
- **Testing Agent**: Tests, QA, validation (`testing-agent`)
- **Opus Master**: Coordination and oversight (`opus-master`)
- **Task Agents**: Dynamic agents with reuse optimization (`task-agent-*`)
**Examples**:
```bash
# Basic usage (defaults to gemini CLI)
/orchestrate implement user authentication with tests and documentation
/orchestrate refactor database layer with migration scripts
/orchestrate add new feature with full test coverage and UI updates
/orchestrate optimize performance across frontend and backend
# Specify agent CLI
/orchestrate --agent-cli claude "Fix security vulnerability in auth module"
/orchestrate --agent-cli codex "Generate test suite for API endpoints"
# CLI chain with fallback (tries gemini first, falls back to claude)
/orchestrate --agent-cli gemini,claude "Implement complex feature X"
# Update existing PR on specific branch
/orchestrate --branch feature-x --pr 123 "Add more tests and fix review comments"
# With context file injection
/orchestrate --context ./design-doc.md "Implement according to the design spec"
# With validation command
/orchestrate --validate "./run_tests.sh" "Fix the failing tests"
# Hard blocks (prevent new PR/branch creation)
/orchestrate --no-new-pr --branch main "Update documentation only"
/orchestrate --no-new-branch --branch feature-y "Continue work on feature-y"
# Combined options
/orchestrate --agent-cli gemini --context ./spec.md --pr 456 --validate "pytest" "Implement feature from spec"
# Status and monitoring
/orchestrate What's the status?
/orchestrate connect to sonnet 1
/orchestrate monitor agents
/orchestrate help me with connections
```
**Natural Language Commands**:
- **Task Delegation**: "Build X", "Create Y", "Implement Z urgently"
- **System Monitoring**: "What's the status?", "monitor agents", "How's the progress?"
- **Agent Connection**: "connect to sonnet 1", "collaborate with sonnet-2"
- **Help**: "help me with connections", "show me connection options"
**Quick Commands**:
- **Start system**: `./orchestration/start_system.sh start`
- **Check status**: `/orchestrate What's the status?`
- **Connect to frontend**: `tmux attach -t frontend-agent`
- **Connect to backend**: `tmux attach -t backend-agent`
- **Connect to testing**: `tmux attach -t testing-agent`
- **Monitor all**: `tmux list-sessions | grep -E '(frontend|backend|testing|opus)'`
## Important Notes
- **Working Directory**: The orchestration system creates agent workspaces as subdirectories. Always ensure you're in the main project directory when running orchestration commands, not inside an agent workspace
- **Monitoring**: Use `tmux attach -t [agent-name]` to watch agent progress
- **Results**: Check `/tmp/orchestration_results/` for agent completion status
- **Cleanup**: Run `orchestration/cleanup_agents.sh` to remove completed agent worktrees
- **Branch Context**: Agents inherit from your current branch, so their changes build on your work
## π¨ AGENT TASK PATIENCE
Agent tasks require TIME - wait for completion before ANY declaration:
- β οΈ Orchestrate agents work autonomously and may take 5-10+ minutes
- β NEVER declare success OR failure without checking completion status
- β NEVER make declarations based on quick checks (10s, 30s, 60s too soon)
- β
ALWAYS check tmux output for "Task completed" message
- β
ALWAYS verify PR creation in agent output before declaring results
- π Evidence: Agent task-agent-5819 succeeded with PR #851 after 270 seconds
- π Proper verification: tmux output β "Task completed" β PR URL β verify PR exists
- β οΈ Status warnings like "agent may still be working" mean WAIT, don't declare
## π PR UPDATE MODE vs CREATE MODE
**CRITICAL**: Agents must detect whether to UPDATE existing PRs or CREATE new ones:
### π PR Update Pattern Detection
The orchestration system recognizes these patterns as PR UPDATE requests:
- **Explicit PR references**: "fix PR #123", "update pull request #456", "adjust PR #789"
- **Contextual PR references**: "adjust the PR", "fix the pull request", "update that PR"
- **Action words with PR**: "modify", "fix", "adjust", "update", "enhance", "improve" + "PR/pull request"
- **Continuation phrases**: "continue with PR", "add to the PR", "the PR needs", "PR should also"
### π PR Create Patterns (Default)
These patterns trigger NEW PR creation:
- **No PR mentioned**: "implement feature X", "fix bug Y", "create Z"
- **Explicit new work**: "create new PR for", "start fresh PR", "new pull request"
- **Independent tasks**: Tasks that don't reference existing work
### π’ User Feedback
Orchestration will clearly indicate the detected mode:
```
π Detected PR context: #950 - Agent will UPDATE existing PR
Branch: feature-xyz
Status: OPEN
```
OR
```
π No PR context detected - Agent will create NEW PR
New branch will be created from main
```
### β οΈ Edge Cases
- **Merged/Closed PRs**: Agent will warn and ask for confirmation
- **Multiple PR mentions**: Agent will ask which PR to update
- **Ambiguous "the PR"**: System will show recent PRs and ask for selection
- **Branch conflicts**: Agent will attempt rebase/merge with clear messaging
## π Agent Reuse Optimization
**π¨ CRITICAL: Agent Reuse Architecture for Efficiency**
The orchestration system implements intelligent agent reuse to optimize resource utilization while maintaining task isolation.
### **Agent Reuse Strategy**:
1. **Check for Idle Agents**: Before creating new agents, check for idle existing agents
2. **Reuse When Available**: Reuse idle agents for new tasks (50-80% efficiency gains)
3. **Create When Needed**: Create new agents only when no idle agents available
4. **Maintain Isolation**: Each task still gets dedicated agent execution
5. **Resource Optimization**: Strategic reuse without compromising task quality
### **Individual Agent Per Task Architecture**:
- β
**Parallel Execution**: All tasks processed simultaneously (one agent per task)
- β
**Resource Efficiency**: Idle agents reused before creating new ones (50-80% token savings)
- β
**Complete Isolation**: Each agent has dedicated workspace and task focus
- β
**No Task Conflicts**: Worktrees and separate sessions prevent collisions
- β
**100% Coverage**: Every task gets individual agent (no partial processing)
- β
**Scalable**: Handle 10+ tasks with optimal resource utilization
- β
**Fault Tolerant**: One agent failure doesn't affect others
- β
**Real-time Visibility**: Monitor all individual agents' progress
### **Agent Lifecycle Management**:
```bash
# CORRECT: Agent reuse optimization workflow
for TASK in $TASK_LIST; do
/orchestrate "$TASK with agent reuse preference"
done
# Each task execution with reuse:
# 1. Check for idle agents first
# 2. Reuse existing idle agent if available
# 3. Create new agent only if no idle agents
# 4. Execute task in complete isolation
# 5. Mark agent as idle after completion (available for reuse)
```
### **Performance Benefits**:
- **Token Savings**: 50-80% reduction in agent creation overhead
- **Resource Efficiency**: Better utilization of active agents
- **Faster Execution**: Reduced agent startup time through reuse
- **Cost Optimization**: Lower API costs through strategic reuse
- **Scalability**: Handle more concurrent tasks with same resources
### **Safety Guarantees**:
- β **No Task Contamination**: Each task gets clean agent state
- β **No Shared Context**: Agents don't share previous task context
- β
**Fresh Workspace**: Each task gets isolated worktree regardless of reuse
- β
**Complete Independence**: Task execution is fully independent
- β
**Error Isolation**: Agent reuse doesn't propagate errors between tasksQuick Install
$
npx ai-builder add command jleechanorg/orchestrateDetails
- Type
- command
- Author
- jleechanorg
- Slug
- jleechanorg/orchestrate
- Created
- 4d ago