Skip to content

Commit ca4eab6

Browse files
committed
Clarify custom agent effort omission
Document that omitted per-agent reasoning effort sends no override and lets the backend choose its default rather than inheriting the parent session effort. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 32727fc4-2ac8-41eb-a68a-e74674ecf155
1 parent 6557c86 commit ca4eab6

7 files changed

Lines changed: 14 additions & 14 deletions

File tree

docs/features/custom-agents.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -254,12 +254,12 @@ try (var client = new CopilotClient()) {
254254
| `infer` | `boolean` | | Whether the runtime can auto-select this agent (default: `true`) |
255255
| `skills` | `string[]` | | Skill names to preload into the agent's context at startup |
256256
| `model` | `string` | | Model identifier to use while this agent runs |
257-
| `reasoningEffort` | `string` | | Reasoning effort to use while this agent runs. Inherits an explicit parent session effort when omitted |
257+
| `reasoningEffort` | `string` | | Reasoning effort to use while this agent runs. When omitted, no override is sent and the backend chooses its default |
258258

259259
> [!TIP]
260260
> A good `description` helps the runtime match user intent to the right agent. Be specific about the agent's expertise and capabilities.
261261
262-
Set `model` and `reasoningEffort` to override the parent session's model settings while a custom agent runs. When `reasoningEffort` is omitted, the runtime currently inherits an explicitly configured parent session effort. If the parent session effort is also omitted, no effort is sent and the backend chooses. The SDK does not add a per-agent default. Python uses `reasoning_effort`, .NET uses `ReasoningEffort`, Go uses `ReasoningEffort`, Java uses `setReasoningEffort`, and Rust uses `with_reasoning_effort`.
262+
Set `model` and `reasoningEffort` to override the parent session's model settings while a custom agent runs. When `reasoningEffort` is omitted, the SDK sends no per-agent override and the backend chooses its default. The parent session effort is not inherited, and the SDK does not add a per-agent default. Python uses `reasoning_effort`, .NET uses `ReasoningEffort`, Go uses `ReasoningEffort`, Java uses `setReasoningEffort`, and Rust uses `with_reasoning_effort`.
263263

264264
In addition to per-agent configuration above, you can set `agent` on the **session config** itself to pre-select which custom agent is active when the session starts. See [Selecting an Agent at Session Creation](#selecting-an-agent-at-session-creation) below.
265265

dotnet/src/Types.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2660,8 +2660,8 @@ public sealed class CustomAgentConfig
26602660

26612661
/// <summary>
26622662
/// Reasoning effort level for this agent's model.
2663-
/// When omitted, the runtime inherits an explicit parent session effort.
2664-
/// If the parent effort is also omitted, the backend chooses the effort.
2663+
/// When omitted, no per-agent override is sent and the backend chooses its
2664+
/// default. The parent session effort is not inherited.
26652665
/// </summary>
26662666
[JsonPropertyName("reasoningEffort")]
26672667
public string? ReasoningEffort { get; set; }

go/types.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -950,8 +950,8 @@ type CustomAgentConfig struct {
950950
// falling back to the parent session model if unavailable.
951951
Model string `json:"model,omitempty"`
952952
// ReasoningEffort is the reasoning effort level for this agent's model.
953-
// When empty, the runtime inherits an explicit parent session effort.
954-
// If the parent effort is also empty, the backend chooses the effort.
953+
// When empty, no per-agent override is sent and the backend chooses its
954+
// default. The parent session effort is not inherited.
955955
ReasoningEffort string `json:"reasoningEffort,omitempty"`
956956
}
957957

java/src/main/java/com/github/copilot/rpc/CustomAgentConfig.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -298,8 +298,8 @@ public String getReasoningEffort() {
298298
/**
299299
* Sets the reasoning effort level for this agent's model.
300300
* <p>
301-
* When omitted, the runtime inherits an explicit parent session effort. If the
302-
* parent effort is also omitted, the backend chooses the effort.
301+
* When omitted, no per-agent override is sent and the backend chooses its
302+
* default. The parent session effort is not inherited.
303303
*
304304
* @param reasoningEffort
305305
* the reasoning effort level

nodejs/src/types.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1634,8 +1634,8 @@ export interface CustomAgentConfig {
16341634
model?: string;
16351635
/**
16361636
* Reasoning effort level for this agent's model.
1637-
* When omitted, the runtime inherits an explicit parent session effort.
1638-
* If the parent effort is also omitted, the backend chooses the effort.
1637+
* When omitted, no per-agent override is sent and the backend chooses its
1638+
* default. The parent session effort is not inherited.
16391639
*/
16401640
reasoningEffort?: ReasoningEffort;
16411641
}

python/copilot/session.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1080,8 +1080,8 @@ class CustomAgentConfig(TypedDict, total=False):
10801080
skills: NotRequired[list[str]]
10811081
# Model identifier (e.g. "claude-haiku-4.5"); runtime falls back to parent model if unavailable
10821082
model: NotRequired[str]
1083-
# Reasoning effort for this agent's model. When omitted, inherits an explicit
1084-
# parent session effort; if that is also omitted, the backend chooses.
1083+
# Reasoning effort for this agent's model. When omitted, no per-agent override
1084+
# is sent and the backend chooses its default; the parent effort is not inherited.
10851085
reasoning_effort: NotRequired[ReasoningEffort]
10861086

10871087

rust/src/types.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -630,8 +630,8 @@ pub struct CustomAgentConfig {
630630
pub model: Option<String>,
631631
/// Reasoning effort level for this agent's model.
632632
///
633-
/// When unset, the runtime inherits an explicit parent session effort. If
634-
/// the parent effort is also unset, the backend chooses the effort.
633+
/// When unset, no per-agent override is sent and the backend chooses its
634+
/// default. The parent session effort is not inherited.
635635
#[serde(default, skip_serializing_if = "Option::is_none")]
636636
pub reasoning_effort: Option<String>,
637637
}

0 commit comments

Comments
 (0)