@aws/lsp-codewhisperer 0.0.70 → 0.0.71

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/out/language-server/agenticChat/agenticChatController.js +22 -3
  3. package/out/language-server/agenticChat/agenticChatController.js.map +1 -1
  4. package/out/language-server/agenticChat/tools/executeBash.d.ts +3 -1
  5. package/out/language-server/agenticChat/tools/executeBash.js +28 -24
  6. package/out/language-server/agenticChat/tools/executeBash.js.map +1 -1
  7. package/out/language-server/agenticChat/tools/mcp/mcpEventHandler.js +257 -163
  8. package/out/language-server/agenticChat/tools/mcp/mcpEventHandler.js.map +1 -1
  9. package/out/language-server/agenticChat/tools/mcp/mcpManager.d.ts +37 -17
  10. package/out/language-server/agenticChat/tools/mcp/mcpManager.js +195 -78
  11. package/out/language-server/agenticChat/tools/mcp/mcpManager.js.map +1 -1
  12. package/out/language-server/agenticChat/tools/mcp/mcpTypes.d.ts +3 -1
  13. package/out/language-server/agenticChat/tools/mcp/mcpTypes.js.map +1 -1
  14. package/out/language-server/agenticChat/tools/mcp/mcpUtils.d.ts +0 -1
  15. package/out/language-server/agenticChat/tools/mcp/mcpUtils.js +36 -21
  16. package/out/language-server/agenticChat/tools/mcp/mcpUtils.js.map +1 -1
  17. package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReview.d.ts +1 -0
  18. package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReview.js +10 -15
  19. package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReview.js.map +1 -1
  20. package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewConstants.d.ts +2 -1
  21. package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewConstants.js +3 -2
  22. package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewConstants.js.map +1 -1
  23. package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewUtils.d.ts +6 -0
  24. package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewUtils.js +9 -0
  25. package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewUtils.js.map +1 -1
  26. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindings.d.ts +89 -0
  27. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindings.js +138 -0
  28. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindings.js.map +1 -0
  29. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsConstants.d.ts +14 -0
  30. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsConstants.js +40 -0
  31. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsConstants.js.map +1 -0
  32. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsSchemas.d.ts +177 -0
  33. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsSchemas.js +93 -0
  34. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsSchemas.js.map +1 -0
  35. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsTypes.d.ts +27 -0
  36. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsTypes.js +12 -0
  37. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsTypes.js.map +1 -0
  38. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsUtils.d.ts +17 -0
  39. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsUtils.js +33 -0
  40. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsUtils.js.map +1 -0
  41. package/out/language-server/agenticChat/tools/toolServer.js +22 -2
  42. package/out/language-server/agenticChat/tools/toolServer.js.map +1 -1
  43. package/out/language-server/agenticChat/utils/commandParser.d.ts +17 -0
  44. package/out/language-server/agenticChat/utils/commandParser.js +85 -0
  45. package/out/language-server/agenticChat/utils/commandParser.js.map +1 -0
  46. package/out/language-server/chat/chatController.js +77 -0
  47. package/out/language-server/chat/chatController.js.map +1 -1
  48. package/out/language-server/chat/constants.d.ts +1 -0
  49. package/out/language-server/chat/constants.js +2 -1
  50. package/out/language-server/chat/constants.js.map +1 -1
  51. package/out/language-server/chat/telemetry/chatTelemetryController.d.ts +1 -0
  52. package/out/language-server/chat/telemetry/chatTelemetryController.js +1 -0
  53. package/out/language-server/chat/telemetry/chatTelemetryController.js.map +1 -1
  54. package/out/language-server/chat/utils.js +6 -0
  55. package/out/language-server/chat/utils.js.map +1 -1
  56. package/out/language-server/configuration/qConfigurationServer.d.ts +1 -0
  57. package/out/language-server/configuration/qConfigurationServer.js.map +1 -1
  58. package/out/language-server/inline-completion/auto-trigger/autoTrigger.js +2 -1
  59. package/out/language-server/inline-completion/auto-trigger/autoTrigger.js.map +1 -1
  60. package/out/language-server/inline-completion/codeWhispererServer.js +40 -37
  61. package/out/language-server/inline-completion/codeWhispererServer.js.map +1 -1
  62. package/out/language-server/workspaceContext/artifactManager.js +25 -6
  63. package/out/language-server/workspaceContext/artifactManager.js.map +1 -1
  64. package/out/shared/languageDetection.js +0 -2
  65. package/out/shared/languageDetection.js.map +1 -1
  66. package/out/shared/models/constants.js +2 -1
  67. package/out/shared/models/constants.js.map +1 -1
  68. package/out/shared/supplementalContextUtil/crossFileContextUtil.d.ts +4 -4
  69. package/out/shared/supplementalContextUtil/crossFileContextUtil.js +112 -8
  70. package/out/shared/supplementalContextUtil/crossFileContextUtil.js.map +1 -1
  71. package/out/shared/supplementalContextUtil/supplementalContextUtil.d.ts +1 -1
  72. package/out/shared/supplementalContextUtil/supplementalContextUtil.js +2 -2
  73. package/out/shared/supplementalContextUtil/supplementalContextUtil.js.map +1 -1
  74. package/out/shared/telemetry/telemetryService.js +36 -17
  75. package/out/shared/telemetry/telemetryService.js.map +1 -1
  76. package/out/shared/telemetry/types.d.ts +8 -1
  77. package/out/shared/telemetry/types.js +1 -0
  78. package/out/shared/telemetry/types.js.map +1 -1
  79. package/out/shared/utils.d.ts +12 -0
  80. package/out/shared/utils.js +53 -3
  81. package/out/shared/utils.js.map +1 -1
  82. package/package.json +4 -4
