Marcus: A Stoic Approach to Multi-Agent Software Development#
Philosophy#
Marcus embodies a radical departure from prescriptive multi-agent frameworks. Named after Marcus Aurelius, the platform embraces Stoic principles: control what you can, accept what you cannot, and learn from what emerges.
The technical core of that philosophy: board-mediated coordination β a modern, agent-native take on the classical Blackboard pattern (Hayes-Roth, 1985), applied to autonomous LLM agents coordinating over MCP. Every other framework today treats coordination as a conversation problem. Marcus treats it as a state management problem. Agents read and write to a shared board; they never message each other directly.
The Three Agent Invariants#
Marcus is a board-mediated, blackboard-architecture Multi-Agent System. Three invariants are non-negotiable:
Agents self-select work. Agents pull tasks via
request_next_task. Marcus never pushes work, never assigns without request, never forces a specific agent onto a specific task.Agents make all implementation decisions. Marcus says WHAT to build and WHY it matters. Marcus never says HOW β no library choices, no patterns, no internal code structure. Two agents given the same task must be able to produce legitimately different implementations.
Agents communicate exclusively through the board. No agent-to-agent direct communication. No Marcus-to-agent push outside task assignment. The board is the only channel.
Core Principles#
1. Bring Your Own Agent (BYOA)#
Marcus is agent-agnostic. We donβt prescribe how your agents should think or operate. Like a good director of engineering, we provide context, clear objectives, and then trust professionals to deliver. Your agents β whether Claude Code, Codex, Gemini CLI, Kimi, AutoGen, LangGraph, or a custom MCP runtime β bring their own capabilities and approaches.
2. Context Over Control#
We believe agents with the right context and visibility into dependencies can successfully complete tasks. Marcus provides:
Clear task definitions
Dependency awareness
Implementation context from previous work (artifacts, decisions)
Impact visibility for downstream tasks
We donβt micromanage HOW agents accomplish tasks.
3. Board-Based Communication Only#
Agents communicate exclusively through the project board by logging decisions and artifacts that affect others. No direct agent-to-agent communication. This serves multiple purposes:
Preserves context windows β eliminates conversation overload
Maintains transparency β all coordination is visible
Reduces complexity β no conversation state management
Enables research β complete audit trail for analysis
Survives failure β board state outlives any single agent
4. Embrace Stochastic Reality#
Real-world software development is random and messy. Agents work in parallel, sometimes duplicate effort, sometimes discover better solutions by accident. Marcus doesnβt fight this β it embraces it. The non-linearity often leads to innovative solutions perfectly coordinated systems would miss.
5. Safety Through Guardrails, Not Restrictions#
Like a computer vision model that works in daylight but fails at night, we donβt restrict the model β we install bright lights. Our hybrid intelligence approach uses:
Rules for safety β prevent illogical dependencies, ensure task ordering
AI for intelligence β semantic understanding, optimal matching, contextual instructions
Fallbacks for reliability β system continues functioning when AI fails
6. Research-First Design#
Marcus is built as both a tool and a research platform. Every conversation is logged, every decision tracked, every outcome measured. This enables:
Academic study of multi-agent coordination
Community learning from collective patterns
Evolution of best practices through empirical data
Development of specialized agent templates
7. Democratized Access#
Marcus scales from individual developers to enterprises:
Cost tracking β know exactly what coordination costs
Model flexibility β swap expensive models for cheaper ones, including free local LLMs via Ollama
MIT-licensed β use it in courses, papers, and experiments
Multiple deployment modes β research, development, production
The Marcus Ecosystem#
Marcus β the orchestration server#
The MCP-speaking coordination layer. Runs at http://localhost:4298/mcp. Decomposes natural-language project descriptions into structured task graphs, manages agent registration, routes context and artifacts, enforces the work loop, recovers from agent failures.
Cato β the visual dashboard#
Cato is the active Marcus dashboard. Real-time visualization of agents and tasks, built-in kanban view, board health monitoring, run history. Sibling product β install separately, point at the same data store, get a UI for free.
Posidonius β the experiment platform#
Posidonius launches and monitors multi-run Marcus experiments β benchmarking, parameter sweeps, parallel batches across any CLI agent. Web UI, run history, integration with Epictetus for grading agent output.
Epictetus β the grader#
A code auditor that grades software projects (and the agents that built them). Wired into the Posidonius pipeline as a post-run audit step.
/marcus skill β Runner mode launcher#
A Claude Code skill that wraps experiment setup into one command. Spawns N independent Claude CLI agents in tmux panes, each registering with the Marcus MCP server. The fastest path from idea to coordinated multi-agent run.
What Makes Marcus Different#
From other multi-agent frameworks (AutoGen, CrewAI, LangGraph)#
Coordination model β board-mediated state vs. group-chat conversation
Scale β group chat collapses past 2β3 agents; the board pattern adds throughput as agents are added
Failure recovery β a crashed agent loses chat context; the board carries on
Observability β chat logs vs. a queryable, structured audit trail
Agent identity β ephemeral with platform-side learning, not persistent personas
From traditional project management tools#
Active intelligence β understands tasks, not just tracks them
Autonomous execution β agents work independently once assigned
Continuous learning β every project makes the platform smarter
Stochastic advantage β randomness as a feature, not a bug
From simple AI assistants#
Project-level thinking β understands entire systems
Multi-agent coordination β manages teams, not individuals
Safety guarantees β hybrid intelligence prevents catastrophic errors
Observable behavior β full transparency through the board and Cato
The Vision#
Marcus is evolving toward a future where:
Community templates β continuously updated agent templates for different domains, skill sets, and project sizes
Optimal coordinators β specialized models trained on successful patterns
Research platform β standard environment for multi-agent studies
Accessible AI development β individual developers can build like enterprises
The Stoic Way#
Like its namesake, Marcus follows Stoic principles:
Focus on what you control β task structure, context, dependencies
Accept what you cannot β how agents choose to solve problems
Learn from what emerges β pattern recognition and continuous improvement
Practice transparency β all actions visible, all decisions logged
Marcus doesnβt try to control everything. It creates the conditions for success and lets intelligence emerge. This is the Stoic way of multi-agent development: pragmatic, observable, and continuously learning.
Getting Started#
Marcus is open source and welcomes contributors who share this philosophy. Whether youβre an individual developer, a research team, or an enterprise, Marcus adapts to your needs while maintaining its core principles.
Remember: we donβt tell agents how to think. We give them what they need to succeed, then get out of their way. The magic happens in the space between structure and freedom.
βYou have power over your mind β not outside events. Realize this, and you will find strength.β β Marcus Aurelius