* Bump version to 1.118.0
* Fix engine version in lock file
* npm i
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Bump version to 1.117.0
* npm i
* wait to do engine version bump
* Revert "wait to do engine version bump"
This reverts commit 9db1c0feb6.
* Add Copilot extension tests to Linux/Windows Electron integration test runs
* Remove failing step that we moved to the main build
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* feat: welcome onboarding walkthrough variations A/B/C/D
* improve onboarding: sign-in CTA, keyboard mapping, skeleton themes, extensions step
* fix theme colors, keyboard mapping hint, clickable session cards, extension styling in B
* feat: add Variation E - in-context UI tour with spotlight overlay
* polish: cleaner theme skeletons, keyboard mapping pills, and session cards
* fix tour alignment: ID-based targeting, centered popovers, welcome tab setup
* tour: add sign-in as final step
* removed variations
* updated layout to match sessions experience
* refined
* Feature clean up and polish
* Refactor onboarding layout and styles for improved user experience
* updated ghe button
* removed other variations. changed command to Welcome Onboarding 2026
* removed keyboard maps for cursor and windsurf, added more theme options
* added support for other ides
* Add telemetry
* Addressing code review comments
* Remove 2 extension reccs and add setting to control onboarding
* Remove button click from feature cards and update command category
* - Removed the preview properties from IOnboardingThemeOption and related theme options.
- Deleted IOnboardingKeymapOption interface and ONBOARDING_KEYMAP_OPTIONS array.
- Consolidated AI collaboration preferences into a single enum and options array.
- Added new SVG files for theme previews: dark 2026, high contrast dark, high contrast light, light 2026, solarized dark, and solarized light.
* Refine agent sessions step and footer layout
- Rename Background Agents to Copilot CLI
- Move video tutorials link to bottom of content area (above footer)
- Move sign-in nudge button to footer left with visible border
- Remove agents tutorial link and sessions-docs separator
- Add footerLeft container for last-step footer elements
- Remove unused _renderSignInNudge method
- Make doc-link icon inherit link color
* Refactor onboarding service and update startup page
* Resolve merge conflicts, move theme options to product.json, default onboarding setting to false
Agent-Logs-Url: https://github.com/microsoft/vscode/sessions/da410dab-8ffb-4cc5-9afd-6e968b0c5ed6
Co-authored-by: cwebster-99 <60238438+cwebster-99@users.noreply.github.com>
* Update src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.ts
* Update src/vs/workbench/contrib/welcomeGettingStarted/browser/startupPage.ts
Co-authored-by: Josh Spicer <23246594+joshspicer@users.noreply.github.com>
* Fix timing for onboarding widget on startup
* update distro to https://github.com/microsoft/vscode-distro/commit/84f56fc18b7c65a62bf54eb70db2d4d24378a0d2
* pass --skip-welcome
---------
Co-authored-by: cwebster-99 <cowebster@microsoft.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: cwebster-99 <60238438+cwebster-99@users.noreply.github.com>
Co-authored-by: Josh Spicer <23246594+joshspicer@users.noreply.github.com>
* Revert "agentHost: Hook up isRead/isDone (#308107)"
This reverts commit a3d69b7767.
* Revert "agentHost: support connections over tunnels (#307948)"
This reverts commit 75f21d0a8d.
* 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>
* Add merge script for extension configuration policies from distro
Adds build/lib/policies/mergeExtensionPolicies.ts which fetches the
distro's product.json (at the commit pinned in package.json) and merges
extensionConfigurationPolicy entries into policyData.jsonc.
The --export-policy-data step only captures policies from the OSS
configuration registry. Extension policies (e.g., Copilot settings)
are defined in vscode-distro's product.json and are not available in
the OSS dev build. This merge script bridges that gap.
Workflow: ./scripts/code.sh --export-policy-data && node build/lib/policies/mergeExtensionPolicies.ts
Also updates:
- policyExport integration test to run the merge step
- add-policy skill documentation with extension policy lifecycle
* Simplify extension policy format: drop localization block from distro
- mergeExtensionPolicies.ts now reads only description/category from
the distro and synthesizes localization key/value pairs internally
- Integration test gracefully skips merge step when distro is unavailable
- Updated SKILL.md to document the simplified distro format
* docs: use gh auth token in policy export command
* Handle old distro format missing description/category fields
* docs: add troubleshooting section for merge step in policy skill
* Require description and category fields in extension policy entries
* Add extension configuration policies to policyData.jsonc
* Address PR feedback: fix disclaimer, log targetPath, strip GITHUB_TOKEN from test
* fix: revert extension policies from policyData.jsonc, remove console.log from test
Extension policies should only be added after the distro PR merges.
Test runner disallows console output in tests.
* Add mock distro test for mergeExtensionPolicies, remove merge from export test
- mergeExtensionPolicies.ts: add DISTRO_PRODUCT_JSON env var to
override the distro path (for testing without private repo access)
- New test: creates a mock product.json, runs the merge script,
verifies policies are added correctly and idempotently
- Export test: no longer runs the merge step (avoids needing
distro access or GITHUB_TOKEN in CI)
* Update distro and regenerate policyData.jsonc with extension policies
* Fix CI: add extension policy fixture for export test
The export test now runs mergeExtensionPolicies using a checked-in
fixture file instead of requiring distro access or GITHUB_TOKEN.
When extension policies change in the distro, regenerate both
policyData.jsonc and the fixture file.
* Integrate extension policy merge into --export-policy-data
- Removed mergeExtensionPolicies.ts — no separate CLI tool needed
- --export-policy-data now reads build/lib/policies/extensionPolicies.json
and merges extension policies into the output automatically
- Single command workflow: ./scripts/code.sh --export-policy-data
- Simplified test — no merge step, no GITHUB_TOKEN, no distro access
- Updated SKILL.md to document the simplified workflow
* Dynamic distro reading: --export-policy-data fetches from distro directly
- policyExport.contribution.ts reads distro product.json dynamically:
1. DISTRO_PRODUCT_JSON env var (for testing)
2. .build/distro/mixin/stable/product.json (local checkout)
3. GitHub API with GITHUB_TOKEN (remote fetch)
- New scripts/export-policy-data.sh wrapper: sets up GITHUB_TOKEN
via gh CLI and runs the export
- Deleted build/lib/policies/extensionPolicies.json (no static copy)
- Test uses DISTRO_PRODUCT_JSON with a fixture file
- Uses sandbox process.env and VSBuffer (renderer-safe)
* Replace bash wrapper with cross-platform TS script
- New build/lib/policies/exportPolicyData.ts: handles transpilation,
GITHUB_TOKEN setup via gh CLI, and runs --export-policy-data
- Added 'npm run export-policy-data' script to package.json
- Removed scripts/export-policy-data.sh
- Updated SKILL.md and test error message
* Use OAuth device flow for GitHub token acquisition
exportPolicyData.ts now acquires tokens via:
1. GITHUB_TOKEN env var (if set)
2. gh CLI (fast, non-interactive)
3. GitHub OAuth device flow (interactive, no dependencies)
Based on vscode-copilot-chat's getToken.mts pattern.
* Fix error messages to reference npm run export-policy-data
* Fix disclaimer to reference npm run export-policy-data, clean up stale refs
* Clarify test fixture is static and not expected to track distro changes
* Add inline comment in test clarifying fixture is static
* SKILL.md: add step to update distro commit hash in package.json
* Remove inline comment per PR feedback
* Remove local .build/distro/ fallback path per PR feedback