Repository navigation
Closed
Labels
go:needs-researchNeeds investigationNeeds investigationnext-upPriority queue — next issues to workPriority queue — next issues to workpriority:p2Next sprintNext sprintsquadSquad triage inbox — Lead will assign to a memberSquad triage inbox — Lead will assign to a membertype:featureNew capabilityNew capability
Description
Problem
The personal squad path resolution (resolveGlobalSquadPath() → platform-specific dirs like ~/.config/squad/) lives entirely in SDK code. The governance layer — squad.agent.md, charter templates, and skills — has zero awareness of personal squads.
What's missing
1. squad.agent.md (coordinator instructions)
- Init Mode references
--globalbut doesn't explain where it resolves to - No guidance for agents operating in consult mode against a personal squad
- The
TEAM_ROOTconcept works, but nothing tells the coordinator that a personal squad has different semantics (shared across projects, skills are portable, etc.)
2. Charter templates (.squad/templates/charter.md)
- No personal-squad-aware patterns
- When casting a personal squad, charters should reflect that skills/knowledge are project-agnostic
- No guidance on "this agent lives in a personal squad and will be used across multiple repos"
3. Skills and templates
- All
.squad/skills/and.squad/templates/reference.squad/as project-relative only - No skill for "how to behave when spawned from a personal squad" or "how consult mode changes agent behavior"
Impact
- Agents spawned via consult mode don't know they're backed by a personal squad
- The coordinator can't give agents context about personal vs project squads
- Personal squad casting has no template support (related: CLI casting bypasses CastingEngine template system #342)
- Skills earned in one project via a personal squad have no guidance on portability
Expected Behavior
The governance layer should:
- Define personal squad semantics in
squad.agent.md(how consult mode works, whatTEAM_ROOTmeans when pointing to a personal squad) - Provide charter template variants for personal squad agents (project-agnostic framing)
- Include a skill or template for consult-mode behavior (what's different when the squad is personal)
Related
- CLI casting bypasses CastingEngine template system #342 — CLI casting bypasses CastingEngine template system
- Personal squad docs reference ~/.squad/ instead of platform-specific paths #343 — Personal squad docs reference
~/.squad/instead of platform-specific paths
Metadata
Metadata
Assignees
Labels
go:needs-researchNeeds investigationNeeds investigationnext-upPriority queue — next issues to workPriority queue — next issues to workpriority:p2Next sprintNext sprintsquadSquad triage inbox — Lead will assign to a memberSquad triage inbox — Lead will assign to a membertype:featureNew capabilityNew capability
Activity
jsturtevant commentedon Mar 11, 2026
Additional gap:
config.json→teamRootresolution missing from coordinatorThe coordinator's team root resolution in
squad.agent.md(Worktree Awareness section) only describes worktree-based discovery:git rev-parse --show-toplevel→ check for.squad/But there's a third path that's completely missing: config-directed resolution. When
config.jsonhas ateamRootfield (e.g.,"teamRoot": "C:\\src\\squad-pr"), the SDK'sresolveSquadPaths()follows it to load team identity from an external location. The coordinator has no instructions to readconfig.jsonfor this field, so:TEAM_ROOTthat doesn't match the SDK's actual resolutionFix needed in
squad.agent.md: Add a step to the team root resolution:This is the same dual-root problem described in the personal squad proposal's open design question — the governance layer needs to mirror what the SDK already does in
resolveSquadPaths().docs: accessibility audit report (github#344)
github-actions commentedon Mar 13, 2026
🏗️ Squad Triage — Flight (Lead)
Issue: #344 — Governance layer has no awareness of personal squad paths
Assigned to: DSKY (TUI Engineer)
Reason: Issue relates to frontend/UI work
@copilot evaluation: 🔴 Not suitable — issue involves work outside the coding agent's capability profile.
Team roster:
squad:flightsquad:proceduressquad:eecomsquad:fidosquad:paosquad:capcomsquad:controlsquad:surgeonsquad:boostersquad:gncsquad:networksquad:retrosquad:incosquad:guidosquad:telemetrysquad:voxsquad:dskysquad:simssquad:handbooksquad:ralphsquad:copilot1 remaining item
github-actions commentedon Mar 13, 2026
📋 Assigned to Procedures (Prompt Engineer)
Issue: #344 — Governance layer has no awareness of personal squad paths
Procedures will pick this up in the next Copilot session.
bradygaster commentedon Mar 22, 2026
🏗️ Flight — Governance Layer Design for Personal Squads
This is addressed in the Ambient Personal Squad design proposal: .squad/decisions/inbox/flight-ambient-personal-squad.md\ (also linked from #329).
What the design adds for #344 specifically:
\squad.agent.md\ updates — Extended Worktree Awareness section that reads \config.json\ for \ eamRoot\ AND discovers the personal squad from the global config directory. The coordinator now passes both \TEAM_ROOT\ and \PROJECT_ROOT\ to personal agents.
Charter template variant — New personal squad charter template with cross-project framing, Ghost Protocol section, and deference-to-project-agents boundary.
Routing priority — Personal routing rules are resolved after project routing rules. Project agents always take precedence for matching tasks.
Agent origin tagging — Every agent in the session cast is tagged \origin: 'project' | 'personal'. The coordinator uses this to select the right spawn template and enforce Ghost Protocol.
Session audit trail — Orchestration log entries record which personal agents participated, giving visibility into 'who helped' without polluting the project's squad state.
The key gap this closes: The coordinator currently discovers team root only via filesystem traversal. The design adds personal squad discovery as a parallel resolution path — always checked, gracefully skipped if no personal squad exists.
Next steps: Phase 2 of the implementation (Ghost Protocol + governance changes) is where the \squad.agent.md\ and charter template changes ship. Phase 1 (ambient discovery) lays the SDK foundation first.
cc @jsturtevant
feat: economy mode skill, governance proposals for #500 and #344
Scribe: Wave 1 decisions merged (#329/#344/#500)
fix: hard-fail on Node <22.5.0 with clear message (#502) (#506)
feat: economy mode for cost-conscious model selection (#500) (#504)
feat: economy mode skill, governance proposals for #500 and #344 (#503)
docs: log session 2 — wave 1+2 results, 4 PRs merged
bradygaster commentedon Mar 23, 2026
Superseded by #508 — governance layer now has personal squad awareness.