[Feature Request] Allow subagents to override reasoning effort in CustomAgentConfig (parity with Claude Agent SDK)
- 主要语言
- Java
- 星标
- 10.5k
- 派生
- 1.5k
- 平均合并
- 1 天 14 小时
- 30 天内合并 PR
- 129
描述
## Summary
Allow custom subagents defined via `CustomAgentConfig` to specify their own reasoning effort independent of the orchestrator session's reasoning. The Claude Agent SDK supports this via an `effort` field on `AgentDefinition`. copilot-sdk's `CustomAgentConfig` does not, so reasoning is fixed at session level and applies uniformly to every subagent invocation.
## Motivation
- Orchestrators often benefit from `high` or `max` reasoning for planning and delegation
- Many subagent tasks are mechanical execution (validation, extraction, format conversion) and do not benefit from deep reasoning, but today pay its latency and cost
- Conversely, security focused or analysis focused subagents may want stronger reasoning than the orchestrator
- Without per subagent control, the tallest reasoning setting propagates to every dispatch
## Current state
- `CustomAgentConfig` (copilot-sdk `types.d.ts`, lines 802 to 833) has no `reasoningEffort` or `effort` field
- Session level `reasoningEffort` in `providerOptions` applies to all subagent dispatches in that session
## Proposed
1. Add optional `reasoningEffort` (or `effort`) field to `CustomAgentConfig`
2. Accept existing values: `low | medium | high | xhigh | max`, plus numeric for models that support it
3. Fall back to session reasoning when omitted
4. Mirror the field in the YAML frontmatter loader (coordinated with github/copilot-cli#2904)
## Precedent
Claude Agent SDK's `AgentDefinition.effort`:
https://code.claude.com/docs/en/agent-sdk/subagents
Identical value vocabulary already in use by this SDK.
## Related
- github/copilot-cli#2904 — Custom Agent YAML Frontmatter Should Support Reasoning Effort (CLI surface for the same feature)
- #1019 — Per agent tool visibility for custom sub agents (same architectural axis)
贡献指南
调研方向
Start with CustomAgentConfig in types.d.ts around lines 802–833, then trace how session-level reasoningEffort in providerOptions reaches custom subagent dispatches. Read the YAML frontmatter loader and related github/copilot-cli#2904 context. Done means the config and YAML surfaces accept the documented effort values and omitted values retain the session setting.
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- typescript, yaml
- 领域
- developer-experience, tooling
- Issue 类型
- 功能
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 冷清
- 描述清晰度
- 基本清楚
- 新手友好度
- 64/100