Skip to content

Add Copilot Chat dictation - #326228

Closed
Mir (mirimadahmed) wants to merge 3 commits into
microsoft:mainfrom
mirimadahmed:mirimadahmed-microsoft-copilot-chat-dictation
Closed

Add Copilot Chat dictation#326228
Mir (mirimadahmed) wants to merge 3 commits into
microsoft:mainfrom
mirimadahmed:mirimadahmed-microsoft-copilot-chat-dictation

Conversation

@mirimadahmed

Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI review requested due to automatic review settings July 16, 2026 20:57

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.

Pull request overview

Adds hosted Copilot Chat dictation with shared microphone ownership, editable transcripts, accessibility feedback, Agents window support, and tests.

Changes:

  • Adds remote transcription, audio capture, endpoint, and session-control services.
  • Integrates dictation actions, state, notifications, accessibility help, and Agents UI.
  • Adds coverage for protocol, lifecycle, editing, endpoint, and lease behavior.

Reviewed changes

Copilot reviewed 27 out of 27 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
voiceClientService.test.ts Tests terminal WebSocket failures.
voiceEndpoint.test.ts Tests endpoint derivation and authentication.
voiceCodeTranscriptionClient.test.ts Tests transcription protocol handling.
remoteChatSpeechToTextService.test.ts Tests remote dictation lifecycle.
dictationSession.test.ts Tests transcript editor behavior.
audioCaptureLeaseService.test.ts Tests encoding and lease exclusivity.
chatDictationNotification.test.ts Tests first-use notification persistence.
common/voiceClientService.ts Adds terminal-connection event API.
common/constants.ts Adds dictation configuration key.
chatContextKeys.ts Adds starting and finalizing states.
voiceSessionController.ts Coordinates microphone leases and termination.
voiceEndpoint.ts Builds voice and transcription URLs.
browser/voiceClientService.ts Handles terminal WebSocket failures.
audioCaptureLeaseService.ts Enforces exclusive microphone ownership.
voiceCodeTranscriptionClient.ts Implements hosted transcription protocol.
remoteChatSpeechToTextService.ts Orchestrates remote dictation.
dictationSession.ts Manages editable transcript insertion.
dictationAudioCapture.ts Captures and encodes microphone audio.
chatSpeechToTextService.ts Selects local or remote transcription.
chatDictationNotification.ts Adds first-use guidance.
chat.shared.contribution.ts Registers settings, services, and contribution.
chatSpeechToTextActions.ts Adds dictation actions and states.
chatAccessibilityHelp.ts Documents dictation accessibility workflow.
sessions/LAYOUT.md Documents Agents dictation integration.
newChatInput.ts Adds shared dictation controls to Agents.
package.nls.json Adds localized walkthrough copy.
package.json Registers the dictation walkthrough.

Comment thread src/vs/sessions/contrib/chat/browser/newChatInput.ts
Comment thread src/vs/workbench/contrib/chat/browser/voiceClient/voiceClientService.ts Outdated

await assert.rejects(service.connect(createTestWindow()), /WebSocket unavailable/);
assert.strictEqual(terminated, 1);
assert.strictEqual(terminated, 1);
this._speechToTextService.cancel();
}
this._clearSession();
status(localize('chatDictation.cancelled', "Dictation cancelled."));
Mir Imad Ahmed added 2 commits July 20, 2026 13:11
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 004e4272-d5c9-4687-a9e8-c0debb97ca7e
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 004e4272-d5c9-4687-a9e8-c0debb97ca7e
@mirimadahmed
Mir (mirimadahmed) force-pushed the mirimadahmed-microsoft-copilot-chat-dictation branch from 5e6bc8e to dfb4dcc Compare July 20, 2026 13:31
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 004e4272-d5c9-4687-a9e8-c0debb97ca7e
@meganrogge
Megan Rogge (meganrogge) marked this pull request as draft July 20, 2026 15:19
@meganrogge

Copy link
Copy Markdown
Collaborator

We will consider this after seeing usage of dictation and continue to think about the who would pay part.

@meganrogge

Copy link
Copy Markdown
Collaborator

Handling myself due to merge conflicts and all the changes that have occurred. Thanks!

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.

4 participants