multi-agent-orchestrator

πŸ€– AI-powered software development pipeline driven by 6 specialized agents. Transforms plain English requirements into production-ready code β€” fully automating planning, development, code reviews, and deployment configs using Next.js and Groq's Free API.

View the Project on GitHub ParthivPandya/multi-agent-orchestrator

# πŸš€ Multi-Agent AI Orchestrator ### v2 β€” Autonomous AI Agents for End-to-End Software Development **Transform plain English requirements into production-ready, tested, and deployment-configured code** β€” automatically analyzed, planned, developed, reviewed, tested, and deployed by **7 specialized AI agents** working in concert β€” now with **Intelligent Routing, RAG, Agentic Tools, and Resume-on-Failure**. [![Next.js](https://img.shields.io/badge/Next.js-16-black?style=for-the-badge&logo=next.js&logoColor=white)](https://nextjs.org/) [![TypeScript](https://img.shields.io/badge/TypeScript-5.0-3178C6?style=for-the-badge&logo=typescript&logoColor=white)](https://www.typescriptlang.org/) [![Groq](https://img.shields.io/badge/Groq_API-Free_Tier-F55036?style=for-the-badge&logo=groq&logoColor=white)](https://groq.com/) [![Vercel AI SDK](https://img.shields.io/badge/Vercel_AI_SDK-6.0-000000?style=for-the-badge&logo=vercel&logoColor=white)](https://sdk.vercel.ai/) [![Version](https://img.shields.io/badge/version-2.0-6366f1?style=for-the-badge)](https://github.com/ParthivPandya/multi-agent-orchestrator) [![GitHub Repo stars](https://img.shields.io/github/stars/ParthivPandya/multi-agent-orchestrator?style=social)](https://github.com/ParthivPandya/multi-agent-orchestrator/stargazers) [![GitHub forks](https://img.shields.io/github/forks/ParthivPandya/multi-agent-orchestrator?style=social)](https://github.com/ParthivPandya/multi-agent-orchestrator/network/members) [![GitHub issues](https://img.shields.io/github/issues/ParthivPandya/multi-agent-orchestrator?style=flat-square)](https://github.com/ParthivPandya/multi-agent-orchestrator/issues) [![GitHub last commit](https://img.shields.io/github/last-commit/ParthivPandya/multi-agent-orchestrator?style=flat-square)](https://github.com/ParthivPandya/multi-agent-orchestrator/commits/main) [![License](https://img.shields.io/badge/License-MIT-22C55E?style=flat-square)](LICENSE) ### 🌟 If you find this useful, please give it a star! It helps the project grow! 🌟 [πŸš€ Quick Start](#-quick-start) Β· [✨ Features](#-key-features) Β· [πŸ—οΈ Architecture](#️-architecture-v2) Β· [πŸ€– Agents](#-the-7-agents-v2) Β· [πŸ“‘ API Reference](#-api-reference) Β· [πŸ—ΊοΈ Roadmap](#️-roadmap) ---
Landing Page Pipeline Running Pipeline Complete

πŸ†• What’s New in v2

v2 brings 5 major architectural enhancements inspired by competitive analysis of CrewAI, ComposioHQ, AWS Agent Squad, and Kore.ai.

Enhancement Description Inspired By
🧭 Intelligent Routing A pre-classifier routes each request to the optimal pipeline subset, saving tokens and time AWS Agent Squad
βš™οΈ Agentic Tools Agents can now do things: web search, workspace file reading, and static code linting ComposioHQ, WSHobson
πŸ“š RAG Knowledge In-memory TF-IDF retrieval grounds agents in up-to-date framework docs (Next.js 15, React 19, etc.) Kore.ai, CrewAI
πŸ”€ Flows DSL A typed FlowDefinition system maps pipeline modes to agent subsets β€” the foundation for custom crews CrewAI
πŸ’Ύ Stateful Checkpoints Pipeline state is saved to disk after every stage. Resume from any failure point with one API call ComposioHQ

πŸ’‘ Why This Project?

