@theia/ai-ide 1.63.0-next.0 → 1.63.0-next.24

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 (57) hide show
  1. package/lib/browser/ai-configuration/ai-configuration-view-contribution.js +1 -1
  2. package/lib/browser/ai-configuration/ai-configuration-view-contribution.js.map +1 -1
  3. package/lib/browser/ai-configuration/ai-configuration-widget.d.ts +2 -0
  4. package/lib/browser/ai-configuration/ai-configuration-widget.d.ts.map +1 -1
  5. package/lib/browser/ai-configuration/ai-configuration-widget.js +6 -0
  6. package/lib/browser/ai-configuration/ai-configuration-widget.js.map +1 -1
  7. package/lib/browser/ai-configuration/token-usage-configuration-widget.d.ts +1 -0
  8. package/lib/browser/ai-configuration/token-usage-configuration-widget.d.ts.map +1 -1
  9. package/lib/browser/ai-configuration/token-usage-configuration-widget.js +25 -3
  10. package/lib/browser/ai-configuration/token-usage-configuration-widget.js.map +1 -1
  11. package/lib/browser/ai-configuration/tools-configuration-widget.d.ts +29 -0
  12. package/lib/browser/ai-configuration/tools-configuration-widget.d.ts.map +1 -0
  13. package/lib/browser/ai-configuration/tools-configuration-widget.js +163 -0
  14. package/lib/browser/ai-configuration/tools-configuration-widget.js.map +1 -0
  15. package/lib/browser/app-tester-chat-agent.d.ts +36 -0
  16. package/lib/browser/app-tester-chat-agent.d.ts.map +1 -0
  17. package/lib/browser/app-tester-chat-agent.js +172 -0
  18. package/lib/browser/app-tester-chat-agent.js.map +1 -0
  19. package/lib/browser/coder-agent.d.ts.map +1 -1
  20. package/lib/browser/coder-agent.js +3 -3
  21. package/lib/browser/coder-agent.js.map +1 -1
  22. package/lib/browser/file-changeset-functions.d.ts +25 -6
  23. package/lib/browser/file-changeset-functions.d.ts.map +1 -1
  24. package/lib/browser/file-changeset-functions.js +248 -106
  25. package/lib/browser/file-changeset-functions.js.map +1 -1
  26. package/lib/browser/frontend-module.d.ts.map +1 -1
  27. package/lib/browser/frontend-module.js +20 -5
  28. package/lib/browser/frontend-module.js.map +1 -1
  29. package/lib/browser/workspace-functions.d.ts.map +1 -1
  30. package/lib/browser/workspace-functions.js +6 -10
  31. package/lib/browser/workspace-functions.js.map +1 -1
  32. package/lib/browser/workspace-search-provider.d.ts +2 -0
  33. package/lib/browser/workspace-search-provider.d.ts.map +1 -1
  34. package/lib/browser/workspace-search-provider.js +26 -4
  35. package/lib/browser/workspace-search-provider.js.map +1 -1
  36. package/lib/common/coder-replace-prompt-template.d.ts +4 -5
  37. package/lib/common/coder-replace-prompt-template.d.ts.map +1 -1
  38. package/lib/common/coder-replace-prompt-template.js +95 -67
  39. package/lib/common/coder-replace-prompt-template.js.map +1 -1
  40. package/lib/common/file-changeset-function-ids.d.ts +7 -0
  41. package/lib/common/file-changeset-function-ids.d.ts.map +1 -0
  42. package/lib/common/file-changeset-function-ids.js +25 -0
  43. package/lib/common/file-changeset-function-ids.js.map +1 -0
  44. package/package.json +17 -17
  45. package/src/browser/ai-configuration/ai-configuration-view-contribution.ts +1 -1
  46. package/src/browser/ai-configuration/ai-configuration-widget.tsx +6 -0
  47. package/src/browser/ai-configuration/token-usage-configuration-widget.tsx +63 -4
  48. package/src/browser/ai-configuration/tools-configuration-widget.tsx +193 -0
  49. package/src/browser/app-tester-chat-agent.ts +178 -0
  50. package/src/browser/coder-agent.ts +5 -5
  51. package/src/browser/file-changeset-functions.ts +236 -89
  52. package/src/browser/frontend-module.ts +31 -10
  53. package/src/browser/style/index.css +78 -0
  54. package/src/browser/workspace-functions.ts +7 -11
  55. package/src/browser/workspace-search-provider.ts +27 -6
  56. package/src/common/coder-replace-prompt-template.ts +101 -65
  57. package/src/common/file-changeset-function-ids.ts +22 -0
@@ -33,7 +33,7 @@ let AIAgentConfigurationViewContribution = class AIAgentConfigurationViewContrib
33
33
  widgetId: ai_configuration_widget_1.AIConfigurationContainerWidget.ID,
34
34
  widgetName: ai_configuration_widget_1.AIConfigurationContainerWidget.LABEL,
35
35
  defaultWidgetOptions: {
36
- area: 'bottom',
36
+ area: 'main',
37
37
  rank: 100
38
38
  },
39
39
  toggleCommandId: exports.AI_CONFIGURATION_TOGGLE_COMMAND_ID
