Plugin catalog
Every plugin that ships with AO, grouped by slot. Mix and match in your `agent-orchestrator.yaml`.
AO has eight plugin slots. Only one plugin per slot is active at a time, and every slot has a sensible default — you don't have to configure anything unless you want to.
Slots at a glance
| Slot | Default | What it does |
|---|---|---|
| Agent | claude-code | Which AI tool writes the code |
| Runtime | tmux (macOS/Linux), process (Windows) | Where the agent process runs |
| Workspace | worktree | Per-session code isolation |
| Tracker | github | Where issues live |
| SCM | github | PRs, CI, reviews |
| Notifier | desktop | Who pings you when something happens |
| Terminal | iterm2 on macOS | How you attach to a running agent |
| Lifecycle | built-in | State machine + polling loop (not pluggable) |
Agents
Claude CodeAnthropic's CLI coding agent. Session resume via --resume.CodexOpenAI Codex CLI. Session resume via codex resume <threadId>.CursorCursor Agent CLI. One-shot per session.AiderAider pair-programming CLI. No resume; PATH wrappers for PR tracking.OpenCodeOpenCode terminal agent. Session discovery + restore via the OpenCode session API.
Runtimes
tmuxDefault on macOS/Linux. Each agent gets its own tmux window you can attach to.processCross-platform child-process runtime. Required on Windows.
Workspaces
worktreegit worktree per session. Fast, shares the object DB with your main checkout.cloneFull clone per session. Use when your tooling doesn't play well with shared .git.
Trackers
GitHubIssues + PRs via the gh CLI.GitLabIssues + MRs via the glab CLI. Self-hosted supported.LinearLinear issues. Direct API or Composio-mediated.
SCM
Notifiers
DesktopNative macOS/Linux notifications. No-op on Windows.DiscordWebhook-based Discord messages with rich embeds.SlackSlack incoming webhooks.WebhookGeneric HTTP POST with retries and exponential backoff.ComposioRoute through the Composio toolkit — Slack, Discord, or Gmail.OpenClawLocal OpenClaw gateway for personal notifications.
Terminals
iTerm2Open attached tabs in iTerm2 via AppleScript (macOS only).WebDashboard xterm.js session URL. Cross-platform.
Writing your own
Every plugin is a small Node package that exports a manifest + create() function. See Authoring a plugin for the full contract, loading paths, and the core utilities available to plugins.
The fastest path is ao plugin create — it scaffolds a working starter:
ao plugin create --slot notifier --name pagerduty