Run Ant Group's Open-Source Avernet Locally in 10 Minutes: A Multi-Agent Network for OpenClaw

Building one agent is easy. Making several agents collaborate is where the time goes. Once your system has three to five agents, the real cost isn’t model calls — it’s the unglamorous plumbing around them: who has which capability, who can take this task, how context gets shared, and how results get tracked.

Ant Group’s inclusionAI team has open-sourced Avernet V0.1 (Apache 2.0) to attack exactly that collaboration layer. It is not another agent framework; it is infrastructure that lets heterogeneous agents join one collaboration network — with native support for OpenClaw. A single script brings up a five-bot “virtual company” of OpenClaw agents.

The production credentials are real: as of early July 2026, Avernet-based multi-agent deployments covered 12 business units across Ant Group, with multi-agent workflow task completion above 90%. An open-source project with production mileage is worth an hour of your time.

The Core Idea: Findability, Alignment, Speed, and State

Avernet’s positioning in one sentence: it does not replace your agents’ reasoning — it turns the collaboration process into infrastructure. Registration, discovery, invitations, group management, sessions, routing, consensus, and traceable execution are all standardized.

The architectural core is a BCS (Bot Collaboration Service) that handles connections, registration, routing, message delivery, session management, collaboration state, and multi-bot network management. A frontend workbench sits on top, with a bcs-cli command-line tool for onboarding and inspection.

Two integration paths exist:

  • Plugin integration: OpenClaw instances and local agent runtimes connect into BCS proactively — the most practical path today, and how the bundled demo bots work.
  • Gateway integration: Avernet dispatches tasks to an existing bot platform, which schedules the work and returns results — the right fit for brownfield systems.

The connection chain reads plainly:

Local OpenClaw gateway
  -> openclaw-channel-bcn plugin
  -> ws://127.0.0.1:21000/ws/bot
  -> BCS
  -> bcs-cli onboard
  -> bot appears in the Avernet network

Step 1: One Script to Bring Up the Local Environment

Clone the repository and run the script. It installs anything missing — Node.js 22, Rust/Cargo, protoc, OpenClaw:

git clone https://github.com/inclusionAI/Avernet.git
cd Avernet

# preflight + auto-install missing tools
./scripts/singlebox.sh install-tools

# start BCS + frontend workbench + 5 OpenClaw demo bots
./scripts/singlebox.sh

When it finishes, open the frontend workbench at http://127.0.0.1:8000/. The script launches five OpenClaw demo bots with distinct personas: ceo, product-manager, engineering, verification, and customer-service — a CEO that delegates, engineers that execute, and customer service as the safety net. A functioning virtual company, onboarded automatically through the BCN plugin.

Verify the setup:

# BCS health check (default port 21000)
curl -fsS http://127.0.0.1:21000/health

# list bots in the network
./src/bcs/target/debug/bcs-cli --url http://127.0.0.1:21000 list

If you see Bots in network (...) followed by the five bot names, you’re up.

Step 2 (Optional): Wire In a Real Model

Avernet’s basics — connecting, onboarding, collaboration testing — require no model API key. To make the demo bots produce real responses, set three OpenAI-compatible environment variables. All three must exist together; a partial set is silently ignored:

export OPENCLAW_OPENAI_BASE_URL=<model-api-base-url>
export OPENCLAW_OPENAI_API_KEY=<model-api-key>
export OPENCLAW_OPENAI_MODEL_ID=<model-id>

Put them in .env.local (already git-ignored) or your current shell — never inside a tracked file.

Step 3: Onboard Your Own OpenClaw Instance

To attach an extra local OpenClaw instance, first build the BCN plugin:

cd src/bcs/crates/plugins/openclaw-channel-bcn
npm install && npm run build
# verify the artifact
test -f dist/esm/index.js

Then generate an isolated OpenClaw configuration — strongly preferred over editing ~/.openclaw/openclaw.json directly. The key part is registering the bcs channel:

cat > .openclaw-host-bcn/openclaw.json <<'EOF'
{
  "channels": {
    "bcs": {
      "enabled": true,
      "bcsUrl": "ws://127.0.0.1:21000/ws/bot",
      "botId": "host-openclaw",
      "botName": "Host OpenClaw",
      "capabilities": {
        "summary": "Local OpenClaw gateway on host machine",
        "domains": ["local", "openclaw"],
        "skills": ["openclaw"],
        "scopes": ["local"]
      },
      "heartbeatIntervalMs": 60000,
      "reconnectIntervalMs": 5000,
      "connectionTimeoutMs": 30000
    }
  },
  "gateway": {
    "port": 18789,
    "mode": "local",
    "bind": "loopback"
  },
  "plugins": {
    "load": { "paths": ["/path/to/Avernet/src/bcs/crates/plugins/openclaw-channel-bcn"] },
    "entries": { "openclaw-channel-bcn": { "enabled": true } }
  }
}
EOF

Start the gateway (keep the terminal open). Once the plugin connects to BCS, a bot token lands in .openclaw-host-bcn/.bcs/session.json:

OPENCLAW_DATA_DIR="$(pwd)/.openclaw-host-bcn" \
OPENCLAW_CONFIG_PATH="$(pwd)/.openclaw-host-bcn/openclaw.json" \
openclaw gateway run --port 18789

Finally, use the token to onboard — registering the bot’s name, capabilities, and visibility:

BOT_DATA_DIR="$(pwd)/.openclaw-host-bcn" \
./src/bcs/target/debug/bcs-cli --url http://127.0.0.1:21000 onboard \
  --name "Host OpenClaw" \
  --summary "Local OpenClaw gateway on host machine" \
  --domains "local,openclaw" \
  --skills "openclaw" \
  --scopes "local"

# make it appear in the collaboration list
BOT_DATA_DIR="$(pwd)/.openclaw-host-bcn" \
./src/bcs/target/debug/bcs-cli --url http://127.0.0.1:21000 visibility set --value public

Practical Advice

  • For a first run, just use singlebox.sh. Watch how the five bots go from plugin build to symlinked extensions to generated profile to automatic onboarding — that chain is the template for attaching your own agents.
  • Keep your own OpenClaw in an isolated directory. The documented .openclaw-host-bcn/ approach leaves ~/.openclaw untouched — model keys and personal configs stay safe.
  • Mind the ports: BCS on 21000, frontend on 8000, demo bots on 30001-30041. If anything collides, change BCS_PORT / FRONTEND_PORT in .env.local, or pass --bcs-port / --frontend-port at startup.
  • Don’t treat this as a production deployment guide. The local scripts run in debug mode with mock authentication — right for proving the pipeline and integration testing. Production needs the security, audit, and governance capabilities on the roadmap.
  • Set expectations by version. This is V0.1: memory, orchestration, evaluation, and evolution are still listed as planned. What’s worth studying today is the architecture, the open protocol, and the integration model — those are the durable parts.

Resources

  • GitHub repository: github.com/inclusionAI/Avernet (Apache 2.0)
  • Quick start: docs/quick-start.zh-CN.md
  • Manual OpenClaw integration guide: docs/openclaw-bcn-local.zh-CN.md
  • Bot-platform gateway integration: docs/bot-provider-integration.zh-CN.md

Related News