Repository navigation
Description
Background
During the AI Squads demo meeting (March 18, 2026), Michael Scott raised an important question about monorepo support:
"If I have a mono-repo, I want to keep each team-specific artifact under that team's specific directory. Is there a way to do this with subagents? It seems like everything is persisted under /squad."
"In the ideal world, the sub squads and team members would be defined under /src//.squads"
This is a real-world enterprise need ΓÇö large repos with multiple teams need area-specific squad configuration.
Proposed Features
Feature 1: Per-area .squad-context.md files (Easy ΓÇö works today as convention)
Add support for optional .squad-context.md files in subdirectories. When an agent works in a subdirectory, it auto-loads the nearest context file for area-specific routing hints, key files, and team context.
/src/area-a/.squad-context.md ← area-specific context
/src/area-b/.squad-context.md
Ralph/Picard auto-discovers these during triage and loads them as additional context.
Feature 2: Per-area .squads/ inheritance (Medium ΓÇö enterprise-grade)
Allow per-area squad definitions that inherit from the root .squad/:
/.squad/ ← HQ (root squad)
/src/area-a/.squads/ ← area-specific team + routing overrides
team.md ← subset of root squad members
routing.md ← area-specific routing rules
/src/area-b/.squads/
Area squads inherit decisions, ceremonies, and skills from root but override team composition and routing.
Feature 3: Directory-aware agent dispatch (Full vision ΓÇö roadmap)
Full per-directory .squads/ config that auto-activates when agents enter that directory. Would require changes to squad's agent dispatch logic to detect and scope based on working directory.
Use Cases
- Enterprise monorepos with 5+ teams sharing one repository
- Platform teams wanting isolated squad config per service
- Cross-functional squads where frontend/backend/infra each have domain-specific routing
Origin
Feedback from Michael Scott during AI Squads meeting ΓÇö captured in tamirdresher_microsoft/tamresearch1#1012
Activity
michsco commentedon Mar 19, 2026
@tamirdresher -- this seems reasonable. Is this something you'd be open to us contributing on?
tamirdresher commentedon Mar 19, 2026
@michsco absolutely!
github-actions commentedon Mar 20, 2026
🏗️ Squad Triage — Flight (Lead)
Issue: #457 — feat: Per-directory squad context and area-scoped agent dispatch for monorepos
Assigned to: DSKY (TUI Engineer)
Reason: Issue relates to frontend/UI work
@copilot evaluation: No strong capability match — routed to squad member.
Team roster:
squad:flightsquad:proceduressquad:eecomsquad:fidosquad:paosquad:capcomsquad:controlsquad:surgeonsquad:boostersquad:gncsquad:networksquad:retrosquad:incosquad:guidosquad:telemetrysquad:voxsquad:dskysquad:simssquad:handbooksquad:ralphsquad:copilotgithub-actions commentedon Mar 20, 2026
📋 Assigned to Flight (Lead)
Issue: #457 — feat: Per-directory squad context and area-scoped agent dispatch for monorepos
Flight will pick this up in the next Copilot session.
github-actions commentedon Mar 20, 2026
📋 Assigned to Procedures (Prompt Engineer)
Issue: #457 — feat: Per-directory squad context and area-scoped agent dispatch for monorepos
Procedures will pick this up in the next Copilot session.
chrisnielsen-MS commentedon Mar 20, 2026
"Area squads inherit decisions, ceremonies, and skills from root but override team composition and routing."
@tamirdresher -- Does this imply that there will not be area-specific decisions? It seems to me that teams working within the same monorepo may not necessarily make all the same decisions. If there is only a single decisions.md, this seems like it could be problematic. Teams should not necessarily inherit all the decisions of their sibling teams in the repo.
tamirdresher commentedon Mar 20, 2026
Hi @chrisnielsen-MS
Actually I imagined this to be just like upstream inherittence so the area squad will have decisions as well
fix: show buffered keystrokes during agent processing (github#457) (g…
10 remaining items
github-actions commentedon Sep 10, 2026
🔄 Ralph — Auto-Triage
Assigned to: Flight
Reason: Matched routing keyword(s): scope
Source: routing-rule
github-actions commentedon Sep 10, 2026
🔄 Ralph — Auto-Triage
Assigned to: Flight
Reason: Matched routing keyword(s): scope
Source: routing-rule
github-actions commentedon Sep 11, 2026
🔄 Ralph — Auto-Triage
Assigned to: Flight
Reason: Matched routing keyword(s): scope
Source: routing-rule
github-actions commentedon Sep 11, 2026
🔄 Ralph — Auto-Triage
Assigned to: Flight
Reason: Matched routing keyword(s): scope
Source: routing-rule
github-actions commentedon Sep 11, 2026
🔄 Ralph — Auto-Triage
Assigned to: Flight
Reason: Matched routing keyword(s): scope
Source: routing-rule
github-actions commentedon Sep 11, 2026
🔄 Ralph — Auto-Triage
Assigned to: Flight
Reason: Matched routing keyword(s): scope
Source: routing-rule
github-actions commentedon Sep 13, 2026
🔄 Ralph — Auto-Triage
Assigned to: architect
Reason: No module, routing, or role keyword match — routed to Lead/Architect
Source: lead-fallback
bradygaster commentedon Nov 5, 2026
Closing as superseded by epic #974 (full monorepo subfolder story) during 2.0 board triage (owner decision). Per-directory context and area-scoped dispatch should be tracked there.