Skip to content

Commit a50a4de

Browse files
authored
Merge branch 'main' into copilot/update-sessions-hover
2 parents ec7fe78 + 2f343ff commit a50a4de

201 files changed

Lines changed: 6341 additions & 1077 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/chat-perf.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,7 @@ jobs:
255255
name: build-output
256256

257257
- name: Restore Electron cache
258-
uses: actions/cache/restore@caa296126883cff596d87d8935842f9db880ef25 # v5.1.0
258+
uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
259259
with:
260260
path: ~/.cache/electron
261261
key: electron-${{ runner.os }}-${{ hashFiles('.nvmrc', 'package.json') }}
@@ -264,7 +264,7 @@ jobs:
264264
run: node build/lib/preLaunch.ts
265265

266266
- name: Restore Playwright cache
267-
uses: actions/cache/restore@caa296126883cff596d87d8935842f9db880ef25 # v5.1.0
267+
uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
268268
with:
269269
path: ~/.cache/ms-playwright
270270
key: playwright-${{ runner.os }}-${{ hashFiles('package.json') }}
@@ -437,7 +437,7 @@ jobs:
437437
name: build-output
438438

439439
- name: Restore Electron cache
440-
uses: actions/cache/restore@caa296126883cff596d87d8935842f9db880ef25 # v5.1.0
440+
uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
441441
with:
442442
path: ~/.cache/electron
443443
key: electron-${{ runner.os }}-${{ hashFiles('.nvmrc', 'package.json') }}
@@ -446,7 +446,7 @@ jobs:
446446
run: node build/lib/preLaunch.ts
447447

448448
- name: Restore Playwright cache
449-
uses: actions/cache/restore@caa296126883cff596d87d8935842f9db880ef25 # v5.1.0
449+
uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
450450
with:
451451
path: ~/.cache/ms-playwright
452452
key: playwright-${{ runner.os }}-${{ hashFiles('package.json') }}

.github/workflows/copilot-setup-steps.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ jobs:
104104

105105
- name: Restore built-in extensions cache
106106
id: cache-builtin-extensions
107-
uses: actions/cache/restore@caa296126883cff596d87d8935842f9db880ef25 # v5.1.0
107+
uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
108108
with:
109109
enableCrossOsArchive: true
110110
path: .build/builtInExtensions

.github/workflows/pr-darwin-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ jobs:
8989

9090
- name: Restore built-in extensions cache
9191
id: cache-builtin-extensions
92-
uses: actions/cache/restore@caa296126883cff596d87d8935842f9db880ef25 # v5.1.0
92+
uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
9393
with:
9494
enableCrossOsArchive: true
9595
path: .build/builtInExtensions

.github/workflows/pr-linux-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ jobs:
122122

123123
- name: Restore built-in extensions cache
124124
id: cache-builtin-extensions
125-
uses: actions/cache/restore@caa296126883cff596d87d8935842f9db880ef25 # v5.1.0
125+
uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
126126
with:
127127
enableCrossOsArchive: true
128128
path: .build/builtInExtensions

.github/workflows/pr-win32-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ jobs:
9696

9797
- name: Restore built-in extensions cache
9898
id: cache-builtin-extensions
99-
uses: actions/cache/restore@caa296126883cff596d87d8935842f9db880ef25 # v5.1.0
99+
uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
100100
with:
101101
enableCrossOsArchive: true
102102
path: .build/builtInExtensions

.github/workflows/pr.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ jobs:
7474

7575
- name: Restore built-in extensions cache
7676
id: cache-builtin-extensions
77-
uses: actions/cache/restore@caa296126883cff596d87d8935842f9db880ef25 # v5.1.0
77+
uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
7878
with:
7979
enableCrossOsArchive: true
8080
path: .build/builtInExtensions
@@ -284,7 +284,7 @@ jobs:
284284
node-version-file: extensions/copilot/.nvmrc
285285

286286
- name: Setup Python
287-
uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0
287+
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
288288
with:
289289
python-version: '3.12'
290290
architecture: 'x64'
@@ -378,7 +378,7 @@ jobs:
378378
node-version-file: extensions/copilot/.nvmrc
379379

380380
- name: Setup Python
381-
uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0
381+
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
382382
with:
383383
python-version: '3.12'
384384
architecture: 'x64'