Most AI code generators are **black boxes** β€” you type a prompt, wait, and hope for the best. This project takes a fundamentally different approach: - 🏭 **Software Factory, Not a Chatbot** β€” 7 agents with distinct roles collaborate like a real dev team - 🧭 **Smart Routing** β€” A classifier pre-screens every request and skips unnecessary agents automatically - πŸ”„ **Self-Correcting** β€” The Code Reviewer catches bugs and sends code back for revision automatically - πŸ§ͺ **Tests Included** β€” A dedicated Testing Agent auto-generates unit & integration tests for every project - πŸ“š **RAG-Grounded** β€” Agents consult up-to-date framework docs before generating code β€” no deprecated APIs - βš™οΈ **Tools-Enabled** β€” Agents actively search the web and lint code, not just "think" in text - πŸ’Ύ **Resume on Failure** β€” Every stage is checkpointed. Groq API crash? Resume from where you left off - πŸ›‘οΈ **Battle-Hardened** β€” Every agent call has exponential backoff retry (up to 3 attempts) - πŸ‘οΈ **Full Transparency** β€” Watch every agent think, every tool call fire, every RAG doc retrieved in real-time - πŸ“Š **Analytics Built-in** β€” Per-agent token usage, latency charts, and cost estimates after every run - πŸ’Έ **100% Free** β€” Runs on Groq's free tier. No OpenAI bills. No subscriptions. ### The v2 Pipeline ``` You: "Build a REST API for a todo app with auth" ↓ 🧭 Router β†’ Classify intent β†’ Select pipeline mode ↓ πŸ“š RAG β†’ Retrieve framework docs ↓ πŸ” Analyst β†’ Structured specs πŸ“‹ Planner β†’ Task breakdown πŸ’» Developer β†’ Code + web search ↕ (Self-correcting loop) πŸ”Ž Reviewer β†’ Code quality + lint πŸ§ͺ Tester β†’ Unit test suite πŸš€ Deployer β†’ Docker + CI/CD ↓ You: Complete project + tests, checkpoint saved! πŸŽ‰ ```

✨ Key Features

### 🧭 Intelligent Routing *(v2 New!)* A `llama-3.1-8b-instant` pre-classifier runs before any agent. It detects 4 intent modes and skips irrelevant agents: - `FULL_PIPELINE` β€” All 7 agents (complex build) - `QUICK_FIX` β€” Dev + Reviewer only (bug fix/tweak) - `PLAN_ONLY` β€” Analyst + Planner only (architecture question) - `CODE_REVIEW_ONLY` β€” Reviewer only (paste code for review) ### πŸ“š RAG Knowledge Base *(v2 New!)* Zero-dependency TF-IDF cosine retrieval against 8 curated knowledge chunks. Framework docs for **Next.js 15, React 19, TypeScript 5, Vercel AI SDK 4, Tailwind v4, Node.js, and Prisma** are injected into Developer and Reviewer prompts at runtime to prevent hallucinated or deprecated APIs. ### βš™οΈ Agentic Tools Ecosystem *(v2 New!)* Agents now have access to real tools: - **`searchWeb`** β€” DuckDuckGo Instant Answer API (free, no key needed) - **`readFile`** β€” Sandboxed workspace file reader (path-traversal safe) - **`lintCode`** β€” 13-rule static linter with 0-100 quality score (checks for `eval`, hardcoded secrets, XSS, `any` types, React key props, and more) All tool calls stream live to the **⚑ Agent Activity** feed in the UI. ### πŸ’Ύ Stateful Checkpoints *(v2 New!)* Every agent stage writes a JSON checkpoint to `.workspace/checkpoints/`. If the pipeline fails (Groq rate limit, network error, etc.), resume exactly where you left off by passing `resumeCheckpointId` to the API. ### πŸ”€ Pipeline Flows DSL *(v2 New!)* A `FlowDefinition` system maps every pipeline mode to a typed, ordered list of agent nodes. This is the extensible foundation for user-defined custom crews β€” just add a YAML parser on top. ### πŸ”„ Fully Automated 7-Agent Pipeline Plain English β†’ production code β†’ unit tests β†’ deployment config. Zero manual intervention. ### πŸ§ͺ Auto-Generated Test Suite The Testing Agent writes comprehensive Jest/Pytest/Go tests automatically based on the tech stack detected in the generated code. ### πŸ›‘οΈ Exponential Backoff Retry Every agent call is wrapped in retry logic: 3 automatic attempts with 2s β†’ 4s β†’ 8s backoff. Transient Groq API errors are handled silently. ### πŸ” Developer ↔ Reviewer Loop Built-in feedback cycle: Code Reviewer sends rejected code back to Developer for revision (up to 3 iterations). Reviewer now has lint pre-analysis and RAG docs for more accurate reviews. ### πŸ“Š Analytics Dashboard Toggle the analytics panel after any run to see per-agent token usage, latency bars, and estimated cost β€” all in one view. ### πŸ• Pipeline History & Restore Every run is saved to `localStorage`. Open the History panel, browse past runs with timestamps, and restore any of them with one click. ### ⚑ Real-Time SSE Streaming Every agent's start, tool calls, RAG retrievals, checkpoint saves, and completion stream live to the UI.

