Agent-created child sessions ignore a preset plugin-provided custom agent and fall back to Default agent
- 主要言語
- 言語のデータがありません
- スター
- 2.1k
- フォーク
- 153
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
### Summary
When an **agent** creates a child session and presets its agent (via the session-creation tool that accepts an `agent` parameter), a **plugin-provided custom agent** is not applied. The new session silently starts on **Default agent** instead. Manually selecting the same agent from the session's agent dropdown works fine, so the agent itself is valid and loadable — only the agent-created "start this session in agent X" path fails for plugin-contributed agents.
### Environment
- GitHub Copilot app (agent-native desktop), Windows
- App version: `1.0.21`
- Custom agent provided by an **installed plugin** (appears as a selectable entry in the agent picker)
### Steps to reproduce
1. Install a plugin that contributes a user-invocable custom agent (the agent shows up in the agent dropdown).
2. Have an agent create a child session and set the preset agent to that plugin agent (the `agent` field on the session-creation / kickoff call).
3. Let the session start (with or without a kickoff prompt).
4. Open the created session and check its agent dropdown.
### Expected
The created session starts bound to the specified plugin-provided agent (dropdown shows that agent; the session runs under that agent's persona/workflow).
### Actual
The session starts on **Default agent**. The preset agent is silently ignored — no error or warning is surfaced. The kickoff prompt (if any) runs under the Default agent instead of the intended one.
### What I tried (identifier is not the problem)
I attempted the preset with three identifier forms; all three resulted in Default agent:
1. Bare agent name — ``
2. Plugin-qualified — `:`
3. File-basename-qualified — `:.agent`
I verified the identifier is correct:
- The plugin's `plugin.json` `name` matches the namespace used.
- The agent's frontmatter `name` matches the label shown in the agent picker.
- The agent is present and selectable in the UI dropdown, and **manually selecting it works**.
This points to the agent-created preset path not resolving/applying **plugin-contributed** agents (built-in/workspace custom agents may behave differently), rather than a wrong identifier.
### Impact
A workflow that has an agent spin up child sessions preset to a specific plugin agent can't work — every session must have its agent selected by hand in the UI, defeating unattended/parallel session orchestration. Silent fallback to Default also means automated runs can appear to "work" while actually executing under the wrong agent, producing misleading results.
コントリビューションガイド
調査の方向性
まず、セッション作成またはキックオフ呼び出しの agent パラメータを追跡し、その解決経路を agent ドロップダウンの解決経路と比較します。プラグインが提供する agent を使った再現手順で確認してください。プラグインの agent で作成した子セッションが、その agent が選択された状態で開き、Default に黙ってフォールバックするのではなく、その agent のもとでキックオフプロンプトを実行すれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- github
- 領域
- ai, desktop
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 静か
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 55/100