multiagent-setup 1.25.0

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global multiagent-setup --version 1.25.0
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local multiagent-setup --version 1.25.0
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=multiagent-setup&version=1.25.0
                    
nuke :add-package multiagent-setup --version 1.25.0
                    

multiagent-template

Autonomous multi-agent code generation and PR automation for 12 AI coding assistants. Scaffold a workspace where a team of specialized agents — orchestrator, architect, developer, reviewer, DevOps, designer, and more — drives software from backlog to merged PR without hand-holding. You set direction; the agents handle execution.

NuGet Build License: MIT

<p align="center"> <img src="docs/demo.svg" alt="multiagent-setup demo" width="720"/> </p>


Quick Start

Recommended: one-liner bootstrap. Installs all deps (git, gh, jq, .NET 10, agent CLI) and creates the workspace in one shot.

# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/Neftedollar/multiagent-template/main/bootstrap.sh | bash -s -- MyProject
curl -fsSL https://raw.githubusercontent.com/Neftedollar/multiagent-template/main/bootstrap.sh | bash -s -- MyProject --provider gemini

# Windows (PowerShell)
irm https://raw.githubusercontent.com/Neftedollar/multiagent-template/main/bootstrap.ps1 -OutFile bootstrap.ps1
.\bootstrap.ps1 MyProject
.\bootstrap.ps1 MyProject --provider codex

Already have git, gh, jq, and .NET 10 installed? (You don't need to know .NET — it's just the packaging mechanism.)

dotnet tool install -g multiagent-setup
multiagent-setup new MyProject                       # Claude (default)
multiagent-setup new MyProject --provider nessy      # Nessy CLI (Claude alias)
multiagent-setup new MyProject --provider codex      # OpenAI Codex
multiagent-setup new MyProject --provider qwen       # Qwen Code
multiagent-setup new MyProject --provider cursor     # Cursor IDE
multiagent-setup new MyProject --provider windsurf   # Windsurf IDE
multiagent-setup new MyProject --provider copilot    # GitHub Copilot
multiagent-setup new MyProject --provider gemini     # Google Gemini CLI
multiagent-setup new MyProject --provider cline      # Cline (VS Code)
multiagent-setup new MyProject --provider aider      # Aider AI pair programmer
multiagent-setup new MyProject --provider continue   # Continue.dev (VS Code / JetBrains)
multiagent-setup new MyProject --provider roo        # Roo Code (VS Code)
multiagent-setup new MyProject --provider all        # all providers at once

# Add a provider to an existing workspace (no need to recreate)
multiagent-setup add-provider cursor
multiagent-setup add-provider gemini --force   # overwrite existing files
multiagent-setup add-provider all              # add all providers at once

# Update an existing workspace to the latest templates
multiagent-setup update          # skip already-customised files
multiagent-setup update --force  # overwrite everything (CLAUDE.md preserved)

Then start working:

cd MyProject
claude          # or: nessy / codex / qwen-code / gemini (terminal agents)
                # or open in Cursor / Windsurf / VS Code (IDE agents)
/orchestrator Implement user authentication with JWT

What you get in 5 minutes:

  • A workspace where agents run PLAN → BUILD → TEST → VERIFY → SHIP autonomously
  • 20+ specialist roles installed in ~/.claude/commands/ — orchestrator, architect, developer, reviewer, DevOps, designer, and more
  • Safety hooks active: dangerous commands blocked, commits enforced as conventional, files auto-linted on save
  • One human touchpoint: review and merge the PR when the pipeline finishes

Why multiagent-template?

The problem: Asking a single AI agent to be architect, developer, reviewer, and DevOps all at once leads to context collapse, no accountability, and inconsistent quality.

The solution: A structured workspace where each agent plays a defined role in a gated pipeline:

PLAN → BUILD → TEST → VERIFY → SHIP
  • Orchestrator coordinates — never writes code itself
  • Architects design before developers build
  • Reviewers validate independently after each step
  • Safety hooks prevent dangerous commands, enforce commit conventions, auto-lint

Each step has an approval gate. Failures retry (3×) → helper role (2×) → human escalation. The human only sees escalations, not every step.

When to choose multiagent-template

Scenario multiagent-template Single Claude Code Standalone Aider
Pair-programming a single file
Full feature from spec to merged PR Struggles Struggles
Team of specialized roles
Autonomous overnight backlog drain Limited
Works inside your existing IDE ✅ (via provider flags)
Any AI provider (Claude, Gemini, Codex…) ✅ 12 providers Claude only Any, but no pipeline

Supported Providers

