Commit Graph

105 Commits

Author SHA1 Message Date
Henning Dieterichs
b533ee4b6e Updates component explorer & adopts rspack for fixture serving (#306484) 2026-04-01 03:25:14 +00:00
Benjamin Pasero
20e37ff188 sessions - more renames (#306937) 2026-03-31 13:32:08 -07:00
Benjamin Pasero
17faef0d3c Sessions: Update naming (fix #306461) (#306922)
* Sessions: Update naming (fix #306461)

* .
2026-03-31 20:02:26 +00:00
Josh Spicer
2ce238e7e5 Chat Session Customizations initial Sketch (#304532)
* Add ChatSessionCustomizationsProvider proposed API

New types in chatSessionCustomizations.d.ts:
- ChatSessionCustomizationType enum (well-known group IDs)
- ChatSessionCustomizationStorageLocation enum
- ChatSessionCustomizationItem, ChatSessionCustomizationItemGroup
- ChatSessionCustomizationsProvider (provideCustomizations + resolveCustomizationDeletion)

New registration function in chatSessionsProvider.d.ts:
- chat.registerChatSessionCustomizationsProvider(chatSessionType, provider)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Implement ChatSessionCustomizationsProvider e2e plumbing

Protocol: DTOs and 5 new methods on MainThread/ExtHost shapes.
Ext host: registerChatSessionCustomizationsProvider, provideCustomizations,
  resolveCustomizationDeletion proxy methods.
Type converters: ChatSessionCustomizations.fromItem/fromGroup.
Main thread: bridge with per-handle emitters, harness descriptor registration.
Service: IChatSessionCustomizationsProvider + registerCustomizationsProvider,
  getCustomizations, resolveCustomizationDeletion on IChatSessionsService.
Harness: registerContributedHarness() on ICustomizationHarnessService,
  derived observable merges built-in + contributed harnesses.
UI: AICustomizationListWidget reads from provider when extension harness
  is active, falls back to IPromptsService for built-in harnesses.
Setting: chat.customizations.providedByExtensions.enabled (experimental).
Command registration: openNewChatSessionInPlace for all contributions.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Unhardcode AgentSessionProviders to support extension-contributed session types

Widen type annotations from AgentSessionProviders enum to AgentSessionTarget
across session target picker, delegation picker, welcome view, and utility
functions. Add default cases to exhaustive switch statements. Fix
chatInputPart getActiveSessionType to fall back to getChatSessionType for
extension-contributed URIs.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add joshbot extensionDevelopmentPath to Run and Compile Code - OSS task

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Wire provider group commands to create buttons in customization UI

When an extension-contributed harness is active, buildCreateActions()
reads commands from the provider's group data instead of the harness
descriptor. Commands flow through the full plumbing:
  extension → protocol DTO → main thread → service → list widget

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add error handling to ext host customizations provider methods

Wrap provideCustomizations and resolveCustomizationDeletion in
try-catch to prevent extension errors from crashing the ext host.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Subscribe to onDidChangeCustomizations in list widget for live updates

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix group commands race condition, remove resolveCustomizationDeletion

Commands bug: _fetchItemsFromProvider no longer sets _currentGroupCommands
as a side effect. Commands are now extracted in loadItems() after the
section-guard check, eliminating races from computeItemCountForSection.

Deletion: removed resolveCustomizationDeletion from the full stack
(proposed API, protocol, ext host, main thread, service, mocks).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add NOTES.md with open design items for cross-harness customizations

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Update NOTES.md with pattern analysis and concrete context proposal

Analyzed TreeDataProvider, StorageSourceFilter, CompletionItemProvider,
and CodeActionProvider patterns. Proposed ChatSessionCustomizationsContext
parameter with discoveredItems for provider-as-curator model.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Simplify cross-harness approach: pull via chatPromptFiles API

No new API needed. Extensions use existing chat.customAgents,
chat.skills, chat.instructions arrays to discover global items
and merge them in provideCustomizations.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add swap file for VIM 9.1 configuration

* Remove swap file for VIM configuration

* Fix JoshBot task: inline arg into command string

Shell tasks with && in command don't work with separate args array.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix create buttons: call updateAddButton after loadItems

buildCreateActions reads _currentGroupCommands which is populated in
loadItems. Calling updateAddButton before loadItems meant commands
were always undefined for extension harnesses.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Guard extension customizations behind setting as a full feature gate

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix missing Hooks section, remove redundant config check

- Add 'hooks' case to sectionToCustomizationGroupIds
- Remove dead UseCustomizationsProvider check from widget (already
  enforced at registration in mainThreadChatSessions)
- Remove unused IConfigurationService and ChatConfiguration imports

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Wire itemCommands to context menu for extension harness items

Extension-provided itemCommands now appear in the right-click context
menu on customization items when a non-built-in harness is active.
Commands receive the item id and uri as arguments.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add inSessions flag to Launch Component Explorer task

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix component fixtures: add IChatSessionsService mock

AICustomizationListWidget now depends on IChatSessionsService.
Add mock to both list widget and management editor fixtures.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Refactor ChatSessionCustomizationItem: remove id property and update related code

* Remove JoshBot task from tasks.json

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Rename setting to chat.customizations.providerApi.enabled

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Replace hardcoded harness checks with hasCustomizationsProvider

Remove all CustomizationHarness.VSCode/CLI/Claude comparisons from
the list widget. Instead check chatSessionsService.hasCustomizationsProvider()
which works for any harness — built-in or extension-contributed.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add TODO comments to proposed API for open design questions

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Remove NOTES.md

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add TODO: Remove hardcoded providers from core

Mark all knownProvider/knownType if-else patterns that branch on
whether a session type is in the AgentSessionProviders enum.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Raymond Zhao <7199958+rzhao271@users.noreply.github.com>
2026-03-25 18:18:17 -07:00
Benjamin Pasero
e852b5875c sessions - separate user dir for --sessions runs (#304726)
* sessions - separate user dir for `--sessions` runs

* Update tasks.json

---------

Co-authored-by: Benjamin Christopher Simmonds <44439583+benibenj@users.noreply.github.com>
2026-03-25 15:37:45 +01:00
BeniBenj
687dc1c8f0 Update sessions tasks 2026-03-25 10:22:25 +01:00
Megan Rogge
fad70f3f77 set chat tips to true, always elevate AI profiles (#304553) 2026-03-24 19:37:01 +00:00
Henning Dieterichs
5e748c905d Support taskVar variables from problem matcher named capture groups
Fixes #303361

Introduces \\\ variables that extract named capture groups
from a task problem matcher's endsPattern and make them available for
substitution in launch configurations and other variable-resolved contexts.

Changes:
- WatchingProblemCollector.tryFinish() extracts matches.groups from endsPattern
- IProblemCollectorEvent carries capturedVariables in BackgroundProcessingEnds
- TerminalTaskSystem registers captured variables via contributeVariable()
- VariableKind.TaskVar added to the enum
- Test added for taskVar variable resolution
- .vscode/launch.json updated to use \
2026-03-23 14:22:25 +01:00
Benjamin Pasero
41075b8b7f feat - update task labels for OSS compatibility (#302819) 2026-03-18 15:10:04 +01:00
BeniBenj
eaa6b0a8a0 windows task should not use /d 2026-03-17 23:29:13 +01:00
BeniBenj
27bcf17319 minor sessions task changes 2026-03-17 11:45:14 +01:00
Benjamin Pasero
c160c03676 build - update command to use watch instead of compile (#301511)
* build - update command to use watch instead of compile

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-03-13 15:22:44 +00:00
Henning Dieterichs
5d56633a57 updates component explorer 2026-03-11 22:30:41 +01:00
BeniBenj
9831d8f09c add support for running tasks on worktree creation 2026-03-11 18:13:56 +01:00
Benjamin Pasero
06c96dcab4 sessions - AI customizations for selfhost (#299053)
* sessions - AI customizations for selfhost

* more

* Update .github/hooks/hooks.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update .github/skills/sessions/SKILL.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-04 05:56:19 +01:00
Benjamin Pasero
8c6874835d sessions - updates to selfhost setup (#298943)
* sessions - updates to selfhost setup

* document more hooks
2026-03-03 04:39:31 -08:00
Henning Dieterichs
0a01b4f5ae Fixes vite warnings & improves pipeline 2026-02-26 21:03:52 +01:00
Henning Dieterichs
96baba2cc4 feat: update component explorer dependencies and add new test fixtures
- Updated @vscode/component-explorer to version 0.1.1-16 and @vscode/component-explorer-cli to version 0.1.1-12 in package.json and package-lock.json.
- Added new test fixtures for chat question carousel, code action list, find widget, inline completions extras, rename widget, and suggest widget.
- Implemented rendering logic for new fixtures to enhance testing capabilities for various components.
2026-02-26 15:30:23 +01:00
Benjamin Christopher Simmonds
2c3fdeba44 add task for sessions (#297298)
* feat: add task to run development sessions

* feat: enable inSessions for task arguments
2026-02-24 03:08:30 -08:00
Benjamin Christopher Simmonds
79acdb7cfa Move open in vscode and open in terminal into titlebar without dropdown (#297283)
* refactor: update menu registration for session actions and remove split button item

* Update customization: tasks.json
2026-02-24 10:11:57 +00:00
Henning Dieterichs
5c4204e60d updates component explorer 2026-02-23 22:44:44 +01:00
Johannes Rieken
c00448c8ee fix(tasks): update beginsPattern for transpilation background task (#296295)
https://github.com/microsoft/vscode/issues/295523
2026-02-19 16:22:31 +01:00
Matt Bierner
63530ac8fc Fix build task matcher
This is a pattern so we need to escape special regepx chars like `.`
2026-02-18 16:51:52 -08:00
Alex Ross
d692656d9d Fix tsgo ext build problem matching (#295603)
* Fix tsgo ext build problem matching

* Update .vscode/tasks.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Fix double timestamp

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-17 14:50:48 -08:00
Johannes
eae6d8b9c4 fix: update error pattern and file location in tasks.json for improved error handling 2026-02-10 17:38:46 +01:00
Johannes
878df8b755 Refactor build system to support esbuild with new transpile and typecheck tasks 2026-02-06 11:36:52 +01:00
Henning Dieterichs
5510e9a2d1 Adds problemMatcher to vite launch config (#287148) 2026-01-12 20:10:01 +01:00
Henning Dieterichs
8c45811887 Removes vite problem matcher to avoid OOM (#282720) 2025-12-11 12:29:12 +00:00
Matt Bierner
2648263d3e Run our build scripts directly as typescript (#277567)
* Run our build scripts directly as typescript #277567

Follow up on #276864
For #277526

* Remove a few more ts-node references

* Fix linux and script reference

* Remove `_build-script` ref

* Fix script missing closing quote

* use type only import

* Fix export

* Make sure to run copy-policy-dto

* Make sure we run the copy-policy-dto script

* Enable `verbatimModuleSyntax`

* Pipelines fixes

* Try adding explicit ext to path

* Fix bad edit

* Revert extra `--`

---------

Co-authored-by: João Moreno <joaomoreno@users.noreply.github.com>
2025-11-21 14:56:00 +01:00
Henning Dieterichs
a335d51f66 Adds hot reload launch config (#277123)
* Adds hot reload launch config

---------

Co-authored-by: Benjamin Pasero <benjamin.pasero@gmail.com>
Co-authored-by: Benjamin Pasero <benjamin.pasero@microsoft.com>
2025-11-21 11:18:47 +01:00
Henning Dieterichs
b6b78218fe adds monaco editor playground launch config 2025-11-11 18:32:36 +01:00
Megan Rogge
a28ead5f43 rm test task (#268496) 2025-09-26 16:26:05 +00:00
Copilot
14dd6cdb57 Add preserveTerminalName task presentation option to control terminal name preservation (#268350) 2025-09-25 15:51:18 -04:00
Tyler James Leonhardt
a7cdeedd57 Add another server built on top of our own automation framework (#262984)
* Add another server built on top of our own automation framework

It's a big PR but a lot of this is boiler plate. It's just essentially wrapping our Automation framework in a bunch of tools.

* Lay the foundation for multiplexing
2025-08-22 17:20:22 -07:00
Tyler James Leonhardt
c81631ed89 Use stdio for the vscode playwright mcp (#262260)
* Use stdio for the vscode playwright mcp

makes for easier management... since it can be compiled when launched.

* add to readme
2025-08-19 08:27:10 +02:00
Tyler James Leonhardt
4a653ec816 Add initial MCP server (#261898) 2025-08-15 23:25:13 -07:00
Robo
b5a6aa14a8 feat: switch to npm as default package manager (#226927)
* feat: move from yarn to npm

* chore: skip yarn.lock files

* fix: playwright download

* chore: fix compile and hygiene

* chore: bump vsce@2.17.0

Refs 8b49e9dfdf

* test: update results for bat and sh colorizer tests

* fix: add missing lock files for windows

* fix: switch to legacy-peer-deps

* chore: update markdown-it@14.1.0

Refs 737c95a129

esbuild step in extensions-ci-pr was previously using markdown-it
from root which had userland punycode and was able to compile successfully.

* ci: increase pr timeout for windows integration tests

* chore: fix product build

* build: ignore extension dev dependency for rcedit

* build: fix working directory inside container

* build: fix dependency generation

* npm: update dependencies

* ci: use global npmrc

* ci: update cache

* ci: setup global npmrc for private npm auth

* build: fix extension bundling

* chore: sync npm dependencies

* ci: debug env variables for container

* ci: fix win32 cli pipeline

* build: fix npmrc config usage for build/ and remote/ dirs

* fix: windows build

* fix: container builds

* fix: markdown-language-features tests and bundling

```
[03:58:22] Error: Command failed: /Users/demohan/.nvm/versions/node/v20.15.1/bin/node /Users/demohan/github/vscode/extensions/markdown-language-features/esbuild-notebook.js --outputRoot /Users/demohan/github/vscode/.build/extensions/markdown-language-features
✘ [ERROR] Could not resolve "punycode"

    extensions/markdown-language-features/node_modules/markdown-it/lib/index.js:14:27:
      14 │ var punycode     = require('punycode');
         ╵                            ~~~~~~~~~~

  The package "punycode" wasn't found on the file system but is built into node. Are you trying to bundle for node? You can use "platform: 'node'" to do that, which will remove this error.
```

Adds userland package based on beed9aee2c

* fix: container builds for distro

* chore: update yarn occurrences

* fixup! chore: bump vsce@2.17.0

Uses the closest version to `main` branch that does not
include d3cc84cdec
while still having the fix 8b49e9dfdf

* chore: sync npm dependencies

* chore: sync npm dependencies

* chore: sync npm dependencies

* chore: throw error when yarn is used for installation

* chore: add review feedback

* chore: switch exec => run where needed

* chore: npm sync dependencies

* fix: markdown-language-features bundling

```
✘ [ERROR] Could not resolve "punycode"

    extensions/markdown-language-features/node_modules/markdown-it/lib/index.js:14:27:
      14 │ var punycode     = require('punycode');
         ╵                            ~~~~~~~~~~

  The package "punycode" wasn't found on the file system but is built into node. Are you trying to bundle for node? You can use "platform: 'node'" to do that, which will remove this error.
```

Adds missing userland package based on markdown-it/markdown-it@beed9ae,
can be removed once we update markdown-it >= 14.1.0

* ci: rename no-yarn-lock-changes.yml

* chore: sync npm dependencies

* ci: restore no-yarn-lock-changes.yml

We can disable it in a separate PR to keep the required
checks happy and also need workflow edit perms.

* chore: sync npm dependencies

* ci: rebuild cache

* ci: fix no-package-lock-changes.yml

* chore: bump distro

* chore: rm yarn.lock files

* chore: rm yarn.lock files without dependencies

* chore: add vscode-selfhost-import-aid to postinstall dirs

* chore: bump distro
2024-09-06 22:18:02 +09:00
meganrogge
128933bbbb fix #196401 2023-10-25 09:15:51 -07:00
meganrogge
652ef862b8 pass first letter into terminal, don't await timeout 2023-10-20 13:48:45 -07:00
Alex Ross
2dcfc3798f Kill, yarn, build task (#185571) 2023-06-19 18:57:04 +02:00
Henning Dieterichs
c9c8e53032 Replaces http-server with playground-server (#179876) 2023-04-13 07:39:35 -07:00
Henning Dieterichs
031e97749c Fixes http server launch config 2023-02-22 11:47:30 +01:00
Henning Dieterichs
6a22e832b7 Adresses PR feedback, adopts most recent textmate version. 2023-02-17 17:04:41 +01:00
Henning Dieterichs
f4b345578d Adds monaco editor playground launch config & http server 2023-02-10 19:18:47 +01:00
Sandeep Somavarapu
82ac904296 add run code web launches (#162364) 2022-09-29 17:45:27 +02:00
Alex Ross
db8c1f7877 Add restart VS Code build task
Fixes #143589
2022-02-22 14:29:23 +01:00
Alex Ross
5fff5f1d06 Add close options to build tasks
Fixes #143407
2022-02-21 08:48:59 +01:00
Martin Aeschlimann
7935cd295c missing rename code-server-web -> code-server 2022-01-20 18:10:33 +01:00
Benjamin Pasero
13461f8c61 Web: change yarn web to run with our server instead of playground (#139725)
* web - first cut `yarn web` via our server

* properly pipe output

* web - remove traces of web playground

* web - remember last opened workspace for convinience

* use vscode-test-web for server less, clean up web commands

* fix comment

* fix `yarn web`

* rename to code-server

* open system browser

* code-server script: use minimist

* test resolver: use ./scripts/code-server

* integartion tests: fix code-server command name

Co-authored-by: Martin Aeschlimann <martinae@microsoft.com>
2022-01-20 13:48:08 +01:00
Alex Ross
838cbd5223 Fix build problem matcher
Fixes #139089
2021-12-14 16:15:38 +01:00