@@ -1 +1 @@
1
- {"version":3,"file":"ai-configuration-view-contribution.js","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-view-contribution.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;AAChF,sCAA4D;AAE5D,wDAAgE;AAChE,qFAAgF;AAEhF,4DAA0D;AAC1D,uEAA2E;AAE9D,QAAA,kCAAkC,GAAG,wBAAwB,CAAC;AAC9D,QAAA,mBAAmB,GAAG,cAAO,CAAC,kBAAkB,CAAC;IAC1D,EAAE,EAAE,sBAAsB;IAC1B,KAAK,EAAE,4BAA4B;CACtC,CAAC,CAAC;AAGI,IAAM,oCAAoC,GAA1C,MAAM,oCAAqC,SAAQ,4BAAkD;IAExG;QACI,KAAK,CAAC;YACF,QAAQ,EAAE,wDAA8B,CAAC,EAAE;YAC3C,UAAU,EAAE,wDAA8B,CAAC,KAAK;YAChD,oBAAoB,EAAE;gBAClB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG;aACZ;YACD,eAAe,EAAE,0CAAkC;SACtD,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,IAAyB;QAC5C,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAEQ,gBAAgB,CAAC,QAAyB;QAC/C,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACjC,QAAQ,CAAC,eAAe,CAAC,2BAAmB,EAAE;YAC1C,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;SACnD,CAAC,CAAC;IACP,CAAC;IAED,oBAAoB,CAAC,QAA+B;QAChD,QAAQ,CAAC,YAAY,CAAC;YAClB,EAAE,EAAE,YAAY,GAAG,2BAAmB,CAAC,EAAE;YACzC,OAAO,EAAE,2BAAmB,CAAC,EAAE;YAC/B,OAAO,EAAE,UAAG,CAAC,QAAQ,CAAC,0CAA0C,EAAE,wBAAwB,CAAC;YAC3F,KAAK,EAAE,aAAa;YACpB,QAAQ,EAAE,CAAC;YACX,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,YAAY,iCAAc;SACxD,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AAnCY,oFAAoC;+CAApC,oCAAoC;IADhD,IAAA,sBAAU,GAAE;;GACA,oCAAoC,CAmChD"}
1
+ {"version":3,"file":"ai-configuration-view-contribution.js","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-view-contribution.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;AAChF,sCAA4D;AAE5D,wDAAgE;AAChE,qFAAgF;AAEhF,4DAA0D;AAC1D,uEAA2E;AAE9D,QAAA,kCAAkC,GAAG,wBAAwB,CAAC;AAC9D,QAAA,mBAAmB,GAAG,cAAO,CAAC,kBAAkB,CAAC;IAC1D,EAAE,EAAE,sBAAsB;IAC1B,KAAK,EAAE,4BAA4B;CACtC,CAAC,CAAC;AAGI,IAAM,oCAAoC,GAA1C,MAAM,oCAAqC,SAAQ,4BAAkD;IAExG;QACI,KAAK,CAAC;YACF,QAAQ,EAAE,wDAA8B,CAAC,EAAE;YAC3C,UAAU,EAAE,wDAA8B,CAAC,KAAK;YAChD,oBAAoB,EAAE;gBAClB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,GAAG;aACZ;YACD,eAAe,EAAE,0CAAkC;SACtD,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,IAAyB;QAC5C,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAEQ,gBAAgB,CAAC,QAAyB;QAC/C,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACjC,QAAQ,CAAC,eAAe,CAAC,2BAAmB,EAAE;YAC1C,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;SACnD,CAAC,CAAC;IACP,CAAC;IAED,oBAAoB,CAAC,QAA+B;QAChD,QAAQ,CAAC,YAAY,CAAC;YAClB,EAAE,EAAE,YAAY,GAAG,2BAAmB,CAAC,EAAE;YACzC,OAAO,EAAE,2BAAmB,CAAC,EAAE;YAC/B,OAAO,EAAE,UAAG,CAAC,QAAQ,CAAC,0CAA0C,EAAE,wBAAwB,CAAC;YAC3F,KAAK,EAAE,aAAa;YACpB,QAAQ,EAAE,CAAC;YACX,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,YAAY,iCAAc;SACxD,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AAnCY,oFAAoC;+CAApC,oCAAoC;IADhD,IAAA,sBAAU,GAAE;;GACA,oCAAoC,CAmChD"}
@@ -3,6 +3,7 @@ import { TheiaDockPanel } from '@theia/core/lib/browser/shell/theia-dock-panel';
3
3
  import '../../../src/browser/style/index.css';
4
4
  import { AIAgentConfigurationWidget } from './agent-configuration-widget';
5
5
  import { AIVariableConfigurationWidget } from './variable-configuration-widget';
6
+ import { AIToolsConfigurationWidget } from './tools-configuration-widget';
6
7
  import { AIConfigurationSelectionService } from './ai-configuration-service';
7
8
  import { AIMCPConfigurationWidget } from './mcp-configuration-widget';
8
9
  import { AITokenUsageConfigurationWidget } from './token-usage-configuration-widget';