Provider Binary / Tool Best for Notes
claude claude Terminal-first, most capable Claude Code by Anthropic — default
nessy nessy Claude users with a different alias Nessy CLI — Claude-compatible
codex codex OpenAI API key holders OpenAI Codex CLI — creates AGENTS.md
qwen qwen-code Open-source model users Qwen Code — creates QWEN.md
gemini gemini Google API key holders Gemini CLI — creates GEMINI.md
cursor Cursor IDE IDE-first workflows Rules in .cursor/rules/ (MDC format)
windsurf Windsurf IDE IDE-first + Codeium users Rules in .windsurf/rules/ (Wave 8+)
copilot GitHub Copilot VS Code + GitHub users Reads .github/copilot-instructions.md
cline Cline VS Code extension users Creates .clinerules in project root
aider Aider Terminal pair programming Creates .aider.conf.yml — auto-reads CLAUDE.md
continue Continue.dev VS Code + JetBrains users .continue/config.yaml with /orchestrator slash command
roo Roo Code VS Code extension users Rules in .roo/rules/ — auto-loaded per project

Use --provider all to scaffold all providers (claude + nessy + codex + qwen + cursor + windsurf + copilot + gemini + cline + aider + continue + roo).


How It Works

One human (CEO) gives tasks. The Orchestrator agent breaks them into steps, picks the right specialist role, runs the pipeline, and delivers a PR. Human escalation is required only for: public content, breaking API changes, infra decisions with cost impact, or 5+ consecutive failures.

Pipeline types

Type Steps When
feature PLAN → BUILD → TEST → VERIFY → SHIP New functionality
bugfix BUILD → TEST → VERIFY → SHIP Skip planning
infra PLAN → BUILD → VERIFY → SHIP No test step
content PLAN → BUILD → VERIFY(CEO) Docs / marketing
spike PLAN Research only

Modes

Mode How to trigger Description
CEO Mode /orchestrator <task> Human gives task, orchestrator executes
Single Expert /<role> <question> Direct expert call, no pipeline
Autonomous claude -p "/orchestrator ..." Orchestrator self-selects tasks from backlog

Workspace Structure

MyProject/
├── CLAUDE.md                <- workspace context (read by AI on every session)
├── code/                    <- product repo (git-ignored)
├── docs/
│   ├── process.md           <- operational manual (pipeline source of truth)
│   ├── role-capabilities.md <- role index for dynamic orchestrator routing
│   └── workflows/           <- pipeline specs (WORKFLOW-*.md)
├── .claude/
│   ├── commands/            <- slash-command roles (synced from agency-agents)
│   ├── hooks/lint.json      <- auto-lint formatter config
│   ├── mcp.json             <- MCP server config
│   └── settings.json        <- hook configuration
├── .github/
│   └── workflows/
│       └── orchestrator.yml <- run orchestrator in CI (claude/nessy providers)
├── .codex/                  <- Codex config (--provider codex)
│   └── skills/              <- orchestrator skill pre-loaded
└── tools/
    ├── completions.zsh      <- zsh completions
    └── completions.ps1      <- PowerShell completions

Bringing in an existing codebase:

multiagent-setup new MyProject
cd MyProject
git clone https://github.com/my-org/my-repo code/MyProject
# Edit CLAUDE.md to describe the project → done

Hook System

All hooks are compiled into the multiagent-setup binary — no shell scripts, no platform quirks.

Hook Trigger Action
block-dangerous PreToolUse (Bash) Blocks rm -rf /, push --force main, DROP TABLE, etc.
enforce-commit-msg PreToolUse (Bash) Enforces conventional commits (feat:, fix:, etc.)
auto-lint PostToolUse (Edit/Write) Runs formatter on changed file (prettier, ruff, gofmt, rustfmt…)
log-agent PreToolUse (Agent) Logs sub-agent launches to .claude/agent-log.jsonl
stop-guard Stop Reminds to run tests and update knowledge graph
research-reminder PostToolUse (WebSearch) Reminds to persist research in O'Brien memory

Agent Roles

20+ specialist roles from agency-agents, installed at workspace creation time.

Layer Roles
Strategy /product-manager, /product-trend-researcher
Management /orchestrator, /testing-reality-checker, /specialized-workflow-architect
Engineering /engineering-software-architect, /engineering-backend-architect, /engineering-frontend-developer, /engineering-code-reviewer, /engineering-devops-automator, /engineering-security-engineer
AI / ML /engineering-ai-engineer
Design /design-ux-researcher, /design-ui-designer
GTM /specialized-developer-advocate, /engineering-technical-writer, /marketing-content-creator

The orchestrator routes dynamically via docs/role-capabilities.md — no hardcoded assignments. If no role fits, it creates an ad-hoc role on the fly.


