release/2026-03-08
Action Gateway
Human-in-the-loop approval service for agent actions. The agent submits actions; you approve or reject them via a web UI.
Setup
1. Config (optional)
Create /home/node/.openclaw/workspace/config/action-gateway.toml:
database_path = "/home/node/.openclaw/workspace/config/action-gateway.db"
bind = "0.0.0.0:7878"
base_url = "https://yourdomain.com:7878"
notification_webhook = "" # optional Matrix/webhook URL
2. Add a user
./gateway-cli add-user admin yourpassword
3. Generate an API key for the agent
./gateway-cli gen-api-key agent
# Copy the key — store it in pass: pass insert gateway/api-key
4. Run the server
./action-gateway
# 🚀 Action Gateway running at http://0.0.0.0:7878
Agent usage (from inside the container)
# Submit an action
curl -s -X POST http://host:7878/api/actions \
-H "Authorization: Bearer <api-key>" \
-H "Content-Type: application/json" \
-d '{"description":"List files in /tmp","command":"ls /tmp"}'
# Poll for result
curl -s http://host:7878/api/actions/<id>/result \
-H "Authorization: Bearer <api-key>"
CLI commands
gateway-cli add-user <username> <password>
gateway-cli list-users
gateway-cli remove-user <username>
gateway-cli gen-api-key [label]
gateway-cli list-keys
Binaries
After cargo build --release:
target/release/action-gateway— the web servertarget/release/gateway-cli— admin CLI
Languages
Rust
100%