mARC · Multi-Agent Relay Control — an installable AI engineering team for Claude Code. A tech-lead orchestrates specialist subagents (dev · SRE · design · security), enforces a pre-merge security gate, and runs in any repo via one plugin.
FAQ
marc is a Claude Code plugin with 8 hand-picked skills for development work, indexed on Flowy. Install it with the command on its page. It includes init, tech-lead, init. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.
> /plugin marketplace add NexaDuo/mARC> /plugin install marc@nexaduo
Repo: NexaDuo/mARC
█████╗ ██████╗ ██████╗
██╔══██╗ ██╔══██╗ ██╔════╝
██████████╗ ███████║ ██████╔╝ ██║
██║ ██║ ██║ ██╔══██║ ██╔══██╗ ██║
██║ ██║ ██║ ██║ ██║ ██║ ██║ ╚██████╗
╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝
▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖▄▖
m u l t i · a g e n t · r e l a y · c o n t r o l
▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘▀▘
*** Now talking in #marc
*** Topic: turn a discussion into tracked, delegated, shipped work
--> `@techlead` has been given channel operator status
`@techlead`: specialists, standby. i'll convene you when there's work.
`@dev` `@sre` `@design` `@sec` `@rev` `@research`: ready.
mARC (Multi-Agent Relay Control) packages a full software-delivery agent team, dressed in a retro/vaporwave IRC console aesthetic. Rather than building separate agent systems for every platform, mARC defines a single core team in core/ and compiles it into plugins for different developer tools, which we call harnesses. Today, mARC ships three harnesses: Claude Code, Google Antigravity, and GitHub Copilot CLI. It relies on the host tool to run and isolate subagents, providing a consistent team that you install once and reuse across your projects.
Run these commands inside Claude Code to add the marketplace, install the plugin, and start:
/plugin marketplace add NexaDuo/mARC
/plugin install marc@nexaduo
/marc:tech-lead
Run these commands in your terminal to install the Google Antigravity CLI, install the plugin, and start:
bash <(curl -fsSL https://antigravity.google/cli/install.sh)
git clone https://github.com/NexaDuo/mARC.git
agy plugin install ./mARC/harnesses/antigravity/marc
agy /marc:tech-lead
Note that the binary is installed to ~/.local/bin/agy, so the path should be in $PATH. agy plugin install takes a local directory, so the repository is cloned first and the plugin is installed from its harness subdirectory.
Run these commands in your terminal to add the marketplace, install the plugin, and start:
copilot plugin marketplace add NexaDuo/mARC
copilot plugin install marc@nexaduo
/marc:tech-lead
Think of your project as an IRC channel. @techlead holds channel-operator status. It listens to the discussion, compiles it into well-specified, tracked work on your GitHub Project board, and then pings the right specialist to do it.
| handle | role | pings for |
|---|---|---|
@techlead | channel operator | convene, spec, record on the board, dispatch, track |
@dev | engineer | app/service code, IaC, deploy scripts, schema, tests |
@sre | reliability | deploys, observability, incidents, backups/DR, cost |
@design | front-end | UI screens and overall web flows |
@sec | security (read-only) | pre-merge diff review; one half of the mandatory merge gate |
@rev | review (read-only) | pre-merge correctness review; the other half of the mandatory merge gate |
@research | researcher (read-only) | external evidence (such as benchmarks or documentation) as a cited brief |
@techlead is a skill (/marc:tech-lead), while @dev, @sre, @design, @sec, @rev, and @research are subagents that it dispatches. @techlead is the first of several planned leader skills, including founder and eng-director, which will convene the same shared specialist bench.
The team carries no hardcoded stack facts. When running in a repository, the agents discover details dynamically at runtime:
AGENTS.md or CLAUDE.md to learn about the architecture and any lessons from previous issues..claude/team.toml or .agents/team.toml) for settings like the GitHub organization, repository name, project number, source paths, and validation commands. See docs/team.toml.example for an example.@techlead automatically queries GitHub using gh commands to locate the correct repository and project board.A SessionStart hook outputs the active team.toml configuration into the context at the beginning of each session. If the configuration is missing, it prints a friendly note. If it finds a legacy team.config file, it prompts you to migrate by running /marc:init.
mARC is built by the team it ships. Every spec, dispatch, security review, and decision that produced this repo is public, so you can audit the process before trusting it:
@techlead records and tracks every task,docs/marc/, the durable decision records and research briefs.The quick-start block above covers the interactive path: /plugin marketplace add and /plugin install run inside a Claude Code session. If you are using Claude Code, you can also run the installer script, which does the same two steps non-interactively:
./install.sh
Claude Code also exposes the marketplace-add and plugin-install steps as shell commands, useful for scripting or for onboarding a machine without an interactive session:
claude plugin marketplace add NexaDuo/mARC
claude plugin install marc@nexaduo
claude plugin install installs to user scope by default; pass --scope project to share the install with collaborators via the repo's .claude/settings.json, or --scope local to keep it local to your checkout only. This requires Claude Code 2.0.0 or later (the minimumVersion declared in harnesses/claude-code/marc/.claude-plugin/plugin.json).
To have mARC install itself for every collaborator with no command at all, declare the marketplace and the plugin in the project's .claude/settings.json:
{
"extraKnownMarketplaces": {
"nexaduo": {
"source": {
"source": "github",
"repo": "NexaDuo/mARC"
}
}
},
"enabledPlugins": {
"marc@nexaduo": true
}
}
When a team member trusts the repository folder, Claude Code prompts them to install the declared marketplace and plugin; from then on mARC loads automatically in that repo, with no /plugin or claude plugin install step required on their part.
After installation, @techlead is available as /marc:tech-lead (or agy /marc:tech-lead under Google Antigravity) in any repository, and it dispatches the specialist subagents on demand.
For Claude Code, enabling auto-update for the nexaduo marketplace is recommended. When auto-update is active, Claude Code pulls new plugin versions automatically. You can manage this setting by going to /plugin and finding the nexaduo marketplace.
To update Claude Code manually at any time:
claude plugin update marc@nexaduo
Or run these commands inside Claude Code:
/plugin marketplace update nexaduo
/reload-plugins
For Google Antigravity, pull the latest sources and re-run the install from the local directory:
git -C mARC pull
agy plugin install ./mARC/harnesses/antigravity/marc
Update notifications: mARC ships a SessionStart hook that checks whether your installed version is behind the version on main once per session. If a new major or minor version is available, it prints a one-line update reminder. This check is silent and does not block the session if you are offline or if the check times out.
Run /marc:init in the consuming repo. It scaffolds the repository configuration (either .claude/team.toml for Claude Code or .agents/team.toml for Google Antigravity). This config pins the GitHub org and repo, the Project number, key source paths, and the validation command so @techlead and the specialists do not have to guess. It shows you every file before writing anything. If you prefer to set it up by hand, copy docs/team.toml.example and fill it in. Note that a repository's local .claude/ or .agents/ configuration folder overrides the plugin, which in turn overrides user config.
To support multiple host tools, mARC uses a harness-based architecture. A single core team of agents is defined under core/ and compiled into platform-specific plugins located in the harnesses/ directory.
Currently, mARC ships three harnesses: Claude Code (plugin under harnesses/claude-code/marc/), Google Antigravity (plugin under harnesses/antigravity/marc/), and GitHub Copilot CLI (plugin under harnesses/copilot/marc/).
Because each host tool provides different agent execution APIs, the subagent dispatch mechanism varies between harnesses. Claude Code uses the native Agent tool to dispatch subagents, Google Antigravity uses invoke_subagent, and Copilot uses the task tool with plugin custom agents (marc:*).
The leader skill @techlead dynamically inspects the available tools and maps its requests to the appropriate dispatch tool. For detailed mapping notes, refer to:
core/ # core specialist agent templates and leader skills
harnesses/
claude-code/
marc/ # compiled Claude Code plugin
.claude-plugin/plugin.json # plugin manifest
skills/tech-lead/ # `@techlead` leader skill (/marc:tech-lead)
skills/init/ # `/marc:init`, opt-in per-repo onboarding
agents/ # `@dev`, `@sre`, `@design`, `@sec`, `@research` shared specialist bench
hooks/hooks.json # SessionStart hook to inject `.claude/team.toml`
antigravity/
marc/ # compiled Google Antigravity plugin
plugin.json # plugin manifest
skills/ # symlinked leader skills (e.g. `/marc:tech-lead`, `/marc:init`)
agents/ # symlinked specialist agents
COMPATIBILITY.md # compatibility tracker for Google Antigravity
copilot/
marc/ # compiled GitHub Copilot CLI plugin
plugin.json # Copilot plugin manifest
skills/tech-lead/ # `@techlead` leader skill
skills/init/ # `/marc:init`, Copilot config flow
agents/ # `@dev`, `@sre`, `@design`, `@sec`, `@research` bench
hooks/hooks.json # Copilot `version: 1` hooks config
COMPATIBILITY.md # compatibility tracker for GitHub Copilot
docs/
ARCHITECTURE.md # growth model covering the different roles and harnesses
marc/ # durable team artifacts like decision records and research briefs
team.toml.example
install.sh # installer for Claude Code
The plugin is structured so that the core logic under core/ compiles into platform-specific configurations in the harnesses/ directory. This allows the project to grow sideways into new harnesses or upward into new leader skills like founder and eng-director without restructuring the repository. Detailed growth plans are documented in ARCHITECTURE.md.
MIT, see LICENSE.
*** `@techlead` sets mode +v on your next idea
.claude/
.claude-plugin/
marketplace.json
settings.json
.github/
FUNDING.yml
plugin/
marketplace.json
PULL_REQUEST_TEMPLATE/
field-lesson.md
workflows/
ci.yml
execution-eval.yml
release-gate.yml
release.yml
.gitignore
AGENTS.md
CHANGELOG.md
CONTRIBUTING.md
core/
agents/
design.md
engineer.md
research.md
review.md
security.md
sre.md
scripts/
board_reconcile.py
board.py
check_rule_origin.py
release_gate.py
release_verify.py
test_board_reconcile.py
test_release_gate.py
test_release_verify.py
test_script_parity.py
test_token_sentinel.py
test_token_telemetry_backfill.py
test_token_telemetry.py
token_sentinel.py
token_telemetry_backfill.py
token_telemetry_report.py
token_telemetry.py
skills/
init/
SKILL.md
tech-lead/
references/
invariants-card.md
upstream-contribution.md
SKILL.md
Dockerfile
docs/
ARCHITECTURE.md
CNAME
index.html
marc/
2026-07-06-brief-team-artifacts-file-write-policy.md
2026-07-06-decision-team-config-toml.md
2026-07-21-brief-agy-marketplace-clone-free-install.md
2026-07-21-brief-loop-engineering-guardrails.md
2026-07-24-decision-distribution-channel-marketplace-only.md
2026-07-29-decision-ai-memory-rejected.md
README.md
posts/
2026-07-06-launch-post-draft.md
team.toml.example
harnesses/
antigravity/
marc/
agents/
design.md
engineer.md
research.md
review.md
security.md
sre.md
COMPATIBILITY.md
compile.json
hooks
plugin.json
plugin.schema.json
scripts/
board_reconcile.py
board.py
check_rule_origin.py
release_gate.py
release_verify.py
test_board_reconcile.py
test_release_gate.py
test_release_verify.py
test_script_parity.py
test_token_sentinel.py
test_token_telemetry_backfill.py
test_token_telemetry.py
token_sentinel.py
token_telemetry_backfill.py
token_telemetry_report.py
token_telemetry.py
skills/
init/
SKILL.md
tech-lead/
references/
invariants-card.md
upstream-contribution.md
SKILL.md
claude-code/
marc/
.claude-plugin/
plugin.json
agents/
design.md
engineer.md
research.md
review.md
security.md
sre.md
compile.json
hooks/
hooks.json
invariants-card.sh
lib/
version-check.sh
outdated-check.sh
outdated-recheck.sh
token-guard.sh
token-telemetry.sh
scripts/
board_reconcile.py
board.py
check_rule_origin.py
release_gate.py
release_verify.py
test_board_reconcile.py
test_release_gate.py
test_release_verify.py
test_script_parity.py
test_token_sentinel.py
test_token_telemetry_backfill.py
test_token_telemetry.py
token_sentinel.py
token_telemetry_backfill.py
token_telemetry_report.py
token_telemetry.py
skills/
init/
SKILL.md
tech-lead/
references/
invariants-card.md
upstream-contribution.md
SKILL.md
copilot/
marc/
agents/
design.md
engineer.md
research.md
review.md
security.md
sre.md
COMPATIBILITY.md
compile.json
hooks/
hooks.json
plugin.json
scripts/
board_reconcile.py
board.py
check_rule_origin.py
release_gate.py
release_verify.py
test_board_reconcile.py
test_release_gate.py
test_release_verify.py
test_script_parity.py
test_token_sentinel.py
test_token_telemetry_backfill.py
test_token_telemetry.py
token_sentinel.py
token_telemetry_backfill.py
token_telemetry_report.py
token_telemetry.py
skills/
init/
SKILL.md
tech-lead/
references/
invariants-card.md
upstream-contribution.md
SKILL.md
install.sh
LICENSE
README.md
scripts/
backfill-releases.sh
changelog-section.sh
compile_prompts.py© 2026 Flowy · Free and open source
Built for Claude Code · Not affiliated with Anthropic