Skip to content
Closed
Changes from all commits
Commits
Show all changes
129 commits
Select commit Hold shift + click to select a range
efbb8f1
Merge master into feature/auto-debug
aws-toolkit-automation Jun 23, 2025
7e68391
Merge master into feature/auto-debug
aws-toolkit-automation Jun 24, 2025
868bba5
Merge master into feature/auto-debug
aws-toolkit-automation Jun 24, 2025
df621d7
Merge master into feature/auto-debug
aws-toolkit-automation Jun 24, 2025
9a54cf6
Merge master into feature/auto-debug
aws-toolkit-automation Jun 24, 2025
c58802e
Merge master into feature/auto-debug
aws-toolkit-automation Jun 25, 2025
162d158
Merge master into feature/auto-debug
aws-toolkit-automation Jun 25, 2025
4cc1829
Merge master into feature/auto-debug
aws-toolkit-automation Jun 25, 2025
124cee0
Merge master into feature/auto-debug
aws-toolkit-automation Jun 25, 2025
f064736
Merge master into feature/auto-debug
aws-toolkit-automation Jun 27, 2025
2583a03
Merge master into feature/auto-debug
aws-toolkit-automation Jun 27, 2025
eaa5b32
Merge master into feature/auto-debug
aws-toolkit-automation Jun 30, 2025
e8fdfcc
Merge master into feature/auto-debug
aws-toolkit-automation Jun 30, 2025
de65371
Merge master into feature/auto-debug
aws-toolkit-automation Jul 1, 2025
00aae62
Merge master into feature/auto-debug
aws-toolkit-automation Jul 1, 2025
05a85f9
Merge master into feature/auto-debug
aws-toolkit-automation Jul 1, 2025
5694abb
Merge master into feature/auto-debug
aws-toolkit-automation Jul 1, 2025
23f0f8a
Merge master into feature/auto-debug
aws-toolkit-automation Jul 2, 2025
530b2b9
Merge master into feature/auto-debug
aws-toolkit-automation Jul 2, 2025
33e3d75
Merge master into feature/auto-debug
aws-toolkit-automation Jul 3, 2025
54d860e
Merge master into feature/auto-debug
aws-toolkit-automation Jul 3, 2025
4ff7b37
Merge master into feature/auto-debug
aws-toolkit-automation Jul 3, 2025
05dbdc3
Merge master into feature/auto-debug
aws-toolkit-automation Jul 3, 2025
852f4ed
Merge master into feature/auto-debug
aws-toolkit-automation Jul 3, 2025
b34eb83
Merge master into feature/auto-debug
aws-toolkit-automation Jul 7, 2025
6dd1ad4
Merge master into feature/auto-debug
aws-toolkit-automation Jul 7, 2025
94e061a
Merge master into feature/auto-debug
aws-toolkit-automation Jul 7, 2025
ba241c3
Merge master into feature/auto-debug
aws-toolkit-automation Jul 7, 2025
150b877
Merge master into feature/auto-debug
aws-toolkit-automation Jul 7, 2025
a5385fe
Merge master into feature/auto-debug
aws-toolkit-automation Jul 7, 2025
53fc504
Merge master into feature/auto-debug
aws-toolkit-automation Jul 8, 2025
abe7617
Merge master into feature/auto-debug
aws-toolkit-automation Jul 8, 2025
9f68219
Merge master into feature/auto-debug
aws-toolkit-automation Jul 8, 2025
5e08e54
Merge master into feature/auto-debug
aws-toolkit-automation Jul 9, 2025
5c15343
Merge master into feature/auto-debug
aws-toolkit-automation Jul 9, 2025
2a56f00
Merge master into feature/auto-debug
aws-toolkit-automation Jul 10, 2025
fab3af1
Merge master into feature/auto-debug
aws-toolkit-automation Jul 10, 2025
a449560
Merge master into feature/auto-debug
aws-toolkit-automation Jul 10, 2025
10b3515
Merge master into feature/auto-debug
aws-toolkit-automation Jul 11, 2025
ac79300
Merge master into feature/auto-debug
aws-toolkit-automation Jul 11, 2025
059ba51
Merge master into feature/auto-debug
aws-toolkit-automation Jul 11, 2025
75ff0d2
Merge master into feature/auto-debug
aws-toolkit-automation Jul 11, 2025
200c1d1
Merge master into feature/auto-debug
aws-toolkit-automation Jul 11, 2025
7e0e4ad
Merge master into feature/auto-debug
aws-toolkit-automation Jul 13, 2025
f3d7580
Merge master into feature/auto-debug
aws-toolkit-automation Jul 14, 2025
6ce3264
Merge master into feature/auto-debug
aws-toolkit-automation Jul 14, 2025
443773b
Merge master into feature/auto-debug
aws-toolkit-automation Jul 14, 2025
69f3a79
Merge master into feature/auto-debug
aws-toolkit-automation Jul 14, 2025
c2edf61
Merge master into feature/auto-debug
aws-toolkit-automation Jul 14, 2025
1eeecb8
Merge master into feature/auto-debug
aws-toolkit-automation Jul 15, 2025
cfc05ed
Merge master into feature/auto-debug
aws-toolkit-automation Jul 15, 2025
5d04aeb
Merge master into feature/auto-debug
aws-toolkit-automation Jul 15, 2025
858a3fa
Merge master into feature/auto-debug
aws-toolkit-automation Jul 15, 2025
f100e42
Merge master into feature/auto-debug
aws-toolkit-automation Jul 15, 2025
6c639d3
Merge master into feature/auto-debug
aws-toolkit-automation Jul 16, 2025
e7c7d93
Merge master into feature/auto-debug
aws-toolkit-automation Jul 16, 2025
af0bcce
Merge master into feature/auto-debug
aws-toolkit-automation Jul 16, 2025
4a3d2be
Merge master into feature/auto-debug
aws-toolkit-automation Jul 16, 2025
cc524e3
Merge master into feature/auto-debug
aws-toolkit-automation Jul 16, 2025
5e5fcf0
Merge master into feature/auto-debug
aws-toolkit-automation Jul 16, 2025
ffbec22
Merge master into feature/auto-debug
aws-toolkit-automation Jul 17, 2025
ed00a13
Merge master into feature/auto-debug
aws-toolkit-automation Jul 17, 2025
a2d3398
Merge master into feature/auto-debug
aws-toolkit-automation Jul 17, 2025
1d26ee7
Merge master into feature/auto-debug
aws-toolkit-automation Jul 17, 2025
f0bf3d2
Merge master into feature/auto-debug
aws-toolkit-automation Jul 17, 2025
e86da4d
Merge master into feature/auto-debug
aws-toolkit-automation Jul 17, 2025
624f13d
Merge master into feature/auto-debug
aws-toolkit-automation Jul 17, 2025
03b6711
Merge master into feature/auto-debug
aws-toolkit-automation Jul 18, 2025
5c1473e
Merge master into feature/auto-debug
aws-toolkit-automation Jul 18, 2025
ab99c0e
Merge master into feature/auto-debug
aws-toolkit-automation Jul 18, 2025
5c593ef
Merge master into feature/auto-debug
aws-toolkit-automation Jul 19, 2025
36df393
Merge master into feature/auto-debug
aws-toolkit-automation Jul 19, 2025
2a7b45f
Merge master into feature/auto-debug
aws-toolkit-automation Jul 19, 2025
1358049
Merge master into feature/auto-debug
aws-toolkit-automation Jul 22, 2025
6513d6d
Merge master into feature/auto-debug
aws-toolkit-automation Jul 22, 2025
31ee023
Merge master into feature/auto-debug
aws-toolkit-automation Jul 22, 2025
c16204d
Merge master into feature/auto-debug
aws-toolkit-automation Jul 22, 2025
1f3aad4
Merge master into feature/auto-debug
aws-toolkit-automation Jul 22, 2025
6330c75
Merge master into feature/auto-debug
aws-toolkit-automation Jul 23, 2025
e9c0748
Merge master into feature/auto-debug
aws-toolkit-automation Jul 23, 2025
a558694
Merge master into feature/auto-debug
aws-toolkit-automation Jul 23, 2025
9d280ae
Merge master into feature/auto-debug
aws-toolkit-automation Jul 23, 2025
c0da0be
Merge master into feature/auto-debug
aws-toolkit-automation Jul 23, 2025
61d0271
Merge master into feature/auto-debug
aws-toolkit-automation Jul 23, 2025
b585b41
Merge master into feature/auto-debug
aws-toolkit-automation Jul 23, 2025
51c21d0
Merge master into feature/auto-debug
aws-toolkit-automation Jul 24, 2025
f51436b
Merge master into feature/auto-debug
aws-toolkit-automation Jul 24, 2025
c17ceab
Merge master into feature/auto-debug
aws-toolkit-automation Jul 24, 2025
9770ee8
Merge master into feature/auto-debug
aws-toolkit-automation Jul 24, 2025
2dfee16
Merge master into feature/auto-debug
aws-toolkit-automation Jul 31, 2025
62d2b98
Merge master into feature/auto-debug
aws-toolkit-automation Jul 31, 2025
303922d
Merge master into feature/auto-debug
aws-toolkit-automation Jul 31, 2025
9200aaa
Merge master into feature/auto-debug
aws-toolkit-automation Aug 1, 2025
a68f292
Merge master into feature/auto-debug
aws-toolkit-automation Aug 1, 2025
35136f8
Merge master into feature/auto-debug
aws-toolkit-automation Aug 1, 2025
a029caa
Merge master into feature/auto-debug
aws-toolkit-automation Aug 1, 2025
b5bf1f6
Merge master into feature/auto-debug
aws-toolkit-automation Aug 4, 2025
6aeb7b8
Merge master into feature/auto-debug
aws-toolkit-automation Aug 4, 2025
8a17406
Merge master into feature/auto-debug
aws-toolkit-automation Aug 4, 2025
e326590
Merge master into feature/auto-debug
aws-toolkit-automation Aug 4, 2025
76c0f62
Merge master into feature/auto-debug
aws-toolkit-automation Aug 5, 2025
89a1ff7
Merge master into feature/auto-debug
aws-toolkit-automation Aug 5, 2025
dbb1cc5
Merge master into feature/auto-debug
aws-toolkit-automation Aug 5, 2025
2a040e9
Merge master into feature/auto-debug
aws-toolkit-automation Aug 5, 2025
c2728ce
Merge master into feature/auto-debug
aws-toolkit-automation Aug 5, 2025
8a5ba48
Merge master into feature/auto-debug
aws-toolkit-automation Aug 5, 2025
b1e68d3
Merge master into feature/auto-debug
aws-toolkit-automation Aug 5, 2025
8ab5866
Merge master into feature/auto-debug
aws-toolkit-automation Aug 6, 2025
86bff30
Merge master into feature/auto-debug
aws-toolkit-automation Aug 6, 2025
9e19178
Merge master into feature/auto-debug
aws-toolkit-automation Aug 7, 2025
7a5708a
Merge master into feature/auto-debug
aws-toolkit-automation Aug 7, 2025
8492fd3
Merge master into feature/auto-debug
aws-toolkit-automation Aug 12, 2025
cea26b3
Merge master into feature/auto-debug
aws-toolkit-automation Aug 12, 2025
673364f
Merge master into feature/auto-debug
aws-toolkit-automation Aug 13, 2025
eccb9c7
Merge master into feature/auto-debug
aws-toolkit-automation Aug 13, 2025
abe906e
fix: auto save the current file when users trigger auto debug commands
MarcoWang3 Aug 13, 2025
59e5a1a
Merge master into feature/auto-debug
aws-toolkit-automation Aug 13, 2025
8255329
feat(amazonq): Enable users to edit the original files directly on th…
MarcoWang3 Aug 13, 2025
48aa7f8
revert unnecessary code changes
MarcoWang3 Aug 13, 2025
8ebc3be
Store workspace changes temporarily
MarcoWang3 Aug 14, 2025
c722999
fIx(amazon q): Serve original content in memory instead of using temp…
MarcoWang3 Aug 14, 2025
d0fe2b9
fix: revert unnecessary changes
MarcoWang3 Aug 14, 2025
de8052c
Merge master into feature/auto-debug
aws-toolkit-automation Aug 14, 2025
c29ab14
Merge master into feature/auto-debug
aws-toolkit-automation Aug 14, 2025
b2af811
Merge branch 'master' into feature/editable_diffview
ashishrp-aws Aug 14, 2025
55db340
Merge master into feature/auto-debug
aws-toolkit-automation Aug 15, 2025
83d81f7
Merge branch 'feature/auto-debug' into feature/editable_diffview
MarcoWang3 Aug 15, 2025
8c5666b
Merge branch 'feature/editable_diffview' into feature/editable_diffview
ashishrp-aws Aug 21, 2025
1e2d80f
Merge branch 'feature/editable_diffview' into feature/editable_diffview
ashishrp-aws Sep 10, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
78 changes: 38 additions & 40 deletions packages/amazonq/src/lsp/chat/messages.ts
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ import {
} from '@aws/language-server-runtimes/protocol'
import { v4 as uuidv4 } from 'uuid'
import * as vscode from 'vscode'
import * as path from 'path'
import { Disposable, LanguageClient, Position, TextDocumentIdentifier } from 'vscode-languageclient'
import { AmazonQChatViewProvider } from './webviewProvider'
import {
Expand All @@ -81,22 +82,8 @@ import {
SecurityIssueTreeViewProvider,
CodeWhispererConstants,
} from 'aws-core-vscode/codewhisperer'
import {
amazonQDiffScheme,
AmazonQPromptSettings,
messages,
openUrl,
isTextEditor,
globals,
setContext,
} from 'aws-core-vscode/shared'
import {
DefaultAmazonQAppInitContext,
messageDispatcher,
EditorContentController,
ViewDiffMessage,
referenceLogText,
} from 'aws-core-vscode/amazonq'
import { AmazonQPromptSettings, messages, openUrl, isTextEditor, globals, setContext } from 'aws-core-vscode/shared'
import { DefaultAmazonQAppInitContext, messageDispatcher, referenceLogText } from 'aws-core-vscode/amazonq'
import { telemetry } from 'aws-core-vscode/telemetry'
import { isValidResponseError } from './error'
import { decryptResponse, encryptRequest } from '../encryption'
Expand Down Expand Up @@ -664,31 +651,42 @@ export function registerMessageListeners(
)

languageClient.onNotification(openFileDiffNotificationType.method, async (params: OpenFileDiffParams) => {
const ecc = new EditorContentController()
const uri = params.originalFileUri
const doc = await vscode.workspace.openTextDocument(uri)
const entireDocumentSelection = new vscode.Selection(
new vscode.Position(0, 0),
new vscode.Position(doc.lineCount - 1, doc.lineAt(doc.lineCount - 1).text.length)
)
const viewDiffMessage: ViewDiffMessage = {
context: {
activeFileContext: {
filePath: params.originalFileUri,
fileText: params.originalFileContent ?? '',
fileLanguage: undefined,
matchPolicy: undefined,
},
focusAreaContext: {
selectionInsideExtendedCodeBlock: entireDocumentSelection,
codeBlock: '',
extendedCodeBlock: '',
names: undefined,
},
},
code: params.fileContent ?? '',
const currentFileUri = vscode.Uri.parse(params.originalFileUri)
const originalContent = params.originalFileContent ?? ''
const fileName = path.basename(currentFileUri.fsPath)

// Use custom scheme to avoid adding to recent files
const originalFileUri = vscode.Uri.parse(`amazonq-diff:${fileName}_original_${Date.now()}`)

// Register content provider for the custom scheme
const disposable = vscode.workspace.registerTextDocumentContentProvider('amazonq-diff', {
provideTextDocumentContent: () => originalContent,
})

try {
// Open diff view with custom scheme URI (left) vs current file (right)
await vscode.commands.executeCommand(
'vscode.diff',
originalFileUri,
currentFileUri,
`${vscode.workspace.asRelativePath(currentFileUri)} (Original ↔ Current, Editable)`,
{ preview: false }
)

// Clean up content provider when diff view is closed
const cleanupDisposable = vscode.window.onDidChangeVisibleTextEditors(() => {
const isDiffViewOpen = vscode.window.visibleTextEditors.some(
(editor) => editor.document.uri.toString() === originalFileUri.toString()
)
if (!isDiffViewOpen) {
disposable.dispose()
cleanupDisposable.dispose()
}
})
} catch (error) {
disposable.dispose()
languageClient.error(`[VSCode Client] Failed to open diff view: ${error}`)
}
await ecc.viewDiff(viewDiffMessage, amazonQDiffScheme)
})

languageClient.onNotification(chatUpdateNotificationType.method, (params: ChatUpdateParams) => {
Expand Down
Loading