MindSync Community v1.9 is feature-frozen. Existing releases remain MIT licensed. Read the status notice →
MIT licensed local-first no account required Python 3.10+ v1.9.0 feature-frozen
MindSync AI

One orchestrator.
Your coding agents.
Shared context.

MindSync turns the CLI you already use into the lead orchestrator — routing tasks to the right agent, preventing file conflicts, and remembering decisions across sessions.

…PyPI downloads · last 30 days
5.5k+downloads · all time
0servers · runs on your machine
terminal
$ pip install mindsync-ai
$ mindsync setup --mode auto
$ mindsync doctor
$ mindsync agents
✓ known hosts configured · recognised workers on PATH

Idempotent setup — existing MCP registrations preserved unless --force.

// Watch it work

You describe the task. MindSync does the delegation dance.

One command. The orchestrator picks the worker, locks the files, supervises the run, and saves what mattered to memory.

mindsync runs the MCP server, setup, and memory. mindsync-dispatch routes bounded tasks to workers — your human-facing CLI stays the lead orchestrator.
mindsync — dispatch
// The difference

Same agents. Very different afternoon.

The tools are identical — what changes is who keeps score between them.

without mindsyncmanual relay
$ claude "fix auth bug"
…edits src/auth.py from memory of an
older conversation…
$ codex "write auth tests"
…rewrites the same file, clobbers the
first fix…
$ grok "review what changed"
…reviews a mix of both edits, flags
problems nobody remembers making…
result: you are the router, the referee,
and the memory. for every task.
with mindsyncorchestrated
$ mindsync-dispatch run auto "fix auth bug"
◆ routed → codex (fit 0.92)
◆ focus lock: src/auth.py held
  …worker implements…
✓ done · decision saved to memory
$ mindsync-dispatch run auto "add auth tests"
◆ conflict avoided → routed to claude,
  waits on codex's lock release
✓ done · context replayed, not re-explained
result: one command per task. the system
keeps its own state.
// Why MindSync

Running several capable agents is easy. Keeping them coordinated is the hard part.

Without a shared layer, agents duplicate work, overwrite each other's files, lose decisions between sessions, and make you pick a worker by hand for every single task.

01

Automatic orchestration

The human-facing CLI decides when delegation is actually useful — you stop naming a worker for every task.

02

Capability-based routing

Workers are ranked by task fit, availability, and priority. Every automatic route reports its reason and candidate scores.

03

Conflict prevention

Active file and project focus is visible before work begins, so two agents don't edit the same file blind.

04

Session memory

Decisions, blockers, and durable facts persist per project and replay into the next run instead of being re-explained.

05

Safe process control

Tracked jobs, timeouts, cancellation, and process-tree cleanup — plus optional git worktree isolation per job.

06

Yours, locally

No hosted control plane, no MindSync account. Remote sync is optional and runs through your own SSH host.

07

Quota-aware handoff

Opt-in --on-limit handoff or MCP on_limit rotates exhausted worktree jobs to the next agent. Pluggable usage readers support checkpoint-gated preemptive transfer when polling is enabled; default is stop with no forced checkpoint and no raw usage or auth persistence. Cooldowns: mindsync-dispatch limits.

// How it works

Your CLI stays in charge.

The orchestrator keeps planning, authorization, integration, and the final answer. Delegated workers receive bounded tasks and cannot recursively delegate through MindSync.

Youdescribe the outcome
│     MCP     ▼
Human-facing CLI · lead orchestratorplans · authorizes · integrates
▼
MindSync AIrouter · focus map · event bus · SQLite memory
▼ routes by capability
CodexClaudeGemini CLIAntigravity (agy)GrokCursor AgentOpenCodeAider
// Session memory

Context that survives the session.

