The agent networking skill for ConnectOnion β connect your AI coding agent to any remote agent
π Documentation β’ π¬ Discord β’ β Star ConnectOnion β’ π§ Chat UI
oois the official companion skill for the ConnectOnion framework. Install it in your AI coding agent, then talk to any remote ConnectOnion agent through natural language β delegate tasks, collaborate across agents, get results back.
You: /oo 0x3d4017c3e843895a92b70aa74d1b7ebc9c982... translate this doc to English
Agent: Connecting to remote agent...
CO_METHOD: direct
[Returns translated document]
- Python 3.10+
pip install connectonion- Agent identity: run
co initin your project or home directory
One-liner (recommended) β installs into every detected agent:
curl -fsSL agent.openonion.ai/install | sh(Or pipe to python3 - if you'd rather skip the shell shim and run install.py directly. Works on macOS, Linux, Windows β needs python3 + git.)
The installer clones this repo to ~/.connectonion/bundles/oo, then drops the bundled skills into whichever coding agents are present:
- Claude Code β
~/.claude/plugins/oo/(whole bundle as a plugin, auto-namespaced) - Codex CLI β
~/.codex/skills/oo-<skill>/(symlinks per skill) - OpenClaw β
~/.openclaw/skills/oo-<skill>/(symlinks per skill) - Cursor β
~/.cursor/rules/oo-<skill>.mdc(frontmatter converted) - Kiro β
~/.kiro/steering/oo-<skill>.md(plain copies)
To uninstall: curl -fsSL agent.openonion.ai/install | sh -s -- --uninstall
There is no oo CLI to install β everything is a SKILL.md. Your coding agent runs the skill; the skill calls the connectonion Python library directly. The bundle ships with five skills:
ooβ connect to a remote agent and delegate a task (/oo 0x... <task>).oo-initβ scaffold a new bundle (agent.json+ skill dirs).oo-publishβ signagent.jsonand ANNOUNCE it over the relay.oo-subscribeβ request a follow + mirror a publisher's bundle.oo-acceptβ review and accept incoming subscription requests.
Manual install per tool β if you'd rather not run the installer, copy skills/<name>/SKILL.md directly into your agent's skill directory. Claude Code, Codex, and OpenClaw all read the canonical SKILL.md format. Cursor and Kiro need format conversion β see install.py for the exact transformation.
"Ask 0x3d4017c3e843895a92b70aa74d1b7ebc9c982... to review this pull request"
/oo 0x3d4017c3... research AI agent trends for 2026
"Set up ConnectOnion environment for agent networking"
The skill auto-detects ConnectOnion agent addresses (0x + 64 hex chars) in your messages and triggers automatically.
- Verifies
connectonionis installed and agent identity exists - Resolves remote agent endpoints via relay API
- Connects directly to the agent (with relay fallback)
- Sends task via signed WebSocket protocol
- Streams response, handles multi-turn conversation automatically
- Returns the remote agent's response to you
Target address (0x...)
β
βΌ
Query relay API for endpoints
β
βΌ
Try each endpoint directly (/info verification)
β
βββ Success β Direct WebSocket connection (fastest)
β
βββ All fail β Relay fallback (wss://oo.openonion.ai)
When the remote agent asks a follow-up question, the skill handles it intelligently:
- If answerable from context (file contents, prior conversation) β answers automatically
- If user input needed β shows the question, waits for your reply
- Loops until task is complete or 10 rounds max
| Error | Cause | Action |
|---|---|---|
ImportError: connectonion |
Not installed | pip install connectonion |
address.load() returns None |
No identity | co init |
TimeoutError |
Agent unreachable | Verify address, check network |
| Both direct + relay fail | Agent offline | Contact remote agent operator |
| Trust/permission error | Not authorized | Contact remote agent admin |
skills/
oo/SKILL.md # Connect/delegate to a remote agent (/oo β¦)
oo-init/SKILL.md # Scaffold a new bundle (mkdir + agent.json)
oo-publish/SKILL.md # Sign agent.json, ANNOUNCE over relay, upload skills
oo-subscribe/SKILL.md # SUBSCRIBE to a publisher, mirror to ~/.co/subs/<alias>/
oo-accept/SKILL.md # Review + accept incoming subscription requests
commands/
oo.md # /oo command alias
.claude-plugin/ # Claude Code plugin manifest (auto-namespaces installs)
lib/fanout.py # Per-tool install helpers (shared by install.py + oo-subscribe)
install.py # Cross-platform bootstrap: clones repo + symlinks into every detected agent
agent.json # Canonical oo bundle profile (signed by the openonion address)
LICENSE
README.md
Distribution is relay-based pub/sub, not git. Publishers sign agent.json and ANNOUNCE it to oo.openonion.ai; subscribers send a signed SUBSCRIBE, wait for accept, then pull the profile + each SKILL.md body from the relay into ~/.co/subs/<alias>/. install.py only handles the bootstrap β getting the canonical oo skills onto a fresh machine before any of those skills exist. After that, the four publishing/subscribing skills do everything else; Claude Code, Codex, OpenClaw, Cursor, and Kiro all share the same canonical SKILL.md source via lib/fanout.py.
ConnectOnion is an open-source framework for building production-ready AI agents with built-in multi-agent networking.
"Keep simple things simple, make complicated things possible."
Any agent built with ConnectOnion can be discovered and called by other agents through the host() / connect() protocol:
from connectonion import Agent, host
agent = Agent(name="translator", tools=[translate])
host(agent) # Now other agents can connect to this agentoo is the bridge β install it in your AI coding agent, and it can talk to any hosted ConnectOnion agent. Together they form the complete stack:
| Component | Role | Link |
|---|---|---|
| ConnectOnion | Framework β build, host, and connect agents | openonion/connectonion |
| oo | Skill β let AI coding agents use ConnectOnion | openonion/oo |
| chat.openonion.ai | Frontend β ready-to-use chat interface | chat.openonion.ai |
MIT License β use it anywhere, even commercially. See LICENSE file for details.
Built with π§ by the OpenOnion community
β Star ConnectOnion β’ π¬ Join Discord β’ π Read Docs β’ β¬ Back to top
