Installation Guide
This guide covers the complete installation process for Agent Orchestrator, from prerequisites to verification.Prerequisites
Required
Node.js 20+
Node.js 20+
Required for: Runtime environment for the orchestrator and CLIVerify your installation:Install or upgrade:
- Download from nodejs.org
- Or use nvm:
Git 2.25+
Git 2.25+
Required for: Repository management and git worktreesVerify your installation:Why 2.25+? This version introduced improved worktree support that Agent Orchestrator relies on.Install or upgrade:
- Download from git-scm.com
- macOS:
brew install git - Ubuntu/Debian:
sudo apt install git
tmux (for default runtime)
tmux (for default runtime)
Required for: Terminal multiplexing and session managementVerify your installation:Install:
If you plan to use a different runtime (Docker, Kubernetes, process), tmux is not required.
GitHub CLI (gh)
GitHub CLI (gh)
Required for: GitHub integration, PR creation, issue managementVerify your installation:Install:Authenticate:Select:
- GitHub.com (not Enterprise)
- HTTPS protocol (recommended)
- Authenticate via browser
- Include
reposcope (full repository access)
Optional
Linear API Key (for Linear integration)
Linear API Key (for Linear integration)
Required if: Using Linear for issue tracking
- Get your API key from linear.app/settings/api
-
Set environment variable:
-
Verify:
Slack Webhook (for Slack notifications)
Slack Webhook (for Slack notifications)
Required if: Using Slack for notifications
- Create an incoming webhook: api.slack.com/messaging/webhooks
-
Set environment variable:
-
Test the webhook:
Build from Source
Agent Orchestrator is not yet published to npm. Install by building from source. A published npm package is coming soon.
Run the setup script
The automated setup script handles all installation steps:What the setup script does:
-
Validates prerequisites:
- Checks Node.js >= 20
- Checks Git >= 2.25
- Detects tmux installation
- Detects and validates GitHub CLI authentication
-
Offers interactive fixes (if running in a terminal):
- Install tmux via Homebrew (macOS)
- Authenticate GitHub CLI via
gh auth login
-
Installs pnpm:
- Via corepack (preferred)
- Falls back to
npm install -g pnpmif corepack fails
-
Installs dependencies:
-
Builds all packages:
-
Links CLI globally:
Manual Installation (Alternative)
If you prefer to install manually without the setup script:Configuration Setup
After installation, you need to create a configuration file. There are three methods:Method 1: Quick Setup with ao init --auto
Auto-generate configuration with smart defaults:
- Detects your git repository and remote
- Identifies the default branch (main/master)
- Detects project type (language, frameworks)
- Generates agent rules based on detected project type
- Creates
agent-orchestrator.yamlwith sensible defaults
Method 2: Interactive Wizard
Step through a guided setup:- Data directory (default:
~/.agent-orchestrator) - Worktree directory (default:
~/.worktrees) - Dashboard port (default:
3000) - Runtime plugin (default:
tmux) - Agent plugin (default:
claude-code) - Workspace plugin (default:
worktree) - Notifiers (default:
desktop) - Project ID (short name for your project)
- GitHub repo (format:
owner/repo) - Local path (path to your repository)
- Default branch (usually
mainormaster) - Issue tracker (
github,linear, ornone)
The wizard auto-detects as much as possible from your current directory and environment variables.
Method 3: Manual Configuration
Copy and edit the example config:examples/ directory:
Configuration File Breakdown
Here’s what a minimal configuration looks like:Full Configuration Reference
Full Configuration Reference
See the complete configuration reference in
agent-orchestrator.yaml.example with all available options:- Reactions: Auto-handle CI failures, review comments, auto-merge
- Notification routing: Route by priority (urgent, action, warning, info)
- Agent rules: Inline or file-based rules included in agent prompts
- Per-project overrides: Override default plugins per project
- Tracker configuration: Linear team IDs, custom trackers
- Notifier configuration: Slack webhooks, custom webhooks
- Symlinks and post-create commands: Copy files or run setup commands in workspaces
Verification Steps
After installation and configuration, verify everything is working:Integration Setup
GitHub Issues Integration
GitHub integration is enabled by default if you have the GitHub CLI authenticated. Authentication:repo— Full repository access (read/write code, issues, PRs)read:org— Read organization membership (optional, for team mentions)
Linear Integration
Get API key
Visit linear.app/settings/api and create a new API key.
Find your team ID
Your team ID is visible in the Linear workspace URL or via the API. You’ll need this for the config.
Slack Integration
Create incoming webhook
Follow the Slack guide: api.slack.com/messaging/webhooks
Troubleshooting
'ao' command not found after installation
'ao' command not found after installation
Problem: The CLI is linked but not in your PATH.Solution:
Node version too old
Node version too old
Problem: Node.js version is below 20.Solution:
'No agent-orchestrator.yaml found'
'No agent-orchestrator.yaml found'
Problem: The orchestrator can’t find your config file.Solution:
'tmux not found'
'tmux not found'
Problem: tmux is not installed (required for default runtime).Solution:
'gh auth failed'
'gh auth failed'
Problem: GitHub CLI is not authenticated.Solution:Verify:
Port 3000 already in use
Port 3000 already in use
Problem: Another service is using the dashboard port.Solution:Option 1: Change the port in Option 2: Kill the process using port 3000:
agent-orchestrator.yaml:When running multiple orchestrator instances, each needs a different
port value.YAML parse error
YAML parse error
Problem: Syntax error in
agent-orchestrator.yaml.Common issues:- Incorrect indentation (use 2 spaces, not tabs)
- Missing quotes around strings with special characters
- Typo in field names
Workspace creation failed
Workspace creation failed
Problem: Orchestrator can’t create worktrees or clones.Solution:
Permission denied during git operations
Permission denied during git operations
Problem: Agent doesn’t have permissions for git operations.Solution:
Next Steps
Now that Agent Orchestrator is installed and configured:Quickstart
Spawn your first agent in 5 minutes
Configuration
Customize reactions, plugins, and routing
CLI Reference
Complete command reference
Troubleshooting
Common issues and solutions
