Agentic orchestrator for parallel coding agents — plans tasks, spawns agents, and autonomously handles CI fixes, merge conflicts, and code reviews.
Agent Orchestrator is a TypeScript CLI tool, installable as `@aoagents/ao`, that manages fleets of AI coding agents working in parallel across a codebase. Each agent receives an isolated git worktree, its own branch, and its own pull request, then works autonomously through the full development cycle: writing code, creating PRs, fixing CI failures, and addressing reviewer comments without human intervention unless judgment is specifically required. The system connects to Claude Code as its default agent backend (alongside Codex and Aider as alternatives), runs under tmux on macOS and Linux or native ConPTY on Windows, and integrates with GitHub and Linear for issue tracking. A web dashboard at localhost:3000 provides a single supervision point for all active agents. The orchestrator itself is configured via a YAML file and uses the `ao` CLI internally to manage sessions. Developers maintaining large backlogs of issues or engineering teams running parallel feature work are the primary audience, and a notable detail is that the project used the system to build itself.
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Healthy fork ratio
- ✓Clear description
- ✓Topics declared
- ✓Documented (README)
git clone https://github.com/AgentWrapper/agent-orchestrator && cp agent-orchestrator/*.md ~/.claude/agents/4 items in this repository
Open-source, pluggable agentic coding orchestrator. Manages durable coding agents (Claude Code, Codex, OpenCode) through a simple interface — spawn agents, track progress, and let feedback loops like PR reviews and CI failures automatically route to the right agents. Use for fixing bugs, building features, working on GitHub issues, checking status, and managing agent sessions.
Triage bugs reported in chat/issues, search for duplicates, file or update GitHub issues with full context, and push fix PRs.
Generate the weekly Agent Orchestrator release notes. Runs every Thursday 10:00 IST from the bot cron, or on-demand. Queries the GitHub API for the latest release, merged PRs, commits, contributors, and star counts, and produces a publishable markdown post in the house style. Output is posted to Discord by the cron job after this skill returns.
Draft viral social media posts for X (Twitter) and LinkedIn. Use when asked to write, draft, create, or improve posts for X, Twitter, LinkedIn, or social media. Handles single posts, threads, milestone celebrations, product launches, hot takes, and engagement-optimized content. NOT for: scheduling posts, managing accounts, or analytics.
Subagents overview
<h1 align="center">Agent Orchestrator — The Orchestration Layer for Parallel AI Agents</h1>
<p align="center">
<a href="https://github.com/ComposioHQ/agent-orchestrator">
<img width="800" alt="Agent Orchestrator banner" src="docs/assets/agent_orchestrator_banner.png">
</a>
</p>
<div align="center">
Spawn parallel AI coding agents, each in its own git worktree. Agents autonomously fix CI failures, address review comments, and open PRs — you supervise from one dashboard.
[](https://github.com/ComposioHQ/agent-orchestrator/stargazers)
[](https://www.npmjs.com/package/@aoagents/ao)
[](LICENSE)
[](https://github.com/ComposioHQ/agent-orchestrator/pulls?q=is%3Amerged)
[](https://github.com/ComposioHQ/agent-orchestrator/releases/tag/metrics-v1)
[](https://discord.gg/UZv7JjxbwG)
</div>
---
Agent Orchestrator manages fleets of AI coding agents working in parallel on your codebase. Each agent gets its own git worktree, its own branch, and its own PR. When CI fails, the agent fixes it. When reviewers leave comments, the agent addresses them. You only get pulled in when human judgment is needed.
**Agent-agnostic** (Claude Code, Codex, Aider) · **Runtime-agnostic** (tmux, ConPTY/process, Docker) · **Tracker-agnostic** (GitHub, Linear)
<div align="center">
## See it in action
<a href="https://x.com/agent_wrapper/status/2026329204405723180">
<img src="docs/assets/demo-video-tweet.png" alt="Agent Orchestrator demo — AI agents building their own orchestrator" width="560">
</a>
<br><br>
<a href="https://x.com/agent_wrapper/status/2026329204405723180"><img src="docs/assets/btn-watch-demo.png" alt="Watch the Demo on X" height="48"></a>
<br><br><br>
<a href="https://x.com/agent_wrapper/status/2025986105485733945">
<img src="docs/assets/article-tweet.png" alt="The Self-Improving AI System That Built Itself" width="560">
</a>
<br><br>
<a href="https://x.com/agent_wrapper/status/2025986105485733945"><img src="docs/assets/btn-read-article.png" alt="Read the Full Article on X" height="48"></a>
</div>
## Quick Start
> **Prerequisites:** [Node.js 20.18.3+](https://nodejs.org), [Git 2.25+](https://git-scm.com), [`gh` CLI](https://cli.github.com), and:
> - **macOS / Linux:** [tmux](https://github.com/tmux/tmux/wiki/Installing) — install via `brew install tmux` or `sudo apt install tmux`.
> - **Windows:** PowerShell 7+ recommended. tmux is **not** required — AO uses native ConPTY via the `runtime-process` plugin (the default on Windows). Set `AO_SHELL=bash` if you have Git Bash and prefer it.
### Install
```bash
npm install -g @aoagents/ao
```
> **Nightly builds** (latest `main`, daily Fri–Tue): `npm install -g @aoagents/ao@nightly`
> Back to stable: `npm install -g @aoagents/ao@latest`
<details>
<summary>Permission denied? Install from source?</summary>
If `npm install -g` fails with EACCES, prefix with `sudo` or [fix your npm permissions](https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally).
To install from source (for contributors):
```bash
git clone https://github.com/ComposioHQ/agent-orchestrator.git
cd agent-orchestrator && bash scripts/setup.sh
```
</details>
### Zsh Completion
Generate the completion file from the installed CLI:
```bash
mkdir -p ~/.zsh/completions
ao completion zsh > ~/.zsh/completions/_ao
```
Then make sure the directory is on your `fpath` before `compinit` runs:
```zsh
fpath=(~/.zsh/completions $fpath)
autoload -Uz compinit
compinit
```
For Oh My Zsh, install the same generated file into a custom plugin directory and add `ao` to your plugin list:
```bash
mkdir -p "${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/ao"
ao completion zsh > "${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/ao/_ao"
```
If you are contributing from a source checkout, you can also symlink the repo copy at [`completions/_ao`](completions/_ao).
### Start
Point it at any repo — it clones, configures, and launches the dashboard in one command:
```bash
ao start https://github.com/your-org/your-repo
```
Or from inside an existing local repo:
```bash
cd ~/your-project && ao start
```
That's it. The dashboard opens at `http://localhost:3000` and the orchestrator agent starts managing your project.
### Add more projects
```bash
ao start ~/path/to/another-repo
```
## How It Works
1. **You start** — `ao start` launches the dashboard and an orchestrator agent
2. **Orchestrator spawns workers** — each issue gets its own agent in an isolated git worktree
3. **Agents work autonomously** — they read code, write tests, create PRs
4. **Reactions handle feedback** — CI failures and review comments are automatically routed back to the agent
5. **You review and merge** — you only get pulled in when human judgment is needed
The orchestrator agent uses the [AO CLI](docs/CLI.md) internally to manage sessions. You don't need to learn or use the CLI — the dashboard and orchestrator handle everything.
## Configuration
`ao start` auto-generates `agent-orchestrator.yaml` with sensible defaults. You can edit it afterwards to customize behavior:
```yaml
# agent-orchestrator.yaml
$schema: https://raw.githubusercontent.com/ComposioHQ/agent-orchestrator/main/schema/config.schema.json
# Runtime data is auto-derived under ~/.agent-orchestrator/{hash}-{projectId}/
port: 3000
defaults:
runtime: tmux # default on macOS / Linux; on Windows the default is `process` (ConPTY)
agent: claude-code
workspace: worktree
notifiers: [desktop]
projects:
my-app:
repo: owner/my-app
path: ~/my-app
defaultBranch: main
sessionPrefix: app
reactions:
ci-failed:
auto: true
action: send-to-agent
retries: 2
changes-requested:
auto: true
action: send-to-agent
escalateAfter: 30m
approved-and-green:
auto: false # flip to true for auto-merge
action: notify
```
CI fails → agent gets the logs and fixes it. Reviewer requests changes → agent addresses them. PR approved with green CI → you get a notification to merge.
Keep the `$schema` line so editors can autocomplete and validate against [`schema/config.schema.json`](schema/config.schema.json).
See [`agent-orchestrator.yaml.example`](agent-orchestrator.yaml.example) for the full reference, or run `ao config-help` for the complete schema.
## Remote Access
AO keeps your Mac awake while running, so you can access the dashboard remotely (e.g., via Tailscale from your phone) without the machine going to sleep.
**How it works:** On macOS, AO automatically holds an idle-sleep prevention assertion using `caffeinate`. When AO exits, the assertion is released.
```yaml
# agent-orchestrator.yaml
$schema: https://raw.githubusercontent.com/ComposioHQ/agent-orchestrator/main/schema/config.schema.json
power:
preventIdleSleep: true # Default on macOS; no-op on Linux and Windows
```
Set to `false` if you want to allow idle sleep while AO runs.
**Lid-close limitation:** macOS enforces lid-close sleep at the hardware level — no userspace assertion can override it. If you need remote access while traveling with the lid closed, use [clamshell mode](https://support.apple.com/en-us/102505) (external power + display + input device).
**Linux / Windows:** AO does not currently hold a wake assertion on these platforms. On Linux, idle-sleep behaviour is governed by your desktop environment / `systemd-logind`; configure that directly. On Windows, set the OS power plan if remote access matters while idle.
## Plugin Architecture
Seven plugin slots. Lifecycle stays in core.
| Slot | Default | Alternatives |
| --------- | ----------- | ------------------------ |
| Runtime | tmux (macOS/Linux) / process (Windows) | process, docker |
| Agent | claude-code | codex, aider, cursor, opencode, kimicode |
| Workspace | worktree | clone |
| Tracker | github | linear, gitlab |
| SCM | github | gitlab |
| Notifier | desktop | slack, discord, composio, webhook, openclaw |
| Terminal | iterm2 | web |
All interfaces defined in [`packages/core/src/types.ts`](packages/core/src/types.ts). A plugin implements one interface and exports a `PluginModule`. That's it.
## Why Agent Orchestrator?
Running one AI agent in a terminal is easy. Running 30 across different issues, branches, and PRs is a coordination problem.
**Without orchestration**, you manually: create branches, start agents, check if they're stuck, read CI failures, forward review comments, track which PRs are ready to merge, clean up when done.
**With Agent Orchestrator**, you: `ao start` and walk away. The system handles isolation, feedback routing, and status tracking. You review PRs and make decisions — the rest is automated.
## Documentation
| Doc | What it covers |
| ---------------------------------------- | ------------------------------------------------------------ |
| [Setup Guide](SETUP.md) | Detailed installation, configuration, and troubleshooting |
| [CLI Reference](docs/CLI.md) | All `ao` commands (mostly used by the orchestrator agent) |
| [Examples](examples/) | Config templates (GitHub, Linear, multi-project, auto-merge) |
| [Development Guide](docs/DEVELOPMENT.md) | Architecture, conventions, plugin pattern |
| [Contributing](CONTRIBUTING.md) What people ask about agent-orchestrator
What is AgentWrapper/agent-orchestrator?
+
AgentWrapper/agent-orchestrator is subagents for the Claude AI ecosystem. Agentic orchestrator for parallel coding agents — plans tasks, spawns agents, and autonomously handles CI fixes, merge conflicts, and code reviews. It has 7.5k GitHub stars and was last updated 4d ago.
How do I install agent-orchestrator?
+
You can install agent-orchestrator by cloning the repository (https://github.com/AgentWrapper/agent-orchestrator) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is AgentWrapper/agent-orchestrator safe to use?
+
Our security agent has analyzed AgentWrapper/agent-orchestrator and assigned a Trust Score of 100/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.
Who maintains AgentWrapper/agent-orchestrator?
+
AgentWrapper/agent-orchestrator is maintained by AgentWrapper. The last recorded GitHub activity is from 4d ago, with 953 open issues.
Are there alternatives to agent-orchestrator?
+
Yes. On ClaudeWave you can browse similar subagents at /categories/agents, sorted by popularity or recent activity.
Deploy agent-orchestrator to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/agentwrapper-agent-orchestrator)<a href="https://claudewave.com/repo/agentwrapper-agent-orchestrator"><img src="https://claudewave.com/api/badge/agentwrapper-agent-orchestrator" alt="Featured on ClaudeWave: AgentWrapper/agent-orchestrator" width="320" height="64" /></a>More Subagents
The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
The agent that grows with you
Java 面试 & 后端通用面试指南,覆盖计算机基础、数据库、分布式、高并发、系统设计与 AI 应用开发
Production-ready platform for agentic workflow development.
The agent engineering platform.
🤯 LobeHub is your Chief Agent Operator, organizing your agents into 7×24 operations by hiring, scheduling, and reporting on your entire AI team.