Commit Graph

948 Commits

Author SHA1 Message Date
copilot-swe-agent[bot] 751fd19566 Merge remote-tracking branch 'origin/main' into vikram/cache_timeout_fix
# Conflicts:
#	extensions/copilot/src/platform/configuration/common/configurationService.ts

Co-authored-by: vikramnitin9 <13903468+vikramnitin9@users.noreply.github.com>
2026-05-15 22:38:49 +00:00
Bhavya U 0bd2387d0e Anthropic 1h cache TTL: expand model list, add message-breakpoint sub-toggle (#316679)
* Expand extended cache TTL model list + add message-breakpoint sub-toggle

Two related changes to Anthropic Messages API prompt caching:

1. Expand modelSupportsExtendedCacheTtl beyond just the 1M context
   variants. Per Anthropic docs, the 1h cache TTL is available on all
   active models; this widens our opt-in list to Claude Opus 4.5/4.6/4.7
   and Sonnet 4.5/4.6 (all variants, not just -1m).

2. Add a new experiment-based setting
   chat.anthropic.promptCaching.extendedTtlMessages as a strict
   sub-toggle of the existing extendedTtl setting. When both are on, the
   rolling message-level breakpoints (last cacheable user / tool-result
   blocks set by addMessagesApiCacheControl) also use the 1h TTL
   instead of the default 5m. Nested rather than orthogonal because
   Anthropic requires longer-TTL breakpoints to appear before shorter
   ones in the tools->system->messages prefix order.

Tests: 69 passed. Added a suite for isExtendedCacheTtlMessagesEnabled
(parent on/off x sub on/off matrix + inherited model/location/subagent
gates) and two tests verifying addMessagesApiCacheControl propagates
the new cacheTtl argument.

* Slim down extended cache TTL tests

- Trim isExtendedCacheTtlEnabled model-list test to just verify the
  delegation (full boundaries are covered by modelSupportsExtendedCacheTtl).
- Remove redundant 'inherits gates from parent' test in
  isExtendedCacheTtlMessagesEnabled suite — the parent×sub matrix plus
  the parent's own gate tests already cover this.
- Merge the two addMessagesApiCacheControl ttl tests into one
  parameterized assertion.

* Update stale comment about message breakpoint TTL

The comment claimed message breakpoints 'always use the default 5m TTL',
but that's no longer true when the new extendedTtlMessages sub-toggle is on.

* Refactor extended cache TTL: pass parentEnabled, drop misleading coercions

- isExtendedCacheTtlMessagesEnabled now takes parentEnabled: boolean
  instead of re-running the parent gate. Call site passes the resolved
  useExtendedCacheTtl directly, eliminating a duplicate experiment-service
  lookup per request. Makes the 'sub-toggle of' relationship literal in
  the signature.
- Drop the !! coercion on getExperimentBasedConfig<boolean> returns —
  the generic guarantees T, so the coercion was misleading defensive
  noise.
- Narrow cacheTtl param from '5m' | '1h' to just '1h' on both
  addToolsAndSystemCacheControl and addMessagesApiCacheControl. Per
  Anthropic docs, { type: 'ephemeral' } already defaults to 5m, so '5m'
  is never actually emitted on the wire and call sites never passed it.
- Stronger composition test for isExtendedCacheTtlEnabled — replaces
  four single-axis tests with one table-driven matrix that exercises
  all four gates simultaneously, catching short-circuit refactors.
- Table-driven 2x2 matrix for isExtendedCacheTtlMessagesEnabled.
- Trim user-facing extendedTtlMessages setting description; team-only
  rationale (rolling breakpoints, 2x write premium) lives in the JSDoc.
- Update stale comment claiming message breakpoints always use 5m.

* Remove outdated comments about extended cache TTL models
2026-05-15 14:57:03 -07:00
Matt Bierner 91f6127cc9 Merge pull request #316142 from microsoft/dev/mjbvz/important-anglerfish
Gate external ingest on policy on token
2026-05-15 10:25:46 -07:00
dileepyavan 7e3c7e48d8 Use GPT-5.4 large prompt as default (#316567)
gpt5.4 prompt updates
2026-05-15 10:05:31 +02:00
Bhavya U c2e88be2fd Enable chat.freezeCustomizationsIndex by default (#316466)
Flips the default for `chat.freezeCustomizationsIndex` from `false` to `true` so the customizations payload (`<instructions>`/`<skills>`/`<agents>`) is frozen at the first turn of a conversation and reused on subsequent turns, stabilizing the system-prompt prefix for cache reuse.
2026-05-14 21:23:01 -07:00
Logan Ramos a1803b2a0c Fix UBB model details in Copilot CLI (#316452)
* Bump SDK

* fix cli tests and stuff

* Tests plz
2026-05-14 17:47:40 +00:00
Vijay Upadya 8dee56f8d1 BYOK: Custom Endpoint provider — Chat Completions, Responses, and Messages API support (#316189)
* Custom Endpoint: message API, responseAPI support and  apiType picker

* Feedback changes

* create new vendor customEndpoint

* update msg

* update desc
2026-05-14 09:57:59 +02:00
Matt Bierner d0e941849d Merge branch 'main' into dev/mjbvz/important-anglerfish 2026-05-13 16:07:03 -07:00
Raymond Zhao 9df8712e1d chore: run npm audit fix (#316150) 2026-05-13 18:20:31 +00:00
Vikram Nitin 9cdcfc9cdd Merge remote-tracking branch 'upstream/main' into vikram/cache_timeout_fix 2026-05-13 17:38:44 +00:00
Vikram Nitin 9d3dfcf440 Make probe limit exp based 2026-05-13 17:34:33 +00:00
Vikram Nitin 5d07897532 Made it configurable 2026-05-13 17:17:31 +00:00
Logan Ramos fcbd887589 Remove old telemetry pipeline (#316236) 2026-05-13 16:05:54 +02:00
Bhavya U f91303fbde Freeze customizations-index per conversation to stabilize system prompt cache (#316191)
* Freeze customizations-index per conversation to stabilize system prompt cache

Adds the experimental `github.copilot.chat.freezeCustomizationsIndex`
setting (advanced/experimental/onExp, default false). When on, the
bundled <instructions>/<skills>/<agents> listing in the system prompt is
snapshotted on the first turn and reused on every subsequent turn,
preventing per-turn churn (mode swap rewriting the active subagent in
<agents>, async experimentation flipping a when-gated skill in or out)
from invalidating the system prompt cache.

When the live listing drifts from the snapshot, the updated set is
appended to the latest user message inside AgentUserMessage's context
tag — kept inside the captured RenderedUserMessageMetadata so the
historical user message replays byte-identically on later turns. Drift
also fires with an empty value when the live variable disappears, so
the model gets a signal that previously-listed entries are gone.

Fixes #315408
Fixes #316182

* 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-05-13 17:07:15 +10:00
Tyler James Leonhardt c5d2bfd674 Claude agent: add auto permission mode + non-streaming passthrough (#316128)
* Claude agent: add auto permission mode + non-streaming passthrough

- Adds 'auto' permission mode (model-classifier) to Claude sessions, gated
  by new setting github.copilot.chat.claudeAgent.allowAutoPermissions
  (default true).
- Threads allowAutoPermissions through ClaudeSessionOptionBuilder and the
  reactive options pipeline in ClaudeChatSessionContentProvider.
- ClaudeLanguageModelServer: defer response headers until upstream content-type
  is known and propagate the SDK's stream flag via requestOptions, so the
  classifier's non-streaming (application/json) calls used by 'auto' mode
  pass through correctly alongside the existing SSE path.

* add non-streaming passthrough response handling in ClaudeLanguageModelServer

* Claude auto mode: mark setting preview, link aka.ms, honor preview features policy

- Move github.copilot.chat.claudeAgent.allowAutoPermissions into the 'preview' config section and tag it with 'preview'.
- Description now links to https://aka.ms/vscode-claude-auto-mode.
- Auto mode is gated on copilotToken.isEditorPreviewFeaturesEnabled() in addition to the setting, so org-level preview-features policy disables it.

* Claude auto mode: default false, ExperimentBased + onExp tag

- Default off; flipped via experiment.
- Setting tagged with both 'preview' and 'onExp'.
- ConfigKey.ClaudeAgentAllowAutoPermissions is now ExperimentBased; option builder and content provider read it via getExperimentBasedConfig with the injected IExperimentationService.

* Claude auto mode: default to true in the agents window

* Revert "Claude auto mode: default to true in the agents window"

This reverts commit 9083b1c2fd.

* Sessions/Claude: add 'Auto' permission mode item to picker

* Sessions/Claude: gate Auto permission mode item on allowAutoPermissions setting

* Sessions/Claude: also gate Auto on chat entitlement preview features

* Sessions/Claude: use observableConfigValue for allowAutoPermissions

* Sessions/Claude: append Auto mode when enabled instead of filtering

* Sessions/Claude: stub IConfigurationService and IChatEntitlementService in picker tests

---------

Co-authored-by: bhavyaus <bhavyau@microsoft.com>
2026-05-13 17:07:05 +10:00
Bhavya U c305abcf52 Anthropic Messages API: add extended (1h) prompt cache TTL behind experiment (#316178)
Re-introduces `cache_control.ttl: "1h"` for the Anthropic Messages
API tools + system breakpoints, gated on the main agent conversation
where the 2x cache-write cost trades favourably against the longer
hit window. Previously reverted from the copilot-chat repo.

All four gates must hold:
- Model is a 1M-context Claude variant (`claude-opus-4-{6,7}-1m...`)
- Setting `github.copilot.chat.anthropic.promptCaching.extendedTtl` is
  on (ConfigType.ExperimentBased, default false, advanced/experimental/onExp)
- Location is `ChatLocation.Agent` (Panel/Editor/Terminal/Notebook/
  EditingSession/Other and both proxy locations are excluded)
- Request is not a subagent (typed via
  `interactionTypeOverride === 'conversation-subagent'`, the same
  source of truth as the `X-Interaction-Type` wire header)

When all gates pass:
- The `extended-cache-ttl-2025-04-11` beta header is added
- The last non-deferred tool and the last system block carry
  `cache_control: { type: 'ephemeral', ttl: '1h' }`. The two rolling
  message breakpoints keep the default 5m TTL, satisfying Anthropic's
  longer-TTLs-before-shorter ordering rule.

Tests: messagesApi.spec.ts now at 65 tests (was 59); adds dedicated
`modelSupportsExtendedCacheTtl` and `isExtendedCacheTtlEnabled`
suites covering every gate explicitly.
2026-05-13 04:27:58 +00:00
Matt Bierner 95c4bd8620 Gate external ingest on policy on token
This allows enterprises to opt out of external ingest
2026-05-12 16:03:58 -07:00
Bhavya U 4566b633e8 Remove github.copilot.chat.responsesApi.toolSearchTool.enabled setting (#315886)
Tool search is now always enabled for gpt-5.4/gpt-5.5, matching the
messages API path. Aligns the responses API on the same
endpoint.supportsToolSearch capability flag.

Also registers ToolSearchTool for gpt-5.4/gpt-5.5 and the
claude-opus-4.7 variants so model-specific tool gating actually
matches the supported endpoints.
2026-05-11 16:07:01 -07:00
Bhavya U cf21e2032a Remove github.copilot.chat.tools.memory.enabled setting (#315879)
Memory tool is now always enabled. Removes the preview gate, the config
key, the now-unused DI params on MemoryTool/MemoryContextPrompt/
MemoryInstructionsPrompt, and isAnthropicMemoryToolEnabled (replaced by
modelSupportsMemory at the BYOK call site).
2026-05-11 15:00:27 -07:00
Bhavya U 6b0c41bc3c Remove Copilot Memory (CAPI) feature (#315813)
Strip Copilot Memory (CAPI) feature entirely

Removes the CAPI-backed Copilot Memory that synced repository-scoped facts
to GitHub. The local file-based MemoryTool with user/session/repo scopes
remains as the sole memory mechanism.

- Delete AgentMemoryService and its test.
- Remove the github.copilot.chat.copilotMemory.enabled setting and its NLS string.
- Remove ConfigKey.CopilotMemoryEnabled.
- Strip all CAPI gating in memoryTool.tsx, memoryContextPrompt.tsx, tools.ts.
- Drop _dispatchRepoCAPI / _repoCreate / _sendRepoTelemetry.
- /memories/repo/ now always routes to local storage.
- Update memoryTool.spec.tsx: remove mock CAPI services and CAPI-only tests.
- Update simulationExtHostToolsService.ts for the new ToolsContribution arity.
2026-05-11 19:57:10 +00:00
dileepyavan 56d74126ee Add GPT-5.5 prompt experiment flags (#315603)
* Add GPT-5.5 prompt experiment flags

* 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-05-11 21:40:07 +02:00
vs-code-engineering[bot] 574948fc7b Bump version to 1.121.0 (#315601)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-05-11 17:12:46 +09:00
Ladislau Szomoru 7c59d89960 Agents - expand discard changes to all changesets (#315523)
* WIP - initial implementation

* Agents - update change menu contribution
2026-05-10 13:41:38 +02:00
Bhavya U a6ba551783 Anthropic Messages API: own cache_control placement; drop heuristic breakpoints (#315406)
* refactor: enhance cache control logic for tools and system prefixes

* refactor: enhance summarization and cache control handling in agent prompts

* refactor: remove unused countCacheControl function from messagesApi tests

* Add tests for summarization and cache control features

- Introduced a new snapshot test for summarization without cache breakpoints in `agentPrompt.spec.tsx`.
- Added a new test suite for `clearAllCacheControl` in `messagesApi.spec.ts` to validate cache control stripping and limits.
- Created a snapshot for summarization without cache breakpoints in the new snapshot file.

* test: pass enableSummarization in summarization.spec helper

The agentPrompt prop split decoupled enableSummarization from
enableCacheBreakpoints, so summarization.spec.tsx — which only set
enableCacheBreakpoints — fell through to the non-summarized branch
and broke 5 snapshot tests. Default the helper's baseProps to
enableSummarization: true so each test exercises the summarized path
as intended; individual tests can still override via otherProps.
2026-05-08 21:31:35 -07:00
Ladislau Szomoru 9c6b952334 Agents - fix edge cases for primary action in the Changes view (#315389)
A better fix to the issue
2026-05-08 22:46:54 +00:00
Ladislau Szomoru 94ef84cf6c Agents - fix regression related to showing the "Create Pull Request" action (#315378) 2026-05-08 22:01:38 +00:00
Ladislau Szomoru 17d62bd650 Agents - refactor pull request actions (#315266)
* Agents - switch pull request actions away from the agentic loop

* Fix compilation
2026-05-08 14:29:40 +00:00
Don Jayamanne 2230fcd97c fix: disable session controller for CLI by default (#315084) 2026-05-08 00:07:04 -07:00
Vijay Upadya 135da073d1 BYOK: support per-model reasoning_effort across OpenAI-compatible providers (#315181)
* BYOK: support per-model reasoning_effort across OpenAI-compatible providers

* feedback updates
2026-05-08 06:21:55 +00:00
dileepyavan b0651040de Add GPT- 5.5 tool experiment gates (#315028)
* Add GPT-5.4/5.5 tool experiment gates

* Use GPT-5.5 helper for tool gates

* Rename GPT-5.5 tool gate settings

* Add GPT-5.5 tool experiment flags
2026-05-07 23:43:18 +00:00
Ladislau Szomoru ef8aceeaed Agents - cleanup Changes view menus/actions (#315014)
* Agents - cleanup Changes view menus/actions

* More fixes
2026-05-07 14:30:23 +00:00
Ladislau Szomoru 7d24158495 Initial implementation (#314957) 2026-05-07 14:24:47 +02:00
Don Jayamanne 3c7a4b8121 fix: disable auto model feature in CLI configuration (#314936)
* fix: disable auto model feature in CLI configuration

* fix: update tests to explicitly enable CLIAutoModelEnabled after default changed to false

Agent-Logs-Url: https://github.com/microsoft/vscode/sessions/4384e16e-ab3e-4ad5-aa27-6e4d4439ed89

Co-authored-by: DonJayamanne <1948812+DonJayamanne@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
2026-05-07 12:43:16 +02:00
Isidor 9ea52c6104 feat: add Get Changed Files tool configuration and enablement in Copilot Chat 2026-05-07 10:42:00 +02:00
Alex Ross d7bd4debee Remove search view results tool in favor of skill (#314725)
* Remove search view results tool in favor of skill

* Fix build

* Remove more references

* UPdate test specs
2026-05-06 16:10:21 +00:00
Sandeep Somavarapu be340b1fa8 Introduce proposed agentsWindow configuration extension point (#314575)
* Introduce proposed agentsWindow configuration extension point

Add a new `agentsWindow` property to the configuration contribution point
that allows extensions to declare per-setting default value overrides and
read-only behavior for the Agents window.

Shape: `agentsWindow: { default?: unknown; readOnly?: boolean }`

- Gated behind `agentsWindowConfiguration` proposed API
- SessionsDefaultConfiguration uses agentsWindow.default as the default value
- ReadOnly settings are excluded from user configuration parsing and
  cannot be written via updateValue
- Settings editor shows lock indicator for readOnly settings
- `@override:agentsWindow` filter in settings search (agents window only)
- Adopted all existing hardcoded session defaults to use the new schema

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

* revert

* Potential fix for pull request finding

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

* Potential fix for pull request finding

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-05-05 18:00:01 -07:00
Ladislau Szomoru 82f65bc7d4 Agents - reorder the actions in the Changes view (#314379)
* Agents - reorder the actions in the Changes view

* 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-05-05 07:59:32 -07:00
vs-code-engineering[bot] 59d5b26e86 Bump version to 1.120.0 (#314014) 2026-05-04 17:45:09 -07:00
Vijay Upadya a2ef0ad61d Make Chronicle a Skill (#313929)
* chronicle skill

* chronicle skill updates

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

* Feedback updates

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

* tests update

* Fix tsc err

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

* few updates

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-04 14:53:31 -07:00
Bhavya U 5c4d9a2756 Add experimental alt prompt for Claude Opus 4.7 (#313916)
* Add experimental alt prompt for Claude Opus 4.7 behind chat.claude47OpusPrompt.enabled setting

* Address council review feedback for Opus 4.7 prompt
2026-05-04 18:32:59 +00:00
vritant24 f576895142 move desc to package.nls.json 2026-05-03 17:20:40 -07:00
vritant24 29d11b9300 chore: register backgroundTodoAgent.enabled in package.json
Add the github.copilot.chat.agent.backgroundTodoAgent.enabled setting
to the advanced configuration section, fixing the CI failure in
configurations.spec.ts that requires all experiment-backed config
keys to have a corresponding package.json entry.
2026-05-02 21:33:23 -07:00
Zhichao Li 6fef3dffff feat(otel): make attribute truncation configurable
Adds `github.copilot.chat.otel.maxAttributeSizeChars` setting and
`COPILOT_OTEL_MAX_ATTRIBUTE_SIZE_CHARS` env var to control truncation
of free-form OTel content attributes (prompts, responses, tool
arguments/results, hook input/output).

Default is `0` (unlimited), matching the OTel spec's
`AttributeValueLengthLimit` default of `Infinity`. Users on backends
with per-attribute size limits can set a positive value to keep OTLP
batches under the backend cap.

Plumbs the resolved limit through every call site that previously hit a
hardcoded 64KB fallback. Drops the `DEFAULT_MAX_OTEL_ATTRIBUTE_LENGTH`
constant; `truncateForOTel`'s default arg is now `0` (unlimited).

Refs #299952
2026-05-01 23:30:23 -07:00
Anthony Kim 53964c4e85 Get model and multiplier show up for Copilot CLI controller API route (#313079)
* Try to get model and token info to show up for cli in chat

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

* make sure that auto mode persists for CLI

* make ui appear for non-contoller api route

* make controller route work without modifying requestHandler

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

* dqwdqwdwq

* ship more stuf

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

* gate this behind setting

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

* cleaner

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

* stop messing with tests

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

* try fix test

* Make sure the test pass

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

* rename better

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

---------

Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: justschen <justchen@microsoft.com>
2026-05-01 20:28:38 +00:00
Vijay Upadya d878141776 Add reindex cmd pallete (#313776)
* reindex cmd

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

* few updates

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

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-01 13:26:02 -07:00
Bhavya U c1df4d9009 Remove agentHistorySummarizationInline experiment (#313757)
Make background inline summarization the default and only path.
2026-05-01 19:09:55 +00:00
Vijay Upadya 230faad390 Few chronicle updates (#312284)
* Optin UX

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

* setting rename and updates

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

* cleanup

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

* few updates

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

* Feedback updates

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

* policy doc

* few updates

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

* minor update

* excludeRepo changes

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

* update policy name

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

* delete

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

* status UI

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

* delete and reindex updates

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

* UX and status updates

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

* policy update

* feedback updates

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

* telemetry update

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

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-01 11:04:49 -07:00
Anisha Agarwal ef6a160366 Rename search_subagent to explore_subagent if explore is disabled (#312175)
* add broken starting implementation

* updated to use package.json for tool renaming

* Update extensions/copilot/src/extension/agents/vscode-node/planAgentProvider.ts

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

* remove import in prompt files

* remove getActiveSearchSubagentName now it's not used

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-30 22:35:07 -07:00
Pierce Boggan 32db9092a5 Fix Copilot CLI /remote command (#313377)
* fix: handle Copilot CLI remote command

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

* Add remote control QR code

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

* Enable remote command by default

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

* Improve remote control QR response

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

* Polish remote control QR presentation

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

* Isolate remote command stream

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

* Fix remote steering mode handling

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

* Keep interrupted output on original stream

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

* Mark interrupted local command responses

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

* Handle closed interrupted streams

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

* Preserve responses during local steering

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

* Polish remote control banner copy

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

* Use lowercase mobile in remote banner

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

* Avoid remote QR dependency

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

* Fix remote config CI

Restore the Copilot extension lockfile to avoid fork dependency checks and keep the remote setting tagged for the advanced configuration section test.

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

* Fix Copilot CLI node-pty shim

Support node-pty's prebuilds layout when build/Release is absent so the Copilot CLI SDK can initialize in Code OSS dev builds.

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-01 03:52:22 +00:00
Matt Bierner b8a2702378 Merge pull request #313528 from microsoft/dev/mjbvz/original-orangutan
Tweak external ingest settings
2026-04-30 14:32:58 -07:00