Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
Add NestJS-based orchestrator service structure for M6-AgentOrchestration. Changes: - Migrate from Express to NestJS architecture - Add health check endpoint module - Add placeholder modules: coordinator, git, killswitch, monitor, queue, spawner, valkey - Update configuration for NestJS - Update lockfile for new dependencies This is foundational work for M6-AgentOrchestration milestone. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
65 lines
1.5 KiB
Markdown
65 lines
1.5 KiB
Markdown
# Mosaic Orchestrator
|
|
|
|
Agent orchestration service for Mosaic Stack built with NestJS.
|
|
|
|
## Overview
|
|
|
|
The Orchestrator is the execution plane of Mosaic Stack, responsible for:
|
|
|
|
- Spawning and managing Claude agents
|
|
- Task queue management (Valkey-backed)
|
|
- Agent health monitoring and recovery
|
|
- Git workflow automation
|
|
- Quality gate enforcement callbacks
|
|
- Killswitch emergency stop
|
|
|
|
## Architecture
|
|
|
|
Part of the Mosaic Stack monorepo at `apps/orchestrator/`.
|
|
|
|
Controlled by `apps/coordinator/` (Quality Coordinator).
|
|
Monitored via `apps/web/` (Agent Dashboard).
|
|
|
|
## Development
|
|
|
|
```bash
|
|
# Install dependencies (from monorepo root)
|
|
pnpm install
|
|
|
|
# Run in dev mode (watch mode)
|
|
pnpm --filter @mosaic/orchestrator dev
|
|
|
|
# Build
|
|
pnpm --filter @mosaic/orchestrator build
|
|
|
|
# Start production
|
|
pnpm --filter @mosaic/orchestrator start:prod
|
|
|
|
# Test
|
|
pnpm --filter @mosaic/orchestrator test
|
|
|
|
# Generate module (NestJS CLI)
|
|
cd apps/orchestrator
|
|
nest generate module <name>
|
|
nest generate controller <name>
|
|
nest generate service <name>
|
|
```
|
|
|
|
## NestJS Architecture
|
|
|
|
- **Modules:** Feature-based organization (spawner, queue, monitor, etc.)
|
|
- **Controllers:** HTTP endpoints (health, agents, tasks)
|
|
- **Services:** Business logic
|
|
- **Providers:** Dependency injection
|
|
|
|
## Configuration
|
|
|
|
Environment variables loaded via @nestjs/config.
|
|
See `.env.example` for required vars.
|
|
|
|
## Documentation
|
|
|
|
- Architecture: `/docs/ORCHESTRATOR-MONOREPO-SETUP.md`
|
|
- API Contracts: `/docs/M6-ISSUE-AUDIT.md`
|
|
- Milestone: M6-AgentOrchestration (0.0.6)
|