MassGen
Coordinate multiple models in parallel to refine, critique, and vote on a final answer.
- Source repo
- massgen/MassGen
- Stars
- ★ 1.1k
- Last updated
- 4mo ago
- License
- NOASSERTION
- Primary language
- Python
- FA score
- 51/100 · Major gaps
At a glance
- How it runs
- Works with
- Universal · cross-platformCodex · Claude Code · OpenAI API · Claude API
- Cost
- Free software; you pay for model usage
- Setup effort
- Medium · a few setup steps
- You'll need
- Typical use
- A research team wants several models to investigate and critique a difficult question before receiving a voted, consolidated response.
- Not a fit if
- Users unwilling to supply paid OpenAI, Anthropic, or Google API keys
- Teams needing stable production APIs despite expected breaking changes
- Source review
- 51/100 · Major gaps
What does this agent do, and when should you use it?
MassGen is a Python CLI-based multi-agent orchestration system that assigns the same task to multiple model-backed agents. Its orchestrator coordinates shared summaries, iterative refinement, restarts, and voting to select a collectively validated final answer. The default interface is a Textual terminal UI with timelines, agent cards, and vote tracking; Web UI, Rich display, automation mode, and an OpenAI-compatible HTTP server are also documented. YAML configuration, a Python API, and LiteLLM integration support execution across OpenAI, Anthropic, Gemini, Grok, Claude Code, Antigravity CLI, vLLM, SGLang, and LM Studio paths. Runs produce agent outputs, coordination events, vote data, execution metadata, and debug logs, while project state can be organized under .massgen/.
A user submits a task through the massgen CLI, a YAML configuration, or massgen.run(). The system calls the configured backends for an agent or agents, has agents work in parallel, exchange working summaries, critique answers, and vote when convergence criteria are met. It can use provider-native tools or configure stdio and streamable-http MCP servers through mcp_servers, with allowed_tools and exclude_tools controls. For file workflows, agents can operate in cwd workspaces and access context_paths; the run records outputs, vote.json, coordination_events.json, execution_metadata.yaml, and final results in its log structure. massgen serve exposes GET /health and POST /v1/chat/completions, including non-streaming and SSE responses plus OpenAI-style tool calling.
- A research team wants several models to investigate and critique a difficult question before receiving a voted, consolidated response.
- A software team needs Claude Code or another configured backend to inspect a project, generate implementation work, or create tests in a controlled workspace.
- A platform engineer wants to expose a multi-agent workflow to an existing OpenAI-compatible client through massgen serve.
- An automation developer needs to call parallel model combinations from scripts or LiteLLM and consume structured status and log output.
- A team needs agents to use weather, search, or internal services by assigning one or more MCP servers in YAML.
How do you install or deploy this agent?
MassGen requires Python 3.11+ and credentials for any cloud model backend you choose. Install and start its setup flow with:
pip install massgen
uv run massgen --setup
uv run massgen --quickstartPlace the required keys, such as OPENAI_API_KEY, ANTHROPIC_API_KEY, GOOGLE_API_KEY, or XAI_API_KEY, in a .env file in the current working directory. --setup can configure keys and optionally offer Docker images for code execution and skills; Docker is not required for the base installation.
How do you use this agent?
After quickstart, launch interactive mode with:
uv run massgenOr run one prompt:
uv run massgen "Explain machine learning"For a configured multi-agent run:
massgen --config @examples/basic/multi/three_agents_default "Analyze the pros and cons of renewable energy"To expose an HTTP API:
massgen serve --host 0.0.0.0 --port 4000 --config path/to/config.yaml --default-model gpt-5Define multiple agents in YAML with an id, backend.type, and backend.model. Add mcp_servers to a backend when agents need external MCP tools.
What are this agent's strengths and limitations?
- Its collaboration model has every agent tackle the full task, exchange critiques, refine iteratively, and vote, rather than merely chaining specialized roles.
- It offers a terminal TUI, automation CLI, Python API, LiteLLM registration, and an OpenAI-compatible HTTP API for both interactive and programmatic use.
- It documents cloud-provider, Claude Code, Antigravity CLI, and local vLLM, SGLang, and LM Studio execution paths.
- MCP integration supports both stdio and streamable-http transports, with explicit tool allowlists and exclusions.
- Structured coordination events, votes, outputs, and execution metadata make runs inspectable and debuggable.
- Cloud backends require users to supply the relevant API keys, and cost, rate limits, and capabilities remain dependent on the chosen provider.
- The project identifies itself as early-stage and warns that breaking architectural changes are expected.
- Agents with filesystem permissions can read, write, modify, and delete files in permitted directories, so writable context paths require careful scoping and backups.
- Some features add runtime dependencies, including Docker for code execution, Node.js for some MCP servers, and local model services for local inference.
- The permission engine is opt-in, and its guardrail prompt is documented as best-effort alignment; the OS sandbox is presented as the primary enforcement layer.
How does this agent compare with similar options?
The project says its approach extends AG2-style multi-agent conversation and iterative-refinement ideas, and it links comparison pages for CrewAI, LangGraph, and AutoGen/AG2. Relative to a single-model call, MassGen's distinguishing workflow is parallel full-task execution, peer feedback, and vote-based convergence; quality and cost still depend on the configured models and tools.
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| MassGen This agent | 51 · Major gaps | CLIFree + model costs | ★ 1.1k | 4mo ago | Python | Codex · Claude Code · OpenAI API · Claude API |
| Polter Terminal Agent Supervisor | 80 · Good | Desktop appFree + model costs | ★ 20 | 2d ago | Zig | Claude Code |
| Jevbridge Decision Sidecar | 62 · Some gaps | CLIFree + model costs | ★ 48 | 1mo ago | TypeScript | Codex · OpenAI API · Claude API |
| tRPC-Agent-Go | 53 · Major gaps | Library / SDKFree + model costs | ★ 1.9k | 1d ago | Go | OpenAI API |
How does FollowAgents rate this agent?
Why each dimension lost points
Evidence shows a permission engine (v0.1.97) and approval mechanisms, but implementation details are not provided; data flow transparency is insufficient, sensitive data handling is not clearly specified; dependency security lacks vulnerability scanning evidence; external effects have sandbox and approval controls, but rollback mechanisms are unclear; source attribution is based only on repository metadata, publisher unverified.
Self-consistency is good, README and pyproject.toml are largely consistent; dependency availability unverified, many dependencies but no lock file; failure messages not clearly documented.
Audience is clear (developers/researchers), scenarios diverse; capability boundaries described but not detailed; trigger precision via CLI parameters and config; environment fit supports multiple platforms and backends.
Information architecture clear with TOC and doc links; install notes detailed; naming stable; examples abundant; known limitations not explicitly listed; license Apache-2.0; versioning changelog exists; maintenance responsibility unclear.
Output usability high with multiple display modes; marginal value evident with multi-agent collaboration; cost-benefit lacks concrete data.
Claim traceability moderate, some features documented; cross-source corroboration insufficient; fact vs inference not clearly separated.
- Publisher identity unverified, exercise caution regarding supply chain risks.
- Many dependencies with some pinned versions, but no vulnerability scanning or lock file provided, posing dependency security risks.
- Implementation details of permission engine and approval mechanisms not shown in provided files, require further review.
- Handling of sensitive data (e.g., API keys) storage and transmission not clearly specified.
Recent releases
Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.
-
Release notes excerpt
🚀 Release Highlights — v0.1.97 (2026-06-12) Theme: Application-Layer Permission Engine — the opt-in approval pipeline that complements v0.1.96's OS sandbox. Defense in depth: the OS layer enforces, the app layer keeps a human in the loop on the risky calls. 🛡️ Layered permission engine (hardline → rules → risk) - Hardline floor: a non-overridable blocklist denies catastrophic commands (rm -rf /, fork bombs, raw-disk dd) regardless of any rule or mode. …View on GitHub ↗ -
Release notes excerpt
🚀 Release Highlights — v0.1.96 (2026-06-10) v0.1.96 — OS-Level Agent Sandboxing — adds an opt-in OS sandbox for agent command execution via Anthropic's [sandbox-runtime](https://github.com/anthropic-experimental/sandbox-runtime) (srt: bubblewrap on Linux, Seatbelt on macOS), and hardens MassGen's application-layer permission hook against file-tool escapes. Defense in depth by design: both layers derive from the same path policy and stay active together. Default-off, one knob: command_line_execution_mode: srt. 🛡️ OS-Level Execution Sandbox …View on GitHub ↗ -
Release notes excerpt
🚀 Release Highlights — v0.1.95 (2026-06-08) v0.1.95 — Steering Improvements — extends mid-stream injection from a UI-only capability into a programmatic, headless one, and upgrades it from inject-at-next-boundary into true interrupt-and-resume for the CLI backends. A human (or any UI-less caller) can now drop guidance into an agent *while it is streaming* — over a file inbox in --automation, or through the MCP-middleware hook path — and Codex/Antigravity will interrupt the in-flight turn, fold the steering in, and resume rather than restart. The injection chokepoint stays shared across TU …View on GitHub ↗