πŸ† How Does It Compare?

Feature This Project v2 CrewAI AWS Agent Squad ComposioHQ Kore.ai
πŸ’Έ Completely Free βœ… Groq free tier ❌ ❌ ❌ ❌
πŸ–₯️ Beautiful Web UI βœ… Premium dark theme ⚠️ CLI ⚠️ CLI ⚠️ CLI ⚠️ Enterprise
⚑ Real-time Streaming βœ… SSE events ❌ ❌ ❌ ❌
🧭 Intelligent Routing βœ… 4-mode classifier ⚠️ Partial βœ… Yes ❌ ❌
πŸ“š RAG Knowledge βœ… In-memory TF-IDF βœ… Yes ❌ ❌ βœ… Enterprise
βš™οΈ Agentic Tools βœ… Web + lint + files βœ… Yes ⚠️ Partial βœ… Yes ⚠️ Partial
πŸ’Ύ Resume on Failure βœ… Checkpoints ❌ ❌ ⚠️ Partial ❌
πŸ” Self-Correcting Code βœ… Dev↔Review loop βœ… Yes ⚠️ ⚠️ ⚠️
πŸ§ͺ Auto Test Generation βœ… Dedicated agent ❌ ❌ ❌ ❌
πŸ›‘οΈ Retry on Failure βœ… Exp. backoff ❌ ❌ ❌ ⚠️
πŸ“Š Analytics Dashboard βœ… Built-in ❌ ❌ ❌ βœ… Enterprise
πŸ“¦ Ready-to-Deploy Output βœ… Docker + CI/CD ❌ ❌ ❌ ❌
πŸš€ One-Click Deploy βœ… Vercel button ❌ ❌ ❌ ❌

πŸ—οΈ Architecture v2

flowchart TB
    subgraph Frontend["πŸ–₯️ Frontend (Next.js App Router)"]
        UI[RequirementInput] --> Page[page.tsx]
        Page --> PV[PipelineView]
        Page --> OP[OutputPanel]
        Page --> WV[WorkspaceViewer]
        Page --> AP[AnalyticsPanel]
        Page --> HP[HistoryPanel]
        Page --> AF["⚑ Activity Feed (NEW)"]
        Page --> RB["🧭 Route Banner (NEW)"]
    end

    subgraph API["πŸ“‘ API Layer"]
        Page -->|POST + SSE| Orch["/api/orchestrate"]
        Page -->|POST| Save["/api/workspace"]
    end

    subgraph Pipeline["πŸ”„ Orchestration Pipeline v2"]
        Orch --> O["orchestrator.ts"]

        O --> R0["🧭 Router Agent (NEW)\nclassifyIntent()"]
        R0 -->|FULL_PIPELINE| A1
        R0 -->|QUICK_FIX| A3
        R0 -->|PLAN_ONLY| A1

        subgraph RAG["πŸ“š RAG Layer (NEW)"]
            KB["knowledgeBase.ts\n8 doc chunks"] --> Ret["retriever.ts\nTF-IDF cosine search"]
        end
        Ret -->|top-3 chunks| A3
        Ret -->|top-3 chunks| A4

        A1["πŸ” Requirements Analyst"] --> A2["πŸ“‹ Task Planner"]

        subgraph Tools["βš™οΈ Agentic Tools (NEW)"]
            SW["searchWeb.ts\nDuckDuckGo API"]
            LC["lintCode.ts\n13-rule linter"]
            RF["readFile.ts\nSandboxed reader"]
        end
        SW -->|web refs| A3
        LC -->|lint report| A4
        A2 --> A3["πŸ’» Developer Agent"]
        A3 --> A4["πŸ”Ž Code Reviewer"]
        A4 -->|CHANGES_REQUESTED| A3
        A4 -->|APPROVED| A5["πŸ§ͺ Testing Agent"]
        A5 --> A6["πŸš€ Deployment Agent"]

        subgraph Checkpoint["πŸ’Ύ Checkpoints (NEW)"]
            CP["checkpoint.ts\n.workspace/checkpoints/"]
        end
        A1 & A2 & A3 & A4 & A5 & A6 -->|save state| CP
    end

    subgraph LLM["🧠 Groq API (Free Tier)"]
        R0 -.-|llama-3.1-8b-instant| G[Groq Cloud]
        A1 -.-|llama-3.1-8b-instant| G
        A2 -.-|llama-4-scout-17b| G
        A3 -.-|qwen3-32b| G
        A4 -.-|llama-3.3-70b| G
        A5 -.-|llama-3.3-70b| G
        A6 -.-|llama-3.1-8b-instant| G
    end

    style Frontend fill:#1a1a2e,color:#e0e0ff
    style API fill:#16213e,color:#e0e0ff
    style Pipeline fill:#0f3460,color:#e0e0ff
    style LLM fill:#533483,color:#e0e0ff
    style RAG fill:#1a2a1e,color:#e0e0ff
    style Tools fill:#2a1a1e,color:#e0e0ff
    style Checkpoint fill:#2a2a1a,color:#e0e0ff

