Adds bidirectional integration between Agent Orchestrator and OpenClaw, enabling AI bots on Discord/Telegram/WhatsApp to manage coding agent fleets through natural conversation. OpenClaw Plugin (openclaw-plugin/): - 14 AI tools: ao_spawn, ao_issues, ao_sessions, ao_status, ao_batch_spawn, ao_send, ao_kill, ao_session_restore, ao_session_cleanup, ao_session_claim_pr, ao_review_check, ao_verify, ao_doctor, ao_session_list - Hooks: message_received + before_prompt_build for live data injection - /ao slash command with subcommands (sessions, spawn, issues, doctor, setup) - Background services: health monitor + issue board scanner - Security: execFileSync with arg arrays (no shell injection) AO Skill (skills/agent-orchestrator/): - Natural language intent → AO tool mapping - Decision heuristic: quick fix → direct, multi-issue → AO - Designed for ClawHub publishing (blocked on ClawHub server bug) CLI: ao setup openclaw (packages/cli/src/commands/setup.ts): - Interactive wizard + non-interactive mode - Auto-detects OpenClaw gateway on localhost - Auto-generates secure token - Writes both configs (agent-orchestrator.yaml + openclaw.json) - Appends OPENCLAW_HOOKS_TOKEN to shell profile - Validates connection end-to-end CLI: ao doctor notifier checks: - Probes OpenClaw gateway reachability + token validity - --test-notify flag sends test event through all configured notifiers - Failure count propagated to exit code Discord Notifier (packages/plugins/notifier-discord/): - Rich webhook embeds with colors, fields, action links - Retry with exponential backoff + Discord Retry-After header - Request timeouts, embed truncation, webhook URL validation - thread_id via URL query string (Discord API requirement) OpenClaw Notifier improvements: - Added request timeouts via AbortController - Improved README Reviewed through 5 rounds of Codex code review. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| src | ||
| CHANGELOG.md | ||
| README.md | ||
| package.json | ||
| tsconfig.json | ||
README.md
notifier-openclaw
OpenClaw notifier plugin for AO escalation events.
Quick setup
ao setup openclaw
This interactive wizard auto-detects your OpenClaw gateway, validates the connection, and writes the config. For non-interactive use (e.g., from an OpenClaw agent):
ao setup openclaw --url http://127.0.0.1:18789/hooks/agent --token YOUR_TOKEN --non-interactive
Required OpenClaw config (openclaw.json)
{
"hooks": {
"enabled": true,
"token": "<your-hooks-token>",
"allowRequestSessionKey": true,
"allowedSessionKeyPrefixes": ["hook:"]
}
}
AO config (agent-orchestrator.yaml)
notifiers:
openclaw:
plugin: openclaw
url: http://127.0.0.1:18789/hooks/agent
token: ${OPENCLAW_HOOKS_TOKEN}
Behavior
- Sends
POST /hooks/agentpayloads with per-session keyhook:ao:<sessionId>. - Defaults
wakeMode: nowanddeliver: true. - Retries on
429and5xxresponses with exponential backoff.
Token rotation
- Rotate
hooks.tokenin OpenClaw. - Update
OPENCLAW_HOOKS_TOKENused by AO. - Verify old token returns
401and new token returns200.
Known limitation (Phase 0)
- OpenClaw hook ingest is not idempotent by default. Replayed webhook payloads are processed as separate runs.
- Owner: AO integration.
- Follow-up: add stable event id/idempotency key support.