Skip to content

Agent Host: Show Dev Container setting - #333961

Closed
Christof Marti (chrmarti) wants to merge 1 commit into
mainfrom
chrmarti/show-devcontainer-setting
Closed

Agent Host: Show Dev Container setting#333961
Christof Marti (chrmarti) wants to merge 1 commit into
mainfrom
chrmarti/show-devcontainer-setting

Conversation

@chrmarti

Copy link
Copy Markdown
Collaborator

Summary

Register the Dev Container Agent Host settings from a globally loaded platform contribution so chat.agentHost.devContainer.enabled appears in the normal VS Code Settings editor.

Tracking issue: #317380

Session Context

Key decisions from the development session:

  • The setting is user-visible: chat.agentHost.devContainer.enabled is an experimental user setting and should appear in the normal Settings UI.
  • The combination gate stays hidden: chat.agentHost.devContainer.worktree.enabled remains excluded from Settings and controlled through EXP treatments.
  • Configuration is not connector-owned: The previous registration lived in a Sessions-window-only Electron connector contribution, so the standard workbench never loaded it. The registration now lives in the platform Agent Host layer.
  • Both workbenches load the schema: Shared Chat imports the platform configuration contribution and is loaded by both the normal workbench and the Agents Window.
  • No runtime behavior change: Connector availability and checkbox gating continue to consume the same setting identifiers and defaults.

Changes

  • Move Dev Container setting identifiers to the platform Agent Host contract.
  • Add a dedicated platform configuration contribution for the visible Dev Container setting and hidden combination gate.
  • Load that contribution through shared Chat in both workbenches.
  • Remove configuration registration from the Sessions-only connector contribution.
  • Move setting-registration tests beside the platform contribution and retain connector/picker coverage.

Validation

  • 23 focused unit tests passing
  • npm run typecheck-client
  • npm run transpile-client
  • npm run valid-layers-check
  • ESLint on changed files
  • Repository pre-commit hygiene
  • git diff --check

Register Dev Container Agent Host settings from a shared platform contribution so the experimental user setting appears in the normal Settings editor while the worktree combination gate remains hidden.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI balanced review requested due to automatic review settings September 2, 2026 09:48

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟢 Approval recommended

The ownership move is complete, preserves runtime behavior, respects layering, and includes focused registration coverage.

Review tier: Balanced
Findings: None

What changed in this PR

Moves Dev Container Agent Host configuration ownership into the shared platform layer so settings are registered in both VS Code workbenches.

Changes:

  • Centralizes Dev Container setting identifiers and schema registration.
  • Loads the schema through the shared Chat contribution.
  • Relocates configuration tests while preserving connector and picker behavior.
File Description
src/​vs/​workbench/​contrib/​chat/​browser/​chat.shared.contribution.ts Loads the shared configuration contribution.
src/​vs/​sessions/​contrib/​providers/​remoteAgentHost/​test/​electron-browser/​devContainerAgentHostConnector.test.ts Removes relocated schema tests and updates imports.
src/​vs/​sessions/​contrib/​providers/​remoteAgentHost/​electron-browser/​devContainerAgentHostConnector.contribution.ts Removes Sessions-owned registration and uses the platform identifier.
src/​vs/​sessions/​contrib/​providers/​agentHost/​test/​browser/​agentHost/​agentHostSessionConfigPicker.test.ts Updates the worktree setting import.
src/​vs/​sessions/​contrib/​providers/​agentHost/​browser/​agentHostSessionConfigPicker.ts Uses the platform-owned setting identifier.
src/​vs/​sessions/​common/​devContainerAgentHostService.ts Removes relocated setting identifiers.
src/​vs/​platform/​agentHost/​test/​common/​devContainerAgentHostConfiguration.test.ts Tests visible and hidden setting registration.
src/​vs/​platform/​agentHost/​common/​devContainerAgentHost.ts Defines the shared setting identifiers.
src/​vs/​platform/​agentHost/​common/​devContainerAgentHost.config.contribution.ts Registers the visible setting and hidden combination gate.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@chrmarti

Copy link
Copy Markdown
Collaborator Author

Closing for now: the setting is already available in the Agents Window Settings UI, so moving its registration into the normal workbench is not needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants