This guide will take you from zero to your first working agent run in about 5 minutes.
Before installing orch, ensure you have:
- Go 1.22+ - For building orch from source (or use pre-built binaries)
- tmux or zellij - Terminal multiplexer for agent sessions
- An LLM CLI - At least one of:
- Claude Code (
claude) - OpenCode (
opencode) - Codex (
codex) - Gemini CLI (
gemini)
- Claude Code (
- Git - For worktree management
# Verify Go
go version
# Verify tmux
tmux -V
# Verify your LLM CLI (example with claude)
claude --version# macOS (Apple Silicon)
curl -L https://github.com/proboscis/orch/releases/latest/download/orch-darwin-arm64 -o orch
chmod +x orch
sudo mv orch /usr/local/bin/
# macOS (Intel)
curl -L https://github.com/proboscis/orch/releases/latest/download/orch-darwin-amd64 -o orch
chmod +x orch
sudo mv orch /usr/local/bin/
# Linux (x86_64)
curl -L https://github.com/proboscis/orch/releases/latest/download/orch-linux-amd64 -o orch
chmod +x orch
sudo mv orch /usr/local/bin/go install github.com/proboscis/orch/cmd/orch@latestorch --helpNavigate to your git repository and initialize orch:
cd /path/to/your/repo
# Create the config directory
mkdir -p .orch
# Create a minimal config file
cat > .orch/config.yaml << 'EOF'
agent: claude
base_branch: main
EOForch needs a place to store issues. Configure it in .orch/config.yaml.
Option A: Use a separate issues directory (recommended for teams)
# Create an issues directory
mkdir -p ~/orch-issues/issues
# Tell orch where to find issues
cat >> .orch/config.yaml << 'EOF'
issues:
path: ~/orch-issues
EOFOption B: Keep issues in the same repo
# Create issues directory in your repo
mkdir -p issues
# Update config
cat >> .orch/config.yaml << 'EOF'
issues:
backend: local
path: ./issues
EOFAn issue is a markdown file describing a task for the agent:
# Create an issue file
cat > ~/orch-issues/issues/my-first-issue.md << 'EOF'
---
type: issue
id: my-first-issue
title: Add a hello world function
status: open
---
# Add a hello world function
Create a simple function in this repository that prints "Hello, World!".
## Requirements
- Create a new file with appropriate naming for the project
- The function should be callable
- Add a brief comment explaining what it does
EOFOr use the CLI:
orch issue create my-first-issue --title "Add a hello world function" --editStart an agent to work on the issue:
orch run my-first-issueThis will:
- Create a new git worktree for isolation
- Create a new git branch
- Start a tmux session with your configured agent
- Send the issue content as the initial prompt
The command returns immediately - the agent runs in the background.
See what's running:
orch psExample output:
ISSUE STATUS RUN AGENT UPDATED
my-first-issue running 20260120-163045 claude 2m ago
| Status | What it means |
|---|---|
queued |
Run created, starting soon |
booting |
Agent is launching |
running |
Agent is actively working |
waiting |
Agent needs your input |
pr_open |
Agent created a PR |
done |
Task completed |
failed |
Something went wrong |
Attach to the agent's terminal session:
orch attach my-first-issueThis opens the tmux session where you can:
- Watch the agent work in real-time
- Type messages to the agent
- Paste images (if the agent supports it)
- Provide input when the agent asks questions
Detach without stopping the agent: Press Ctrl+B then D
When the agent finishes (status becomes done or pr_open):
# Check final status
orch ps
# View run details
orch show my-first-issue
# If a PR was created, it will show the URLIf you need to stop the agent:
# Stop all runs for an issue
orch stop my-first-issue
# Stop a specific run
orch stop my-first-issue#20260120-163045- Learn the core concepts (Issue, Run, Event, etc.)
- Set up remote usage for server-based orchestration
- Configure different agents
- Set up backend integrations (GitHub, Linear)
- Explore all CLI commands
- Use SQL queries to analyze your runs
Once you're comfortable with the basics, explore these power-user features:
A visual dashboard for managing issues and runs:
# Install the TUI
uv tool install ./orch-monitor-tui
# Launch it
orch-monitor --newFeatures:
- See all issues and runs at a glance
- Start runs with a keypress
- Attach to agents directly from the UI
- Chat with a control agent to manage tasks
See the orch-monitor guide for details.
Use a persistent AI agent to manage your orch workflow through conversation:
# Start or attach to control agent
orch agent
# Force a new session
orch agent --newAsk it to create issues, start runs, check status—all through natural language.
Learn efficient patterns for working with orch day-to-day:
- Morning routines for checking overnight progress
- How to handle waiting agents
- Running multiple agents in parallel
- Reviewing and merging agent PRs
See the Daily Workflow guide.
Quickly see what an agent has changed:
# Show full diff
orch diff my-issue
# Show just the stats
orch diff --stat my-issueEnable debug output:
orch run --verbose my-issue
# or
ORCH_DEBUG=1 orch run my-issueCheck if it's waiting for input:
orch ps # Look for "waiting" status
orch attach my-issue # Connect and provide inputRun the repair command:
orch repairtail -f .orch/daemon.log