codebuff 1.0.333 → 1.0.335

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 (363) hide show
  1. package/index.js +334 -0
  2. package/package.json +23 -72
  3. package/dist/__tests__/display.test.d.ts +0 -1
  4. package/dist/__tests__/display.test.js +0 -174
  5. package/dist/__tests__/display.test.js.map +0 -1
  6. package/dist/background-process-manager.d.ts +0 -50
  7. package/dist/background-process-manager.js +0 -364
  8. package/dist/background-process-manager.js.map +0 -1
  9. package/dist/browser-runner.d.ts +0 -35
  10. package/dist/browser-runner.js +0 -689
  11. package/dist/browser-runner.js.map +0 -1
  12. package/dist/chat-storage.d.ts +0 -2
  13. package/dist/chat-storage.js +0 -98
  14. package/dist/chat-storage.js.map +0 -1
  15. package/dist/checkpoints/checkpoint-manager.d.ts +0 -94
  16. package/dist/checkpoints/checkpoint-manager.js +0 -291
  17. package/dist/checkpoints/checkpoint-manager.js.map +0 -1
  18. package/dist/checkpoints/file-manager.d.ts +0 -72
  19. package/dist/checkpoints/file-manager.js +0 -495
  20. package/dist/checkpoints/file-manager.js.map +0 -1
  21. package/dist/cli-definitions.d.ts +0 -9
  22. package/dist/cli-definitions.js +0 -60
  23. package/dist/cli-definitions.js.map +0 -1
  24. package/dist/cli-handlers/api-key.d.ts +0 -25
  25. package/dist/cli-handlers/api-key.js +0 -66
  26. package/dist/cli-handlers/api-key.js.map +0 -1
  27. package/dist/cli-handlers/checkpoint.d.ts +0 -19
  28. package/dist/cli-handlers/checkpoint.js +0 -221
  29. package/dist/cli-handlers/checkpoint.js.map +0 -1
  30. package/dist/cli-handlers/diff.d.ts +0 -2
  31. package/dist/cli-handlers/diff.js +0 -31
  32. package/dist/cli-handlers/diff.js.map +0 -1
  33. package/dist/cli-handlers/easter-egg.d.ts +0 -1
  34. package/dist/cli-handlers/easter-egg.js +0 -126
  35. package/dist/cli-handlers/easter-egg.js.map +0 -1
  36. package/dist/cli-handlers/inititalization-flow.d.ts +0 -1
  37. package/dist/cli-handlers/inititalization-flow.js +0 -25
  38. package/dist/cli-handlers/inititalization-flow.js.map +0 -1
  39. package/dist/cli.d.ts +0 -67
  40. package/dist/cli.js +0 -777
  41. package/dist/cli.js.map +0 -1
  42. package/dist/client.d.ts +0 -91
  43. package/dist/client.js +0 -1112
  44. package/dist/client.js.map +0 -1
  45. package/dist/code-map/languages.d.ts +0 -12
  46. package/dist/code-map/languages.d.ts.map +0 -1
  47. package/dist/code-map/languages.js +0 -130
  48. package/dist/code-map/languages.js.map +0 -1
  49. package/dist/code-map/parse.d.ts +0 -22
  50. package/dist/code-map/parse.d.ts.map +0 -1
  51. package/dist/code-map/parse.js +0 -180
  52. package/dist/code-map/parse.js.map +0 -1
  53. package/dist/code-map/tree-sitter-queries/readme.md +0 -23
  54. package/dist/code-map/tree-sitter-queries/tree-sitter-c-tags.scm +0 -16
  55. package/dist/code-map/tree-sitter-queries/tree-sitter-c_sharp-tags.scm +0 -23
  56. package/dist/code-map/tree-sitter-queries/tree-sitter-cpp-tags.scm +0 -29
  57. package/dist/code-map/tree-sitter-queries/tree-sitter-go-tags.scm +0 -26
  58. package/dist/code-map/tree-sitter-queries/tree-sitter-java-tags.scm +0 -19
  59. package/dist/code-map/tree-sitter-queries/tree-sitter-javascript-tags.scm +0 -16
  60. package/dist/code-map/tree-sitter-queries/tree-sitter-php-tags.scm +0 -23
  61. package/dist/code-map/tree-sitter-queries/tree-sitter-python-tags.scm +0 -12
  62. package/dist/code-map/tree-sitter-queries/tree-sitter-ruby-tags.scm +0 -58
  63. package/dist/code-map/tree-sitter-queries/tree-sitter-rust-tags.scm +0 -26
  64. package/dist/code-map/tree-sitter-queries/tree-sitter-typescript-tags.scm +0 -22
  65. package/dist/code-map/tsconfig.tsbuildinfo +0 -1
  66. package/dist/common/actions.d.ts +0 -1809
  67. package/dist/common/actions.d.ts.map +0 -1
  68. package/dist/common/actions.js +0 -140
  69. package/dist/common/actions.js.map +0 -1
  70. package/dist/common/analytics.d.ts +0 -6
  71. package/dist/common/analytics.d.ts.map +0 -1
  72. package/dist/common/analytics.js +0 -60
  73. package/dist/common/analytics.js.map +0 -1
  74. package/dist/common/api-keys/constants.d.ts +0 -9
  75. package/dist/common/api-keys/constants.d.ts.map +0 -1
  76. package/dist/common/api-keys/constants.js +0 -26
  77. package/dist/common/api-keys/constants.js.map +0 -1
  78. package/dist/common/api-keys/crypto.d.ts +0 -25
  79. package/dist/common/api-keys/crypto.d.ts.map +0 -1
  80. package/dist/common/api-keys/crypto.js +0 -186
  81. package/dist/common/api-keys/crypto.js.map +0 -1
  82. package/dist/common/browser-actions.d.ts +0 -4416
  83. package/dist/common/browser-actions.d.ts.map +0 -1
  84. package/dist/common/browser-actions.js +0 -343
  85. package/dist/common/browser-actions.js.map +0 -1
  86. package/dist/common/constants/analytics-events.d.ts +0 -29
  87. package/dist/common/constants/analytics-events.d.ts.map +0 -1
  88. package/dist/common/constants/analytics-events.js +0 -37
  89. package/dist/common/constants/analytics-events.js.map +0 -1
  90. package/dist/common/constants/grant-priorities.d.ts +0 -3
  91. package/dist/common/constants/grant-priorities.d.ts.map +0 -1
  92. package/dist/common/constants/grant-priorities.js +0 -11
  93. package/dist/common/constants/grant-priorities.js.map +0 -1
  94. package/dist/common/constants/tools.d.ts +0 -19
  95. package/dist/common/constants/tools.d.ts.map +0 -1
  96. package/dist/common/constants/tools.js +0 -45
  97. package/dist/common/constants/tools.js.map +0 -1
  98. package/dist/common/constants.d.ts +0 -149
  99. package/dist/common/constants.d.ts.map +0 -1
  100. package/dist/common/constants.js +0 -234
  101. package/dist/common/constants.js.map +0 -1
  102. package/dist/common/db/drizzle.config.d.ts +0 -3
  103. package/dist/common/db/drizzle.config.d.ts.map +0 -1
  104. package/dist/common/db/drizzle.config.js +0 -17
  105. package/dist/common/db/drizzle.config.js.map +0 -1
  106. package/dist/common/db/index.d.ts +0 -7
  107. package/dist/common/db/index.d.ts.map +0 -1
  108. package/dist/common/db/index.js +0 -35
  109. package/dist/common/db/index.js.map +0 -1
  110. package/dist/common/db/schema.d.ts +0 -2449
  111. package/dist/common/db/schema.d.ts.map +0 -1
  112. package/dist/common/db/schema.js +0 -310
  113. package/dist/common/db/schema.js.map +0 -1
  114. package/dist/common/db/transaction.d.ts +0 -13
  115. package/dist/common/db/transaction.d.ts.map +0 -1
  116. package/dist/common/db/transaction.js +0 -36
  117. package/dist/common/db/transaction.js.map +0 -1
  118. package/dist/common/json-config/__tests__/constants.test.d.ts +0 -2
  119. package/dist/common/json-config/__tests__/constants.test.d.ts.map +0 -1
  120. package/dist/common/json-config/__tests__/constants.test.js +0 -273
  121. package/dist/common/json-config/__tests__/constants.test.js.map +0 -1
  122. package/dist/common/json-config/__tests__/stringify-schema.test.d.ts +0 -2
  123. package/dist/common/json-config/__tests__/stringify-schema.test.d.ts.map +0 -1
  124. package/dist/common/json-config/__tests__/stringify-schema.test.js +0 -66
  125. package/dist/common/json-config/__tests__/stringify-schema.test.js.map +0 -1
  126. package/dist/common/json-config/constants.d.ts +0 -138
  127. package/dist/common/json-config/constants.d.ts.map +0 -1
  128. package/dist/common/json-config/constants.js +0 -78
  129. package/dist/common/json-config/constants.js.map +0 -1
  130. package/dist/common/json-config/default.d.ts +0 -3
  131. package/dist/common/json-config/default.d.ts.map +0 -1
  132. package/dist/common/json-config/default.js +0 -12
  133. package/dist/common/json-config/default.js.map +0 -1
  134. package/dist/common/json-config/stringify-schema.d.ts +0 -10
  135. package/dist/common/json-config/stringify-schema.d.ts.map +0 -1
  136. package/dist/common/json-config/stringify-schema.js +0 -131
  137. package/dist/common/json-config/stringify-schema.js.map +0 -1
  138. package/dist/common/project-file-tree.d.ts +0 -12
  139. package/dist/common/project-file-tree.d.ts.map +0 -1
  140. package/dist/common/project-file-tree.js +0 -212
  141. package/dist/common/project-file-tree.js.map +0 -1
  142. package/dist/common/types/agent-state.d.ts +0 -265
  143. package/dist/common/types/agent-state.d.ts.map +0 -1
  144. package/dist/common/types/agent-state.js +0 -48
  145. package/dist/common/types/agent-state.js.map +0 -1
  146. package/dist/common/types/grant.d.ts +0 -3
  147. package/dist/common/types/grant.d.ts.map +0 -1
  148. package/dist/common/types/grant.js +0 -11
  149. package/dist/common/types/grant.js.map +0 -1
  150. package/dist/common/types/message.d.ts +0 -320
  151. package/dist/common/types/message.d.ts.map +0 -1
  152. package/dist/common/types/message.js +0 -60
  153. package/dist/common/types/message.js.map +0 -1
  154. package/dist/common/types/organization.d.ts +0 -106
  155. package/dist/common/types/organization.d.ts.map +0 -1
  156. package/dist/common/types/organization.js +0 -3
  157. package/dist/common/types/organization.js.map +0 -1
  158. package/dist/common/types/referral.d.ts +0 -3
  159. package/dist/common/types/referral.d.ts.map +0 -1
  160. package/dist/common/types/referral.js +0 -5
  161. package/dist/common/types/referral.js.map +0 -1
  162. package/dist/common/types/tools.d.ts +0 -6
  163. package/dist/common/types/tools.d.ts.map +0 -1
  164. package/dist/common/types/tools.js +0 -3
  165. package/dist/common/types/tools.js.map +0 -1
  166. package/dist/common/types/usage.d.ts +0 -41
  167. package/dist/common/types/usage.d.ts.map +0 -1
  168. package/dist/common/types/usage.js +0 -16
  169. package/dist/common/types/usage.js.map +0 -1
  170. package/dist/common/util/__tests__/messages.test.d.ts +0 -2
  171. package/dist/common/util/__tests__/messages.test.d.ts.map +0 -1
  172. package/dist/common/util/__tests__/messages.test.js +0 -70
  173. package/dist/common/util/__tests__/messages.test.js.map +0 -1
  174. package/dist/common/util/__tests__/saxy.test.d.ts +0 -2
  175. package/dist/common/util/__tests__/saxy.test.d.ts.map +0 -1
  176. package/dist/common/util/__tests__/saxy.test.js +0 -906
  177. package/dist/common/util/__tests__/saxy.test.js.map +0 -1
  178. package/dist/common/util/__tests__/string.test.d.ts +0 -2
  179. package/dist/common/util/__tests__/string.test.d.ts.map +0 -1
  180. package/dist/common/util/__tests__/string.test.js +0 -82
  181. package/dist/common/util/__tests__/string.test.js.map +0 -1
  182. package/dist/common/util/array.d.ts +0 -7
  183. package/dist/common/util/array.d.ts.map +0 -1
  184. package/dist/common/util/array.js +0 -32
  185. package/dist/common/util/array.js.map +0 -1
  186. package/dist/common/util/changes.d.ts +0 -9
  187. package/dist/common/util/changes.d.ts.map +0 -1
  188. package/dist/common/util/changes.js +0 -87
  189. package/dist/common/util/changes.js.map +0 -1
  190. package/dist/common/util/credentials.d.ts +0 -26
  191. package/dist/common/util/credentials.d.ts.map +0 -1
  192. package/dist/common/util/credentials.js +0 -24
  193. package/dist/common/util/credentials.js.map +0 -1
  194. package/dist/common/util/currency.d.ts +0 -15
  195. package/dist/common/util/currency.d.ts.map +0 -1
  196. package/dist/common/util/currency.js +0 -23
  197. package/dist/common/util/currency.js.map +0 -1
  198. package/dist/common/util/dates.d.ts +0 -11
  199. package/dist/common/util/dates.d.ts.map +0 -1
  200. package/dist/common/util/dates.js +0 -22
  201. package/dist/common/util/dates.js.map +0 -1
  202. package/dist/common/util/file.d.ts +0 -171
  203. package/dist/common/util/file.d.ts.map +0 -1
  204. package/dist/common/util/file.js +0 -216
  205. package/dist/common/util/file.js.map +0 -1
  206. package/dist/common/util/git.d.ts +0 -7
  207. package/dist/common/util/git.d.ts.map +0 -1
  208. package/dist/common/util/git.js +0 -81
  209. package/dist/common/util/git.js.map +0 -1
  210. package/dist/common/util/logger.d.ts +0 -9
  211. package/dist/common/util/logger.d.ts.map +0 -1
  212. package/dist/common/util/logger.js +0 -52
  213. package/dist/common/util/logger.js.map +0 -1
  214. package/dist/common/util/lru-cache.d.ts +0 -31
  215. package/dist/common/util/lru-cache.d.ts.map +0 -1
  216. package/dist/common/util/lru-cache.js +0 -68
  217. package/dist/common/util/lru-cache.js.map +0 -1
  218. package/dist/common/util/messages.d.ts +0 -12
  219. package/dist/common/util/messages.d.ts.map +0 -1
  220. package/dist/common/util/messages.js +0 -81
  221. package/dist/common/util/messages.js.map +0 -1
  222. package/dist/common/util/min-heap.d.ts +0 -16
  223. package/dist/common/util/min-heap.d.ts.map +0 -1
  224. package/dist/common/util/min-heap.js +0 -73
  225. package/dist/common/util/min-heap.js.map +0 -1
  226. package/dist/common/util/object.d.ts +0 -19
  227. package/dist/common/util/object.d.ts.map +0 -1
  228. package/dist/common/util/object.js +0 -91
  229. package/dist/common/util/object.js.map +0 -1
  230. package/dist/common/util/patch.d.ts +0 -2
  231. package/dist/common/util/patch.d.ts.map +0 -1
  232. package/dist/common/util/patch.js +0 -215
  233. package/dist/common/util/patch.js.map +0 -1
  234. package/dist/common/util/promise.d.ts +0 -17
  235. package/dist/common/util/promise.d.ts.map +0 -1
  236. package/dist/common/util/promise.js +0 -51
  237. package/dist/common/util/promise.js.map +0 -1
  238. package/dist/common/util/random.d.ts +0 -2
  239. package/dist/common/util/random.d.ts.map +0 -1
  240. package/dist/common/util/random.js +0 -17
  241. package/dist/common/util/random.js.map +0 -1
  242. package/dist/common/util/referral.d.ts +0 -2
  243. package/dist/common/util/referral.d.ts.map +0 -1
  244. package/dist/common/util/referral.js +0 -6
  245. package/dist/common/util/referral.js.map +0 -1
  246. package/dist/common/util/saxy.d.ts +0 -179
  247. package/dist/common/util/saxy.d.ts.map +0 -1
  248. package/dist/common/util/saxy.js +0 -548
  249. package/dist/common/util/saxy.js.map +0 -1
  250. package/dist/common/util/string.d.ts +0 -80
  251. package/dist/common/util/string.d.ts.map +0 -1
  252. package/dist/common/util/string.js +0 -275
  253. package/dist/common/util/string.js.map +0 -1
  254. package/dist/common/util/stripe.d.ts +0 -4
  255. package/dist/common/util/stripe.d.ts.map +0 -1
  256. package/dist/common/util/stripe.js +0 -22
  257. package/dist/common/util/stripe.js.map +0 -1
  258. package/dist/common/util/sync-failure.d.ts +0 -2
  259. package/dist/common/util/sync-failure.d.ts.map +0 -1
  260. package/dist/common/util/sync-failure.js +0 -57
  261. package/dist/common/util/sync-failure.js.map +0 -1
  262. package/dist/common/websockets/websocket-client.d.ts +0 -43
  263. package/dist/common/websockets/websocket-client.d.ts.map +0 -1
  264. package/dist/common/websockets/websocket-client.js +0 -216
  265. package/dist/common/websockets/websocket-client.js.map +0 -1
  266. package/dist/common/websockets/websocket-schema.d.ts +0 -3679
  267. package/dist/common/websockets/websocket-schema.d.ts.map +0 -1
  268. package/dist/common/websockets/websocket-schema.js +0 -55
  269. package/dist/common/websockets/websocket-schema.js.map +0 -1
  270. package/dist/config.d.ts +0 -4
  271. package/dist/config.js +0 -12
  272. package/dist/config.js.map +0 -1
  273. package/dist/create-template-project.d.ts +0 -1
  274. package/dist/create-template-project.js +0 -131
  275. package/dist/create-template-project.js.map +0 -1
  276. package/dist/credentials.d.ts +0 -4
  277. package/dist/credentials.js +0 -44
  278. package/dist/credentials.js.map +0 -1
  279. package/dist/dev-process-manager.d.ts +0 -10
  280. package/dist/dev-process-manager.js +0 -56
  281. package/dist/dev-process-manager.js.map +0 -1
  282. package/dist/display.d.ts +0 -9
  283. package/dist/display.js +0 -137
  284. package/dist/display.js.map +0 -1
  285. package/dist/fingerprint.d.ts +0 -1
  286. package/dist/fingerprint.js +0 -48
  287. package/dist/fingerprint.js.map +0 -1
  288. package/dist/index.d.ts +0 -2
  289. package/dist/index.js +0 -125
  290. package/dist/index.js.map +0 -1
  291. package/dist/json-config/hooks.d.ts +0 -9
  292. package/dist/json-config/hooks.js +0 -60
  293. package/dist/json-config/hooks.js.map +0 -1
  294. package/dist/json-config/parser.d.ts +0 -7
  295. package/dist/json-config/parser.js +0 -54
  296. package/dist/json-config/parser.js.map +0 -1
  297. package/dist/menu.d.ts +0 -14
  298. package/dist/menu.js +0 -344
  299. package/dist/menu.js.map +0 -1
  300. package/dist/project-files.d.ts +0 -104
  301. package/dist/project-files.js +0 -621
  302. package/dist/project-files.js.map +0 -1
  303. package/dist/startup-process-handler.d.ts +0 -1
  304. package/dist/startup-process-handler.js +0 -25
  305. package/dist/startup-process-handler.js.map +0 -1
  306. package/dist/terminal/background.d.ts +0 -12
  307. package/dist/terminal/background.js +0 -148
  308. package/dist/terminal/background.js.map +0 -1
  309. package/dist/terminal/base.d.ts +0 -41
  310. package/dist/terminal/base.js +0 -553
  311. package/dist/terminal/base.js.map +0 -1
  312. package/dist/tool-handlers.d.ts +0 -31
  313. package/dist/tool-handlers.js +0 -275
  314. package/dist/tool-handlers.js.map +0 -1
  315. package/dist/types.d.ts +0 -15
  316. package/dist/types.js +0 -3
  317. package/dist/types.js.map +0 -1
  318. package/dist/update-codebuff.d.ts +0 -1
  319. package/dist/update-codebuff.js +0 -169
  320. package/dist/update-codebuff.js.map +0 -1
  321. package/dist/utils/__tests__/background-process-manager.test.d.ts +0 -1
  322. package/dist/utils/__tests__/background-process-manager.test.js +0 -327
  323. package/dist/utils/__tests__/background-process-manager.test.js.map +0 -1
  324. package/dist/utils/__tests__/response-example-4-files.txt +0 -621
  325. package/dist/utils/__tests__/tool-renderers.test.d.ts +0 -1
  326. package/dist/utils/__tests__/tool-renderers.test.js +0 -83
  327. package/dist/utils/__tests__/tool-renderers.test.js.map +0 -1
  328. package/dist/utils/__tests__/xml-stream-parser.test.d.ts +0 -1
  329. package/dist/utils/__tests__/xml-stream-parser.test.js +0 -255
  330. package/dist/utils/__tests__/xml-stream-parser.test.js.map +0 -1
  331. package/dist/utils/analytics.d.ts +0 -7
  332. package/dist/utils/analytics.js +0 -132
  333. package/dist/utils/analytics.js.map +0 -1
  334. package/dist/utils/detect-shell.d.ts +0 -1
  335. package/dist/utils/detect-shell.js +0 -65
  336. package/dist/utils/detect-shell.js.map +0 -1
  337. package/dist/utils/git.d.ts +0 -13
  338. package/dist/utils/git.js +0 -143
  339. package/dist/utils/git.js.map +0 -1
  340. package/dist/utils/logger.d.ts +0 -21
  341. package/dist/utils/logger.js +0 -109
  342. package/dist/utils/logger.js.map +0 -1
  343. package/dist/utils/spinner.d.ts +0 -12
  344. package/dist/utils/spinner.js +0 -85
  345. package/dist/utils/spinner.js.map +0 -1
  346. package/dist/utils/system-info.d.ts +0 -8
  347. package/dist/utils/system-info.js +0 -22
  348. package/dist/utils/system-info.js.map +0 -1
  349. package/dist/utils/tool-renderers.d.ts +0 -16
  350. package/dist/utils/tool-renderers.js +0 -216
  351. package/dist/utils/tool-renderers.js.map +0 -1
  352. package/dist/utils/xml-stream-parser.d.ts +0 -9
  353. package/dist/utils/xml-stream-parser.js +0 -143
  354. package/dist/utils/xml-stream-parser.js.map +0 -1
  355. package/dist/web-scraper.d.ts +0 -3
  356. package/dist/web-scraper.js +0 -59
  357. package/dist/web-scraper.js.map +0 -1
  358. package/dist/workers/checkpoint-worker.d.ts +0 -1
  359. package/dist/workers/checkpoint-worker.js +0 -51
  360. package/dist/workers/checkpoint-worker.js.map +0 -1
  361. package/dist/workers/project-context.d.ts +0 -1
  362. package/dist/workers/project-context.js +0 -27
  363. package/dist/workers/project-context.js.map +0 -1
