genaicode 0.13.2 → 0.14.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 (57) hide show
  1. package/dist/main/common/console-types.d.ts +23 -0
  2. package/dist/main/common/console-types.js +8 -0
  3. package/dist/main/common/console-types.js.map +1 -0
  4. package/dist/main/common/user-actions.d.ts +4 -1
  5. package/dist/main/common/user-actions.js +10 -0
  6. package/dist/main/common/user-actions.js.map +1 -1
  7. package/dist/main/ui/backend/endpoints/console-logs-endpoint.d.ts +1 -0
  8. package/dist/main/ui/backend/endpoints/console-logs-endpoint.js +19 -0
  9. package/dist/main/ui/backend/endpoints/console-logs-endpoint.js.map +1 -0
  10. package/dist/main/ui/backend/endpoints/question-endpoint.js +4 -1
  11. package/dist/main/ui/backend/endpoints/question-endpoint.js.map +1 -1
  12. package/dist/main/ui/backend/service.d.ts +3 -2
  13. package/dist/main/ui/backend/service.js +19 -1
  14. package/dist/main/ui/backend/service.js.map +1 -1
  15. package/dist/main/ui/common/api-types.d.ts +2 -0
  16. package/dist/main/ui/common/api-types.js.map +1 -1
  17. package/dist/main/ui/frontend/assets/index-DZyMi0i2.js +2881 -0
  18. package/dist/main/ui/frontend/index.html +1 -1
  19. package/dist/main/ui/user-action-handlers.js +13 -1
  20. package/dist/main/ui/user-action-handlers.js.map +1 -1
  21. package/dist/prompt/function-calling.js +4 -0
  22. package/dist/prompt/function-calling.js.map +1 -1
  23. package/dist/prompt/function-defs/ask-question.js +2 -0
  24. package/dist/prompt/function-defs/ask-question.js.map +1 -1
  25. package/dist/prompt/function-defs/pull-console-logs.d.ts +2 -0
  26. package/dist/prompt/function-defs/pull-console-logs.js +29 -0
  27. package/dist/prompt/function-defs/pull-console-logs.js.map +1 -0
  28. package/dist/prompt/function-defs/structured-question.d.ts +2 -0
  29. package/dist/prompt/function-defs/structured-question.js +64 -0
  30. package/dist/prompt/function-defs/structured-question.js.map +1 -0
  31. package/dist/prompt/steps/step-ask-question/ask-question-handler.d.ts +2 -1
  32. package/dist/prompt/steps/step-ask-question/ask-question-handler.js +1 -0
  33. package/dist/prompt/steps/step-ask-question/ask-question-handler.js.map +1 -1
  34. package/dist/prompt/steps/step-ask-question/handlers/handle-pull-console-logs.d.ts +2 -0
  35. package/dist/prompt/steps/step-ask-question/handlers/handle-pull-console-logs.js +174 -0
  36. package/dist/prompt/steps/step-ask-question/handlers/handle-pull-console-logs.js.map +1 -0
  37. package/dist/prompt/steps/step-ask-question/handlers/handle-structured-question.d.ts +1 -0
  38. package/dist/prompt/steps/step-ask-question/handlers/handle-structured-question.js +72 -0
  39. package/dist/prompt/steps/step-ask-question/handlers/handle-structured-question.js.map +1 -0
  40. package/dist/prompt/steps/step-ask-question/step-ask-question-types.d.ts +44 -1
  41. package/dist/prompt/steps/step-ask-question/step-ask-question.d.ts +7 -5
  42. package/dist/prompt/steps/step-ask-question/step-ask-question.js +7 -5
  43. package/dist/prompt/steps/step-ask-question/step-ask-question.js.map +1 -1
  44. package/dist/prompt/systemprompt.js +28 -0
  45. package/dist/prompt/systemprompt.js.map +1 -1
  46. package/dist/vite-genaicode/console-interceptor.d.ts +40 -0
  47. package/dist/vite-genaicode/console-interceptor.js +85 -0
  48. package/dist/vite-genaicode/console-interceptor.js.map +1 -0
  49. package/dist/vite-genaicode/vite-genaicode-frontend.js +11 -0
  50. package/dist/vite-genaicode/vite-genaicode-frontend.js.map +1 -1
  51. package/dist/vite-genaicode/vite-genaicode-plugin.d.ts +1 -0
  52. package/dist/vite-genaicode/vite-genaicode-plugin.js +3 -1
  53. package/dist/vite-genaicode/vite-genaicode-plugin.js.map +1 -1
  54. package/dist/vite-genaicode/vite-genaicode-types.d.ts +2 -0
  55. package/dist/vite-genaicode/vite-genaicode-types.js.map +1 -1
  56. package/package.json +2 -2
  57. package/dist/main/ui/frontend/assets/index-D7POc8gK.js +0 -2694
