@theia/ai-terminal 1.71.0-next.6 → 1.71.0-next.72

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.
@@ -18,6 +18,7 @@ export declare class ShellExecutionToolRenderer implements ChatResponsePartRende
18
18
  protected shellCommandPermissionService: ShellCommandPermissionService;
19
19
  protected commandRegistry: CommandRegistry;
20
20
  canHandle(response: ChatResponseContent): number;
21
+ renderConfirmation(response: ToolCallChatResponseContent, parentNode: ResponseNode): ReactNode;
21
22
  render(response: ToolCallChatResponseContent, parentNode: ResponseNode): ReactNode;
22
23
  }
23
24
  //# sourceMappingURL=shell-execution-tool-renderer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shell-execution-tool-renderer.d.ts","sourceRoot":"","sources":["../../src/browser/shell-execution-tool-renderer.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,wBAAwB,EAAE,MAAM,2DAA2D,CAAC;AACrG,OAAO,EAAE,YAAY,EAAE,MAAM,8CAA8C,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAE7F,OAAO,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAe,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAO,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAW,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAG7E,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AASnF,qBACa,0BAA2B,YAAW,wBAAwB,CAAC,2BAA2B,CAAC;IAGpG,SAAS,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAG3D,SAAS,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAGzD,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAGjD,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAG7C,SAAS,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAGnD,SAAS,CAAC,6BAA6B,EAAE,6BAA6B,CAAC;IAGvE,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;IAE3C,SAAS,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAOhD,MAAM,CAAC,QAAQ,EAAE,2BAA2B,EAAE,UAAU,EAAE,YAAY,GAAG,SAAS;CA0BrF"}
1
+ {"version":3,"file":"shell-execution-tool-renderer.d.ts","sourceRoot":"","sources":["../../src/browser/shell-execution-tool-renderer.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,wBAAwB,EAAE,MAAM,2DAA2D,CAAC;AACrG,OAAO,EAAE,YAAY,EAAE,MAAM,8CAA8C,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAE7F,OAAO,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAe,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAO,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAW,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAG7E,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AASnF,qBACa,0BAA2B,YAAW,wBAAwB,CAAC,2BAA2B,CAAC;IAGpG,SAAS,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAG3D,SAAS,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAGzD,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAGjD,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAG7C,SAAS,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAGnD,SAAS,CAAC,6BAA6B,EAAE,6BAA6B,CAAC;IAGvE,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;IAE3C,SAAS,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAOhD,kBAAkB,CAAC,QAAQ,EAAE,2BAA2B,EAAE,UAAU,EAAE,YAAY,GAAG,SAAS;IAgD9F,MAAM,CAAC,QAAQ,EAAE,2BAA2B,EAAE,UAAU,EAAE,YAAY,GAAG,SAAS;CA0BrF"}
@@ -40,6 +40,42 @@ let ShellExecutionToolRenderer = class ShellExecutionToolRenderer {
40
40
  }
41
41
  return -1;
42
42
  }
