docs: add feature pages for remaining 8 v0.10 features (tiered-memory, reflect, error-recovery, teams-comms, fleet-dispatch, mcp-frontmatter, dual-mode, skill-security-scanner) + export-import --repo/--branch#1276
Conversation
Closes the rest of #1272 — covers the 8 user-facing features that had no dedicated docs page after PR #1274 (which covered preset, cross-squad discover, and coordinator-as-agent export). New pages (8): docs/features/tiered-memory.md (hot/cold/wiki memory model) docs/features/reflect.md (in-session learning skill) docs/features/error-recovery.md (failure recovery skill) docs/features/teams-comms.md (Microsoft Teams adapter) docs/features/fleet-dispatch.md (/fleet hybrid dispatch) docs/features/mcp-frontmatter.md (--mcp-frontmatter flag) docs/features/dual-mode-deployment.md (SQUAD_POD_ID, dual-mode capabilities) docs/features/skill-security-scanner.md (markdown-aware skill scanner) Updated (1): docs/features/export-import.md (added --repo / --branch sections) Source verification: - tiered-memory.md ← packages/squad-cli/templates/skills/tiered-memory/SKILL.md - reflect.md ← packages/squad-cli/templates/skills/reflect/SKILL.md - error-recovery.md ← packages/squad-cli/templates/skills/error-recovery/SKILL.md - teams-comms.md ← packages/squad-sdk/src/platform/comms-teams.ts + changeset - fleet-dispatch.md ← packages/squad-cli/src/cli/commands/watch/capabilities/fleet-dispatch.ts - mcp-frontmatter.md ← packages/squad-cli/src/cli-entry.ts:346 flag + init flow - dual-mode-deployment.md ← packages/squad-sdk/src/ralph/capabilities.ts - skill-security-scanner.md ← scripts/security-review.mjs + changeset - export-import.md edits ← packages/squad-cli/src/cli/commands/import.ts:817 Style matches existing feature pages (loop.md, plugins.md, preset.md format). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
🛫 PR Readiness Check
PR Scope: 🔧 Infrastructure
|
| Status | Check | Details |
|---|---|---|
| ❌ | Single commit | 2 commits — consider squashing before review |
| ✅ | Not in draft | Ready for review |
| ❌ | Branch up to date | dev is 15 commit(s) ahead — rebase recommended |
| ❌ | Copilot review | No Copilot review yet — it may still be processing |
| ✅ | Changeset present | No source files changed — changeset not required |
| ✅ | Scope clean | No .squad/ or docs/proposals/ files |
| ✅ | No merge conflicts | No merge conflicts |
| ❌ | Copilot threads resolved | 30 unresolved Copilot thread(s) — fix and resolve before merging |
| ✅ | CI passing | All checks passing |
Files Changed (10 files, +939 −1)
| File | +/− |
|---|---|
cspell.json |
+3 −1 |
docs/src/content/docs/features/dual-mode-deployment.md |
+132 −0 |
docs/src/content/docs/features/error-recovery.md |
+95 −0 |
docs/src/content/docs/features/export-import.md |
+41 −0 |
docs/src/content/docs/features/fleet-dispatch.md |
+132 −0 |
docs/src/content/docs/features/mcp-frontmatter.md |
+102 −0 |
docs/src/content/docs/features/reflect.md |
+91 −0 |
docs/src/content/docs/features/skill-security-scanner.md |
+118 −0 |
docs/src/content/docs/features/teams-comms.md |
+127 −0 |
docs/src/content/docs/features/tiered-memory.md |
+98 −0 |
Total: +939 −1
This check runs automatically on every push. Fix any ❌ items and push again.
See CONTRIBUTING.md and PR Requirements for details.
🟡 Impact Analysis — PR #1276Risk tier: 🟡 MEDIUM 📊 Summary
🎯 Risk Factors
📦 Modules Affecteddocs (9 files)
root (1 file)
This report is generated automatically for every PR. See #733 for details. |
There was a problem hiding this comment.
Pull request overview
Adds documentation pages intended to close the remaining v0.10 feature-doc gaps and updates the Export/Import docs to describe new repo/branch sync options.
Changes:
- Added 8 new feature pages under
docs/src/content/docs/features/(tiered-memory, reflect, error-recovery, teams-comms, fleet-dispatch, mcp-frontmatter, dual-mode-deployment, skill-security-scanner). - Updated
export-import.mdwith sections describing--repo/--branchflows forsquad exportandsquad import.
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 30 comments.
Show a summary per file
| File | Description |
|---|---|
| docs/src/content/docs/features/tiered-memory.md | New Tiered Memory documentation page (hot/cold/wiki model). |
| docs/src/content/docs/features/reflect.md | New Reflect skill documentation page (in-session learning capture). |
| docs/src/content/docs/features/error-recovery.md | New Error Recovery skill documentation page (standard recovery patterns). |
| docs/src/content/docs/features/teams-comms.md | New Microsoft Teams communication adapter documentation page. |
| docs/src/content/docs/features/fleet-dispatch.md | New Fleet Dispatch documentation page for squad watch dispatchMode behavior. |
| docs/src/content/docs/features/mcp-frontmatter.md | New docs page for squad init --mcp-frontmatter and MCP config placement. |
| docs/src/content/docs/features/dual-mode-deployment.md | New docs page for pod-aware capability manifests and env vars. |
| docs/src/content/docs/features/skill-security-scanner.md | New docs page describing a “skill security scanner” / security-review behavior. |
| docs/src/content/docs/features/export-import.md | Expanded Export/Import docs with --repo / --branch sections. |
| The export lands at the repo root as `squad-export.json` by default. Combine with `--out` to control the filename inside the repo: | ||
|
|
||
| ```bash | ||
| squad export --repo myorg/squad-backups --out my-team-2026-06-11.json | ||
| ``` |
| # Import a specific filename or branch | ||
| squad import --repo myorg/squad-backups --branch nightly | ||
| squad import --repo myorg/squad-backups --out my-team-2026-06-11.json |
| Requirements: | ||
| - GitHub CLI (`gh`) installed and authenticated with read access to the source repo | ||
| - The export file must exist at the named path in the repo (default: `squad-export.json` at repo root) | ||
|
|
| 1. **Cached token** — looks for a previously-saved token in the OS credential store | ||
| 2. **Refresh token** — if cached refresh token is valid, silently re-issues an access token | ||
| 3. **Browser PKCE** — opens a browser for the user to sign in; uses Authorization Code with PKCE; 120-second timeout | ||
| 4. **Device code** — fallback when no browser is available (CI, remote shell); user enters a code on a different device |
| The adapter requires a Microsoft Entra (Azure AD) app registration with permissions for: | ||
|
|
||
| - `Chat.ReadWrite` (1:1 chat operations) | ||
| - `ChannelMessage.Send` (channel posts) | ||
| - `ChannelMessage.Read.All` (read channel replies) | ||
| - `User.Read` (basic profile) | ||
|
|
| node scripts/security-review.mjs --scope skills | ||
|
|
||
| # Scan a single skill file | ||
| node scripts/security-review.mjs --file .copilot/skills/my-skill/SKILL.md | ||
|
|
||
| # JSON output for tooling integration | ||
| node scripts/security-review.mjs --scope skills --format json |
| Exit codes: | ||
| - `0` — no findings | ||
| - `1` — findings detected (CI fails the build) | ||
| - `2` — scanner error (couldn't read file, malformed markdown, etc.) |
| ## Caveats | ||
|
|
||
| - **The tier split is currently advisory** — the skill defines hot/cold/wiki semantics, but the spawn template doesn't yet enforce `--include-cold` / `--include-wiki` flags as part of the runtime contract. Adoption is per-team via spawn-template edits. | ||
| - **Wiki has no UI** — there's no `squad wiki list` command yet. Entries live as files in `.squad/wiki/` (when teams create that directory) and the coordinator references them by path. |
|
|
||
| - **No automatic pod discovery.** The SDK reads env vars to know who it is; it doesn't enumerate sibling pods or coordinate work distribution. That's the deployment orchestrator's job (KEDA, scheduler). | ||
| - **No central capability registry.** Pods don't publish their capabilities back to anything; each pod evaluates issues against its own loaded manifest independently. If you need a central view, your orchestrator must aggregate. | ||
| - **Manifest changes require redeploy or restart.** The fallback lookup happens on capability resolution; manifest content is read from disk each time but the manifest *path* is decided by env vars set at process start. |
| 6. The prompt is sent as a single `copilot --fleet` invocation | ||
| 7. Copilot runs all tracks in parallel, posts comments per issue, exits |
bradygaster
left a comment
There was a problem hiding this comment.
✅ Flight approves. Pure docs addition for v0.10 features. The docs-quality check fails on 'typoo' in error-recovery.md:79 — that appears to be an intentional typo used in the error-recovery demo. If not intentional, trivial fix.
…mple
CI failure on docs-quality: cspell flagged 9 words across 3 of the
new feature pages added by this PR. All 9 are legitimate technical
terms or intentional content (not typos):
- PKCE (RFC 7636 — OAuth Proof Key for Code Exchange) — 5 hits in
teams-comms.md
- MSAL (Microsoft Authentication Library) — 1 hit in teams-comms.md
- AKIA (AWS access key ID prefix) — 1 hit in skill-security-scanner.md
- runas (Windows runas elevation primitive) — 1 hit in
skill-security-scanner.md
- 'typoo' — an INTENTIONAL typo in an error-recovery example showing
'don't retry the user's typo by adding another character'
Added all 5 to cspell.json. Verified locally: npx cspell --no-progress
--dot 'docs/src/content/**/*.md' 'README.md' → 0 issues across 166 files.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
What
Closes the remaining 8 (of 11) user-facing v0.10 features from #1272. Continuation of #1274 (preset, cross-squad, coordinator-as-agent).
New pages (8)
features/tiered-memory.mdpackages/squad-cli/templates/skills/tiered-memory/SKILL.mdfeatures/reflect.mdpackages/squad-cli/templates/skills/reflect/SKILL.mdfeatures/error-recovery.mdpackages/squad-cli/templates/skills/error-recovery/SKILL.mdfeatures/teams-comms.mdpackages/squad-sdk/src/platform/comms-teams.ts+ changesetfeatures/fleet-dispatch.md/fleethybrid dispatch mode forsquad watchpackages/squad-cli/src/cli/commands/watch/capabilities/fleet-dispatch.tsfeatures/mcp-frontmatter.mdsquad init --mcp-frontmatterflagpackages/squad-cli/src/cli-entry.ts:346features/dual-mode-deployment.mdSQUAD_POD_ID+ pod-specific capabilitiespackages/squad-sdk/src/ralph/capabilities.tsfeatures/skill-security-scanner.mdscripts/security-review.mjs+ changesetEdited (1)
features/export-import.md--repo/--branchsections for bothsquad exportandsquad importWhy
#1272 identified that ~37% of v0.10 user-facing features had no dedicated docs. PR #1274 covered the top 3 priorities; this PR closes the remaining 8.
Source verification
Each page was written against the actual implementation:
.changeset/<feature>.mddescriptionPush protection note
Initial push was blocked by GitHub Secret Scanning — the original
skill-security-scanner.mdused realistic-looking credential strings in the "What it catches" examples table. Amended the commit to use unambiguous placeholder syntax (<long-secret-token-value>,ghp_<40-character-token>, etc.) which the scanner ignores. The page still teaches users what kinds of strings would trip the scanner without containing matches itself.Combined v0.10 docs coverage after merging
Related