genaicode 0.8.4 → 0.8.6

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 (151) hide show
  1. package/README.md +18 -1
  2. package/dist/ai-service/anthropic.js +1 -1
  3. package/dist/ai-service/anthropic.js.map +1 -1
  4. package/dist/ai-service/common.d.ts +2 -1
  5. package/dist/ai-service/common.js +4 -4
  6. package/dist/ai-service/common.js.map +1 -1
  7. package/dist/ai-service/openai.d.ts +8 -0
  8. package/dist/ai-service/openai.js +182 -0
  9. package/dist/ai-service/openai.js.map +1 -0
  10. package/dist/ai-service/service-configurations.js +9 -3
  11. package/dist/ai-service/service-configurations.js.map +1 -1
  12. package/dist/cli/cli-options.js +1 -1
  13. package/dist/cli/cli-options.js.map +1 -1
  14. package/dist/cli/service-autodetect.js +1 -1
  15. package/dist/cli/service-autodetect.js.map +1 -1
  16. package/dist/cli/validate-cli-params.js +1 -1
  17. package/dist/cli/validate-cli-params.js.map +1 -1
  18. package/dist/files/find-files.js +5 -2
  19. package/dist/files/find-files.js.map +1 -1
  20. package/dist/files/read-files.d.ts +1 -0
  21. package/dist/files/read-files.js +13 -5
  22. package/dist/files/read-files.js.map +1 -1
  23. package/dist/index.d.ts +1 -0
  24. package/dist/index.js +4 -0
  25. package/dist/index.js.map +1 -1
  26. package/dist/main/codegen-types.d.ts +56 -4
  27. package/dist/main/codegen-utils.js +1 -1
  28. package/dist/main/codegen-utils.js.map +1 -1
  29. package/dist/main/codegen.js +5 -5
  30. package/dist/main/codegen.js.map +1 -1
  31. package/dist/main/common/content-bus-types.d.ts +1 -1
  32. package/dist/main/config-lib.d.ts +2 -31
  33. package/dist/main/config-lib.js +4 -1
  34. package/dist/main/config-lib.js.map +1 -1
  35. package/dist/main/config-schema.d.ts +14 -0
  36. package/dist/main/config-schema.js +145 -0
  37. package/dist/main/config-schema.js.map +1 -0
  38. package/dist/main/config-types.d.ts +36 -0
  39. package/dist/main/config-types.js +2 -0
  40. package/dist/main/config-types.js.map +1 -0
  41. package/dist/main/config.d.ts +2 -1
  42. package/dist/main/config.js +11 -3
  43. package/dist/main/config.js.map +1 -1
  44. package/dist/main/interactive/select-ai-service.js +1 -1
  45. package/dist/main/interactive/select-ai-service.js.map +1 -1
  46. package/dist/main/plugin-loader.d.ts +19 -4
  47. package/dist/main/plugin-loader.js +155 -48
  48. package/dist/main/plugin-loader.js.map +1 -1
  49. package/dist/main/ui/backend/api-handlers.d.ts +6 -0
  50. package/dist/main/ui/backend/api-handlers.js +5 -0
  51. package/dist/main/ui/backend/api-handlers.js.map +1 -0
  52. package/dist/main/ui/backend/api.d.ts +1 -0
  53. package/dist/main/ui/backend/api.js +6 -313
  54. package/dist/main/ui/backend/api.js.map +1 -1
  55. package/dist/main/ui/backend/endpoints/config-endpoint.d.ts +1 -0
  56. package/dist/main/ui/backend/endpoints/config-endpoint.js +39 -0
  57. package/dist/main/ui/backend/endpoints/config-endpoint.js.map +1 -0
  58. package/dist/main/ui/backend/endpoints/content-endpoint.d.ts +1 -0
  59. package/dist/main/ui/backend/endpoints/content-endpoint.js +14 -0
  60. package/dist/main/ui/backend/endpoints/content-endpoint.js.map +1 -0
  61. package/dist/main/ui/backend/endpoints/edit-message-endpoint.d.ts +1 -0
  62. package/dist/main/ui/backend/endpoints/edit-message-endpoint.js +34 -0
  63. package/dist/main/ui/backend/endpoints/edit-message-endpoint.js.map +1 -0
  64. package/dist/main/ui/backend/endpoints/execute-codegen-endpoint.d.ts +1 -0
  65. package/dist/main/ui/backend/endpoints/execute-codegen-endpoint.js +44 -0
  66. package/dist/main/ui/backend/endpoints/execute-codegen-endpoint.js.map +1 -0
  67. package/dist/main/ui/backend/endpoints/execution-status-endpoint.d.ts +1 -0
  68. package/dist/main/ui/backend/endpoints/execution-status-endpoint.js +37 -0
  69. package/dist/main/ui/backend/endpoints/execution-status-endpoint.js.map +1 -0
  70. package/dist/main/ui/backend/endpoints/generate-content-endpoint.d.ts +1 -0
  71. package/dist/main/ui/backend/endpoints/generate-content-endpoint.js +29 -0
  72. package/dist/main/ui/backend/endpoints/generate-content-endpoint.js.map +1 -0
  73. package/dist/main/ui/backend/endpoints/index.d.ts +11 -0
  74. package/dist/main/ui/backend/endpoints/index.js +12 -0
  75. package/dist/main/ui/backend/endpoints/index.js.map +1 -0
  76. package/dist/main/ui/backend/endpoints/interrupt-execution-endpoint.d.ts +1 -0
  77. package/dist/main/ui/backend/endpoints/interrupt-execution-endpoint.js +14 -0
  78. package/dist/main/ui/backend/endpoints/interrupt-execution-endpoint.js.map +1 -0
  79. package/dist/main/ui/backend/endpoints/iteration-endpoint.d.ts +1 -0
  80. package/dist/main/ui/backend/endpoints/iteration-endpoint.js +16 -0
  81. package/dist/main/ui/backend/endpoints/iteration-endpoint.js.map +1 -0
  82. package/dist/main/ui/backend/endpoints/question-endpoint.d.ts +1 -0
  83. package/dist/main/ui/backend/endpoints/question-endpoint.js +37 -0
  84. package/dist/main/ui/backend/endpoints/question-endpoint.js.map +1 -0
  85. package/dist/main/ui/backend/endpoints/service-configuration-endpoint.d.ts +1 -0
  86. package/dist/main/ui/backend/endpoints/service-configuration-endpoint.js +54 -0
  87. package/dist/main/ui/backend/endpoints/service-configuration-endpoint.js.map +1 -0
  88. package/dist/main/ui/backend/endpoints/usage-endpoint.d.ts +1 -0
  89. package/dist/main/ui/backend/endpoints/usage-endpoint.js +15 -0
  90. package/dist/main/ui/backend/endpoints/usage-endpoint.js.map +1 -0
  91. package/dist/main/ui/backend/service.d.ts +1 -1
  92. package/dist/main/ui/common/api-types.d.ts +5 -1
  93. package/dist/main/ui/frontend/assets/index-BAAQr5b1.js +1747 -0
  94. package/dist/main/ui/frontend/index.html +1 -1
  95. package/dist/prompt/ai-service-fallback.js +10 -3
  96. package/dist/prompt/ai-service-fallback.js.map +1 -1
  97. package/dist/prompt/function-calling-validate.d.ts +1 -1
  98. package/dist/prompt/function-calling-validate.js +13 -5
  99. package/dist/prompt/function-calling-validate.js.map +1 -1
  100. package/dist/prompt/function-calling.js +2 -1
  101. package/dist/prompt/function-calling.js.map +1 -1
  102. package/dist/prompt/function-defs/ask-question.d.ts +1 -0
  103. package/dist/prompt/function-defs/ask-question.js +66 -9
  104. package/dist/prompt/function-defs/ask-question.js.map +1 -1
  105. package/dist/prompt/function-defs/optimize-context.js +2 -2
  106. package/dist/prompt/function-defs/optimize-context.js.map +1 -1
  107. package/dist/prompt/limits.js +2 -2
  108. package/dist/prompt/prompt-service.js +4 -2
  109. package/dist/prompt/prompt-service.js.map +1 -1
  110. package/dist/prompt/prompt-service.test-utils.d.ts +1 -1
  111. package/dist/prompt/prompt-service.test-utils.js +1 -1
  112. package/dist/prompt/prompt-service.test-utils.js.map +1 -1
  113. package/dist/prompt/static-prompts.d.ts +2 -1
  114. package/dist/prompt/static-prompts.js +2 -1
  115. package/dist/prompt/static-prompts.js.map +1 -1
  116. package/dist/prompt/steps/step-ask-question/handlers/code-generation.js +15 -15
  117. package/dist/prompt/steps/step-ask-question/handlers/code-generation.js.map +1 -1
  118. package/dist/prompt/steps/step-ask-question/handlers/default-action.d.ts +1 -1
  119. package/dist/prompt/steps/step-ask-question/handlers/default-action.js +2 -2
  120. package/dist/prompt/steps/step-ask-question/handlers/default-action.js.map +1 -1
  121. package/dist/prompt/steps/step-ask-question/handlers/handle-update-file.d.ts +2 -0
  122. package/dist/prompt/steps/step-ask-question/handlers/handle-update-file.js +136 -0
  123. package/dist/prompt/steps/step-ask-question/handlers/handle-update-file.js.map +1 -0
  124. package/dist/prompt/steps/step-ask-question/handlers/lint.js +23 -3
  125. package/dist/prompt/steps/step-ask-question/handlers/lint.js.map +1 -1
  126. package/dist/prompt/steps/step-ask-question/handlers/request-permissions.js +1 -1
  127. package/dist/prompt/steps/step-ask-question/handlers/request-permissions.js.map +1 -1
  128. package/dist/prompt/steps/step-ask-question/step-ask-question-types.d.ts +1 -1
  129. package/dist/prompt/steps/step-ask-question/step-ask-question.js +9 -5
  130. package/dist/prompt/steps/step-ask-question/step-ask-question.js.map +1 -1
  131. package/dist/prompt/steps/step-codegen-planning.js +63 -3
  132. package/dist/prompt/steps/step-codegen-planning.js.map +1 -1
  133. package/dist/prompt/steps/step-context-optimization.d.ts +3 -0
  134. package/dist/prompt/steps/step-context-optimization.js +63 -49
  135. package/dist/prompt/steps/step-context-optimization.js.map +1 -1
  136. package/dist/prompt/steps/step-generate-codegen-summary.js +3 -5
  137. package/dist/prompt/steps/step-generate-codegen-summary.js.map +1 -1
  138. package/dist/prompt/steps/step-process-file-updates.js +56 -10
  139. package/dist/prompt/steps/step-process-file-updates.js.map +1 -1
  140. package/dist/prompt/steps/step-summarization.js +2 -0
  141. package/dist/prompt/steps/step-summarization.js.map +1 -1
  142. package/dist/prompt/steps/step-validate-recover.js +5 -5
  143. package/dist/prompt/steps/step-validate-recover.js.map +1 -1
  144. package/dist/prompt/systemprompt.d.ts +2 -1
  145. package/dist/prompt/systemprompt.js +16 -4
  146. package/dist/prompt/systemprompt.js.map +1 -1
  147. package/dist/vite-genaicode/vite-genaicode-plugin.d.ts +4 -2
  148. package/dist/vite-genaicode/vite-genaicode-plugin.js +41 -24
  149. package/dist/vite-genaicode/vite-genaicode-plugin.js.map +1 -1
  150. package/package.json +7 -7
  151. package/dist/main/ui/frontend/assets/index-jwSqt8cG.js +0 -1337
