feat: implement AI Workspace service manager with lifecycle control for local services

This commit is contained in:
2026-05-20 14:43:52 -06:00
parent eb11bb9442
commit 1121433db8
8 changed files with 627 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
# AI Workspace Service Manager
## Principle
The AI Workspace should unify local service lifecycle without collapsing service responsibilities.
- Service manager: starts, stops, checks, and logs local services.
- Context MCP: exposes bounded read-only context to AI clients.
- Capture services: produce local evidence such as Mattermost mirror records or photo inbox files.
- Canonical memory remains under `project-knowledge/` and is updated by the agent using memory rules.
## Service Types
- `process`: long-running local command with PID, logs, and optional health check.
- `app-launcher`: one-shot command that opens an application or helper.
- `mcp`: a process service that exposes an MCP-compatible context interface.
## Profile Manifests
Project-specific services should be declared under `profiles/<profile>/services.json`.
Manifests should avoid project facts in reusable code. Profile-specific channel names, paths, ports, and enabled services belong in the profile manifest or local `.env` files.
## Responsibility Boundaries
Do not put capture lifecycle inside the context MCP. The MCP should query local evidence produced by capture services. The service manager may start both the MCP and capture services as one profile-level operation.
This keeps the same core usable for Fidelity, IT support, or another project with different communication sources.