94d6624c01
feat: multi-provider support — Anthropic + Ollama (P2-002)
...
Add ProviderService wrapping Pi SDK's ModelRegistry for multi-provider
LLM support. Built-in providers (Anthropic, OpenAI, Google, xAI, etc.)
auto-discovered; Ollama registered via OLLAMA_BASE_URL env var;
custom providers via MOSAIC_CUSTOM_PROVIDERS JSON env var.
- ProviderService: wraps ModelRegistry, manages provider lifecycle
- ProvidersController: GET /api/providers, GET /api/providers/models
- AgentService: accepts provider/model params on session creation
- ChatGateway: passes optional provider/modelId from chat messages
- @mosaic/types: new provider/model type definitions
Closes #20
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-12 22:10:18 -05:00
aa9ee75a2a
fix: auth handler + circular imports — Phase 1 verification (P1-009) ( #73 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-03-13 03:02:02 +00:00
c54b69f7ce
feat: gateway CRUD routes — conversations, projects, missions, tasks (P1-005/006) ( #72 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-03-13 02:41:03 +00:00
38897fe423
feat: auth middleware, brain data layer, Valkey queue (P1-002/003/004) ( #71 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-03-13 02:37:56 +00:00
cbac5902db
fix: Phase 0 verification — CI gates green (P0-009) ( #70 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-03-13 02:28:38 +00:00
35e4e2e527
feat: foundation — Docker Compose, OTEL, shared types ( #65 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-03-13 01:55:33 +00:00
15352448d5
fix: switch gateway to ESM + explicit @Inject for tsx compatibility
...
Pi SDK is ESM-only. tsx (esbuild) doesn't emit decorator metadata,
so NestJS constructor injection fails without explicit @Inject().
- Set "type": "module" in gateway package.json
- Switch tsconfig to NodeNext module resolution
- Add @Inject(AgentService) to ChatController and ChatGateway
Tested end-to-end: REST /api/chat → Pi SDK → Anthropic → response OK.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-12 20:43:08 -05:00
4f84a01072
feat: communication spine — gateway, TUI, Discord ( #61 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-03-13 01:33:32 +00:00
6d0d288e31
feat(P0-001): scaffold monorepo structure ( #60 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-03-13 01:11:46 +00:00