@@ -7,7 +7,7 @@
7
7
  <meta name="keywords" content="GenAIcode, AI, code generation, programming" />
8
8
  <title>GenAIcode - AI-Powered Code Generation</title>
9
9
  <link rel="icon" href="/assets/favicon-DvroFOpS.png" type="image/png" />
10
- <script type="module" crossorigin src="/assets/index-D7POc8gK.js"></script>
10
+ <script type="module" crossorigin src="/assets/index-DZyMi0i2.js"></script>
11
11
  <link rel="stylesheet" crossorigin href="/assets/index-5QDg_0vR.css">
12
12
  </head>
13
13
  <body data-security-token="__SECURITY_TOKEN__">
@@ -1,4 +1,4 @@
1
- import { registerConfirmHandler, registerInputHandler, registerSecretHandler } from '../common/user-actions.js';
1
+ import { registerConfirmHandler, registerInputHandler, registerSecretHandler, registerStructuredQuestionHandler, } from '../common/user-actions.js';
2
2
  export function registerUserActionHandlers(service) {
3
3
  registerInputHandler((_, message, promptActionType) => service.askQuestion(message, {
4
4
  promptActionType,
@@ -18,5 +18,17 @@ export function registerUserActionHandlers(service) {
18
18
  });
19
19
  return res?.answer || undefined;
20
20
  });
21
+ registerStructuredQuestionHandler(async (form) => {
22
+ const questionId = Date.now().toString();
23
+ const currentQuestion = await service.getCurrentQuestion();
24
+ // Set up the structured question
25
+ if (!currentQuestion || currentQuestion.id !== questionId) {
26
+ return await service.askStructuredQuestion('Please complete the form', form);
27
+ }
28
+ return {
29
+ submitted: false,
30
+ values: {},
31
+ };
32
+ });
21
33
  }
22
34
  //# sourceMappingURL=user-action-handlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"user-action-handlers.js","sourceRoot":"","sources":["../../../src/main/ui/user-action-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAGhH,MAAM,UAAU,0BAA0B,CAAC,OAAgB;IACzD,oBAAoB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,CACpD,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE;QAC3B,gBAAgB;KACjB,CAAC,CACH,CAAC;IACF,sBAAsB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACrC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE;YACvD,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,YAAY,EAAE,KAAK,CAAC,YAAY;SACjC,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC,CAAC;IACH,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE;YAC5C,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;QACH,OAAO,GAAG,EAAE,MAAM,IAAI,SAAS,CAAC;IAClC,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"user-action-handlers.js","sourceRoot":"","sources":["../../../src/main/ui/user-action-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,iCAAiC,GAClC,MAAM,2BAA2B,CAAC;AAGnC,MAAM,UAAU,0BAA0B,CAAC,OAAgB;IACzD,oBAAoB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,CACpD,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE;QAC3B,gBAAgB;KACjB,CAAC,CACH,CAAC;IACF,sBAAsB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACrC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE;YACvD,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,YAAY,EAAE,KAAK,CAAC,YAAY;SACjC,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC,CAAC;IACH,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE;YAC5C,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;QACH,OAAO,GAAG,EAAE,MAAM,IAAI,SAAS,CAAC;IAClC,CAAC,CAAC,CAAC;IACH,iCAAiC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;QACzC,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAE3D,iCAAiC;QACjC,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;YAC1D,OAAO,MAAM,OAAO,CAAC,qBAAqB,CAAC,0BAA0B,EAAE,IAAI,CAAC,CAAC;QAC/E,CAAC;QAED,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -26,6 +26,8 @@ import { runContainerTaskDef } from './function-defs/run-container-task.js';
26
26
  import { getRunProjectCommandDef } from './function-defs/run-project-command.js';
27
27
  import { webSearchDef } from './function-defs/web-search.js';
28
28
  import { getRunBashCommandDef } from './function-defs/run-bash-command.js';
29
+ import { pullConsoleLogs } from './function-defs/pull-console-logs.js';
30
+ import { structuredQuestionDef } from './function-defs/structured-question.js';
29
31
  /**
30
32
  * Function definitions for function calling feature
31
33
  */
