Skip to content
This repository was archived by the owner on Sep 15, 2025. It is now read-only.
/ code Public archive
forked from microsoft/vscode
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
10000 commits
Select commit Hold shift + click to select a range
39b6e12
Fixes missing services
hediet Mar 26, 2026
08c09ae
switch to gh hosted runners (#305298)
Yoyokrazy Mar 26, 2026
6288d6d
Merge branch 'main' into osortega/unnecessary-mammal
rzhao271 Mar 26, 2026
82287d8
Browser favicons: better error handling & data URL support (#305244)
kycutler Mar 26, 2026
cda51ae
Merge branch 'main' into isidorn/private-pig
rzhao271 Mar 26, 2026
1513faa
Merge branch 'main' into dev/mjbvz/underlying-roadrunner
rzhao271 Mar 26, 2026
5281aa1
Merge branch 'main' into fix/svg-zoom-no-dimensions-v2
rzhao271 Mar 26, 2026
6e19164
Remove `getInProgressSessionDescription` from interface
mjbvz Mar 26, 2026
19feb49
Merge branch 'main' into rebornix/subjective-sheep
rzhao271 Mar 26, 2026
542af5f
Merge branch 'main' into isidorn/xenial-bee
rzhao271 Mar 26, 2026
dce1ccf
Merge branch 'main' into dev/mjbvz/colossal-cheetah
rzhao271 Mar 26, 2026
5fbe9d4
Merge branch 'main' into connor4312/fix-plugin-root
rzhao271 Mar 26, 2026
63e3432
Merge pull request #304863 from mjbvz/dev/mjbvz/xenacious-roundworm
mjbvz Mar 26, 2026
342e428
Remove unused import
mjbvz Mar 26, 2026
da47129
Merge branch 'main' into benibenj/automatic-tapir
rzhao271 Mar 26, 2026
404856f
Merge branch 'main' into isidorn/private-pig
rzhao271 Mar 26, 2026
9ea3f17
Minor browser border style changes (#305247)
kycutler Mar 26, 2026
5a3846c
fix: register _aiEdits.* commands unconditionally to prevent "command…
Copilot Mar 26, 2026
4cdcd4f
fix accessibility issues with action list, specifically `Other Models…
meganrogge Mar 26, 2026
70aef52
Fix error messages and improve type imports (#304837)
roblourens Mar 26, 2026
c4f707a
tweak `run_in_terminal` changes (#304843)
meganrogge Mar 26, 2026
71e3258
Merge pull request #304801 from microsoft/rebornix/subjective-sheep
rebornix Mar 26, 2026
d5370df
Merge pull request #304973 from yogeshwaran-c/fix/svg-zoom-no-dimensi…
mjbvz Mar 26, 2026
7ab1a49
Merge pull request #304770 from microsoft/isidorn/xenial-bee
isidorn Mar 26, 2026
280a5c2
Merge pull request #304672 from mjbvz/dev/mjbvz/colossal-cheetah
mjbvz Mar 26, 2026
34361c9
Merge pull request #304611 from microsoft/connor4312/fix-plugin-root
connor4312 Mar 26, 2026
12998a8
Fix PowerShell chained output in run_in_terminal (#304513)
meganrogge Mar 26, 2026
ce31a41
Add 'editorUseEditorBackground' setting for terminal color control (#…
mrleemurray Mar 26, 2026
bfd8d74
chore: bump spdlog@0.15.8 (#305281)
deepak1556 Mar 26, 2026
4f13b47
Improve terminal output handling to hide output when not required (#3…
DonJayamanne Mar 26, 2026
97ad3ed
Update src/vs/sessions/browser/parts/sessionCompositeBar.ts
benibenj Mar 26, 2026
6575d60
Update src/vs/sessions/browser/parts/sessionCompositeBar.ts
benibenj Mar 26, 2026
81f2f74
fix test
benibenj Mar 26, 2026
ca70222
Bump picomatch from 4.0.2 to 4.0.4 in /build/npm/gyp (#304913)
dependabot[bot] Mar 26, 2026
4d32185
use /act-on-feedback command in submit feedback actions
benibenj Mar 26, 2026
3ffea6b
Bump picomatch from 2.3.1 to 2.3.2 in /extensions/npm (#304917)
dependabot[bot] Mar 26, 2026
1fc1079
Bump picomatch from 2.3.1 to 2.3.2 in /extensions/markdown-language-f…
dependabot[bot] Mar 26, 2026
c707b6a
Bump picomatch from 2.3.1 to 2.3.2 in /extensions/git (#304911)
dependabot[bot] Mar 26, 2026
094fdac
Bump picomatch in /test/automation (#304919)
dependabot[bot] Mar 26, 2026
3fd12e0
user audience for run in terminal images (#305302)
justschen Mar 26, 2026
cb88450
add padding for sessions input box (#304586)
justschen Mar 26, 2026
f8da1a6
Merge pull request #305063 from microsoft/dev/mjbvz/underlying-roadru…
mjbvz Mar 26, 2026
556c436
ButtonBar - if a submenu only has one item, render it as a button and…
lszomoru Mar 26, 2026
e9d9599
Remember panel visibility per session
benibenj Mar 26, 2026
e159670
Sessions - changes view improvements (#305294)
lszomoru Mar 26, 2026
019a4fb
Fix line count handling in snapshot output rendering (#305039)
DonJayamanne Mar 26, 2026
243bce7
Merge branch 'main' into fix/janky-scrolling-in-markdown-preview
mjbvz Mar 26, 2026
a086290
Merge pull request #305297 from microsoft/benibenj/automatic-tapir
benibenj Mar 26, 2026
926cb66
Fix ctrl+/- not working on Windows Copilot CLI (#305037)
anthonykim1 Mar 26, 2026
4f27118
Bump brace-expansion from 5.0.3 to 5.0.5 in /extensions/json-language…
dependabot[bot] Mar 26, 2026
4b05d2f
Chat - remove deprecated prompt attribute spelling (#301976)
xingsy97 Mar 26, 2026
17481ab
Merge pull request #305301 from mjbvz/dev/mjbvz/curious-thrush
mjbvz Mar 26, 2026
689cbaf
Merge pull request #305334 from microsoft/benibenj/unhappy-catfish
benibenj Mar 26, 2026
a5a24b4
Sessions - add context key for in progress session (#305336)
lszomoru Mar 26, 2026
fc86786
Add chat perf marks (#302950)
pwang347 Mar 26, 2026
a01680e
Bump brace-expansion from 5.0.2 to 5.0.5 in /extensions/css-language-…
dependabot[bot] Mar 26, 2026
b04a440
Bump brace-expansion from 5.0.3 to 5.0.5 in /extensions/html-language…
dependabot[bot] Mar 26, 2026
da5fb11
agentHost: add session-specific metadata
connor4312 Mar 26, 2026
819666e
customizations editor: hook up dirty state for built-in customization…
joshspicer Mar 26, 2026
9337969
Merge pull request #305311 from microsoft/benibenj/scared-goose
benibenj Mar 26, 2026
7b625a9
Improve session grouping by ensuring "No Workspace" sessions appear a…
osortega Mar 26, 2026
4d86eb1
Merge pull request #305288 from microsoft/osortega/unnecessary-mammal
osortega Mar 26, 2026
bc36667
Test
osortega Mar 26, 2026
d260229
Reconnect to in-progress remote agent host chat sessions (#304589)
roblourens Mar 26, 2026
33fac91
Merge pull request #287050 from AshtonYoon/fix/janky-scrolling-in-mar…
mjbvz Mar 26, 2026
154989c
Merge pull request #305354 from microsoft/osortega/equivalent-halibut
osortega Mar 26, 2026
7191e99
Improve confirmation message localization for terminal commands based…
DonJayamanne Mar 26, 2026
6e1a95e
Sessions - polish changes filter action (#305357)
lszomoru Mar 26, 2026
201c439
sessions: convert built-in prompts to skills and add UI Integration b…
joshspicer Mar 27, 2026
e1ab55e
feat: add full reference name support for language model tools and re…
DonJayamanne Mar 27, 2026
b0caf28
comments
connor4312 Mar 27, 2026
5d35a55
Add multi-client agent host integration tests (#304867)
roblourens Mar 27, 2026
79c4565
sessions: rename "No Workspace" group to "Unknown" (#305352)
sandy081 Mar 27, 2026
d7c19c5
chat: replace chatSessionCustomizations with chatSessionCustomization…
joshspicer Mar 27, 2026
c1a61a4
Merge branch 'main' into copilot/fix-floating-window-focus-issue
mjbvz Mar 27, 2026
93ca9c0
Merge pull request #304958 from yogeshwaran-c/fix/image-preview-check…
mjbvz Mar 27, 2026
248457d
Adopt ISessionsProvider for remote agent hosts (#305353)
roblourens Mar 27, 2026
228f1b6
Merge pull request #304959 from yogeshwaran-c/fix/testing-icon-color-…
yogeshwaran-c Mar 27, 2026
1d62cc6
agentPlugins: normalize to user data dir storage (#304977)
connor4312 Mar 27, 2026
6afe980
Preserve $TMPDIR when retrying terminal commands outside the sandbox …
dileepyavan Mar 27, 2026
3bafa7d
fix for chat tips (#304899)
meganrogge Mar 27, 2026
82136c0
Try to reduce how often LocalAgentsSessionsController fires updates
mjbvz Mar 27, 2026
befae3e
timeline: fix memory leak when toggling pane visibility (#304668)
xingsy97 Mar 27, 2026
d1058a0
debt - clean up some todos (#305530)
bpasero Mar 27, 2026
834947c
Fix tests
mjbvz Mar 27, 2026
ddf0a3f
Merge pull request #300691 from microsoft/copilot/fix-floating-window…
mjbvz Mar 27, 2026
d6638bd
fix some thinking content rendering for edits + lazy markdown not ren…
justschen Mar 27, 2026
e78b8eb
Fix inconsistent capitalization in permissions learn-more string (#30…
Copilot Mar 27, 2026
5f966ed
Also default to treating macos as case insensitive for md file checks
mjbvz Mar 27, 2026
3b3b067
make tool call confirmation content LARGER (#305538)
justschen Mar 27, 2026
bd5b480
Use `areUrisEqual` helper for better uri checks
mjbvz Mar 27, 2026
e54bc08
Merge pull request #305548 from mjbvz/dev/mjbvz/related-rat
mjbvz Mar 27, 2026
87d56f7
Merge pull request #305550 from mjbvz/dev/mjbvz/tense-dragon
mjbvz Mar 27, 2026
1049842
use new session icon instead of plus for add chat action
benibenj Mar 27, 2026
9c09f68
Merge pull request #305156 from microsoft/isidorn/private-pig
isidorn Mar 27, 2026
9986a43
Merge pull request #305569 from microsoft/benibenj/unusual-iguana
benibenj Mar 27, 2026
7c89420
Remove ChatAgentVoteDownReason and voteDownReason (#304878)
isidorn Mar 27, 2026
78a3908
Skills usage telemetry (#303110)
AbhitejJohn Mar 27, 2026
8394aa0
Sessions - fix changes inline toolbar and polish picker (#305593)
lszomoru Mar 27, 2026
1c02683
sessions - expand more when find is open (#305555)
bpasero Mar 27, 2026
dd52de3
sessions - fix gap for diff indicator (#305556)
bpasero Mar 27, 2026
13956d4
sessions - hide 2nd row stuff when session in progress (#305549)
bpasero Mar 27, 2026
2662642
support rename and delete
benibenj Mar 27, 2026
f11491d
sessions: show agent feedback count per file in changes view (#305613)
benibenj Mar 27, 2026
70072c5
sessions - add approval timestamp to session approval info and update…
benibenj Mar 27, 2026
afbafa7
fix test
benibenj Mar 27, 2026
6bfb9bc
fix: add missing 'since' property to IAgentSessionApprovalInfo litera…
benibenj Mar 27, 2026
dec614e
Sessions - toggle isolationOption setting (#305621)
lszomoru Mar 27, 2026
9a61fdb
agentFeedback: enable edit for PR/code review comments with auto-conv…
benibenj Mar 27, 2026
d1532b9
Merge pull request #305630 from microsoft/benibenj/moral-salmon
benibenj Mar 27, 2026
0471cfb
Merge pull request #305633 from microsoft/benibenj/brief-hawk
benibenj Mar 27, 2026
d64acf2
fix #304746 (#305641)
sandy081 Mar 27, 2026
3397429
Add EDU to chat entitlment handling (#305648)
lramos15 Mar 27, 2026
9e092b1
sessions: fix sticky section padding in sessions list (#305649)
sandy081 Mar 27, 2026
63358c7
style: reduce margins and padding for card-like components in session…
mrleemurray Mar 27, 2026
e7976d7
style: adjust footer bottom margin for sidebar part
mrleemurray Mar 27, 2026
d4ca6e6
Enhance accessibility for changes title bar widget with ARIA attribut…
mrleemurray Mar 27, 2026
67bafb2
Improve focus styles for action items in auxiliary bar and panel (#30…
mrleemurray Mar 27, 2026
e2c78d2
Improve accessibility labels and CSS styling for agent session sectio…
mrleemurray Mar 27, 2026
c7837d3
style: hide account widget update button when hidden and adjust paddi…
mrleemurray Mar 27, 2026
2ce60b1
sessions - render pinned state from toolbar (#305620)
bpasero Mar 27, 2026
0ed75f3
fix - remove experimental tags from `useModal` setting (#305616)
bpasero Mar 27, 2026
94a9391
style: adjust padding in changes view and CI status widget for improv…
mrleemurray Mar 27, 2026
bdea2b4
Git - scaffold the git extension API (#305643)
lszomoru Mar 27, 2026
764a450
fix ci widget layout
benibenj Mar 27, 2026
f867ff3
improve checkpointing and add checkpoint hover on first request (#305…
justschen Mar 27, 2026
5f94f19
style: increase padding in scrollable element for improved spacing
mrleemurray Mar 27, 2026
8ee42df
Address CCR comments for EDU sku (#305659)
lramos15 Mar 27, 2026
1fabac9
style: update margin and padding values for improved layout consisten…
mrleemurray Mar 27, 2026
be16abe
Update src/vs/sessions/contrib/changes/browser/changesView.ts
mrleemurray Mar 27, 2026
3b00240
Update src/vs/sessions/contrib/accountMenu/browser/media/accountWidge…
mrleemurray Mar 27, 2026
93cc2b1
Merge pull request #305661 from microsoft/benibenj/planned-haddock
benibenj Mar 27, 2026
1553cc3
fix: improve fallback title localization for single and plural steps …
TylerLeonhardt Mar 27, 2026
59b6639
sessions: polish New Session button shortcut chip and layout (#304549)
hawkticehurst Mar 27, 2026
7723855
Merge branch 'main' into mrleemurray/legal-tan-snake
mrleemurray Mar 27, 2026
9685f8d
Merge pull request #305667 from microsoft/mrleemurray/legal-tan-snake
mrleemurray Mar 27, 2026
9c56681
notebook: fix unused cell lookup and broken selection deduplication (…
xingsy97 Mar 27, 2026
6330454
sessions - fix layer breakers (#305693)
bpasero Mar 27, 2026
9b0dd7c
Settings editor - avoid repeated extension list refresh (#303957)
xingsy97 Mar 27, 2026
492790d
Don't write ahp commit hash to every file (#305695)
roblourens Mar 27, 2026
133627a
fix tests
connor4312 Mar 27, 2026
c136539
docs - add service dependency declaration guideline (#305682)
bpasero Mar 27, 2026
334b670
bring back fix for accessible view links (#304510)
meganrogge Mar 27, 2026
0bd9e10
Add experiment for sign in button in title bar
cwebster-99 Mar 27, 2026
cdd9c01
fix
connor4312 Mar 27, 2026
2a71559
session types changes plus /generate-run-commands, smarter chats to s…
benibenj Mar 27, 2026
9c5d733
style - update icon for `New Session` action (#305724)
bpasero Mar 27, 2026
e727b78
sessions: refine new chat empty state layout and picker styling (#304…
hawkticehurst Mar 27, 2026
676164b
fix
connor4312 Mar 27, 2026
1e69270
fix tests
benibenj Mar 27, 2026
3746fd5
fix
connor4312 Mar 27, 2026
a712e00
Merge pull request #305525 from mjbvz/dev/mjbvz/whispering-swift
mjbvz Mar 27, 2026
fc06dae
Delete pointless test
mjbvz Mar 27, 2026
00515ed
sort default question options to the top (#305696)
meganrogge Mar 27, 2026
39473a2
fix race in teardown
connor4312 Mar 27, 2026
89f90db
sessions: use proper DI for fileService and pathService in AgenticPro…
joshspicer Mar 27, 2026
dd064da
Merge pull request #305730 from microsoft/benibenj/ratty-urial
benibenj Mar 27, 2026
e55a467
last fix
connor4312 Mar 27, 2026
7466d76
fix: modernize HTML sample snippet (#304818)
yogeshwaran-c Mar 27, 2026
b8b0273
Improve badge visibility with updated styles (#305734)
mrleemurray Mar 27, 2026
2b75555
Increase font weight for session title label (#305736)
mrleemurray Mar 27, 2026
21dedfa
Merge pull request #305739 from mjbvz/dev/mjbvz/short-shark
mjbvz Mar 27, 2026
7401c12
Adjust padding for secondary action buttons in changes view (#305738)
mrleemurray Mar 27, 2026
81a487a
Don't show a terminal error when opening remote agent-host sessions (…
roblourens Mar 27, 2026
187a986
Revert "Replace child_process.exec with execFile to prevent potential…
mjbvz Mar 27, 2026
a29c4cf
Increase minimum width of AuxiliaryBarPart (#305741)
mrleemurray Mar 27, 2026
6ef843f
fix: remove persistent focus outline on walkthrough step checkbox cli…
KalashThakare Mar 27, 2026
8956984
add chat import and export icons to agent debug logs
eli-w-king Mar 27, 2026
c53d64b
Merge branch 'main' into eli/chat-export-import-icon
eli-w-king Mar 27, 2026
510195d
Sessions: Update no changed files message and adjust styles in change…
mrleemurray Mar 27, 2026
53f5495
registered in codicons.ts
eli-w-king Mar 27, 2026
0f6c3be
Merge pull request #305756 from microsoft/revert-291825-child-process
mjbvz Mar 27, 2026
402ffd2
Allow intellisense for troubleshoot skill (#305702)
pwang347 Mar 27, 2026
3fba4f2
sessions: adjust workspace picker empty state text segmentation (#305…
hawkticehurst Mar 27, 2026
fa311ec
Merge pull request #305348 from microsoft/connor4312/edit-metadata
connor4312 Mar 27, 2026
483f2ca
Add telemetry for chat todo list widget interactions (#305747)
bhavyaus Mar 27, 2026
678825d
Browser view native "add to chat" features (#305745)
kycutler Mar 27, 2026
2056bef
Don't use trusted telemetry value on model ids (#305760)
lramos15 Mar 27, 2026
9d6cdc3
Polish for experiment gating
cwebster-99 Mar 27, 2026
1d01418
Revert terminal editor regressions #298688 , #302139 (#305782)
anthonykim1 Mar 27, 2026
b7be16b
Fix customization file resolution errors for remote agent host sessio…
roblourens Mar 27, 2026
0496f93
sessions: use plus icon for Add Chat (#305791)
bpasero Mar 27, 2026
8dd3661
Merge main, remove duplicate re-export, update notebook import
pierceboggan Mar 27, 2026
36ab523
Merge branch 'main' into pierceboggan/fix-@
pierceboggan Mar 27, 2026
fea1308
polish
cwebster-99 Mar 27, 2026
e92b212
Sessions - more improvements to the changes view (#305797)
lszomoru Mar 27, 2026
2750517
Merge pull request #294777 from microsoft/pierceboggan/fix-@
pierceboggan Mar 27, 2026
44bc775
Merge pull request #305759 from microsoft/eli/chat-export-import-icon
eli-w-king Mar 27, 2026
5933225
Bump picomatch from 4.0.3 to 4.0.4 in /test/smoke (#304972)
dependabot[bot] Mar 27, 2026
fca9a78
Bump picomatch from 4.0.3 to 4.0.4 in /test/mcp (#304949)
dependabot[bot] Mar 27, 2026
e49f2d1
Bump node-forge from 1.3.2 to 1.4.0 in /extensions/vscode-api-tests (…
dependabot[bot] Mar 27, 2026
48a5303
Merge branch 'main' into open-wren
cwebster-99 Mar 27, 2026
c7de087
Bump octokit/request-action from 2.4.0 to 3.0.0 (#305135)
dependabot[bot] Mar 27, 2026
958f822
Update distro commit (main) (#305764)
vs-code-engineering[bot] Mar 27, 2026
7efa1c5
chatCustomizations: support grouping and badges for external provider…
joshspicer Mar 27, 2026
dd1cba9
Make sure main thread chat session models use overrides from live model
mjbvz Mar 27, 2026
cbc5724
Sessions - wire up the discard changes action (#305830)
lszomoru Mar 27, 2026
8d8e32f
Merge pull request #305723 from microsoft/open-wren
cwebster-99 Mar 27, 2026
cb39101
chat: fix customization provider harness deduplication, grouping, and…
joshspicer Mar 27, 2026
c171759
Merge pull request #305841 from mjbvz/dev/mjbvz/functional-shark
mjbvz Mar 27, 2026
fe491c0
Fix "add element to chat" while debugging (#305831)
kycutler Mar 27, 2026
ca0ea97
Sessions - add missing context key (#305844)
lszomoru Mar 27, 2026
b98ad1e
Send extension ID for customizations (#305796)
pwang347 Mar 27, 2026
b8b841a
Sessions - extract code to enable loading changes async (#305847)
lszomoru Mar 27, 2026
fe781b7
agentHost: actually really track (and restore) file edits
connor4312 Mar 27, 2026
bd2f916
fix compile
connor4312 Mar 27, 2026
36f8813
address PR review comments
connor4312 Mar 27, 2026
5be9778
agentHost: Apply default edit auto-approve patterns on AH side (#305859)
roblourens Mar 27, 2026
3f19f14
show a warning when there are more than 20 images in a request (#305817)
justschen Mar 27, 2026
2de60ea
Better syncing of "share with agent" status (#305854)
kycutler Mar 28, 2026
c065b17
Add argument parsing, suite filtering, and grep support to integratio…
roblourens Mar 28, 2026
6e2071b
add instructions to not use sleep, to use `await_terminal` tool (#305…
meganrogge Mar 28, 2026
be936f1
make sure thinking is serialized dynamically (#305865)
justschen Mar 28, 2026
f313ec2
sessions: Show new sessions in the list immediately before commit (#3…
sandy081 Mar 28, 2026
20c06fd
Merge remote-tracking branch 'origin/main' into connor4312/edit-metadata
connor4312 Mar 28, 2026
c65896c
Correct Shell integration migration logic (#305897)
anthonykim1 Mar 28, 2026
9c25b31
Merge pull request #305861 from microsoft/connor4312/edit-metadata
connor4312 Mar 28, 2026
1974322
AgentHost: Add remote label to workspace (#305822)
roblourens Mar 28, 2026
bf4a0eb
fix: prevent terminal panel from overwriting terminalEditorActive con…
yogeshwaran-c Mar 28, 2026
ea959a9
PromptsService: remove unnecessary change events (#305662)
aeschli Mar 28, 2026
5df4732
Bump picomatch from 4.0.3 to 4.0.4 in /remote (#305821)
dependabot[bot] Mar 28, 2026
8ce4cb7
sessions: add sync-upstream built-in skill (#305771)
joshspicer Mar 28, 2026
1c7585a
files - speed up glob matching for file events in extension host (#30…
bpasero Mar 28, 2026
fa6338b
agentHost: Register sessions provider independently of having a conne…
roblourens Mar 28, 2026
f4d0b12
Sessions - disable auto-commit for background sessions (#306006)
lszomoru Mar 28, 2026
ba7d21e
Sessions - fix all changes rendering (#306005)
lszomoru Mar 28, 2026
9d62267
sessions - restore highlighting of matching when searching in list (#…
bpasero Mar 28, 2026
c9b8ed1
Agent sandboxing: detect missing dependencies before execution and of…
dileepyavan Mar 28, 2026
1d8f0aa
sessions - enforce icon color from theme icon (#306013)
bpasero Mar 28, 2026
c389bd9
sessions - fix dangling separator in aux windows (#306018)
bpasero Mar 28, 2026
c38a4a4
sessions - fix permissions rendering in list (#306008)
bpasero Mar 28, 2026
f4ca6f1
remove internal prompt files (#306009)
aeschli Mar 28, 2026
6fadff8
improve image carousel accessibility (#306011)
rebornix Mar 29, 2026
57d9535
Rename sandbox setting to chat.agent.sandbox (#303421) (#305846)
dileepyavan Mar 29, 2026
73b0fb2
Refactor CopilotAgent, break out CopilotAgentSession, add tests (#306…
roblourens Mar 29, 2026
23c0b41
Enable test/test-integration scripts to take file.test.ts arguments (…
roblourens Mar 29, 2026
77e838d
sessions: refactor title bar to use sessions management service and a…
sandy081 Mar 29, 2026
229d6c5
sessions fixes (#306055)
sandy081 Mar 29, 2026
9bdf0cb
Bump notebook milestones (#306052)
roblourens Mar 29, 2026
9a82b04
carousel: fix image loading placeholder (#306061)
rebornix Mar 29, 2026
1ae3819
test: skip flaky test for empty array input in getFileEdits (#306062)
roblourens Mar 29, 2026
83700a8
chat: fix createModelReference leak in ResolveSymbolsContextAction (#…
roblourens Mar 29, 2026
3b664fd
sessions - top shadow also for chat editors in floating windows (#306…
bpasero Mar 29, 2026
d7ba235
PromptsService: cache IPromptDiscoveryInfo, simplify IPromptDiscovery…
aeschli Mar 29, 2026
61f0639
Sessions - use valid location for quick diff progress (#306084)
lszomoru Mar 29, 2026
ccbf5df
Sessions - tweak pull request context keys (#306101)
lszomoru Mar 29, 2026
1867570
sessions - sidebar support in modal editors for changes (#306122)
bpasero Mar 29, 2026
1bff585
debt - fix regression with layer checker and DOM (#306119)
bpasero Mar 29, 2026
fcecb74
sessions: decouple sessions layer from agent sessions dependencies (#…
sandy081 Mar 29, 2026
647e421
prompt service: simplify types, remove ExtensionAgentSourceType & IRe…
aeschli Mar 29, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
374 changes: 374 additions & 0 deletions .agents/skills/launch/SKILL.md

Large diffs are not rendered by default.

420 changes: 0 additions & 420 deletions .config/guardian/.gdnbaselines

This file was deleted.

52 changes: 37 additions & 15 deletions .config/guardian/.gdnsuppress
Original file line number Diff line number Diff line change
@@ -1,46 +1,68 @@
{
"hydrated": false,
"hydrated": true,
"properties": {
"helpUri": "https://eng.ms/docs/microsoft-security/security/azure-security/cloudai-security-fundamentals-engineering/security-integration/guardian-wiki/microsoft-guardian/general/suppressions"
},
"version": "1.0.0",
"suppressionSets": {
"default": {
"name": "default",
"createdDate": "2025-03-17 11:52:32Z",
"lastUpdatedDate": "2025-03-17 11:52:32Z"
"createdDate": "2025-01-28 06:29:05Z",
"lastUpdatedDate": "2025-08-25 17:55:20Z"
}
},
"results": {
"216e2ac9cb596796224b47799f656570a01fa0d9b5f935608b47d15ab613c8e8": {
"signature": "216e2ac9cb596796224b47799f656570a01fa0d9b5f935608b47d15ab613c8e8",
"6216d3477ad4f56cb4ec316a9aaff02e9530a10d56469a4ef4063b8d02fe344b": {
"signature": "6216d3477ad4f56cb4ec316a9aaff02e9530a10d56469a4ef4063b8d02fe344b",
"alternativeSignatures": [
"07746898f43afab7cc50931b33154c2d9e1a35f82a649dbe8aecf785b3d5a813"
"46ad210995b2ff199f3bee5f271938a4251ed7a60058041ace1beaa53e36b51c"
],
"target": "file:///D:/a/_work/1/vscode-server-win32-x64/node.exe",
"memberOf": [
"default"
],
"createdDate": "2025-03-17 11:52:32Z"
"tool": "binskim",
"ruleId": "BA2008",
"createdDate": "2025-08-25 17:54:06Z"
},
"77797a3e44634bb2994bd13ccc95ff4575bba474585dbd2cf3068a1c16bc0624": {
"signature": "77797a3e44634bb2994bd13ccc95ff4575bba474585dbd2cf3068a1c16bc0624",
"b8a4702fb4b855719e5e5033c3b629fbe6267d516ce8a18bd8f3be3b9962434b": {
"signature": "b8a4702fb4b855719e5e5033c3b629fbe6267d516ce8a18bd8f3be3b9962434b",
"alternativeSignatures": [
"4a6cb67bd4b401e9669c13a2162660aaefc0a94a4122e5b50c198414db545672"
"52d986be88f1c5696fc87d7794279d02f5084c645440e2dd2c3b5a2176b6bf52"
],
"target": "file:///D:/a/_work/1/vscode-server-win32-x64-web/node.exe",
"memberOf": [
"default"
],
"createdDate": "2025-03-17 11:52:32Z"
"tool": "binskim",
"ruleId": "BA2008",
"createdDate": "2025-08-25 17:54:06Z"
},
"30418bcc5269eaeb2832a2404465784431d4e72a2af332320c2b1db4768902ad": {
"signature": "30418bcc5269eaeb2832a2404465784431d4e72a2af332320c2b1db4768902ad",
"4dbc45d0405de2e83d53f10227e36b2a9d15eceb2c5e6934da5c4a1bffbfad89": {
"signature": "4dbc45d0405de2e83d53f10227e36b2a9d15eceb2c5e6934da5c4a1bffbfad89",
"alternativeSignatures": [
"b7b9eb974d7d3a4ae14df8695ca5a62592c8c9d20b7eda70a6535d50cbda3e7f"
"b6bab85ba5e97bc4e6ff2e8a7913cb9f4f3346f7bda435d176e0b1e3cfb883cf"
],
"target": "file:///D:/a/_work/1/vscode-server-win32-arm64/node.exe",
"memberOf": [
"default"
],
"createdDate": "2025-03-17 11:52:32Z"
"tool": "binskim",
"ruleId": "BA2008",
"createdDate": "2025-08-25 17:45:35Z"
},
"024ff37af329b63d2d9c83784cc071badf63b7729e3dd0969ab921d2f04d8e09": {
"signature": "024ff37af329b63d2d9c83784cc071badf63b7729e3dd0969ab921d2f04d8e09",
"alternativeSignatures": [
"b46b7d6ed331f3e62eff23c57d3a074f76ef618f108929851065904200f5a572"
],
"target": "file:///D:/a/_work/1/vscode-server-win32-arm64-web/node.exe",
"memberOf": [
"default"
],
"tool": "binskim",
"ruleId": "BA2008",
"createdDate": "2025-08-25 17:45:35Z"
}
}
}
16 changes: 8 additions & 8 deletions .devcontainer/devcontainer-lock.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
{
"features": {
"ghcr.io/devcontainers/features/desktop-lite:1": {
"version": "1.0.8",
"resolved": "ghcr.io/devcontainers/features/desktop-lite@sha256:e7dc4d37ab9e3d6e7ebb221bac741f5bfe07dae47025399d038b17af2ed8ddb7",
"integrity": "sha256:e7dc4d37ab9e3d6e7ebb221bac741f5bfe07dae47025399d038b17af2ed8ddb7"
"ghcr.io/devcontainers/features/desktop-lite:": {
"version": "1.2.8",
"resolved": "ghcr.io/devcontainers/features/desktop-lite@sha256:14ac23fd59afab939e6562ba6a1f42a659a805e4c574a1be23b06f28eb3b0b71",
"integrity": "sha256:14ac23fd59afab939e6562ba6a1f42a659a805e4c574a1be23b06f28eb3b0b71"
},
"ghcr.io/devcontainers/features/rust:1": {
"version": "1.3.3",
"resolved": "ghcr.io/devcontainers/features/rust@sha256:2521a8eeb4911bfcb22557c8394870ea22eb790d8e52219ddc5182f62d388995",
"integrity": "sha256:2521a8eeb4911bfcb22557c8394870ea22eb790d8e52219ddc5182f62d388995"
"ghcr.io/devcontainers/features/rust:": {
"version": "1.5.0",
"resolved": "ghcr.io/devcontainers/features/rust@sha256:0c55e65f2e3df736e478f26ee4d5ed41bae6b54dac1318c443e31444c8ed283c",
"integrity": "sha256:0c55e65f2e3df736e478f26ee4d5ed41bae6b54dac1318c443e31444c8ed283c"
}
}
}
4 changes: 2 additions & 2 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
"dockerfile": "Dockerfile"
},
"features": {
"ghcr.io/devcontainers/features/desktop-lite:1": {},
"ghcr.io/devcontainers/features/rust:1": {}
"ghcr.io/devcontainers/features/desktop-lite:": {},
"ghcr.io/devcontainers/features/rust:": {}
},
"containerEnv": {
"DISPLAY": "" // Allow the Dev Containers extension to set DISPLAY, post-create.sh will add it back in ~/.bashrc and ~/.zshrc if not set.
Expand Down
9 changes: 3 additions & 6 deletions .eslint-ignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,30 +10,27 @@
**/extensions/markdown-language-features/media/**
**/extensions/markdown-language-features/notebook-out/**
**/extensions/markdown-math/notebook-out/**
**/extensions/mermaid-chat-features/chat-webview-out/**
**/extensions/notebook-renderers/renderer-out/index.js
**/extensions/simple-browser/media/index.js
**/extensions/terminal-suggest/src/completions/upstream/**
**/extensions/terminal-suggest/src/shell/zshBuiltinsCache.ts
**/extensions/terminal-suggest/src/shell/fishBuiltinsCache.ts
**/extensions/terminal-suggest/third_party/**
**/extensions/typescript-language-features/test-workspace/**
**/extensions/typescript-language-features/extension.webpack.config.js
**/extensions/typescript-language-features/extension-browser.webpack.config.js
**/extensions/typescript-language-features/package-manager/node-maintainer/**
**/extensions/vscode-api-tests/testWorkspace/**
**/extensions/vscode-api-tests/testWorkspace2/**
**/fixtures/**
**/node_modules/**
**/out-*/**/*.js
**/out-editor-*/**
**/out/**/*.js
**/out/**
**/out-*/**
**/src/**/dompurify.js
**/src/**/marked.js
**/src/**/semver.js
**/src/typings/**/*.d.ts
**/src/vs/*/**/*.d.ts
**/src/vs/base/test/common/filters.perf.data.js
**/src/vs/loader.js
**/test/unit/assert.js
**/test/automation/out/**
**/typings/**
Expand Down
125 changes: 125 additions & 0 deletions .eslint-plugin-local/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
# Custom ESLint rules

We use a set of custom [ESLint](http://eslint.org) to enforce repo specific coding rules and styles. These custom rules are run in addition to many standard ESLint rules we enable in the project. Some example custom rules includes:

- Enforcing proper code layering
- Preventing checking in of `test.only(...)`
- Enforcing conventions in `vscode.d.ts`

Custom rules are mostly used for enforcing or banning certain coding patterns. We tend to leave stylistic choices up to area owners unless there's a good reason to enforce something project wide.

This doc provides a brief overview of how these rules are setup and how you can add a new one.

# Resources
- [ESLint rules](https://eslint.org/docs/latest/extend/custom-rules) — General documentation about writing eslint rules
- [TypeScript ASTs and eslint](https://typescript-eslint.io/blog/asts-and-typescript-eslint/) — Look at how ESLint works with TS programs
- [ESTree selectors](https://eslint.org/docs/latest/extend/selectors) — Info about the selector syntax rules use to target specific nodes in an AST. Works similarly to css selectors.
- [TypeScript ESLint playground](https://typescript-eslint.io/play/#showAST=es) — Useful tool for figuring out the structure of TS programs and debugging custom rule selectors


# Custom Rule Configuration

Custom rules are defined in the `.eslint-plugin-local` folder. Each rule is defined in its own TypeScript file. These follow the naming convention:

- `code-RULE-NAME.ts` — General rules that apply to the entire repo.
- `vscode-dts-RULE-NAME.ts` — Rules that apply just to `vscode.d.ts`.

These rules are then enabled in the `eslint.config.js` file. This is the main eslint configuration for our repo. It defines a set of file scopes which rules should apply to files in those scopes.

For example, here's a configuration that enables the no `test.only` rule in all `*.test.ts` files in the VS Code repo:

```ts
{
// Define which files these rules apply to
files: [
'**/*.test.ts'
],
languageOptions: { parser: tseslint.parser, },
plugins: {
'local': pluginLocal,
},
rules: {
// Enable the rule from .eslint-plugin-local/code-no-test-only.ts
'local/code-no-test-only': 'error',
}
}
```

# Creating a new custom rule
This walks through the steps to create a new eslint rule:

1. Create a new rule file under `.eslint-plugin-local`. Generally you should call it `code-YOUR-RULE-NAME.ts`, for example, `.eslint-plugin-local/code-no-not-null-assertions-on-undefined-values.ts`

2. In this file, add the rule. Here's a template:

```ts
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/

import * as eslint from 'eslint';

export = new class YourRuleName implements eslint.Rule.RuleModule {

readonly meta: eslint.Rule.RuleMetaData = {
messages: {
customMessageName: 'message text shown in errors/warnings',
},
schema: false,
};

create(context: eslint.Rule.RuleContext): eslint.Rule.RuleListener {
return {
[SELECTOR]: (node: any) => {
// Report errors if needed
return context.report({
node,
messageId: 'customMessageName'
});
}
};
}
};
```

- Update the name of the class to match the name of your rule
- Add message entries for any errors you want to report
- Update `SELECTOR` with the [ESTree selector](https://eslint.org/docs/latest/extend/selectors) needed to target the nodes you are interested in. Use the [TypeScript ESLint playground](https://typescript-eslint.io/play/#showAST=es) to figure out which nodes you need and debug selectors

3. Register the rule in `eslint.config.js`

Generally this is just turning on the rule in the rule list like so:

```js
rules: {
// Name should match file name
'local/code-no-not-null-assertions-on-undefined-values': 'warn',
...
}
```

Rules can also take custom arguments. For example, here's how we can pass arguments to a custom rule in the `eslint.config.js`:

```
rules: {
'local/code-no-not-null-assertions-on-undefined-values': ['warn', { testsOk: true }],
...
}
```

In these cases make sure to update the `meta.schema` property on your rule with the JSON schema for the arguments. You can access these arguments using `context.options` in the rule `create` function


## Adding fixes to custom rules
Fixes are a useful way to mechanically fix basic linting issues, such as auto inserting semicolons. These fixes typically work at the AST level, so they are a more reliable way to perform bulk fixes compared to find/replaces.

To add a fix for a custom rule:

1. On the `meta` for your rule, add `fixable: 'code'`

2. When reporting an error in the rule, also include a `fix`. This is a function that takes a `fixer` argument and returns one or more fixes.

See the [Double quoted to single quoted string covert fix](https://github.com/microsoft/vscode/blob/b074375e1884ae01033967bf0bbceeaa4795354a/.eslint-plugin-local/code-no-unexternalized-strings.ts#L128) for an example. The ESLint docs also have [details on adding fixes and the fixer api](https://eslint.org/docs/latest/extend/custom-rules#applying-fixes)

The fixes can be run using `npx eslint --fix` in the VS Code repo
13 changes: 8 additions & 5 deletions .eslint-plugin-local/code-amd-node-module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,12 @@
*--------------------------------------------------------------------------------------------*/

import * as eslint from 'eslint';
import type * as ESTree from 'estree';
import { readFileSync } from 'fs';
import { join } from 'path';


export = new class ApiProviderNaming implements eslint.Rule.RuleModule {
export default new class ApiProviderNaming implements eslint.Rule.RuleModule {

readonly meta: eslint.Rule.RuleMetaData = {
messages: {
Expand All @@ -21,7 +23,8 @@ export = new class ApiProviderNaming implements eslint.Rule.RuleModule {
const modules = new Set<string>();

try {
const { dependencies, optionalDependencies } = require(join(__dirname, '../package.json'));
const packageJson = JSON.parse(readFileSync(join(import.meta.dirname, '../package.json'), 'utf-8'));
const { dependencies, optionalDependencies } = packageJson;
const all = Object.keys(dependencies).concat(Object.keys(optionalDependencies));
for (const key of all) {
modules.add(key);
Expand All @@ -33,13 +36,13 @@ export = new class ApiProviderNaming implements eslint.Rule.RuleModule {
}


const checkImport = (node: any) => {
const checkImport = (node: ESTree.Literal & { parent?: ESTree.Node & { importKind?: string } }) => {

if (node.type !== 'Literal' || typeof node.value !== 'string') {
if (typeof node.value !== 'string') {
return;
}

if (node.parent.importKind === 'type') {
if (node.parent?.type === 'ImportDeclaration' && node.parent.importKind === 'type') {
return;
}

Expand Down
5 changes: 3 additions & 2 deletions .eslint-plugin-local/code-declare-service-brand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,9 @@
*--------------------------------------------------------------------------------------------*/

import * as eslint from 'eslint';
import type * as ESTree from 'estree';

export = new class DeclareServiceBrand implements eslint.Rule.RuleModule {
export default new class DeclareServiceBrand implements eslint.Rule.RuleModule {

readonly meta: eslint.Rule.RuleMetaData = {
fixable: 'code',
Expand All @@ -14,7 +15,7 @@ export = new class DeclareServiceBrand implements eslint.Rule.RuleModule {

create(context: eslint.Rule.RuleContext): eslint.Rule.RuleListener {
return {
['PropertyDefinition[key.name="_serviceBrand"][value]']: (node: any) => {
['PropertyDefinition[key.name="_serviceBrand"][value]']: (node: ESTree.PropertyDefinition) => {
return context.report({
node,
message: `The '_serviceBrand'-property should not have a value`,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@
*--------------------------------------------------------------------------------------------*/

import * as eslint from 'eslint';
import { Node } from 'estree';
import type * as estree from 'estree';

export = new class EnsureNoDisposablesAreLeakedInTestSuite implements eslint.Rule.RuleModule {
export default new class EnsureNoDisposablesAreLeakedInTestSuite implements eslint.Rule.RuleModule {

readonly meta: eslint.Rule.RuleMetaData = {
type: 'problem',
Expand All @@ -18,15 +18,15 @@ export = new class EnsureNoDisposablesAreLeakedInTestSuite implements eslint.Rul
};

create(context: eslint.Rule.RuleContext): eslint.Rule.RuleListener {
const config = <{ exclude: string[] }>context.options[0];
const config = context.options[0] as { exclude: string[] };

const needle = context.getFilename().replace(/\\/g, '/');
if (config.exclude.some((e) => needle.endsWith(e))) {
return {};
}

return {
[`Program > ExpressionStatement > CallExpression[callee.name='suite']`]: (node: Node) => {
[`Program > ExpressionStatement > CallExpression[callee.name='suite']`]: (node: estree.Node) => {
const src = context.getSourceCode().getText(node);
if (!src.includes('ensureNoDisposablesAreLeakedInTestSuite(')) {
context.report({
Expand Down
Loading