Agents record decisions, blockers, and durable facts per project in local SQLite. The next run gets a bounded, priority-ordered replay: durable facts pack first, then unresolved blockers, then routine history — so noise can never crowd out what mattered.

  • Bounded by a character budget — long history never blows up the context window.
  • Conservative redaction of tokens, passwords, and private keys on every write.
  • Prompts, transcripts, and stdout are never persisted.
  • Dry-run retention: nothing is deleted without --yes.
mindsync — memory
$ mindsync memory stats project facts blockers decisions my-repo 47 2 12 $ mindsync-dispatch run auto "continue the migration" ◆ replaying context (bounded, priority-ordered) · 3 durable facts packed · 1 unresolved blocker surfaced ✓ resuming exactly where you left off
// Supported workers

Use them as one system.

MindSync separates the MCP host from the worker backend. A CLI may act as either, or both — without locking you into a single model or provider. These eight are first-party. Setup also picks up other PATH-installed CLIs whose names it already knows. Unknown binaries are suggested, not registered, and never executed.

CLIMCP host setupBest at
OpenAI CodexNativeCoding, debugging, testing, DevOps
Anthropic ClaudeNativeArchitecture, reasoning, review, large context
Google Gemini CLINativeAlternate backend in the Gemini/Antigravity family
Antigravity (agy)Via Gemini CLI hostPreferred backend in that family
Grok CLINativeResearch, reasoning, review, security work
Cursor AgentJSON setupCoding and repository work
OpenCodeJSON setupCoding, review, repository work
Aider—Focused code editing

First-party hosts get a real MCP recipe (native mcp add or a known JSON file). A new CLI with an unusual name lands via mindsync register. Setup will not guess mcp add flags or run a binary it cannot name.

// Get started

Four steps to a connected team.

step 1

Install

One package, pure Python. Nothing else to provision.

pip install mindsync-ai
step 2

Onboard your CLIs

Registers known MCP hosts and recognised PATH workers. Idempotent and previewable.

mindsync setup --mode auto
step 3

Verify & dispatch

Check health, inspect the roster, then hand out a task.

mindsync doctor && mindsync agents
step 4

Connect your MCP host

Add MindSync to Codex, Claude, Cursor, or any MCP client — then delegate from the tools you already use.

see MCP config below
mcp.json · Codex / Claude / Cursor
{
  "mcpServers": {
    "mindsync": {
      "command": "mindsync"
    }
  }
}

Windows: if your MCP client does not share PATH, point command at your venv's python.exe and use "args": ["-m", "mindsync.server"].

Requires Python 3.10 or newer. --dry-run previews every change without touching a file.

// FAQ

Fair questions.

Is my code sent anywhere?+

No. MindSync runs entirely on your machine — routing, focus tracking, and memory are all local files and local SQLite. The only network calls are the ones your own CLIs already make to their model providers. Optional remote sync goes through your own SSH host.

How is this different from just running multiple CLIs myself?+

You become the router, the referee, and the memory: choosing the worker for each task, checking who touched which file, and re-explaining decisions every session. MindSync automates those three jobs while your CLI stays the lead orchestrator.

Does it modify my CLI installations?+

Only through each CLI's official, documented registration surface (native mcp add or a known JSON config, including OpenCode's opencode.jsonc). Setup is idempotent — existing registrations are preserved unless you pass --force, and --dry-run previews everything first. Unknown binaries are listed as suggestions and never executed. Unusual names use mindsync register.

Can workers talk to each other?+

No — deliberately. Delegated workers receive bounded tasks and cannot recursively delegate. Planning, authorization, integration, and the final answer stay with your human-facing CLI, so there is always one accountable chain of command.

I installed a new CLI. Will setup pick it up?+

If MindSync already knows the name (Codex, Claude, Gemini, Grok, Cursor, OpenCode, Aider, and a short seed list), mindsync setup will register it. An unusual binary is listed as a suggestion — add it with mindsync register --name … --bin …, then confirm in mindsync agents. Do not trust an agent that only says it registered.

// Ready when you are

Your agents are already good.
Make them a team.

Local-first, MIT licensed, and four steps away.