Commit Graph

815 Commits

Author SHA1 Message Date
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
mrleemurray
3a4baed816 Update @vscode/codicons version to 0.0.45-8 in package.json and package-lock.json 2026-02-16 12:41:06 +00:00
mrleemurray
9d1ba054ae Update codicons version to 0.0.45-7 and add new icon 'openInWindow' 2026-02-13 13:52:46 +00:00
Robo
27ea56f796 chore: bump electron@39.5.2 (#294238)
* chore: bump electron@39.5.2

* chore: update checksums

* chore: undo bits on macOS

* chore: update lockfile

* chore: update node.js build

* chore: bump distro
2026-02-12 21:11:08 +00:00
mrleemurray
341b0df09f Update @vscode/codicons to version 0.0.45-6 in package.json and package-lock.json 2026-02-11 11:37:12 +00:00
Daniel Imms
ba35bc88a7 Revert "Merge pull request #294104 from microsoft/tyriar/revert"
This reverts commit a8f61833a3, reversing
changes made to 7e883bb398.
2026-02-10 08:23:47 -08:00
Daniel Imms
64894bd732 Revert "Merge pull request #294081 from microsoft/tyriar/xterm_20260210"
This reverts commit fbefd6388b, reversing
changes made to f8b1fe06c5.
2026-02-10 03:33:23 -08:00
Daniel Imms
8def2f99b7 @xterm/xterm@6.1.0-beta.152
Fixes #293529
2026-02-10 01:47:20 -08:00
Daniel Imms
30d0f4595f Merge pull request #292685 from microsoft/xterm_20260203
@xterm/xterm@6.1.0-beta.144, add textBlinking
2026-02-04 04:24:39 -08:00
Christof Marti
519788fbcb @vscode/proxy-agent 0.38.0 (#289736) 2026-02-04 08:49:34 +01:00
Daniel Imms
359c2ec968 @xterm/xterm@6.1.0-beta.144
Fixes #245840
Fixes #290919
Part of #292572
Part of #292550
2026-02-03 08:24:12 -08:00
dileepyavan
01d7420295 Dileep y/291793 (#292201)
Updating srt paths to work in remote env
2026-02-02 09:05:40 -08:00
mrleemurray
1a4b5b0af1 Update @vscode/codicons version to 0.0.45-5 in package.json and package-lock.json 2026-02-02 11:37:08 +00:00
Raymond Zhao
b428b97455 chore: bump vscode/ripgrep to 1.17.0 (#272744)
* chore: bump vscode/ripgrep to 1.17.0

* Remove outdated test

Nested alternates are now supported in ripgrep 15
2026-01-30 23:05:22 +00:00
mrleemurray
12ce890b0b Update @vscode/codicons to version 0.0.45-4 and add 'claude' icon to codiconsLibrary 2026-01-29 17:26:06 +00:00
mrleemurray
a6f5b3e9a6 Update @vscode/codicons to version 0.0.45-2 and add 'openai' icon to codiconsLibrary 2026-01-29 16:07:23 +00:00