@@ -19,6 +20,7 @@ export declare class AIConfigurationContainerWidget extends BaseWidget {
19
20
  protected mcpWidget: AIMCPConfigurationWidget;
20
21
  protected tokenUsageWidget: AITokenUsageConfigurationWidget;
21
22
  protected promptFragmentsWidget: AIPromptFragmentsConfigurationWidget;
23
+ protected toolsWidget: AIToolsConfigurationWidget;
22
24
  protected init(): void;
23
25
  protected initUI(): Promise<void>;
24
26
  protected initListeners(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"ai-configuration-widget.d.ts","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-widget.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,UAAU,EAAsB,SAAS,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAEhF,OAAO,sCAAsC,CAAC;AAC9C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,+BAA+B,EAAE,MAAM,4BAA4B,CAAC;AAE7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAC;AACrF,OAAO,EAAE,oCAAoC,EAAE,MAAM,yCAAyC,CAAC;AAE/F,qBACa,8BAA+B,SAAQ,UAAU;IAE1D,MAAM,CAAC,QAAQ,CAAC,EAAE,sBAAsB;IACxC,MAAM,CAAC,QAAQ,CAAC,KAAK,SAAmF;IACxG,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC;IAG/B,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,cAAc,CAAC,OAAO,CAAC;IAE5D,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAEhD,SAAS,CAAC,QAAQ,CAAC,+BAA+B,EAAE,+BAA+B,CAAC;IAEpF,SAAS,CAAC,YAAY,EAAE,0BAA0B,CAAC;IACnD,SAAS,CAAC,eAAe,EAAE,6BAA6B,CAAC;IACzD,SAAS,CAAC,SAAS,EAAE,wBAAwB,CAAC;IAC9C,SAAS,CAAC,gBAAgB,EAAE,+BAA+B,CAAC;IAC5D,SAAS,CAAC,qBAAqB,EAAE,oCAAoC,CAAC;IAGtE,SAAS,CAAC,IAAI,IAAI,IAAI;cAUN,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAyBvC,SAAS,CAAC,aAAa,IAAI,IAAI;CAelC"}
1
+ {"version":3,"file":"ai-configuration-widget.d.ts","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-widget.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,UAAU,EAAsB,SAAS,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAEhF,OAAO,sCAAsC,CAAC;AAC9C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,4BAA4B,CAAC;AAE7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAC;AACrF,OAAO,EAAE,oCAAoC,EAAE,MAAM,yCAAyC,CAAC;AAE/F,qBACa,8BAA+B,SAAQ,UAAU;IAE1D,MAAM,CAAC,QAAQ,CAAC,EAAE,sBAAsB;IACxC,MAAM,CAAC,QAAQ,CAAC,KAAK,SAAmF;IACxG,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC;IAG/B,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,cAAc,CAAC,OAAO,CAAC;IAE5D,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAEhD,SAAS,CAAC,QAAQ,CAAC,+BAA+B,EAAE,+BAA+B,CAAC;IAEpF,SAAS,CAAC,YAAY,EAAE,0BAA0B,CAAC;IACnD,SAAS,CAAC,eAAe,EAAE,6BAA6B,CAAC;IACzD,SAAS,CAAC,SAAS,EAAE,wBAAwB,CAAC;IAC9C,SAAS,CAAC,gBAAgB,EAAE,+BAA+B,CAAC;IAC5D,SAAS,CAAC,qBAAqB,EAAE,oCAAoC,CAAC;IACtE,SAAS,CAAC,WAAW,EAAE,0BAA0B,CAAC;IAGlD,SAAS,CAAC,IAAI,IAAI,IAAI;cAUN,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IA2BvC,SAAS,CAAC,aAAa,IAAI,IAAI;CAiBlC"}
@@ -24,6 +24,7 @@ const inversify_1 = require("@theia/core/shared/inversify");
24
24
  require("../../../src/browser/style/index.css");
25
25
  const agent_configuration_widget_1 = require("./agent-configuration-widget");
26
26
  const variable_configuration_widget_1 = require("./variable-configuration-widget");
27
+ const tools_configuration_widget_1 = require("./tools-configuration-widget");
27
28
  const ai_configuration_service_1 = require("./ai-configuration-service");
28
29
  const core_1 = require("@theia/core");
29
30
  const mcp_configuration_widget_1 = require("./mcp-configuration-widget");
@@ -53,11 +54,13 @@ let AIConfigurationContainerWidget = AIConfigurationContainerWidget_1 = class AI
53
54
  this.mcpWidget = await this.widgetManager.getOrCreateWidget(mcp_configuration_widget_1.AIMCPConfigurationWidget.ID);
54
55
  this.tokenUsageWidget = await this.widgetManager.getOrCreateWidget(token_usage_configuration_widget_1.AITokenUsageConfigurationWidget.ID);
55
56
  this.promptFragmentsWidget = await this.widgetManager.getOrCreateWidget(prompt_fragments_configuration_widget_1.AIPromptFragmentsConfigurationWidget.ID);
57
+ this.toolsWidget = await this.widgetManager.getOrCreateWidget(tools_configuration_widget_1.AIToolsConfigurationWidget.ID);
56
58
  this.dockpanel.addWidget(this.agentsWidget);
57
59
  this.dockpanel.addWidget(this.variablesWidget, { mode: 'tab-after', ref: this.agentsWidget });
58
60
  this.dockpanel.addWidget(this.mcpWidget, { mode: 'tab-after', ref: this.variablesWidget });
59
61
  this.dockpanel.addWidget(this.tokenUsageWidget, { mode: 'tab-after', ref: this.mcpWidget });
60
62
  this.dockpanel.addWidget(this.promptFragmentsWidget, { mode: 'tab-after', ref: this.tokenUsageWidget });
63
+ this.dockpanel.addWidget(this.toolsWidget, { mode: 'tab-after', ref: this.promptFragmentsWidget });
61
64
  this.update();
62
65
  }
63
66
  initListeners() {
@@ -77,6 +80,9 @@ let AIConfigurationContainerWidget = AIConfigurationContainerWidget_1 = class AI
77
80
  else if (widgetId === prompt_fragments_configuration_widget_1.AIPromptFragmentsConfigurationWidget.ID) {
78
81
  this.dockpanel.activateWidget(this.promptFragmentsWidget);
79
82
  }
83
+ else if (widgetId === tools_configuration_widget_1.AIToolsConfigurationWidget.ID) {
84
+ this.dockpanel.activateWidget(this.toolsWidget);
85
+ }
80
86
  });
81
87
  }
82
88
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ai-configuration-widget.js","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-widget.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-configuration-widget.js","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-widget.tsx"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ export declare class AITokenUsageConfigurationWidget extends ReactWidget {
13
13
  protected refreshData(): Promise<void>;
14
14
  protected formatNumber(num: number): string;
15
15
  protected formatDate(date?: Date): string;
16
+ protected hasCacheData(): boolean;
16
17
  protected renderHeaderRow(): React.ReactNode;
17
18
  protected renderModelRow(model: ModelTokenUsageData): React.ReactNode;
18
19
  protected renderSummaryRow(): React.ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"token-usage-configuration-widget.d.ts","sourceRoot":"","sources":["../../../src/browser/ai-configuration/token-usage-configuration-widget.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,cAAc,EAAO,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,yDAAyD,CAAC;AAKzH,qBACa,+BAAgC,SAAQ,WAAW;IAE5D,MAAM,CAAC,QAAQ,CAAC,EAAE,mDAAmD;IACrE,MAAM,CAAC,QAAQ,CAAC,KAAK,SAA4D;IAGjF,SAAS,CAAC,cAAc,EAAE,mBAAmB,EAAE,CAAM;IAGrD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAGlD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;IAGhE,SAAS,CAAC,IAAI,IAAI,IAAI;cAaN,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5C,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI3C,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM;IAOzC,SAAS,CAAC,eAAe,IAAI,KAAK,CAAC,SAAS;IAY5C,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,KAAK,CAAC,SAAS;IAerE,SAAS,CAAC,gBAAgB,IAAI,KAAK,CAAC,SAAS;IAqB7C,SAAS,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS;CAgCtC"}
