codecane 1.0.206 → 1.0.235

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 (217) hide show
  1. package/dist/code-map/languages.d.ts +0 -1
  2. package/dist/code-map/languages.js +23 -224
  3. package/dist/code-map/languages.js.map +1 -1
  4. package/dist/code-map/parse.js +1 -0
  5. package/dist/code-map/parse.js.map +1 -1
  6. package/dist/code-map/tsconfig.tsbuildinfo +1 -1
  7. package/dist/common/actions.d.ts +369 -826
  8. package/dist/common/actions.js +25 -31
  9. package/dist/common/actions.js.map +1 -1
  10. package/dist/common/api-keys/constants.d.ts +8 -0
  11. package/dist/common/api-keys/constants.js +26 -0
  12. package/dist/common/api-keys/constants.js.map +1 -0
  13. package/dist/common/api-keys/crypto.d.ts +24 -0
  14. package/dist/common/api-keys/crypto.js +186 -0
  15. package/dist/common/api-keys/crypto.js.map +1 -0
  16. package/dist/common/bigquery/client.d.ts +15 -0
  17. package/dist/common/bigquery/client.js +246 -0
  18. package/dist/common/bigquery/client.js.map +1 -0
  19. package/dist/common/bigquery/schema.d.ts +55 -0
  20. package/dist/common/bigquery/schema.js +24 -0
  21. package/dist/common/bigquery/schema.js.map +1 -0
  22. package/dist/common/billing/auto-topup.d.ts +8 -0
  23. package/dist/common/billing/auto-topup.js +192 -0
  24. package/dist/common/billing/auto-topup.js.map +1 -0
  25. package/dist/common/billing/balance-calculator.d.ts +57 -0
  26. package/dist/common/billing/balance-calculator.js +218 -0
  27. package/dist/common/billing/balance-calculator.js.map +1 -0
  28. package/dist/common/billing/conversion.d.ts +9 -0
  29. package/dist/common/billing/conversion.js +20 -0
  30. package/dist/common/billing/conversion.js.map +1 -0
  31. package/dist/common/billing/credit-conversion.d.ts +24 -0
  32. package/dist/common/billing/credit-conversion.js +48 -0
  33. package/dist/common/billing/credit-conversion.js.map +1 -0
  34. package/dist/common/billing/grant-credits.d.ts +43 -0
  35. package/dist/common/billing/grant-credits.js +266 -0
  36. package/dist/common/billing/grant-credits.js.map +1 -0
  37. package/dist/common/billing/plans.d.ts +13 -0
  38. package/dist/common/billing/plans.js +44 -0
  39. package/dist/common/billing/plans.js.map +1 -0
  40. package/dist/common/browser-actions.d.ts +1 -1
  41. package/dist/common/browser-actions.js +4 -4
  42. package/dist/common/browser-actions.js.map +1 -1
  43. package/dist/common/constants/grant-priorities.d.ts +2 -0
  44. package/dist/common/constants/grant-priorities.js +10 -0
  45. package/dist/common/constants/grant-priorities.js.map +1 -0
  46. package/dist/common/constants/tools.d.ts +2 -0
  47. package/dist/common/constants/tools.js +24 -3
  48. package/dist/common/constants/tools.js.map +1 -1
  49. package/dist/common/constants.d.ts +93 -5
  50. package/dist/common/constants.js +111 -10
  51. package/dist/common/constants.js.map +1 -1
  52. package/dist/common/db/env.mjs +5 -5
  53. package/dist/common/db/env.mjs.map +1 -1
  54. package/dist/common/db/schema.d.ts +413 -83
  55. package/dist/common/db/schema.js +70 -9
  56. package/dist/common/db/schema.js.map +1 -1
  57. package/dist/common/db/transaction.d.ts +12 -0
  58. package/dist/common/db/transaction.js +36 -0
  59. package/dist/common/db/transaction.js.map +1 -0
  60. package/dist/common/env.mjs +11 -8
  61. package/dist/common/env.mjs.map +1 -1
  62. package/dist/common/json-config/__tests__/__snapshots__/stringify-schema.test.js.snap +66 -0
  63. package/dist/common/json-config/__tests__/stringify-schema.test.js +66 -0
  64. package/dist/common/json-config/__tests__/stringify-schema.test.js.map +1 -0
  65. package/dist/common/json-config/constants.d.ts +82 -0
  66. package/dist/common/json-config/constants.js +48 -0
  67. package/dist/common/json-config/constants.js.map +1 -0
  68. package/dist/common/json-config/parser.d.ts +7 -0
  69. package/dist/common/json-config/parser.js +51 -0
  70. package/dist/common/json-config/parser.js.map +1 -0
  71. package/dist/common/json-config/stringify-schema.d.ts +10 -0
  72. package/dist/common/json-config/stringify-schema.js +102 -0
  73. package/dist/common/json-config/stringify-schema.js.map +1 -0
  74. package/dist/common/project-file-tree.d.ts +2 -1
  75. package/dist/common/project-file-tree.js +59 -27
  76. package/dist/common/project-file-tree.js.map +1 -1
  77. package/dist/common/types/agent-state.d.ts +25 -22
  78. package/dist/common/types/agent-state.js +2 -0
  79. package/dist/common/types/agent-state.js.map +1 -1
  80. package/dist/common/types/grant.d.ts +2 -0
  81. package/dist/common/types/grant.js +10 -0
  82. package/dist/common/types/grant.js.map +1 -0
  83. package/dist/common/types/usage.d.ts +37 -18
  84. package/dist/common/types/usage.js +9 -6
  85. package/dist/common/types/usage.js.map +1 -1
  86. package/dist/common/util/__tests__/saxy.test.js +262 -0
  87. package/dist/common/util/__tests__/saxy.test.js.map +1 -0
  88. package/dist/common/util/__tests__/string.test.js +2 -3
  89. package/dist/common/util/__tests__/string.test.js.map +1 -1
  90. package/dist/common/util/changes.d.ts +1 -0
  91. package/dist/common/util/changes.js +8 -2
  92. package/dist/common/util/changes.js.map +1 -1
  93. package/dist/common/util/dates.d.ts +10 -1
  94. package/dist/common/util/dates.js +11 -2
  95. package/dist/common/util/dates.js.map +1 -1
  96. package/dist/common/util/file.d.ts +10 -9
  97. package/dist/common/util/file.js +12 -4
  98. package/dist/common/util/file.js.map +1 -1
  99. package/dist/common/util/logger.d.ts +8 -0
  100. package/dist/common/util/logger.js +52 -0
  101. package/dist/common/util/logger.js.map +1 -0
  102. package/dist/common/util/lru-cache.d.ts +23 -2
  103. package/dist/common/util/lru-cache.js +44 -18
  104. package/dist/common/util/lru-cache.js.map +1 -1
  105. package/dist/common/util/messages.d.ts +3 -0
  106. package/dist/common/util/messages.js +50 -3
  107. package/dist/common/util/messages.js.map +1 -1
  108. package/dist/common/util/min-heap.js +2 -2
  109. package/dist/common/util/min-heap.js.map +1 -1
  110. package/dist/common/util/promise.d.ts +1 -1
  111. package/dist/common/util/promise.js +2 -2
  112. package/dist/common/util/promise.js.map +1 -1
  113. package/dist/common/util/saxy.d.ts +8 -0
  114. package/dist/common/util/saxy.js +35 -12
  115. package/dist/common/util/saxy.js.map +1 -1
  116. package/dist/common/util/string.d.ts +7 -1
  117. package/dist/common/util/string.js +20 -4
  118. package/dist/common/util/string.js.map +1 -1
  119. package/dist/common/util/stripe.d.ts +1 -0
  120. package/dist/common/util/stripe.js +10 -7
  121. package/dist/common/util/stripe.js.map +1 -1
  122. package/dist/common/util/sync-failure.d.ts +1 -0
  123. package/dist/common/util/sync-failure.js +57 -0
  124. package/dist/common/util/sync-failure.js.map +1 -0
  125. package/dist/common/websockets/websocket-client.d.ts +2 -1
  126. package/dist/common/websockets/websocket-client.js +34 -6
  127. package/dist/common/websockets/websocket-client.js.map +1 -1
  128. package/dist/common/websockets/websocket-schema.d.ts +1440 -2642
  129. package/dist/utils/__tests__/response-example-4-files.txt +621 -0
  130. package/package.json +20 -35
  131. package/dist/browser-runner.d.ts +0 -35
  132. package/dist/browser-runner.js +0 -674
  133. package/dist/browser-runner.js.map +0 -1
  134. package/dist/chat-storage.d.ts +0 -2
  135. package/dist/chat-storage.js +0 -93
  136. package/dist/chat-storage.js.map +0 -1
  137. package/dist/checkpoints/checkpoint-manager.d.ts +0 -73
  138. package/dist/checkpoints/checkpoint-manager.js +0 -193
  139. package/dist/checkpoints/checkpoint-manager.js.map +0 -1
  140. package/dist/checkpoints/file-manager.d.ts +0 -72
  141. package/dist/checkpoints/file-manager.js +0 -303
  142. package/dist/checkpoints/file-manager.js.map +0 -1
  143. package/dist/cli.d.ts +0 -48
  144. package/dist/cli.js +0 -604
  145. package/dist/cli.js.map +0 -1
  146. package/dist/client.d.ts +0 -229
  147. package/dist/client.js +0 -550
  148. package/dist/client.js.map +0 -1
  149. package/dist/common/billing/quota-manager.d.ts +0 -29
  150. package/dist/common/billing/quota-manager.js +0 -213
  151. package/dist/common/billing/quota-manager.js.map +0 -1
  152. package/dist/common/util/tools.d.ts +0 -2
  153. package/dist/common/util/tools.js +0 -13
  154. package/dist/common/util/tools.js.map +0 -1
  155. package/dist/config.d.ts +0 -3
  156. package/dist/config.js +0 -9
  157. package/dist/config.js.map +0 -1
  158. package/dist/create-template-project.d.ts +0 -1
  159. package/dist/create-template-project.js +0 -107
  160. package/dist/create-template-project.js.map +0 -1
  161. package/dist/credentials.d.ts +0 -4
  162. package/dist/credentials.js +0 -37
  163. package/dist/credentials.js.map +0 -1
  164. package/dist/fingerprint.d.ts +0 -1
  165. package/dist/fingerprint.js +0 -43
  166. package/dist/fingerprint.js.map +0 -1
  167. package/dist/index.d.ts +0 -2
  168. package/dist/index.js +0 -108
  169. package/dist/index.js.map +0 -1
  170. package/dist/menu.d.ts +0 -3
  171. package/dist/menu.js +0 -117
  172. package/dist/menu.js.map +0 -1
  173. package/dist/project-files.d.ts +0 -110
  174. package/dist/project-files.js +0 -490
  175. package/dist/project-files.js.map +0 -1
  176. package/dist/tool-handlers.d.ts +0 -27
  177. package/dist/tool-handlers.js +0 -217
  178. package/dist/tool-handlers.js.map +0 -1
  179. package/dist/types.d.ts +0 -7
  180. package/dist/types.js +0 -3
  181. package/dist/types.js.map +0 -1
  182. package/dist/update-codebuff.d.ts +0 -1
  183. package/dist/update-codebuff.js +0 -156
  184. package/dist/update-codebuff.js.map +0 -1
  185. package/dist/utils/__tests__/xml-stream-parser.test.js +0 -221
  186. package/dist/utils/__tests__/xml-stream-parser.test.js.map +0 -1
  187. package/dist/utils/detect-shell.d.ts +0 -1
  188. package/dist/utils/detect-shell.js +0 -60
  189. package/dist/utils/detect-shell.js.map +0 -1
  190. package/dist/utils/logger.d.ts +0 -2
  191. package/dist/utils/logger.js +0 -33
  192. package/dist/utils/logger.js.map +0 -1
  193. package/dist/utils/spinner.d.ts +0 -11
  194. package/dist/utils/spinner.js +0 -87
  195. package/dist/utils/spinner.js.map +0 -1
  196. package/dist/utils/system-info.d.ts +0 -8
  197. package/dist/utils/system-info.js +0 -22
  198. package/dist/utils/system-info.js.map +0 -1
  199. package/dist/utils/terminal.d.ts +0 -27
  200. package/dist/utils/terminal.js +0 -335
  201. package/dist/utils/terminal.js.map +0 -1
  202. package/dist/utils/tool-renderers.d.ts +0 -16
  203. package/dist/utils/tool-renderers.js +0 -117
  204. package/dist/utils/tool-renderers.js.map +0 -1
  205. package/dist/utils/xml-stream-parser.d.ts +0 -9
  206. package/dist/utils/xml-stream-parser.js +0 -128
  207. package/dist/utils/xml-stream-parser.js.map +0 -1
  208. package/dist/web-scraper.d.ts +0 -3
  209. package/dist/web-scraper.js +0 -57
  210. package/dist/web-scraper.js.map +0 -1
  211. package/dist/workers/checkpoint-worker.js +0 -47
  212. package/dist/workers/checkpoint-worker.js.map +0 -1
  213. package/dist/workers/project-context.d.ts +0 -1
  214. package/dist/workers/project-context.js +0 -17
  215. package/dist/workers/project-context.js.map +0 -1
  216. /package/dist/{utils/__tests__/xml-stream-parser.test.d.ts → common/json-config/__tests__/stringify-schema.test.d.ts} +0 -0
  217. /package/dist/{workers/checkpoint-worker.d.ts → common/util/__tests__/saxy.test.d.ts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-runner.js","sourceRoot":"","sources":["../src/browser-runner.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import { Message } from './common/types/message';
2
- export declare function setMessages(messages: Message[]): void;
@@ -1,93 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.setMessages = setMessages;
27
- const path = __importStar(require("path"));
28
- const fs = __importStar(require("fs"));
29
- const project_files_1 = require("./project-files");
30
- const string_1 = require("./common/util/string");
31
- const ts_pattern_1 = require("ts-pattern");
32
- function setMessages(messages) {
33
- // Clean up any screenshots and logs in previous messages
34
- // Skip the last message as it may not have been processed by the backend yet
35
- const lastIndex = messages.length - 1;
36
- const cleanedMessages = messages.map((msg, index) => {
37
- if (index === lastIndex) {
38
- return msg; // Preserve the most recent message in its entirety
39
- }
40
- // Helper function to clean up message content
41
- const cleanContent = (content) => {
42
- // Keep only tool logs
43
- content = (0, string_1.transformJsonInString)(content, 'logs', (logs) => logs.filter((log) => log.source === 'tool'), '(LOGS_REMOVED)');
44
- // Remove metrics
45
- content = (0, string_1.transformJsonInString)(content, 'metrics', () => '(METRICS_REMOVED)', '(METRICS_REMOVED)');
46
- return content;
47
- };
48
- // Clean up message content
49
- if (!msg.content)
50
- return msg;
51
- return (0, ts_pattern_1.match)(msg)
52
- .with({ content: ts_pattern_1.P.array() }, (message) => ({
53
- ...message,
54
- content: message.content.reduce((acc, contentObj) => [
55
- ...acc,
56
- ...(0, ts_pattern_1.match)(contentObj)
57
- .with({ type: 'tool_result', content: ts_pattern_1.P.string }, (obj) => [
58
- {
59
- ...obj,
60
- content: cleanContent(obj.content),
61
- },
62
- ])
63
- .with({ type: 'text', text: ts_pattern_1.P.string }, (obj) => [
64
- {
65
- ...obj,
66
- text: cleanContent(obj.text),
67
- },
68
- ])
69
- .otherwise((obj) => [obj]),
70
- ], []),
71
- }))
72
- .with({ content: ts_pattern_1.P.string }, (message) => ({
73
- ...message,
74
- content: cleanContent(message.content),
75
- }))
76
- .otherwise((message) => message);
77
- });
78
- // Save messages to chat directory
79
- try {
80
- const chatDir = (0, project_files_1.getCurrentChatDir)();
81
- const messagesPath = path.join(chatDir, 'messages.json');
82
- const messagesData = {
83
- id: project_files_1.currentChatId,
84
- messages: cleanedMessages,
85
- updatedAt: new Date().toISOString(),
86
- };
87
- fs.writeFileSync(messagesPath, JSON.stringify(messagesData, null, 2));
88
- }
89
- catch (error) {
90
- console.error('Failed to save messages to file:', error);
91
- }
92
- }
93
- //# sourceMappingURL=chat-storage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat-storage.js","sourceRoot":"","sources":["../src/chat-storage.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAQA,kCA+EC;AAvFD,2CAA4B;AAC5B,uCAAwB;AAExB,mDAAkE;AAClE,+CAA0D;AAE1D,2CAAqC;AAErC,SAAgB,WAAW,CAAC,QAAmB;IAC7C,yDAAyD;IACzD,6EAA6E;IAC7E,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAA;IACrC,MAAM,eAAe,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QAClD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,GAAG,CAAA,CAAC,mDAAmD;QAChE,CAAC;QAED,8CAA8C;QAC9C,MAAM,YAAY,GAAG,CAAC,OAAe,EAAE,EAAE;YACvC,sBAAsB;YACtB,OAAO,GAAG,IAAA,8BAAqB,EAC7B,OAAO,EACP,MAAM,EACN,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,EACrD,gBAAgB,CACjB,CAAA;YAED,iBAAiB;YACjB,OAAO,GAAG,IAAA,8BAAqB,EAC7B,OAAO,EACP,SAAS,EACT,GAAG,EAAE,CAAC,mBAAmB,EACzB,mBAAmB,CACpB,CAAA;YAED,OAAO,OAAO,CAAA;QAChB,CAAC,CAAA;QAED,2BAA2B;QAC3B,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,OAAO,GAAG,CAAA;QAE5B,OAAO,IAAA,kBAAK,EAAC,GAAG,CAAC;aACd,IAAI,CAAC,EAAE,OAAO,EAAE,cAAC,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC1C,GAAG,OAAO;YACV,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAC7B,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC;gBACnB,GAAG,GAAG;gBACN,GAAG,IAAA,kBAAK,EAAC,UAAU,CAAC;qBACjB,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,cAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;oBACzD;wBACE,GAAG,GAAG;wBACN,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;qBACnC;iBACF,CAAC;qBACD,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;oBAC/C;wBACE,GAAG,GAAG;wBACN,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;qBAC7B;iBACF,CAAC;qBACD,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;aAC7B,EACD,EAAE,CACH;SACF,CAAC,CAAC;aACF,IAAI,CAAC,EAAE,OAAO,EAAE,cAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACzC,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC;SACvC,CAAC,CAAC;aACF,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;IAEF,kCAAkC;IAClC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,iCAAiB,GAAE,CAAA;QACnC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAA;QAExD,MAAM,YAAY,GAAG;YACnB,EAAE,EAAE,6BAAa;YACjB,QAAQ,EAAE,eAAe;YACzB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAA;QAED,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IACvE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAA;IAC1D,CAAC;AACH,CAAC"}
@@ -1,73 +0,0 @@
1
- import { AgentState } from '../common/types/agent-state';
2
- /**
3
- * Interface representing a checkpoint of agent state
4
- */
5
- export interface Checkpoint {
6
- agentStateString: string;
7
- /** Promise resolving to the git commit hash for this checkpoint */
8
- fileStateIdPromise: Promise<string>;
9
- /** Number of messages in the agent's history at checkpoint time */
10
- historyLength: number;
11
- id: number;
12
- timestamp: number;
13
- /** User input that triggered this checkpoint */
14
- userInput: string;
15
- }
16
- /**
17
- * Manages checkpoints of agent state and file state using git operations in a worker thread.
18
- * Each checkpoint contains both the agent's conversation state and a git commit
19
- * representing the state of all tracked files at that point.
20
- */
21
- export declare class CheckpointManager {
22
- checkpoints: Array<Checkpoint>;
23
- private bareRepoPath;
24
- disabledReason: string | null;
25
- /** Worker thread for git operations */
26
- private worker;
27
- /**
28
- * Initialize or return the existing worker thread
29
- * @returns The worker thread instance
30
- */
31
- private initWorker;
32
- /**
33
- * Execute an operation in the worker thread with timeout handling
34
- * @param message - The message describing the operation to perform
35
- * @returns A promise that resolves with the operation result
36
- * @throws Error if the operation fails or times out
37
- */
38
- private runWorkerOperation;
39
- /**
40
- * Get the path to the bare git repository used for storing file states
41
- * @returns The bare repo path
42
- */
43
- private getBareRepoPath;
44
- /**
45
- * Add a new checkpoint of the current agent and file state
46
- * @param agentState - The current agent state to checkpoint
47
- * @param userInput - The user input that triggered this checkpoint
48
- * @returns The created checkpoint, or null if checkpointing is disabled
49
- */
50
- addCheckpoint(agentState: AgentState, userInput: string): Promise<Checkpoint | null>;
51
- /**
52
- * Get the most recent checkpoint
53
- * @returns The most recent checkpoint or null if none exist
54
- */
55
- getLatestCheckpoint(): Checkpoint | null;
56
- /**
57
- * Restore the file state from a specific checkpoint
58
- * @param id - The ID of the checkpoint to restore
59
- * @returns True if restoration succeeded, false if checkpoint not found
60
- */
61
- restoreCheckointFileState(id: number): Promise<boolean>;
62
- /**
63
- * Clear all checkpoints
64
- */
65
- clearCheckpoints(): void;
66
- /**
67
- * Get a formatted string representation of all checkpoints
68
- * @param detailed Whether to include detailed information about each checkpoint
69
- * @returns A formatted string representation of all checkpoints
70
- */
71
- getCheckpointsAsString(detailed?: boolean): string;
72
- }
73
- export declare const checkpointManager: CheckpointManager;
@@ -1,193 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.checkpointManager = exports.CheckpointManager = void 0;
4
- const path_1 = require("path");
5
- const picocolors_1 = require("picocolors");
6
- const worker_threads_1 = require("worker_threads");
7
- const project_file_tree_1 = require("../common/project-file-tree");
8
- const file_manager_1 = require("./file-manager");
9
- const project_files_1 = require("../project-files");
10
- /**
11
- * Manages checkpoints of agent state and file state using git operations in a worker thread.
12
- * Each checkpoint contains both the agent's conversation state and a git commit
13
- * representing the state of all tracked files at that point.
14
- */
15
- class CheckpointManager {
16
- checkpoints = [];
17
- bareRepoPath = null;
18
- disabledReason = null;
19
- /** Worker thread for git operations */
20
- worker = null;
21
- /**
22
- * Initialize or return the existing worker thread
23
- * @returns The worker thread instance
24
- */
25
- initWorker() {
26
- if (!this.worker) {
27
- // NOTE: Uses the built worker-script-project-context.js within dist.
28
- // So you need to run `bun run build` before running locally.
29
- const workerPath = __filename.endsWith('.ts')
30
- ? (0, path_1.join)(__dirname, '../../dist', 'workers/checkpoint-worker.js')
31
- : (0, path_1.join)(__dirname, '../workers/checkpoint-worker.js');
32
- this.worker = new worker_threads_1.Worker(workerPath);
33
- }
34
- return this.worker;
35
- }
36
- /**
37
- * Execute an operation in the worker thread with timeout handling
38
- * @param message - The message describing the operation to perform
39
- * @returns A promise that resolves with the operation result
40
- * @throws Error if the operation fails or times out
41
- */
42
- async runWorkerOperation(message) {
43
- const worker = this.initWorker();
44
- return new Promise((resolve, reject) => {
45
- const timeoutMs = 30000; // 30 seconds timeout
46
- const handler = (response) => {
47
- if (response.success) {
48
- resolve(response.result);
49
- }
50
- else {
51
- reject(new Error(response.error));
52
- }
53
- worker.off('message', handler);
54
- };
55
- worker.on('message', handler);
56
- worker.postMessage(message);
57
- // Add timeout
58
- setTimeout(() => {
59
- worker.off('message', handler);
60
- reject(new Error('Worker operation timed out'));
61
- }, timeoutMs);
62
- });
63
- }
64
- /**
65
- * Get the path to the bare git repository used for storing file states
66
- * @returns The bare repo path
67
- */
68
- getBareRepoPath() {
69
- if (!this.bareRepoPath) {
70
- this.bareRepoPath = (0, file_manager_1.getBareRepoPath)((0, project_files_1.getProjectRoot)());
71
- }
72
- return this.bareRepoPath;
73
- }
74
- /**
75
- * Add a new checkpoint of the current agent and file state
76
- * @param agentState - The current agent state to checkpoint
77
- * @param userInput - The user input that triggered this checkpoint
78
- * @returns The created checkpoint, or null if checkpointing is disabled
79
- */
80
- async addCheckpoint(agentState, userInput) {
81
- if (this.disabledReason !== null) {
82
- return null;
83
- }
84
- const id = this.checkpoints.length + 1;
85
- const projectDir = (0, project_files_1.getProjectRoot)();
86
- const bareRepoPath = this.getBareRepoPath();
87
- const relativeFilepaths = (0, project_file_tree_1.getAllFilePaths)(agentState.fileContext.fileTree);
88
- if (relativeFilepaths.length >= project_file_tree_1.DEFAULT_MAX_FILES) {
89
- this.disabledReason = 'Project too large';
90
- return null;
91
- }
92
- const needToStage = await (0, file_manager_1.hasUnsavedChanges)({
93
- projectDir,
94
- bareRepoPath,
95
- relativeFilepaths,
96
- });
97
- if (!needToStage && this.checkpoints.length > 0) {
98
- return null;
99
- }
100
- const fileStateIdPromise = needToStage
101
- ? this.runWorkerOperation({
102
- type: 'store',
103
- projectDir,
104
- bareRepoPath,
105
- message: `Checkpoint ${id}`,
106
- relativeFilepaths,
107
- })
108
- : (0, file_manager_1.getLatestCommit)({ bareRepoPath });
109
- const checkpoint = {
110
- agentStateString: JSON.stringify(agentState),
111
- fileStateIdPromise,
112
- historyLength: agentState.messageHistory.length,
113
- id,
114
- timestamp: Date.now(),
115
- userInput,
116
- };
117
- this.checkpoints.push(checkpoint);
118
- return checkpoint;
119
- }
120
- /**
121
- * Get the most recent checkpoint
122
- * @returns The most recent checkpoint or null if none exist
123
- */
124
- getLatestCheckpoint() {
125
- if (this.disabledReason !== null) {
126
- return null;
127
- }
128
- return this.checkpoints.length === 0
129
- ? null
130
- : this.checkpoints[this.checkpoints.length - 1];
131
- }
132
- /**
133
- * Restore the file state from a specific checkpoint
134
- * @param id - The ID of the checkpoint to restore
135
- * @returns True if restoration succeeded, false if checkpoint not found
136
- */
137
- async restoreCheckointFileState(id) {
138
- const checkpoint = this.checkpoints[id - 1];
139
- if (!checkpoint) {
140
- return false;
141
- }
142
- const relativeFilepaths = (0, project_file_tree_1.getAllFilePaths)(JSON.parse(checkpoint.agentStateString).fileContext
143
- .fileTree);
144
- await this.runWorkerOperation({
145
- type: 'restore',
146
- projectDir: (0, project_files_1.getProjectRoot)(),
147
- bareRepoPath: this.getBareRepoPath(),
148
- commit: await checkpoint.fileStateIdPromise,
149
- relativeFilepaths,
150
- });
151
- return true;
152
- }
153
- /**
154
- * Clear all checkpoints
155
- */
156
- clearCheckpoints() {
157
- this.checkpoints = [];
158
- }
159
- /**
160
- * Get a formatted string representation of all checkpoints
161
- * @param detailed Whether to include detailed information about each checkpoint
162
- * @returns A formatted string representation of all checkpoints
163
- */
164
- getCheckpointsAsString(detailed = false) {
165
- if (this.disabledReason !== null) {
166
- return (0, picocolors_1.red)(`Checkpoints not enabled: ${this.disabledReason}`);
167
- }
168
- if (this.checkpoints.length === 0) {
169
- return (0, picocolors_1.yellow)('No checkpoints available.');
170
- }
171
- const lines = [(0, picocolors_1.bold)((0, picocolors_1.underline)('Agent State Checkpoints:')), ''];
172
- this.checkpoints.forEach((checkpoint) => {
173
- const date = new Date(checkpoint.timestamp);
174
- const formattedDate = date.toLocaleString();
175
- const userInputOneLine = checkpoint.userInput.replaceAll('\n', ' ');
176
- const userInput = userInputOneLine.length > 50
177
- ? userInputOneLine.substring(0, 47) + '...'
178
- : userInputOneLine;
179
- lines.push(`${(0, picocolors_1.cyan)((0, picocolors_1.bold)(`#${checkpoint.id}`))} ${(0, picocolors_1.gray)(`[${formattedDate}]`)}:`);
180
- lines.push(` ${(0, picocolors_1.blue)('Input')}: ${userInput}`);
181
- if (detailed) {
182
- const messageCount = checkpoint.historyLength;
183
- lines.push(` ${(0, picocolors_1.blue)('Messages')}: ${messageCount}`);
184
- }
185
- lines.push(''); // Empty line between checkpoints
186
- });
187
- return lines.join('\n');
188
- }
189
- }
190
- exports.CheckpointManager = CheckpointManager;
191
- // Export a singleton instance for use throughout the application
192
- exports.checkpointManager = new CheckpointManager();
193
- //# sourceMappingURL=checkpoint-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"checkpoint-manager.js","sourceRoot":"","sources":["../../src/checkpoints/checkpoint-manager.ts"],"names":[],"mappings":"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"}
@@ -1,72 +0,0 @@
1
- import fs from 'fs';
2
- /**
3
- * Generates a unique path for storing the bare git repository based on the project directory.
4
- * Uses SHA-256 hashing to create a unique identifier.
5
- * @param dir - The project directory path to hash
6
- * @returns The full path where the bare repo should be stored
7
- */
8
- export declare function getBareRepoPath(dir: string): string;
9
- /**
10
- * Checks if there are any uncommitted changes in the working directory.
11
- * First attempts to use native git commands, falling back to isomorphic-git if unavailable.
12
- * @param projectDir - The working tree directory path
13
- * @param bareRepoPath - The bare git repository path
14
- * @param relativeFilepaths - Array of file paths relative to projectDir to check
15
- * @returns Promise resolving to true if there are uncommitted changes, false otherwise
16
- */
17
- export declare function hasUnsavedChanges({ projectDir, bareRepoPath, relativeFilepaths, }: {
18
- projectDir: string;
19
- bareRepoPath: string;
20
- relativeFilepaths: Array<string>;
21
- }): Promise<boolean>;
22
- /**
23
- * Gets the hash of the latest commit in the repository.
24
- * First attempts to use native git commands, falling back to isomorphic-git if unavailable.
25
- * @param bareRepoPath - The bare git repository path
26
- * @returns Promise resolving to the commit hash
27
- */
28
- export declare function getLatestCommit({ bareRepoPath, }: {
29
- bareRepoPath: string;
30
- }): Promise<string>;
31
- /**
32
- * Initializes a bare git repository for tracking file changes.
33
- * Creates the repository if it doesn't exist, otherwise uses the existing one.
34
- * Makes an initial commit of the current file state.
35
- * @param projectDir - The working tree directory path
36
- * @param relativeFilepaths - Array of file paths relative to projectDir to track
37
- */
38
- export declare function initializeCheckpointFileManager({ projectDir, relativeFilepaths, }: {
39
- projectDir: string;
40
- relativeFilepaths: Array<string>;
41
- }): Promise<void>;
42
- /**
43
- * Creates a new commit with the current state of all tracked files.
44
- * Stages all changes and creates a commit with the specified message.
45
- * @param projectDir - The working tree directory path
46
- * @param bareRepoPath - The bare git repository path
47
- * @param message - The commit message
48
- * @param relativeFilepaths - Array of file paths relative to projectDir to commit
49
- * @returns Promise resolving to the new commit's hash
50
- */
51
- export declare function storeFileState({ projectDir, bareRepoPath, message, relativeFilepaths: relativeFilepaths, }: {
52
- projectDir: string;
53
- bareRepoPath: string;
54
- message: string;
55
- relativeFilepaths: Array<string>;
56
- }): Promise<string>;
57
- /**
58
- * Restores the working directory and index to match the specified commit.
59
- * Equivalent to `git reset --hard`
60
- * First attempts to use native git commands, falling back to isomorphic-git if unavailable.
61
- * @param projectDir - The working tree directory path
62
- * @param bareRepoPath - The bare git repository path
63
- * @param commit - The commit hash to restore to
64
- * @param relativeFilepaths - Array of file paths relative to projectDir to restore
65
- */
66
- export declare function restoreFileState({ projectDir, bareRepoPath, commit, relativeFilepaths, }: {
67
- projectDir: string;
68
- bareRepoPath: string;
69
- commit: string;
70
- relativeFilepaths: Array<string>;
71
- }): Promise<void>;
72
- export { fs };