@@ -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 { type CodebuffMessage } from './common/types/message';
2
- export declare function setMessages(messages: CodebuffMessage[]): void;
@@ -1,98 +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 string_1 = require("./common/util/string");
28
- const fs = __importStar(require("fs"));
29
- const path = __importStar(require("path"));
30
- const project_files_1 = require("./project-files");
31
- const logger_1 = require("./utils/logger");
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
- if (msg.role === 'tool' || msg.role === 'system') {
52
- return msg;
53
- }
54
- if (msg.role === 'user') {
55
- if (typeof msg.content === 'string') {
56
- return { ...msg, content: cleanContent(msg.content) };
57
- }
58
- return {
59
- ...msg,
60
- content: msg.content.map((part) => part.type === 'text'
61
- ? { ...part, text: cleanContent(part.text) }
62
- : part),
63
- };
64
- }
65
- if (typeof msg.content === 'string') {
66
- return { ...msg, content: cleanContent(msg.content) };
67
- }
68
- return {
69
- ...msg,
70
- content: msg.content.map((part) => part.type === 'text' ? { ...part, text: cleanContent(part.text) } : part),
71
- };
72
- });
73
- // Save messages to chat directory
74
- try {
75
- const chatDir = (0, project_files_1.getCurrentChatDir)();
76
- const messagesPath = path.join(chatDir, 'messages.json');
77
- const messagesData = {
78
- id: (0, project_files_1.getCurrentChatId)(),
79
- messages: cleanedMessages,
80
- updatedAt: new Date().toISOString(),
81
- };
82
- fs.writeFileSync(messagesPath, JSON.stringify(messagesData, null, 2));
83
- }
84
- catch (error) {
85
- console.error('Failed to save messages to file:', error);
86
- logger_1.logger.error({
87
- errorMessage: error instanceof Error ? error.message : String(error),
88
- errorStack: error instanceof Error ? error.stack : undefined,
89
- messagesCount: messages.length,
90
- }, 'Failed to save messages to file');
91
- logger_1.logger.error({
92
- errorMessage: error instanceof Error ? error.message : String(error),
93
- errorStack: error instanceof Error ? error.stack : undefined,
94
- messagesCount: messages.length,
95
- }, 'Failed to save messages to file');
96
- }
97
- }
98
- //# sourceMappingURL=chat-storage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat-storage.js","sourceRoot":"","sources":["../src/chat-storage.ts"],"names":[],"mappings":"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"}
@@ -1,94 +0,0 @@
1
- import { AgentState, ToolResult } from '../common/types/agent-state';
2
- export declare class CheckpointsDisabledError extends Error {
3
- constructor(message?: string, options?: ErrorOptions);
4
- }
5
- /**
6
- * Interface representing a checkpoint of agent state
7
- */
8
- export interface Checkpoint {
9
- agentStateString: string;
10
- lastToolResultsString: string;
11
- /** Promise resolving to the git commit hash for this checkpoint */
12
- fileStateIdPromise: Promise<string>;
13
- /** Number of messages in the agent's history at checkpoint time */
14
- historyLength: number;
15
- id: number;
16
- parentId: number;
17
- timestamp: number;
18
- /** User input that triggered this checkpoint */
19
- userInput: string;
20
- }
21
- /**
22
- * Manages checkpoints of agent state and file state using git operations in a worker thread.
23
- * Each checkpoint contains both the agent's conversation state and a git commit
24
- * representing the state of all tracked files at that point.
25
- */
26
- export declare class CheckpointManager {
27
- checkpoints: Array<Checkpoint>;
28
- currentCheckpointId: number;
29
- disabledReason: string | null;
30
- private bareRepoPath;
31
- /** Stores the undo chain (leaf node first, current node last) */
32
- private undoIds;
33
- /** Worker thread for git operations */
34
- private worker;
35
- /**
36
- * Initialize or return the existing worker thread
37
- * @returns The worker thread instance
38
- */
39
- private initWorker;
40
- /**
41
- * Execute an operation in the worker thread with timeout handling
42
- * @param message - The message describing the operation to perform
43
- * @returns A promise that resolves with the operation result
44
- * @throws {Error} if the operation fails or times out
45
- */
46
- private runWorkerOperation;
47
- /**
48
- * Get the path to the bare git repository used for storing file states
49
- * @returns The bare repo path
50
- */
51
- private getBareRepoPath;
52
- /**
53
- * Add a new checkpoint of the current agent and file state
54
- * @param agentState - The current agent state to checkpoint
55
- * @param lastToolResults - The tool results from the last assistant turn
56
- * @param userInput - The user input that triggered this checkpoint
57
- * @returns The latest checkpoint and whether that checkpoint was created (or already existed)
58
- * @throws {Error} If the checkpoint cannot be added
59
- */
60
- addCheckpoint(agentState: AgentState, lastToolResults: ToolResult[], userInput: string, saveWithNoChanges?: boolean): Promise<{
61
- checkpoint: Checkpoint;
62
- created: boolean;
63
- }>;
64
- /**
65
- * Get the most recent checkpoint
66
- * @returns The most recent checkpoint or null if none exist
67
- * @throws {CheckpointsDisabledError} If checkpoints are disabled
68
- * @throws {ReferenceError} If no checkpoints exist
69
- */
70
- getLatestCheckpoint(): Checkpoint;
71
- /**
72
- * Restore the file state from a specific checkpoint
73
- * @param id - The ID of the checkpoint to restore
74
- * @param resetUndoIds - Whether to reset the chain of undo/redo ids
75
- * @throws {Error} If the file state cannot be restored
76
- */
77
- restoreCheckointFileState({ id, resetUndoIds, }: {
78
- id: number;
79
- resetUndoIds?: boolean;
80
- }): Promise<void>;
81
- restoreUndoCheckpoint(): Promise<void>;
82
- restoreRedoCheckpoint(): Promise<void>;
83
- /**
84
- * Clear all checkpoints
85
- */
86
- clearCheckpoints(resetBareRepoPath?: boolean): void;
87
- /**
88
- * Get a formatted string representation of all checkpoints
89
- * @param detailed Whether to include detailed information about each checkpoint
90
- * @returns A formatted string representation of all checkpoints
91
- */
92
- getCheckpointsAsString(detailed?: boolean): string;
93
- }
94
- export declare const checkpointManager: CheckpointManager;
@@ -1,291 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.checkpointManager = exports.CheckpointManager = exports.CheckpointsDisabledError = void 0;
7
- const assert_1 = __importDefault(require("assert"));
8
- const os_1 = __importDefault(require("os"));
9
- const path_1 = require("path");
10
- const worker_threads_1 = require("worker_threads");
11
- const project_file_tree_1 = require("../common/project-file-tree");
12
- const picocolors_1 = require("picocolors");
13
- const project_files_1 = require("../project-files");
14
- const git_1 = require("../utils/git");
15
- const logger_1 = require("../utils/logger");
16
- const file_manager_1 = require("./file-manager");
17
- class CheckpointsDisabledError extends Error {
18
- constructor(message, options) {
19
- super(message, options);
20
- this.name = 'CheckpointsDisabledError';
21
- }
22
- }
23
- exports.CheckpointsDisabledError = CheckpointsDisabledError;
24
- /**
25
- * Manages checkpoints of agent state and file state using git operations in a worker thread.
26
- * Each checkpoint contains both the agent's conversation state and a git commit
27
- * representing the state of all tracked files at that point.
28
- */
29
- class CheckpointManager {
30
- checkpoints = [];
31
- currentCheckpointId = 0;
32
- disabledReason = null;
33
- bareRepoPath = null;
34
- /** Stores the undo chain (leaf node first, current node last) */
35
- undoIds = [];
36
- /** Worker thread for git operations */
37
- worker = null;
38
- /**
39
- * Initialize or return the existing worker thread
40
- * @returns The worker thread instance
41
- */
42
- initWorker() {
43
- if (!this.worker) {
44
- // NOTE: Uses the built workers/checkpoint-worker.js within dist.
45
- // So you need to run `bun run build` before running locally.
46
- const workerPath = __filename.endsWith('.ts')
47
- ? (0, path_1.join)(__dirname, '../../dist', 'workers/checkpoint-worker.js')
48
- : (0, path_1.join)(__dirname, '../workers/checkpoint-worker.js');
49
- this.worker = new worker_threads_1.Worker(workerPath);
50
- }
51
- return this.worker;
52
- }
53
- /**
54
- * Execute an operation in the worker thread with timeout handling
55
- * @param message - The message describing the operation to perform
56
- * @returns A promise that resolves with the operation result
57
- * @throws {Error} if the operation fails or times out
58
- */
59
- async runWorkerOperation(message) {
60
- const worker = this.initWorker();
61
- return new Promise((resolve, reject) => {
62
- const timeoutMs = 30000; // 30 seconds timeout
63
- const handler = (response) => {
64
- if (response.id !== message.id) {
65
- return;
66
- }
67
- if (response.success) {
68
- resolve(response.result);
69
- }
70
- else {
71
- reject(new Error(response.error));
72
- }
73
- worker.off('message', handler);
74
- };
75
- worker.on('message', handler);
76
- worker.postMessage(message);
77
- // Add timeout
78
- setTimeout(() => {
79
- worker.off('message', handler);
80
- reject(new Error('Worker operation timed out'));
81
- }, timeoutMs);
82
- });
83
- }
84
- /**
85
- * Get the path to the bare git repository used for storing file states
86
- * @returns The bare repo path
87
- */
88
- getBareRepoPath() {
89
- if (!this.bareRepoPath) {
90
- this.bareRepoPath = (0, file_manager_1.getBareRepoPath)((0, project_files_1.getProjectRoot)());
91
- }
92
- return this.bareRepoPath;
93
- }
94
- /**
95
- * Add a new checkpoint of the current agent and file state
96
- * @param agentState - The current agent state to checkpoint
97
- * @param lastToolResults - The tool results from the last assistant turn
98
- * @param userInput - The user input that triggered this checkpoint
99
- * @returns The latest checkpoint and whether that checkpoint was created (or already existed)
100
- * @throws {Error} If the checkpoint cannot be added
101
- */
102
- async addCheckpoint(agentState, lastToolResults, userInput, saveWithNoChanges = false) {
103
- if (this.disabledReason !== null) {
104
- throw new CheckpointsDisabledError(this.disabledReason);
105
- }
106
- if (!(0, git_1.gitCommandIsAvailable)()) {
107
- this.disabledReason = 'Git required for checkpoints';
108
- throw new CheckpointsDisabledError(this.disabledReason);
109
- }
110
- const id = this.checkpoints.length + 1;
111
- const projectDir = (0, project_files_1.getProjectRoot)();
112
- if (projectDir === os_1.default.homedir()) {
113
- this.disabledReason = 'In home directory';
114
- throw new CheckpointsDisabledError(this.disabledReason);
115
- }
116
- const bareRepoPath = this.getBareRepoPath();
117
- const relativeFilepaths = (0, project_file_tree_1.getAllFilePaths)(agentState.fileContext.fileTree);
118
- if (relativeFilepaths.length >= project_file_tree_1.DEFAULT_MAX_FILES) {
119
- this.disabledReason = 'Project too large';
120
- throw new CheckpointsDisabledError(this.disabledReason);
121
- }
122
- const needToStage = saveWithNoChanges ||
123
- (await (0, file_manager_1.hasUnsavedChanges)({
124
- projectDir,
125
- bareRepoPath,
126
- relativeFilepaths,
127
- })) ||
128
- saveWithNoChanges;
129
- if (!needToStage && this.checkpoints.length > 0) {
130
- return {
131
- checkpoint: this.checkpoints[this.checkpoints.length - 1],
132
- created: false,
133
- };
134
- }
135
- let fileStateIdPromise;
136
- if (needToStage) {
137
- const params = {
138
- type: 'store',
139
- projectDir,
140
- bareRepoPath,
141
- message: `Checkpoint ${id}`,
142
- relativeFilepaths,
143
- };
144
- fileStateIdPromise = this.runWorkerOperation({
145
- ...params,
146
- id: JSON.stringify(params),
147
- });
148
- }
149
- else {
150
- fileStateIdPromise = (0, file_manager_1.getLatestCommit)({ bareRepoPath });
151
- }
152
- const checkpoint = {
153
- agentStateString: JSON.stringify(agentState),
154
- lastToolResultsString: JSON.stringify(lastToolResults),
155
- fileStateIdPromise,
156
- historyLength: agentState.messageHistory.length,
157
- id,
158
- parentId: this.currentCheckpointId,
159
- timestamp: Date.now(),
160
- userInput,
161
- };
162
- this.checkpoints.push(checkpoint);
163
- this.currentCheckpointId = id;
164
- this.undoIds = [];
165
- return { checkpoint, created: true };
166
- }
167
- /**
168
- * Get the most recent checkpoint
169
- * @returns The most recent checkpoint or null if none exist
170
- * @throws {CheckpointsDisabledError} If checkpoints are disabled
171
- * @throws {ReferenceError} If no checkpoints exist
172
- */
173
- getLatestCheckpoint() {
174
- if (this.disabledReason !== null) {
175
- throw new CheckpointsDisabledError(this.disabledReason);
176
- }
177
- if (this.checkpoints.length === 0) {
178
- throw new ReferenceError('No checkpoints available');
179
- }
180
- return this.checkpoints[this.checkpoints.length - 1];
181
- }
182
- /**
183
- * Restore the file state from a specific checkpoint
184
- * @param id - The ID of the checkpoint to restore
185
- * @param resetUndoIds - Whether to reset the chain of undo/redo ids
186
- * @throws {Error} If the file state cannot be restored
187
- */
188
- async restoreCheckointFileState({ id, resetUndoIds = false, }) {
189
- if (this.disabledReason !== null) {
190
- throw new CheckpointsDisabledError(this.disabledReason);
191
- }
192
- const checkpoint = this.checkpoints[id - 1];
193
- if (!checkpoint) {
194
- throw new ReferenceError('No checkpoints available');
195
- }
196
- const relativeFilepaths = (0, project_file_tree_1.getAllFilePaths)(JSON.parse(checkpoint.agentStateString).fileContext
197
- .fileTree);
198
- const params = {
199
- type: 'restore',
200
- projectDir: (0, project_files_1.getProjectRoot)(),
201
- bareRepoPath: this.getBareRepoPath(),
202
- commit: await checkpoint.fileStateIdPromise,
203
- relativeFilepaths,
204
- };
205
- await this.runWorkerOperation({ ...params, id: JSON.stringify(params) });
206
- this.currentCheckpointId = id;
207
- if (resetUndoIds) {
208
- this.undoIds = [];
209
- }
210
- }
211
- async restoreUndoCheckpoint() {
212
- if (this.disabledReason !== null) {
213
- throw new CheckpointsDisabledError(this.disabledReason);
214
- }
215
- const currentCheckpoint = this.checkpoints[this.currentCheckpointId - 1];
216
- (0, assert_1.default)(currentCheckpoint, `Internal error: checkpoint #${this.currentCheckpointId} not found`);
217
- if (currentCheckpoint.parentId === 0) {
218
- throw new ReferenceError('Already at earliest change');
219
- }
220
- await this.restoreCheckointFileState({ id: currentCheckpoint.parentId });
221
- this.undoIds.push(currentCheckpoint.id);
222
- }
223
- async restoreRedoCheckpoint() {
224
- if (this.disabledReason !== null) {
225
- throw new CheckpointsDisabledError(this.disabledReason);
226
- }
227
- const targetId = this.undoIds.pop();
228
- if (targetId === undefined) {
229
- throw new ReferenceError('Nothing to redo');
230
- }
231
- // Check if targetId is either 0 or undefined
232
- (0, assert_1.default)(targetId, `Internal error: Checkpoint ID ${targetId} found in undo list`);
233
- try {
234
- await this.restoreCheckointFileState({ id: targetId });
235
- }
236
- catch (error) {
237
- this.undoIds.push(targetId);
238
- logger_1.logger.error({
239
- errorMessage: error instanceof Error ? error.message : String(error),
240
- errorStack: error instanceof Error ? error.stack : undefined,
241
- targetId,
242
- }, 'Unable to restore checkpoint during redo');
243
- throw new Error('Unable to restore checkpoint', { cause: error });
244
- }
245
- }
246
- /**
247
- * Clear all checkpoints
248
- */
249
- clearCheckpoints(resetBareRepoPath = false) {
250
- this.checkpoints = [];
251
- this.currentCheckpointId = 0;
252
- this.undoIds = [];
253
- if (resetBareRepoPath) {
254
- this.bareRepoPath = null;
255
- }
256
- }
257
- /**
258
- * Get a formatted string representation of all checkpoints
259
- * @param detailed Whether to include detailed information about each checkpoint
260
- * @returns A formatted string representation of all checkpoints
261
- */
262
- getCheckpointsAsString(detailed = false) {
263
- if (this.disabledReason !== null) {
264
- return (0, picocolors_1.red)(`Checkpoints not enabled: ${this.disabledReason}`);
265
- }
266
- if (this.checkpoints.length === 0) {
267
- return (0, picocolors_1.yellow)('No checkpoints available.');
268
- }
269
- const lines = [(0, picocolors_1.bold)((0, picocolors_1.underline)('Agent State Checkpoints:')), ''];
270
- this.checkpoints.forEach((checkpoint) => {
271
- const date = new Date(checkpoint.timestamp);
272
- const formattedDate = date.toLocaleString();
273
- const userInputOneLine = checkpoint.userInput.replaceAll('\n', ' ');
274
- const userInput = userInputOneLine.length > 50
275
- ? userInputOneLine.substring(0, 47) + '...'
276
- : userInputOneLine;
277
- lines.push(`${(0, picocolors_1.cyan)((0, picocolors_1.bold)(`#${checkpoint.id}`))} ${(0, picocolors_1.gray)(`[${formattedDate}]`)}:`);
278
- lines.push(` ${(0, picocolors_1.blue)('Input')}: ${userInput}`);
279
- if (detailed) {
280
- const messageCount = checkpoint.historyLength;
281
- lines.push(` ${(0, picocolors_1.blue)('Messages')}: ${messageCount}`);
282
- }
283
- lines.push(''); // Empty line between checkpoints
284
- });
285
- return lines.join('\n');
286
- }
287
- }
288
- exports.CheckpointManager = CheckpointManager;
289
- // Export a singleton instance for use throughout the application
290
- exports.checkpointManager = new CheckpointManager();
291
- //# 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 };