1
+ {"version":3,"file":"token-usage-configuration-widget.d.ts","sourceRoot":"","sources":["../../../src/browser/ai-configuration/token-usage-configuration-widget.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,cAAc,EAAO,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,yDAAyD,CAAC;AAKzH,qBACa,+BAAgC,SAAQ,WAAW;IAE5D,MAAM,CAAC,QAAQ,CAAC,EAAE,mDAAmD;IACrE,MAAM,CAAC,QAAQ,CAAC,KAAK,SAA4D;IAGjF,SAAS,CAAC,cAAc,EAAE,mBAAmB,EAAE,CAAM;IAGrD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAGlD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;IAGhE,SAAS,CAAC,IAAI,IAAI,IAAI;cAaN,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5C,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI3C,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM;IAOzC,SAAS,CAAC,YAAY,IAAI,OAAO;IAOjC,SAAS,CAAC,eAAe,IAAI,KAAK,CAAC,SAAS;IA0C5C,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,KAAK,CAAC,SAAS;IAuBrE,SAAS,CAAC,gBAAgB,IAAI,KAAK,CAAC,SAAS;IAmC7C,SAAS,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS;CAgCtC"}
@@ -59,22 +59,36 @@ let AITokenUsageConfigurationWidget = AITokenUsageConfigurationWidget_1 = class
59
59
  }
60
60
  return (0, date_fns_1.formatDistanceToNow)(date, { addSuffix: true });
61
61
  }
62
+ hasCacheData() {
63
+ return this.tokenUsageData.some(model => model.cachedInputTokens !== undefined ||
64
+ model.readCachedInputTokens !== undefined);
65
+ }
62
66
  renderHeaderRow() {
67
+ const showCacheColumns = this.hasCacheData();
63
68
  return (React.createElement("tr", { className: "token-usage-header" },
64
69
  React.createElement("th", { className: "token-usage-model-column" }, core_1.nls.localize('theia/ai/tokenUsage/model', 'Model')),
65
70
  React.createElement("th", { className: "token-usage-column" }, core_1.nls.localize('theia/ai/tokenUsage/inputTokens', 'Input Tokens')),
71
+ showCacheColumns && (React.createElement(React.Fragment, null,
72
+ React.createElement("th", { className: "token-usage-column", title: core_1.nls.localize('theia/ai/tokenUsage/cachedInputTokensTooltip', "Tracked additionally to 'Input Tokens'. Usually more expensive than non-cached tokens.") }, core_1.nls.localize('theia/ai/tokenUsage/cachedInputTokens', 'Input Tokens Written to Cache')),
73
+ React.createElement("th", { className: "token-usage-column", title: core_1.nls.localize('theia/ai/tokenUsage/readCachedInputTokensTooltip', "Tracked additionally to 'Input Token'. Usually much less expensive than not cached. Usually does not count to rate limits.") }, core_1.nls.localize('theia/ai/tokenUsage/readCachedInputTokens', 'Input Tokens Read From Cache')))),
66
74
  React.createElement("th", { className: "token-usage-column" }, core_1.nls.localize('theia/ai/tokenUsage/outputTokens', 'Output Tokens')),
67
- React.createElement("th", { className: "token-usage-column" }, core_1.nls.localize('theia/ai/tokenUsage/totalTokens', 'Total Tokens')),
75
+ React.createElement("th", { className: "token-usage-column", title: core_1.nls.localize('theia/ai/tokenUsage/totalTokensTooltip', "'Input Tokens' + 'Output Tokens'") }, core_1.nls.localize('theia/ai/tokenUsage/totalTokens', 'Total Tokens')),
68
76
  React.createElement("th", { className: "token-usage-column" }, core_1.nls.localize('theia/ai/tokenUsage/lastUsed', 'Last Used'))));
69
77
  }
70
78
  renderModelRow(model) {
79
+ var _a;
71
80
  const lastUsedDate = model.lastUsed ? new Date(model.lastUsed) : undefined;
72
81
  const exactDateString = lastUsedDate ? lastUsedDate.toLocaleString() : '';
82
+ const showCacheColumns = this.hasCacheData();
83
+ const totalTokens = model.inputTokens + model.outputTokens + ((_a = model.cachedInputTokens) !== null && _a !== void 0 ? _a : 0);
73
84
  return (React.createElement("tr", { key: model.modelId, className: "token-usage-row" },
74
85
  React.createElement("td", { className: "token-usage-model-cell" }, model.modelId),
75
86
  React.createElement("td", { className: "token-usage-cell" }, this.formatNumber(model.inputTokens)),
87
+ showCacheColumns && (React.createElement(React.Fragment, null,
88
+ React.createElement("td", { className: "token-usage-cell" }, model.cachedInputTokens !== undefined ? this.formatNumber(model.cachedInputTokens) : '-'),
89
+ React.createElement("td", { className: "token-usage-cell" }, model.readCachedInputTokens !== undefined ? this.formatNumber(model.readCachedInputTokens) : '-'))),
76
90
  React.createElement("td", { className: "token-usage-cell" }, this.formatNumber(model.outputTokens)),
77
- React.createElement("td", { className: "token-usage-cell" }, this.formatNumber(model.inputTokens + model.outputTokens)),
91
+ React.createElement("td", { className: "token-usage-cell" }, this.formatNumber(totalTokens)),
78
92
  React.createElement("td", { className: "token-usage-cell", title: exactDateString }, this.formatDate(lastUsedDate))));
79
93
  }
80
94
  renderSummaryRow() {
@@ -84,12 +98,20 @@ let AITokenUsageConfigurationWidget = AITokenUsageConfigurationWidget_1 = class
84
98
  }
85
99
  const totalInputTokens = this.tokenUsageData.reduce((sum, model) => sum + model.inputTokens, 0);
86
100
  const totalOutputTokens = this.tokenUsageData.reduce((sum, model) => sum + model.outputTokens, 0);
