Releases: bradygaster/squad
Release list
v0.11.0
Squad 0.11.0 — portable teams, sharper Copilot App execution, and a harder release train
Squad 0.11.0 turns teams into something you can share, cast, and coordinate across repositories: preset installs, cross-squad discovery, cast terminology, Copilot App sub-sessions, memory tools through squad_state, and slimmer satellite skills all land alongside the toolchain refresh to @github/copilot-sdk 1.0.4, TypeScript 6, Vitest 4, Ink 7, and OpenTelemetry 2.x. This release also rolls up a major stability and Windows-hardening pass — including the workspace-resolution fix in #1406 — across 104 merged PRs from 8 PR authors.
✨ Highlights
- Install shared team presets directly with
squad preset install <source>from GitHub URLs or local paths. - Use the new
castterminology everywhere, while existinghireworkflows continue through a silent compatibility alias. - Register discovery-only peer squads with
squad registryand the bundled cross-squad communication skill. - Spawn cast members as Copilot App sub-sessions and carry reasoning-effort settings through agent dispatch.
- Use memory tools through the
squad_stateMCP server, with improved Fact Checker scaffolding and plumbing. - Find bundled skills under
.github/skills/, with long agent guidance split out ofsquad.agent.mdinto satellite skills. - Avoid stale published-SDK crashes in local builds thanks to the #1406 workspace-resolution fix.
Added
- (cli) Added
squad preset install <source>for installing shared presets from GitHub URLs or local paths (#1224). - (cli) Added
squad registry add/list/removefor discovery-only peer squads, plus the bundled cross-squad communication skill. - (cli) Added
castterminology across help and docs while keepinghireas a silent compatibility alias (#1394). - (sdk+cli) Added Copilot App sub-session spawning for cast members and threaded reasoning-effort settings through agent dispatch (#1385).
- (sdk+cli) Exposed memory tools through the
squad_stateMCP server and improved Fact Checker auto-scaffolding/plumbing.
Changed
- (sdk+cli) Slimmed the bundled
squad.agent.mdby extracting long guidance into satellite skills (#1311). - (cli) Moved bundled skills from
.copilot/skills/to.github/skills/so they are visible to all Copilot surfaces. - (cli) Renamed user-facing “.NET Aspire” references to “Aspire” in CLI help and command output (#1239).
- (sdk+cli) Refreshed the toolchain and integrations, including
@github/copilot-sdk1.0.4, TypeScript 6, Vitest 4, Ink 7, OpenTelemetry 2.x, and Node type updates.
Fixed
- (cli) Pinned CLI-to-SDK workspace resolution so local builds and runtime use the workspace SDK instead of a stale published package (#1406).
- (sdk+cli) Restored the green test suite by reconciling personal squad paths, stabilizing observer category handling, guarding storage case-insensitivity, and skipping environment-dependent tests when prerequisites are missing (#1416).
- (sdk+cli) Guarded symlink-sensitive tests on Windows or restricted CI filesystems (#1418).
- (sdk+cli) Hardened observer change resolution for directory events, symlinks, and filesystem scan errors.
- (sdk+cli) Fixed state-backend handshake,
SQUAD_HOME/SQUAD_PERSONAL_DIRresolution, preset apply wiring, routing example quote stripping, YAML escaping, and MCP config pollution regressions. - (cli) Fixed Windows command escaping, top-level help coverage for
externalize/internalize, slash-command discovery, and upgrade/self-repair flows. - (sdk) Exported gitignore-state helpers, updated OTel resource APIs for 2.x, and aligned the adapter client with
@github/copilot-sdk1.0.4.
📦 Install / Upgrade
npm install -g @bradygaster/squad-cli@0.11.0Existing installs can run:
squad upgradeBoth @bradygaster/squad-cli and @bradygaster/squad-sdk are published at 0.11.0.
🙏 Contributors
Thank you to @bradygaster, @tamirdresher, @Meir017, @primetimetank21, @IEvangelist, @ahhlun, @duongau, and @obit91 — plus app/dependabot for automated dependency maintenance — for the 104 merged PRs that landed in this release.
Full Changelog: v0.10.0...v0.11.0
v0.10.0
What's Changed
- docs: add user-facing documentation for state backends by @tamirdresher in #996
- chore: CI cleanup — delete ci-rerun.yml, streamline squad-ci.yml (#1000) by @bradygaster in #1001
- fix: add "mktree" to cspell dictionary by @tamirdresher in #1018
- fix: remove duplicate permissions key in squad-ci.yml by @tamirdresher in #1020
- fix: remove duplicate permission + add mktree to cspell by @tamirdresher in #1005
- fix: resolve 404 on API docs navigation link by @ilyas-it83 in #1008
- test: fix .NET detection tests to use upgrade instead of init by @tamirdresher in #1030
- fix: lockfile integrity check excludes workspace-local packages by @bradygaster in #1044
- feat: add SQUAD_HOME env var and preset system by @paulyuk in #1041
- fix: update post-init message to recommend copilot --agent squad by @gaburn in #1045
- fix: add missing YAML frontmatter to skill files by @gaburn in #1046
- fix(sdk): squad_route handler returns false success without spawning a session by @jagilber in #1066
- fix: replace hardcoded Brady in template examples by @gaburn in #1063
- feat: wire state backends into all squad operations (worktree, git-notes, orphan, two-layer) by @tamirdresher in #1004
- chore: eliminate insider branch — consolidate to dev-based npm tag by @tamirdresher in #1095
- fix: auto-generate insider prerelease versions + bump to 0.9.6 by @tamirdresher in #1097
- fix: pin SDK dependency to insider version during publish by @tamirdresher in #1098
- fix(platform): allow dots in repo names when parsing remote URLs by @vejadu in #1078
- docs: update local development setup documentation by @anchapin in #1059
- chore(deps): drop redundant deps, stop committing tarballs, cache docs CI by @spboyer in #1110
- feat(bench): add npm run bench + bench:cold-start runners by @spboyer in #1111
- perf(resolution): memoize squad-dir lookups; dedupe squads.json reads by @spboyer in #1112
- perf(agents): parallel charter discovery with bounded concurrency by @spboyer in #1113
- perf(scheduler): non-blocking script task execution by @spboyer in #1114
- fix(windows): Fix az CLI execution and ADO state mapping on Windows by @michaeldevenney in #1055
- Fix current datetime propagation by @spboyer in #1120
- docs: add e2e template testing skill and CONTRIBUTING.md guide by @tamirdresher in #1022
- Implement declarative plugin behavior context proof (#1068) by @tamirdresher in #1092
- feat: import/export Squad configuration to/from GitHub repos by @bradygaster in #1131
- fix: preserve decisions.md and team.md content during export/import by @bradygaster in #1130
- feat: add routing.md to squad export/import functionality by @bradygaster in #1129
- fix(coordinator): resolve all P1 coordinator bugs — externalized state, teamRoot, stale work, cleanup loops by @bradygaster in #1132
- fix: 5 bug fixes — dotted repos, icon spacing, board owner, charter, playbooks by @bradygaster in #1133
- fix: Squash the Gremlins — 5 bug fixes (#920, #1062, #880, #1107, #905) by @bradygaster in #1134
- Add governed memory model, provider boundaries, diagnostics, and CLI validation by @tamirdresher in #1145
- fix: context overflow sentinel and coordinator size reduction by @obit91 in #1035
- Route squad state through runtime tools by @tamirdresher in #1158
- fix(ci): update scribe-template test to read from scribe-charter.md by @obit91 in #1154
- fix: bump CLI version to 0.9.7-preview and relax E2E skill version check by @obit91 in #1155
- fix: keep squad_state MCP config portable by @weinong in #1164
- feat: add Rai ("Ray") as built-in RAI reviewer agent by @bradygaster in #1143
- feat: session init update check (#1173) by @tamirdresher in #1175
- Add MCP frontmatter option to squad init by @weinong in #1166
- fix(ci): align scribe + datetime template tests with current charter/spawn layout by @obit91 in #1178
- feat: add squad-commands skill by @tamirdresher in #1174
- Updating installation instructions for Squad to include default initialization in core README by @paulyuk in #1181
- feat(skills): scan all 5 Copilot CLI skill paths (not just .copilot/skills + .squad/skills) by @tamirdresher in #1209
- fix(cli): intercept --help on every subcommand (#1201) by @tamirdresher in #1202
- fix: comprehensive state-backend fixes (bundles #1192 + Bug C/F/WI-1/upgrade flow) by @tamirdresher in #1200
- Docs: add CONTRIBUTING guideline against incidental reformatting/refactoring by @obit91 in #1198
- chore: sync main → dev (Phase 0 for v0.10.0 release) by @tamirdresher in #1212
- fix(ci): expand changelog gate to cover template and scaffolding paths by @obit91 in #1195
- fix(docs): re-run home scroll-reveal after View Transitions navigation by @IEvangelist in #1215
- chore: release v0.10.0 by @tamirdresher in #1218
- ci: add tamirdresher to CHANGELOG Write Protection allowlist by @tamirdresher in #1220
- chore: promote v0.10.0 (dev → main) by @tamirdresher in #1219
New Contributors
- @ilyas-it83 made their first contribution in #1008
- @paulyuk made their first contribution in #1041
- @gaburn made their first contribution in #1045
- @jagilber made their first contribution in #1066
- @vejadu made their first contribution in #1078
- @anchapin made their first contribution in #1059
- @michaeldevenney made their first contribution in #1055
- @obit91 made their first contribution in #1035
- @weinong made their first contribution in #1164
Full Changelog: v0.9.4...v0.10.0
v0.9.6-insider.3
What's Changed
- docs: add user-facing documentation for state backends by @tamirdresher in #996
- chore: CI cleanup — delete ci-rerun.yml, streamline squad-ci.yml (#1000) by @bradygaster in #1001
- fix: add "mktree" to cspell dictionary by @tamirdresher in #1018
- fix: remove duplicate permissions key in squad-ci.yml by @tamirdresher in #1020
- fix: remove duplicate permission + add mktree to cspell by @tamirdresher in #1005
- fix: resolve 404 on API docs navigation link by @ilyas-it83 in #1008
- test: fix .NET detection tests to use upgrade instead of init by @tamirdresher in #1030
- feat: add SQUAD_HOME env var and preset system by @paulyuk in #1041
- fix: update post-init message to recommend copilot --agent squad by @gaburn in #1045
- fix: add missing YAML frontmatter to skill files by @gaburn in #1046
- fix(sdk): squad_route handler returns false success without spawning a session by @jagilber in #1066
- fix: replace hardcoded Brady in template examples by @gaburn in #1063
- feat: wire state backends into all squad operations (worktree, git-notes, orphan, two-layer) by @tamirdresher in #1004
- chore: eliminate insider branch — consolidate to dev-based npm tag by @tamirdresher in #1095
- fix: auto-generate insider prerelease versions + bump to 0.9.6 by @tamirdresher in #1097
- fix: pin SDK dependency to insider version during publish by @tamirdresher in #1098
- docs: update local development setup documentation by @anchapin in #1059
- chore(deps): drop redundant deps, stop committing tarballs, cache docs CI by @spboyer in #1110
- feat(bench): add npm run bench + bench:cold-start runners by @spboyer in #1111
- perf(resolution): memoize squad-dir lookups; dedupe squads.json reads by @spboyer in #1112
- perf(agents): parallel charter discovery with bounded concurrency by @spboyer in #1113
- perf(scheduler): non-blocking script task execution by @spboyer in #1114
- fix(windows): Fix az CLI execution and ADO state mapping on Windows by @michaeldevenney in #1055
- Fix current datetime propagation by @spboyer in #1120
- docs: add e2e template testing skill and CONTRIBUTING.md guide by @tamirdresher in #1022
- Implement declarative plugin behavior context proof (#1068) by @tamirdresher in #1092
- feat: import/export Squad configuration to/from GitHub repos by @bradygaster in #1131
- fix: preserve decisions.md and team.md content during export/import by @bradygaster in #1130
- feat: add routing.md to squad export/import functionality by @bradygaster in #1129
- fix(coordinator): resolve all P1 coordinator bugs — externalized state, teamRoot, stale work, cleanup loops by @bradygaster in #1132
- fix: 5 bug fixes — dotted repos, icon spacing, board owner, charter, playbooks by @bradygaster in #1133
- fix: Squash the Gremlins — 5 bug fixes (#920, #1062, #880, #1107, #905) by @bradygaster in #1134
- Add governed memory model, provider boundaries, diagnostics, and CLI validation by @tamirdresher in #1145
- fix: context overflow sentinel and coordinator size reduction by @obit91 in #1035
- Route squad state through runtime tools by @tamirdresher in #1158
- fix(ci): update scribe-template test to read from scribe-charter.md by @obit91 in #1154
- fix: bump CLI version to 0.9.7-preview and relax E2E skill version check by @obit91 in #1155
- fix: keep squad_state MCP config portable by @weinong in #1164
- feat: add Rai ("Ray") as built-in RAI reviewer agent by @bradygaster in #1143
- feat: session init update check (#1173) by @tamirdresher in #1175
- Add MCP frontmatter option to squad init by @weinong in #1166
- fix(ci): align scribe + datetime template tests with current charter/spawn layout by @obit91 in #1178
- feat: add squad-commands skill by @tamirdresher in #1174
- Updating installation instructions for Squad to include default initialization in core README by @paulyuk in #1181
New Contributors
- @ilyas-it83 made their first contribution in #1008
- @paulyuk made their first contribution in #1041
- @gaburn made their first contribution in #1045
- @jagilber made their first contribution in #1066
- @anchapin made their first contribution in #1059
- @michaeldevenney made their first contribution in #1055
- @obit91 made their first contribution in #1035
- @weinong made their first contribution in #1164
Full Changelog: v0.9.4...v0.9.6-insider.3
v0.9.4
What's Changed
- chore: release process hardening + docs dark mode fix by @bradygaster in #569
- chore: promote dev to main (docs dark mode fix) by @bradygaster in #570
- feat(docs): add version badge to footer by @diberry in #571
- feat(capabilities): dual-mode deployment — agent-per-node + squad-per-pod (#514) by @tamirdresher in #555
- feat(watch): circuit breaker integration — additive patch (#515) by @tamirdresher in #552
- docs: v0.9.0 missing feature docs (capability routing, rate limiting, economy mode, cross-machine, KEDA) by @diberry in #568
- docs: update Chinese README translation by @bradygaster in #572
- feat(skills): add cross-machine-coordination skill for multi-machine squad deployments by @tamirdresher in #513
- docs: add link to Tamir's Squad Skills Workshop by @diberry in #573
- docs: add case-insensitive path comparison to windows-compatibility skill by @diberry in #574
- fix(shell): robust agent name extraction with multi-pattern fallback (#577) by @bradygaster in #578
- fix(init): scaffold casting files + silence no-remote errors (#579) by @bradygaster in #583
- fix: personal squad init via npx discovers ~/.config/squad/ (#576) by @bradygaster in #580
- ci+docs: release hardening — playbook rewrite + publish-policy lint (#564, #557) by @bradygaster in #584
- fix(doctor): actionable warnings + squad.agent.md check (#565, #533) by @bradygaster in #586
- fix: getPersonalSquadRoot() returns correct personal-squad path (#590) by @bradygaster in #620
- fix: add count-based fallback to archiveDecisions() (#626) by @bradygaster in #627
- fix: rename template copies to prevent CLI instruction merging (#613) by @bradygaster in #624
- docs: TypeDoc API reference — build pipeline, tests, navigation by @diberry in #611
- fix: platform-neutral routing enforcement for VS Code (#613) by @bradygaster in #617
- Add enforcement wiring step to hiring process + workflow wiring guide by @joniba in #592
- chore: update model catalog in squad.agent.md (#588) by @bradygaster in #619
- feat(skills): add notification-routing skill -- pub-sub channel routing to prevent alert fatigue by @tamirdresher in #625
- Revise security policy with reporting and disclosure info by @eric-vanartsdalen in #608
- feat(agents): add Challenger / Devil's Advocate agent template + fact-checking skill by @tamirdresher in #603
- feat(cli): add squad config model command for model pinning (#618) by @bradygaster in #628
- CI: Add source tree canary and large deletion guard by @bradygaster in #634
- Add git safety rules to copilot-instructions.md by @bradygaster in #635
- fix(scribe): add HARD GATE archival with two-tier thresholds to Scribe workflow by @diberry in #637
- chore(scribe): mandate YYYY-MM-DD date format in charter by @diberry in #649
- docs: circuit breaker pattern guide by @diberry in #647
- docs(nap): add archiveDecisions() contract comment by @diberry in #648
- feat(skills): add iterative-retrieval skill -- max-3-cycle agent spawn protocol by @tamirdresher in #622
- feat(skills): add error-recovery skill -- standard agent failure recovery patterns by @tamirdresher in #623
- feat(skills): add reflect skill -- in-session learning capture and mistake prevention by @tamirdresher in #621
- feat(skills): add ralph-two-pass-scan skill -- two-pass lightweight scan before selective hydration by @tamirdresher in #629
- feat(ceremonies): automated retro enforcement - GitHub Issues over markdown by @tamirdresher in #630
- feat(memory): tiered agent memory skill — hot/cold/wiki tiers by @tamirdresher in #606
- fix(ci): rename node:test files to .cjs for ESM compatibility by @tamirdresher in #671
- feat: add PR requirements spec and PR template by @diberry in #672
- feat(ci): add CHANGELOG and exports map completeness gates by @diberry in #673
- feat(ci): add samples build validation gate by @diberry in #674
- fix(sdk,cli): remove prerelease version suffixes by @diberry in #690
- feat(ci): add workspace integrity, prerelease guard, and export smoke gates by @diberry in #691
- docs(skill): add versioning policy by @diberry in #692
- fix(ci): strip trailing slash from sample_dir path variable by @diberry in #693
- fix(ci): remove all cron schedules from GitHub Actions workflows (#694) by @bradygaster in #695
- fix(ci): remove all cron schedules — push to main by @bradygaster in #696
- fix(ci): combined CI workarounds (#697 + #698) by @diberry in #699
- fix(ci): 5 quick-win CI hardening improvements (#121) by @diberry in #700
- feat(sdk): StorageProvider abstraction — complete migration + example providers by @diberry in #640
- feat(ci): CI hardening phase 2 — items 6-10 + security hardening by @diberry in #701
- feat(cli): upgrade squad watch to full work monitor with --execute mode (#708) by @tamirdresher in #709
- docs: contributor guide improvements proposal by @diberry in #702
- devops(ci): add concurrency controls to 5 workflows (Phase 3 item A1) by @diberry in #705
- fix(nap): account for separator newlines in decision archival budget by @diberry in #726
- fix(ci): changelog-gate accepts .changeset/ files by @diberry in #746
- fix(cli): revert detect-squad-dir to zero-dependency bootstrap by @diberry in #756
- feat(cli): Add squad loop command (#761) by @diberry in #767
- fix(cli,sdk): warn when squad.agent.md template is missing during upgrade/init by @diberry in #762
- skill(review): add architectural and security review skills by @diberry in #766
- feat(ci): automated PR readiness checks — contributor feedback before review by @diberry in #752
- fix(triage): slugify agent names for labels + pre-create missing labels by @tamirdresher in #785
- fix: eliminate PR contamination from broad git staging (#777) by @diberry in #783
- feat(ci): add repo health checks by @diberry in #769
- feat(ci): add pull request template with contributor checklist by @diberry in #779
- fix: ignore outdated Copilot review threads in PR readiness check by @diberry in #780
- feat(ci): add PR architectural impact analysis (#733) by @diberry in #786
- fix(ci): impact workflow permission — issues:write → pull-requests:write by @diberry in #816
- fix(watch): 3 UX improvements — round timing, --log-file, immediate feedback (#2141) by @tamirdresher in #831
- feat(watch): /fleet hybrid dispatch — 2.9x faster parallel execution by @tamirdresher in #776
- feat(watch): --verbose flag for debugging empty boards by @tamirdresher in #782
- fix(cli): squad doctor — add casting dir to upgrade, improve global install warnings by @diberry in #823
- feat(watch): next-gen watch with execute redesign, robustness, and PS1 parity by @tamirdresher in #830
- feat(sdk,cli): built-in fact-checker agent role (#789) by @tamirdresher in #795
- feat(cli): ship 8 built-in skills on init/upgrade (#788) by @tamirdresher in #796
- fix(cli): wire SQUAD_TEAM_ROOT into squad resolution for subprocess compatibility (#734) by @Amand...
v0.9.1
Hotfix: fixes broken npm install from v0.9.0
v0.9.0
See CHANGELOG.md for full release notes.
v0.8.25
Release v0.8.25
✨ Highlights
CLI Packaging Smoke Test & Pre-Publish Gate
- Added comprehensive CLI packaging smoke test suite (32 tests)
- Validates all 27 CLI commands + 3 aliases in packaged artifact before publish
- Pre-publish CI gate in publish.yml blocks broken releases from reaching npm
- Test baseline: 3,963+ tests passing
🔒 Quality Assurance
- Full test suite validated before release
- Smoke test verifies packaged CLI integrity
- Pre-publish gate ensures production readiness
📦 Packages
- @bradygaster/squad-sdk@0.8.25
- @bradygaster/squad-cli@0.8.25
This release was orchestrated by Surgeon (Release Manager) with approval from FIDO and EECOM.
v0.8.24
v0.8.24 — Azure DevOps, CommunicationAdapter, SubSquads, Security Hardening
Highlights
- Azure DevOps Platform Adapter — Native ADO support with PlatformAdapter interface (GitHub, ADO, Planner)
- CommunicationAdapter — Pluggable agent-human messaging (FileLog, GitHub Discussions, ADO, Teams stub)
- SubSquads — Community-voted rename from Workstreams
- Security Hardening — Shell injection, WIQL injection, bearer token exposure fixes
- ESM Runtime Patch — Node 24+ compatibility fix
- Secret Guardrails — 5-layer defense architecture with 59 TDD tests
- Docs Improvements — Contributor guide, contributors page, broken links fixed
Stats
- 8 PRs merged
- 153+ new tests (92 platform + 15 comms + 46 SubSquads + 59 security)
- 8 issues closed
- 3 new docs pages
Install
npm install -g @bradygaster/squad-cli@0.8.24
Contributors
@tamirdresher @wiisaacs @dfberry @lbouriez @eric-vanartsdalen @LasseAtSparkron @bradygaster
Full changelog: https://bradygaster.github.io/squad/blog/026-whats-new-ado-comms-subsquads.html
v0.8.23 — Node 24 ESM Fix
What's New
🔴 Critical Fix: Node 24+ Compatibility
- Fixed
ERR_MODULE_NOT_FOUNDcrash when runningsquad initon Node.js 24+ (GitHub Codespaces) - Root cause:
@github/copilot-sdkimportsvscode-jsonrpc/nodewithout.jsextension — Node 24 enforces strict ESM - Two-layer defense: lazy copilot-sdk imports (commands that don't need it never load it) + postinstall patch script
📡 Squad RC Documentation
- New comprehensive guide:
docs/features/squad-rc.md(15KB) — full ACP passthrough architecture, security model, mobile experience - 43 new tests for the RC command (
test/cli/rc.test.ts) - 3 bug fixes: PWA static files not copied to dist, hardcoded Windows copilot path, uncleaned interval on shutdown
📋 CI/CD PRD
- Unified CI/CD & GitOps PRD from Trejo and Drucker audits (29 prioritized work items)
- Team restructure: Kobayashi retired, Trejo (Release Manager) and Drucker (CI/CD Engineer) hired
Full Changelog: v0.8.22...v0.8.23
v0.8.22
Squad v0.8.22
SDK-first architecture, defineSkill builder, squad migrate command, terminal flicker fix, and CI-based npm publishing.
See CHANGELOG.md for full details.