@theia/ai-terminal 1.69.0-next.69 → 1.69.0

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 (35) hide show
  1. package/lib/browser/ai-terminal-contribution.js +2 -1
  2. package/lib/browser/ai-terminal-contribution.js.map +1 -1
  3. package/lib/browser/shell-command-permission-service.d.ts +24 -6
  4. package/lib/browser/shell-command-permission-service.d.ts.map +1 -1
  5. package/lib/browser/shell-command-permission-service.js +24 -11
  6. package/lib/browser/shell-command-permission-service.js.map +1 -1
  7. package/lib/browser/shell-command-permission-service.spec.js +118 -22
  8. package/lib/browser/shell-command-permission-service.spec.js.map +1 -1
  9. package/lib/browser/shell-execution-tool-renderer.d.ts +4 -0
  10. package/lib/browser/shell-execution-tool-renderer.d.ts.map +1 -1
  11. package/lib/browser/shell-execution-tool-renderer.js +228 -37
  12. package/lib/browser/shell-execution-tool-renderer.js.map +1 -1
  13. package/lib/common/shell-command-analyzer.d.ts.map +1 -1
  14. package/lib/common/shell-command-analyzer.js +6 -0
  15. package/lib/common/shell-command-analyzer.js.map +1 -1
  16. package/lib/common/shell-command-analyzer.spec.js +12 -0
  17. package/lib/common/shell-command-analyzer.spec.js.map +1 -1
  18. package/lib/common/shell-command-patterns.d.ts +37 -0
  19. package/lib/common/shell-command-patterns.d.ts.map +1 -0
  20. package/lib/common/shell-command-patterns.js +100 -0
  21. package/lib/common/shell-command-patterns.js.map +1 -0
  22. package/lib/common/shell-command-patterns.spec.d.ts +2 -0
  23. package/lib/common/shell-command-patterns.spec.d.ts.map +1 -0
  24. package/lib/common/shell-command-patterns.spec.js +174 -0
  25. package/lib/common/shell-command-patterns.spec.js.map +1 -0
  26. package/package.json +9 -9
  27. package/src/browser/ai-terminal-contribution.ts +4 -2
  28. package/src/browser/shell-command-permission-service.spec.ts +137 -22
  29. package/src/browser/shell-command-permission-service.ts +42 -11
  30. package/src/browser/shell-execution-tool-renderer.tsx +413 -28
  31. package/src/browser/style/shell-execution-tool.css +19 -0
  32. package/src/common/shell-command-analyzer.spec.ts +16 -0
  33. package/src/common/shell-command-analyzer.ts +6 -0
  34. package/src/common/shell-command-patterns.spec.ts +198 -0
  35. package/src/common/shell-command-patterns.ts +114 -0
@@ -172,7 +172,8 @@ class AiTerminalChatWidget {
172
172
  }
173
173
  getRecentTerminalCommands() {
174
174
  const maxLines = 100;
175
- return this.terminalWidget.buffer.getLines(0, this.terminalWidget.buffer.length > maxLines ? maxLines : this.terminalWidget.buffer.length);
175
+ const terminalBufferLength = this.terminalWidget.buffer.length;
176
+ return this.terminalWidget.buffer.getLines(Math.max(0, terminalBufferLength - maxLines), Math.min(maxLines, terminalBufferLength));
176
177
  }
