agent-orchestrator/packages/plugins/notifier-openclaw/README.md

70 lines
1.9 KiB
Markdown

# notifier-openclaw
OpenClaw notifier plugin for AO escalation events.
## Quick setup
```bash
ao setup openclaw
```
This interactive wizard auto-detects your OpenClaw gateway, lets you reuse or change the URL, OpenClaw config path, and routing values, then writes the AO config. For non-interactive use (e.g., in CI/CD pipelines or automation scripts):
```bash
ao setup openclaw --url http://127.0.0.1:18789/hooks/agent --non-interactive
```
AO does not generate the token or write shell-profile exports. Local setup reads `hooks.token` from your OpenClaw config. For a remote OpenClaw gateway, you can pass `--token` and AO will store that token in `agent-orchestrator.yaml`.
Useful follow-up commands:
```bash
ao setup openclaw --refresh
ao setup openclaw --status
```
Interactive setup asks which notification priorities OpenClaw should receive.
For scriptable setup, pass `--routing-preset urgent-only`, `urgent-action`, or
`all`.
## Required OpenClaw config (`openclaw.json`)
```json
{
"hooks": {
"enabled": true,
"token": "<your-hooks-token>",
"allowRequestSessionKey": true,
"allowedSessionKeyPrefixes": ["hook:"]
}
}
```
## AO config (`agent-orchestrator.yaml`)
```yaml
notifiers:
openclaw:
plugin: openclaw
url: http://127.0.0.1:18789/hooks/agent
openclawConfigPath: ~/.openclaw/openclaw.json
```
## Behavior
- Sends `POST /hooks/agent` payloads with per-session key `hook:ao:<sessionId>`.
- Defaults `wakeMode: now` and `deliver: true`.
- Retries on `429` and `5xx` responses with exponential backoff.
## Token rotation
1. Rotate `hooks.token` in OpenClaw.
2. Restart OpenClaw so it picks up the new config.
3. Run `ao setup openclaw --status` to verify the new token.
## 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.