Install
Raft is an official external plugin. Install it on the Gateway host:Prerequisites
- A Raft workspace with an External Agent.
- The Raft CLI installed on the same host as the OpenClaw Gateway.
- A Raft CLI profile that is already signed in and associated with that External Agent.
Configure
Set the profile in config:RAFT_PROFILE in the Gateway
environment:
How It Works
When the Gateway starts, the plugin:- Opens a loopback-only HTTP wake endpoint on an ephemeral port.
- Starts
raft --profile <profile> agent bridgewith that endpoint and a per-process token. - Accepts only authenticated, content-free wake hints with a replay identity from the local bridge.
- Requires one of
eventId,attemptId,messageId,delivery_id,wake_id, orid. - Deduplicates recent retried wake deliveries by bridge event id, including across Gateway restarts.
- Returns a stable runtime session for the current bridge and an empty activity-drain batch for the Raft CLI protocol.
- Starts one serialized OpenClaw agent turn for each accepted wake.
Raft is not a normal push-message transport. OpenClaw does not automatically
send the model’s final text back through the bridge, so the agent must use the
Raft CLI after processing a wake.
Verify
Check that OpenClaw can find the CLI and has a configured profile:Troubleshooting
Raft CLI is missing
Raft CLI is missing
Install the Raft CLI on the Gateway host and make
raft available on the
service’s PATH. Verify it with raft --help, then restart the Gateway.The bridge exits immediately
The bridge exits immediately
Verify the configured profile is signed in and belongs to the intended
Raft External Agent. Run
raft --profile <profile> agent bridge directly
to see the CLI diagnostic.A wake arrives but no Raft response is sent
A wake arrives but no Raft response is sent
This is expected when the agent does not invoke the Raft CLI. The wake
bridge does not carry message bodies or automatic final replies. Check the
agent’s tool policy and ensure it can run
raft --profile <profile> message check and message send.