Skip to content

VS Code: Model selection and background mode parity #34

Closed

Description

@bradygaster

Context

Part of #10: Copilot client parity across surfaces. VS Code is the priority.

Problem

The CLI task tool supports:

  • Per-agent model selection (model parameter)
  • Background/async execution (mode: 'background' or /delegate)

We need to confirm runSubagent has equivalent capabilities in VS Code.

Key Questions to Investigate

  • Does runSubagent accept a model parameter for per-agent model override?
  • Is there an equivalent to mode: 'background' in VS Code?
  • How are results collected from background spawns in VS Code?
  • What's the fallback if model selection is not supported?

Success Criteria

  • Document model parameter support in VS Code runSubagent
  • Document background/async execution model for VS Code
  • Test model override in a VS Code agent spawn
  • Test background spawn and result collection
  • Define fallback behavior (graceful degradation)
  • Update squad.agent.md with VS Code model/background logic

Related

Activity

  1. added
    go:yesReady to implement
    type:spikeResearch/investigation — produces a plan, not code
    on Feb 13, 2026
  2. bradygaster commented on Feb 13, 2026

    @bradygaster
    CollaboratorAuthor

    Proposal 034a: Model Selection & Background Mode Parity — Findings

    Author: Kujan (Copilot SDK Expert)
    Proposal: team-docs/proposals/034a-model-background-parity.md

    Key Findings

    1. Model Selection

    • runSubagent does NOT accept a model parameter — confirmed
    • Model override routes through custom .agent.md frontmatter (model field)
    • Supports prioritized fallback lists: model: ['Claude Haiku 4.5 (copilot)', 'GPT-5.1-Codex-Mini (copilot)']
    • Requires experimental setting chat.customAgentInSubagent.enabled: true
    • Workaround: Accept session model for v0.4.0 (zero work). Model-tier agent files for v0.5.0

    2. Background/Async Mode

    • No mode: "background" equivalent in VS Code
    • But: Multiple runSubagent calls in one turn run in parallel — equivalent concurrency
    • VS Code "Background Agents" are a different concept (CLI-based worktree sessions, user-initiated, not programmatic)
    • No fire-and-forget (Scribe blocks). Mitigation: batch Scribe as last in parallel group
    • No incremental progress (no read_agent). Results arrive all-at-once

    3. The agent Tool

    • runSubagent = anonymous subagent, inherits session model/tools
    • agent = named custom agent with its own model/tools/instructions
    • Squad should use runSubagent in Phase 1, agent in Phase 2 (when custom agent files exist)

    4. Graceful Degradation

    • No model selection: Accept session model, log intent. Not broken, just more expensive
    • No background mode: Spawn all concurrent agents in single turn. Skip launch table. Skip read_agent
    • Neither tool available: Work inline without delegation

    5. Recommendations

    • Phase 1 (v0.4.0): Accept session model, parallel sync subagents, prompt-level conditional instructions
    • Phase 2 (v0.5.0): Generate model-tier .agent.md files during squad init
    • Phase 3 (v0.6.0+): Per-role agent files if custom agent subagent support stabilizes
    • No code-level abstraction layer needed — prompt-level adaptation is sufficient

    Full analysis in the proposal. Builds on 032b and 032a findings.

  3. bradygaster commented on Feb 13, 2026

    @bradygaster
    CollaboratorAuthor

    Spike complete. Proposal 034a (model/background parity) shipped. Key findings: no model param on runSubagent, no background mode — workarounds documented.

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.0type:spikeResearch/investigation — produces a plan, not code

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions