github / github/copilot-cli

Subagents should know what model they're running

Open
#2,383 1 comment 3 reactions 0 assignees View on GitHub
area:agents area:models
Dominant language
Shell
Stars
11.2k
Forks
1.9k
Avg merge
14h 16m
Merged PRs (30d)
6

Description

### Describe the feature or problem you'd like to solve

The main agent's system prompt includes `` so it can self-identify. Subagents launched via the Task tool with a `model` parameter don't receive this — making it impossible to validate model routing in experiments.

### Proposed solution

Propagate a `` block into the subagent's system prompt when spawned with a `model` parameter.

### Example prompts or workflows

1. `"For each available model, create a subagent specifying the model. Ask each to report their model."` — 0/18 could self-identify.
2. `"Run this task on claude-haiku-4.5 and claude-opus-4.6 in parallel. Label which model produced each result."` — impossible without model identity.
3. `"Launch a subagent on gpt-5.4 and confirm it's not running Claude."` — subagent can only say "ChatGPT" generically.

### Additional context

Tested on v1.0.12. Launched 18 explore subagents (all available models), each asked to self-identify:

| Requested Model | Self-Report | Match? |
|---|---|---|
| `claude-sonnet-4.6` | "Claude, likely Sonnet 4" | Close |
| `claude-sonnet-4.5` | "Claude" (no version) | Family only |
| `claude-sonnet-4` | "Claude" (no version) | Family only |
| `claude-haiku-4.5` | "Claude 3.5 Sonnet" | Wrong variant |
| `claude-opus-4.6` | "Claude 4 / Sonnet" | Wrong (Opus != Sonnet) |
| `claude-opus-4.6-1m` | "Claude 4 / Sonnet" | Wrong |
| `claude-opus-4.5` | "Claude" (no version) | Family only |
| `gpt-5.4` | "ChatGPT, OpenAI" | Family only |
| `gpt-5.3-codex` | "OpenAI assistant" | Family only |
| `gpt-5.2-codex` | Refused to answer | Refused |
| `gpt-5.2` | "Don't have enough info" | Unable |
| `gpt-5.1-codex-max` | "ChatGPT" | Family only |
| `gpt-5.1-codex` | "ChatGPT" | Family only |
| `gpt-5.1` | "OpenAI ChatGPT-style" | Family only |
| `gpt-5.4-mini` | "ChatGPT" | Family only |
| `gpt-5.1-codex-mini` | Refused | Refused |
| `gpt-5-mini` | "AI language model" | Vague |
| `gpt-4.1` | "GPT-4-based" | Close |

**0/18 exact matches.** Root cause: model identity is used for routing but never communicated to the subagent.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.