build/lib/policies/policyData.jsonc

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -734,6 +734,50 @@
734734
"default": true,
735735
"included": true
736736
},
737+
{
738+
"key": "dictation.experimental.llmCleanup",
739+
"name": "DictationLLMCleanup",
740+
"category": "InteractiveSession",
741+
"minimumVersion": "1.136",
742+
"localization": {
743+
"description": {
744+
"key": "dictation.experimental.llmCleanup.policy",
745+
"value": "Controls whether final dictation transcripts are sent to a language model for cleanup."
746+
}
747+
},
748+
"type": "boolean",
749+
"default": true,
750+
"included": true
751+
},
752+
{
753+
"key": "dictation.model",
754+
"name": "DictationModel",
755+
"category": "InteractiveSession",
756+
"minimumVersion": "1.136",
757+
"localization": {
758+
"description": {
759+
"key": "dictation.model.policy",
760+
"value": "Controls the transcription model used for dictation."
761+
},
762+
"enumDescriptions": [
763+
{
764+
"key": "dictation.model.nemotronMultilingual.policy",
765+
"value": "Use the on-device transcription model. Audio does not leave the device."
766+
},
767+
{
768+
"key": "dictation.model.mai.policy",
769+
"value": "Use the cloud transcription service. Audio is streamed to the service."
770+
}
771+
]
772+
},
773+
"type": "string",
774+
"default": "nemotron-3.5-asr-streaming-0.6b",
775+
"enum": [
776+
"nemotron-3.5-asr-streaming-0.6b",
777+
"mai"
778+
],
779+
"included": true
780+
},
737781
{
738782
"key": "extensions.allowed",
739783
"name": "AllowedExtensions",

build/linux/rpm/dep-lists.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ export const referenceGeneratedDepsByArch = {
8181
'libgtk-3.so.0()(64bit)',
8282
'libm.so.6()(64bit)',
8383
'libm.so.6(GLIBC_2.2.5)(64bit)',
84+
'libm.so.6(GLIBC_2.27)(64bit)',
8485
'libnspr4.so()(64bit)',
8586
'libnss3.so()(64bit)',
8687
'libnss3.so(NSS_3.11)(64bit)',
@@ -275,6 +276,7 @@ export const referenceGeneratedDepsByArch = {
275276
'libgtk-3.so.0()(64bit)',
276277
'libm.so.6()(64bit)',
277278
'libm.so.6(GLIBC_2.17)(64bit)',
279+
'libm.so.6(GLIBC_2.27)(64bit)',
278280
'libnspr4.so()(64bit)',
279281
'libnss3.so()(64bit)',
280282
'libnss3.so(NSS_3.11)(64bit)',

extensions/copilot/assets/prompts/skills/agent-customization/references/agents.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ description: "<required>" # For agent picker and subagent discovery
1717
name: "Agent Name" # Optional, defaults to filename
1818
tools: [search, web] # Optional: aliases, MCP (<server>/*), extension tools
1919
model: "Claude Sonnet 4" # Optional, uses picker default; supports array for fallback
20+
reasoning-effort: "high" # Optional: low, medium, high, xhigh, or max
2021
argument-hint: "Task..." # Optional, input guidance
2122
agents: [agent1, agent2] # Optional, restrict allowed subagents by name (omit = all, [] = none)
2223
user-invocable: true # Optional, show in agent picker (default: true)
@@ -45,6 +46,16 @@ hooks: # Optional, inline hooks for this agent's lifecycle
4546
model: ['Claude Sonnet 4.5 (copilot)', 'GPT-5 (copilot)'] # First available model is used
4647
```
4748
49+
### Reasoning Effort
50+
51+
Use `reasoning-effort` to set the reasoning level for the custom agent's model:
52+
53+
```yaml
54+
reasoning-effort: high # low, medium, high, xhigh, or max
55+
```
56+
57+
The selected model must support the configured level. If omitted, the runtime resolves the effort from the model configuration and, when applicable, the parent agent.
58+
4859
## Tools
4960

5061
Sources: built-in aliases, specific tools, MCP servers (`<server>/*`), extension tools.

extensions/copilot/src/extension/conversation/vscode-node/languageModelAccess.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,8 +156,10 @@ function buildConfigurationSchema(endpoint: IChatEndpoint, autoTiersEnabled: boo
156156
return { configurationSchema: { properties } };
157157
}
158158

159+
const DICTATION_CLEANUP_NANO_ALIAS = 'copilot-dictation-cleanup-nano';
159160
const DICTATION_CLEANUP_LUNA_ALIAS = 'copilot-dictation-cleanup-luna';
160-
const utilityAliasFamilies: readonly ChatEndpointFamily[] = ['copilot-utility-small', 'copilot-utility', DICTATION_CLEANUP_LUNA_ALIAS];
161+
const dictationCleanupAliases: ReadonlySet<string> = new Set([DICTATION_CLEANUP_NANO_ALIAS, DICTATION_CLEANUP_LUNA_ALIAS]);
162+
const utilityAliasFamilies: readonly ChatEndpointFamily[] = ['copilot-utility-small', 'copilot-utility', DICTATION_CLEANUP_NANO_ALIAS, DICTATION_CLEANUP_LUNA_ALIAS];
161163

162164
/**
163165
* Builds the {@link vscode.LanguageModelChatInformation} entry that publishes a
@@ -544,7 +546,7 @@ export class LanguageModelAccess extends Disposable implements IExtensionContrib
544546
progress: vscode.Progress<vscode.LanguageModelResponsePart2>,
545547
token: vscode.CancellationToken
546548
): Promise<void> {
547-
if (model.id === DICTATION_CLEANUP_LUNA_ALIAS && options.requestInitiator !== 'core') {
549+
if (dictationCleanupAliases.has(model.id) && options.requestInitiator !== 'core') {
548550
throw new Error(`Model ${model.id} is only available to VS Code core.`);
549551
}
550552
let endpoint = await this._getEndpointForModel(model, buildAutoRoutingContext(messages, options));

0 commit comments

Comments
 (0)