Infrastructure (Optional)

AGE Graph

Graph knowledge base on PostgreSQL + Apache AGE, connected via age-mcp. Stores modules, pipelines, role bindings, security findings, code insights. Grows with every task.

O'Brien

Semantic memory on pgvector — cross-session context, task locking, crash recovery.

multiagent-setup install-mcps             # interactive Docker setup
multiagent-setup install-mcps --manual    # enter connection strings manually

Examples

See examples/ for concrete workflows:


CLI Reference

multiagent-setup new <project> [org] [--provider claude|nessy|codex|qwen|cursor|windsurf|copilot|gemini|cline|aider|continue|roo|all]
multiagent-setup add-provider <provider> [--force]   # add provider to existing workspace
multiagent-setup update [--force]                    # update workspace templates to latest version
multiagent-setup sync-roles [--clone|--pull] [--agency-dir <path>]
multiagent-setup install-mcps [--docker|--manual] [--age-conn <str>] [--obrien-conn <str>]
multiagent-setup hook <name>
multiagent-setup doctor                              # check workspace for common config issues
multiagent-setup -v | --version

Requirements

Tool macOS/Linux Windows
.NET SDK 10+ brew install dotnet winget install Microsoft.DotNet.SDK.10
GitHub CLI brew install gh winget install GitHub.cli
git, jq brew / apt winget install Git.Git jqlang.jq
Agent CLI see provider table above same
Docker optional, for AGE/O'Brien winget install Docker.DockerDesktop

bootstrap.sh / bootstrap.ps1 install everything automatically on a clean machine.


Contributing

Templates live in tools/setup-cli/Templates/. Each provider gets its own directory under providers/. See CONTRIBUTING.md for setup instructions and how to add a new provider.


FAQ

Does this work with projects that already have code?
Yes. The workspace wraps your existing repo: multiagent-setup new MyProject creates the workspace, then clone your repo into code/MyProject/.

How do I use multiple providers?
Run multiagent-setup new MyProject --provider all to scaffold all providers at once. To add a provider to an existing workspace: multiagent-setup add-provider gemini.

What does the orchestrator do when I'm not watching?
In CEO Mode it waits for your next task. In Autonomous mode (claude -p), it picks tasks from the GitHub Project backlog and escalates only for defined edge cases.

Can I add custom roles?
Yes. Create a .md file in .claude/commands/ with a name: frontmatter field. The orchestrator uses it automatically, and can also create ad-hoc roles on the fly.

Do I need Docker / AGE graph / O'Brien?
No. The MCPs are entirely optional. The workspace and pipeline work without them. install-mcps is a separate optional step for teams that want persistent memory across sessions.

A safety hook is blocking a command I need.
Claude Code will prompt you to approve or deny the hook's decision. Click "Allow" to override for that command. You can also edit .claude/settings.json to adjust which hooks are active.

How do I update an existing workspace to the latest templates?
Run multiagent-setup update from inside your workspace. Your customised context files (CLAUDE.md, GEMINI.md, etc.) are preserved. Add --force to overwrite everything.

Where can I see what agents were spawned in a session?
The log-agent hook writes to .claude/agent-log.jsonl — one JSON line per agent launch with timestamp, type, model, and prompt preview.

Is this production-ready?
Yes. The tool has a stable API (breaking changes only in major version bumps). It's used for autonomous overnight runs and SaaS development sessions. The doctor command checks your workspace for common config issues.

Can the orchestrator run in CI without a local machine?
Yes. A GitHub Actions workflow (orchestrator.yml) is scaffolded for claude/nessy workspaces. It triggers on issue labels and runs the orchestrator headlessly via claude -p. See examples/ for autonomous session patterns.

Does the pipeline need internet access?
Only for git push/PR creation steps and any web research the agent does. All local code analysis, formatting, and linting runs offline.


Русская версия | Landing page

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
1.31.0 47 4/9/2026
1.30.0 35 4/9/2026
1.29.0 34 4/9/2026
1.28.0 36 4/9/2026
1.27.0 45 4/9/2026
1.26.0 35 4/9/2026
1.25.0 44 4/9/2026
1.24.0 52 4/8/2026
1.23.0 38 4/8/2026
1.22.0 41 4/8/2026
1.21.0 39 4/8/2026
1.20.0 35 4/8/2026
1.19.0 40 4/8/2026
1.18.0 42 4/8/2026
1.17.0 37 4/8/2026
1.16.0 41 4/8/2026
1.15.3 41 4/8/2026
1.15.2 36 4/8/2026
1.15.1 39 4/8/2026
1.15.0 35 4/8/2026
Loading failed