Skip to main content

Orchestrate CLI + MCP server for multi-model agent workflows

Project description

meridian

Orchestrate AI coding agents across Claude Code, Codex, and OpenCode. Each model runs through its native harness — meridian coordinates between them.

Why

Claude Code is the best way to run Claude. Codex CLI is the best way to run GPT. Each provider's harness is optimized for their models — sandboxing, tool use, context handling, everything.

But you can only use one at a time.

Meridian lets agents spawn other agents across harnesses. The right model for each task, through the right runtime, with clean context per spawn.

Install

uv tool install meridian-cli
Other methods
pipx install meridian-cli
pip install meridian-cli

From source:

git clone https://github.com/meridian-flow/meridian-cli.git
cd meridian-cli
uv tool install --force . --no-cache --reinstall

You need at least one harness installed: Claude Code, Codex CLI, or OpenCode.

Set Up a Project

meridian init --link .claude
meridian mars add meridian-flow/meridian-dev-workflow

This installs a full dev team — architects, coders, reviewers, testers — and links them into Claude Code. Agent packages are managed by mars.

Usage

Launch an interactive session:

meridian

Or spawn agents directly:

# Code on Codex, review on Claude
meridian spawn -a coder -p "Add rate limiting to the API endpoints"
meridian spawn -a reviewer --from p1 -p "Review the rate limiting implementation"

# Check on work
meridian spawn list
meridian spawn show p1

Agents route to their configured model and harness automatically. Each spawn gets a fresh context window with only the context it needs.

Architecture

graph TB
    User([You]) --> Primary["meridian<br/>(primary session)"]

    subgraph Packages
        Sources["git sources"] -->|"mars add/sync"| Agents[".agents/"]
        Agents -->|"mars link"| Tool[".claude/ · .cursor/"]
    end

    subgraph Runtime
        Primary -->|"meridian spawn"| Router{"Model router"}
        Router --> Claude["Claude Code"]
        Router --> Codex["Codex CLI"]
        Router --> OpenCode["OpenCode"]
    end

    subgraph State[".meridian/"]
        Spawns["spawns + reports"]
        Sessions["sessions"]
        Work["work items"]
    end

    Agents --> Primary
    Primary --> State
    Claude & Codex & OpenCode -->|"meridian CLI"| State

Agent Packages

meridian-dev-workflow — A dev team: architects, coders, reviewers, testers, researchers, documenters, and the orchestrators that coordinate them.

meridian-base — Core coordination primitives. Included as a dependency of meridian-dev-workflow.

Docs

Development

uv sync --extra dev
uv run ruff check .
uv run pytest-llm
uv run pyright

See DEVELOPMENT.md for full dev setup.

License

Apache 2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

meridian_cli-0.0.38rc1.tar.gz (264.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

meridian_cli-0.0.38rc1-py3-none-any.whl (364.9 kB view details)

Uploaded Python 3

File details

Details for the file meridian_cli-0.0.38rc1.tar.gz.

File metadata

  • Download URL: meridian_cli-0.0.38rc1.tar.gz
  • Upload date:
  • Size: 264.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for meridian_cli-0.0.38rc1.tar.gz
Algorithm Hash digest
SHA256 1aaf2e2d1f661e46668543c58619249d0a83f0d8ba82c2b2dc44ca0cd020ee55
MD5 cbbbe2edf2a65e9f57a183bcabf31be9
BLAKE2b-256 39e2c59df4dde711a97583fcd9e43ed4ff472449f3e9e15ec6df4eaa8227e6c2

See more details on using hashes here.

File details

Details for the file meridian_cli-0.0.38rc1-py3-none-any.whl.

File metadata

  • Download URL: meridian_cli-0.0.38rc1-py3-none-any.whl
  • Upload date:
  • Size: 364.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for meridian_cli-0.0.38rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 e9132feb8eadbf43be39c28566ee3a88f3c584892abf23bc70196b02b372e23e
MD5 5992769bbe48971577fd3740cb2c898c
BLAKE2b-256 6f62723519ac5c5294f065fafb8bfb233599fd30c9bed591f2c348fb9047a634

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page