@aws/lsp-codewhisperer 0.0.79 → 0.0.81
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.
- package/CHANGELOG.md +35 -0
- package/out/language-server/agenticChat/agenticChatController.js +57 -2
- package/out/language-server/agenticChat/agenticChatController.js.map +1 -1
- package/out/language-server/agenticChat/tools/mcp/agentPermissionManager.d.ts +103 -0
- package/out/language-server/agenticChat/tools/mcp/agentPermissionManager.js +446 -0
- package/out/language-server/agenticChat/tools/mcp/agentPermissionManager.js.map +1 -0
- package/out/language-server/agenticChat/tools/mcp/mcpEventHandler.js +44 -7
- package/out/language-server/agenticChat/tools/mcp/mcpEventHandler.js.map +1 -1
- package/out/language-server/agenticChat/tools/mcp/mcpManager.d.ts +15 -2
- package/out/language-server/agenticChat/tools/mcp/mcpManager.js +149 -169
- package/out/language-server/agenticChat/tools/mcp/mcpManager.js.map +1 -1
- package/out/language-server/agenticChat/tools/mcp/mcpTypes.js +1 -1
- package/out/language-server/agenticChat/tools/mcp/mcpTypes.js.map +1 -1
- package/out/language-server/agenticChat/tools/mcp/mcpUtils.d.ts +2 -1
- package/out/language-server/agenticChat/tools/mcp/mcpUtils.js +87 -54
- package/out/language-server/agenticChat/tools/mcp/mcpUtils.js.map +1 -1
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReview.js +15 -5
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReview.js.map +1 -1
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewConstants.js +1 -1
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewConstants.js.map +1 -1
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewTypes.d.ts +1 -0
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewUtils.d.ts +1 -1
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewUtils.js +3 -1
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewUtils.js.map +1 -1
- package/out/language-server/agenticChat/tools/toolServer.js +1 -0
- package/out/language-server/agenticChat/tools/toolServer.js.map +1 -1
- package/out/language-server/agenticChat/tools/workspaceContext/semanticSearch.d.ts +40 -0
- package/out/language-server/agenticChat/tools/workspaceContext/semanticSearch.js +106 -0
- package/out/language-server/agenticChat/tools/workspaceContext/semanticSearch.js.map +1 -0
- package/out/language-server/inline-completion/codeWhispererServer.js +3 -3
- package/out/language-server/inline-completion/codeWhispererServer.js.map +1 -1
- package/out/language-server/inline-completion/editCompletionHandler.js +1 -1
- package/out/language-server/inline-completion/editCompletionHandler.js.map +1 -1
- package/out/language-server/inline-completion/session/sessionManager.d.ts +2 -2
- package/out/language-server/inline-completion/session/sessionManager.js +3 -2
- package/out/language-server/inline-completion/session/sessionManager.js.map +1 -1
- package/out/language-server/inline-completion/telemetry.js +1 -1
- package/out/language-server/netTransform/artifactManager.d.ts +1 -0
- package/out/language-server/netTransform/artifactManager.js +52 -10
- package/out/language-server/netTransform/artifactManager.js.map +1 -1
- package/out/language-server/workspaceContext/util.d.ts +4 -0
- package/out/language-server/workspaceContext/util.js +8 -1
- package/out/language-server/workspaceContext/util.js.map +1 -1
- package/out/language-server/workspaceContext/workspaceContextServer.js +19 -18
- package/out/language-server/workspaceContext/workspaceContextServer.js.map +1 -1
- package/out/language-server/workspaceContext/workspaceFolderManager.d.ts +8 -2
- package/out/language-server/workspaceContext/workspaceFolderManager.js +35 -3
- package/out/language-server/workspaceContext/workspaceFolderManager.js.map +1 -1
- package/out/shared/amazonQServiceManager/AmazonQTokenServiceManager.js +8 -6
- package/out/shared/amazonQServiceManager/AmazonQTokenServiceManager.js.map +1 -1
- package/out/shared/amazonQServiceManager/qDeveloperProfiles.d.ts +1 -2
- package/out/shared/amazonQServiceManager/qDeveloperProfiles.js.map +1 -1
- package/out/shared/codeWhispererService.js +3 -0
- package/out/shared/codeWhispererService.js.map +1 -1
- package/out/shared/streamingClientService.js +9 -0
- package/out/shared/streamingClientService.js.map +1 -1
- package/out/shared/telemetry/telemetryService.js +4 -2
- package/out/shared/telemetry/telemetryService.js.map +1 -1
- package/out/shared/testUtils.d.ts +1 -1
- package/out/shared/testUtils.js.map +1 -1
- package/out/shared/utils.d.ts +1 -2
- package/out/shared/utils.js +1 -3
- package/out/shared/utils.js.map +1 -1
- package/package.json +2 -2
|
@@ -26,7 +26,7 @@ class AgentModel {
|
|
|
26
26
|
}
|
|
27
27
|
static fromJson(doc) {
|
|
28
28
|
const cfg = {
|
|
29
|
-
name: doc?.['name'] || '
|
|
29
|
+
name: doc?.['name'] || 'q_ide_default',
|
|
30
30
|
description: doc?.['description'] || 'Default agent configuration',
|
|
31
31
|
prompt: doc?.['prompt'],
|
|
32
32
|
model: doc?.['model'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcpTypes.js","sourceRoot":"","sources":["../../../../../src/language-server/agenticChat/tools/mcp/mcpTypes.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,IAAY,eAMX;AAND,WAAY,eAAe;IACvB,gDAA6B,CAAA;IAC7B,sCAAmB,CAAA;IACnB,oCAAiB,CAAA;IACjB,wCAAqB,CAAA;IACrB,kDAA+B,CAAA;AACnC,CAAC,EANW,eAAe,+BAAf,eAAe,QAM1B;AACD,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IACzB,gDAA2B,CAAA;IAC3B,gCAAW,CAAA;IACX,kCAAa,CAAA;AACjB,CAAC,EAJW,iBAAiB,iCAAjB,iBAAiB,QAI5B;AA2DD,MAAa,UAAU;IACC;IAApB,YAAoB,GAAgB;QAAhB,QAAG,GAAH,GAAG,CAAa;IAAG,CAAC;IAExC,MAAM,CAAC,QAAQ,CAAC,GAAQ;QACpB,MAAM,GAAG,GAAgB;YACrB,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"mcpTypes.js","sourceRoot":"","sources":["../../../../../src/language-server/agenticChat/tools/mcp/mcpTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,7 @@ export declare function loadMcpServerConfigs(workspace: Workspace, logging: Logg
|
|
|
24
24
|
* - Load global first (if exists), then workspace files—workspace overrides.
|
|
25
25
|
* - Combines functionality of loadMcpServerConfigs and loadPersonaPermissions
|
|
26
26
|
* - Handles server configurations and permissions from the same agent file
|
|
27
|
+
* - Supports backwards compatibility with MCP config files when useLegacyMcpJson is true
|
|
27
28
|
*/
|
|
28
29
|
export declare function loadAgentConfig(workspace: Workspace, logging: Logger, agentPaths: string[]): Promise<{
|
|
29
30
|
servers: Map<string, MCPServerConfig>;
|
|
@@ -77,7 +78,7 @@ export declare function saveAgentConfig(workspace: Workspace, logging: Logger, c
|
|
|
77
78
|
/**
|
|
78
79
|
* Save only server-specific changes to agent config file
|
|
79
80
|
*/
|
|
80
|
-
export declare function saveServerSpecificAgentConfig(workspace: Workspace, logging: Logger, serverName: string, serverConfig: any, serverTools: string[], serverAllowedTools: string[], configPath: string): Promise<void>;
|
|
81
|
+
export declare function saveServerSpecificAgentConfig(workspace: Workspace, logging: Logger, serverName: string, serverConfig: any, serverTools: string[], serverAllowedTools: string[], configPath: string, isLegacyMcpServer?: boolean): Promise<void>;
|
|
81
82
|
/**
|
|
82
83
|
* Migrate existing agent config to CLI format
|
|
83
84
|
*/
|
|
@@ -113,13 +113,18 @@ async function loadMcpServerConfigs(workspace, logging, rawPaths) {
|
|
|
113
113
|
configErrors.set(`${name}_timeout`, errorMsg);
|
|
114
114
|
}
|
|
115
115
|
const cfg = {
|
|
116
|
-
url: entry.url,
|
|
117
|
-
headers: typeof entry.headers === 'object' && entry.headers !== null ? entry.headers : undefined,
|
|
118
116
|
command: entry.command,
|
|
117
|
+
url: entry.url,
|
|
119
118
|
args: Array.isArray(entry.args) ? entry.args.map(String) : [],
|
|
120
119
|
env: typeof entry.env === 'object' && entry.env !== null ? entry.env : {},
|
|
121
|
-
|
|
120
|
+
headers: typeof entry.headers === 'object' && entry.headers !== null
|
|
121
|
+
? entry.headers
|
|
122
|
+
: undefined,
|
|
123
|
+
initializationTimeout: typeof entry.initializationTimeout === 'number'
|
|
124
|
+
? entry.initializationTimeout
|
|
125
|
+
: undefined,
|
|
122
126
|
timeout: typeof entry.timeout === 'number' ? entry.timeout : undefined,
|
|
127
|
+
disabled: typeof entry.disabled === 'boolean' ? entry.disabled : false,
|
|
123
128
|
__configPath__: fsPath,
|
|
124
129
|
};
|
|
125
130
|
const sanitizedName = sanitizeName(name);
|
|
@@ -143,7 +148,7 @@ async function loadMcpServerConfigs(workspace, logging, rawPaths) {
|
|
|
143
148
|
return { servers, serverNameMapping, errors: configErrors };
|
|
144
149
|
}
|
|
145
150
|
const DEFAULT_AGENT_RAW = `{
|
|
146
|
-
"name": "
|
|
151
|
+
"name": "q_ide_default",
|
|
147
152
|
"description": "Default agent configuration",
|
|
148
153
|
"prompt": "",
|
|
149
154
|
"mcpServers": {},
|
|
@@ -175,7 +180,7 @@ const DEFAULT_AGENT_RAW = `{
|
|
|
175
180
|
"agentSpawn": [],
|
|
176
181
|
"userPromptSubmit": []
|
|
177
182
|
},
|
|
178
|
-
"useLegacyMcpJson":
|
|
183
|
+
"useLegacyMcpJson": true
|
|
179
184
|
}`;
|
|
180
185
|
const DEFAULT_PERSONA_RAW = `{
|
|
181
186
|
"mcpServers": [
|
|
@@ -216,6 +221,7 @@ const DEFAULT_PERSONA_RAW = `{
|
|
|
216
221
|
* - Load global first (if exists), then workspace files—workspace overrides.
|
|
217
222
|
* - Combines functionality of loadMcpServerConfigs and loadPersonaPermissions
|
|
218
223
|
* - Handles server configurations and permissions from the same agent file
|
|
224
|
+
* - Supports backwards compatibility with MCP config files when useLegacyMcpJson is true
|
|
219
225
|
*/
|
|
220
226
|
async function loadAgentConfig(workspace, logging, agentPaths) {
|
|
221
227
|
// Initialize return values similar to loadMcpServerConfigs
|
|
@@ -224,13 +230,14 @@ async function loadAgentConfig(workspace, logging, agentPaths) {
|
|
|
224
230
|
const configErrors = new Map();
|
|
225
231
|
// Create base agent config
|
|
226
232
|
const agentConfig = {
|
|
227
|
-
name: '
|
|
233
|
+
name: 'q_ide_default',
|
|
228
234
|
description: 'Agent configuration',
|
|
229
235
|
mcpServers: {},
|
|
230
236
|
tools: [],
|
|
231
237
|
allowedTools: [],
|
|
232
238
|
toolsSettings: {},
|
|
233
239
|
resources: [],
|
|
240
|
+
useLegacyMcpJson: true, // Default to true for backwards compatibility
|
|
234
241
|
};
|
|
235
242
|
// Normalize paths
|
|
236
243
|
const uniquePaths = Array.from(new Set(agentPaths.map(raw => {
|
|
@@ -251,6 +258,8 @@ async function loadAgentConfig(workspace, logging, agentPaths) {
|
|
|
251
258
|
return -1;
|
|
252
259
|
return 0;
|
|
253
260
|
});
|
|
261
|
+
// Track useLegacyMcpJson value - workspace takes precedence over global
|
|
262
|
+
let useLegacyMcpJsonValue;
|
|
254
263
|
// Process each path like loadMcpServerConfigs
|
|
255
264
|
for (const fsPath of sortedPaths) {
|
|
256
265
|
// 1) Skip missing files or create default global
|
|
@@ -312,6 +321,17 @@ async function loadAgentConfig(workspace, logging, agentPaths) {
|
|
|
312
321
|
agentConfig.name = json.name || agentConfig.name;
|
|
313
322
|
agentConfig.description = json.description || agentConfig.description;
|
|
314
323
|
}
|
|
324
|
+
// Track useLegacyMcpJson - workspace files take precedence
|
|
325
|
+
if (json.useLegacyMcpJson !== undefined) {
|
|
326
|
+
if (fsPath !== globalConfigPath) {
|
|
327
|
+
// Workspace file - always takes precedence
|
|
328
|
+
useLegacyMcpJsonValue = json.useLegacyMcpJson;
|
|
329
|
+
}
|
|
330
|
+
else if (useLegacyMcpJsonValue === undefined) {
|
|
331
|
+
// Global file - only use if no workspace value set
|
|
332
|
+
useLegacyMcpJsonValue = json.useLegacyMcpJson;
|
|
333
|
+
}
|
|
334
|
+
}
|
|
315
335
|
// 4) Process permissions (tools and allowedTools)
|
|
316
336
|
if (Array.isArray(json.tools)) {
|
|
317
337
|
for (const tool of json.tools) {
|
|
@@ -419,8 +439,36 @@ async function loadAgentConfig(workspace, logging, agentPaths) {
|
|
|
419
439
|
}
|
|
420
440
|
}
|
|
421
441
|
}
|
|
442
|
+
// Set final useLegacyMcpJson value - default to true if not specified anywhere
|
|
443
|
+
agentConfig.useLegacyMcpJson = useLegacyMcpJsonValue !== undefined ? useLegacyMcpJsonValue : true;
|
|
444
|
+
// Load MCP config files if useLegacyMcpJson is true
|
|
445
|
+
if (agentConfig.useLegacyMcpJson) {
|
|
446
|
+
const wsUris = workspace.getAllWorkspaceFolders()?.map(f => f.uri) ?? [];
|
|
447
|
+
const mcpPaths = [...getWorkspaceMcpConfigPaths(wsUris), getGlobalMcpConfigPath(workspace.fs.getUserHomeDir())];
|
|
448
|
+
const mcpResult = await loadMcpServerConfigs(workspace, logging, mcpPaths);
|
|
449
|
+
// MCP configs have precedence over agent configs
|
|
450
|
+
// Merge MCP servers into the result, overriding any from agent config
|
|
451
|
+
for (const [sanitizedName, mcpConfig] of mcpResult.servers) {
|
|
452
|
+
const originalName = mcpResult.serverNameMapping.get(sanitizedName);
|
|
453
|
+
if (originalName) {
|
|
454
|
+
servers.set(sanitizedName, mcpConfig);
|
|
455
|
+
serverNameMapping.set(sanitizedName, originalName);
|
|
456
|
+
// Add MCP server tools to agent config for permission management
|
|
457
|
+
const serverPrefix = `@${originalName}`;
|
|
458
|
+
if (!agentConfig.tools.includes(serverPrefix)) {
|
|
459
|
+
agentConfig.tools.push(serverPrefix);
|
|
460
|
+
}
|
|
461
|
+
logging.info(`Loaded MCP server '${originalName}' from legacy MCP config`);
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
// Merge MCP config errors
|
|
465
|
+
for (const [key, error] of mcpResult.errors) {
|
|
466
|
+
configErrors.set(`mcp_${key}`, error);
|
|
467
|
+
}
|
|
468
|
+
logging.info(`Loaded ${mcpResult.servers.size} servers from legacy MCP configs`);
|
|
469
|
+
}
|
|
422
470
|
// Return the agent config, servers, server name mapping, and errors
|
|
423
|
-
logging.info(`Successfully processed ${uniquePaths.length} agent config files`);
|
|
471
|
+
logging.info(`Successfully processed ${uniquePaths.length} agent config files and ${agentConfig.useLegacyMcpJson ? 'legacy MCP configs' : 'no legacy MCP configs'}`);
|
|
424
472
|
return {
|
|
425
473
|
servers,
|
|
426
474
|
serverNameMapping,
|
|
@@ -513,7 +561,10 @@ async function loadPersonaPermissions(workspace, logging, personaPaths) {
|
|
|
513
561
|
}
|
|
514
562
|
/** Given an array of workspace diretory, return each workspace persona config location */
|
|
515
563
|
function getWorkspacePersonaConfigPaths(wsUris) {
|
|
516
|
-
return wsUris.map(uri =>
|
|
564
|
+
return wsUris.map(uri => {
|
|
565
|
+
const fsPath = normalizePathFromUri(uri);
|
|
566
|
+
return path.join(fsPath, '.amazonq', 'personas', 'default.json');
|
|
567
|
+
});
|
|
517
568
|
}
|
|
518
569
|
/** Given a user's home directory, return the global persona config location */
|
|
519
570
|
function getGlobalPersonaConfigPath(home) {
|
|
@@ -521,7 +572,10 @@ function getGlobalPersonaConfigPath(home) {
|
|
|
521
572
|
}
|
|
522
573
|
/** Given an array of workspace diretory, return each workspace agent config location */
|
|
523
574
|
function getWorkspaceAgentConfigPaths(wsUris) {
|
|
524
|
-
return wsUris.map(uri =>
|
|
575
|
+
return wsUris.map(uri => {
|
|
576
|
+
const fsPath = normalizePathFromUri(uri);
|
|
577
|
+
return path.join(fsPath, '.amazonq', 'agents', 'default.json');
|
|
578
|
+
});
|
|
525
579
|
}
|
|
526
580
|
/** Given a user's home directory, return the global agent config location */
|
|
527
581
|
function getGlobalAgentConfigPath(home) {
|
|
@@ -529,7 +583,10 @@ function getGlobalAgentConfigPath(home) {
|
|
|
529
583
|
}
|
|
530
584
|
/** Given an array of workspace diretory, return each workspace mcp config location */
|
|
531
585
|
function getWorkspaceMcpConfigPaths(wsUris) {
|
|
532
|
-
return wsUris.map(uri =>
|
|
586
|
+
return wsUris.map(uri => {
|
|
587
|
+
const fsPath = normalizePathFromUri(uri);
|
|
588
|
+
return path.join(fsPath, '.amazonq', 'mcp.json');
|
|
589
|
+
});
|
|
533
590
|
}
|
|
534
591
|
/** Given a user's home directory, return the global mcp config location */
|
|
535
592
|
function getGlobalMcpConfigPath(homeDir) {
|
|
@@ -555,22 +612,7 @@ function enabledMCP(params) {
|
|
|
555
612
|
* Convert from persona format to agent format
|
|
556
613
|
*/
|
|
557
614
|
function convertPersonaToAgent(persona, mcpServers, featureAgent) {
|
|
558
|
-
const agent =
|
|
559
|
-
name: 'amazon_q_default',
|
|
560
|
-
description: 'Default agent configuration',
|
|
561
|
-
prompt: '',
|
|
562
|
-
mcpServers: {},
|
|
563
|
-
tools: [],
|
|
564
|
-
toolAliases: {},
|
|
565
|
-
allowedTools: [],
|
|
566
|
-
toolsSettings: {},
|
|
567
|
-
resources: [],
|
|
568
|
-
hooks: {
|
|
569
|
-
agentSpawn: [],
|
|
570
|
-
userPromptSubmit: [],
|
|
571
|
-
},
|
|
572
|
-
useLegacyMcpJson: false,
|
|
573
|
-
};
|
|
615
|
+
const agent = JSON.parse(DEFAULT_AGENT_RAW);
|
|
574
616
|
// Include all servers from MCP config
|
|
575
617
|
Object.entries(mcpServers).forEach(([name, config]) => {
|
|
576
618
|
agent.mcpServers[name] = {
|
|
@@ -823,7 +865,7 @@ async function saveAgentConfig(workspace, logging, config, configPath) {
|
|
|
823
865
|
/**
|
|
824
866
|
* Save only server-specific changes to agent config file
|
|
825
867
|
*/
|
|
826
|
-
async function saveServerSpecificAgentConfig(workspace, logging, serverName, serverConfig, serverTools, serverAllowedTools, configPath) {
|
|
868
|
+
async function saveServerSpecificAgentConfig(workspace, logging, serverName, serverConfig, serverTools, serverAllowedTools, configPath, isLegacyMcpServer = false) {
|
|
827
869
|
try {
|
|
828
870
|
await workspace.fs.mkdir(path.dirname(configPath), { recursive: true });
|
|
829
871
|
// Read existing config
|
|
@@ -834,32 +876,25 @@ async function saveServerSpecificAgentConfig(workspace, logging, serverName, ser
|
|
|
834
876
|
}
|
|
835
877
|
catch {
|
|
836
878
|
// If file doesn't exist, create minimal config
|
|
837
|
-
existingConfig =
|
|
838
|
-
name: 'amazon_q_default',
|
|
839
|
-
description: 'Agent configuration',
|
|
840
|
-
mcpServers: {},
|
|
841
|
-
tools: [],
|
|
842
|
-
allowedTools: [],
|
|
843
|
-
toolsSettings: {},
|
|
844
|
-
includedFiles: [],
|
|
845
|
-
resources: [],
|
|
846
|
-
};
|
|
879
|
+
existingConfig = JSON.parse(DEFAULT_AGENT_RAW);
|
|
847
880
|
}
|
|
848
881
|
// Remove existing server tools from arrays
|
|
849
882
|
const serverPrefix = `@${serverName}`;
|
|
850
883
|
existingConfig.tools = existingConfig.tools.filter(tool => tool !== serverPrefix && !tool.startsWith(`${serverPrefix}/`));
|
|
851
884
|
existingConfig.allowedTools = existingConfig.allowedTools.filter(tool => tool !== serverPrefix && !tool.startsWith(`${serverPrefix}/`));
|
|
852
|
-
if (
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
existingConfig.allowedTools.push(...serverAllowedTools);
|
|
885
|
+
if (!isLegacyMcpServer) {
|
|
886
|
+
if (serverConfig === null) {
|
|
887
|
+
// Remove server entirely
|
|
888
|
+
delete existingConfig.mcpServers[serverName];
|
|
889
|
+
}
|
|
890
|
+
else {
|
|
891
|
+
// Update or add server
|
|
892
|
+
existingConfig.mcpServers[serverName] = serverConfig;
|
|
893
|
+
}
|
|
862
894
|
}
|
|
895
|
+
// Add new server tools
|
|
896
|
+
existingConfig.tools.push(...serverTools);
|
|
897
|
+
existingConfig.allowedTools.push(...serverAllowedTools);
|
|
863
898
|
await workspace.fs.writeFile(configPath, JSON.stringify(existingConfig, null, 2));
|
|
864
899
|
logging.info(`Saved server-specific agent config for ${serverName} to ${configPath}`);
|
|
865
900
|
}
|
|
@@ -879,9 +914,9 @@ async function migrateAgentConfigToCLIFormat(workspace, logging, configPath) {
|
|
|
879
914
|
const raw = await workspace.fs.readFile(configPath);
|
|
880
915
|
const config = JSON.parse(raw.toString());
|
|
881
916
|
let updated = false;
|
|
882
|
-
// Rename default-agent to
|
|
883
|
-
if (config.name
|
|
884
|
-
config.name = '
|
|
917
|
+
// Rename default-agent to q_ide_default
|
|
918
|
+
if (config.name !== 'q_ide_default') {
|
|
919
|
+
config.name = 'q_ide_default';
|
|
885
920
|
updated = true;
|
|
886
921
|
}
|
|
887
922
|
// Add missing CLI fields
|
|
@@ -893,10 +928,6 @@ async function migrateAgentConfigToCLIFormat(workspace, logging, configPath) {
|
|
|
893
928
|
config.toolAliases = {};
|
|
894
929
|
updated = true;
|
|
895
930
|
}
|
|
896
|
-
if (!config.hasOwnProperty('useLegacyMcpJson')) {
|
|
897
|
-
config.useLegacyMcpJson = false;
|
|
898
|
-
updated = true;
|
|
899
|
-
}
|
|
900
931
|
// Remove deprecated fields
|
|
901
932
|
if (config.hasOwnProperty('version')) {
|
|
902
933
|
delete config.version;
|
|
@@ -934,6 +965,8 @@ async function migrateAgentConfigToCLIFormat(workspace, logging, configPath) {
|
|
|
934
965
|
updated = true;
|
|
935
966
|
}
|
|
936
967
|
}
|
|
968
|
+
config.useLegacyMcpJson = true;
|
|
969
|
+
updated = true;
|
|
937
970
|
if (updated) {
|
|
938
971
|
await workspace.fs.writeFile(configPath, JSON.stringify(config, null, 2));
|
|
939
972
|
logging.info(`Migrated agent config to CLI format: ${configPath}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcpUtils.js","sourceRoot":"","sources":["../../../../../src/language-server/agenticChat/tools/mcp/mcpUtils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcpUtils.js","sourceRoot":"","sources":["../../../../../src/language-server/agenticChat/tools/mcp/mcpUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -82,9 +82,17 @@ class CodeReview {
|
|
|
82
82
|
setup.isFullReviewRequest = true;
|
|
83
83
|
this.overrideDiffScan = true;
|
|
84
84
|
}
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
85
|
+
let reviewMessage;
|
|
86
|
+
if (nonRuleFiles == 1) {
|
|
87
|
+
reviewMessage = setup.isFullReviewRequest
|
|
88
|
+
? `Reviewing the code in ${path.basename(uploadResult.filePathsInZip.values().next().value)}...`
|
|
89
|
+
: `Reviewing uncommitted changes in ${path.basename(uploadResult.filePathsInZip.values().next().value)}...`;
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
reviewMessage = setup.isFullReviewRequest
|
|
93
|
+
? `Reviewing the code in ${nonRuleFiles} files}...`
|
|
94
|
+
: `Reviewing uncommitted changes in ${diffFiles} of ${nonRuleFiles} files}...`;
|
|
95
|
+
}
|
|
88
96
|
await chatStreamWriter?.write(reviewMessage);
|
|
89
97
|
// 4. Wait for scan to complete
|
|
90
98
|
await this.pollForCompletion(analysisResult.jobId, setup, uploadResult, chatStreamWriter);
|
|
@@ -164,7 +172,7 @@ class CodeReview {
|
|
|
164
172
|
* @returns Upload result with uploadId or error message
|
|
165
173
|
*/
|
|
166
174
|
async prepareAndUploadArtifacts(setup) {
|
|
167
|
-
const { zipBuffer, md5Hash, isCodeDiffPresent, programmingLanguages, numberOfFilesInCustomerCodeZip, codeDiffFiles, } = await this.prepareFilesAndFoldersForUpload(setup.fileArtifacts, setup.folderArtifacts, setup.ruleArtifacts, setup.isFullReviewRequest);
|
|
175
|
+
const { zipBuffer, md5Hash, isCodeDiffPresent, programmingLanguages, numberOfFilesInCustomerCodeZip, codeDiffFiles, filePathsInZip, } = await this.prepareFilesAndFoldersForUpload(setup.fileArtifacts, setup.folderArtifacts, setup.ruleArtifacts, setup.isFullReviewRequest);
|
|
168
176
|
const uploadUrlResponse = await this.codeWhispererClient.createUploadUrl({
|
|
169
177
|
contentLength: zipBuffer.length,
|
|
170
178
|
contentMd5: md5Hash,
|
|
@@ -198,6 +206,7 @@ class CodeReview {
|
|
|
198
206
|
programmingLanguages: programmingLanguages,
|
|
199
207
|
numberOfFilesInCustomerCodeZip,
|
|
200
208
|
codeDiffFiles,
|
|
209
|
+
filePathsInZip,
|
|
201
210
|
};
|
|
202
211
|
}
|
|
203
212
|
/**
|
|
@@ -422,7 +431,7 @@ class CodeReview {
|
|
|
422
431
|
const customerCodeZip = new JSZip();
|
|
423
432
|
// Process files and folders
|
|
424
433
|
const { codeDiff, programmingLanguages, codeDiffFiles } = await this.processArtifacts(fileArtifacts, folderArtifacts, ruleArtifacts, customerCodeZip, !isFullReviewRequest);
|
|
425
|
-
let numberOfFilesInCustomerCodeZip = codeReviewUtils_1.CodeReviewUtils.countZipFiles(customerCodeZip);
|
|
434
|
+
let [numberOfFilesInCustomerCodeZip, filePathsInZip] = codeReviewUtils_1.CodeReviewUtils.countZipFiles(customerCodeZip);
|
|
426
435
|
if (numberOfFilesInCustomerCodeZip > ruleArtifacts.length) {
|
|
427
436
|
// Validates that there are actual files to scan, other than rule artifacts
|
|
428
437
|
this.logging.info(`Total files in customerCodeZip - ${numberOfFilesInCustomerCodeZip}`);
|
|
@@ -455,6 +464,7 @@ class CodeReview {
|
|
|
455
464
|
programmingLanguages,
|
|
456
465
|
numberOfFilesInCustomerCodeZip,
|
|
457
466
|
codeDiffFiles,
|
|
467
|
+
filePathsInZip,
|
|
458
468
|
};
|
|
459
469
|
}
|
|
460
470
|
catch (error) {
|