open-multi-agent
Open Multi-Agent (OMA) is an AI agent orchestration framework for TypeScript backends that runs dynamic workflows in Node.js. It converts a goal into a task DAG at runtime, executes it with a deterministic scheduler, and records the run for inspection and replay. It is for developers building multi-agent systems that need control, reliability, and observability in production.
✨ Key features
- Dynamic orchestration: coordinator builds task DAG at runtime
- Controlled execution: preview, approve, suspend, and replay plans
- Reliability: checkpoints, retries, timeouts, loop detection, budgets
- Observability: traces, execution receipts, offline Run Viewer
- Safety: default-deny tools, gated calls, privacy controls
- Open runtime: supports LLM agents and external CLIs (Claude Code, etc.)
🎯 Use cases
- Build a PR review agent that analyzes pull requests
- Create a security analysis platform for WordPress
- Run autonomous agent loops with local quantized models offline
- Turn documents into slide-ready charts with a multi-role council
- Integrate multi-agent orchestration into existing Node.js backends
📦 Installation
🧰 Requirements: Requires Node.js 20 or newer; for production use a maintained LTS release. API keys needed for hosted models (e.g., OPENAI_API_KEY) unless using local or scripted models.
Scaffold a new project:
npm create oma-app@latest my-oma
Or add to an existing backend:
npm install @open-multi-agent/core
🚀 Usage
import { OpenMultiAgent } from '@open-multi-agent/core'
const oma = new OpenMultiAgent({ defaultProvider: 'openai', defaultModel: 'gpt-5.4' })
const team = oma.createTeam('research-team', {
name: 'research-team',
agents: [
{ name: 'researcher', systemPrompt: 'Find the relevant facts.' },
{ name: 'analyst', systemPrompt: 'Compare evidence and identify tradeoffs.' },
],
sharedMemory: true,
})
const result = await oma.runTeam(team, 'Compare three approaches and recommend one.')
console.log(result.agentResults.get('coordinator')?.output)
⚠️ Good to know
The project launched 2026-04-01 under MIT; no other limitations stated.
❓ FAQ
What Node.js version is required?
Requires Node.js 20 or newer; for production, use a currently maintained Node.js LTS release.
Can I run OMA without an API key?
Yes, the scaffolded demo needs no API key and makes no model request; it uses scripted model responses to drive the scheduler.
What orchestration modes are available?
runTeam() plans from a goal, runAgent() runs a single agent, and runTasks() executes an explicit pipeline.
How can I inspect a run?
Each run is recorded as data you can read back; you can replay the task DAG and span waterfall in the offline Run Viewer.
📊 Repository
🤖 Overview, features, install steps and FAQ were generated from the project's README on Sep 4, 2026. Always check the original source before running commands.