Agent package manager for .agents/ directories
Project description
mars
A package manager for AI agent profiles and skills. Install agents and skills from git sources into Claude Code, Codex, OpenCode, Cursor, and other agent harness config directories.
Target Status
Mars materializes harness-native artifacts for multiple targets:
| Target | Status | Notes |
|---|---|---|
.claude |
First-class | Claude Code agents, skills, MCP, hooks, and settings surfaces. |
.codex |
First-class | Codex project instruction and agent-facing surfaces. |
.opencode |
First-class | OpenCode agent and permission surfaces. |
.cursor |
Experimental | Cursor CLI/config support exists, but semantics can change as Cursor's agent surface evolves. |
.pi |
Future first-class | Meridian-owned Pi flavor and extension surface; under active design/development. |
Install
| Method | Command |
|---|---|
| Cargo | cargo install mars-agents |
| pip / uv | uv tool install mars-agents or pip install mars-agents |
| npm | npm install -g @meridian-flow/mars-agents |
| Prebuilt binaries | GitHub Releases |
Quick Start
mars init
mars add meridian-flow/meridian-dev-workflow
mars link .claude
mars link .codex
Your agents and skills are now installed and available in both Claude Code and Codex. Update them with mars upgrade, check for drift with mars doctor.
Adding Sources
# From GitHub
mars add meridian-flow/meridian-base
mars add acme/security-agents --only-agents
# From a local directory
mars add ../my-team-agents
# Pin a version
mars add meridian-flow/meridian-base@^1.0
Model Aliases
Packages can distribute model routing — short names that resolve to concrete models across harnesses:
mars models list
mars models resolve opus
# In mars.toml — override any alias
[models.opus]
harness = "claude"
provider = "Anthropic"
match = ["*opus*"]
How It Works
flowchart TD
sources["mars.toml + mars.lock<br/><i>committed</i>"]
local[".mars-src/<br/><i>your own agents, skills, MCP, hooks</i>"]
git["git sources<br/><i>resolved from mars.toml</i>"]
canonical[".mars/<br/><i>canonical store, gitignored</i>"]
agents["agents/ + skills/"]
mcp["mcp servers"]
hooks["lifecycle hooks"]
claude[".claude/"]
codex[".codex/"]
cursor[".cursor/"]
opencode[".opencode/"]
sources --> |mars sync| canonical
local --> canonical
git --> canonical
canonical --- agents
canonical --- mcp
canonical --- hooks
canonical --> |mars link| claude
canonical --> |mars link| codex
canonical --> |mars link| cursor
canonical --> |mars link| opencode
Mars resolves the full dependency graph before touching any files. Writes are atomic. The lock file tracks what mars manages so it never touches your files. Each linked target gets harness-native artifacts — agents, skills, MCP servers, and hooks compiled to match what that tool expects.
Use mars adopt to bring an existing unmanaged file into .mars-src/ in one step.
Docs
- Config —
mars.toml, agent profiles, compilation, MCP/hooks - CLI — every command with flags and examples
- Internals — sync pipeline, lock file, conflicts
- Dev — local development, troubleshooting, smoke testing
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mars_agents-0.6.4.tar.gz.
File metadata
- Download URL: mars_agents-0.6.4.tar.gz
- Upload date:
- Size: 556.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e1a30f7032dabecd7a8d8a682a8502d219b5b94722dc30a24dc3dbb4f20a53a
|
|
| MD5 |
31977e7361e5824a543e5849901e857a
|
|
| BLAKE2b-256 |
02b76ae117f7b8f31635dfb0d73ab8d8135b410bb5629757f0dfa22064623116
|
Provenance
The following attestation bundles were made for mars_agents-0.6.4.tar.gz:
Publisher:
release.yml on haowjy/mars-agents
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mars_agents-0.6.4.tar.gz -
Subject digest:
1e1a30f7032dabecd7a8d8a682a8502d219b5b94722dc30a24dc3dbb4f20a53a - Sigstore transparency entry: 1614955700
- Sigstore integration time:
-
Permalink:
haowjy/mars-agents@485cb0e61e47101a2c611ede65d39bed2c9f92e8 -
Branch / Tag:
refs/tags/v0.6.4 - Owner: https://github.com/haowjy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@485cb0e61e47101a2c611ede65d39bed2c9f92e8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file mars_agents-0.6.4-py3-none-win_amd64.whl.
File metadata
- Download URL: mars_agents-0.6.4-py3-none-win_amd64.whl
- Upload date:
- Size: 3.2 MB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6f50b8296f3ac189572475665c2ffa76958e03b722545fbe1584657e735e0cae
|
|
| MD5 |
4dc416140a24c5130b4fa277e682ab78
|
|
| BLAKE2b-256 |
5ba9b85445962f071711eae974d4d6073cc34b25503f00cec6f42bf677657775
|
Provenance
The following attestation bundles were made for mars_agents-0.6.4-py3-none-win_amd64.whl:
Publisher:
release.yml on haowjy/mars-agents
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mars_agents-0.6.4-py3-none-win_amd64.whl -
Subject digest:
6f50b8296f3ac189572475665c2ffa76958e03b722545fbe1584657e735e0cae - Sigstore transparency entry: 1614955824
- Sigstore integration time:
-
Permalink:
haowjy/mars-agents@485cb0e61e47101a2c611ede65d39bed2c9f92e8 -
Branch / Tag:
refs/tags/v0.6.4 - Owner: https://github.com/haowjy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@485cb0e61e47101a2c611ede65d39bed2c9f92e8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file mars_agents-0.6.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: mars_agents-0.6.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 3.3 MB
- Tags: Python 3, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4a10fb7f2f3149ff6d87d7fa4efcc1473e2c99b3cf9eb3c69a192af7ed6448e9
|
|
| MD5 |
59796dcc232ec75fa146586b3b74b494
|
|
| BLAKE2b-256 |
70779253d97bf4aa4919df2f888e357032ff55f653e76a59a322d68e0533880d
|
Provenance
The following attestation bundles were made for mars_agents-0.6.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
release.yml on haowjy/mars-agents
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mars_agents-0.6.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
4a10fb7f2f3149ff6d87d7fa4efcc1473e2c99b3cf9eb3c69a192af7ed6448e9 - Sigstore transparency entry: 1614955869
- Sigstore integration time:
-
Permalink:
haowjy/mars-agents@485cb0e61e47101a2c611ede65d39bed2c9f92e8 -
Branch / Tag:
refs/tags/v0.6.4 - Owner: https://github.com/haowjy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@485cb0e61e47101a2c611ede65d39bed2c9f92e8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file mars_agents-0.6.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: mars_agents-0.6.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 3.1 MB
- Tags: Python 3, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c13eadffb6b3650de3ddce58e6f3f3d378124b472a7436907b13141dd405b33c
|
|
| MD5 |
8c3d2b8fac7d28fc71ff129322288275
|
|
| BLAKE2b-256 |
92806a98e8b9f0687c94f0e3ad97ece60fd325608b019222834877ef1e909991
|
Provenance
The following attestation bundles were made for mars_agents-0.6.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
release.yml on haowjy/mars-agents
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mars_agents-0.6.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
c13eadffb6b3650de3ddce58e6f3f3d378124b472a7436907b13141dd405b33c - Sigstore transparency entry: 1614955905
- Sigstore integration time:
-
Permalink:
haowjy/mars-agents@485cb0e61e47101a2c611ede65d39bed2c9f92e8 -
Branch / Tag:
refs/tags/v0.6.4 - Owner: https://github.com/haowjy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@485cb0e61e47101a2c611ede65d39bed2c9f92e8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file mars_agents-0.6.4-py3-none-macosx_11_0_arm64.whl.
File metadata
- Download URL: mars_agents-0.6.4-py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 3.0 MB
- Tags: Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9227d84950936dd2038abb737d7becc1e597a39bc1d2b66c1f0dee6e084acca8
|
|
| MD5 |
38dcc3132ef6c104efe20fd1e8993008
|
|
| BLAKE2b-256 |
56356fb301ed4ce6dfc5d38536b3a52b8382aee20ae97d06c1aadd903eaaf447
|
Provenance
The following attestation bundles were made for mars_agents-0.6.4-py3-none-macosx_11_0_arm64.whl:
Publisher:
release.yml on haowjy/mars-agents
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mars_agents-0.6.4-py3-none-macosx_11_0_arm64.whl -
Subject digest:
9227d84950936dd2038abb737d7becc1e597a39bc1d2b66c1f0dee6e084acca8 - Sigstore transparency entry: 1614955769
- Sigstore integration time:
-
Permalink:
haowjy/mars-agents@485cb0e61e47101a2c611ede65d39bed2c9f92e8 -
Branch / Tag:
refs/tags/v0.6.4 - Owner: https://github.com/haowjy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@485cb0e61e47101a2c611ede65d39bed2c9f92e8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file mars_agents-0.6.4-py3-none-macosx_10_12_x86_64.whl.
File metadata
- Download URL: mars_agents-0.6.4-py3-none-macosx_10_12_x86_64.whl
- Upload date:
- Size: 3.2 MB
- Tags: Python 3, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
55ac51fd6e3660f8305d1c8183d5c90c19c1b37fda46cedacff457e7992683da
|
|
| MD5 |
cf10130c780d2d5780dfee36cd37886a
|
|
| BLAKE2b-256 |
b502c641257d5e219c2aefcf8396bf8c52b231a50fe2afa05188a1130c7e3f3c
|
Provenance
The following attestation bundles were made for mars_agents-0.6.4-py3-none-macosx_10_12_x86_64.whl:
Publisher:
release.yml on haowjy/mars-agents
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mars_agents-0.6.4-py3-none-macosx_10_12_x86_64.whl -
Subject digest:
55ac51fd6e3660f8305d1c8183d5c90c19c1b37fda46cedacff457e7992683da - Sigstore transparency entry: 1614955950
- Sigstore integration time:
-
Permalink:
haowjy/mars-agents@485cb0e61e47101a2c611ede65d39bed2c9f92e8 -
Branch / Tag:
refs/tags/v0.6.4 - Owner: https://github.com/haowjy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@485cb0e61e47101a2c611ede65d39bed2c9f92e8 -
Trigger Event:
push
-
Statement type: