Jason Woltje
12abdfe81d
feat( #93 ): implement agent spawn via federation
...
Implements FED-010: Agent Spawn via Federation feature that enables
spawning and managing Claude agents on remote federated Mosaic Stack
instances via COMMAND message type.
Features:
- Federation agent command types (spawn, status, kill)
- FederationAgentService for handling agent operations
- Integration with orchestrator's agent spawner/lifecycle services
- API endpoints for spawning, querying status, and killing agents
- Full command routing through federation COMMAND infrastructure
- Comprehensive test coverage (12/12 tests passing)
Architecture:
- Hub → Spoke: Spawn agents on remote instances
- Command flow: FederationController → FederationAgentService →
CommandService → Remote Orchestrator
- Response handling: Remote orchestrator returns agent status/results
- Security: Connection validation, signature verification
Files created:
- apps/api/src/federation/types/federation-agent.types.ts
- apps/api/src/federation/federation-agent.service.ts
- apps/api/src/federation/federation-agent.service.spec.ts
Files modified:
- apps/api/src/federation/command.service.ts (agent command routing)
- apps/api/src/federation/federation.controller.ts (agent endpoints)
- apps/api/src/federation/federation.module.ts (service registration)
- apps/orchestrator/src/api/agents/agents.controller.ts (status endpoint)
- apps/orchestrator/src/api/agents/agents.module.ts (lifecycle integration)
Testing:
- 12/12 tests passing for FederationAgentService
- All command service tests passing
- TypeScript compilation successful
- Linting passed
Refs #93
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com >
2026-02-03 14:37:06 -06:00
de3f3b9204
feat( #156 ): Create coordinator bot user documentation and setup scripts
...
Add comprehensive documentation and automated scripts for setting up the mosaic
coordinator bot user in Gitea. This enables the coordinator system to manage
issue assignments, comments, and orchestration.
Changes:
- docs/1-getting-started/3-configuration/4-gitea-coordinator.md: Complete setup guide
* Step-by-step bot user creation via UI and API
* Repository permission configuration
* API token generation and storage
* Comprehensive testing procedures
* Security best practices and troubleshooting
- scripts/coordinator/create-gitea-bot.sh: Automated bot creation script
* Creates mosaic bot user with proper configuration
* Sets up repository permissions
* Generates API token
* Tests authentication
* Provides credential output for secure storage
- scripts/coordinator/test-gitea-bot.sh: Bot functionality test suite
* Tests authentication
* Verifies repository access
* Tests issue operations (read, list, assign, comment)
* Validates label management
* Confirms all required permissions
- scripts/coordinator/README.md: Scripts usage documentation
* Workflow guides
* Configuration reference
* Troubleshooting section
* Token rotation procedures
- .env.example: Added Gitea coordinator configuration template
* GITEA_URL, GITEA_BOT_USERNAME, GITEA_BOT_TOKEN
* GITEA_BOT_PASSWORD, GITEA_REPO_OWNER, GITEA_REPO_NAME
* Security notes for credential storage
All acceptance criteria met:
✓ Documentation for bot user creation
✓ Automated setup script
✓ Testing procedures and scripts
✓ Configuration templates
✓ Security best practices
✓ Troubleshooting guide
Addresses Milestone: M4.1-Coordinator
Relates to: #140 , #157 , #158
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com >
2026-02-01 17:32:03 -06:00
Jason Woltje
973502f26e
feat(#37-41): Add domains, ideas, relationships, agents, widgets schema
...
Schema additions for issues #37-41:
New models:
- Domain (#37 ): Life domains (work, marriage, homelab, etc.)
- Idea (#38 ): Brain dumps with pgvector embeddings
- Relationship (#39 ): Generic entity linking (blocks, depends_on)
- Agent (#40 ): ClawdBot agent tracking with metrics
- AgentSession (#40 ): Conversation session tracking
- WidgetDefinition (#41 ): HUD widget registry
- UserLayout (#41 ): Per-user dashboard configuration
Updated models:
- Task, Event, Project: Added domainId foreign key
- User, Workspace: Added new relations
New enums:
- IdeaStatus: CAPTURED, PROCESSING, ACTIONABLE, ARCHIVED, DISCARDED
- RelationshipType: BLOCKS, BLOCKED_BY, DEPENDS_ON, etc.
- AgentStatus: IDLE, WORKING, WAITING, ERROR, TERMINATED
- EntityType: Added IDEA, DOMAIN
Migration: 20260129182803_add_domains_ideas_agents_widgets
2026-01-29 12:29:21 -06:00
Jason Woltje
dd5b3117a7
docs: Restructure documentation with Bookstack-compatible hierarchy
...
- Organized docs into numbered shelf/book/chapter/page structure
- Created comprehensive README.md with project overview
- Added Getting Started book (quick start, installation, configuration)
- Added Development book (workflow, testing, type sharing)
- Added Architecture book (design principles, PDA-friendly patterns)
- Added API Reference book (conventions, authentication)
- Moved TYPE-SHARING.md to proper location
- Updated all cross-references in main README
- Created docs/README.md as master index
- Removed old QA automation reports
- Removed deprecated SETUP.md (content split into new structure)
Documentation structure follows Bookstack best practices:
- Numbered books: 1-getting-started, 2-development, 3-architecture, 4-api
- Numbered chapters and pages for ordering
- Clear hierarchy and navigation
- Cross-referenced throughout
Complete documentation available at: docs/README.md
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com >
2026-01-28 17:46:33 -06:00