Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
877cc87
Add extensionEnabled:<id> when-clause context key
bwateratmsft Jul 15, 2026
2c1f3cd
Merge remote-tracking branch 'origin/main' into bwateratmsft-extensio…
bwateratmsft Jul 16, 2026
e1841a7
Merge remote-tracking branch 'origin/main' into bwateratmsft-extensio…
bwateratmsft Jul 20, 2026
6034f52
Reconcile extension context keys from the final registry
bwateratmsft Jul 21, 2026
f3fddaa
Merge branch 'main' into bwateratmsft-extension-installed-context-key
bwateratmsft Jul 21, 2026
8c49380
Merge branch 'main' into bwateratmsft-extension-installed-context-key
bwateratmsft Jul 23, 2026
42aa939
Merge branch 'main' into bwateratmsft-extension-installed-context-key
bwateratmsft Jul 23, 2026
f5465c3
agentHost: grant access to local attachments
connor4312 Jul 23, 2026
d35865d
agentHost: allow dispatching chat actions
connor4312 Jul 23, 2026
b80de3d
Fix agent host file completion refresh
connor4312 Jul 23, 2026
5fbec2b
refactor: update comments for clarity on assignment context identifie…
benibenj Jul 23, 2026
33ee03a
Potential fix for pull request finding
benibenj Jul 23, 2026
e2e7624
Keep empty session groups visible (#327191)
benibenj Jul 23, 2026
d0e6c7c
sessions: align secondary sidebar command state (#326735)
sandy081 Jul 23, 2026
6c06b0d
agents window: subagent in-flight ux (#327184)
justschen Jul 23, 2026
050e15b
chat: segmented voice/dictation toggle with hold-to-talk and listen-b…
eli-w-king Jul 23, 2026
e2c36f3
agentHost: address attachment review feedback
connor4312 Jul 23, 2026
670ef82
Fix automation model targeting for Agent Host (#327209)
ulugbekna Jul 23, 2026
ef46302
Merge pull request #327210 from microsoft/benibenj/elaborate-bandicoot
benibenj Jul 23, 2026
7e5ad0c
Merge pull request #326814 from bwateratmsft/bwateratmsft-extension-i…
connor4312 Jul 23, 2026
eaddc4f
agentHost: fix attachment URI test on Linux
connor4312 Jul 23, 2026
8f40f28
Voice: don't auto-send the turn by default when hands-free is disable…
meganrogge Jul 23, 2026
808c742
Disable flaky CopilotAgent _resumeSession fallback test (#327213)
meganrogge Jul 23, 2026
dddd017
Experimental: clean up dictation transcript with a language model (#3…
meganrogge Jul 24, 2026
30185f6
Incrementally refine dictation transcripts (#327224)
meganrogge Jul 24, 2026
f455839
Reuse terminals when replacing new session drafts (#327225)
anthonykim1 Jul 24, 2026
716e30f
fix: memory leak in mainThreadTerminalService (#327155)
SimonSiefke Jul 24, 2026
e4465f3
Remove customizationDirectory from agent session metadata and related…
DonJayamanne Jul 24, 2026
b5240ea
Merge pull request #327206 from microsoft/fix/326474-agent-host-file-…
connor4312 Jul 24, 2026
b382538
Merge pull request #327192 from microsoft/connor/fix-remote-agent-hos…
connor4312 Jul 24, 2026
2c93de8
fix: memory leak in terminalService (#327156)
SimonSiefke Jul 24, 2026
d5d0f46
Fix apply_patch prompt instructions (#327223)
dileepyavan Jul 24, 2026
f9aad81
Bump Copilot SDK to 1.0.8 and Copilot to 1.0.73 (#327165)
anthonykim1 Jul 24, 2026
d19517f
/vscode-pet (#327063)
justschen Jul 24, 2026
29215ba
Retire completed non-PTY shell output resources (#327233)
anthonykim1 Jul 24, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/skills/sessions/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,8 @@ Whenever the user flags a wrong pattern, rejects an approach, or gives design/ru

- **Name semantic layout operations after the user-facing surface**: a shared operation must use the stable UI concept (`toggleSecondarySideBar()`), not the implementation term (`AuxiliaryBar`) that happens to back it in classic layouts. This keeps single-pane mappings clear and avoids leaking layout internals through the API.

- **Semantic layout commands need matching visibility and focus semantics**: when a shared command maps to a different surface, expose a semantic visibility query for its toggled state and transfer focus before hiding the currently focused mapped surface. Otherwise menu labels lie about the action and keyboard users retain focus in hidden content.

- **Expose a mapped visible surface through a named public operation**: when a shared layout operation maps to a different surface in the single-pane workbench, delegate through a public method named for that surface (for example, `toggleEditorPane()`), rather than embedding its implementation in the unrelated override. Use the surface's established user-facing terminology in accessibility announcements.

- **Default/main chat title persistence differs per provider — don't unify them**: For the **agent host**, the default (main) chat title is independent of the session title (`AgentHostSessionAdapter._defaultChatTitleOverride`, persisted on the host as `customChatTitle:<defaultChatUri>`); it must be seeded back on restore via `restoreSession`/`_ensureDefaultChat` (mirroring `_restorePeerChats`), or it reverts to the session title after a process restart / idle eviction. For the **local chat sessions provider** (`localChatSessionsProvider`), the primary chat and the session intentionally **share one `_title` observable**, so renaming the first/main chat updates the session title live — this is by design; do not "fix" it to be independent. Only additional (non-primary) local chats have their own title.
Expand Down
5 changes: 3 additions & 2 deletions build/filters.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ export const unicodeFilter = Object.freeze<string[]>([
'!LICENSES.chromium.html',
'!**/LICENSE',

'!**/*.{dll,exe,png,bmp,jpg,scpt,cur,ttf,woff,eot,template,ico,icns,opus,wasm}',
'!**/*.{dll,exe,png,bmp,jpg,gif,scpt,cur,ttf,woff,eot,template,ico,icns,opus,wasm}',
'!**/test/**',
'!**/*.test.ts',
'!**/*.{d.ts,json,md}',
Expand Down Expand Up @@ -144,7 +144,7 @@ export const indentationFilter = Object.freeze<string[]>([
'!src/vs/*/**/*.d.ts',
'!src/typings/**/*.d.ts',
'!extensions/**/*.d.ts',
'!**/*.{svg,exe,png,bmp,jpg,scpt,bat,cmd,cur,ttf,woff,eot,md,ps1,psm1,template,yaml,yml,d.ts.recipe,ico,icns,plist,opus,admx,adml,wasm}',
'!**/*.{svg,exe,png,bmp,jpg,gif,scpt,bat,cmd,cur,ttf,woff,eot,md,ps1,psm1,template,yaml,yml,d.ts.recipe,ico,icns,plist,opus,admx,adml,wasm}',
'!build/{lib,download,linux,darwin}/**/*.js',
'!build/**/*.sh',
'!build/azure-pipelines/**/*.js',
Expand Down Expand Up @@ -181,6 +181,7 @@ export const copyrightFilter = Object.freeze<string[]>([
'!**/*.bat',
'!**/*.cmd',
'!**/*.ico',
'!**/*.gif',
'!**/*.opus',
'!**/*.mp3',
'!**/*.icns',
Expand Down
4 changes: 4 additions & 0 deletions build/lib/stylelint/vscode-known-variables.json
Original file line number Diff line number Diff line change
Expand Up @@ -1103,6 +1103,10 @@
"--slide-from-y"
],
"sizes": [
"--segmented-icon-toggle-cell-width",
"--segmented-icon-toggle-height",
"--segmented-icon-toggle-single-width",
"--segmented-icon-toggle-width",
"--vscode-agents-fontSize-body1",
"--vscode-agents-fontSize-body2",
"--vscode-agents-fontSize-heading1",
Expand Down
72 changes: 36 additions & 36 deletions extensions/copilot/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion extensions/copilot/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7270,7 +7270,7 @@
"@anthropic-ai/claude-agent-sdk": "0.2.112",
"@anthropic-ai/sdk": "^0.82.0",
"@github/blackbird-external-ingest-utils": "^0.3.0",
"@github/copilot": "^1.0.72",
"@github/copilot": "^1.0.73",
"@google/genai": "^1.22.0",
"@humanwhocodes/gitignore-to-minimatch": "1.0.2",
"@microsoft/tiktokenizer": "^1.0.10",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -487,7 +487,7 @@ export class ApplyPatchInstructions extends PromptElement<DefaultAgentPromptProp
To edit files in the workspace, use the {ToolName.ApplyPatch} tool. If you have issues with it, you should first try to fix your patch and continue using {ToolName.ApplyPatch}. {this.props.tools[ToolName.EditFile] && <>If you are stuck, you can fall back on the {ToolName.EditFile} tool, but {ToolName.ApplyPatch} is much faster and is the preferred tool.</>}<br />
{isGpt5 && <>Prefer the smallest set of changes needed to satisfy the task. Avoid reformatting unrelated code; preserve existing style and public APIs unless the task requires changes. When practical, complete all edits for a file within a single message.<br /></>}
{!useSimpleInstructions && <>
The input for this tool is a string representing the patch to apply, following a special format. For each snippet of code that needs to be changed, repeat the following:<br />
The tool call requires both `input`, a string representing the patch to apply, and `explanation`, a short description of what the patch aims to achieve. The input follows a special format. For each snippet of code that needs to be changed, repeat the following:<br />
<ApplyPatchFormatInstructions /><br />
NEVER print this out to the user, instead call the tool and the edits will be applied and shown to the user.<br />
</>}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ Tools can be disabled by the user. You may see tools used previously in the conv
</toolUseInstructions>
<applyPatchInstructions>
To edit files in the workspace, use the apply_patch tool. If you have issues with it, you should first try to fix your patch and continue using apply_patch. If you are stuck, you can fall back on the insert_edit_into_file tool, but apply_patch is much faster and is the preferred tool.
The input for this tool is a string representing the patch to apply, following a special format. For each snippet of code that needs to be changed, repeat the following:
The tool call requires both `input`, a string representing the patch to apply, and `explanation`, a short description of what the patch aims to achieve. The input follows a special format. For each snippet of code that needs to be changed, repeat the following:
*** Update File: [file_path]
[context_before] -> See below for further instructions on context.
-[old_code] -> Precede each line in the old code with a minus sign.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ Tools can be disabled by the user. You may see tools used previously in the conv
</toolUseInstructions>
<applyPatchInstructions>
To edit files in the workspace, use the apply_patch tool. If you have issues with it, you should first try to fix your patch and continue using apply_patch. If you are stuck, you can fall back on the insert_edit_into_file tool, but apply_patch is much faster and is the preferred tool.
The input for this tool is a string representing the patch to apply, following a special format. For each snippet of code that needs to be changed, repeat the following:
The tool call requires both `input`, a string representing the patch to apply, and `explanation`, a short description of what the patch aims to achieve. The input follows a special format. For each snippet of code that needs to be changed, repeat the following:
*** Update File: [file_path]
[context_before] -> See below for further instructions on context.
-[old_code] -> Precede each line in the old code with a minus sign.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ Tools can be disabled by the user. You may see tools used previously in the conv
</toolUseInstructions>
<applyPatchInstructions>
To edit files in the workspace, use the apply_patch tool. If you have issues with it, you should first try to fix your patch and continue using apply_patch. If you are stuck, you can fall back on the insert_edit_into_file tool, but apply_patch is much faster and is the preferred tool.
The input for this tool is a string representing the patch to apply, following a special format. For each snippet of code that needs to be changed, repeat the following:
The tool call requires both `input`, a string representing the patch to apply, and `explanation`, a short description of what the patch aims to achieve. The input follows a special format. For each snippet of code that needs to be changed, repeat the following:
*** Update File: [file_path]
[context_before] -> See below for further instructions on context.
-[old_code] -> Precede each line in the old code with a minus sign.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ The messages you send before tool calls should describe what is immediately abou
<applyPatchInstructions>
To edit files in the workspace, use the apply_patch tool. If you have issues with it, you should first try to fix your patch and continue using apply_patch. If you are stuck, you can fall back on the insert_edit_into_file tool, but apply_patch is much faster and is the preferred tool.
Prefer the smallest set of changes needed to satisfy the task. Avoid reformatting unrelated code; preserve existing style and public APIs unless the task requires changes. When practical, complete all edits for a file within a single message.
The input for this tool is a string representing the patch to apply, following a special format. For each snippet of code that needs to be changed, repeat the following:
The tool call requires both `input`, a string representing the patch to apply, and `explanation`, a short description of what the patch aims to achieve. The input follows a special format. For each snippet of code that needs to be changed, repeat the following:
*** Update File: [file_path]
[context_before] -> See below for further instructions on context.
-[old_code] -> Precede each line in the old code with a minus sign.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@ The class `Person` is in `src/models/person.ts`.
<applyPatchInstructions>
To edit files in the workspace, use the apply_patch tool. If you have issues with it, you should first try to fix your patch and continue using apply_patch. If you are stuck, you can fall back on the insert_edit_into_file tool, but apply_patch is much faster and is the preferred tool.
Prefer the smallest set of changes needed to satisfy the task. Avoid reformatting unrelated code; preserve existing style and public APIs unless the task requires changes. When practical, complete all edits for a file within a single message.
The input for this tool is a string representing the patch to apply, following a special format. For each snippet of code that needs to be changed, repeat the following:
The tool call requires both `input`, a string representing the patch to apply, and `explanation`, a short description of what the patch aims to achieve. The input follows a special format. For each snippet of code that needs to be changed, repeat the following:
*** Update File: [file_path]
[context_before] -> See below for further instructions on context.
-[old_code] -> Precede each line in the old code with a minus sign.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ The messages you send before tool calls should describe what is immediately abou
<applyPatchInstructions>
To edit files in the workspace, use the apply_patch tool. If you have issues with it, you should first try to fix your patch and continue using apply_patch. If you are stuck, you can fall back on the insert_edit_into_file tool, but apply_patch is much faster and is the preferred tool.
Prefer the smallest set of changes needed to satisfy the task. Avoid reformatting unrelated code; preserve existing style and public APIs unless the task requires changes. When practical, complete all edits for a file within a single message.
The input for this tool is a string representing the patch to apply, following a special format. For each snippet of code that needs to be changed, repeat the following:
The tool call requires both `input`, a string representing the patch to apply, and `explanation`, a short description of what the patch aims to achieve. The input follows a special format. For each snippet of code that needs to be changed, repeat the following:
*** Update File: [file_path]
[context_before] -> See below for further instructions on context.
-[old_code] -> Precede each line in the old code with a minus sign.
Expand Down
Loading
Loading