diff --git a/docs/api/PROTOCOL.md b/docs/api/PROTOCOL.md index 6c9ee3b..5a2ad87 100644 --- a/docs/api/PROTOCOL.md +++ b/docs/api/PROTOCOL.md @@ -343,6 +343,78 @@ Useful for proactive compaction monitoring and operator dashboards. } ``` +#### `system.localBackends` + +Return status for user-level local LLM backend daemons (for example `ollama.service` and `llama-server.service`). + +**Request:** +```json +{ + "id": 12, + "method": "system.localBackends" +} +``` + +**Response:** +```json +{ + "id": 12, + "result": { + "backends": [ + { + "id": "ollama", + "provider": "ollama", + "name": "Ollama", + "unit": "ollama.service", + "configured": true, + "loadState": "loaded", + "activeState": "active", + "subState": "running", + "unitFileState": "enabled", + "description": "Ollama Service", + "pid": 12345, + "result": "success", + "statusText": "active (running)", + "availableActions": ["restart", "stop"] + } + ] + } +} +``` + +#### `system.localBackendControl` + +Control a local backend daemon (`start`, `restart`, `stop`). + +**Request:** +```json +{ + "id": 13, + "method": "system.localBackendControl", + "params": { + "backend": "ollama", + "action": "restart" + } +} +``` + +**Response:** +```json +{ + "id": 13, + "result": { + "backend": "ollama", + "action": "restart", + "status": { + "id": "ollama", + "activeState": "active", + "subState": "running", + "statusText": "active (running)" + } + } +} +``` + **Response:** ```json { diff --git a/docs/plans/state.json b/docs/plans/state.json index b79d7c5..cc47400 100644 --- a/docs/plans/state.json +++ b/docs/plans/state.json @@ -1,8 +1,25 @@ { "version": "1.0", - "updated_at": "2026-02-22", + "updated_at": "2026-02-23", "description": "Tracks the status of all Flynn plans and implementation phases", "plans": { + "dashboard-local-backend-daemon-controls": { + "status": "completed", + "date": "2026-02-23", + "updated": "2026-02-23", + "summary": "Added local LLM backend operations to gateway + dashboard: status visibility for user-level daemons and per-backend start/restart/stop controls via new `system.localBackends` and `system.localBackendControl` methods. Dashboard now shows daemon status cards and action feedback for local providers.", + "files_modified": [ + "src/gateway/handlers/localBackends.ts", + "src/gateway/handlers/system.ts", + "src/gateway/server.ts", + "src/gateway/handlers/handlers.test.ts", + "src/gateway/ui/pages/dashboard.js", + "src/gateway/ui/pages/dashboard.test.ts", + "docs/api/PROTOCOL.md", + "docs/plans/state.json" + ], + "test_status": "pnpm test:run src/gateway/handlers/handlers.test.ts src/gateway/ui/pages/dashboard.test.ts + pnpm typecheck passing" + }, "web-ui-form-wiring-regression-tests": { "status": "completed", "date": "2026-02-22",