agents-system-setup

A multi-runtime plugin that bootstraps, updates, improves, or replicates a complete multi-agent system across GitHub Copilot CLI, Claude Code, OpenCode, and OpenAI Codex CLI — from a single skill, with a Canonical IR for bidirectional replication and parallel-aware orchestration baked in.
What it generates
AGENTS.md at repo root with Directory Architecture, Agent Roster (with parallel-safety waves), Capability Matrix.
- Orchestrator + N subagents (3–50, sized to scope) emitted in the right format for every selected runtime, with a fan-out clause so parallel-safe subagents always run in one wave.
AGENT-TEAMS.md for Claude Code projects when the roster benefits from peer-to-peer teammates (3+ independent concerns).
- Project-scoped skills under each runtime's conventional path.
- Curated plugin / MCP recommendations from vendor-official catalogs, every recommendation tagged
[Tier · Vendor] and opt-in per item.
- Mandatory MCP approval gate — no MCP config is ever written without explicit user approval.
- Cross-OS scripts (
.sh + .ps1), .gitattributes for line-ending safety.
Modes
| Mode | When to use |
|---|
init | Brand-new repo, no agent artifacts |
update | Existing artifacts, regenerate managed blocks non-destructively |
improve | Audit existing system → propose checklist of targeted fixes → opt-in apply |
replicate | Port agents/skills/MCP from one runtime to another (Copilot ↔ Claude ↔ OpenCode ↔ Codex) via Canonical IR |
Install — per runtime
Each runtime has a different install mechanism. The repo ships the right manifest for each.
GitHub Copilot CLI
copilot
> /plugin install ytthuan/agents-system-setup
> /agents-system-setup
Reads the root plugin.json and exposes the bundled skill as /agents-system-setup.
Claude Code
claude
> /plugin install ytthuan/agents-system-setup
> /agents-system-setup:agents-system-setup
Reads .claude-plugin/plugin.json. Skills are namespaced as /<plugin>:<skill>. Source: https://docs.anthropic.com/en/docs/claude-code/plugins.
OpenAI Codex CLI
codex plugin marketplace add ytthuan/agents-system-setup
codex
> /plugins # browse and install agents-system-setup
> @agents-system-setup
Reads .codex-plugin/plugin.json and the marketplace descriptor at .agents/plugins/marketplace.json. Source: https://developers.openai.com/codex/plugins/build.
OpenCode
OpenCode plugins are JS/TS hooks — not skill bundles — so install by clone-and-copy:
git clone https://github.com/ytthuan/agents-system-setup.git
cd agents-system-setup
./scripts/install-opencode.sh project # or "global"
Windows / cross-platform PowerShell:
git clone https://github.com/ytthuan/agents-system-setup.git
cd agents-system-setup
pwsh ./scripts/install-opencode.ps1 -Scope project
This places the skill at .opencode/skills/agents-system-setup/ (or ~/.config/opencode/skills/ for global).
Usage
Once installed, invoke the skill — no arguments needed; it auto-detects mode:
/agents-system-setup
Or be explicit:
/agents-system-setup init
/agents-system-setup update
/agents-system-setup improve
/agents-system-setup replicate
Parallel subagents & Claude Code agent teams
The generated orchestrator always fans out parallel-safe subagents in one wave (multiple Task calls in a single response), then awaits before the next wave. Parallel-safety is computed automatically from the Directory Architecture — see parallelism reference.
For Claude Code, when 3+ subagents are independent and would benefit from peer-to-peer challenge, the generator additionally emits AGENT-TEAMS.md with the opt-in env var (CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1), settings snippet, suggested teammate roster, and a token-cost warning. Source: https://docs.anthropic.com/en/docs/claude-code/agent-teams.
Why a plugin (not a bare skill)?