package/CHANGELOG.md CHANGED
@@ -1,5 +1,40 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.0.71](https://github.com/aws/language-servers/compare/lsp-codewhisperer/v0.0.70...lsp-codewhisperer/v0.0.71) (2025-08-04)
4
+
5
+
6
+ ### Features
7
+
8
+ * adding inline chat telemetry ([#2001](https://github.com/aws/language-servers/issues/2001)) ([8b1c9c7](https://github.com/aws/language-servers/commit/8b1c9c7c3859cdfbbd0abb059066a5c6fe2ffaf2))
9
+ * **amazonq:** implement displayFindings tool ([#2029](https://github.com/aws/language-servers/issues/2029)) ([da11663](https://github.com/aws/language-servers/commit/da1166340f3d13e1d7fd83b260359661443230ea))
10
+ * improve code review tool reliability and error handling ([#2033](https://github.com/aws/language-servers/issues/2033)) ([124244e](https://github.com/aws/language-servers/commit/124244ee7d97adf71a52c4fde7ddb908dbc0bd08))
11
+ * support http transport without authorization for MCP ([97e806c](https://github.com/aws/language-servers/commit/97e806ce7ea5e5be1fd60c4a4d9a54cf76c8f8cb))
12
+
13
+
14
+ ### Bug Fixes
15
+
16
+ * add bash command parsing for telemetry metrics ([#2039](https://github.com/aws/language-servers/issues/2039)) ([01d8112](https://github.com/aws/language-servers/commit/01d811225281a2e32f9cd6dab1b575aad8c0b4d6))
17
+ * adding acceptedCharacterCount to UserTriggerDecisionEvent ([#2014](https://github.com/aws/language-servers/issues/2014)) ([3f94486](https://github.com/aws/language-servers/commit/3f944865483a6913138335fe61eee70ae71d7c03))
18
+ * adjust bash command categories ([#2030](https://github.com/aws/language-servers/issues/2030)) ([25ed99f](https://github.com/aws/language-servers/commit/25ed99fcf0eeaa86b0a5e040e90d69becf625c71))
19
+ * adjust cross file context config ([#2011](https://github.com/aws/language-servers/issues/2011)) ([f7ade37](https://github.com/aws/language-servers/commit/f7ade3767e714d5178f24fd9cc90349c5f417979))
20
+ * **amazonq:** fix for mcp server permissions ([#2026](https://github.com/aws/language-servers/issues/2026)) ([89ae720](https://github.com/aws/language-servers/commit/89ae720dc036a90338d192aca801a858e8fa19f8))
21
+ * **amazonq:** fix for mcp server permissions to prefer workspace agent config files ([#2038](https://github.com/aws/language-servers/issues/2038)) ([d2ac614](https://github.com/aws/language-servers/commit/d2ac614f0f16faa8bf689ac9c8bff09d64fc3a3b))
22
+ * **amazonq:** fix processing empty unsupported workspace file ([#2017](https://github.com/aws/language-servers/issues/2017)) ([9e4d0af](https://github.com/aws/language-servers/commit/9e4d0af244b5edba73771b6cb4290d922ef83c43))
23
+ * correct the implementation of gathering open tabs in cross file context ([#2040](https://github.com/aws/language-servers/issues/2040)) ([b7b7a2b](https://github.com/aws/language-servers/commit/b7b7a2bd2020f50069ce89f6505cc2a36b1f3fa7))
24
+ * remove malicious characters from prompt input ([#2009](https://github.com/aws/language-servers/issues/2009)) ([bf8a1e6](https://github.com/aws/language-servers/commit/bf8a1e6136801532132f2bf82def4ca5bf49c82f))
25
+ * sanitize request input ([#2025](https://github.com/aws/language-servers/issues/2025)) ([7c0efd7](https://github.com/aws/language-servers/commit/7c0efd73d5e9a0e3f42d143a10c16782f6e35db8))
26
+ * skip image sanitization ([#2031](https://github.com/aws/language-servers/issues/2031)) ([f02fc23](https://github.com/aws/language-servers/commit/f02fc231136940bd644c426d2b222ae2cba779c4))
27
+ * sometimes Enter does not auto trigger ([#2005](https://github.com/aws/language-servers/issues/2005)) ([c9af035](https://github.com/aws/language-servers/commit/c9af0353a6c6f3b2ca4eead02f19e8ab5ddb8ef1))
28
+ * use fast glob streaming when collecting files ([#2003](https://github.com/aws/language-servers/issues/2003)) ([f7c0a0b](https://github.com/aws/language-servers/commit/f7c0a0b0ef9ce3ecd620acfef00e55745db3d71f))
29
+ * use new language server runtime ([#2023](https://github.com/aws/language-servers/issues/2023)) ([83ea1e4](https://github.com/aws/language-servers/commit/83ea1e42fe52990696eb9b878fa11e2c5331bec5))
30
+
31
+
32
+ ### Dependencies
33
+
34
+ * The following workspace dependencies were updated
35
+ * dependencies
36
+ * @aws/lsp-core bumped from ^0.0.12 to ^0.0.13
37
+
3
38
  ## [0.0.70](https://github.com/aws/language-servers/compare/lsp-codewhisperer/v0.0.69...lsp-codewhisperer/v0.0.70) (2025-07-29)
4
39
 
5
40
 
@@ -64,6 +64,7 @@ const imageVerification_1 = require("../../shared/imageVerification");
64
64
  const path_1 = require("@aws/lsp-core/out/util/path");
65
65
  const agenticChatControllerHelper_1 = require("./utils/agenticChatControllerHelper");
66
66
  const activeUserTracker_1 = require("../../shared/activeUserTracker");
67
+ const displayFindings_1 = require("./tools/qCodeAnalysis/displayFindings");
67
68
  class AgenticChatController {
68
69
  #features;
69
70
  #chatSessionManagementService;
@@ -463,7 +464,8 @@ class AgenticChatController {
463
464
  }
464
465
  async onChatPrompt(params, token) {
465
466
  // Phase 1: Initial Setup - This happens only once
466
- const maybeDefaultResponse = (0, utils_1.getDefaultChatResponse)(params.prompt.prompt);
467
+ params.prompt.prompt = (0, utils_2.sanitizeInput)(params.prompt.prompt || '');
468
+ const maybeDefaultResponse = !params.prompt.command && (0, utils_1.getDefaultChatResponse)(params.prompt.prompt);
467
469
  if (maybeDefaultResponse) {
468
470
  return maybeDefaultResponse;
469
471
  }
@@ -693,6 +695,7 @@ class AgenticChatController {
693
695
  this.#debug(`Compacting history with ${characterCount} characters`);
694
696
  this.#llmRequestStartTime = Date.now();
695
697
  // Phase 3: Request Execution
698
+ currentRequestInput = (0, utils_2.sanitizeRequestInput)(currentRequestInput);
696
699
  this.#debug(`Compaction Request: ${JSON.stringify(currentRequestInput, undefined, 2)}`);
697
700
  const response = await session.getChatResponse(currentRequestInput);
698
701
  if (response.$metadata.requestId) {
@@ -783,6 +786,7 @@ class AgenticChatController {
783
786
  await chatResultStream.writeResultBlock({ ...constants_1.loadingMessage, messageId: loadingMessageId });
784
787
  this.#llmRequestStartTime = Date.now();
785
788
  // Phase 3: Request Execution
789
+ currentRequestInput = (0, utils_2.sanitizeRequestInput)(currentRequestInput);
786
790
  // Note: these logs are very noisy, but contain information redacted on the backend.
787
791
  this.#debug(`generateAssistantResponse/SendMessage Request: ${JSON.stringify(currentRequestInput, this.#imageReplacer, 2)}`);
788
792
  const response = await session.getChatResponse(currentRequestInput);
@@ -1170,7 +1174,8 @@ class AgenticChatController {
1170
1174
  break;
1171
1175
  }
1172
1176
  case codeReview_1.CodeReview.toolName:
1173
- // no need to write tool message for code review
1177
+ case displayFindings_1.DisplayFindings.toolName:
1178
+ // no need to write tool message for CodeReview or DisplayFindings
1174
1179
  break;
1175
1180
  // — DEFAULT ⇒ Only MCP tools, but can also handle generic tool execution messages
1176
1181
  default:
@@ -1313,11 +1318,25 @@ class AgenticChatController {
1313
1318
  codeReviewResult.output.content?.findingsByFile) {
1314
1319
  await chatResultStream.writeResultBlock({
1315
1320
  type: 'tool',
1316
- messageId: toolUse.toolUseId + codeReviewConstants_1.FINDINGS_MESSAGE_SUFFIX,
1321
+ messageId: toolUse.toolUseId + codeReviewConstants_1.CODE_REVIEW_FINDINGS_MESSAGE_SUFFIX,
1317
1322
  body: codeReviewResult.output.content.findingsByFile,
1318
1323
  });
1319
1324
  }
1320
1325
  break;
1326
+ case displayFindings_1.DisplayFindings.toolName:
1327
+ // no need to write tool result for code review, this is handled by model via chat
1328
+ // Push result in message so that it is picked by IDE plugin to show in issues panel
1329
+ const displayFindingsResult = result;
1330
+ if (displayFindingsResult?.output?.kind === 'json' &&
1331
+ displayFindingsResult.output.success &&
1332
+ displayFindingsResult.output.content !== undefined) {
1333
+ await chatResultStream.writeResultBlock({
1334
+ type: 'tool',
1335
+ messageId: toolUse.toolUseId + codeReviewConstants_1.DISPLAY_FINDINGS_MESSAGE_SUFFIX,
1336
+ body: JSON.stringify(displayFindingsResult.output.content),
1337
+ });
1338
+ }
1339
+ break;
1321
1340
  // — DEFAULT ⇒ MCP tools
1322
1341
  default:
1323
1342
  await this.#handleMcpToolResult(toolUse, result, session, chatResultStream);