- Created daily log entries for May 13, 14, 18, 19, 20, and 21, capturing work done, findings, and next steps. - Established a daily logs index for easy navigation of daily notes. - Developed templates for daily logs, decisions, meeting notes, people, systems, and work items to standardize documentation. - Introduced base files for filtering and displaying various types of project knowledge, including daily notes, decisions, people, systems, work items, and workstreams. - Added maps for current work, fidelity apps, and fidelity domain to enhance project navigation and context.
2.9 KiB
AI Workspace Service Manager
The service manager is the local lifecycle layer for AI Workspace services.
It reads profiles/<profile>/services.json, starts/stops enabled services, records logs under .aiw/runtime/logs/, and keeps PID/state files under .aiw/runtime/.
Common commands
python3 scripts/aiw/services.py status --profile fidelity
python3 scripts/aiw/services.py status --profile fidelity --json
python3 scripts/aiw/services.py doctor --profile fidelity
python3 scripts/aiw/services.py doctor --profile fidelity --json
python3 scripts/aiw/services.py start --profile fidelity
python3 scripts/aiw/services.py stop --profile fidelity
python3 scripts/aiw/services.py logs mattermost-proxy --profile fidelity
Start a subset by group:
python3 scripts/aiw/services.py start --profile fidelity --group communication
python3 scripts/aiw/services.py start --profile fidelity --group inbox
Current Fidelity services
mattermost-proxy: runs the local Mattermost proxy mirror.mattermost-desktop: launches Mattermost Desktop through the proxy.photo-inbox: runs the local HTTP photo receiver.aiw-context-mcp: read-only context MCP server for local AI clients.
The service manager unifies startup and status. It does not move capture behavior into the MCP.
Local project-knowledge index
The workspace includes a dependency-free local indexer for canonical Markdown memory. The index is derived from the profile's configured knowledge_dir and written under the profile's configured index_dir; it is safe to delete and rebuild.
python3 scripts/aiw/indexer.py build --profile fidelity
python3 scripts/aiw/indexer.py status --profile fidelity
python3 scripts/aiw/indexer.py search "dismissal lifecycle" --profile fidelity
aiw-context-mcp exposes the same derived search through the read-only memory_hybrid_search tool and falls back to live Markdown search if the index has not been built yet.
Profile path configuration
Reusable scripts resolve profile-specific paths through:
profiles/<profile>/workspace.json
Current fields:
{
"knowledge_dir": "workspaces/fidelity/project-knowledge",
"inbox_dir": "workspaces/fidelity/inbox",
"index_dir": ".aiw/indexes/fidelity"
}
Use scripts/aiw/profile.py from new scripts instead of hardcoding root-level project memory or inbox paths.
Robustness features
- Manifest validation before lifecycle actions.
- Dependency-aware startup through
depends_on. - Managed PID/state files under
.aiw/runtime/. - Per-service logs under
.aiw/runtime/logs/. - Simple log rotation before service start.
- TCP/HTTP health checks.
- Doctor checks for required commands and paths declared in the profile manifest.
- Protection against starting duplicate services when a matching health check is already passing externally.
Tests
python3 scripts/aiw/test_services.py
python3 scripts/aiw/test_profile.py
python3 scripts/aiw/test_indexer.py