πŸ€– The 7 Agents (v2)

# Agent Model Purpose Max Tokens
0 🧭 Router / Classifier (New!) llama-3.1-8b-instant Classifies intent β†’ routes to optimal pipeline subset (FULL / QUICK_FIX / PLAN_ONLY / REVIEW_ONLY) 512
1 πŸ” Requirements Analyst llama-3.1-8b-instant Parses raw English β†’ structured JSON specification with FRs, NFRs, acceptance criteria, tech stack 2,048
2 πŸ“‹ Task Planner llama-4-scout-17b-16e-instruct Breaks specifications β†’ ordered tasks with IDs, priorities, dependencies, and sizing 2,048
3 πŸ’» Developer Agent qwen/qwen3-32b Writes complete, production-ready source code β€” augmented with RAG docs + web search results 4,096
4 πŸ”Ž Code Reviewer llama-3.3-70b-versatile Reviews code with RAG docs + pre-computed lint analysis. Returns APPROVED or CHANGES_REQUESTED with score 2,048
5 πŸ§ͺ Testing Agent llama-3.3-70b-versatile Auto-generates unit & integration tests matched to the tech stack. Non-fatal β€” pipeline continues if it fails 3,072
6 πŸš€ Deployment Agent llama-3.1-8b-instant Generates Dockerfile, docker-compose.yml, CI/CD pipelines, and deployment guides 2,048

All agents are individually wrapped in withRetry() β€” up to 3 attempts with exponential backoff (2s β†’ 4s β†’ 8s). The Router Agent always falls back to FULL_PIPELINE on any error so it never blocks users.

v2 Pipeline Flow Modes

Mode Agents Run Token Savings Best For
FULL_PIPELINE All 7 β€” Build a new feature / app
QUICK_FIX Router + Dev + Reviewer ~60% Small bug fix, style tweak
PLAN_ONLY Router + Analyst + Planner ~70% Architecture planning
CODE_REVIEW_ONLY Router + Reviewer ~80% Review pasted code

Developer ↔ Reviewer Feedback Loop (v2)

RAG retrieves framework docs
         ↓
Developer writes code + web search context
         ↓
Static linter runs (0-100 score)
         ↓
Code Reviewer reviews (with RAG + lint report)
         ↓
   APPROVED? ──── Yes ──→ Testing Agent β†’ Deployment Agent
         ↓                        ↓
        No (CHANGES_REQUESTED)   Checkpoint saved to disk
         ↓
Developer revises (max 3 iterations)

πŸš€ Quick Start

Prerequisites

Installation

# 1. Clone the repository
git clone https://github.com/ParthivPandya/multi-agent-orchestrator.git
cd multi-agent-orchestrator

# 2. Install dependencies
npm install

# 3. Set up environment variables
cp .env.example .env.local

Configuration

Edit .env.local and add your Groq API key:

# Get your free key at https://console.groq.com
GROQ_API_KEY=gsk_your_api_key_here

Run

# Development server
npm run dev

# Open in browser
# β†’ http://localhost:3000

Build for Production

npm run build
npm start

πŸ“ Project Structure (v2)