@@ -50,6 +52,7 @@ export function getFunctionDefs() {
50
52
  performAnalysis,
51
53
  analysisResult,
52
54
  pullAppContext,
55
+ pullConsoleLogs,
53
56
  pushAppContext,
54
57
  genaicodeHelpDef,
55
58
  reasoningInference,
@@ -69,6 +72,7 @@ export function getFunctionDefs() {
69
72
  getRunProjectCommandDef(),
70
73
  getRunBashCommandDef(),
71
74
  webSearchDef,
75
+ structuredQuestionDef,
72
76
  ...getOperationDefs(),
73
77
  ].map((fd) => {
74
78
  if (!disableExplanations &&
@@ -1 +1 @@
1
- {"version":3,"file":"function-calling.js","sourceRoot":"","sources":["../../src/prompt/function-calling.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"function-calling.js","sourceRoot":"","sources":["../../src/prompt/function-calling.ts"],"names":[],"mappings":"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"}
@@ -69,6 +69,8 @@ export function getActionTypeOptions() {
69
69
  'reasoningInference',
70
70
  'conversationGraph',
71
71
  'compoundAction',
72
+ 'pullConsoleLogs',
73
+ 'structuredQuestion',
72
74
  ];
73
75
  }
74
76
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ask-question.js","sourceRoot":"","sources":["../../../src/prompt/function-defs/ask-question.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ask-question.js","sourceRoot":"","sources":["../../../src/prompt/function-defs/ask-question.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { FunctionDef } from '../../ai-service/common-types.js';
2
+ export declare const pullConsoleLogs: FunctionDef;
@@ -0,0 +1,29 @@
1
+ export const pullConsoleLogs = {
2
+ name: 'pullConsoleLogs',
3
+ description: 'Retrieves captured console logs from the application.',
4
+ parameters: {
5
+ type: 'object',
6
+ properties: {
7
+ mode: {
8
+ type: 'string',
9
+ description: 'The mode for retrieving logs.',
10
+ enum: ['suffix', 'prefix', 'summary'],
11
+ },
12
+ prompt: {
13
+ type: 'string',
14
+ description: "An optional prompt to include when retrieving the logs. (for 'summary' mode)",
15
+ },
16
+ lines: {
17
+ type: 'number',
18
+ description: "Number of log lines to retrieve (for 'prefix' and 'suffix' modes).",
19
+ },
20
+ level: {
21
+ type: 'string',
22
+ description: 'Filter logs by a specific level.',
23
+ enum: ['log', 'info', 'warn', 'error', 'debug', 'trace', 'assert'],
24
+ },
25
+ },
26
+ required: ['mode'],
27
+ },
28
+ };
29
+ //# sourceMappingURL=pull-console-logs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pull-console-logs.js","sourceRoot":"","sources":["../../../src/prompt/function-defs/pull-console-logs.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAgB;IAC1C,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE,uDAAuD;IACpE,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+BAA+B;gBAC5C,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC;aACtC;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8EAA8E;aAC5F;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oEAAoE;aAClF;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kCAAkC;gBAC/C,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;aACnE;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,CAAC;KACnB;CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { FunctionDef } from '../../ai-service/common-types.js';
2
+ export declare const structuredQuestionDef: FunctionDef;
@@ -0,0 +1,64 @@
1
+ export const structuredQuestionDef = {
2
+ name: 'structuredQuestion',
3
+ description: 'Present a structured form with multiple input types (checkboxes, radio buttons, selects, text fields, etc.) to collect user input.',
4
+ parameters: {
5
+ type: 'object',
6
+ properties: {
7
+ message: {
8
+ type: 'string',
9
+ description: 'Main question/prompt for the user',
10
+ },
11
+ form: {
12
+ type: 'object',
13
+ properties: {
14
+ title: { type: 'string' },
15
+ description: { type: 'string' },
16
+ fields: {
17
+ type: 'array',
18
+ items: {
19
+ type: 'object',
20
+ properties: {
21
+ id: { type: 'string' },
22
+ label: { type: 'string' },
23
+ type: {
24
+ type: 'string',
25
+ enum: ['text', 'checkbox', 'radio', 'select', 'textarea', 'number', 'email'],
26
+ },
27
+ required: { type: 'boolean' },
28
+ placeholder: { type: 'string' },
29
+ options: {
30
+ type: 'array',
31
+ items: {
32
+ type: 'object',
33
+ properties: {
34
+ value: { type: 'string' },
35
+ label: { type: 'string' },
36
+ },
37
+ required: ['value', 'label'],
38
+ },
39
+ },
40
+ defaultValue: {
41
+ oneOf: [{ type: 'string' }, { type: 'array', items: { type: 'string' } }],
42
+ },
43
+ validation: {
44
+ type: 'object',
45
+ properties: {
46
+ pattern: { type: 'string' },
47
+ minLength: { type: 'number' },
48
+ maxLength: { type: 'number' },
49
+ },
50
+ },
51
+ },
52
+ required: ['id', 'label', 'type'],
53
+ },
54
+ },
55
+ submitLabel: { type: 'string' },
56
+ cancelLabel: { type: 'string' },
57
+ },
58
+ required: ['title', 'fields'],
59
+ },
60
+ },
61
+ required: ['message', 'form'],
62
+ },
63
+ };
64
+ //# sourceMappingURL=structured-question.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structured-question.js","sourceRoot":"","sources":["../../../src/prompt/function-defs/structured-question.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,qBAAqB,GAAgB;IAChD,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EACT,oIAAoI;IACtI,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mCAAmC;aACjD;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC/B,MAAM,EAAE;wBACN,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,UAAU,EAAE;gCACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gCACtB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gCACzB,IAAI,EAAE;oCACJ,IAAI,EAAE,QAAQ;oCACd,IAAI,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC;iCAC7E;gCACD,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;gCAC7B,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gCAC/B,OAAO,EAAE;oCACP,IAAI,EAAE,OAAO;oCACb,KAAK,EAAE;wCACL,IAAI,EAAE,QAAQ;wCACd,UAAU,EAAE;4CACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4CACzB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yCAC1B;wCACD,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;qCAC7B;iCACF;gCACD,YAAY,EAAE;oCACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;iCAC1E;gCACD,UAAU,EAAE;oCACV,IAAI,EAAE,QAAQ;oCACd,UAAU,EAAE;wCACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wCAC3B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wCAC7B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;qCAC9B;iCACF;6BACF;4BACD,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC;yBAClC;qBACF;oBACD,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC/B,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAChC;gBACD,QAAQ,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;aAC9B;SACF;QACD,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC;KAC9B;CACF,CAAC"}
@@ -1,2 +1,3 @@
1
- import { ActionHandler, ActionType } from './step-ask-question-types';
1
+ import { ActionHandler, ActionType } from './step-ask-question-types.js';
2
+ import './handlers/handle-structured-question.js';
2
3
  export declare function getActionHandler(actionType: ActionType): ActionHandler;
@@ -1,5 +1,6 @@
1
1
  import { getRegisteredActionHandlers } from '../../../main/plugin-loader.js';
2
2
  import { handlers } from './step-ask-question-handlers.js';
3
+ import './handlers/handle-structured-question.js';
3
4
  export function getActionHandler(actionType) {
4
5
  // First, check if there's a plugin-provided handler for this action type
5
6
  const pluginHandler = getRegisteredActionHandlers().get(actionType);
@@ -1 +1 @@
1
- {"version":3,"file":"ask-question-handler.js","sourceRoot":"","sources":["../../../../src/prompt/steps/step-ask-question/ask-question-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAG3D,MAAM,UAAU,gBAAgB,CAAC,UAAsB;IACrD,yEAAyE;IACzE,MAAM,aAAa,GAAG,2BAA2B,EAAE,CAAC,GAAG,CAAC,UAAgC,CAAC,CAAC;IAC1F,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,2DAA2D;IAC3D,OAAO,QAAQ,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,aAAa,CAAE,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"ask-question-handler.js","sourceRoot":"","sources":["../../../../src/prompt/steps/step-ask-question/ask-question-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAE3D,OAAO,0CAA0C,CAAC;AAElD,MAAM,UAAU,gBAAgB,CAAC,UAAsB;IACrD,yEAAyE;IACzE,MAAM,aAAa,GAAG,2BAA2B,EAAE,CAAC,GAAG,CAAC,UAAgC,CAAC,CAAC;IAC1F,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,2DAA2D;IAC3D,OAAO,QAAQ,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,aAAa,CAAE,CAAC;AAC1D,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { ActionHandlerProps, ActionResult } from '../step-ask-question-types.js';
2
+ export declare function handlePullConsoleLogs({ askQuestionCall, generateContentFn, prompt, options, }: ActionHandlerProps): Promise<ActionResult>;
@@ -0,0 +1,174 @@
1
+ import { ModelType, } from '../../../../ai-service/common-types.js';
2
+ import { getContextValue } from '../../../../main/common/app-context-bus.js';
3
+ import { getFunctionDefs } from '../../../function-calling.js';
4
+ import { registerActionHandler } from '../step-ask-question-handlers.js';
5
+ import { putSystemMessage } from '../../../../main/common/content-bus.js';
6
+ const MAX_OUTPUT_LENGTH = 2000;
7
+ registerActionHandler('pullConsoleLogs', handlePullConsoleLogs);
8
+ export async function handlePullConsoleLogs({ askQuestionCall, generateContentFn, prompt, options, }) {
9
+ const pullConsoleLogsCall = await generatePullConsoleLogsCall(generateContentFn, prompt, askQuestionCall, options, ModelType.CHEAP);
10
+ putSystemMessage('Retrieving console logs', { ...pullConsoleLogsCall?.args });
11
+ if (!pullConsoleLogsCall?.args) {
12
+ return {
13
+ breakLoop: false,
14
+ items: [],
15
+ };
16
+ }
17
+ const { mode, lines = 20, level, prompt: summaryPrompt } = pullConsoleLogsCall.args;
18
+ const logs = await getContextValue('__console_logs');
19
+ if (!logs || logs.length === 0) {
20
+ return {
21
+ breakLoop: false,
22
+ items: [
23
+ {
24
+ assistant: {
25
+ type: 'assistant',
26
+ text: 'I will retrieve the console logs.',
27
+ functionCalls: [pullConsoleLogsCall],
28
+ },
29
+ user: {
30
+ type: 'user',
31
+ functionResponses: [
32
+ {
33
+ name: 'pullConsoleLogs',
34
+ call_id: pullConsoleLogsCall.id,
35
+ content: 'No console logs have been captured from the application.',
36
+ },
37
+ ],
38
+ },
39
+ },
40
+ ],
41
+ };
42
+ }
43
+ let filteredLogs = logs;
44
+ if (level) {
45
+ filteredLogs = logs.filter((log) => log.level === level);
46
+ }
47
+ if (filteredLogs.length === 0) {
48
+ return {
49
+ breakLoop: false,
50
+ items: [
51
+ {
52
+ assistant: {
53
+ type: 'assistant',
54
+ text: `I will retrieve the console logs with level '${level}'.`,
55
+ functionCalls: [pullConsoleLogsCall],
56
+ },
57
+ user: {
58
+ type: 'user',
59
+ functionResponses: [
60
+ {
61
+ name: 'pullConsoleLogs',
62
+ call_id: pullConsoleLogsCall.id,
63
+ content: `No console logs found with level '${level}'.`,
64
+ },
65
+ ],
66
+ },
67
+ },
68
+ ],
69
+ };
70
+ }
71
+ let content = '';
72
+ switch (mode) {
73
+ case 'prefix':
74
+ content = filteredLogs.slice(0, lines).map(formatLogEntry).join('\n');
75
+ break;
76
+ case 'suffix':
77
+ content = filteredLogs.slice(-lines).map(formatLogEntry).join('\n');
78
+ break;
79
+ case 'summary': {
80
+ const allLogs = filteredLogs.map(formatLogEntry).join('\n');
81
+ content = await summarizeConsoleLogs(allLogs, summaryPrompt, generateContentFn, options);
82
+ break;
83
+ }
84
+ }
85
+ return {
86
+ breakLoop: false,
87
+ items: [
88
+ {
89
+ assistant: {
90
+ type: 'assistant',
91
+ text: `I will retrieve the console logs (mode: ${mode}).`,
92
+ functionCalls: [pullConsoleLogsCall],
93
+ },
94
+ user: {
95
+ type: 'user',
96
+ functionResponses: [
97
+ {
98
+ name: 'pullConsoleLogs',
99
+ call_id: pullConsoleLogsCall.id,
100
+ content: content || 'No logs to display with the given criteria.',
101
+ },
102
+ ],
103
+ },
104
+ },
105
+ ],
106
+ };
107
+ }
108
+ function formatLogEntry(entry) {
109
+ const date = new Date(entry.timestamp).toISOString();
110
+ return `[${date}] [${entry.level.toUpperCase()}] ${entry.message}`;
111
+ }
112
+ async function generatePullConsoleLogsCall(generateContentFn, prompt, askQuestionCall, options, modelType) {
113
+ const req = [
114
+ [
115
+ ...prompt,
116
+ {
117
+ type: 'assistant',
118
+ text: askQuestionCall.args?.message ?? 'I need to check the console logs.',
119
+ },
120
+ {
121
+ type: 'user',
122
+ text: 'Yes, you can pull the console logs.',
123
+ },
124
+ ],
125
+ {
126
+ functionDefs: getFunctionDefs(),
127
+ requiredFunctionName: 'pullConsoleLogs',
128
+ temperature: 0.7,
129
+ modelType,
130
+ expectedResponseType: {
131
+ text: false,
132
+ functionCall: true,
133
+ media: false,
134
+ },
135
+ },
136
+ options,
137
+ ];
138
+ const [pullConsoleLogsCall] = (await generateContentFn(...req))
139
+ .filter((item) => item.type === 'functionCall')
140
+ .map((item) => item.functionCall);
141
+ return pullConsoleLogsCall;
142
+ }
143
+ async function summarizeConsoleLogs(logs, prompt, generateContentFn, options) {
144
+ if (logs.length <= MAX_OUTPUT_LENGTH) {
145
+ return logs;
146
+ }
147
+ const summaryPrompt = [
148
+ {
149
+ type: 'user',
150
+ text: `Please summarize the following console logs:\n\n---\n\n<logs>${logs}</logs>`,
151
+ },
152
+ ];
153
+ if (prompt) {
154
+ summaryPrompt[0].text += `\n\nAdditional instructions: ${prompt}`;
155
+ }
156
+ const summaryRequest = [
157
+ summaryPrompt,
158
+ {
159
+ modelType: ModelType.LITE,
160
+ expectedResponseType: { text: true, functionCall: false, media: false },
161
+ },
162
+ options,
163
+ ];
164
+ const summaryResult = await generateContentFn(...summaryRequest);
165
+ const summaryText = summaryResult.find((part) => part.type === 'text')?.text;
166
+ if (!summaryText) {
167
+ putSystemMessage('Failed to summarize console logs, returning truncated version.');
168
+ // Return first MAX_OUTPUT_LENGTH characters as fallback
169
+ return logs.substring(0, MAX_OUTPUT_LENGTH);
170
+ }
171
+ putSystemMessage('Console logs summarized successfully.', { summaryText });
172
+ return summaryText;
173
+ }
174
+ //# sourceMappingURL=handle-pull-console-logs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-pull-console-logs.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/handle-pull-console-logs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ import { registerActionHandler } from '../step-ask-question-handlers.js';
2
+ import { askUserForStructuredQuestion } from '../../../../main/common/user-actions.js';
3
+ import { ModelType, } from '../../../../ai-service/common-types.js';
4
+ import { getFunctionDefs } from '../../../function-calling.js';
5
+ import { putSystemMessage } from '../../../../main/common/content-bus.js';
6
+ async function handleStructuredQuestion({ askQuestionCall, generateContentFn, prompt, options, }) {
7
+ const structuredQuestionCall = await generateStructuredQuestionCall(generateContentFn, prompt, askQuestionCall, options, ModelType.CHEAP);
8
+ putSystemMessage('Presenting structured question', { ...structuredQuestionCall?.args });
9
+ if (!structuredQuestionCall?.args) {
10
+ return {
11
+ breakLoop: false,
12
+ items: [],
13
+ };
14
+ }
15
+ const userResponse = await askUserForStructuredQuestion(structuredQuestionCall.args.form, options);
16
+ putSystemMessage('Received structured question response', { ...userResponse });
17
+ return {
18
+ breakLoop: false,
19
+ items: [
20
+ {
21
+ assistant: {
22
+ type: 'assistant',
23
+ text: structuredQuestionCall.args?.message ?? 'Please complete the form.',
24
+ functionCalls: [structuredQuestionCall],
25
+ },
26
+ user: {
27
+ type: 'user',
28
+ functionResponses: [
29
+ {
30
+ name: 'structuredQuestion',
31
+ call_id: structuredQuestionCall.id,
32
+ content: JSON.stringify(userResponse),
33
+ },
34
+ ],
35
+ },
36
+ },
37
+ ],
38
+ };
39
+ }
40
+ async function generateStructuredQuestionCall(generateContentFn, prompt, askQuestionCall, options, modelType) {
41
+ const req = [
42
+ [
43
+ ...prompt,
44
+ {
45
+ type: 'assistant',
46
+ text: askQuestionCall.args?.message ?? 'I need to ask a structured question.',
47
+ },
48
+ {
49
+ type: 'user',
50
+ text: 'Yes, you can ask the structured question.',
51
+ },
52
+ ],
53
+ {
54
+ functionDefs: getFunctionDefs(),
55
+ requiredFunctionName: 'structuredQuestion',
56
+ temperature: 0.7,
57
+ modelType,
58
+ expectedResponseType: {
59
+ text: false,
60
+ functionCall: true,
61
+ media: false,
62
+ },
63
+ },
64
+ options,
65
+ ];
66
+ const [structuredQuestionCall] = (await generateContentFn(...req))
67
+ .filter((item) => item.type === 'functionCall')
68
+ .map((item) => item.functionCall);
69
+ return structuredQuestionCall;
70
+ }
71
+ registerActionHandler('structuredQuestion', handleStructuredQuestion);
72
+ //# sourceMappingURL=handle-structured-question.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-structured-question.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/handle-structured-question.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,yCAAyC,CAAC;AACvF,OAAO,EAIL,SAAS,GAEV,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAE1E,KAAK,UAAU,wBAAwB,CAAC,EACtC,eAAe,EACf,iBAAiB,EACjB,MAAM,EACN,OAAO,GACY;IACnB,MAAM,sBAAsB,GAAG,MAAM,8BAA8B,CACjE,iBAAiB,EACjB,MAAM,EACN,eAAe,EACf,OAAO,EACP,SAAS,CAAC,KAAK,CAChB,CAAC;IAEF,gBAAgB,CAAC,gCAAgC,EAAE,EAAE,GAAG,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAC;IAExF,IAAI,CAAC,sBAAsB,EAAE,IAAI,EAAE,CAAC;QAClC,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,EAAE;SACV,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,4BAA4B,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAEnG,gBAAgB,CAAC,uCAAuC,EAAE,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC;IAE/E,OAAO;QACL,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE;YACL;gBACE,SAAS,EAAE;oBACT,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,sBAAsB,CAAC,IAAI,EAAE,OAAO,IAAI,2BAA2B;oBACzE,aAAa,EAAE,CAAC,sBAAsB,CAAC;iBACxC;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,MAAM;oBACZ,iBAAiB,EAAE;wBACjB;4BACE,IAAI,EAAE,oBAAoB;4BAC1B,OAAO,EAAE,sBAAsB,CAAC,EAAE;4BAClC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;yBACtC;qBACF;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,8BAA8B,CAC3C,iBAA0C,EAC1C,MAAoB,EACpB,eAAgC,EAChC,OAAuB,EACvB,SAAoB;IAEpB,MAAM,GAAG,GAAwB;QAC/B;YACE,GAAG,MAAM;YACT;gBACE,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,IAAI,sCAAsC;aAC9E;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,2CAA2C;aAClD;SACF;QACD;YACE,YAAY,EAAE,eAAe,EAAE;YAC/B,oBAAoB,EAAE,oBAAoB;YAC1C,WAAW,EAAE,GAAG;YAChB,SAAS;YACT,oBAAoB,EAAE;gBACpB,IAAI,EAAE,KAAK;gBACX,YAAY,EAAE,IAAI;gBAClB,KAAK,EAAE,KAAK;aACb;SACF;QACD,OAAO;KACR,CAAC;IACF,MAAM,CAAC,sBAAsB,CAAC,GAAG,CAAC,MAAM,iBAAiB,CAAC,GAAG,GAAG,CAAC,CAAC;SAC/D,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC;SAC9C,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAuD,CAAC;IAE1F,OAAO,sBAAsB,CAAC;AAChC,CAAC;AAED,qBAAqB,CAAC,oBAAoB,EAAE,wBAAyC,CAAC,CAAC"}
@@ -5,7 +5,8 @@ import { PromptItemImage } from '../../../ai-service/common-types.js';
5
5
  import { FunctionCall } from '../../../ai-service/common-types.js';
6
6
  import { CodegenOptions } from '../../../main/codegen-types.js';
7
7
  import { PluginActionType } from '../../../ai-service/service-configurations-types.js';
8
- export type ActionType = 'codeGeneration' | 'sendMessage' | 'generateImage' | 'requestPermissions' | 'readExternalFiles' | 'requestFilesContent' | 'removeFilesFromContext' | 'exploreExternalDirectories' | 'confirmCodeGeneration' | 'endConversation' | 'contextOptimization' | 'contextCompression' | 'searchCode' | 'updateFile' | 'performAnalysis' | 'createFile' | 'pullAppContext' | 'genaicodeHelp' | 'pushAppContext' | 'reasoningInference' | 'requestFilesFragments' | 'requestGitContext' | 'conversationGraph' | 'runContainerTask' | 'compoundAction' | 'runProjectCommand' | 'runBashCommand' | 'webSearch' | PluginActionType;
8
+ import { ConsoleLogLevel, ConsoleLogMode } from '../../../vite-genaicode/vite-genaicode-types.js';
9
+ export type ActionType = 'codeGeneration' | 'sendMessage' | 'generateImage' | 'requestPermissions' | 'readExternalFiles' | 'requestFilesContent' | 'removeFilesFromContext' | 'exploreExternalDirectories' | 'confirmCodeGeneration' | 'endConversation' | 'contextOptimization' | 'contextCompression' | 'searchCode' | 'updateFile' | 'performAnalysis' | 'createFile' | 'pullAppContext' | 'pullConsoleLogs' | 'genaicodeHelp' | 'pushAppContext' | 'reasoningInference' | 'requestFilesFragments' | 'requestGitContext' | 'conversationGraph' | 'runContainerTask' | 'compoundAction' | 'runProjectCommand' | 'runBashCommand' | 'webSearch' | 'structuredQuestion' | PluginActionType;
9
10
  export type AskQuestionArgs = {
10
11
  actionType?: ActionType;
11
12
  message?: string;
@@ -40,6 +41,15 @@ export type PushAppContextArgs = {
40
41
  key: string;
41
42
  value: string;
42
43
  };
44
+ /**
45
+ * Arguments for pullConsoleLogs action
46
+ */
47
+ export type PullConsoleLogsArgs = {
48
+ mode: ConsoleLogMode;
49
+ prompt?: string;
50
+ lines?: number;
51
+ level?: ConsoleLogLevel;
52
+ };
43
53
  export type GenerateImageArgs = {
44
54
  prompt: string;
45
55
  filePath: string;
@@ -214,3 +224,36 @@ export type ActionHandlerProps = {
214
224
  waitIfPaused: () => Promise<void>;
215
225
  };
216
226
  export type ActionHandler = (props: ActionHandlerProps) => Promise<ActionResult>;
227
+ export type StructuredQuestionFieldType = 'text' | 'checkbox' | 'radio' | 'select' | 'textarea' | 'number' | 'email';
228
+ export interface StructuredQuestionField {
229
+ id: string;
230
+ label: string;
231
+ type: StructuredQuestionFieldType;
232
+ required?: boolean;
233
+ placeholder?: string;
234
+ options?: {
235
+ value: string;
236
+ label: string;
237
+ }[];
238
+ defaultValue?: string | string[];
239
+ validation?: {
240
+ pattern?: string;
241
+ minLength?: number;
242
+ maxLength?: number;
243
+ };
244
+ }
245
+ export interface StructuredQuestionForm {
246
+ title: string;
247
+ description?: string;
248
+ fields: StructuredQuestionField[];
249
+ submitLabel?: string;
250
+ cancelLabel?: string;
251
+ }
252
+ export type StructuredQuestionArgs = {
253
+ message: string;
254
+ form: StructuredQuestionForm;
255
+ };
256
+ export type StructuredQuestionResponse = {
257
+ submitted: boolean;
258
+ values: Record<string, string | string[] | boolean>;
259
+ };
@@ -11,25 +11,27 @@ import './handlers/handle-context-optimization.js';
11
11
  import './handlers/handle-conversation-graph.js';
12
12
  import './handlers/handle-create-file.js';
13
13
  import './handlers/handle-end-conversation.js';
14
+ import './handlers/handle-explore-external-directories.js';
14
15
  import './handlers/handle-genaicode-help.js';
15
16
  import './handlers/handle-generate-image.js';
16
17
  import './handlers/handle-perform-analysis.js';
18
+ import './handlers/handle-project-command.js';
17
19
  import './handlers/handle-pull-app-context.js';
20
+ import './handlers/handle-pull-console-logs.js';
18
21
  import './handlers/handle-push-app-context.js';
22
+ import './handlers/handle-read-external-files.js';
19
23
  import './handlers/handle-reasoning-inference.js';
20
24
  import './handlers/handle-remove-files-from-context.js';
21
25
  import './handlers/handle-request-files-content.js';
22
26
  import './handlers/handle-request-files-fragments.js';
27
+ import './handlers/handle-request-git-context.js';
23
28
  import './handlers/handle-request-permissions.js';
29
+ import './handlers/handle-run-bash-command.js';
24
30
  import './handlers/handle-run-container-task.js';
25
31
  import './handlers/handle-search-code.js';
26
32
  import './handlers/handle-send-message.js';
33
+ import './handlers/handle-structured-question.js';
27
34
  import './handlers/handle-update-file.js';
28
- import './handlers/handle-read-external-files.js';
29
- import './handlers/handle-explore-external-directories.js';
30
- import './handlers/handle-request-git-context.js';
31
35
  import './handlers/handle-web-search.js';
32
36
  import './handlers/handle-compound-action.js';
33
- import './handlers/handle-project-command.js';
34
- import './handlers/handle-run-bash-command.js';
35
37
  export declare function executeStepAskQuestion(generateContentFn: GenerateContentFunction, generateImageFn: GenerateImageFunction, prompt: PromptItem[], functionDefs: FunctionDef[], waitIfPaused: () => Promise<void>, temperature: number, options: CodegenOptions): Promise<FunctionCall[]>;