Skip to content

Latest commit

 

History

1,492 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Markus Logo

Markus

An open-source AI team that ships while you sleep.
You give it a goal in plain language. It hires the team, splits the work, runs
everyone in parallel, reviews every delivery, and keeps going while you rest.
And yes — it built itself.

CI Status Version GitHub Stars License Issues

English | 中文

Markus in action — AI agents planning, executing, reviewing, and delivering in one dashboard


🪞 Dogfooded into existence. The Markus project is built on Markus: issues, tasks, code, reviews, releases — our own agent team runs the entire loop on itself, start to finish. If it can ship itself, it can ship whatever you're building.


TL;DR

  • Not a wrapper — agents talk to LLM APIs directly and use real tools: shell, files, git, web search, code analysis, GUI & browser automation, any MCP server.
  • Ships 24/7 — a heartbeat keeps the team moving, reviewing, and escalating. You sleep; they ship.
  • Memory that compounds — three-layer persistent memory, auto-consolidated between sessions. The team gets measurably smarter the longer it runs.
  • Your data, your machine — fully self-hosted. SQLite by default (PostgreSQL supported), zero mandatory cloud, zero lock-in.

Intern → Company

A single copilot is a smart intern: great at one task, forgets everything overnight, and calls its own work "done." One employee doesn't make a company.

Single copilot Markus team
Scale One task at a time Parallel work across specialist roles
Memory Evaporates when the session ends Persistent, auto-consolidated
Initiative Waits for your prompt Heartbeat patrols tasks 24/7
Quality "Done" is self-reported Peers review and gate every delivery
Visibility N tabs, N windows One dashboard, one audit trail

🚀 Start in ~10 minutes

# Desktop app (macOS / Windows / Linux)
#   → https://github.com/markus-global/markus/releases/latest

npm install -g @markus-global/cli   # Node.js 22+, or the Linux one-liner without Node
markus start

Open http://localhost:8056 — the onboarding wizard creates your account (initial login: admin@markus.local / markus123). Then tell your Secretary:

"I need a research team: scan our competitors, write a competitive analysis, and draft a go-to-market strategy."

Markus assembles the team, breaks the goal into tasks, and starts executing — specialists in parallel, every delivery reviewed.

That's it. SQLite + bundled web UI, zero external dependencies. From source: git clonepnpm install && pnpm build && pnpm dev.


What's inside

  • 🧠 Three-layer memory — procedural, semantic, episodic. Knowledge accumulates across sessions and consolidates on its own.
  • Heartbeat-driven initiative — open tasks, async completions, and blockers keep moving even with no one watching.
  • 🔀 True concurrency — multiple sessions run in parallel on isolated per-session workspaces. No cross-talk, even inside one chat.
  • 🧬 ContextOS context engine — pinned structural anchors, a stable context budget, and compression that never drops decisions. Long, busy sessions stay fast and grounded.
  • 🛡️ Trust & gates — progressive trust levels, a formal submit → review → merge lifecycle, full audit trail, emergency pause.
  • 🔌 Skill ecosystem — import skills from skills.sh / Claude Code, SkillHub, OpenClaw, AgentScope, and MCP servers — and export your best ones back.
  • 🤖 Any LLM — Anthropic, OpenAI, Google, DeepSeek, MiniMax, Ollama, OpenRouter, and more — with unified model discovery and automatic failover.
  • 🔒 Bring your own keys — credentials live in your deployment, never in a third-party cloud.

Full skill details: Skill Ecosystem


Architecture

┌─────────────────────────────────────────────────────────┐
│              Web UI (React) · Desktop (Electron)        │
│      Dashboard · Chat · Projects · Builder · Hub        │
└──────────────────────┬──────────────────────────────────┘
                       │ REST + WebSocket
┌──────────────────────┴──────────────────────────────────┐
│                  Org Manager (API Server)               │
│     Auth · Tasks · Governance · Projects · Reports      │
└──────────────────────┬──────────────────────────────────┘
                       │
┌──────────────────────┴──────────────────────────────────┐
│                  Agent Runtime (Core)                   │
│  Agent · LLM Router · ContextOS · Tools · Skills ·      │
│  Memory · A2A · Concurrency · Decision · Heartbeat      │
└──────────┬────────────────────────────┬─────────────────┘
           │                            │
┌──────────┴──────────┐    ┌────────────┴─────────────────┐
│  Storage (SQLite /  │    │  Comms (Slack, Feishu,       │
│   PostgreSQL)       │    │   WhatsApp, Telegram)        │
└─────────────────────┘    └──────────────────────────────┘

TypeScript monorepo with modular packages:

Package Role
core Agent runtime — LLM routing, ContextOS, tools, skills, memory, concurrency, heartbeat, workspace isolation
org-manager REST API, WebSocket, governance, task lifecycle
web-ui React + Vite + Tailwind dashboard
desktop Electron desktop app (macOS / Windows / Linux)
cli @markus-global/cli — one-command install and launch
storage SQLite persistence (zero external dependencies)
gui GUI automation — VNC, screenshots, input control, visual analysis
comms Slack / Feishu / WhatsApp / Telegram bridges
a2a Agent-to-Agent communication protocol
remote Remote access — tunnels and zero-config networking
chrome-extension Browser automation via the Markus extension
shared Shared types, constants, utilities

Documentation

Guide Description
User Guide Setup, configuration, Web UI walkthrough
Architecture System design, agent runtime, memory, governance
Agent Runtime Agent lifecycle, execution model, workspace isolation
Tool System Built-in tools, MCP integration, tool contracts
Skill Ecosystem Import/export skills from skills.sh, SkillHub, OpenClaw, AgentScope, MCP
Memory System Three-layer memory architecture (Tulving)
Cognitive Architecture Cognitive Preparation Pipeline (CPP) design
Mailbox System Agent attention model, priority queue, triage
Prompt Engineering System prompt assembly, tool loop, compression
State Machines Task & requirement FSM specification
Concurrent Processing How one agent handles multiple sessions / mailbox items in parallel
Streaming & Reattach Streaming events, reconnection, tool-loop integrity
API Reference REST API endpoints and WebSocket events
Coding Tools Claude Code / Codex / Cursor integration
Learning Loop Agent self-improvement and memory consolidation
Remote Access Cloudflare Tunnel, Tailscale, FRP, ngrok setup
Release & Distribution Build, packaging, publishing pipeline
Blog Articles and tutorials on Markus and AI agents

💬 Community

Join details and the contributor escalation path are in docs/COMMUNITY.md. All channels follow our Code of Conduct.


Contributing

pnpm install && pnpm build
pnpm dev          # API + Web UI in dev mode
pnpm test         # Run tests
pnpm typecheck    # TypeScript check
pnpm lint         # ESLint

See CONTRIBUTING.md for full guidelines.


License

Markus is dual-licensed:

  • Open Source: Apache-2.0 — free to use, modify, distribute, and self-host for any purpose, including commercial use
  • Commercial: Available — for teams needing enterprise support, indemnification, OEM embedding, or custom terms

Skills shared through the marketplace may use their own licenses (typically MIT).


Website · Blog · Discussions · Issues

Markus — Where AI Agents Work as a Team

Releases

Packages

Contributors

Languages