Commit Graph

830 Commits

Author SHA1 Message Date
Henning Dieterichs 19b3119b33 Pin @github/copilot to exact 1.0.34 and regenerate lockfiles
The previous reverts only changed the spec to ^1.0.34, but the resolved entries in the lockfiles still pointed at 1.0.38 (with 1.0.38 tarballs and integrity hashes). Since ^1.0.34 satisfies 1.0.38, npm ci would still install the broken version. Pin to exact 1.0.34 in all three package.json files and regenerate the lockfiles.
2026-04-29 16:46:30 +02:00
Henning Dieterichs 6087b944fe Revert "agents: bump @github/copilot to 1.0.38 (#313073)"
This reverts commit 83cbe74699.
2026-04-29 16:46:30 +02:00
Rob Lourens 83cbe74699 agents: bump @github/copilot to 1.0.38 (#313073)
* agents: bump @github/copilot to 1.0.38

Tracks the version pinned in extensions/copilot/package.json. Updates
both root and remote/ package.json + lockfiles. Verified by re-running
the real-SDK 'listModels returns well-shaped model entries' integration
test (AGENT_HOST_REAL_SDK=1).

(Written by Copilot)

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

* fix: skip electron re-download when correct version already present

The macOS/Electron CI job was failing because `electron.ts` unconditionally
deletes `.build/electron` and re-downloads Electron on every invocation.

When integration tests run CSS/HTML tests via `node-electron.sh`, they call
`npm run electron` which triggers this re-download. This can fail due to
transient network errors (e.g. 502 Bad Gateway from GitHub), causing the
integration test step to fail even though Electron was already downloaded
successfully in the dedicated "Download Electron and Playwright" CI step.

Fix: add a `.version` marker file inside `.build/electron` that records the
Electron version, MS build ID, and architecture. On the next invocation,
`main()` reads this marker and returns early if it matches the expected
version, skipping the unnecessary delete-and-re-download cycle.

Agent-Logs-Url: https://github.com/microsoft/vscode/sessions/8d0b4207-2616-497e-9a4f-bf8a39671934

Co-authored-by: roblourens <323878+roblourens@users.noreply.github.com>

* Revert "fix: skip electron re-download when correct version already present"

This reverts commit e1811ece5b. That
commit was pushed to this PR by another agent and is unrelated to the
@github/copilot bump that this PR is for.

(Written by Copilot)

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: roblourens <323878+roblourens@users.noreply.github.com>
2026-04-28 21:00:14 +00:00
dileepyavan bb09e7379b terminal: Disable read all by default (#311850)
* adding allowRead and testing with defaults

* Rename terminal sandbox read allow list

* Remove Copilot settings change from sandbox PR

* changes

* changes

* Updating sandbox runtime package

* Updating tests

* Add macOS test cases for denyRead/allowRead behavior and ~ path handling

Agent-Logs-Url: https://github.com/microsoft/vscode/sessions/ec5cf3c2-6c7b-4577-bdbb-8ac3d42bdfb0

Co-authored-by: dileepyavan <52841896+dileepyavan@users.noreply.github.com>

* changes for readonly home dir

* skipping integrated tests for sandbox

* running srt in tmp_dir for linux

* running srt in tmp_dir for linux

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
2026-04-24 11:07:16 -07:00
Rob Lourens 096e5abe9d agentHost: bump @github/copilot to 1.0.34 (#311964)
* Fix broken sessions list
From #311751

Co-authored-by: Copilot <copilot@github.com>

* fix tests

* agentHost: settings followups

- Unrelated: fix local agent host being broken on main following
  some overnight cleanups
- Register a JSON schema for agent session settings (only when they're
  open since it has a perf cost)
- When there are multiple custom approval buttons, show them in a
  dropdown similar to other tool calls.

* Add tests for agent session settings schema registration

* Bump @github/copilot from ^1.0.28 to ^1.0.34

Matches the version used in extensions/copilot.

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

* agentHost: tolerate synthetic Copilot models with empty capabilities

After bumping @github/copilot to 1.0.34, listModels() returns a synthetic
'auto' router entry shaped like { id: 'auto', name: 'Auto', capabilities: {} }.
The SDK's ModelInfo type still declares capabilities.limits.max_context_window_tokens
as required, so reading it crashed _listModels and zeroed out the model list.

Wrap the SDK type in a local ICopilotModelInfo with the actually-optional
fields marked optional, and skip entries lacking max_context_window_tokens
with a warn log instead of throwing.

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

* agentHost: surface synthetic 'auto' model with optional maxContextWindow

Instead of dropping the synthetic 'auto' router model, make
IAgentModelInfo.maxContextWindow optional and pass it through as
undefined when the SDK doesn't report a fixed context window. The
agentHostLanguageModelProvider already handles undefined via '?? 0',
and the protocol state type already had the field optional.

Update the real-SDK listModels test to allow undefined maxContextWindow
and to assert the 'auto' entry is present.

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

---------

Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Connor Peet <connor@peet.io>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-22 19:23:45 +00:00
Rob Lourens a1abedfea0 Update @github/copilot SDK to ^1.0.28 (#311807)
Bump @github/copilot in root and remote package.json to ^1.0.28 to match
the version pinned by the bundled copilot extension (extensions/copilot).

Also adds a real-SDK integration test for listModels that subscribes to
the root state, authenticates, and asserts every model has a well-formed
shape (id, name, numeric maxContextWindow). This guards against SDK
schema drift like the issue in 1.0.34, where the server returned models
with optional capabilities.limits, causing _listModels to throw a
TypeError that _refreshModels silently swallowed (resulting in no models
in the UI).

Drive-by: fix stale provider id 'copilot' -> 'copilotcli' in the same
test file.

(Written by Copilot)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-22 02:29:53 +00:00
Raymond Zhao 9a60a6f5f9 chore: bump windows-process-tree (#311781) 2026-04-21 23:18:39 +00:00
Lee Murray 6a3da5ff32 Update @vscode/codicons version to 0.0.46-5 (#309907)
Update @vscode/codicons version to 0.0.46-5 in package.json and package-lock.json

Co-authored-by: mrleemurray <mrleemurray@users.noreply.github.com>
2026-04-14 19:43:00 +00:00
Rob Lourens 41837b42ae Fix agent host session working directories
(Written by Copilot)
2026-04-11 17:25:43 -07:00
Christof Marti 43f7117748 Surface network errors with proxies (microsoft/vscode#298236) 2026-04-08 08:13:59 +00:00
Rob Lourens 063a61dbb7 agentHost Adopt new tree-sitter (#308352)
* agentHost Adopt new tree-sitter

* Bump in web

* Fix test

* fix tests
2026-04-08 00:41:31 +00:00
Anthony Kim 0e637c9101 Update xterm to beta.197 (#308317) 2026-04-07 15:31:28 -07:00
Anthony Kim 4370953ab5 Update xterm to 6.1.0-beta.196 (#307288) 2026-04-02 12:14:42 -07:00
Raymond Zhao 69eb462356 chore: run npm audit fix (#307444)
* chore: bump lodash

* chore: add override
2026-04-02 16:50:47 +00:00
Connor Peet b6a2a05758 agentHost: include sqlite in server build (#306811)
* agentHost: include sqlite in server build

* fix
2026-04-02 00:03:04 +00:00
Rob Lourens e6e776a4b6 Add SSH remote agent host bootstrap (#304882)
* Add SSH remote agent host bootstrap

Adds a new ISSHRemoteAgentHostService that automates connecting to a
remote machine via SSH, installing the VS Code CLI, starting
'code agent-host', and forwarding the agent host port back through
the SSH tunnel.

- New service interface and types in common/sshRemoteAgentHost.ts
- Full implementation using ssh2 in electron-browser/ with dynamic
  imports to respect layering rules
- Multi-step quick input flow for SSH connection details integrated
  into the remote agent host picker
- 'Connect via SSH' command registered in contributions

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

* Address PR review feedback

- Strip password/privateKeyPath from ISSHAgentHostConnection.config
  so secrets are not exposed to consumers after connect
- Redact connection tokens (?tkn=...) in all log output and error
  messages to prevent credential leakage
- Parse user@host:port format in SSH host input with proper validation
  for port range and missing components
- Guard onDidClose with a closed flag to prevent double-fire when
  dispose and SSH close/error events overlap

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

* SSH working through main process

Co-authored-by: Copilot <copilot@github.com>

* Resolve ssh configs

Co-authored-by: Copilot <copilot@github.com>

* progress

* Granular connect progress, test fix

Co-authored-by: Copilot <copilot@github.com>

* Test, refactor

Co-authored-by: Copilot <copilot@github.com>

* Resolve comments

Co-authored-by: Copilot <copilot@github.com>

* Get rid of cpu-features

* Move to shared process

Co-authored-by: Copilot <copilot@github.com>

* fixes

Co-authored-by: Copilot <copilot@github.com>

* add ssh2 to remote/package.json

* Cleanup and fixes

Co-authored-by: Copilot <copilot@github.com>

* fix

Co-authored-by: Copilot <copilot@github.com>

* fix

Co-authored-by: Copilot <copilot@github.com>

* resolve comments

Co-authored-by: Copilot <copilot@github.com>

* comments

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Raymond Zhao <7199958+rzhao271@users.noreply.github.com>
Co-authored-by: Copilot <copilot@github.com>
2026-03-31 21:37:07 -07:00
dependabot[bot] 5df47326b1 Bump picomatch from 4.0.3 to 4.0.4 in /remote (#305821)
Bumps [picomatch](https://github.com/micromatch/picomatch) from 4.0.3 to 4.0.4.
- [Release notes](https://github.com/micromatch/picomatch/releases)
- [Changelog](https://github.com/micromatch/picomatch/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/picomatch/compare/4.0.3...4.0.4)

---
updated-dependencies:
- dependency-name: picomatch
  dependency-version: 4.0.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-28 06:41:30 +00:00
Robo bfd8d748ee chore: bump spdlog@0.15.8 (#305281)
Co-authored-by: Benjamin Pasero <benjamin.pasero@gmail.com>
Co-authored-by: Raymond Zhao <7199958+rzhao271@users.noreply.github.com>
2026-03-26 21:32:56 +00:00
Robo 6eee457e0c chore: additional error categories for macOS cert api (#305154)
* chore: additional error categories for macOS cert api

* chore: bump distro
2026-03-26 14:49:27 +00:00
Lee Murray dbc84712ae Update @vscode/codicons version to 0.0.46-1 (#304821)
Update @vscode/codicons version to 0.0.46-1 in package.json and package-lock.json

Co-authored-by: mrleemurray <mrleemurray@users.noreply.github.com>
2026-03-26 12:42:39 +00:00
Rob Lourens 6c52b71c9a Bump copilot-sdk (#304267)
Co-authored-by: Copilot <copilot@github.com>
2026-03-23 21:58:56 +00:00
Robo 30c0bd03a4 chore: bump electron@39.8.3 (#303738)
* chore: bump electron@39.8.3

* chore: update build

* chore: bump distro
2026-03-22 07:20:14 +01:00
Alex Dima 0a0ba75021 Adopt new codicons version 2026-03-21 21:08:48 +01:00
dileepyavan b978bf74b2 tmp directory should not be used by sandboxed commands (#303699)
* Fix terminal sandbox tmp handling and upgrade sandbox runtime

Fixes #299224

Fixes #303568

* fixing test

* merging changes
2026-03-21 10:20:44 +01:00
Robo 4315cca958 Revert "chore: bump electron@39.8.3" (#303369)
* Revert "chore: bump electron@39.8.3 (#302875)"

This reverts commit d4f7ac5014.

* chore: bump distro
2026-03-20 02:21:37 +00:00
Christof Marti 4be80a8b42 Update to @vscode/proxy-agent 0.40.0 (#298236) 2026-03-19 23:34:29 +00:00
Robo d4f7ac5014 chore: bump electron@39.8.3 (#302875)
* chore: bump electron@39.8.3

* chore: bump distro
2026-03-18 20:26:19 +00:00
Rob Lourens 1c035e8297 Merge branch 'main' into connor4312/agent-host-server 2026-03-17 13:56:32 -07:00
dependabot[bot] d7a9278817 build(deps): bump undici from 7.19.0 to 7.24.4 in /remote (#301983)
Bumps [undici](https://github.com/nodejs/undici) from 7.19.0 to 7.24.4.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v7.19.0...v7.24.4)

---
updated-dependencies:
- dependency-name: undici
  dependency-version: 7.24.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Raymond Zhao <7199958+rzhao271@users.noreply.github.com>
2026-03-17 17:51:57 +00:00
Anthony Kim 262ba6d42f Update conpty to 1.25 (#301398)
* Update conpty to 1.25

* see if changes fix 1.2.0-beta11 defering conptyNative.connect()

* Revert "see if changes fix 1.2.0-beta11 defering conptyNative.connect()"

This reverts commit c5d9064efa.

* Reapply "see if changes fix 1.2.0-beta11 defering conptyNative.connect()"

This reverts commit ded49adb14.
2026-03-16 18:27:00 -07:00
Rob Lourens 3da382383e Merge remote-tracking branch 'origin/main' into connor4312/agent-host-server 2026-03-16 16:25:07 -07:00
Robo c3eb7f8453 chore: bump electron@39.8.1 (#302053)
* chore: bump electron@39.8.1

* chore: update node.js build

* chore: bump distro

* chore: bump .nvmrc
2026-03-16 14:51:48 +00:00
Connor Peet 3e15c2da57 agentHost: hello world from server
Exposes --agent-host-port/--agent-host-path to specify an additional
port for them to listen on. This runs as a separate process mirroring
the architecture from main.

Does a 'hello world', I need to keep testing it some more. I honestly
don't know a lot about the import changes Opus is doing here. Without
them, there is an error:

```
import { CopilotClient } from "@github/copilot-sdk";
         ^^^^^^^^^^^^^
SyntaxError: The requested module '@github/copilot-sdk' does not provide an export named 'CopilotClient'
```

This was Copilot's explanation for why they're needed here but not in Electron:

>The agent host process itself didn't change — the issue is the **module resolution environment** differs between Electron and the server.
>
>**Electron (desktop):** `ElectronAgentHostStarter` spawns a utility process that inherits the main process's module resolution. It resolves packages from the **root** node_modules, where `@github/copilot-sdk`, `ws`, etc. are all installed. Everything just works.
>
>**Server:** `NodeAgentHostStarter` spawns a child via `bootstrap-fork.js`, which registers a custom ESM resolver hook (bootstrap-import.ts) that **redirects** all module lookups to node_modules instead of root node_modules. That's the `[bootstrap-import] Initialized node_modules redirector for: ...\remote\node_modules` log line. The remote folder has its own package.json with a curated set of server-specific dependencies.
>
>The problems were:
>1. **Missing deps** — `@github/copilot-sdk`, `@github/copilot`, and `ws` weren't in package.json because the agent host had never run in the server context before
>2. **Resolver bugs** — bootstrap-import.ts was written when all remote deps were CJS. It hardcoded `format: 'commonjs'`, didn't handle `exports` maps, didn't handle `.mjs` files, and didn't resolve subpath imports like `vscode-jsonrpc/node`. These are pre-existing limitations that never mattered until now because no server component previously depended on ESM-only npm packages.
>
>So in short: the agent host code is identical — it's the server's module resolution plumbing that needed updating to support the ESM packages the agent host depends on.

cc @bpasero as the expert in this area
2026-03-12 09:00:40 -07:00
Christof Marti 383c174f7a Add proxy support to WebSocket (#298236) 2026-03-11 21:27:42 +00:00
Anthony Kim 7461493056 Bump xterm to 6.1.0-beta.191 (#300822) 2026-03-11 10:40:56 -07:00
Matt Bierner 3709d98040 Merge pull request #300641 from mjbvz/dev/mjbvz/fond-loon
Add `min-release-age` in npmrc files
2026-03-10 23:03:40 -07:00
Matt Bierner e9b82791e6 Commit other npmrc files 2026-03-10 20:56:09 -07:00
Osvaldo Ortega 0091ab1d49 missing updates 2026-03-10 17:34:48 -07:00
Anthony Kim 01eb53f0f9 Bump xterm to take IME overflow fix (#300322)
Bump xterm to take IME fix
2026-03-10 11:03:43 -07:00
Lee Murray 31fa18a9e4 Update @vscode/codicons to version 0.0.45-14 (#300457)
chore: update @vscode/codicons version to 0.0.45-14 in package.json and package-lock.json

Co-authored-by: mrleemurray <mrleemurray@users.noreply.github.com>
2026-03-10 15:13:09 +00:00
Anthony Kim 4fb8242c5f Bump xterm to fix kitty keyboard protocol (#299833) 2026-03-07 23:03:35 -08:00
dependabot[bot] 68c79600df Bump @tootallnate/once from 3.0.0 to 3.0.1 in /remote (#299311)
Bumps [@tootallnate/once](https://github.com/TooTallNate/once) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/TooTallNate/once/releases)
- [Changelog](https://github.com/TooTallNate/once/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TooTallNate/once/compare/3.0.0...v3.0.1)

---
updated-dependencies:
- dependency-name: "@tootallnate/once"
  dependency-version: 3.0.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-05 21:45:41 -08:00
Anthony Kim 587cae6666 Bump xterm for imageAdded api (#299073) 2026-03-04 10:17:14 -08:00
mrleemurray cf8f3944b5 update: bump @vscode/codicons version to 0.0.45-12 in package.json and package-lock.json 2026-03-04 13:22:47 +00:00
mrleemurray d38271c050 feat: update @vscode/codicons to version 0.0.45-11 and add new 'new-session' icon 2026-02-26 15:55:51 +00:00
mrleemurray 9bd29418e0 Update @vscode/codicons to version 0.0.45-10 in package.json and package-lock.json 2026-02-23 15:33:53 +00:00
Dmitriy Vasyura 4eb8565469 Get accurate Windows version info from registry instead of os.release() (#295842)
Used Windows registry to retrieve Windows release and build numbers.
Added passing User-Agent header to update service.
Updated installer launch env to ignore compat mode.
2026-02-23 16:06:56 +01:00
Anthony Kim 80eaba3b1c Bump xterm for kitty image updates (#296577) 2026-02-20 13:12:33 -08:00
Matt Bierner 7a3b0181f0 Update other packages as well 2026-02-18 22:18:31 -08:00
Anthony Kim f32f3306fd Enable kitty graphics protocol, bump xterm.js (#295701)
* Bump xterm to enable kitty images

* edit comment about gpu acceleration+kitty

* Update to 162

* Update please

* Mention enable transparency mode

* Stop messing with git

* Update to 165
2026-02-17 21:12:26 -08:00