@@ -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="/favicon.ico" type="image/x-icon" />
10
- <script type="module" crossorigin src="/assets/index-jwSqt8cG.js"></script>
10
+ <script type="module" crossorigin src="/assets/index-BAAQr5b1.js"></script>
11
11
  <link rel="stylesheet" crossorigin href="/assets/index-S_ocA1xG.css">
12
12
  </head>
13
13
  <body data-security-token="__SECURITY_TOKEN__">
@@ -4,7 +4,7 @@ import { abortController } from '../main/interactive/codegen-worker.js';
4
4
  const AI_SERVICES_MAP = [
5
5
  [() => process.env.ANTHROPIC_API_KEY, 'anthropic'],
6
6
  [() => process.env.GOOGLE_CLOUD_PROJECT && process.env.GOOGLE_CLOUD_REGION, 'vertex-ai-claude'],
7
- [() => process.env.OPENAI_API_KEY, 'chat-gpt'],
7
+ [() => process.env.OPENAI_API_KEY, 'openai'],
8
8
  [() => process.env.GOOGLE_CLOUD_PROJECT, 'vertex-ai'],
9
9
  [() => process.env.API_KEY, 'ai-studio'],
10
10
  ];
@@ -29,14 +29,21 @@ export async function handleAiServiceFallback(generateContentFns, currentService
29
29
  putSystemMessage(`Operation interrupted for ${permanentService}`);
30
30
  throw error; // Re-throw the interruption error
31
31
  }