multi-agent-system/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ page.tsx                        # Main UI β€” routing banner, activity feed, checkpoint state
β”‚   β”‚   β”œβ”€β”€ layout.tsx                      # Root layout with SEO metadata
β”‚   β”‚   β”œβ”€β”€ globals.css                     # Premium dark design system + animations
β”‚   β”‚   └── api/
β”‚   β”‚       β”œβ”€β”€ orchestrate/route.ts        # POST β€” 7-agent pipeline + resumeCheckpointId support
β”‚   β”‚       β”œβ”€β”€ agent/route.ts              # POST β€” Test individual agents
β”‚   β”‚       └── workspace/
β”‚   β”‚           β”œβ”€β”€ route.ts                # GET/POST β€” List & save workspace files
β”‚   β”‚           └── [project]/file/
β”‚   β”‚               └── route.ts            # GET β€” Read individual file content
β”‚   β”œβ”€β”€ lib/
β”‚   β”‚   β”œβ”€β”€ orchestrator.ts                 # 🎯 v2 Pipeline controller β€” routing + RAG + tools + checkpoints
β”‚   β”‚   β”œβ”€β”€ context.ts                      # Shared state between agents
β”‚   β”‚   β”œβ”€β”€ fileParser.ts                   # Extracts code files from markdown output
β”‚   β”‚   β”œβ”€β”€ history.ts                      # localStorage pipeline history + analytics
β”‚   β”‚   β”œβ”€β”€ types/index.ts                  # TypeScript types β€” extended with all v2 types
β”‚   β”‚   β”œβ”€β”€ agents/
β”‚   β”‚   β”‚   β”œβ”€β”€ routerAgent.ts              # 🧭 Router/Classifier β€” intent classification (v2 NEW)
β”‚   β”‚   β”‚   β”œβ”€β”€ requirementsAnalyst.ts      # Agent 1 β€” Requirement parsing
β”‚   β”‚   β”‚   β”œβ”€β”€ taskPlanner.ts              # Agent 2 β€” Task decomposition
β”‚   β”‚   β”‚   β”œβ”€β”€ developer.ts                # Agent 3 β€” Code generation (+ RAG/search context)
β”‚   β”‚   β”‚   β”œβ”€β”€ codeReviewer.ts             # Agent 4 β€” Code review (+ RAG/lint context)
β”‚   β”‚   β”‚   β”œβ”€β”€ testingAgent.ts             # Agent 5 β€” Unit & integration test generation
β”‚   β”‚   β”‚   └── deploymentAgent.ts          # Agent 6 β€” Deployment configs
β”‚   β”‚   β”œβ”€β”€ tools/                          # βš™οΈ Agentic Tools (v2 NEW)
β”‚   β”‚   β”‚   β”œβ”€β”€ index.ts                    # Barrel export
β”‚   β”‚   β”‚   β”œβ”€β”€ searchWeb.ts                # DuckDuckGo Instant Answer API
β”‚   β”‚   β”‚   β”œβ”€β”€ readFile.ts                 # Sandboxed workspace file reader
β”‚   β”‚   β”‚   └── lintCode.ts                 # 13-rule static linter (0-100 score)
β”‚   β”‚   β”œβ”€β”€ rag/                            # πŸ“š RAG Knowledge Base (v2 NEW)
β”‚   β”‚   β”‚   β”œβ”€β”€ knowledgeBase.ts            # 8 curated doc chunks (Next.js 15, React 19, TS5, etc.)
β”‚   β”‚   β”‚   └── retriever.ts                # TF-IDF cosine similarity retrieval + keyword boosting
β”‚   β”‚   β”œβ”€β”€ flows/                          # πŸ”€ Flows DSL (v2 NEW)
β”‚   β”‚   β”‚   └── types.ts                    # FlowDefinition, FlowAgentNode, BUILT_IN_FLOWS
β”‚   β”‚   β”œβ”€β”€ workspace/                      # πŸ’Ύ Stateful Orchestration (v2 NEW)
β”‚   β”‚   β”‚   └── checkpoint.ts               # Save/load/list checkpoints to .workspace/checkpoints/
β”‚   β”‚   └── prompts/
β”‚   β”‚       β”œβ”€β”€ analyst.prompt.ts           # System prompt for Agent 1
β”‚   β”‚       β”œβ”€β”€ planner.prompt.ts           # System prompt for Agent 2
β”‚   β”‚       β”œβ”€β”€ developer.prompt.ts         # System prompt for Agent 3 (+ RAG injection)
β”‚   β”‚       β”œβ”€β”€ reviewer.prompt.ts          # System prompt for Agent 4 (+ RAG + lint injection)
β”‚   β”‚       β”œβ”€β”€ testing.prompt.ts           # System prompt for Agent 5
β”‚   β”‚       └── deployer.prompt.ts          # System prompt for Agent 6
β”‚   └── components/
β”‚       β”œβ”€β”€ RequirementInput.tsx            # Input form with example prompts
β”‚       β”œβ”€β”€ PipelineView.tsx                # v2: Router node + skipped agent styling
β”‚       β”œβ”€β”€ AgentCard.tsx                   # v2: Supports 'skipped' status
β”‚       β”œβ”€β”€ OutputPanel.tsx                 # Formatted/Raw/JSON output tabs
β”‚       β”œβ”€β”€ WorkspaceViewer.tsx             # File tree + code viewer + save + ZIP export
β”‚       β”œβ”€β”€ AnalyticsPanel.tsx              # Per-agent token/latency bar chart
β”‚       └── HistoryPanel.tsx                # Slide-in past-runs panel with restore
β”œβ”€β”€ .workspace/
β”‚   └── checkpoints/                        # πŸ’Ύ Pipeline checkpoint files (auto-created)
β”œβ”€β”€ workspace/                              # πŸ“‚ Generated projects are saved here
β”œβ”€β”€ .env.example                            # Environment variable template
β”œβ”€β”€ package.json
└── tsconfig.json

