bradygaster/squad is a tool that creates a human-directed team of AI development agents inside a project repository through GitHub Copilot. Developers use it to delegate work among persistent specialists such as frontend, backend, testing, and lead agents while retaining responsibility for decisions and review. The catalogue entries are the skills, agents, and instructions that define and coordinate those team members.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add bradygaster/squad --skill coordinator-init-modegit clone --depth 1 https://github.com/bradygaster/squadWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/bradygaster/squad/coordinator-init-mode)<a href="https://agentmods.dev/skills/bradygaster/squad/coordinator-init-mode"><img src="https://agentmods.dev/badge/skills/bradygaster/squad/coordinator-init-mode/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/bradygaster/squad/coordinator-init-mode"><img src="https://agentmods.dev/badge/skills/bradygaster/squad/coordinator-init-mode.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00098 | $0.01937 |
| Opus 5.5 | $0.00039 | $0.00775 |
| Sonnet 5.5 | $0.00020 | $0.00387 |
| Haiku 4.5 | $0.00010 | $0.00194 |
Grade A, and why
coordinator-init-mode scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
100% identical to coordinator-init-mode — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 100 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Load this skill when: you detect that no
.squad/team.mdexists in the resolved team root — that means this is a fresh repo or a repo that has never been squadified, and Init Mode is the right path. The short stub insquad.agent.mdtells you to load this skill; the full two-phase protocol lives here.⚠️ Eager-execution exception: Init Mode is the ONE exception to the eager-execution / parallel-fan-out doctrine. Phase 1 MUST end with a user confirmation before any file is created. Do not bypass.
Phase 1: Propose the Team
No team exists yet. Propose one — but DO NOT create any files until the user confirms.
- Identify the user. Run
git config user.nameto learn who you're working with. Use their name in conversation (e.g., "Hey {user}, what are you building?"). Store their name (NOT email) inteam.mdunder Project Context. Never read or storegit config user.email— email addresses are PII and must not be written to committed files. - Ask: "What are you building? (language, stack, what it does)"
- Cast the team. Before proposing names, run the Casting & Persistent Naming algorithm (see the canonical Casting reference at
.squad/templates/casting-reference.md):- Determine team size: pick 4–5 cast (user-domain) agents, then add the 4 always-on built-ins (Scribe + Ralph + Rai + Fact Checker — see their dedicated sections in
squad.agent.md). A typical fresh squad has 8–9 total roster entries, not 4–5. - Determine assignment shape from the user's project description.
- Derive resonance signals from the session and repo context.
- Select a universe. Allocate character names from that universe.
- Scribe is always "Scribe" — exempt from casting.
- Ralph is always "Ralph" — exempt from casting.
- Rai is always "Rai" — exempt from casting.
- Fact Checker is always "Fact Checker" — exempt from casting (same pattern as Scribe / Ralph / Rai).
- Determine team size: pick 4–5 cast (user-domain) agents, then add the 4 always-on built-ins (Scribe + Ralph + Rai + Fact Checker — see their dedicated sections in
- Propose the team with their cast names. Example (names will vary per cast):
🏗️ {CastName1} — Lead Scope, decisions, code review
⚛️ {CastName2} — Frontend Dev React, UI, components
🔧 {CastName3} — Backend Dev APIs, database, services
🧪 {CastName4} — Tester Tests, quality, edge cases
📋 Scribe — (silent) Memory, decisions, session logs
🔄 Ralph — (monitor) Work queue, backlog, keep-alive
🛡️ Rai — (background) RAI awareness, content safety
🔍 Fact Checker — (verifier) Verification + Devil's Advocate
-
Use the
ask_usertool to confirm the roster. Provide choices so the user sees a selectable menu.The
questionmust be self-contained because the client may render the blocking input request without the assistant text that preceded it.The
questionmust reuse every roster line from the exact proposal emitted in step 4, in the same order. Do not regenerate, summarize, truncate, omit, or replace any roster row with an ellipsis. Every proposed member must appear with their emoji, cast name, role, and concise responsibility/scope — including all four always-on built-ins (Scribe, Ralph, Rai, Fact Checker).Shape:
Confirm this team (universe: {ActualUniverse}): {Every roster line from step 4, copied in full and in order} Look right?Never use a bare "Look right?" question and never rely on preceding assistant output to identify the team being confirmed.
- choices:
["Yes, hire this team", "Add someone", "Change a role"]
- choices:
⚠️ STOP. Your response ENDS here. Do NOT proceed to Phase 2. Do NOT create any files or directories. Wait for the user's reply.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 100 lines · 98 tokens per session scan A 3e74448a4837
coordinator-init-mode is a skill published in the GitHub repository bradygaster/squad (3,300 stars, last pushed today), licensed MIT. It adds 98 tokens to every session and 1,937 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. It is 100% identical to coordinator-init-mode, differing in 0 lines, and is treated as a copy.
Other skills, from other repositories
Video Downloader (yt-dlp)
Download videos from YouTube, TikTok, and 50+ platforms.
ponytail-gain
Show ponytail's measured impact as a compact scoreboard: less code, less cost, more speed, from the benchmark medians. One-shot display, not a persistent mode, and not a per-repo number. Trigger: /ponytail-gain, "ponytail gain", "what does ponytail save", "show ponytail impact", "ponytail scoreboard".
omk-mcp-setup
Inspect Neo bundled skills and curated stdio MCP presets, explain permissions and network effects, and configure only explicitly selected servers without overwriting existing user configuration or claiming untested connectivity.
clean-architecture-dotnet
Use when domain logic leaks into API/Infrastructure, project references violate layer boundaries, or you need to decide between CQS (always), CQRS bus (complex domains), and DDD patterns (invariants and events).
outside-in-tdd
Use when writing tests from the outside-in, defining behavior before code, or any feature where tests should start from observable business behavior and let internal design emerge.
searching-text
Use when searching for text patterns across files, finding specific code locations, or getting lines with surrounding context in a single call.