Multi-Agent Code Orchestration - Intelligent AI Agent Coordination
Features • Installation • Quick Start • Architecture • Commands • Contributing • License
Orion Code is a multi-agent orchestration system that acts as a virtual Tech Lead, coordinating specialized AI agents to collaborate on software projects. It provides an interactive TUI (Terminal User Interface) for seamless interaction, with a REST API backend and a modern landing page.
- Interactive TUI - Beautiful terminal interface with Ink 5/React 18
- Mouse Wheel Scroll - Scroll message history with mouse wheel or Page Up/Down
- Multi-Agent Orchestration - AI-powered task orchestration via Ollama (free, local)
- Inline Bash Mode - Execute shell commands directly from TUI with
!prefix - DDD Architecture - Clean, maintainable codebase with Domain-Driven Design
- REST API Backend - Fastify 5-based backend with JWT + API Key authentication
- Persistent Login - Tokens persist on device until explicit logout
- PostgreSQL Database - Full persistence with Drizzle ORM
- Intelligent Orchestration - AI-powered task planning and implementation via
/implement - Natural Language Input - Type natural language to create and execute tasks
- Interactive Selection Menus - Arrow-key navigation for commands
- Landing Page - Modern React landing page with Tailwind CSS
- Docker Support - Containerized deployment with docker-compose
- Node.js >= 18.0.0
- npm >= 10.0.0
- PostgreSQL (for production)
# Clone the repository
git clone https://github.com/vinnytherobot/orion-code.git
cd orion-code
# Install dependencies
npm install
# Build all packages
npm run build
# Start development servers
npm run devCopy .env.example to .env and configure:
cp .env.example .envRequired variables:
DATABASE_URL- PostgreSQL connection stringJWT_SECRET- Secret key for JWT tokensORION_API_URL- Backend API URL (default: http://localhost:3000)
# Start all development servers
npm run dev# Start the TUI
npm run dev:tui
# Start the backend API
npm run dev:backend
# Start the landing page
npm run dev:landingorion-code/
├── apps/
│ ├── backend/ # Fastify API server
│ ├── tui/ # TUI interface (Ink/React)
│ └── landing/ # Landing page (React + Vite + Tailwind)
├── packages/
│ ├── shared/ # Shared utilities (Result, AppError, Logger, Config)
│ ├── domain/ # Domain entities (Agent, Task, Project)
│ ├── application/ # Use cases (AnalyzeProject, Plan, Implement)
│ └── infrastructure/ # Database, providers, cache, orchestration
├── docs/ # Documentation and specs
└── .github/ # GitHub templates
┌─────────────────────────────────────┐
│ Presentation (TUI/API) │
├─────────────────────────────────────┤
│ Application Layer │
│ (Use Cases, DTOs) │
├─────────────────────────────────────┤
│ Domain Layer │
│ (Entities, Value Objects) │
├─────────────────────────────────────┤
│ Infrastructure Layer │
│ (Database, Providers, Cache) │
└─────────────────────────────────────┘
shared (zero deps)
↑
domain (depends on shared)
↑
application (depends on domain + shared)
↑
infrastructure (depends on domain + shared)
↑
apps (depends on application + infrastructure)
| Agent | Responsibility |
|---|---|
| Planner | Task planning and decomposition |
| Architect | Architecture decisions |
| Backend | Business logic implementation |
| Database | Data persistence |
| Frontend | UI implementation |
| Documentation | Docs generation |
| QA | Test creation |
| Reviewer | Code review |
| DevOps | Infrastructure |
| Security | Security analysis |
| Performance | Optimization |
| Git | Version control |
| Command | Description |
|---|---|
/register <name> <email> <password> |
Register a new user |
/login <email> <password> |
Login to the API |
/logout |
Logout and remove saved credentials |
/me |
Show current user info |
| Command | Description |
|---|---|
/projects |
List all projects |
/create-project <name> <path> [description] |
Create a new project |
/project [id] |
Show project details |
/delete-project [id] |
Delete a project |
| Command | Description |
|---|---|
/tasks [status] |
List active tasks |
/create-task [projectId] <title> [description] |
Create a new task |
/delete-task [taskId] |
Delete a task |
/task-stats [projectId] |
Show task statistics |
| Command | Description |
|---|---|
/agents [role] |
List all available agents |
/init [projectId] |
Initialize agents for a project |
/assign [agentId] [taskId] |
Assign a task to an agent |
/complete [agentId] [result] |
Mark task as completed |
/reset-agent [agentId] |
Reset agent to idle state |
| Command | Description |
|---|---|
/implement [projectId] [taskType] |
Implement a task using AI agents |
/orchestrate [projectId] |
Execute orchestration for pending tasks |
| Command | Description |
|---|---|
/help |
Show available commands |
/status |
Show API status and active agents |
/api-keys [list|create|delete] |
Manage API keys |
/config [key] [value] |
Show or update configuration |
/version |
Show Orion Code version |
/clear |
Clear screen |
/exit |
Exit TUI |
| Command | Description |
|---|---|
!<command> |
Execute shell command directly from TUI |
! (toggle) |
Toggle bash mode on/off |
# Clone and install
git clone https://github.com/vinnytherobot/orion-code.git
cd orion-code
npm install
# Build
npm run build
# Development mode
npm run dev| Script | Description |
|---|---|
npm run build |
Build all packages |
npm run dev |
Watch mode for all packages |
npm run dev:tui |
Watch TUI only |
npm run dev:backend |
Watch backend only |
npm run dev:landing |
Watch landing page only |
npm run lint |
Run Biome linter |
npm run lint:fix |
Fix lint issues |
npm run format |
Format code with Biome |
npm run check |
Run Biome check (lint + format) |
npm run check:fix |
Fix all Biome issues |
npm run typecheck |
Type checking |
npm run test |
Run tests |
npm run clean |
Clean build artifacts |
npm run db:migrate |
Run database migrations |
npm run db:generate |
Generate database migrations |
npm run docker:up |
Start Docker containers |
npm run docker:down |
Stop Docker containers |
The project uses PostgreSQL with Drizzle ORM:
# Run migrations
npm run db:migrate
# Generate new migration
npm run db:generate# Start all services
npm run docker:up
# Stop all services
npm run docker:down
# Rebuild and start
npm run docker:build- Runtime: Node.js + TypeScript
- Framework: Fastify 5
- Database: PostgreSQL 16 + Drizzle ORM
- Auth: JWT + API Key with persistent tokens
- UI Framework: Ink 5 + React 18
- Language: TypeScript
- Framework: React + Vite
- Styling: Tailwind CSS
- UI Components: Radix UI
- Animations: Framer Motion
- Monorepo: npm workspaces + Turborepo
- Linter/Formatter: Biome
- Containerization: Docker + docker-compose
- Ollama (local inference, free)
- OpenAI (GPT-4, GPT-4o, etc.)
- Anthropic (Claude)
- Groq (fast inference)
We welcome contributions! Please see our Contributing Guide for details.
- Report bugs
- Suggest features
- Submit pull requests
- Improve documentation
- Share feedback
This project is licensed under the MIT License - see the LICENSE file for details.
- Ink - React for TUI
- Fastify - Backend framework
- Drizzle ORM - Database ORM
- Turborepo - Monorepo tooling
- Biome - Linter and formatter
- Vite - Build tool for landing page
- Tailwind CSS - Utility-first CSS
- Radix UI - UI components
- Framer Motion - Animations
Made with ❤️ by vinnytherobot and the Orion Code Community