πŸ“‘ API Reference

POST /api/orchestrate

Runs the pipeline with intelligent routing and real-time SSE streaming.

Request:

{
  "requirement": "Build a REST API for a todo app with authentication",
  "resumeCheckpointId": "optional-checkpoint-id-for-resume"
}

Response: Server-Sent Events stream

Event Type Description
route_decision (v2 New) Router classified intent β€” includes mode, reasoning, skipped agents, confidence
rag_retrieval (v2 New) RAG retrieved relevant docs β€” includes source names and chunks
tool_call (v2 New) An agent is calling a tool (searchWeb, lintCode, etc.)
tool_result (v2 New) Tool returned a result β€” includes output and duration
checkpoint_saved (v2 New) Pipeline state saved to disk β€” includes checkpoint ID
stage_start Agent has started processing
stage_complete Agent finished β€” includes output, token count, and latency
stage_error Agent encountered an unrecoverable error (after all retries)
retry_attempt An agent failed and is being retried
iteration_info Developer↔Reviewer loop iteration update
pipeline_complete All agents finished
final_result Complete results payload + checkpointId + routeDecision

Resume from checkpoint:

{
  "requirement": "Build a REST API for a todo app with authentication",
  "resumeCheckpointId": "lk3x2a-f4c1"
}

The pipeline will replay completed stages to the UI and continue from the last saved state.


POST /api/agent

Test an individual agent in isolation.

Request:

{
  "agentName": "testing-agent",
  "input": "function add(a, b) { return a + b; }"
}

Valid agent names: router-agent, requirements-analyst, task-planner, developer, code-reviewer, testing-agent, deployment-agent


POST /api/workspace

Save generated project files (source + tests + configs) to disk.

Request:

{
  "projectName": "my-todo-app",
  "files": [
    { "path": "src/index.ts", "content": "..." },
    { "path": "src/index.test.ts", "content": "..." },
    { "path": "Dockerfile", "content": "..." }
  ]
}

πŸ›‘οΈ Rate Limiting & Resilience

Setting Value
Inter-agent delay 1,500ms (prevents Groq rate limits)
Max retry attempts per agent 3
Retry backoff schedule 2s β†’ 4s β†’ 8s (exponential)
Max review iterations 3
Testing Agent failure Non-fatal β€” pipeline continues to deployment
Router failure Always falls back to FULL_PIPELINE β€” never blocks users
Web search timeout 5s (non-blocking)
RAG context cap Top-3 chunks per query
Groq free tier RPM 30 requests/min
Groq free tier TPM ~14,400 tokens/min
Max output per agent 512 – 4,096 tokens

πŸ› οΈ Tech Stack

Technology Purpose
Next.js 16 Full-stack React framework (App Router)
TypeScript 5 Type-safe development
Vercel AI SDK v6 Unified LLM interface
@ai-sdk/groq Groq API provider
Groq Cloud Ultra-fast LLM inference (free tier)
TF-IDF (custom) In-memory vector similarity for RAG β€” zero dependencies
DuckDuckGo API Free web search for Developer agent tool calls
Vanilla CSS Custom glassmorphism design system + animations

🚒 Deployment

