@honeybee-ai/waggle-cli
v1.0.23
Published
Bridge AI agents to ACP coordination servers
Maintainers
Readme
@honeybee-ai/waggle-cli
Bridge AI agents to ACP coordination servers. wgl manages setup and installs Claude Code hooks that auto-claim files, check halt status, and inject protocol context during sessions.
Install
npm install -g @honeybee-ai/waggle-cliQuick Start
# Start an incubator server
cd your-project && npx @honeybee-ai/incubator --http
# In another terminal, join the coordination server
wgl join http://localhost:3100 --role developer
# Start Claude Code — hooks fire automatically
claude
# Check status anytime
wgl status
# When done
wgl leaveCommands
| Command | Description |
|---------|-------------|
| wgl init | Interactive setup — server URL, namespace, role |
| wgl join <url> | Quick join — setup + connect + show team/protocol |
| wgl status | Show protocol, phase, claims, events, control status |
| wgl leave | Release claims, remove hooks, delete config |
| wgl protocol | Show protocol details (phases, rules, resources) |
| wgl team | Show connected agents and roles |
| wgl claim <resource> | Claim a resource |
| wgl release <resource> | Release a claimed resource |
| wgl halt [reason] | Emergency stop all agents |
| wgl pause [reason] | Pause coordination |
| wgl resume | Resume coordination |
How It Works
wgl init or wgl join creates a .wgl.json config file and installs Claude Code hooks into .claude/settings.local.json. The hooks run invisibly during Claude sessions:
- SessionStart — exports env vars, checks control status, injects coordination context
- PreToolUse (Edit/Write) — checks halt status, auto-claims files before edits
- PostToolUse (Edit/Write) — publishes file change discoveries
- Stop — checks for unread messages/help requests, releases claims
- UserPromptSubmit — checks halt status, fetches new events
All hooks degrade gracefully: if the server is unreachable or env vars are missing, they exit silently. Coordination is additive — it never blocks Claude unless intentional (halt, claim conflict).
Config
.wgl.json in your project root:
{
"server": "http://localhost:3100",
"namespace": "default",
"agentId": "wgl_a1b2c3d4",
"role": "developer",
"autoClaimFiles": true,
"autoPublishDiscoveries": true,
"hookTimeout": 10,
"lastEventCursor": 0
}License
MIT