32
+ if (!options.disableAiServiceFallback && (options.interactive || options.ui)) {
33
+ putSystemMessage(`Content generation failed for ${permanentService}`, { error });
34
+ const shouldRetry = await askUserForConfirmation(`Content generation failed, do you want to retry?`, true);
35
+ if (shouldRetry.confirmed) {
36
+ continue;
37
+ }
38
+ }
32
39
  if (error.message.includes('Rate limit exceeded')) {
33
40
  putSystemMessage(`Rate limit exceeded for ${permanentService}`);
34
- if (options.disableAiServiceFallback) {
41
+ if (!options.disableAiServiceFallback) {
35
42
  if (options.interactive || options.ui) {
36
43
  const nextService = getNextAiService(permanentService);
37
44
  if (nextService) {
38
45
  const shouldSwitch = await askUserForConfirmation(`Rate limit exceeded for ${permanentService}. Would you like to switch to ${nextService}?`, true);
39
- if (shouldSwitch) {
46
+ if (shouldSwitch.confirmed) {
40
47
  putSystemMessage(`Switching to ${nextService} due to rate limiting.`);
41
48
  permanentService = nextService;
42
49
  retryCount++;
@@ -1 +1 @@
1
- {"version":3,"file":"ai-service-fallback.js","sourceRoot":"","sources":["../../src/prompt/ai-service-fallback.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-service-fallback.js","sourceRoot":"","sources":["../../src/prompt/ai-service-fallback.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAExE,MAAM,eAAe,GAAG;IACtB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,WAAW,CAAC;IAClD,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;IAC/F,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC;IAC5C,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,WAAW,CAAC;IACrD,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC;CAChC,CAAC;AAEX,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,kBAAkE,EAClE,cAA6B,EAC7B,OAAuB,EACvB,GAAG,IAAyC;IAE5C,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC;IAC1C,IAAI,gBAAgB,GAAG,cAAc,CAAC;IAEtC,OAAO,UAAU,GAAG,UAAU,EAAE,CAAC;QAC/B,IAAI,eAAe,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YACpC,gBAAgB,CAAC,6BAA6B,gBAAgB,EAAE,CAAC,CAAC;YAClE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YACnE,OAAO,CAAC,SAAS,GAAG,gBAAgB,CAAC;YACrC,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,+CAA+C;gBAC/C,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;oBACzE,gBAAgB,CAAC,6BAA6B,gBAAgB,EAAE,CAAC,CAAC;oBAClE,MAAM,KAAK,CAAC,CAAC,kCAAkC;gBACjD,CAAC;gBAED,IAAI,CAAC,OAAO,CAAC,wBAAwB,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC7E,gBAAgB,CAAC,iCAAiC,gBAAgB,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;oBACjF,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,kDAAkD,EAAE,IAAI,CAAC,CAAC;oBAC3G,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC;wBAC1B,SAAS;oBACX,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;oBAClD,gBAAgB,CAAC,2BAA2B,gBAAgB,EAAE,CAAC,CAAC;oBAEhE,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,CAAC;wBACtC,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;4BACtC,MAAM,WAAW,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;4BACvD,IAAI,WAAW,EAAE,CAAC;gCAChB,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAC/C,2BAA2B,gBAAgB,iCAAiC,WAAW,GAAG,EAC1F,IAAI,CACL,CAAC;gCACF,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;oCAC3B,gBAAgB,CAAC,gBAAgB,WAAW,wBAAwB,CAAC,CAAC;oCACtE,gBAAgB,GAAG,WAAW,CAAC;oCAC/B,UAAU,EAAE,CAAC;oCACb,SAAS;gCACX,CAAC;4BACH,CAAC;wBACH,CAAC;6BAAM,CAAC;4BACN,MAAM,IAAI,KAAK,CAAC,2BAA2B,gBAAgB,oCAAoC,CAAC,CAAC;wBACnG,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,MAAM,WAAW,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;wBACvD,IAAI,WAAW,EAAE,CAAC;4BAChB,gBAAgB,CACd,2BAA2B,gBAAgB,gCAAgC,WAAW,GAAG,CAC1F,CAAC;4BACF,gBAAgB,GAAG,WAAW,CAAC;4BAC/B,UAAU,EAAE,CAAC;wBACf,CAAC;6BAAM,CAAC;4BACN,MAAM,IAAI,KAAK,CAAC,2BAA2B,gBAAgB,yCAAyC,CAAC,CAAC;wBACxG,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,sCAAsC;oBACtC,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,0CAA0C;gBAC1C,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,gBAAgB,CAAC,cAA6B;IACrD,MAAM,OAAO,GAAoB,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;IAC5G,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACrD,IAAI,YAAY,KAAK,CAAC,CAAC,IAAI,YAAY,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/D,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,OAAO,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;AACnC,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import { ValidatorResult } from 'jsonschema';
2
2
  import { FunctionCall } from '../ai-service/common.js';
3
- export declare function validateFunctionCall(call: FunctionCall | undefined, requiredFunctionName: string): Omit<ValidatorResult, 'addError'> | undefined;
3
+ export declare function validateFunctionCall(call: FunctionCall | undefined, requiredFunctionName: string, calls: FunctionCall[]): Omit<ValidatorResult, 'addError'> | undefined;
@@ -2,18 +2,26 @@ import { Validator } from 'jsonschema';
2
2
  import path from 'path';
3
3
  import { getFunctionDefs } from './function-calling.js';
4
4
  import { rcConfig } from '../main/config.js';
5
- export function validateFunctionCall(call, requiredFunctionName) {
5
+ export function validateFunctionCall(call, requiredFunctionName, calls) {
6
6
  const validator = new Validator();
7
7
  const functionDef = getFunctionDefs().find((def) => def.name === call?.name);
8
- // Step 1: Check if the function name matches
9
- if (!call || call.name !== requiredFunctionName) {
8
+ // Check if a function was called
9
+ if (!call) {
10
10
  return makeError(`Function "${requiredFunctionName}" was not called.`, call, '');
11
11
  }
12
- // Step 2: Check if the function is defined
12
+ // Check if only one function was called
13
+ if (calls.length !== 1) {
14
+ return makeError(`You called too many functions(${calls.length})! Only one function(${requiredFunctionName}) should be called.`, calls, '');
15
+ }
16
+ // Check if the function name is correct
17
+ if (call.name !== requiredFunctionName) {
18
+ return makeError(`Function "${call.name}" was called, while the expectation was to get "${requiredFunctionName}" function call.`, call, '');
19
+ }
20
+ // Check if the function is defined
13
21
  if (!functionDef) {
14
22
  return makeError(`Function "${call.name}" is not defined.`, call, '');
15
23
  }
16
- // Step 3: Validate against the schema
24
+ // Validate against the schema
17
25
  const validationResult = validator.validate(call.args, functionDef.parameters);
18
26
  if (validationResult.errors.length > 0) {
19
27
  return validationResult;
@@ -1 +1 @@
1
- {"version":3,"file":"function-calling-validate.js","sourceRoot":"","sources":["../../src/prompt/function-calling-validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"function-calling-validate.js","sourceRoot":"","sources":["../../src/prompt/function-calling-validate.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { getImageAssets } from './function-defs/get-image-assets.js';
4
4
  import { getCodegenSummaryDef } from './function-defs/codegen-summary.js';
5
5
  import { explanation } from './function-defs/explanation.js';
6
6
  import { generateImage } from './function-defs/generate-image.js';
7
- import { getAskQuestionDef, sendMessageWithImage, requestPermissions, requestFilesContent, removeFilesFromContext, contextOptimization, searchCode, } from './function-defs/ask-question.js';
7
+ import { getAskQuestionDef, sendMessageWithImage, requestPermissions, requestFilesContent, removeFilesFromContext, contextOptimization, searchCode, lint, } from './function-defs/ask-question.js';
8
8
  import { optimizeContext } from './function-defs/optimize-context.js';
9
9
  import { setSummaries } from './function-defs/set-summaries.js';
10
10
  import { updateHistory } from './function-defs/update-history.js';
@@ -26,6 +26,7 @@ export function getFunctionDefs() {
26
26
  sendMessageWithImage,
27
27
  requestPermissions,
28
28
  searchCode,
29
+ lint,
29
30
  requestFilesContent,
30
31
  removeFilesFromContext,
31
32
  contextOptimization,
@@ -1 +1 @@
1
- {"version":3,"file":"function-calling.js","sourceRoot":"","sources":["../../src/prompt/function-calling.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,UAAU,GACX,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAE5E;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO;QACL,aAAa;QACb,cAAc;QACd,oBAAoB,EAAE;QACtB,qBAAqB,EAAE;QACvB,WAAW;QACX,aAAa;QACb,iBAAiB,EAAE;QACnB,oBAAoB;QACpB,kBAAkB;QAClB,UAAU;QACV,mBAAmB;QACnB,sBAAsB;QACtB,mBAAmB;QACnB,eAAe;QACf,YAAY;QACZ,aAAa;QACb,WAAW;QACX,GAAG,gBAAgB,EAAE;KACtB,CAAC,GAAG,CAAC,CAAC,EAAe,EAAE,EAAE;QACxB,IACE,CAAC,mBAAmB;YACpB,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW;YACpC,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,EAC/C,CAAC;YACD,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAChD,CAAC;aAAM,IAAI,mBAAmB,EAAE,CAAC;YAC/B,OAAO,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC;QAC9C,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"function-calling.js","sourceRoot":"","sources":["../../src/prompt/function-calling.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,UAAU,EACV,IAAI,GACL,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAE5E;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO;QACL,aAAa;QACb,cAAc;QACd,oBAAoB,EAAE;QACtB,qBAAqB,EAAE;QACvB,WAAW;QACX,aAAa;QACb,iBAAiB,EAAE;QACnB,oBAAoB;QACpB,kBAAkB;QAClB,UAAU;QACV,IAAI;QACJ,mBAAmB;QACnB,sBAAsB;QACtB,mBAAmB;QACnB,eAAe;QACf,YAAY;QACZ,aAAa;QACb,WAAW;QACX,GAAG,gBAAgB,EAAE;KACtB,CAAC,GAAG,CAAC,CAAC,EAAe,EAAE,EAAE;QACxB,IACE,CAAC,mBAAmB;YACpB,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW;YACpC,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,EAC/C,CAAC;YACD,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAChD,CAAC;aAAM,IAAI,mBAAmB,EAAE,CAAC;YAC/B,OAAO,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC;QAC9C,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -12,3 +12,4 @@ export declare const removeFilesFromContext: FunctionDef;
12
12
  export declare const contextOptimization: FunctionDef;
13
13
  export declare const requestPermissions: FunctionDef;
14
14
  export declare const searchCode: FunctionDef;
15
+ export declare const lint: FunctionDef;
@@ -9,16 +9,33 @@ function getActionTypeDescription() {
9
9
  Detailed Explanation of actionTypes:
10
10
  - sendMessage: Use for general information, clarifications, or when no specific code is needed.
11
11
  - sendMessageWithImage: Use when an image is needed to provide context or additional information.
12
+ - updateFile: Use to update a single file with new content. The user will be able to see the diff and approve or reject the change. Then you will be able to continue the conversation.
12
13
  - requestPermissions: Use **only when you lack necessary permissions** for actions like creating, deleting, or moving files, and need to request them from the user.
13
14
  - requestFilesContent: Use specifically when needing to access or review the contents of files, and it was not provided yet in any of preceeding \`getSourceCode\` function responses.
14
15
  - removeFilesFromContext: Use to remove unnecessary file contents from context, optimizing token usage.
15
- - confirmCodeGeneration: Use to confirm with the user before starting code generation tasks.
16
- - cancelCodeGeneration: Use to stop the session, and the conversation.
17
16
  - contextOptimization: Use to manage and optimize context during code generation tasks, allowing the LLM to provide guidance on what parts of the context are most relevant to keep.
18
17
  - searchCode: Use to search through source code files with flexible filtering. Supports searching in file contents and names, with pattern matching and case sensitivity options. Useful for finding specific code patterns or references across the codebase.
18
+ - confirmCodeGeneration: Use to confirm with the user before starting code generation tasks.
19
+ - cancelCodeGeneration: Use to stop the session, and the conversation.
19
20
  ${rcConfig.lintCommand ? '- lint: Use to check the code for errors and provide feedback on the quality of the code.' : ''}
20
- ${pluginDescriptions}`;
21
+ ${pluginDescriptions}
22
+
23
+ This value must be derived from the decision-making process, and must be one of the above values.`;
21
24
  }
25
+ const actionTypeOptions = [
26
+ 'sendMessage',
27
+ 'sendMessageWithImage',
28
+ 'updateFile',
29
+ 'requestPermissions',
30
+ 'requestFilesContent',
31
+ 'removeFilesFromContext',
32
+ 'contextOptimization',
33
+ 'searchCode',
34
+ 'confirmCodeGeneration',
35
+ 'cancelCodeGeneration',
36
+ ...(rcConfig.lintCommand ? ['lint'] : []),
37
+ ...Array.from(getRegisteredActionHandlers().keys()),
38
+ ];
22
39
  /**
23
40
  * Function definition for askQuestion
24
41
  *
@@ -47,17 +64,40 @@ export const getAskQuestionDef = () => ({
47
64
  properties: {
48
65
  decisionMakingProcess: {
49
66
  type: 'string',
50
- description: `A detailed decision-making framework the assistant followed before selecting an action. You must think step about step about this, this process should include the following steps:
67
+ description: `A detailed reasoning framework describing how you chose the action.
68
+ The decisionMakingProcess value must be provided in the following format:
51
69
 
52
- 1. **Contextual Analysis**: Assess the current information, including available permissions, current context, and task requirements. Identify any missing elements that are critical to task completion.
70
+ \`\`\`
71
+ 1. **Contextual Analysis**:
72
+ Assess the current information, including available permissions,
73
+ the current context, and task requirements. Identify any missing elements
74
+ that are critical to task completion.
75
+
76
+ 2. **Options Evaluation**:
77
+ For every action type think how this action can help in the current context. Provide reasoning for each action type in such format:
78
+ \`\`\`
79
+ ${actionTypeOptions
80
+ .map((actionType) => ` - ${actionType}: <reasoning>`)
81
+ .join('\
82
+ ')}
83
+ \`\`\`
53
84
 
54
- 2. **Decision Justification**: State the reasoning for the proposed action, considering whether planning, clarification, or action is required. If there's any ambiguity, prefer a confirmatory action (\`confirmCodeGeneration\`).
85
+ 3. **Decision Justification**:
86
+ State the reasoning for the proposed action, considering whether planning,
87
+ clarification, or a direct action is required. If there's any ambiguity,
88
+ prefer a confirmatory action (e.g., "confirmCodeGeneration").
55
89
 
56
- 3. **Minimal Action Selection**: Determine the minimal action that can make progress toward the task goal. Avoid requesting unnecessary permissions or context that isn't strictly needed.
90
+ 4. **Minimal Action Selection**:
91
+ Determine the minimal action that can make progress toward the task goal.
92
+ Avoid requesting unnecessary permissions or context that isn't strictly needed.
57
93
 
58
- 4. **Evaluation of Action Choice**: Double-check if the selected action aligns with task requirements and user-provided constraints.
94
+ 5. **Evaluation of Action Choice**:
95
+ Double-check if the selected action aligns with the task requirements
96
+ and the user-provided constraints.
59
97
 
60
- Output this in step-by-step format to ensure clarity in decision-making.`,
98
+ 6. **Action type**:
99
+ Final selection of the action type value based on the above steps.
100
+ \`\`\``,
61
101
  },
62
102
  actionType: {
63
103
  type: 'string',
@@ -71,6 +111,7 @@ Output this in step-by-step format to ensure clarity in decision-making.`,
71
111
  'cancelCodeGeneration',
72
112
  'contextOptimization',
73
113
  'searchCode',
114
+ 'updateFile',
74
115
  ...(rcConfig.lintCommand ? ['lint'] : []),
75
116
  ...Array.from(getRegisteredActionHandlers().keys()),
76
117
  ],
@@ -241,4 +282,20 @@ export const searchCode = {
241
282
  required: ['query'],
242
283
  },
243
284
  };
285
+ // lint
286
+ export const lint = {
287
+ name: 'lint',
288
+ description: 'Use this function to run lint command, and get output.',
289
+ parameters: {
290
+ type: 'object',
291
+ properties: {
292
+ filePaths: {
293
+ type: 'array',
294
+ items: { type: 'string' },
295
+ description: 'An array of absolute file paths to lint. If not provided, all files will be linted.',
296
+ },
297
+ },
298
+ required: [],
299
+ },
300
+ };
244
301
  //# sourceMappingURL=ask-question.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ask-question.js","sourceRoot":"","sources":["../../../src/prompt/function-defs/ask-question.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,sCAAsC,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAElH,SAAS,wBAAwB;IAC/B,MAAM,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,sCAAsC,EAAE,CAAC,OAAO,EAAE,CAAC;SACtF,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,MAAM,UAAU,KAAK,WAAW,EAAE,CAAC;SACtE,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO;;;;;;;;;;;;EAYP,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,2FAA2F,CAAC,CAAC,CAAC,EAAE;EACvH,kBAAkB,EAAE,CAAC;AACvB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAgB,EAAE,CAAC,CAAC;IACnD,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE;;;;;;;;;;;;;;GAcZ;IACD,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,qBAAqB,EAAE;gBACrB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;;;;;;;;;;yEAUoD;aAClE;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE;oBACJ,aAAa;oBACb,sBAAsB;oBACtB,oBAAoB;oBACpB,qBAAqB;oBACrB,wBAAwB;oBACxB,uBAAuB;oBACvB,sBAAsB;oBACtB,qBAAqB;oBACrB,YAAY;oBACZ,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzC,GAAG,KAAK,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC,IAAI,EAAE,CAAC;iBACpD;gBACD,WAAW,EAAE,wBAAwB,EAAE;aACxC;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,qCAAqC;aACnD;SACF;QACD,QAAQ,EAAE,CAAC,uBAAuB,EAAE,YAAY,EAAE,SAAS,CAAC;KAC7D;CACF,CAAC,CAAC;AAEH,sBAAsB;AACtB,MAAM,CAAC,MAAM,mBAAmB,GAAgB;IAC9C,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE,sFAAsF;IACnG,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;iBACf;gBACD,WAAW,EAAE,iEAAiE;aAC/E;SACF;QACD,QAAQ,EAAE,CAAC,WAAW,CAAC;KACxB;CACF,CAAC;AAEF,uBAAuB;AACvB,MAAM,CAAC,MAAM,oBAAoB,GAAgB;IAC/C,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EACT,oKAAoK;IACtK,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wCAAwC;aACtD;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sEAAsE;aACpF;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;CACF,CAAC;AAEF,yBAAyB;AACzB,MAAM,CAAC,MAAM,sBAAsB,GAAgB;IACjD,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EAAE,mGAAmG;IAChH,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;iBACf;gBACD,WAAW,EAAE,6DAA6D;aAC3E;SACF;QACD,QAAQ,EAAE,CAAC,WAAW,CAAC;KACxB;CACF,CAAC;AAEF,sBAAsB;AACtB,MAAM,CAAC,MAAM,mBAAmB,GAAgB;IAC9C,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EACT,oHAAoH;IACtH,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8DAA8D;aAC5E;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;CACF,CAAC;AAEF,qBAAqB;AACrB,MAAM,CAAC,MAAM,kBAAkB,GAAgB;IAC7C,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE,wGAAwG;IACrH,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,oBAAoB,EAAE;gBACpB,WAAW,EAAE,2CAA2C;gBACxD,IAAI,EAAE,SAAS;aAChB;YACD,eAAe,EAAE;gBACf,WAAW,EAAE,qCAAqC;gBAClD,IAAI,EAAE,SAAS;aAChB;YACD,eAAe,EAAE;gBACf,WAAW,EAAE,qCAAqC;gBAClD,IAAI,EAAE,SAAS;aAChB;YACD,aAAa,EAAE;gBACb,WAAW,EAAE,mCAAmC;gBAChD,IAAI,EAAE,SAAS;aAChB;YACD,YAAY,EAAE;gBACZ,WAAW,EAAE,0FAA0F;gBACvG,IAAI,EAAE,SAAS;aAChB;YACD,YAAY,EAAE;gBACZ,WAAW,EAAE,wCAAwC;gBACrD,IAAI,EAAE,SAAS;aAChB;SACF;QACD,QAAQ,EAAE;YACR,sBAAsB;YACtB,iBAAiB;YACjB,iBAAiB;YACjB,eAAe;YACf,cAAc;YACd,cAAc;SACf;KACF;CACF,CAAC;AAEF,aAAa;AACb,MAAM,CAAC,MAAM,UAAU,GAAgB;IACrC,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,gFAAgF;IAC7F,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yBAAyB;aACvC;YACD,eAAe,EAAE;gBACf,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,yCAAyC;aACvD;YACD,eAAe,EAAE;gBACf,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,yCAAyC;aACvD;YACD,eAAe,EAAE;gBACf,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,oDAAoD;aAClE;YACD,iBAAiB,EAAE;gBACjB,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,iDAAiD;aAC/D;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,wCAAwC;aACtD;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mDAAmD;aACjE;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wEAAwE;aACtF;SACF;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB;CACF,CAAC"}
1
+ {"version":3,"file":"ask-question.js","sourceRoot":"","sources":["../../../src/prompt/function-defs/ask-question.ts"],"names":[],"mappings":"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"}
@@ -41,7 +41,7 @@ This means that the file \`something.js\` file is not relevant to the user promp
41
41
  },
42
42
  reasoning: {
43
43
  type: 'string',
44
- description: 'Analysis of what is needed for the user prompt and which files are needed to fullfil the prompt.',
44
+ description: 'Step-by-step analysis of what is needed for the user prompt and which files are needed to fullfil the prompt.',
45
45
  },
46
46
  optimizedContext: {
47
47
  type: 'array',
@@ -51,7 +51,7 @@ This means that the file \`something.js\` file is not relevant to the user promp
51
51
  properties: {
52
52
  reasoning: {
53
53
  type: 'string',
54
- description: 'Reasoning for why the file is relevant.',
54
+ description: 'Step-by-steo analysis for why the file is relevant to the user prompt.',
55
55
  },
56
56
  filePath: {
57
57
  type: 'string',
@@ -1 +1 @@
1
- {"version":3,"file":"optimize-context.js","sourceRoot":"","sources":["../../../src/prompt/function-defs/optimize-context.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAgB;IAC1C,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;yKA4B0J;IACvK,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6BAA6B;aAC3C;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kGAAkG;aAChH;YACD,gBAAgB,EAAE;gBAChB,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,0EAA0E;gBACvF,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,SAAS,EAAE;4BACT,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,yCAAyC;yBACvD;wBACD,QAAQ,EAAE;4BACR,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,4CAA4C;yBAC1D;wBACD,SAAS,EAAE;4BACT,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,gFAAgF;4BAC7F,OAAO,EAAE,GAAG;4BACZ,OAAO,EAAE,CAAC;yBACX;qBACF;oBACD,QAAQ,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,CAAC;iBACjD;aACF;SACF;QACD,QAAQ,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,kBAAkB,CAAC;KAC1D;CACF,CAAC"}
1
+ {"version":3,"file":"optimize-context.js","sourceRoot":"","sources":["../../../src/prompt/function-defs/optimize-context.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAgB;IAC1C,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;yKA4B0J;IACvK,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6BAA6B;aAC3C;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,+GAA+G;aAClH;YACD,gBAAgB,EAAE;gBAChB,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,0EAA0E;gBACvF,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,SAAS,EAAE;4BACT,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,wEAAwE;yBACtF;wBACD,QAAQ,EAAE;4BACR,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,4CAA4C;yBAC1D;wBACD,SAAS,EAAE;4BACT,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,gFAAgF;4BAC7F,OAAO,EAAE,GAAG;4BACZ,OAAO,EAAE,CAAC;yBACX;qBACF;oBACD,QAAQ,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,CAAC;iBACjD;aACF;SACF;QACD,QAAQ,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,kBAAkB,CAAC;KAC1D;CACF,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import assert from 'node:assert';
2
2
  import { estimateTokenCount } from './token-estimator.js';
3
3
  const SYSTEM_PROMPT_LIMIT = 3500;
4
- const CODEGEN_PROMPT_LIMIT = 1000;
5
- const SOURCE_CODE_LIMIT = 100000;
4
+ const CODEGEN_PROMPT_LIMIT = 1600;
5
+ const SOURCE_CODE_LIMIT = 110000;
6
6
  function verifyPromptLimit(promptType, prompt, limit) {
7
7
  const tokenCount = estimateTokenCount(prompt);
8
8
  console.log(`${promptType} prompt estimated token count: ${tokenCount}`);
@@ -16,6 +16,7 @@ import { getRegisteredGenerateContentHooks } from '../main/plugin-loader.js';
16
16
  import { generateCodegenSummary } from './steps/step-generate-codegen-summary.js';
17
17
  import { processFileUpdates } from './steps/step-process-file-updates.js';
18
18
  import { putSystemMessage, putUserMessage } from '../main/common/content-bus.js';
19
+ import { rcConfig } from '../main/config.js';
19
20
  /** A function that communicates with model using */
20
21
  export async function promptService(generateContentFns, generateImageFns, codegenPrompt, waitIfPaused = () => Promise.resolve()) {
21
22
  const generateContentFn = async (...args) => {
@@ -38,15 +39,16 @@ export async function promptService(generateContentFns, generateImageFns, codege
38
39
  return result;
39
40
  }
40
41
  async function executePromptService(generateContentFn, generateImageFn, codegenPrompt, waitIfPaused = () => Promise.resolve()) {
41
- const messages = prepareMessages(codegenPrompt);
42
42
  // First stage: summarize the source code
43
43
  if (!codegenPrompt.options.disableContextOptimization) {
44
44
  await summarizeSourceCode(generateContentFn, getSourceCode({ forceAll: true }, codegenPrompt.options), codegenPrompt.options);
45
45
  }
46
+ // Prepare messages for AI services
47
+ const messages = prepareMessages(codegenPrompt);
46
48
  // Second stage: generate code generation summary, which should not take a lot of output tokens
47
49
  const getSourceCodeRequest = { name: 'getSourceCode' };
48
50
  const prompt = [
49
- { type: 'systemPrompt', systemPrompt: getSystemPrompt(codegenPrompt.options) },
51
+ { type: 'systemPrompt', systemPrompt: getSystemPrompt(rcConfig, codegenPrompt.options) },
50
52
  { type: 'user', text: INITIAL_GREETING },
51
53
  {
52
54
  type: 'assistant',
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-service.js","sourceRoot":"","sources":["../../src/prompt/prompt-service.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAC7F,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACnH,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,iCAAiC,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEjF,oDAAoD;AACpD,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,kBAAkE,EAClE,gBAA2D,EAC3D,aAA4B,EAC5B,eAAoC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;IAE3D,MAAM,iBAAiB,GAA4B,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE;QACnE,0CAA0C;QAC1C,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAC1C,kBAAkB,EAClB,aAAa,CAAC,OAAO,CAAC,SAAS,EAC/B,aAAa,CAAC,OAAO,EACrB,GAAG,IAAI,CACR,CAAC;QAEF,kDAAkD;QAClD,KAAK,MAAM,IAAI,IAAI,iCAAiC,EAAE,EAAE,CAAC;YACvD,MAAM,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,eAAe,GAA0B,CAAC,GAAG,IAAI,EAAE,EAAE;QACzD,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,+BAA+B,CAAC,CAAC;QACtE,OAAO,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACjE,CAAC,CAAC;IAEF,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,oBAAoB,CACnD,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,YAAY,CACb,CAAC;IAEF,IAAI,aAAa,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QACzC,MAAM,wBAAwB,CAAC,iBAAiB,EAAE,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IACnF,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,iBAA0C,EAC1C,eAAsC,EACtC,aAA4B,EAC5B,eAAoC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;IAE3D,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;IAEhD,yCAAyC;IACzC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAC;QACtD,MAAM,mBAAmB,CACvB,iBAAiB,EACjB,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,aAAa,CAAC,OAAO,CAAC,EACxD,aAAa,CAAC,OAAO,CACtB,CAAC;IACJ,CAAC;IAED,+FAA+F;IAC/F,MAAM,oBAAoB,GAAiB,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;IAErE,MAAM,MAAM,GAAiB;QAC3B,EAAE,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;QAC9E,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE;QACxC;YACE,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,mBAAmB;YACzB,aAAa,EAAE;gBACb,oBAAoB;gBACpB,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrE,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aAC3E;SACF;KACF,CAAC;IAEF,MAAM,qBAAqB,GAAe;QACxC,IAAI,EAAE,MAAM;QACZ,iBAAiB,EAAE;YACjB,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,QAAQ,CAAC,UAAU,EAAE;YACvD,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACpG,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACzG;QACD,IAAI,EAAE,oBAAoB;QAC1B,KAAK,EAAE,IAAI;KACZ,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAEnC,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,eAAe;KACtB,CAAC,CAAC;IAEH,MAAM,iBAAiB,GAAe;QACpC,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,aAAa,CAAC,MAAM;KAC3B,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAE/B,iDAAiD;IACjD,IAAI,aAAa,CAAC,OAAO,CAAC,MAAM,IAAI,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC5G,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACtE,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,SAAS,EAAE,GAAG,CAAC,SAAS;SACzB,CAAC,CAAC,CAAC;IACN,CAAC;IAED,cAAc,CACZ,aAAa,CAAC,OAAO,CAAC,cAAc;QAClC,aAAa,CAAC,OAAO,CAAC,QAAQ;QAC9B,gDAAgD,EAClD,SAAS,EACT,SAAS,EACT,aAAa,CAAC,OAAO,CAAC,MAAM,EAC5B,iBAAiB,CAClB,CAAC;IACF,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;IAExC,4CAA4C;IAC5C,MAAM,0BAA0B,CAAC,iBAAiB,EAAE,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAEnF,wCAAwC;IACxC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAC;QACtD,MAAM,kBAAkB,GAAG,MAAM,8BAA8B,CAAC,iBAAiB,EAAE,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAElH,IAAI,kBAAkB,KAAK,UAAU,CAAC,KAAK,EAAE,CAAC;YAC5C,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;QAChC,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,IAAI,aAAa,CAAC,OAAO,CAAC,WAAW,KAAK,KAAK,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;QACnH,MAAM,iBAAiB,GAAG,MAAM,sBAAsB,CACpD,iBAAiB,EACjB,eAAe,EACf,MAAM,EACN,eAAe,EAAE,EACjB,YAAY,EACZ,aAAa,CAAC,OAAO,CAAC,WAAW,IAAI,GAAG,EACxC,aAAa,CAAC,OAAO,CACtB,CAAC;QAEF,qGAAqG;QACrG,MAAM,0BAA0B,CAAC,iBAAiB,EAAE,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAEnF,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC/C,CAAC;SAAM,IAAI,aAAa,CAAC,OAAO,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC5C,yDAAyD;QAEzD,MAAM,cAAc,GAAG,MAAM,0BAA0B,CAAC,iBAAiB,EAAE,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAC1G,IAAI,cAAc,KAAK,UAAU,CAAC,KAAK,EAAE,CAAC;YACxC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;QAChC,CAAC;QAED,8DAA8D;QAC9D,IAAI,CAAC;YACH,oDAAoD;YACpD,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,sBAAsB,CAC5D,iBAAiB,EACjB,MAAM,EACN,eAAe,EAAE,EACjB,aAAa,CAAC,OAAO,CACtB,CAAC;YAEF,oCAAoC;YACpC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CACrC,iBAAiB,EACjB,MAAM,EACN,eAAe,EAAE,EACjB,aAAa,CAAC,OAAO,EACrB,qBAAqB,EACrB,YAAY,EACZ,eAAe,CAChB,CAAC;YAEF,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gBAAgB,CAAC,8BAA8B,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5D,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;QAChC,CAAC;IACH,CAAC;SAAM,CAAC;QACN,gBAAgB,CAAC,qCAAqC,CAAC,CAAC;QACxD,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;IAChC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,OAAsB;IAC7C,OAAO;QACL,UAAU,EAAE,IAAI,CAAC,SAAS,CACxB,iBAAiB,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAC1F;QACD,iBAAiB,EAAE,CAAC,KAAe,EAAE,YAAqB,KAAK,EAAE,EAAE,CACjE,IAAI,CAAC,SAAS,CACZ,iBAAiB,CACf,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CACZ,aAAa,CACX,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,EAC1E,OAAO,CAAC,OAAO,CAChB,CACF,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CACzD,CACF,CACF;QACH,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;KAC9C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"prompt-service.js","sourceRoot":"","sources":["../../src/prompt/prompt-service.ts"],"names":[],"mappings":"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"}
@@ -53,7 +53,7 @@ export declare const testConfigs: {
53
53
  askQuestion: boolean;
54
54
  disableContextOptimization: boolean;
55
55
  explicitPrompt: string;
56
- aiService: "chat-gpt";
56
+ aiService: "openai";
57
57
  vision: boolean;
58
58
  };
59
59
  imagenConfig: {
@@ -154,7 +154,7 @@ export const testConfigs = {
154
154
  askQuestion: false,
155
155
  disableContextOptimization: true,
156
156
  explicitPrompt: 'testx',
157
- aiService: 'chat-gpt',
157
+ aiService: 'openai',
158
158
  vision: true,
159
159
  },
160
160
  // Configuration with imagen enabled
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-service.test-utils.js","sourceRoot":"","sources":["../../src/prompt/prompt-service.test-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-service.test-utils.js","sourceRoot":"","sources":["../../src/prompt/prompt-service.test-utils.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  * Static prompts used in the prompt-service module.
3
3
  * These prompts are used in the initial conversation with the AI service.
4
4
  */
5
+ import { FileUpdate } from '../main/codegen-types';
5
6
  /** Initial greeting from the user */
6
7
  export declare const INITIAL_GREETING = "Hello, GenAIcode!";
7
8
  /** Assistant's response asking for source code and other assets */
@@ -13,4 +14,4 @@ export declare const READY_TO_ASSIST = "Thank you, I'm ready to assist you with
13
14
  /** Assistant's response when generating code */
14
15
  export declare const CODEGEN_SUMMARY_PROMPT = "Planning phase completed. Would you like to proceed with the planned changes?";
15
16
  /** Template for partial prompt when requesting changes for a specific file */
16
- export declare const getPartialPromptTemplate: (path: string) => string;
17
+ export declare const getPartialPromptTemplate: (file: FileUpdate) => string;
@@ -18,5 +18,6 @@ export const READY_TO_ASSIST = "Thank you, I'm ready to assist you with your req
18
18
  /** Assistant's response when generating code */
19
19
  export const CODEGEN_SUMMARY_PROMPT = 'Planning phase completed. Would you like to proceed with the planned changes?';
20
20
  /** Template for partial prompt when requesting changes for a specific file */
21
- export const getPartialPromptTemplate = (path) => `Please now generate update for the \`${path}\` file using appropriate tools according to code generation summary.`;
21
+ export const getPartialPromptTemplate = (file) => `Please now generate update for the \`${file.filePath}\` file using \`${file.updateToolName}\`.` +
22
+ (file.prompt ? `\n\n${file.prompt}` : '');
22
23
  //# sourceMappingURL=static-prompts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"static-prompts.js","sourceRoot":"","sources":["../../src/prompt/static-prompts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,qCAAqC;AACrC,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC;AAEpD,mEAAmE;AACnE,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;aAKtB,CAAC;AAEd,4DAA4D;AAC5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,2EAA2E,CAAC;AAEhH,6DAA6D;AAC7D,MAAM,CAAC,MAAM,eAAe,GAAG,uDAAuD,CAAC;AAEvF,gDAAgD;AAChD,MAAM,CAAC,MAAM,sBAAsB,GAAG,+EAA+E,CAAC;AAEtH,8EAA8E;AAC9E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,IAAY,EAAU,EAAE,CAC/D,wCAAwC,IAAI,uEAAuE,CAAC"}
1
+ {"version":3,"file":"static-prompts.js","sourceRoot":"","sources":["../../src/prompt/static-prompts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,qCAAqC;AACrC,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC;AAEpD,mEAAmE;AACnE,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;aAKtB,CAAC;AAEd,4DAA4D;AAC5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,2EAA2E,CAAC;AAEhH,6DAA6D;AAC7D,MAAM,CAAC,MAAM,eAAe,GAAG,uDAAuD,CAAC;AAEvF,gDAAgD;AAChD,MAAM,CAAC,MAAM,sBAAsB,GAAG,+EAA+E,CAAC;AAEtH,8EAA8E;AAC9E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,IAAgB,EAAU,EAAE,CACnE,wCAAwC,IAAI,CAAC,QAAQ,mBAAmB,IAAI,CAAC,cAAc,KAAK;IAChG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC"}
@@ -16,7 +16,7 @@ export async function handleCodeGeneration({ generateContentFn, generateImageFn,
16
16
  };
17
17
  }
18
18
  // Ask user to confirm the planning result
19
- const planningConfirmation = await askUserForConfirmationWithAnswer('Planning phase completed. Would you like to proceed with the planned changes?', 'Accept planning and continue', 'Reject planning and return to conversation', true);
19
+ const planningConfirmation = await askUserForConfirmationWithAnswer(CODEGEN_SUMMARY_PROMPT, 'Accept planning and continue', 'Reject planning and return to conversation', true);
20
20
  if (!planningConfirmation.confirmed) {
21
21
  // User rejected the planning, return to conversation
22
22
  return {
@@ -72,6 +72,8 @@ export async function handleCodeGeneration({ generateContentFn, generateImageFn,
72
72
  ],
73
73
  };
74
74
  }
75
+ putAssistantMessage('Codegen summary is generated. Would you like to proceed with the code changes?');
76
+ putUserMessage(codegenSummaryConfirmation.answer || 'Accept codegen summary and continue');
75
77
  prompt.push({
76
78
  type: 'assistant',
77
79
  text: 'Codegen summary is generated. Would you like to proceed with the code changes?',
@@ -83,6 +85,15 @@ export async function handleCodeGeneration({ generateContentFn, generateImageFn,
83
85
  const updateResults = await processFileUpdates(generateContentFn, prompt, getFunctionDefs(), options, codegenSummaryRequest, waitIfPaused, generateImageFn);
84
86
  const functionCalls = [...baseResult, ...updateResults];
85
87
  const confirmed = await askUserForConfirmationWithAnswer('Code changes are generated, now what?', 'Apply code changes', 'Continue conversation', true);
88
+ putAssistantMessage('Code changes are generated, now what?');
89
+ putUserMessage(confirmed.answer || 'Apply code changes.');
90
+ prompt.push({
91
+ type: 'assistant',
92
+ text: 'Code changes are generated, now what?',
93
+ }, {
94
+ type: 'user',
95
+ text: confirmed.answer || 'Apply code changes.',
96
+ });
86
97
  if (confirmed.confirmed) {
87
98
  putSystemMessage('Applying code changes...');
88
99
  if (options.dryRun) {
@@ -90,31 +101,20 @@ export async function handleCodeGeneration({ generateContentFn, generateImageFn,
90
101
  }
91
102
  else {
92
103
  // Apply the code changes
93
- await updateFiles(functionCalls.filter((call) => call.name !== 'explanation' && call.name !== 'getSourceCode'), options);
104
+ await updateFiles(functionCalls.filter((call) => call.name !== 'explanation' && call.name !== 'getSourceCode' && call.name !== 'codegenSummary'), options);
94
105
  putSystemMessage('Code changes applied successfully');
95
106
  }
96
107
  }
97
108
  return {
98
109
  breakLoop: confirmed.confirmed ?? true,
99
110
  stepResult: functionCalls,
100
- items: [
101
- {
102
- assistant: {
103
- type: 'assistant',
104
- text: 'Code changes are generated, now what?',
105
- },
106
- user: {
107
- type: 'user',
108
- text: confirmed.answer || 'Apply code changes.',
109
- },
110
- },
111
- ],
111
+ items: [],
112
112
  };
113
113
  }
114
114
  catch (error) {
115
115
  putSystemMessage(`Error during code generation: ${error instanceof Error ? error.message : 'Unknown error'}`);
116
116
  return {
117
- breakLoop: false,
117
+ breakLoop: true,
118
118
  items: [
119
119
  {
120
120
  assistant: {
@@ -1 +1 @@
1
- {"version":3,"file":"code-generation.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/code-generation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code-generation.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/code-generation.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  import { ActionHandlerProps, ActionResult } from '../step-ask-question-types.js';
2
- export declare function handleDefaultAction({ askQuestionCall }: ActionHandlerProps): Promise<ActionResult>;
2
+ export declare function handleDefaultAction({ askQuestionMessage }: ActionHandlerProps): Promise<ActionResult>;
@@ -1,9 +1,9 @@
1
- export async function handleDefaultAction({ askQuestionCall }) {
1
+ export async function handleDefaultAction({ askQuestionMessage }) {
2
2
  return {
3
3
  breakLoop: false,
4
4
  items: [
5
5
  {
6
- assistant: { type: 'assistant', text: askQuestionCall.args?.message ?? '' },
6
+ assistant: { type: 'assistant', text: askQuestionMessage ?? '' },
7
7
  user: {
8
8
  type: 'user',
9
9
  text: "I don't want to start the code generation yet, let's talk a bit more.",
@@ -1 +1 @@
1
- {"version":3,"file":"default-action.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/default-action.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,EAAE,eAAe,EAAsB;IAC/E,OAAO;QACL,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE;YACL;gBACE,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,EAAE;gBAC3E,IAAI,EAAE;oBACJ,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,uEAAuE;iBAC9E;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"default-action.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/default-action.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,EAAE,kBAAkB,EAAsB;IAClF,OAAO;QACL,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE;YACL;gBACE,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,kBAAkB,IAAI,EAAE,EAAE;gBAChE,IAAI,EAAE;oBACJ,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,uEAAuE;iBAC9E;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { ActionHandler } from '../step-ask-question-types.js';
2
+ export declare const handleUpdateFile: ActionHandler;