Deploy with Vercel

  1. Click the button above
  2. Add your GROQ_API_KEY in the environment variables
  3. Deploy β€” you’re done! πŸŽ‰

Note: Checkpoint persistence requires persistent filesystem. Vercel’s ephemeral filesystem means checkpoints will not survive between deployments. Use Railway, Render, or Docker for persistent checkpoints.

Deploy with Docker

# Build the image
docker build -t multi-agent-orchestrator .

# Run the container
docker run -p 3000:3000 -e GROQ_API_KEY=your_key_here multi-agent-orchestrator

πŸ—ΊοΈ Roadmap

βœ… Completed & Shipped


🚧 Coming Soon

1. 🌐 Multi-Provider LLM Support β€” OpenAI, Anthropic, Ollama alongside Groq Add a provider abstraction layer using Vercel AI SDK's built-in multi-provider support. Allow per-agent model selection from the UI, and support local models via Ollama for fully offline usage.
2. βœ‹ Human-in-the-Loop Review β€” Pause pipeline for user approval before deployment Add a "Pause before Deployment" toggle. When the Code Reviewer approves, show a modal with the generated code. User can type corrections or approve to continue.
3. πŸ”— GitHub Integration β€” One-click push generated code to a new GitHub repo Add GitHub PAT configuration in settings. A "Push to GitHub" button creates a new repo via the GitHub API and auto-commits all generated files.
4. ⚑ Streaming Token-by-Token Output β€” Watch code appear in real time Switch agents from `generateText` to `streamText` (Vercel AI SDK). Stream individual tokens to the OutputPanel so users see code being written character by character.
5. πŸ“ Custom YAML Flows β€” Define your own agent crews in YAML Build on the v2 `FlowDefinition` system to allow users to write `orchestrator.yaml` files defining custom crews (e.g., a parallel Security + Developer crew inspired by CrewAI).
6. πŸ”Œ Expanded RAG Knowledge Base β€” More frameworks, user-uploadable docs Allow users to upload their own documentation (e.g., internal API specs, company style guides) to the RAG knowledge base for framework-specific and company-specific code generation.

πŸ”­ Future Vision

Feature Description
🧠 Agent Memory Learn user preferences across sessions (coding style, language, frameworks)
πŸ–ΌοΈ Vision-to-Code Upload UI mockups/screenshots β†’ generate matching frontend code
🌍 Multi-Language Output Support Python, Go, Rust, Java β€” not just TypeScript/JavaScript
πŸ—οΈ Project Templates Pre-built starters (Next.js, Express, FastAPI) to reduce token usage
🀝 Collaborative Mode Multiple users working on the same pipeline in real-time
πŸ” Security Scanner Agent Dedicated OWASP-based security audit agent

🀝 Contributing

Contributions are welcome! The project is actively growing.

How to Get Started

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Commit your changes: git commit -m 'Add amazing feature'
  4. Push to the branch: git push origin feature/amazing-feature
  5. Open a Pull Request

Good First Issues

Task Difficulty Description
πŸ“ YAML Flow Parser Medium Add a YAML parser on top of src/lib/flows/types.ts to support custom crew definitions
🌐 Multi-Provider LLM Medium Add @ai-sdk/openai as an alternative provider option
βœ‹ Human-in-the-Loop Medium Add a pause modal before the Deployment Agent runs
πŸ”— GitHub Push Medium Create lib/github.ts using the GitHub REST API
⚑ Token Streaming Hard Switch agents from generateText to streamText
πŸ“š Expand RAG KB Easy Add more knowledge chunks to src/lib/rag/knowledgeBase.ts
πŸ“± Mobile UI Easy Make the layout responsive for smaller screens

πŸ’‘ Tip for new contributors: The v2 architecture separates concerns cleanly β€” each new feature slot is in its own directory (tools/, rag/, flows/, workspace/). Adding a new tool takes ~30 lines. Adding a new knowledge chunk to the RAG base takes 10 lines.


πŸ“„ License

This project is licensed under the MIT License β€” see the LICENSE file for details.


### Built with ❀️ by [Parthiv Pandya](https://github.com/ParthivPandya) **Next.js** Β· **Vercel AI SDK** Β· **Groq API** Β· **TypeScript** Β· **RAG** Β· **Agentic Tools** --- If this project saved you time or taught you something, consider giving it a ⭐ **[⬆ Back to Top](#-multi-agent-ai-orchestrator)**