Skip to content

Commit 7cd7c35

Browse files
authored
Merge branch 'feature/agentic-chat' into feature/agentic-chat
2 parents c44a94a + 44a7dbc commit 7cd7c35

File tree

62 files changed

+6276
-4951
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+6276
-4951
lines changed

CONTRIBUTING.md

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,11 @@ Then clone the repository and install NPM packages:
4242

4343
### Run
4444

45-
Due to the monorepo structure of the project, you must have the `aws-toolkit-vscode/packages/toolkit` folder open as root folder in the workspace.
46-
The easiest way to open the project: File > Open Workspace from File > choose `aws-toolkit-vscode/aws-toolkit-vscode.code-workspace`
45+
Due to the monorepo structure of the project, you must open the project using the
46+
`aws-toolkit-vscode.code-workspace` project file.
47+
48+
1. Run the `File: Open Workspace from File...` command in vscode.
49+
2. Select the `aws-toolkit-vscode.code-workspace` project file.
4750

4851
To run the extension from VSCode as a Node.js app:
4952

@@ -164,8 +167,7 @@ See [web.md](./docs/web.md) for working with the web mode implementation of the
164167
See [TESTPLAN.md](./docs/TESTPLAN.md) to understand the project's test
165168
structure, mechanics and philosophy.
166169
167-
You can run tests directly from VSCode. Due to the monorepo structure of the project, you must have the `aws-toolkit-vscode/packages/toolkit` folder open as root folder in the workspace.
168-
The easiest way to open the project: File > Open Workspace from File > choose `aws-toolkit-vscode/aws-toolkit-vscode.code-workspace`
170+
You can run tests directly from VSCode. Due to the monorepo structure of the project, you must [open the project via the `aws-toolkit-vscode.code-workspace` project file](#run).
169171
170172
1. Select `View > Debug`, or select the Debug pane from the sidebar.
171173
2. From the dropdown at the top of the Debug pane, select the `Extension Tests` configuration.
@@ -180,12 +182,13 @@ Tests will write logs to `./.test-reports/testLog.log`.
180182
181183
#### Run a specific test
182184
183-
To run a single test in VSCode, do any one of:
185+
To run a single test in VSCode, do any _one_ of the following:
184186
185187
- Run the _Extension Tests (current file)_ launch-config.
186-
- Use Mocha's [it.only()](https://mochajs.org/#exclusive-tests) or `describe.only()`.
187-
- Run in your terminal:
188-
188+
- Note: if you don't see this in the vscode debug menu, confirm that you opened the project
189+
[via the `aws-toolkit-vscode.code-workspace` project file](#run).
190+
- or... Use Mocha's [it.only()](https://mochajs.org/#exclusive-tests) or `describe.only()`.
191+
- or... Run in your terminal:
189192
- Unix/macOS/POSIX shell:
190193
```
191194
TEST_FILE=../core/src/test/foo.test.ts npm run test
@@ -194,8 +197,7 @@ To run a single test in VSCode, do any one of:
194197
```
195198
$Env:TEST_FILE = "../core/src/test/foo.test.ts"; npm run test
196199
```
197-
198-
- To run all tests in a particular subdirectory, you can edit
200+
- or... To run all tests in a particular subdirectory, you can edit
199201
`src/test/index.ts:rootTestsPath` to point to a subdirectory:
200202
```
201203
rootTestsPath: __dirname + '/shared/sam/debugger/'

package-lock.json

Lines changed: 2612 additions & 2287 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{
2+
"date": "2025-03-28",
3+
"version": "1.53.0",
4+
"entries": [
5+
{
6+
"type": "Bug Fix",
7+
"description": "Amazon Q Chat: Choosing a nested subfolder for `/doc` on Windows results in `The folder you chose did not contain any source files` error"
8+
},
9+
{
10+
"type": "Feature",
11+
"description": "Add support for Code search in Q chat"
12+
},
13+
{
14+
"type": "Feature",
15+
"description": "(Experimental) Amazon Q inline code suggestions via Amazon Q Language Server. (enable with `aws.experiments.amazonqLSP: true`)"
16+
},
17+
{
18+
"type": "Feature",
19+
"description": "Command Palette: Add `Amazon Q: Open Chat` command."
20+
}
21+
]
22+
}

packages/amazonq/.changes/next-release/Bug Fix-3f6a2026-9dd8-4b50-8a73-765ead8717b4.json

Lines changed: 0 additions & 4 deletions
This file was deleted.

packages/amazonq/.changes/next-release/Feature-5f829ea1-e33b-4687-bc6d-76ed1558cd7e.json

Lines changed: 0 additions & 4 deletions
This file was deleted.

packages/amazonq/.changes/next-release/Feature-7a3c930e-cc8e-4323-9ecd-c1bf767fd2ed.json

Lines changed: 0 additions & 4 deletions
This file was deleted.

packages/amazonq/.changes/next-release/Feature-fa845e78-1e76-407a-be8a-e64c63b98795.json

Lines changed: 0 additions & 4 deletions
This file was deleted.

packages/amazonq/CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
## 1.53.0 2025-03-28
2+
3+
- **Bug Fix** Amazon Q Chat: Choosing a nested subfolder for `/doc` on Windows results in `The folder you chose did not contain any source files` error
4+
- **Feature** Add support for Code search in Q chat
5+
- **Feature** (Experimental) Amazon Q inline code suggestions via Amazon Q Language Server. (enable with `aws.experiments.amazonqLSP: true`)
6+
- **Feature** Command Palette: Add `Amazon Q: Open Chat` command.
7+
18
## 1.52.0 2025-03-20
29

310
- **Bug Fix** Amazon Q chat: @Folders and @Files are missing `@` prefix in chat history

packages/amazonq/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "amazon-q-vscode",
33
"displayName": "Amazon Q",
44
"description": "The most capable generative AI-powered assistant for building, operating, and transforming software, with advanced capabilities for managing data and AI",
5-
"version": "1.53.0-SNAPSHOT",
5+
"version": "1.54.0-SNAPSHOT",
66
"extensionKind": [
77
"workspace"
88
],

packages/amazonq/src/lsp/chat/webviewProvider.ts

Lines changed: 51 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import {
1313
Uri,
1414
} from 'vscode'
1515
import { LanguageServerResolver } from 'aws-core-vscode/shared'
16+
import { QuickActionCommandGroup } from '@aws/mynah-ui'
1617

1718
export class AmazonQChatViewProvider implements WebviewViewProvider {
1819
public static readonly viewType = 'aws.amazonq.AmazonQChatView'
@@ -21,6 +22,24 @@ export class AmazonQChatViewProvider implements WebviewViewProvider {
2122

2223
webview: Webview | undefined
2324

25+
private readonly quickActionCommands: QuickActionCommandGroup[] = [
26+
{
27+
groupName: 'Quick Actions',
28+
commands: [
29+
{
30+
command: '/help',
31+
icon: 'help',
32+
description: 'Learn more about Amazon Q',
33+
},
34+
{
35+
command: '/clear',
36+
icon: 'trash',
37+
description: 'Clear this session',
38+
},
39+
],
40+
},
41+
]
42+
2443
constructor(private readonly mynahUIPath: string) {}
2544

2645
public resolveWebviewView(webviewView: WebviewView, context: WebviewViewResolveContext, _token: CancellationToken) {
@@ -34,40 +53,40 @@ export class AmazonQChatViewProvider implements WebviewViewProvider {
3453
}
3554

3655
const uiPath = webviewView.webview.asWebviewUri(Uri.parse(this.mynahUIPath)).toString()
37-
webviewView.webview.html = getWebviewContent(uiPath)
56+
webviewView.webview.html = this.getWebviewContent(uiPath)
3857

3958
this.onDidResolveWebviewEmitter.fire()
4059
}
41-
}
4260

43-
function getWebviewContent(mynahUIPath: string) {
44-
return `
45-
<!DOCTYPE html>
46-
<html lang="en">
47-
<head>
48-
<meta charset="UTF-8">
49-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
50-
<title>Chat</title>
51-
<style>
52-
body,
53-
html {
54-
background-color: var(--mynah-color-bg);
55-
color: var(--mynah-color-text-default);
56-
height: 100%;
57-
width: 100%;
58-
overflow: hidden;
59-
margin: 0;
60-
padding: 0;
61-
}
62-
</style>
63-
</head>
64-
<body>
65-
<script type="text/javascript" src="${mynahUIPath.toString()}" defer onload="init()"></script>
66-
<script type="text/javascript">
67-
const init = () => {
68-
amazonQChat.createChat(acquireVsCodeApi(), {disclaimerAcknowledged: false});
69-
}
70-
</script>
71-
</body>
72-
</html>`
61+
private getWebviewContent(mynahUIPath: string) {
62+
return `
63+
<!DOCTYPE html>
64+
<html lang="en">
65+
<head>
66+
<meta charset="UTF-8">
67+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
68+
<title>Chat</title>
69+
<style>
70+
body,
71+
html {
72+
background-color: var(--mynah-color-bg);
73+
color: var(--mynah-color-text-default);
74+
height: 100%;
75+
width: 100%;
76+
overflow: hidden;
77+
margin: 0;
78+
padding: 0;
79+
}
80+
</style>
81+
</head>
82+
<body>
83+
<script type="text/javascript" src="${mynahUIPath.toString()}" defer onload="init()"></script>
84+
<script type="text/javascript">
85+
const init = () => {
86+
amazonQChat.createChat(acquireVsCodeApi(), { disclaimerAcknowledged: false, quickActionCommands: ${JSON.stringify(this.quickActionCommands)}});
87+
}
88+
</script>
89+
</body>
90+
</html>`
91+
}
7392
}

0 commit comments

Comments
 (0)