87
- const totalTokens = totalInputTokens + totalOutputTokens;
101
+ const totalCachedInputTokens = this.tokenUsageData.reduce((sum, model) => sum + (model.cachedInputTokens || 0), 0);
102
+ const totalReadCachedInputTokens = this.tokenUsageData.reduce((sum, model) => sum + (model.readCachedInputTokens || 0), 0);
103
+ const totalTokens = totalInputTokens + totalCachedInputTokens + totalOutputTokens;
104
+ const showCacheColumns = this.hasCacheData();
88
105
  return (React.createElement("tr", { className: "token-usage-summary-row" },
89
106
  React.createElement("td", { className: "token-usage-model-cell" },
90
107
  React.createElement("strong", null, core_1.nls.localize('theia/ai/tokenUsage/total', 'Total'))),
91
108
  React.createElement("td", { className: "token-usage-cell" },
92
109
  React.createElement("strong", null, this.formatNumber(totalInputTokens))),
110
+ showCacheColumns && (React.createElement(React.Fragment, null,
111
+ React.createElement("td", { className: "token-usage-cell" },
112
+ React.createElement("strong", null, this.formatNumber(totalCachedInputTokens))),
113
+ React.createElement("td", { className: "token-usage-cell" },
114
+ React.createElement("strong", null, this.formatNumber(totalReadCachedInputTokens))))),
93
115
  React.createElement("td", { className: "token-usage-cell" },
94
116
  React.createElement("strong", null, this.formatNumber(totalOutputTokens))),
95
117
  React.createElement("td", { className: "token-usage-cell" },
@@ -1 +1 @@
1
- {"version":3,"file":"token-usage-configuration-widget.js","sourceRoot":"","sources":["../../../src/browser/ai-configuration/token-usage-configuration-widget.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"token-usage-configuration-widget.js","sourceRoot":"","sources":["../../../src/browser/ai-configuration/token-usage-configuration-widget.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ /// <reference types="react" />
2
+ import { PreferenceService, ReactWidget } from '@theia/core/lib/browser';
3
+ import * as React from '@theia/core/shared/react';
4
+ import { ToolConfirmationManager, ToolConfirmationMode } from '@theia/ai-chat/lib/browser/chat-tool-preferences';
5
+ import { ToolInvocationRegistry } from '@theia/ai-core';
6
+ export declare class AIToolsConfigurationWidget extends ReactWidget {
7
+ static readonly ID = "ai-tools-configuration-widget";
8
+ static readonly LABEL = "Tools";
9
+ protected readonly confirmationManager: ToolConfirmationManager;
10
+ protected readonly preferenceService: PreferenceService;
11
+ protected readonly toolInvocationRegistry: ToolInvocationRegistry;
12
+ protected tools: string[];
13
+ protected toolConfirmationModes: Record<string, ToolConfirmationMode>;
14
+ protected defaultState: ToolConfirmationMode;
15
+ protected loading: boolean;
16
+ protected init(): void;
17
+ protected loadData(): Promise<void>;
18
+ protected loadTools(): Promise<string[]>;
19
+ protected loadDefaultConfirmation(): Promise<ToolConfirmationMode>;
20
+ protected loadToolConfigurationModes(): Promise<Record<string, ToolConfirmationMode>>;
21
+ protected updateToolConfirmationMode(tool: string, state: ToolConfirmationMode): Promise<void>;
22
+ protected updateDefaultConfirmation(state: ToolConfirmationMode): Promise<void>;
23
+ protected handleToolConfirmationModeChange: (tool: string, event: React.ChangeEvent<HTMLSelectElement>) => Promise<void>;
24
+ protected handleDefaultStateChange: (event: React.ChangeEvent<HTMLSelectElement>) => Promise<void>;
25
+ protected getColoring(mode: ToolConfirmationMode, renderDefault?: boolean): string;
26
+ protected resetAllToolsToDefault(): Promise<void>;
27
+ protected render(): React.ReactNode;
28
+ }
29
+ //# sourceMappingURL=tools-configuration-widget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools-configuration-widget.d.ts","sourceRoot":"","sources":["../../../src/browser/ai-configuration/tools-configuration-widget.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAiB,MAAM,yBAAyB,CAAC;AAExF,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACjH,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAQxD,qBACa,0BAA2B,SAAQ,WAAW;IACvD,MAAM,CAAC,QAAQ,CAAC,EAAE,mCAAmC;IACrD,MAAM,CAAC,QAAQ,CAAC,KAAK,WAAW;IAGhC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;IAGhE,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAGlE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,CAAM;IAC/B,SAAS,CAAC,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAM;IAC3E,SAAS,CAAC,YAAY,EAAE,oBAAoB,CAAC;IAC7C,SAAS,CAAC,OAAO,UAAQ;IAGzB,SAAS,CAAC,IAAI,IAAI,IAAI;cAqBN,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;cASzB,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;cAG9B,uBAAuB,IAAI,OAAO,CAAC,oBAAoB,CAAC;cAGxD,0BAA0B,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;cAG3E,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;cAGpF,yBAAyB,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrF,SAAS,CAAC,gCAAgC,SAAgB,MAAM,SAAS,MAAM,WAAW,CAAC,iBAAiB,CAAC,mBAG3G;IACF,SAAS,CAAC,wBAAwB,UAAiB,MAAM,WAAW,CAAC,iBAAiB,CAAC,mBAGrF;IAEF,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,oBAAoB,EAAE,aAAa,UAAQ,GAAG,MAAM;cAYhE,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;IAavD,SAAS,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS;CA+DtC"}
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2025 EclipseSource GmbH.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ var AIToolsConfigurationWidget_1;
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.AIToolsConfigurationWidget = void 0;
20
+ const tslib_1 = require("tslib");
21
+ const browser_1 = require("@theia/core/lib/browser");
22
+ const inversify_1 = require("@theia/core/shared/inversify");
23
+ const React = require("@theia/core/shared/react");
24
+ const chat_tool_preferences_1 = require("@theia/ai-chat/lib/browser/chat-tool-preferences");
25
+ const ai_core_1 = require("@theia/ai-core");
26
+ const TOOL_OPTIONS = [
27
+ { value: chat_tool_preferences_1.ToolConfirmationMode.DISABLED, label: 'Disabled', icon: 'close', color: 'var(--theia-errorForeground)' },
28
+ { value: chat_tool_preferences_1.ToolConfirmationMode.CONFIRM, label: 'Confirm', icon: 'question', color: 'var(--theia-descriptionForeground)' },
29
+ { value: chat_tool_preferences_1.ToolConfirmationMode.YOLO, label: 'Yolo', icon: 'thumbsup', color: 'var(--theia-successForeground)' },
30
+ ];
31
+ let AIToolsConfigurationWidget = AIToolsConfigurationWidget_1 = class AIToolsConfigurationWidget extends browser_1.ReactWidget {
32
+ constructor() {
33
+ super(...arguments);
34
+ // Mocked tool list and state
35
+ this.tools = [];
36
+ this.toolConfirmationModes = {};
37
+ this.loading = true;
38
+ this.handleToolConfirmationModeChange = async (tool, event) => {
39
+ const newState = event.target.value;
40
+ await this.updateToolConfirmationMode(tool, newState);
41
+ };
42
+ this.handleDefaultStateChange = async (event) => {
43
+ const newState = event.target.value;
44
+ await this.updateDefaultConfirmation(newState);
45
+ };
46
+ }
47
+ init() {
48
+ this.id = AIToolsConfigurationWidget_1.ID;
49
+ this.title.label = AIToolsConfigurationWidget_1.LABEL;
50
+ this.title.closable = false;
51
+ this.loadData();
52
+ this.update();
53
+ this.toDispose.pushAll([
54
+ this.preferenceService.onPreferenceChanged(async (e) => {
55
+ if (e.preferenceName === 'ai-features.chat.toolConfirmation') {
56
+ this.defaultState = await this.loadDefaultConfirmation();
57
+ this.toolConfirmationModes = await this.loadToolConfigurationModes();
58
+ this.update();
59
+ }
60
+ }),
61
+ this.toolInvocationRegistry.onDidChange(async () => {
62
+ this.tools = await this.loadTools();
63
+ this.update();
64
+ })
65
+ ]);
66
+ }
67
+ async loadData() {
68
+ // Replace with real service calls
69
+ this.tools = await this.loadTools();
70
+ this.defaultState = await this.loadDefaultConfirmation();
71
+ this.toolConfirmationModes = await this.loadToolConfigurationModes();
72
+ this.loading = false;
73
+ this.update();
74
+ }
75
+ async loadTools() {
76
+ return this.toolInvocationRegistry.getAllFunctions().map(func => func.name);
77
+ }
78
+ async loadDefaultConfirmation() {
79
+ return this.confirmationManager.getConfirmationMode('*', 'doesNotMatter');
80
+ }
81
+ async loadToolConfigurationModes() {
82
+ return this.confirmationManager.getAllConfirmationSettings();
83
+ }
84
+ async updateToolConfirmationMode(tool, state) {
85
+ await this.confirmationManager.setConfirmationMode(tool, state);
86
+ }
87
+ async updateDefaultConfirmation(state) {
88
+ await this.confirmationManager.setConfirmationMode('*', state);
89
+ }
90
+ getColoring(mode, renderDefault = false) {
91
+ if (!renderDefault && mode === this.defaultState) {
92
+ return '';
93
+ }
94
+ if (mode === chat_tool_preferences_1.ToolConfirmationMode.YOLO) {
95
+ return ' ai-tools-configuration-tool-select--yolo';
96
+ }
97
+ else if (mode === chat_tool_preferences_1.ToolConfirmationMode.DISABLED) {
98
+ return ' ai-tools-configuration-tool-select--disabled';
99
+ }
100
+ return ' ai-tools-configuration-tool-select--confirm';
101
+ }
102
+ async resetAllToolsToDefault() {
103
+ const dialog = new browser_1.ConfirmDialog({
104
+ title: 'Reset All Tool Confirmation Modes',
105
+ msg: 'Are you sure you want to reset all tool confirmation modes to the default? This will remove all custom settings.',
106
+ ok: 'Reset All',
107
+ cancel: 'Cancel'
108
+ });
109
+ const shouldReset = await dialog.open();
110
+ if (shouldReset) {
111
+ this.confirmationManager.resetAllConfirmationModeSettings();
112
+ }
113
+ }
114
+ render() {
115
+ if (this.loading) {
116
+ return React.createElement("div", null, "Loading tools...");
117
+ }
118
+ return React.createElement("div", { className: 'ai-tools-configuration-container' },
119
+ React.createElement("div", { className: 'ai-tools-configuration-default-section', style: { display: 'flex', alignItems: 'center', gap: 8 } },
120
+ React.createElement("div", { className: 'ai-tools-configuration-default-label' }, "Default Tool Confirmation Mode:"),
121
+ React.createElement("select", { className: `ai-tools-configuration-default-select ${this.getColoring(this.defaultState, true)}`, value: this.defaultState, onChange: this.handleDefaultStateChange, style: { marginLeft: 8 } }, TOOL_OPTIONS.map(opt => (React.createElement("option", { className: this.getColoring(opt.value, true), key: opt.value, value: opt.value }, opt.label)))),
122
+ React.createElement("button", { className: 'ai-tools-configuration-reset-btn', style: { marginLeft: 'auto' }, title: 'Reset all tools to default', onClick: () => this.resetAllToolsToDefault() }, "Reset All")),
123
+ React.createElement("div", { className: 'ai-tools-configuration-tools-section' },
124
+ React.createElement("div", { className: 'ai-tools-configuration-tools-label' }, "Tools"),
125
+ React.createElement("ul", { className: 'ai-tools-configuration-tools-list' }, this.tools.map(tool => {
126
+ const state = this.toolConfirmationModes[tool] || this.defaultState;
127
+ const isDefault = state === this.defaultState;
128
+ let selectClass = 'ai-tools-configuration-tool-select';
129
+ if (!isDefault) {
130
+ selectClass += `${this.getColoring(state)}`;
131
+ }
132
+ return (React.createElement("li", { key: tool, className: 'ai-tools-configuration-tool-item ' +
133
+ (isDefault ? 'default' : 'custom') },
134
+ React.createElement("span", { className: 'ai-tools-configuration-tool-name' }, tool),
135
+ React.createElement("select", { className: selectClass, value: state, onChange: e => this.handleToolConfirmationModeChange(tool, e) }, TOOL_OPTIONS.map(opt => (React.createElement("option", { className: this.getColoring(opt.value, true), key: opt.value, value: opt.value }, opt.label))))));
136
+ }))));
137
+ }
138
+ };
139
+ exports.AIToolsConfigurationWidget = AIToolsConfigurationWidget;
140
+ AIToolsConfigurationWidget.ID = 'ai-tools-configuration-widget';
141
+ AIToolsConfigurationWidget.LABEL = 'Tools';
142
+ tslib_1.__decorate([
143
+ (0, inversify_1.inject)(chat_tool_preferences_1.ToolConfirmationManager),
144
+ tslib_1.__metadata("design:type", chat_tool_preferences_1.ToolConfirmationManager)
145
+ ], AIToolsConfigurationWidget.prototype, "confirmationManager", void 0);
146
+ tslib_1.__decorate([
147
+ (0, inversify_1.inject)(browser_1.PreferenceService),
148
+ tslib_1.__metadata("design:type", Object)
149
+ ], AIToolsConfigurationWidget.prototype, "preferenceService", void 0);
150
+ tslib_1.__decorate([
151
+ (0, inversify_1.inject)(ai_core_1.ToolInvocationRegistry),
152
+ tslib_1.__metadata("design:type", Object)
153
+ ], AIToolsConfigurationWidget.prototype, "toolInvocationRegistry", void 0);
154
+ tslib_1.__decorate([
155
+ (0, inversify_1.postConstruct)(),
156
+ tslib_1.__metadata("design:type", Function),
157
+ tslib_1.__metadata("design:paramtypes", []),
158
+ tslib_1.__metadata("design:returntype", void 0)
159
+ ], AIToolsConfigurationWidget.prototype, "init", null);
160
+ exports.AIToolsConfigurationWidget = AIToolsConfigurationWidget = AIToolsConfigurationWidget_1 = tslib_1.__decorate([
161
+ (0, inversify_1.injectable)()
162
+ ], AIToolsConfigurationWidget);
163
+ //# sourceMappingURL=tools-configuration-widget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools-configuration-widget.js","sourceRoot":"","sources":["../../../src/browser/ai-configuration/tools-configuration-widget.tsx"],"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,qDAAwF;AACxF,4DAAiF;AACjF,kDAAkD;AAClD,4FAAiH;AACjH,4CAAwD;AAExD,MAAM,YAAY,GAAkF;IAChG,EAAE,KAAK,EAAE,4CAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,8BAA8B,EAAE;IACjH,EAAE,KAAK,EAAE,4CAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,oCAAoC,EAAE;IACxH,EAAE,KAAK,EAAE,4CAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,gCAAgC,EAAE;CACjH,CAAC;AAGK,IAAM,0BAA0B,kCAAhC,MAAM,0BAA2B,SAAQ,qBAAW;IAApD;;QAaH,6BAA6B;QACnB,UAAK,GAAa,EAAE,CAAC;QACrB,0BAAqB,GAAyC,EAAE,CAAC;QAEjE,YAAO,GAAG,IAAI,CAAC;QAiDf,qCAAgC,GAAG,KAAK,EAAE,IAAY,EAAE,KAA2C,EAAE,EAAE;YAC7G,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,KAA6B,CAAC;YAC5D,MAAM,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC1D,CAAC,CAAC;QACQ,6BAAwB,GAAG,KAAK,EAAE,KAA2C,EAAE,EAAE;YACvF,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,KAA6B,CAAC;YAC5D,MAAM,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC;QACnD,CAAC,CAAC;IA0FN,CAAC;IA/Ia,IAAI;QACV,IAAI,CAAC,EAAE,GAAG,4BAA0B,CAAC,EAAE,CAAC;QACxC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,4BAA0B,CAAC,KAAK,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC5B,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YACnB,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;gBACjD,IAAI,CAAC,CAAC,cAAc,KAAK,mCAAmC,EAAE,CAAC;oBAC3D,IAAI,CAAC,YAAY,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;oBACzD,IAAI,CAAC,qBAAqB,GAAG,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;oBACrE,IAAI,CAAC,MAAM,EAAE,CAAC;gBAClB,CAAC;YACL,CAAC,CAAC;YACF,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE;gBAC/C,IAAI,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;gBACpC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,CAAC,CAAC;SACL,CAAC,CAAC;IACP,CAAC;IAES,KAAK,CAAC,QAAQ;QACpB,kCAAkC;QAClC,IAAI,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACpC,IAAI,CAAC,YAAY,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACzD,IAAI,CAAC,qBAAqB,GAAG,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;QACrE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAES,KAAK,CAAC,SAAS;QACrB,OAAO,IAAI,CAAC,sBAAsB,CAAC,eAAe,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChF,CAAC;IACS,KAAK,CAAC,uBAAuB;QACnC,OAAO,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IAC9E,CAAC;IACS,KAAK,CAAC,0BAA0B;QACtC,OAAO,IAAI,CAAC,mBAAmB,CAAC,0BAA0B,EAAE,CAAC;IACjE,CAAC;IACS,KAAK,CAAC,0BAA0B,CAAC,IAAY,EAAE,KAA2B;QAChF,MAAM,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACpE,CAAC;IACS,KAAK,CAAC,yBAAyB,CAAC,KAA2B;QACjE,MAAM,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IAWS,WAAW,CAAC,IAA0B,EAAE,aAAa,GAAG,KAAK;QACnE,IAAI,CAAC,aAAa,IAAI,IAAI,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;YAC/C,OAAO,EAAE,CAAC;QACd,CAAC;QACD,IAAI,IAAI,KAAK,4CAAoB,CAAC,IAAI,EAAE,CAAC;YACrC,OAAO,2CAA2C,CAAC;QACvD,CAAC;aAAM,IAAI,IAAI,KAAK,4CAAoB,CAAC,QAAQ,EAAE,CAAC;YAChD,OAAO,+CAA+C,CAAC;QAC3D,CAAC;QACD,OAAO,8CAA8C,CAAC;IAC1D,CAAC;IAES,KAAK,CAAC,sBAAsB;QAClC,MAAM,MAAM,GAAG,IAAI,uBAAa,CAAC;YAC7B,KAAK,EAAE,mCAAmC;YAC1C,GAAG,EAAE,kHAAkH;YACvH,EAAE,EAAE,WAAW;YACf,MAAM,EAAE,QAAQ;SACnB,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACxC,IAAI,WAAW,EAAE,CAAC;YACd,IAAI,CAAC,mBAAmB,CAAC,gCAAgC,EAAE,CAAC;QAChE,CAAC;IACL,CAAC;IAES,MAAM;QACZ,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,oDAA2B,CAAC;QACvC,CAAC;QACD,OAAO,6BAAK,SAAS,EAAC,kCAAkC;YACpD,6BAAK,SAAS,EAAC,wCAAwC,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE;gBAC5G,6BAAK,SAAS,EAAC,sCAAsC,sCAAsC;gBAC3F,gCACI,SAAS,EAAE,yCAAyC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,EAC/F,KAAK,EAAE,IAAI,CAAC,YAAY,EACxB,QAAQ,EAAE,IAAI,CAAC,wBAAwB,EACvC,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,IAEvB,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CACrB,gCAAQ,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,IAAG,GAAG,CAAC,KAAK,CAAU,CAC/G,CAAC,CACG;gBACT,gCACI,SAAS,EAAC,kCAAkC,EAC5C,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,EAC7B,KAAK,EAAC,4BAA4B,EAClC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,gBAGvC,CACP;YACN,6BAAK,SAAS,EAAC,sCAAsC;gBACjD,6BAAK,SAAS,EAAC,oCAAoC,YAAY;gBAC/D,4BAAI,SAAS,EAAC,mCAAmC,IAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBACnB,MAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC;oBACpE,MAAM,SAAS,GAAG,KAAK,KAAK,IAAI,CAAC,YAAY,CAAC;oBAC9C,IAAI,WAAW,GAAG,oCAAoC,CAAC;oBACvD,IAAI,CAAC,SAAS,EAAE,CAAC;wBACb,WAAW,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;oBAChD,CAAC;oBACD,OAAO,CACH,4BACI,GAAG,EAAE,IAAI,EACT,SAAS,EACL,mCAAmC;4BACnC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;wBAGtC,8BAAM,SAAS,EAAC,kCAAkC,IAAE,IAAI,CAAQ;wBAChE,gCACI,SAAS,EAAE,WAAW,EACtB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,gCAAgC,CAAC,IAAI,EAAE,CAAC,CAAC,IAE5D,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CACrB,gCAAQ,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,IACjF,GAAG,CAAC,KAAK,CACL,CACZ,CAAC,CACG,CACR,CACR,CAAC;gBACN,CAAC,CAAC,CACD,CACH,CACJ,CAAC;IACX,CAAC;;AAlKQ,gEAA0B;AACnB,6BAAE,GAAG,+BAA+B,AAAlC,CAAmC;AACrC,gCAAK,GAAG,OAAO,AAAV,CAAW;AAGb;IADlB,IAAA,kBAAM,EAAC,+CAAuB,CAAC;sCACQ,+CAAuB;uEAAC;AAG7C;IADlB,IAAA,kBAAM,EAAC,2BAAiB,CAAC;;qEAC8B;AAGrC;IADlB,IAAA,kBAAM,EAAC,gCAAsB,CAAC;;0EACmC;AASxD;IADT,IAAA,yBAAa,GAAE;;;;sDAoBf;qCAvCQ,0BAA0B;IADtC,IAAA,sBAAU,GAAE;GACA,0BAA0B,CAmKtC"}
@@ -0,0 +1,36 @@
1
+ import { AbstractStreamParsingChatAgent } from '@theia/ai-chat/lib/common/chat-agents';
2
+ import { MutableChatRequestModel } from '@theia/ai-chat/lib/common/chat-model';
3
+ import { BasePromptFragment, LanguageModelRequirement } from '@theia/ai-core/lib/common';
4
+ import { MCPFrontendService } from '@theia/ai-mcp/lib/common/mcp-server-manager';
5
+ import { PreferenceService } from '@theia/core/lib/browser';
6
+ export declare const EXPECTED_MCP_SERVER_NAME = "playwright";
7
+ export declare const appTesterTemplate: BasePromptFragment;
8
+ export declare const appTesterTemplateVariant: BasePromptFragment;
9
+ export declare const AppTesterChatAgentId = "AppTester";
10
+ export declare class AppTesterChatAgent extends AbstractStreamParsingChatAgent {
11
+ protected readonly mcpService: MCPFrontendService;
12
+ protected readonly preferenceService: PreferenceService;
13
+ id: string;
14
+ name: string;
15
+ languageModelRequirements: LanguageModelRequirement[];
16
+ protected defaultLanguageModelPurpose: string;
17
+ description: string;
18
+ iconClass: string;
19
+ protected systemPromptId: string;
20
+ prompts: {
21
+ id: string;
22
+ defaultVariant: BasePromptFragment;
23
+ variants: BasePromptFragment[];
24
+ }[];
25
+ /**
26
+ * Override invoke to check if the Playwright MCP server is running, and if not, ask the user if it should be started.
27
+ */
28
+ invoke(request: MutableChatRequestModel): Promise<void>;
29
+ /**
30
+ * Starts the Playwright MCP server if it doesn't exist or isn't running.
31
+ *
32
+ * @returns A promise that resolves when the server is started
33
+ */
34
+ startPlaywrightMCPServer(): Promise<void>;
35
+ }
36
+ //# sourceMappingURL=app-tester-chat-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-tester-chat-agent.d.ts","sourceRoot":"","sources":["../../src/browser/app-tester-chat-agent.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,8BAA8B,EAAE,MAAM,uCAAuC,CAAC;AACvF,OAAO,EAAiE,uBAAuB,EAA+B,MAAM,sCAAsC,CAAC;AAC3K,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACzF,OAAO,EAAE,kBAAkB,EAAwB,MAAM,6CAA6C,CAAC;AAIvG,OAAO,EAAmB,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE7E,eAAO,MAAM,wBAAwB,eAAe,CAAC;AAGrD,eAAO,MAAM,iBAAiB,EAAE,kBA6B/B,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,kBAGtC,CAAC;AAEF,eAAO,MAAM,oBAAoB,cAAc,CAAC;AAChD,qBACa,kBAAmB,SAAQ,8BAA8B;IAGnE,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;IAGlD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAExD,EAAE,EAAE,MAAM,CAAwB;IAClC,IAAI,SAAwB;IAC5B,yBAAyB,EAAE,wBAAwB,EAAE,CAGlD;IACH,SAAS,CAAC,2BAA2B,EAAE,MAAM,CAAU;IAC9C,WAAW,SACkF;IAE7F,SAAS,EAAE,MAAM,CAA4B;IACtD,UAAmB,cAAc,EAAE,MAAM,CAAuB;IACvD,OAAO;;;;QAA0G;IAE1H;;OAEG;IACY,MAAM,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IA+CtE;;;;OAIG;IACG,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC;CA+BjD"}