# 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`: ```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 ```bash ./gateway-cli add-user admin yourpassword ``` ### 3. Generate an API key for the agent ```bash ./gateway-cli gen-api-key agent # Copy the key — store it in pass: pass insert gateway/api-key ``` ### 4. Run the server ```bash ./action-gateway # 🚀 Action Gateway running at http://0.0.0.0:7878 ``` ## Agent usage (from inside the container) ```bash # Submit an action curl -s -X POST http://host:7878/api/actions \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{"description":"List files in /tmp","command":"ls /tmp"}' # Poll for result curl -s http://host:7878/api/actions//result \ -H "Authorization: Bearer " ``` ## CLI commands ```bash gateway-cli add-user gateway-cli list-users gateway-cli remove-user gateway-cli gen-api-key [label] gateway-cli list-keys ``` ## Binaries After `cargo build --release`: - `target/release/action-gateway` — the web server - `target/release/gateway-cli` — admin CLI