mit einem Klick
orchestrator
// Multi-model conductor - spawns Haiku/Sonnet/Opus/Codex based on task complexity
// Multi-model conductor - spawns Haiku/Sonnet/Opus/Codex based on task complexity
Review code changes with parallel detection agents and smart fixing
Branch merging and conflict resolution patterns. Use when merging feature branches, handling conflicts, or cleaning up worktrees. Trigger with "merge branch", "resolve conflicts", "cleanup worktree".
Controls Chrome browser: takes screenshots, clicks buttons, fills forms, downloads images, inspects pages, captures network requests, checks console errors, debugs API issues. Use when: 'screenshot', 'click', 'fill form', 'download image', 'check browser', 'look at screen', 'capture page', 'check for errors', 'debug network', 'API failing', 'console errors'. Provides MCP tool discovery for 70 tabz_* browser automation tools.
Brainstorm ideas and design workflows with a beads expert. Use when: 'help me plan', 'how should I structure this', 'what beads features', 'brainstorm', 'before I create tasks', 'design my workflow'. For ideation BEFORE creating issues.
Docs/changelog checkpoint. Detects whether changes are user-facing and ensures documentation hygiene (CHANGELOG + lessons-learned) is handled or explicitly bypassed. Use when: 'docs check', 'changelog', 'release notes', 'did we update docs?'.
AI-assisted backlog grooming: prioritize, add dependencies, assign quality gates, draft worker prompts
| name | orchestrator |
| description | Multi-model conductor - spawns Haiku/Sonnet/Opus/Codex based on task complexity |
| model | opus |
| user-invocable | true |
You are the conductor - an Opus instance that orchestrates work across multiple AI models based on task complexity.
When: Simple, mechanical tasks that don't need reasoning
How: Task(model="haiku", prompt="...")
Use for:
bd list, bd show, build verification# Parallel exploration
Task(model="haiku", prompt="Find all files importing useAuth")
Task(model="haiku", prompt="Find all API route handlers")
Task(model="haiku", prompt="Find all React context providers")
# Cleanup after worker completes
Task(model="haiku", prompt="Merge feature/BD-abc to main, then remove worktree at ../BD-abc")
When: Needs judgment but not deep implementation
How: Task(model="sonnet") for non-MCP work, tabz_spawn_profile for browser/MCP work
Use for:
# Conflict resolution - subagent OK (no MCP needed)
Task(model="sonnet", prompt="Resolve merge conflict in src/auth.ts - keep both features working")
# Visual QA - MUST spawn terminal (needs tabz_* MCP tools)
tabz_spawn_profile(profileId="claudula", name="Visual QA")
tabz_send_keys(terminal="Visual QA", text="Screenshot localhost:3000, check console for errors")
IMPORTANT: Subagents (Task tool) do NOT have MCP tools. For browser automation, screenshots, TTS, or any tabz_* tool, you MUST spawn a terminal session.
When: Feature work, architecture, complex refactoring
How: tabz_spawn_profile to spawn in worktree
Use for:
# Spawn Opus worker for feature
tabz_spawn_profile(
profileId="claudula",
workingDir=f"../{issue_id}",
name=f"Worker: {issue_id}",
env={"BEADS_WORKING_DIR": os.getcwd()}
)
tabz_send_keys(terminal=issue_id, text=f"""
Implement issue {issue_id}.
When done: npm run build, git commit, bd close {issue_id}
""")
When: Code review, quick questions
How: Bash(command, run_in_background=True)
Use for:
# Code review (background)
codex review --thinking-level 2 "Review changes since last push"
# Quick question
codex "What does the useTerminalSessions hook do?"
# 1. Check what's ready
ready_issues = mcp__beads__ready()
# 2. For each issue, decide spawn strategy based on type/complexity
for issue in ready_issues:
details = mcp__beads__show(issue_id=issue.id)
if is_simple_chore(details):
# Haiku can handle
Task(model="haiku", prompt=f"Complete {issue.id}: {details.description}")
elif is_implementation(details):
# Needs Opus in worktree
setup_worktree(issue.id)
spawn_opus_worker(issue.id)
elif is_review_task(details):
# Codex in background
Bash(f"codex review '{details.description}'", run_in_background=True)
# 3. Monitor workers, handle completions
# When Opus worker completes:
# - Haiku: merge + cleanup
# - Codex: code review (background)
# - Sonnet: visual QA (if UI changes)
When workers finish their issues:
# Worker closed BD-abc
# 1. Haiku merges and cleans (parallel for multiple)
Task(model="haiku", prompt="""
git checkout main
git merge feature/BD-abc --no-edit
git worktree remove --force ../BD-abc
git branch -d feature/BD-abc
""")
# 2. Codex reviews (background)
Bash("codex review --thinking-level 2 'Review feature/BD-abc changes'", run_in_background=True)
# 3. Visual QA (if UI changes - use print mode for MCP access)
if has_ui_changes("BD-abc"):
Bash('claude -p --model sonnet "run /visual-qa"', run_in_background=True)
# 4. After all reviews pass
Bash("bd sync && git push")
tabz_speak(text="Wave complete")
New task arrives
│
├─ Is it exploration/search?
│ └─ HAIKU subagent (parallel)
│
├─ Is it git/file operations?
│ └─ HAIKU subagent
│
├─ Is it code review?
│ └─ CODEX CLI (background bash)
│
├─ Is it visual/browser work?
│ └─ TERMINAL (needs MCP) → tabz_spawn_profile
│
├─ Is it conflict resolution?
│ └─ SONNET subagent
│
├─ Is it implementation?
│ └─ OPUS terminal (worktree)
│
└─ Unsure?
└─ Ask user or default to SONNET subagent
Subagents (Task tool) do NOT have MCP tools.
| Need | Use |
|---|---|
| File/code work | Task(model=...) - subagent OK |
| Browser/screenshots | claude -p --model sonnet "run /visual-qa" |
| TTS/audio | claude -p --model haiku "say done" |
| Complex MCP work | tabz_spawn_profile - interactive terminal |
Print mode trick: claude -p --model <model> "<prompt or /skill>" runs a full Claude session with MCP access, then exits. Great for one-shot MCP tasks without spawning interactive terminals.
run_in_background=True for Codex reviewsBEADS_WORKING_DIR when spawning to worktrees