43
+ renderConfirmation(response, parentNode) {
44
+ const chatId = parentNode.sessionId;
45
+ const toolRequest = this.toolInvocationRegistry.getFunction(shell_execution_server_1.SHELL_EXECUTION_FUNCTION_ID);
46
+ const input = (0, shell_execution_input_parser_1.parseShellExecutionInput)(response.arguments);
47
+ const handleAllow = (patterns) => {
48
+ if (patterns && patterns.length > 0) {
49
+ try {
50
+ this.shellCommandPermissionService.addAllowlistPatterns(...patterns);
51
+ }
52
+ catch (err) {
53
+ console.warn('Failed to add allowlist patterns:', err);
54
+ }
55
+ }
56
+ response.confirm();
57
+ };
58
+ const handleDeny = (options) => {
59
+ if (options?.patterns && options.patterns.length > 0) {
60
+ try {
61
+ this.shellCommandPermissionService.addDenylistPatterns(...options.patterns);
62
+ }
63
+ catch (err) {
64
+ console.warn('Failed to add denylist patterns:', err);
65
+ }
66
+ }
67
+ response.deny(options?.reason);
68
+ };
69
+ const handleAllowAllForever = () => {
70
+ this.toolConfirmationManager.setConfirmationMode(shell_execution_server_1.SHELL_EXECUTION_FUNCTION_ID, chat_tool_preferences_1.ToolConfirmationMode.ALWAYS_ALLOW, toolRequest);
71
+ response.confirm();
72
+ };
73
+ const handleAllowAllSession = () => {
74
+ this.toolConfirmationManager.setSessionConfirmationMode(shell_execution_server_1.SHELL_EXECUTION_FUNCTION_ID, chat_tool_preferences_1.ToolConfirmationMode.ALWAYS_ALLOW, chatId);
75
+ response.confirm();
76
+ };
77
+ return (React.createElement(ConfirmationUI, { input: input, shellCommandPermissionService: this.shellCommandPermissionService, onAllow: handleAllow, onAllowAllForever: handleAllowAllForever, onAllowAllSession: handleAllowAllSession, onDeny: handleDeny, contextMenuRenderer: this.contextMenuRenderer, response: response }));
78
+ }
43
79
  render(response, parentNode) {
44
80
  const chatId = parentNode.sessionId;
45
81
  const toolRequest = this.toolInvocationRegistry.getFunction(shell_execution_server_1.SHELL_EXECUTION_FUNCTION_ID);
@@ -174,7 +210,7 @@ const ShellExecutionToolComponent = ({ response, input, confirmationMode, toolCo
174
210
  return (React.createElement("div", { className: "shell-execution-tool container" },
175
211
  React.createElement("div", { className: "shell-execution-tool header running" },
176
212
  React.createElement("span", { className: (0, browser_1.codicon)('terminal') }),
177
- React.createElement("code", { className: "shell-execution-tool command-preview" }, truncateCommand(input.command)),
213
+ React.createElement("code", { className: "shell-execution-tool command-preview", title: input.description }, truncateCommand(input.command)),
178
214
  React.createElement("span", { className: "shell-execution-tool meta-badges" },
179
215
  React.createElement("span", { className: `${(0, browser_1.codicon)('loading')} shell-execution-tool status-icon theia-animation-spin` })))));
180
216
  }
@@ -203,6 +239,7 @@ const ConfirmationUI = ({ input, shellCommandPermissionService, onAllow, onAllow
203
239
  React.createElement("div", { className: "shell-execution-tool confirmation-header" },
204
240
  React.createElement("span", { className: (0, browser_1.codicon)('shield') }),
205
241
  React.createElement("span", { className: "shell-execution-tool confirmation-title" }, common_2.nls.localize('theia/ai-terminal/confirmExecution', 'Confirm Shell Command'))),
242
+ input.description && (React.createElement("div", { className: "shell-execution-tool command-description" }, input.description)),
206
243
  React.createElement("div", { className: "shell-execution-tool command-display confirmation" },
207
244
  React.createElement("code", null, input.command)),
208
245
  React.createElement("div", { className: "shell-execution-tool confirmation-meta" },
@@ -356,7 +393,7 @@ const ConfigurationLink = ({ openPermissionsConfiguration }) => {
356
393
  const RunningUI = ({ input, onCancel }) => (React.createElement("div", { className: "shell-execution-tool container" },
357
394
  React.createElement("div", { className: "shell-execution-tool header running" },
358
395
  React.createElement("span", { className: (0, browser_1.codicon)('terminal') }),
359
- React.createElement("code", { className: "shell-execution-tool command-preview" }, truncateCommand(input.command)),
396
+ React.createElement("code", { className: "shell-execution-tool command-preview", title: input.description }, truncateCommand(input.command)),
360
397
  React.createElement("span", { className: "shell-execution-tool meta-badges" },
361
398
  React.createElement("button", { className: "shell-execution-tool cancel-button", onClick: onCancel, title: common_2.nls.localize('theia/ai-terminal/cancelExecution', 'Cancel command execution') },
362
399
  React.createElement("span", { className: (0, browser_1.codicon)('debug-stop') })),
@@ -364,7 +401,7 @@ const RunningUI = ({ input, onCancel }) => (React.createElement("div", { classNa
364
401
  const CancelingUI = ({ input }) => (React.createElement("div", { className: "shell-execution-tool container" },
365
402
  React.createElement("div", { className: "shell-execution-tool header canceling" },
366
403
  React.createElement("span", { className: (0, browser_1.codicon)('terminal') }),
367
- React.createElement("code", { className: "shell-execution-tool command-preview" }, truncateCommand(input.command)),
404
+ React.createElement("code", { className: "shell-execution-tool command-preview", title: input.description }, truncateCommand(input.command)),
368
405
  React.createElement("span", { className: "shell-execution-tool meta-badges" },
369
406
  React.createElement("span", { className: "shell-execution-tool status-label canceling" },
370
407
  React.createElement("span", { className: `${(0, browser_1.codicon)('loading')} theia-animation-spin` }),
@@ -382,10 +419,11 @@ const DeniedUI = ({ input, confirmationState, denialReason, clipboardService })
382
419
  return (React.createElement("div", { className: `shell-execution-tool container ${isExpanded ? 'expanded' : ''}` },
383
420
  React.createElement("div", { className: "shell-execution-tool header error", onClick: () => setIsExpanded(!isExpanded) },
384
421
  React.createElement("span", { className: (0, browser_1.codicon)('terminal') }),
385
- React.createElement("code", { className: "shell-execution-tool command-preview" }, truncateCommand(input.command)),
422
+ React.createElement("code", { className: "shell-execution-tool command-preview", title: input.description }, truncateCommand(input.command)),
386
423
  React.createElement("span", { className: "shell-execution-tool meta-badges" },
387
424
  React.createElement("span", { className: "shell-execution-tool status-label error" }, getStatusLabel()))),
388
425
  isExpanded && (React.createElement("div", { className: "shell-execution-tool expanded-content" },
426
+ input.description && (React.createElement("div", { className: "shell-execution-tool command-description" }, input.description)),
389
427
  React.createElement(CommandDisplay, { command: input.command, clipboardService: clipboardService }),
390
428
  input.cwd && (React.createElement(MetaRow, { icon: "folder", label: common_2.nls.localize('theia/ai-terminal/workingDirectory', 'Working directory') }, input.cwd)),
391
429
  denialReason && (React.createElement("div", { className: "shell-execution-tool denial-reason" },
@@ -399,11 +437,12 @@ const CanceledUI = ({ input, canceledResult, clipboardService }) => {
399
437
  return (React.createElement("div", { className: `shell-execution-tool container ${isExpanded ? 'expanded' : ''}` },
400
438
  React.createElement("div", { className: "shell-execution-tool header canceled", onClick: () => setIsExpanded(!isExpanded) },
401
439
  React.createElement("span", { className: (0, browser_1.codicon)('terminal') }),
402
- React.createElement("code", { className: "shell-execution-tool command-preview" }, truncateCommand(input.command)),
440
+ React.createElement("code", { className: "shell-execution-tool command-preview", title: input.description }, truncateCommand(input.command)),
403
441
  React.createElement("span", { className: "shell-execution-tool meta-badges" },
404
442
  canceledResult?.duration !== undefined && (React.createElement("span", { className: "shell-execution-tool duration" }, formatDuration(canceledResult.duration))),
405
443
  React.createElement("span", { className: "shell-execution-tool status-label canceled" }, common_2.nls.localize('theia/ai-terminal/executionCanceled', 'Canceled')))),
406
444
  isExpanded && (React.createElement("div", { className: "shell-execution-tool expanded-content" },
445
+ input.description && (React.createElement("div", { className: "shell-execution-tool command-description" }, input.description)),
407
446
  React.createElement(CommandDisplay, { command: input.command, clipboardService: clipboardService }),
408
447
  input.cwd && (React.createElement(MetaRow, { icon: "folder", label: common_2.nls.localize('theia/ai-terminal/workingDirectory', 'Working directory') }, input.cwd)),
409
448
  canceledResult?.output && (React.createElement(OutputBox, { title: common_2.nls.localize('theia/ai-terminal/partialOutput', 'Partial Output'), output: canceledResult.output, clipboardService: clipboardService }))))));
@@ -414,12 +453,13 @@ const FinishedUI = ({ input, result, clipboardService }) => {
414
453
  return (React.createElement("div", { className: `shell-execution-tool container ${isExpanded ? 'expanded' : ''}` },
415
454
  React.createElement("div", { className: `shell-execution-tool header finished ${isSuccess ? 'success' : 'failure'}`, onClick: () => setIsExpanded(!isExpanded) },
416
455
  React.createElement("span", { className: (0, browser_1.codicon)('terminal') }),
417
- React.createElement("code", { className: "shell-execution-tool command-preview" }, truncateCommand(input.command)),
456
+ React.createElement("code", { className: "shell-execution-tool command-preview", title: input.description }, truncateCommand(input.command)),
418
457
  React.createElement("span", { className: "shell-execution-tool meta-badges" },
419
458
  result?.duration !== undefined && (React.createElement("span", { className: "shell-execution-tool duration" }, formatDuration(result.duration))),
420
459
  result?.exitCode !== undefined && result.exitCode !== 0 && (React.createElement("span", { className: "shell-execution-tool exit-code" }, result.exitCode)),
421
460
  React.createElement("span", { className: `${(0, browser_1.codicon)(isSuccess ? 'check' : 'error')} shell-execution-tool status-icon ${isSuccess ? 'success' : 'failure'}` }))),
422
461
  isExpanded && (React.createElement("div", { className: "shell-execution-tool expanded-content" },
462
+ input.description && (React.createElement("div", { className: "shell-execution-tool command-description" }, input.description)),
423
463
  React.createElement(CommandDisplay, { command: input.command, clipboardService: clipboardService }),
424
464
  (result?.cwd || input.cwd) && (React.createElement(MetaRow, { icon: "folder", label: common_2.nls.localize('theia/ai-terminal/workingDirectory', 'Working directory') }, result?.cwd || input.cwd)),
425
465
  result?.error && (React.createElement("div", { className: "shell-execution-tool error-message" }, result.error)),
@@ -1 +1 @@
1
- {"version":3,"file":"shell-execution-tool-renderer.js","sourceRoot":"","sources":["../../src/browser/shell-execution-tool-renderer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shell-execution-tool-renderer.js","sourceRoot":"","sources":["../../src/browser/shell-execution-tool-renderer.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"shell-execution-tool.d.ts","sourceRoot":"","sources":["../../src/browser/shell-execution-tool.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAoB,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAEH,oBAAoB,EACpB,wBAAwB,EACxB,4BAA4B,EAE/B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAgB,MAAM,aAAa,CAAC;AAE9D,qBACa,kBAAmB,YAAW,YAAY;IAGnD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC;IAGrD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,6BAA6B,EAAE,6BAA6B,CAAC;IAEhF,SAAS,CAAC,QAAQ,CAAC,iBAAiB,sBAA6B;IAE3D,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAY3D,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAI/C,OAAO,IAAI,WAAW;cAiFN,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,wBAAwB,GAAG,4BAA4B,CAAC;IA+DlI,SAAS,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS;IAO7D,SAAS,CAAC,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,iBAAiB,GAAG,SAAS;IAa/E,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;CAGvE"}
1
+ {"version":3,"file":"shell-execution-tool.d.ts","sourceRoot":"","sources":["../../src/browser/shell-execution-tool.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAoB,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAEH,oBAAoB,EACpB,wBAAwB,EACxB,4BAA4B,EAE/B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAgB,MAAM,aAAa,CAAC;AAE9D,qBACa,kBAAmB,YAAW,YAAY;IAGnD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC;IAGrD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,6BAA6B,EAAE,6BAA6B,CAAC;IAEhF,SAAS,CAAC,QAAQ,CAAC,iBAAiB,sBAA6B;IAE3D,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAY3D,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAI/C,OAAO,IAAI,WAAW;cAwGN,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,wBAAwB,GAAG,4BAA4B,CAAC;IA+DlI,SAAS,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS;IAO7D,SAAS,CAAC,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,iBAAiB,GAAG,SAAS;IAa/E,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;CAGvE"}
@@ -87,6 +87,29 @@ TIMEOUT: Default 2 minutes, max 10 minutes. Specify higher timeout for longer co
87
87
  type: 'string',
88
88
  description: 'The shell command to execute. Can include pipes, redirects, and shell features.'
89
89
  },
90
+ description: {
91
+ type: 'string',
92
+ description: 'Describe what this command actually does in active voice, ' +
93
+ 'so the user can verify the command matches their intent without ' +
94
+ 'parsing flags or shell syntax themselves. ' +
95
+ 'Never use words like "complex" or "risk".\n\n' +
96
+ 'Reflect the actual mechanics of the command: significant flags, ' +
97
+ 'filters, pipes, and output limits. When a less obvious tool or ' +
98
+ 'flag is chosen (e.g. `find` instead of `ls`, `-type f`, `head`, ' +
99
+ '`sort`), state its effect rather than only the high-level goal.\n\n' +
100
+ 'For simple commands (git, npm, standard CLI tools), keep it brief (5-10 words):\n' +
101
+ '- cat README.md -> "Print README file contents"\n' +
102
+ '- git diff HEAD~1 -> "Show changes from last commit"\n' +
103
+ '- npm test -> "Run project test suite"\n\n' +
104
+ 'For longer or piped commands, add enough context to clarify intent and behavior:\n' +
105
+ '- grep -rn "TODO" src/ --include="*.ts" -> "Search TypeScript files in src for TODO comments"\n' +
106
+ '- git log --oneline --since="1 week" | wc -l -> "Count commits from the past week"\n' +
107
+ '- du -sh node_modules/* | sort -rh | head -5 -> "Show 5 largest packages in node_modules by size"\n' +
108
+ '- find . -type f | head -100 -> "Recursively list up to the first 100 files (excluding directories) under the current directory"\n\n' +
109
+ 'Avoid descriptions that state only the intent and hide the mechanics ' +
110
+ '(e.g. "List all files in the workspace" for `find . -type f | head -100` ' +
111
+ 'is too vague — it omits the recursion, file-only filter, and 100-entry limit).'
112
+ },
90
113
  cwd: {
91
114
  type: 'string',
92
115
  description: 'Working directory for command execution. Can be absolute or relative to workspace root. Defaults to the workspace root.'
@@ -96,7 +119,7 @@ TIMEOUT: Default 2 minutes, max 10 minutes. Specify higher timeout for longer co
96
119
  description: 'Timeout in milliseconds. Default: 120000 (2 minutes). Max: 600000 (10 minutes).'
97
120
  }
98
121
  },
99
- required: ['command']
122
+ required: ['command', 'description']
100
123
  },
101
124
  handler: (argString, ctx) => this.executeCommand(argString, ctx),
102
125
  checkAutoAction: (argString) => {
@@ -1 +1 @@
1
- {"version":3,"file":"shell-execution-tool.js","sourceRoot":"","sources":["../../src/browser/shell-execution-tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shell-execution-tool.js","sourceRoot":"","sources":["../../src/browser/shell-execution-tool.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  export interface ShellExecutionInput {
2
2
  command: string;
3
+ description?: string;
3
4
  cwd?: string;
4
5
  timeout?: number;
5
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shell-execution-input-parser.d.ts","sourceRoot":"","sources":["../../src/common/shell-execution-input-parser.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,mBAAmB,CAYtF"}
1
+ {"version":3,"file":"shell-execution-input-parser.d.ts","sourceRoot":"","sources":["../../src/common/shell-execution-input-parser.ts"],"names":[],"mappings":"AAkBA,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,mBAAmB,CAUtF"}
@@ -16,6 +16,7 @@
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.parseShellExecutionInput = parseShellExecutionInput;
19
+ const toolcall_utils_1 = require("@theia/ai-chat-ui/lib/common/toolcall-utils");
19
20
  /**
20
21
  * Parses shell execution input from potentially incomplete JSON.
21
22
  * During streaming, extracts partial command value via regex when JSON.parse fails.
@@ -28,9 +29,7 @@ function parseShellExecutionInput(args) {
28
29
  return JSON.parse(args);
29
30
  }
30
31
  catch {
31
- // Extract command from incomplete JSON: "command": "value or "command":"value
32
- const match = /"command"\s*:\s*"([^"]*)"?/.exec(args);
33
- return { command: match?.[1] ?? '' };
32
+ return { command: (0, toolcall_utils_1.extractJsonStringField)(args, 'command') ?? '' };
34
33
  }
35
34
  }
36
35
  //# sourceMappingURL=shell-execution-input-parser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shell-execution-input-parser.js","sourceRoot":"","sources":["../../src/common/shell-execution-input-parser.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAYhF,4DAYC;AAhBD;;;GAGG;AACH,SAAgB,wBAAwB,CAAC,IAAwB;IAC7D,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAC3B,CAAC;IAED,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACL,8EAA8E;QAC9E,MAAM,KAAK,GAAG,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;IACzC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"shell-execution-input-parser.js","sourceRoot":"","sources":["../../src/common/shell-execution-input-parser.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAehF,4DAUC;AAvBD,gFAAqF;AASrF;;;GAGG;AACH,SAAgB,wBAAwB,CAAC,IAAwB;IAC7D,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAC3B,CAAC;IAED,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,EAAE,OAAO,EAAE,IAAA,uCAAsB,EAAC,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;IACtE,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@theia/ai-terminal",
3
- "version": "1.71.0-next.6+8b1f84c1b",
3
+ "version": "1.71.0-next.72+95c8dba0e",
4
4
  "description": "Theia - AI Terminal Extension",
5
5
  "dependencies": {
6
- "@theia/ai-chat": "1.71.0-next.6+8b1f84c1b",
7
- "@theia/ai-chat-ui": "1.71.0-next.6+8b1f84c1b",
8
- "@theia/ai-core": "1.71.0-next.6+8b1f84c1b",
9
- "@theia/core": "1.71.0-next.6+8b1f84c1b",
10
- "@theia/terminal": "1.71.0-next.6+8b1f84c1b",
11
- "@theia/workspace": "1.71.0-next.6+8b1f84c1b",
12
- "zod": "^4.2.1"
6
+ "@theia/ai-chat": "1.71.0-next.72+95c8dba0e",
7
+ "@theia/ai-chat-ui": "1.71.0-next.72+95c8dba0e",
8
+ "@theia/ai-core": "1.71.0-next.72+95c8dba0e",
9
+ "@theia/core": "1.71.0-next.72+95c8dba0e",
10
+ "@theia/terminal": "1.71.0-next.72+95c8dba0e",
11
+ "@theia/workspace": "1.71.0-next.72+95c8dba0e",
12
+ "zod": "^4.3.6"
13
13
  },
14
14
  "publishConfig": {
15
15
  "access": "public"
@@ -50,5 +50,5 @@
50
50
  "nyc": {
51
51
  "extends": "../../configs/nyc.json"
52
52
  },
53
- "gitHead": "8b1f84c1b0114a76a1f343f3a2935d68faca6927"
53
+ "gitHead": "95c8dba0ee6349c6be262ac2cf383909a3b62761"
54
54
  }
@@ -69,6 +69,54 @@ export class ShellExecutionToolRenderer implements ChatResponsePartRenderer<Tool
69
69
  return -1;
70
70
  }
71
71
 
72
+ renderConfirmation(response: ToolCallChatResponseContent, parentNode: ResponseNode): ReactNode {
73
+ const chatId = parentNode.sessionId;
74
+ const toolRequest = this.toolInvocationRegistry.getFunction(SHELL_EXECUTION_FUNCTION_ID);
75
+ const input = parseShellExecutionInput(response.arguments);
76
+
77
+ const handleAllow = (patterns?: string[]) => {
78
+ if (patterns && patterns.length > 0) {
79
+ try {
80
+ this.shellCommandPermissionService.addAllowlistPatterns(...patterns);
81
+ } catch (err) {
82
+ console.warn('Failed to add allowlist patterns:', err);
83
+ }
84
+ }
85
+ response.confirm();
86
+ };
87
+ const handleDeny = (options?: { patterns?: string[]; reason?: string }) => {
88
+ if (options?.patterns && options.patterns.length > 0) {
89
+ try {
90
+ this.shellCommandPermissionService.addDenylistPatterns(...options.patterns);
91
+ } catch (err) {
92
+ console.warn('Failed to add denylist patterns:', err);
93
+ }
94
+ }
95
+ response.deny(options?.reason);
96
+ };
97
+ const handleAllowAllForever = () => {
98
+ this.toolConfirmationManager.setConfirmationMode(SHELL_EXECUTION_FUNCTION_ID, ToolConfirmationPreferenceMode.ALWAYS_ALLOW, toolRequest);
99
+ response.confirm();
100
+ };
101
+ const handleAllowAllSession = () => {
102
+ this.toolConfirmationManager.setSessionConfirmationMode(SHELL_EXECUTION_FUNCTION_ID, ToolConfirmationPreferenceMode.ALWAYS_ALLOW, chatId);
103
+ response.confirm();
104
+ };
105
+
106
+ return (
107
+ <ConfirmationUI
108
+ input={input}
109
+ shellCommandPermissionService={this.shellCommandPermissionService}
110
+ onAllow={handleAllow}
111
+ onAllowAllForever={handleAllowAllForever}
112
+ onAllowAllSession={handleAllowAllSession}
113
+ onDeny={handleDeny}
114
+ contextMenuRenderer={this.contextMenuRenderer}
115
+ response={response}
116
+ />
117
+ );
118
+ }
119
+
72
120
  render(response: ToolCallChatResponseContent, parentNode: ResponseNode): ReactNode {
73
121
  const chatId = parentNode.sessionId;
74
122
  const toolRequest = this.toolInvocationRegistry.getFunction(SHELL_EXECUTION_FUNCTION_ID);
@@ -234,7 +282,7 @@ const ShellExecutionToolComponent: React.FC<ShellExecutionToolComponentProps> =
234
282
  <div className="shell-execution-tool container">
235
283
  <div className="shell-execution-tool header running">
236
284
  <span className={codicon('terminal')} />
237
- <code className="shell-execution-tool command-preview">{truncateCommand(input.command)}</code>
285
+ <code className="shell-execution-tool command-preview" title={input.description}>{truncateCommand(input.command)}</code>
238
286
  <span className="shell-execution-tool meta-badges">
239
287
  <span className={`${codicon('loading')} shell-execution-tool status-icon theia-animation-spin`} />
240
288
  </span>
@@ -339,6 +387,12 @@ const ConfirmationUI: React.FC<ConfirmationUIProps> = ({
339
387
  </span>
340
388
  </div>
341
389
 
390
+ {input.description && (
391
+ <div className="shell-execution-tool command-description">
392
+ {input.description}
393
+ </div>
394
+ )}
395
+
342
396
  <div className="shell-execution-tool command-display confirmation">
343
397
  <code>{input.command}</code>
344
398
  </div>
@@ -700,7 +754,7 @@ const RunningUI: React.FC<RunningUIProps> = ({
700
754
  <div className="shell-execution-tool container">
701
755
  <div className="shell-execution-tool header running">
702
756
  <span className={codicon('terminal')} />
703
- <code className="shell-execution-tool command-preview">{truncateCommand(input.command)}</code>
757
+ <code className="shell-execution-tool command-preview" title={input.description}>{truncateCommand(input.command)}</code>
704
758
  <span className="shell-execution-tool meta-badges">
705
759
  <button
706
760
  className="shell-execution-tool cancel-button"
@@ -723,7 +777,7 @@ const CancelingUI: React.FC<CancelingUIProps> = ({ input }) => (
723
777
  <div className="shell-execution-tool container">
724
778
  <div className="shell-execution-tool header canceling">
725
779
  <span className={codicon('terminal')} />
726
- <code className="shell-execution-tool command-preview">{truncateCommand(input.command)}</code>
780
+ <code className="shell-execution-tool command-preview" title={input.description}>{truncateCommand(input.command)}</code>
727
781
  <span className="shell-execution-tool meta-badges">
728
782
  <span className="shell-execution-tool status-label canceling">
729
783
  <span className={`${codicon('loading')} theia-animation-spin`} />
@@ -765,7 +819,7 @@ const DeniedUI: React.FC<DeniedUIProps> = ({
765
819
  onClick={() => setIsExpanded(!isExpanded)}
766
820
  >
767
821
  <span className={codicon('terminal')} />
768
- <code className="shell-execution-tool command-preview">{truncateCommand(input.command)}</code>
822
+ <code className="shell-execution-tool command-preview" title={input.description}>{truncateCommand(input.command)}</code>
769
823
  <span className="shell-execution-tool meta-badges">
770
824
  <span className="shell-execution-tool status-label error">
771
825
  {getStatusLabel()}
@@ -774,6 +828,11 @@ const DeniedUI: React.FC<DeniedUIProps> = ({
774
828
  </div>
775
829
  {isExpanded && (
776
830
  <div className="shell-execution-tool expanded-content">
831
+ {input.description && (
832
+ <div className="shell-execution-tool command-description">
833
+ {input.description}
834
+ </div>
835
+ )}
777
836
  <CommandDisplay command={input.command} clipboardService={clipboardService} />
778
837
  {input.cwd && (
779
838
  <MetaRow icon="folder" label={nls.localize('theia/ai-terminal/workingDirectory', 'Working directory')}>
@@ -817,7 +876,7 @@ const CanceledUI: React.FC<CanceledUIProps> = ({
817
876
  onClick={() => setIsExpanded(!isExpanded)}
818
877
  >
819
878
  <span className={codicon('terminal')} />
820
- <code className="shell-execution-tool command-preview">{truncateCommand(input.command)}</code>
879
+ <code className="shell-execution-tool command-preview" title={input.description}>{truncateCommand(input.command)}</code>
821
880
  <span className="shell-execution-tool meta-badges">
822
881
  {canceledResult?.duration !== undefined && (
823
882
  <span className="shell-execution-tool duration">{formatDuration(canceledResult.duration)}</span>
@@ -829,6 +888,11 @@ const CanceledUI: React.FC<CanceledUIProps> = ({
829
888
  </div>
830
889
  {isExpanded && (
831
890
  <div className="shell-execution-tool expanded-content">
891
+ {input.description && (
892
+ <div className="shell-execution-tool command-description">
893
+ {input.description}
894
+ </div>
895
+ )}
832
896
  <CommandDisplay command={input.command} clipboardService={clipboardService} />
833
897
  {input.cwd && (
834
898
  <MetaRow icon="folder" label={nls.localize('theia/ai-terminal/workingDirectory', 'Working directory')}>
@@ -869,7 +933,7 @@ const FinishedUI: React.FC<FinishedUIProps> = ({
869
933
  onClick={() => setIsExpanded(!isExpanded)}
870
934
  >
871
935
  <span className={codicon('terminal')} />
872
- <code className="shell-execution-tool command-preview">{truncateCommand(input.command)}</code>
936
+ <code className="shell-execution-tool command-preview" title={input.description}>{truncateCommand(input.command)}</code>
873
937
  <span className="shell-execution-tool meta-badges">
874
938
  {result?.duration !== undefined && (
875
939
  <span className="shell-execution-tool duration">{formatDuration(result.duration)}</span>
@@ -882,6 +946,11 @@ const FinishedUI: React.FC<FinishedUIProps> = ({
882
946
  </div>
883
947
  {isExpanded && (
884
948
  <div className="shell-execution-tool expanded-content">
949
+ {input.description && (
950
+ <div className="shell-execution-tool command-description">
951
+ {input.description}
952
+ </div>
953
+ )}
885
954
  <CommandDisplay command={input.command} clipboardService={clipboardService} />
886
955
  {(result?.cwd || input.cwd) && (
887
956
  <MetaRow icon="folder" label={nls.localize('theia/ai-terminal/workingDirectory', 'Working directory')}>
@@ -104,6 +104,29 @@ TIMEOUT: Default 2 minutes, max 10 minutes. Specify higher timeout for longer co
104
104
  type: 'string',
105
105
  description: 'The shell command to execute. Can include pipes, redirects, and shell features.'
106
106
  },
107
+ description: {
108
+ type: 'string',
109
+ description: 'Describe what this command actually does in active voice, ' +
110
+ 'so the user can verify the command matches their intent without ' +
111
+ 'parsing flags or shell syntax themselves. ' +
112
+ 'Never use words like "complex" or "risk".\n\n' +
113
+ 'Reflect the actual mechanics of the command: significant flags, ' +
114
+ 'filters, pipes, and output limits. When a less obvious tool or ' +
115
+ 'flag is chosen (e.g. `find` instead of `ls`, `-type f`, `head`, ' +
116
+ '`sort`), state its effect rather than only the high-level goal.\n\n' +
117
+ 'For simple commands (git, npm, standard CLI tools), keep it brief (5-10 words):\n' +
118
+ '- cat README.md -> "Print README file contents"\n' +
119
+ '- git diff HEAD~1 -> "Show changes from last commit"\n' +
120
+ '- npm test -> "Run project test suite"\n\n' +
121
+ 'For longer or piped commands, add enough context to clarify intent and behavior:\n' +
122
+ '- grep -rn "TODO" src/ --include="*.ts" -> "Search TypeScript files in src for TODO comments"\n' +
123
+ '- git log --oneline --since="1 week" | wc -l -> "Count commits from the past week"\n' +
124
+ '- du -sh node_modules/* | sort -rh | head -5 -> "Show 5 largest packages in node_modules by size"\n' +
125
+ '- find . -type f | head -100 -> "Recursively list up to the first 100 files (excluding directories) under the current directory"\n\n' +
126
+ 'Avoid descriptions that state only the intent and hide the mechanics ' +
127
+ '(e.g. "List all files in the workspace" for `find . -type f | head -100` ' +
128
+ 'is too vague — it omits the recursion, file-only filter, and 100-entry limit).'
129
+ },
107
130
  cwd: {
108
131
  type: 'string',
109
132
  description: 'Working directory for command execution. Can be absolute or relative to workspace root. Defaults to the workspace root.'
@@ -113,7 +136,7 @@ TIMEOUT: Default 2 minutes, max 10 minutes. Specify higher timeout for longer co
113
136
  description: 'Timeout in milliseconds. Default: 120000 (2 minutes). Max: 600000 (10 minutes).'
114
137
  }
115
138
  },
116
- required: ['command']
139
+ required: ['command', 'description']
117
140
  },
118
141
  handler: (argString: string, ctx?: unknown) => this.executeCommand(argString, ctx),
119
142
  checkAutoAction: (argString: string): AutoActionResult | undefined => {
@@ -184,6 +184,12 @@
184
184
  color: var(--theia-foreground);
185
185
  }
186
186
 
187
+ .shell-execution-tool.command-description {
188
+ color: var(--theia-descriptionForeground);
189
+ font-size: var(--theia-ui-font-size1);
190
+ margin-bottom: var(--theia-ui-padding);
191
+ }
192
+
187
193
  .shell-execution-tool.command-display {
188
194
  padding: var(--theia-ui-padding) calc(var(--theia-ui-padding) * 1.5);
189
195
  background-color: var(--theia-textCodeBlock-background);
@@ -14,8 +14,11 @@
14
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  // *****************************************************************************
16
16
 
17
+ import { extractJsonStringField } from '@theia/ai-chat-ui/lib/common/toolcall-utils';
18
+
17
19
  export interface ShellExecutionInput {
18
20
  command: string;
21
+ description?: string;
19
22
  cwd?: string;
20
23
  timeout?: number;
21
24
  }
@@ -32,8 +35,6 @@ export function parseShellExecutionInput(args: string | undefined): ShellExecuti
32
35
  try {
33
36
  return JSON.parse(args);
34
37
  } catch {
35
- // Extract command from incomplete JSON: "command": "value or "command":"value
36
- const match = /"command"\s*:\s*"([^"]*)"?/.exec(args);
37
- return { command: match?.[1] ?? '' };
38
+ return { command: extractJsonStringField(args, 'command') ?? '' };
38
39
  }
39
40
  }