Skip to content

Copilot client parity: Squad works fully only on GitHub Copilot CLI #10

Closed

Description

@bradygaster

Problem

Squad currently achieves full feature parity only on the GitHub Copilot CLI (terminal client). The task tool (sub-agent spawning), /delegate (background work), model selection, and background task management all work as designed in the CLI.

In VS Code and other Copilot surfaces, equivalent capabilities exist but may use different tool names (e.g., runSubagent instead of task), have different behavior, or may not support all features Squad relies on.

Key Areas Needing Investigation

  • Sub-agent spawning: Tool name differences across clients (task → runSubagent)
  • Background/async agent execution: Workflows differ; CLI has /delegate and /tasks
  • Model selection parameter support: Per-agent model override may not be exposed
  • MCP server integration: .ai-team/ discovery and MCP reads
  • Custom agent file discovery: How agents find .github/agents/ and local charters

Goal

Squad should work across all Copilot surfaces — CLI, VS Code, JetBrains, GitHub.com — with graceful degradation where features aren't available.

Key insight: Squad's architecture is portable (it's just markdown and prompts), but the tool interface assumptions need validation per client.

Success Criteria

  • Document tested behavior matrix (CLI ✅, VS Code ❓, JetBrains ❓, GitHub.com ❓)
  • Identify which Squad patterns work on which clients
  • Define fallback strategies (e.g., what does Squad do if task isn't available?)
  • Test sub-agent spawning on VS Code with runSubagent
  • Update squad.agent.md with client compatibility notes

Related

This is P1 — it's not blocking v0.3.0, but Squad's cross-platform promise depends on clarifying and solving this systematically.

Activity

  1. bradygaster commented on Feb 12, 2026

    @bradygaster
    CollaboratorAuthor

    Refined Scope: MCP Integration Documentation (from Brady)

    Key insight: Squad members already use MCP tools — the GitHub MCP server is active in this session right now (github-mcp-server-* tools). This isn't future work. It's happening.

    What @copilot should deliver

    1. Design Doc — How MCP tools integrate with Squad:

    • How MCP servers become available to squad agents (platform-level, not Squad-level)
    • How squad.agent.md references MCP tools in routing and spawn prompts
    • How customers with custom MCP servers (database, internal APIs, etc.) can make those tools available to their squad members
    • Architecture: what's platform-provided vs. what Squad orchestrates

    2. Documentation — For docs/:

    • How-to guide: "Using MCP Tools with Your Squad"
    • Examples: GitHub MCP server (already working), custom MCP servers
    • Pattern: how to mention MCP capabilities in agent charters so agents know what tools they have
    • Pattern: how to route work to agents based on MCP tool availability

    3. Sprint Plan — Concrete work items for full MCP integration:

    • Document current state (what works today)
    • Identify gaps (what should work but doesn't)
    • Customer-facing docs and examples
    • Any squad.agent.md updates needed

    Constraints

    • All deliverables file in bradygaster/squad only
    • Focus on documenting what already works, then identify gaps
    • Don't build new MCP infrastructure — document how to use what's there

    cc @copilot

  2. added
    squadSquad triage inbox — Lead will assign to a member
    on Feb 12, 2026
  3. bradygaster commented on Feb 13, 2026

    @bradygaster
    CollaboratorAuthor

    v0.4.0 Sprint Plan: Copilot Client Parity

    Verdict: ✅ GO — This is table stakes for Squad's growth. We can't stay CLI-only.

    Context

    Brady's refined scope nails it: we need to document what works today, identify gaps, and design graceful degradation. We're not rewriting Squad for every client — we're making it adaptive.

    Work Items

    WI-1: Client Capability Matrix

    • Owner: Kujan (SDK/Testing Specialist)
    • Deliverable: Test matrix showing what works on each surface
      • CLI (baseline ✅)
      • VS Code (via
        unSubagent, ask tool)
      • JetBrains (Copilot API surface)
      • GitHub.com (web constraints)
    • Test cases:
      • Background mode (mode: "background")
      • Model selection (model parameter)
      • MCP tool access (file ops, git, web_search)
      • Sub-agent spawning ( ask tool)
    • Acceptance: Markdown table with ✅/⚠️/❌ + notes for each capability × client

    WI-2: Graceful Degradation Design

    • Owner: Verbal (Prompt Engineer)
    • Deliverable: Fallback strategy doc
      • What does Squad do when �ackground mode unavailable? (fall back to sync)
      • How do agents handle missing MCP tools? (notify user, suggest CLI)
      • When should Squad refuse to start? (critical tools missing)
    • Acceptance: Decision doc in .ai-team/decisions/ + prompt additions for agent instructions

    WI-3: squad.agent.md Client Compatibility Section

    • Owner: Verbal (Prompt Engineer)
    • Deliverable: New section in squad.agent.md
      • "## Client Compatibility" heading
      • Per-client capability summary
      • Prompt additions: "If running in VS Code, prefer X over Y..."
    • Acceptance: Agents have context to adapt behavior based on client

    WI-4: User-Facing Documentation

    • Owner: McManus (Documentation Specialist)
    • Deliverable: New guide: docs/copilot-clients.md
      • "Using Squad across Copilot clients"
      • What works where (user-friendly version of WI-1)
      • When to use CLI vs. VS Code vs. other clients
      • Known limitations + workarounds
    • Acceptance: Clear, tested user guide ready for squad.dev

    WI-5: VS Code Testing & Validation

    • Owner: Kujan (SDK/Testing Specialist)
    • Deliverable: Validation that
      unSubagent works for squad members
      • Test spawning Kujan, McManus, Verbal via VS Code
      • Document any quirks (path resolution, template loading)
      • Create repro cases if broken
    • Acceptance: Confirmation Squad agents can spawn in VS Code OR documented blocker for GitHub

    Phases

    Phase 1: Discovery (WI-1, WI-5 in parallel)

    • Kujan runs tests, fills capability matrix
    • Blocks: Phase 2 (need to know what's broken before designing fallbacks)

    Phase 2: Design (WI-2)

    • Verbal designs degradation strategy based on WI-1 findings
    • Blocks: WI-3 (prompts need design decisions)

    Phase 3: Documentation (WI-3, WI-4 in parallel)

    • Verbal updates squad.agent.md
    • McManus writes user guide
    • Both depend on WI-1 + WI-2 completion

    What We're NOT Doing

    ❌ Client-specific builds — No separate VS Code extension, JetBrains plugin, etc.
    ❌ Feature parity enforcement — If GitHub.com can't do background mode, that's fine. Document it.
    ❌ Web UI — Not building squad.dev interface for spawning agents.
    ❌ Polyfills for missing APIs — We adapt, we don't reimplement Copilot's runtime.

    Success Criteria

    • Users know which client to use for their workflow
    • Squad degrades gracefully when features unavailable
    • Agents have prompts to adapt to client constraints
    • No surprises — limitations are documented upfront

    Timeline

    Target v0.4.0 release. Phase 1 should wrap in 2-3 days. Full plan: ~1 week.


    — 🏗️ Keaton (Lead) · Posted by Squad

  4. bradygaster commented on Feb 13, 2026

    @bradygaster
    CollaboratorAuthor

    🏷️ Closing as research parent — implementation issues created

    This issue served its purpose: we identified the problem (CLI-only parity) and Keaton posted a sprint plan. But the plan's Phase 1 is literally 'test and find out' — we don't know what's broken yet.

    Decomposed into:

    • #TBD: Spike: Test Squad on VS Code (runSubagent, background mode, MCP tools)
    • #TBD: Spike: Test Squad on JetBrains + GitHub.com
    • #TBD: Write graceful degradation design (after spikes complete)
    • #TBD: Add Client Compatibility section to squad.agent.md
    • #TBD: Write user-facing docs/copilot-clients.md

    Sub-issues will be linked below once created.

    — Squad (Coordinator)

  5. bradygaster commented on Feb 13, 2026

    @bradygaster
    CollaboratorAuthor

    Decomposed into sub-issues with VS Code as priority:

    • #32 (P0): VS Code
    unSubagent\ compatibility
    • #33 (P0): File discovery & .ai-team/ access
    • #34 (P1): Model selection & background mode
    • #35 (P1): Compatibility matrix document
    • #36 (P2, deferred v0.5.0): JetBrains + GitHub.com research

    VS Code parity target: v0.4.0. Broader surfaces: v0.5.0+.

  6. bradygaster commented on Feb 13, 2026

    @bradygaster
    CollaboratorAuthor

    ✅ Issue #10 — Closing Summary

    All deliverables for Copilot client parity have shipped:

    Sub-issues (all closed)

    Shipped artifacts

    • Client Compatibility Matrix — \docs/scenarios/client-compatibility.md\ (270 lines, full feature-by-platform breakdown)
    • VS Code How-To Guide — \docs/features/vscode.md\ (user-facing guide: getting started, differences, tips, limitations)
    • squad.agent.md Client Compatibility section — Platform detection, VS Code spawn adaptations, feature degradation table, SQL tool caveat
    • VS Code spawn template annotations — Background and sync templates annotated with VS Code equivalents
    • Cross-platform spawning skill — .ai-team/skills/cross-platform-agent-spawning/SKILL.md\

    Key architectural decisions

    • Platform detection via capability probing (check for \ ask\ vs
      unSubagent)
    • VS Code: multiple
      unSubagent\ calls in one turn = parallel (replaces background mode)
    • Model selection: accept session model in Phase 1, per-agent .agent.md\ frontmatter in Phase 2
    • SQL tool is CLI-only — cross-platform paths avoid SQL dependency
  7. added a commit that references this issue on Feb 13, 2026
    bfbc72a
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    go:yesReady to implementrelease:v0.4.0Targeted for v0.4.0squadSquad triage inbox — Lead will assign to a membertype:epicParent issue that decomposes into sub-issues

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions