client-compatibility
Context
Squad runs on multiple Copilot surfaces (CLI, VS Code, JetBrains, GitHub.com). The coordinator must detect its platform and adapt spawning behavior accordingly. Different tools are available on different platforms, requiring conditional logic for agent spawning, SQL usage, and response timing.
Patterns
Platform Detection
Before spawning agents, determine the platform by checking available tools:
-
CLI mode —
tasktool is available → full spawning control. Usetaskwithagent_type,mode,model,description,promptparameters. Collect results viaread_agent. -
VS Code mode —
runSubagentoragenttool is available → conditional behavior. UserunSubagentwith the task prompt. Dropagent_type,mode, andmodelparameters. Multiple subagents in one turn run concurrently (equivalent to background mode). Results return automatically — noread_agentneeded. -
Fallback mode — neither
tasknorrunSubagent/agentavailable → work inline. Do not apologize or explain the limitation. Execute the task directly.
If both task and runSubagent are available, prefer task (richer parameter surface).