177
178
  getNextCommandIndex(step) {
178
179
  const currentIndex = this.commands.indexOf(this.chatResultParagraph.innerText);
@@ -1 +1 @@
1
- {"version":3,"file":"ai-terminal-contribution.js","sourceRoot":"","sources":["../../src/browser/ai-terminal-contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-terminal-contribution.js","sourceRoot":"","sources":["../../src/browser/ai-terminal-contribution.ts"],"names":[],"mappings":"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"}
@@ -5,9 +5,27 @@ export interface CommandCheckResult {
5
5
  reason?: 'denied' | 'dangerous' | 'not-allowed';
6
6
  matchedPattern?: string;
7
7
  }
8
+ /**
9
+ * Full analysis of a command for the confirmation UI.
10
+ * Provides everything needed to generate meaningful allow/deny pattern options.
11
+ */
12
+ export interface CommandAnalysis {
13
+ /** The individual sub-commands parsed from the full command. */
14
+ subCommands: string[];
15
+ /** Whether the command contains dangerous shell patterns (allowlist is bypassed for these). */
16
+ hasDangerousPatterns: boolean;
17
+ /** Sub-commands not yet covered by any allowlist pattern. */
18
+ unallowedSubCommands: string[];
19
+ }
8
20
  export declare class ShellCommandPermissionService {
9
21
  protected readonly preferenceService: PreferenceService;
10
22
  protected readonly shellCommandAnalyzer: ShellCommandAnalyzer;
23
+ /**
24
+ * Provides a full analysis of a command for the confirmation UI.
25
+ * Returns parsed sub-commands, dangerous pattern detection, and which
26
+ * sub-commands are not yet covered by the allowlist.
27
+ */
28
+ analyzeCommand(command: string): CommandAnalysis;
11
29
  /**
12
30
  * Checks if a command is allowed based on the allowlist patterns.
13
31
  * Returns false if the command contains dangerous patterns, is on the denylist, or if the allowlist is empty.
@@ -31,25 +49,25 @@ export declare class ShellCommandPermissionService {
31
49
  matchesPattern(subCommand: string, pattern: string): boolean;
32
50
  getAllowlistPatterns(): string[];
33
51
  /**
34
- * Adds a pattern to the allowlist.
52
+ * Adds one or more patterns to the allowlist in a single update.
35
53
  * Rejects empty or whitespace-only patterns, "*" alone, and invalid wildcard positions.
36
- * Trims the pattern before adding and avoids duplicates.
54
+ * Trims patterns before adding and avoids duplicates.
37
55
  */
38
- addAllowlistPattern(pattern: string): void;
56
+ addAllowlistPatterns(...patterns: string[]): void;
39
57
  removeAllowlistPattern(pattern: string): void;
40
58
  getDenylistPatterns(): string[];
41
59
  /**
42
- * Adds a pattern to the denylist.
60
+ * Adds one or more patterns to the denylist in a single update.
43
61
  * Uses the same validation as allowlist patterns.
44
62
  */
45
- addDenylistPattern(pattern: string): void;
63
+ addDenylistPatterns(...patterns: string[]): void;
46
64
  removeDenylistPattern(pattern: string): void;
47
65
  /**
48
66
  * Validates a pattern and returns the trimmed version.
49
67
  * Throws an error if the pattern is invalid.
50
68
  */
51
69
  protected validatePattern(pattern: string): string;
52
- protected addPatternToList(pattern: string, preferenceKey: string, getCurrentPatterns: () => string[]): void;
70
+ protected addPatternsToList(patterns: string[], preferenceKey: string, getCurrentPatterns: () => string[]): void;
53
71
  protected removePatternFromList(pattern: string, preferenceKey: string, getCurrentPatterns: () => string[]): void;
54
72
  }
55
73
  //# sourceMappingURL=shell-command-permission-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shell-command-permission-service.d.ts","sourceRoot":"","sources":["../../src/browser/shell-command-permission-service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,QAAQ,GAAG,WAAW,GAAG,aAAa,CAAC;IAChD,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,qBACa,6BAA6B;IAGtC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAE9D;;;;OAIG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI1C,oEAAoE;IACpE,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7C;;;;;;OAMG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,kBAAkB;IA6BjD;;;OAGG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IA4B5D,oBAAoB,IAAI,MAAM,EAAE;IAIhC;;;;OAIG;IACH,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI1C,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI7C,mBAAmB,IAAI,MAAM,EAAE;IAI/B;;;OAGG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIzC,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI5C;;;OAGG;IACH,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAgBlD,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,MAAM,EAAE,GAAG,IAAI;IAW5G,SAAS,CAAC,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,MAAM,EAAE,GAAG,IAAI;CAUpH"}
1
+ {"version":3,"file":"shell-command-permission-service.d.ts","sourceRoot":"","sources":["../../src/browser/shell-command-permission-service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,QAAQ,GAAG,WAAW,GAAG,aAAa,CAAC;IAChD,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC5B,gEAAgE;IAChE,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,+FAA+F;IAC/F,oBAAoB,EAAE,OAAO,CAAC;IAC9B,6DAA6D;IAC7D,oBAAoB,EAAE,MAAM,EAAE,CAAC;CAClC;AAED,qBACa,6BAA6B;IAGtC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAE9D;;;;OAIG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe;IAYhD;;;;OAIG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI1C,oEAAoE;IACpE,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7C;;;;;;OAMG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,kBAAkB;IA6BjD;;;OAGG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IA4B5D,oBAAoB,IAAI,MAAM,EAAE;IAIhC;;;;OAIG;IACH,oBAAoB,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAIjD,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI7C,mBAAmB,IAAI,MAAM,EAAE;IAI/B;;;OAGG;IACH,mBAAmB,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAIhD,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI5C;;;OAGG;IACH,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAgBlD,SAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,MAAM,EAAE,GAAG,IAAI;IAYhH,SAAS,CAAC,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,MAAM,EAAE,GAAG,IAAI;CAUpH"}
@@ -22,6 +22,18 @@ const common_1 = require("@theia/core/lib/common");
22
22
  const shell_command_preferences_1 = require("../common/shell-command-preferences");
23
23
  const shell_command_analyzer_1 = require("../common/shell-command-analyzer");
24
24
  let ShellCommandPermissionService = class ShellCommandPermissionService {
25
+ /**
26
+ * Provides a full analysis of a command for the confirmation UI.
27
+ * Returns parsed sub-commands, dangerous pattern detection, and which
28
+ * sub-commands are not yet covered by the allowlist.
29
+ */
30
+ analyzeCommand(command) {
31
+ const subCommands = this.shellCommandAnalyzer.parseCommand(command);
32
+ const hasDangerousPatterns = this.shellCommandAnalyzer.containsDangerousPatterns(command);
33
+ const allowlistPatterns = this.getAllowlistPatterns();
34
+ const unallowedSubCommands = subCommands.filter(subCommand => !allowlistPatterns.some(pattern => this.matchesPattern(subCommand, pattern)));
35
+ return { subCommands, hasDangerousPatterns, unallowedSubCommands };
36
+ }
25
37
  /**
26
38
  * Checks if a command is allowed based on the allowlist patterns.
27
39
  * Returns false if the command contains dangerous patterns, is on the denylist, or if the allowlist is empty.
@@ -98,12 +110,12 @@ let ShellCommandPermissionService = class ShellCommandPermissionService {
98
110
  return this.preferenceService.get(shell_command_preferences_1.SHELL_COMMAND_ALLOWLIST_PREFERENCE, []);
99
111
  }
100
112
  /**
101
- * Adds a pattern to the allowlist.
113
+ * Adds one or more patterns to the allowlist in a single update.
102
114
  * Rejects empty or whitespace-only patterns, "*" alone, and invalid wildcard positions.
103
- * Trims the pattern before adding and avoids duplicates.
115
+ * Trims patterns before adding and avoids duplicates.
104
116
  */
105
- addAllowlistPattern(pattern) {
106
- this.addPatternToList(pattern, shell_command_preferences_1.SHELL_COMMAND_ALLOWLIST_PREFERENCE, () => this.getAllowlistPatterns());
117
+ addAllowlistPatterns(...patterns) {
118
+ this.addPatternsToList(patterns, shell_command_preferences_1.SHELL_COMMAND_ALLOWLIST_PREFERENCE, () => this.getAllowlistPatterns());
107
119
  }
108
120
  removeAllowlistPattern(pattern) {
109
121
  this.removePatternFromList(pattern, shell_command_preferences_1.SHELL_COMMAND_ALLOWLIST_PREFERENCE, () => this.getAllowlistPatterns());
@@ -112,11 +124,11 @@ let ShellCommandPermissionService = class ShellCommandPermissionService {
112
124
  return this.preferenceService.get(shell_command_preferences_1.SHELL_COMMAND_DENYLIST_PREFERENCE, []);
113
125
  }
114
126
  /**
115
- * Adds a pattern to the denylist.
127
+ * Adds one or more patterns to the denylist in a single update.
116
128
  * Uses the same validation as allowlist patterns.
117
129
  */
118
- addDenylistPattern(pattern) {
119
- this.addPatternToList(pattern, shell_command_preferences_1.SHELL_COMMAND_DENYLIST_PREFERENCE, () => this.getDenylistPatterns());
130
+ addDenylistPatterns(...patterns) {
131
+ this.addPatternsToList(patterns, shell_command_preferences_1.SHELL_COMMAND_DENYLIST_PREFERENCE, () => this.getDenylistPatterns());
120
132
  }
121
133
  removeDenylistPattern(pattern) {
122
134
  this.removePatternFromList(pattern, shell_command_preferences_1.SHELL_COMMAND_DENYLIST_PREFERENCE, () => this.getDenylistPatterns());
@@ -140,11 +152,12 @@ let ShellCommandPermissionService = class ShellCommandPermissionService {
140
152
  }
141
153
  return trimmed;
142
154
  }
143
- addPatternToList(pattern, preferenceKey, getCurrentPatterns) {
144
- const trimmed = this.validatePattern(pattern);
155
+ addPatternsToList(patterns, preferenceKey, getCurrentPatterns) {
156
+ const validated = patterns.map(p => this.validatePattern(p));
145
157
  const currentPatterns = getCurrentPatterns();
146
- if (!currentPatterns.includes(trimmed)) {
147
- this.preferenceService.updateValue(preferenceKey, [...currentPatterns, trimmed]);
158
+ const newPatterns = validated.filter(p => !currentPatterns.includes(p));
159
+ if (newPatterns.length > 0) {
160
+ this.preferenceService.updateValue(preferenceKey, [...currentPatterns, ...newPatterns]);
148
161
  }
149
162
  }
150
163
  removePatternFromList(pattern, preferenceKey, getCurrentPatterns) {
@@ -1 +1 @@
1
- {"version":3,"file":"shell-command-permission-service.js","sourceRoot":"","sources":["../../src/browser/shell-command-permission-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shell-command-permission-service.js","sourceRoot":"","sources":["../../src/browser/shell-command-permission-service.ts"],"names":[],"mappings":"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"}
@@ -52,65 +52,65 @@ describe('ShellCommandPermissionService', () => {
52
52
  service.preferenceService = preferenceServiceMock;
53
53
  service.shellCommandAnalyzer = new shell_command_analyzer_1.DefaultShellCommandAnalyzer();
54
54
  });
55
- describe('addAllowlistPattern validation', () => {
55
+ describe('addAllowlistPatterns validation', () => {
56
56
  describe('valid patterns', () => {
57
57
  it('accepts exact match pattern', () => {
58
- service.addAllowlistPattern('git log');
58
+ service.addAllowlistPatterns('git log');
59
59
  (0, chai_1.expect)(storedPatterns).to.deep.equal(['git log']);
60
60
  });
61
61
  it('accepts trailing wildcard with space', () => {
62
- service.addAllowlistPattern('git log *');
62
+ service.addAllowlistPatterns('git log *');
63
63
  (0, chai_1.expect)(storedPatterns).to.deep.equal(['git log *']);
64
64
  });
65
65
  it('accepts leading wildcard', () => {
66
- service.addAllowlistPattern('* --version');
66
+ service.addAllowlistPatterns('* --version');
67
67
  (0, chai_1.expect)(storedPatterns).to.deep.equal(['* --version']);
68
68
  });
69
69
  it('accepts middle wildcard', () => {
70
- service.addAllowlistPattern('git * main');
70
+ service.addAllowlistPatterns('git * main');
71
71
  (0, chai_1.expect)(storedPatterns).to.deep.equal(['git * main']);
72
72
  });
73
73
  it('accepts multiple wildcards with spaces', () => {
74
- service.addAllowlistPattern('* * *');
74
+ service.addAllowlistPatterns('* * *');
75
75
  (0, chai_1.expect)(storedPatterns).to.deep.equal(['* * *']);
76
76
  });
77
77
  it('trims pattern before adding', () => {
78
- service.addAllowlistPattern(' git log ');
78
+ service.addAllowlistPatterns(' git log ');
79
79
  (0, chai_1.expect)(storedPatterns).to.deep.equal(['git log']);
80
80
  });
81
81
  it('does not add duplicate pattern', () => {
82
82
  storedPatterns = ['git log'];
83
- service.addAllowlistPattern('git log');
83
+ service.addAllowlistPatterns('git log');
84
84
  (0, chai_1.expect)(preferenceServiceMock.updateValue.called).to.be.false;
85
85
  });
86
86
  });
87
87
  describe('invalid patterns', () => {
88
88
  it('rejects empty pattern', () => {
89
- (0, chai_1.expect)(() => service.addAllowlistPattern('')).to.throw('Pattern cannot be empty or whitespace-only');
89
+ (0, chai_1.expect)(() => service.addAllowlistPatterns('')).to.throw('Pattern cannot be empty or whitespace-only');
90
90
  });
91
91
  it('rejects whitespace-only pattern', () => {
92
- (0, chai_1.expect)(() => service.addAllowlistPattern(' ')).to.throw('Pattern cannot be empty or whitespace-only');
92
+ (0, chai_1.expect)(() => service.addAllowlistPatterns(' ')).to.throw('Pattern cannot be empty or whitespace-only');
93
93
  });
94
94
  it('rejects * alone', () => {
95
- (0, chai_1.expect)(() => service.addAllowlistPattern('*')).to.throw(/too permissive/);
95
+ (0, chai_1.expect)(() => service.addAllowlistPatterns('*')).to.throw(/too permissive/);
96
96
  });
97
97
  it('rejects wildcard without preceding space: git*', () => {
98
- (0, chai_1.expect)(() => service.addAllowlistPattern('git*')).to.throw(/must be preceded by a space/);
98
+ (0, chai_1.expect)(() => service.addAllowlistPatterns('git*')).to.throw(/must be preceded by a space/);
99
99
  });
100
100
  it('rejects wildcard without preceding space: git log*', () => {
101
- (0, chai_1.expect)(() => service.addAllowlistPattern('git log*')).to.throw(/must be preceded by a space/);
101
+ (0, chai_1.expect)(() => service.addAllowlistPatterns('git log*')).to.throw(/must be preceded by a space/);
102
102
  });
103
103
  it('rejects wildcard in middle without space: git*log', () => {
104
- (0, chai_1.expect)(() => service.addAllowlistPattern('git*log')).to.throw(/must be preceded by a space/);
104
+ (0, chai_1.expect)(() => service.addAllowlistPatterns('git*log')).to.throw(/must be preceded by a space/);
105
105
  });
106
106
  it('rejects wildcard after non-space: cmd* *', () => {
107
- (0, chai_1.expect)(() => service.addAllowlistPattern('cmd* *')).to.throw(/must be preceded by a space/);
107
+ (0, chai_1.expect)(() => service.addAllowlistPatterns('cmd* *')).to.throw(/must be preceded by a space/);
108
108
  });
109
109
  it('rejects double wildcard **', () => {
110
- (0, chai_1.expect)(() => service.addAllowlistPattern('git log **')).to.throw(/must be preceded by a space/);
110
+ (0, chai_1.expect)(() => service.addAllowlistPatterns('git log **')).to.throw(/must be preceded by a space/);
111
111
  });
112
112
  it('rejects triple wildcard ***', () => {
113
- (0, chai_1.expect)(() => service.addAllowlistPattern('git ***')).to.throw(/must be preceded by a space/);
113
+ (0, chai_1.expect)(() => service.addAllowlistPatterns('git ***')).to.throw(/must be preceded by a space/);
114
114
  });
115
115
  });
116
116
  });
@@ -331,6 +331,35 @@ describe('ShellCommandPermissionService', () => {
331
331
  (0, chai_1.expect)(patterns).to.deep.equal([]);
332
332
  });
333
333
  });
334
+ describe('addAllowlistPatterns (multiple)', () => {
335
+ it('adds multiple patterns in a single update', () => {
336
+ service.addAllowlistPatterns('find *', 'head *');
337
+ (0, chai_1.expect)(storedPatterns).to.deep.equal(['find *', 'head *']);
338
+ (0, chai_1.expect)(preferenceServiceMock.updateValue.calledOnce).to.be.true;
339
+ });
340
+ it('skips patterns already in the allowlist', () => {
341
+ storedPatterns = ['git *'];
342
+ service.addAllowlistPatterns('git *', 'npm *');
343
+ (0, chai_1.expect)(storedPatterns).to.deep.equal(['git *', 'npm *']);
344
+ });
345
+ it('does not call updateValue when all patterns already exist', () => {
346
+ storedPatterns = ['find *', 'head *'];
347
+ service.addAllowlistPatterns('find *', 'head *');
348
+ (0, chai_1.expect)(preferenceServiceMock.updateValue.called).to.be.false;
349
+ });
350
+ it('validates all patterns before adding', () => {
351
+ (0, chai_1.expect)(() => service.addAllowlistPatterns('git *', '*')).to.throw(/too permissive/);
352
+ (0, chai_1.expect)(storedPatterns).to.deep.equal([]);
353
+ });
354
+ it('throws on empty pattern in batch', () => {
355
+ (0, chai_1.expect)(() => service.addAllowlistPatterns('git *', '')).to.throw(/empty/);
356
+ (0, chai_1.expect)(storedPatterns).to.deep.equal([]);
357
+ });
358
+ it('handles no arguments without calling updateValue', () => {
359
+ service.addAllowlistPatterns();
360
+ (0, chai_1.expect)(preferenceServiceMock.updateValue.called).to.be.false;
361
+ });
362
+ });
334
363
  describe('removeAllowlistPattern', () => {
335
364
  it('removes existing pattern', () => {
336
365
  storedPatterns = ['git log', 'npm test'];
@@ -384,19 +413,48 @@ describe('ShellCommandPermissionService', () => {
384
413
  (0, chai_1.expect)(service.getDenylistPatterns()).to.deep.equal(['git push *', 'rm -rf /']);
385
414
  });
386
415
  });
387
- describe('addDenylistPattern', () => {
416
+ describe('addDenylistPatterns', () => {
388
417
  it('adds valid pattern', () => {
389
- service.addDenylistPattern('git push *');
418
+ service.addDenylistPatterns('git push *');
390
419
  (0, chai_1.expect)(storedDenylistPatterns).to.deep.equal(['git push *']);
391
420
  });
392
421
  it('rejects empty pattern', () => {
393
- (0, chai_1.expect)(() => service.addDenylistPattern('')).to.throw('Pattern cannot be empty or whitespace-only');
422
+ (0, chai_1.expect)(() => service.addDenylistPatterns('')).to.throw('Pattern cannot be empty or whitespace-only');
394
423
  });
395
424
  it('rejects * alone', () => {
396
- (0, chai_1.expect)(() => service.addDenylistPattern('*')).to.throw(/too permissive/);
425
+ (0, chai_1.expect)(() => service.addDenylistPatterns('*')).to.throw(/too permissive/);
397
426
  });
398
427
  it('rejects invalid wildcard position (git push*)', () => {
399
- (0, chai_1.expect)(() => service.addDenylistPattern('git push*')).to.throw(/must be preceded by a space/);
428
+ (0, chai_1.expect)(() => service.addDenylistPatterns('git push*')).to.throw(/must be preceded by a space/);
429
+ });
430
+ });
431
+ describe('addDenylistPatterns (multiple)', () => {
432
+ it('adds multiple patterns in a single update', () => {
433
+ service.addDenylistPatterns('git push *', 'rm -rf /');
434
+ (0, chai_1.expect)(storedDenylistPatterns).to.deep.equal(['git push *', 'rm -rf /']);
435
+ (0, chai_1.expect)(preferenceServiceMock.updateValue.calledOnce).to.be.true;
436
+ });
437
+ it('skips patterns already in the denylist', () => {
438
+ storedDenylistPatterns = ['git push *'];
439
+ service.addDenylistPatterns('git push *', 'rm -rf /');
440
+ (0, chai_1.expect)(storedDenylistPatterns).to.deep.equal(['git push *', 'rm -rf /']);
441
+ });
442
+ it('does not call updateValue when all patterns already exist', () => {
443
+ storedDenylistPatterns = ['git push *', 'rm -rf /'];
444
+ service.addDenylistPatterns('git push *', 'rm -rf /');
445
+ (0, chai_1.expect)(preferenceServiceMock.updateValue.called).to.be.false;
446
+ });
447
+ it('validates all patterns before adding', () => {
448
+ (0, chai_1.expect)(() => service.addDenylistPatterns('git push *', '*')).to.throw(/too permissive/);
449
+ (0, chai_1.expect)(storedDenylistPatterns).to.deep.equal([]);
450
+ });
451
+ it('throws on empty pattern in batch', () => {
452
+ (0, chai_1.expect)(() => service.addDenylistPatterns('git push *', '')).to.throw(/empty/);
453
+ (0, chai_1.expect)(storedDenylistPatterns).to.deep.equal([]);
454
+ });
455
+ it('handles no arguments without calling updateValue', () => {
456
+ service.addDenylistPatterns();
457
+ (0, chai_1.expect)(preferenceServiceMock.updateValue.called).to.be.false;
400
458
  });
401
459
  });
402
460
  describe('removeDenylistPattern', () => {
@@ -479,6 +537,44 @@ describe('ShellCommandPermissionService', () => {
479
537
  });
480
538
  });
481
539
  });
540
+ describe('analyzeCommand', () => {
541
+ it('returns all sub-commands as unallowed when allowlist is empty', () => {
542
+ const result = service.analyzeCommand('git status && npm test');
543
+ (0, chai_1.expect)(result.subCommands).to.deep.equal(['git status', 'npm test']);
544
+ (0, chai_1.expect)(result.unallowedSubCommands).to.deep.equal(['git status', 'npm test']);
545
+ (0, chai_1.expect)(result.hasDangerousPatterns).to.be.false;
546
+ });
547
+ it('excludes already-allowed sub-commands from unallowedSubCommands', () => {
548
+ storedPatterns = ['git *'];
549
+ const result = service.analyzeCommand('git status && npm test');
550
+ (0, chai_1.expect)(result.subCommands).to.deep.equal(['git status', 'npm test']);
551
+ (0, chai_1.expect)(result.unallowedSubCommands).to.deep.equal(['npm test']);
552
+ });
553
+ it('returns empty unallowedSubCommands when all sub-commands are allowed', () => {
554
+ storedPatterns = ['git *', 'npm *'];
555
+ const result = service.analyzeCommand('git status && npm test');
556
+ (0, chai_1.expect)(result.unallowedSubCommands).to.deep.equal([]);
557
+ });
558
+ it('detects dangerous patterns', () => {
559
+ const result = service.analyzeCommand('echo $(whoami)');
560
+ (0, chai_1.expect)(result.hasDangerousPatterns).to.be.true;
561
+ });
562
+ it('detects no dangerous patterns for safe commands', () => {
563
+ const result = service.analyzeCommand('git log --oneline');
564
+ (0, chai_1.expect)(result.hasDangerousPatterns).to.be.false;
565
+ });
566
+ it('handles single command without separators', () => {
567
+ const result = service.analyzeCommand('git log --oneline');
568
+ (0, chai_1.expect)(result.subCommands).to.deep.equal(['git log --oneline']);
569
+ (0, chai_1.expect)(result.unallowedSubCommands).to.deep.equal(['git log --oneline']);
570
+ });
571
+ it('handles partially allowed compound commands', () => {
572
+ storedPatterns = ['git log *'];
573
+ const result = service.analyzeCommand('git log --oneline && git push origin');
574
+ (0, chai_1.expect)(result.subCommands).to.deep.equal(['git log --oneline', 'git push origin']);
575
+ (0, chai_1.expect)(result.unallowedSubCommands).to.deep.equal(['git push origin']);
576
+ });
577
+ });
482
578
  describe('checkCommand', () => {
483
579
  it('returns dangerous reason for dangerous commands', () => {
484
580
  const result = service.checkCommand('echo $(whoami)');
@@ -1 +1 @@
1
- {"version":3,"file":"shell-command-permission-service.spec.js","sourceRoot":"","sources":["../../src/browser/shell-command-permission-service.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shell-command-permission-service.spec.js","sourceRoot":"","sources":["../../src/browser/shell-command-permission-service.spec.ts"],"names":[],"mappings":"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"}
@@ -3,16 +3,20 @@ import { ResponseNode } from '@theia/ai-chat-ui/lib/browser/chat-tree-view';
3
3
  import { ChatResponseContent, ToolCallChatResponseContent } from '@theia/ai-chat/lib/common';
4
4
  import { ToolConfirmationManager } from '@theia/ai-chat/lib/browser/chat-tool-preference-bindings';
5
5
  import { ToolInvocationRegistry } from '@theia/ai-core';
6
+ import { CommandRegistry } from '@theia/core/lib/common';
6
7
  import { ContextMenuRenderer } from '@theia/core/lib/browser';
7
8
  import { ClipboardService } from '@theia/core/lib/browser/clipboard-service';
8
9
  import { ReactNode } from '@theia/core/shared/react';
9
10
  import { ShellExecutionTool } from './shell-execution-tool';
11
+ import { ShellCommandPermissionService } from './shell-command-permission-service';
10
12
  export declare class ShellExecutionToolRenderer implements ChatResponsePartRenderer<ToolCallChatResponseContent> {
11
13
  protected toolConfirmationManager: ToolConfirmationManager;
12
14
  protected toolInvocationRegistry: ToolInvocationRegistry;
13
15
  protected shellExecutionTool: ShellExecutionTool;
14
16
  protected clipboardService: ClipboardService;
15
17
  protected contextMenuRenderer: ContextMenuRenderer;
18
+ protected shellCommandPermissionService: ShellCommandPermissionService;
19
+ protected commandRegistry: CommandRegistry;
16
20
  canHandle(response: ChatResponseContent): number;
17
21
  render(response: ToolCallChatResponseContent, parentNode: ResponseNode): ReactNode;
18
22
  }
@@ -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;AAErE,OAAO,EAAW,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAG7E,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAQ5D,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;IAEnD,SAAS,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAOhD,MAAM,CAAC,QAAQ,EAAE,2BAA2B,EAAE,UAAU,EAAE,YAAY,GAAG,SAAS;CAwBrF"}
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"}