II.
Page JSON
Structured · livepage:docs-user-guide-harnesses-install-matrix
Harness Install Matrix json
Inspect the normalized record payload exactly as the atlas UI reads it.
{
"id": "page:docs-user-guide-harnesses-install-matrix",
"_kind": "Page",
"_file": "wiki/docs/user-guide/harnesses/install-matrix.md",
"_cluster": "wiki",
"attributes": {
"nodeKind": "Page",
"sourcePath": "docs/user-guide/harnesses/install-matrix.md",
"sourceKind": "repo-docs",
"title": "Harness Install Matrix",
"displayName": "Harness Install Matrix",
"slug": "docs/user-guide/harnesses/install-matrix",
"articlePath": "wiki/docs/user-guide/harnesses/install-matrix.md",
"article": "\n[Docs](../index.md) › Harnesses › Install Matrix\n\n# Harness Install Matrix\n\n**Category:** Harnesses · **Last Updated:** 2026-06-22\n\n---\n\n## In Plain English\n\n**Babysitter v6 runs on a dozen AI coding [harnesses](../reference/glossary.md). This page lists them all - what to install, how you invoke Babysitter inside each one, and how each one drives the orchestration loop.**\n\nThe two most-used harnesses, **Claude Code** and **Codex**, have their own fully-worked pages ([Claude Code](claude-code.md), [Codex](codex.md)). The rest are listed here.\n\n> **These ship now and work today.** Some are newer than others; if you hit a rough edge, try it and tell us - [open an issue](https://github.com/a5c-ai/babysitter/issues). No harness is hidden or \"coming soon.\"\n\nEvery harness shares the same first step - install the core CLI:\n\n```bash\nnpm install -g @a5c-ai/babysitter\n```\n\nThen install the per-harness plugin using either the universal SDK helper or the harness's own installer:\n\n```bash\n# Universal helper (note: the argument is the HARNESS KEY, not always the harness name)\nbabysitter harness:install-plugin <harness-key> [--workspace <path>]\n```\n\n---\n\n## On this page\n\n- [Fully Supported (own pages)](#fully-supported-own-pages)\n- [Matrix Harnesses](#matrix-harnesses)\n- [Picking the Right Invocation Token](#picking-the-right-invocation-token)\n- [Related Documentation](#related-documentation)\n\n---\n\n## Fully Supported (own pages)\n\n| Harness | Repo | Harness key | Invocation | Page |\n|---------|------|-------------|------------|------|\n| Claude Code | `a5c-ai/babysitter-claude` | `claude-code` | `/babysitter:*` | [claude-code.md](claude-code.md) |\n| Codex | `a5c-ai/babysitter-codex` | `codex` | `$babysitter:*` (mention picker) | [codex.md](codex.md) |\n\n---\n\n## Matrix Harnesses\n\nEach row below ships now. The **harness key** is the argument to `babysitter harness:install-plugin` and may differ from the harness name.\n\n### Antigravity\n\n- **Repo:** `a5c-ai/babysitter-antigravity` · **Harness key:** `antigravity-cli`\n- **Invocation:** `/babysitter:*`\n- **Hook model:** SessionStart + AfterAgent (workflow-driven; **no Stop hook**). AfterAgent fires after every turn and re-injects the next iteration until `<promise>COMPLETION_PROOF</promise>`.\n- **Install:**\n ```bash\n babysitter harness:install-plugin antigravity-cli [--workspace <path>]\n ```\n > Install via the SDK helper (harness key `antigravity-cli`); there is no standalone npm installer package for this harness.\n\n### Cursor\n\n- **Repo:** `a5c-ai/babysitter-cursor` · **Harness key:** `cursor`\n- **Invocation:** `$<skill>` (e.g. `$call`, `$plan`)\n- **Hook model:** SessionStart + Stop. The `Stop` hook emits `{followup_message: ...}` (Cursor-specific, not `{decision: block}`) to auto-continue while the run is in progress.\n- **Install:**\n ```bash\n babysitter harness:install-plugin cursor [--workspace <path>]\n npx --yes @a5c-ai/babysitter-cursor install --global\n npx --yes @a5c-ai/babysitter-cursor install --workspace <path>\n ```\n > Cursor's marketplace add is **UI-only** (via the bundled marketplace manifest); there is no CLI `marketplace add` for Cursor.\n\n### Gemini\n\n- **Repo:** `a5c-ai/babysitter-gemini` · **Harness key:** `gemini-cli`\n- **Invocation:** `/babysitter:*`\n- **Hook model:** SessionStart + AfterAgent (`gemini-extension.json` manifest; **no Stop hook**). `session-start.sh` installs the SDK and inits state; `after-agent.sh` returns `{decision: block, ...}` to inject the next iteration until completion proof.\n- **Install:**\n ```bash\n babysitter harness:install-plugin gemini-cli [--workspace <path>]\n ```\n > Install via the SDK helper (harness key `gemini-cli`); there is no standalone npm installer package for this harness.\n\n### genty\n\n- **npm package:** `@a5c-ai/babysitter-genty` · **Harness key:** `genty`\n- **Invocation:** `/<command>` thin aliases (forward to the genty skill system)\n- **Hook model:** genty extension API - a `session_start` proxied hook; continuation is owned by the `babysit` skill and the SDK proxied hooks (no marketplace CLI).\n- **Install:**\n ```bash\n babysitter harness:install-plugin genty [--workspace <path>]\n npx --yes @a5c-ai/babysitter-genty install --global\n npx --yes @a5c-ai/babysitter-genty install --workspace <path>\n ```\n > **Install genty from npm only** (`@a5c-ai/babysitter-genty`). There is no separate harness repo to link.\n\n### GitHub Copilot\n\n- **Repo:** `a5c-ai/babysitter-github-copilot` · **Harness key:** `github-copilot`\n- **Invocation:** `$<skill>` (Copilot CLI skills) plus a cloud-agent path that installs repo-scoped skills\n- **Hook model:** plugin-bundle hooks (SessionStart + SessionEnd + UserPromptSubmitted, where **sessionEnd is the loop driver**) plus a cloud-agent install driven by repo instructions/skills - not a local `hooks.json`.\n- **Install:**\n ```bash\n babysitter harness:install-plugin github-copilot [--workspace <path>]\n copilot plugin marketplace add a5c-ai/babysitter-github-copilot && copilot plugin install babysitter\n copilot plugin install a5c-ai/babysitter-github-copilot\n babysitter-github install --cloud-agent --workspace <path>\n ```\n\n### Hermes\n\n- **Repo:** `a5c-ai/babysitter-hermes` · **Harness key:** `hermes`\n- **Invocation:** `/<command>` (Hermes skill surface)\n- **Hook model:** ACP (Agent Communication Protocol - JSON-RPC over stdio). The SDK owns orchestration; no filesystem Stop hook.\n- **Install:**\n ```bash\n babysitter harness:install-plugin hermes [--workspace <path>]\n ```\n\n### oh-my-pi (omp)\n\n- **Repo:** `a5c-ai/babysitter-omp` · **Harness key:** `oh-my-pi`\n- **Invocation:** `/<command>` thin aliases forwarding to `/skill:<name>`\n- **Hook model:** thin-skill-alias - a `session_start` proxied hook plus `/skill:<name>` forwarding; the loop is SDK-owned.\n- **Install:**\n ```bash\n babysitter harness:install-plugin oh-my-pi [--workspace <path>]\n npx --yes @a5c-ai/babysitter-omp install --global\n npx --yes @a5c-ai/babysitter-omp install --workspace <path>\n omp plugin install @a5c-ai/babysitter-omp\n ```\n\n### openclaw\n\n- **Repo:** `a5c-ai/babysitter-openclaw` · **Harness key:** `openclaw`\n- **Invocation:** `/<command>` and `/babysitter:*` aliases forwarding to `/skill:<name>`\n- **Hook model:** daemon - `session_start` / `before_prompt_build` / `agent_end` (async fire-and-forget) / `session_end`. **No synchronous Stop hook**; `before_prompt_build` injects run state into each turn's prompt.\n- **Install:**\n ```bash\n babysitter harness:install-plugin openclaw [--workspace <path>]\n npx --yes @a5c-ai/babysitter-openclaw install --global\n npx --yes @a5c-ai/babysitter-openclaw install --workspace <path>\n ```\n\n### opencode\n\n- **Repo:** `a5c-ai/babysitter-opencode` · **Harness key:** `opencode`\n- **Invocation:** `commands/*.md` slash-commands (e.g. `/status`)\n- **Hook model:** `session.created` + `session.idle` (non-blocking) + `shell.env` + `tool.execute.before` / `tool.execute.after`. There is **no blocking Stop hook** - the agent runs the full orchestration loop within a single turn by calling `babysitter run:iterate` until completion.\n- **Install:**\n ```bash\n babysitter harness:install-plugin opencode [--workspace <path>]\n npx --yes @a5c-ai/babysitter-opencode install --global\n npx --yes @a5c-ai/babysitter-opencode install --workspace <path>\n npx --yes @a5c-ai/babysitter-opencode install --accomplish\n ```\n\n### Pi\n\n- **Repo:** `a5c-ai/babysitter-pi` · **Harness key:** `pi`\n- **Invocation:** `/<command>` thin aliases forwarding to `/skill:<name>` (note: `/resume` is reserved by Pi, so use `/babysitter:resume`)\n- **Hook model:** thin-skill-alias - `session_start` plus a proxied `stop` hook; active-run detection lives in the SDK stop hook.\n- **Install:**\n ```bash\n babysitter harness:install-plugin pi [--workspace <path>]\n npx --yes @a5c-ai/babysitter-pi install --global\n npx --yes @a5c-ai/babysitter-pi install --workspace <path>\n pi install npm:@a5c-ai/babysitter-pi\n pi install -l npm:@a5c-ai/babysitter-pi\n ```\n\n---\n\n## Picking the Right Invocation Token\n\nBecause each harness surfaces Babysitter differently, the [Slash Commands and Modes](../reference/slash-commands.md) page maps the canonical commands (`call`, `plan`, `yolo`, `resume`, ...) to each harness's token style. Read that page if you are unsure what to type.\n\n---\n\n## Related Documentation\n\n- [Claude Code](claude-code.md) · [Codex](codex.md) - fully-worked harness pages\n- [Adapters](../features/adapters.md) - why Babysitter is harness-agnostic\n- [Hooks](../features/hooks.md) - per-harness continuation models\n- [Slash Commands and Modes](../reference/slash-commands.md)\n- [Installation](../getting-started/installation.md)\n\n---\n\n## Next steps\n\n- **Next:** [Claude Code](./claude-code.md)\n- **Related:** [Codex](./codex.md), [Adapters](../features/adapters.md), [Slash Commands](../reference/slash-commands.md)\n",
"documents": []
},
"outgoingEdges": [],
"incomingEdges": [
{
"from": "page:docs-user-guide",
"to": "page:docs-user-guide-harnesses-install-matrix",
"kind": "contains_page"
}
]
}