Grambot updates engine settings using a three-step strategy:
- Local server running: send a mutation request over the local HTTP socket
at
.scout/scout.sock. - Local server not running: write directly to local files (settings + auth).
- Remote server configured: reserved for future use.
The start command launches a Fastify server bound to a Unix socket.
Current endpoints:
GET /v1/engine/statusGET /v1/engine/cron/tasksGET /v1/engine/sessionsGET /v1/engine/sessions/:storageIdGET /v1/engine/memory/search?query=...(requires the memory plugin)GET /v1/engine/pluginsPOST /v1/engine/plugins/loadPOST /v1/engine/plugins/unloadPOST /v1/engine/authGET /v1/engine/events(SSE)
Plugin mutations accept:
POST /v1/engine/plugins/loadpayload{ "pluginId": "...", "instanceId": "...", "settings": { ... } }POST /v1/engine/plugins/unloadpayload{ "instanceId": "..." }
sequenceDiagram
participant Client
participant Engine
Client->>Engine: POST /v1/engine/plugins/load
Engine->>Engine: load plugin + update settings
Engine-->>Client: ok
Client->>Engine: GET /v1/engine/events
Engine-->>Client: stream events