DB schema: Extend agents table with project scoping, ownership, system prompt, tool/skill config, isSystem flag. Add agentId FK to conversations.
Brain: New agents repository with full CRUD + findAccessible.
Gateway: New /api/agents CRUD endpoints. Consolidate /api/missions to user-scoped CRUD with /tasks sub-routes. Slim coord to file-based only. Wire agentConfigId into session creation.
CLI: New mosaic agent, mosaic mission, mosaic prdy commands. Shared with-auth helper and select-dialog. TUI accepts --agent and --project flags.
Types: Add agentId to ChatMessagePayload.
Test plan
pnpm typecheck — 32/32 green
pnpm lint — 18/18 green
pnpm format:check — clean
pnpm test — 23 tests pass
## Summary
- DB schema: Extend agents table with project scoping, ownership, system prompt, tool/skill config, isSystem flag. Add agentId FK to conversations.
- Brain: New agents repository with full CRUD + findAccessible.
- Gateway: New /api/agents CRUD endpoints. Consolidate /api/missions to user-scoped CRUD with /tasks sub-routes. Slim coord to file-based only. Wire agentConfigId into session creation.
- CLI: New mosaic agent, mosaic mission, mosaic prdy commands. Shared with-auth helper and select-dialog. TUI accepts --agent and --project flags.
- Types: Add agentId to ChatMessagePayload.
## Test plan
- [x] pnpm typecheck — 32/32 green
- [x] pnpm lint — 18/18 green
- [x] pnpm format:check — clean
- [x] pnpm test — 23 tests pass
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Test plan