codecane 1.0.394 → 1.0.396

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 (571) hide show
  1. package/package.json +21 -70
  2. package/scripts/codebuff-wrapper.js +39 -0
  3. package/scripts/install.js +104 -0
  4. package/dist/__tests__/display.test.d.ts +0 -1
  5. package/dist/__tests__/display.test.js +0 -174
  6. package/dist/__tests__/display.test.js.map +0 -1
  7. package/dist/background-process-manager.d.ts +0 -50
  8. package/dist/background-process-manager.js +0 -364
  9. package/dist/background-process-manager.js.map +0 -1
  10. package/dist/browser-runner.d.ts +0 -35
  11. package/dist/browser-runner.js +0 -689
  12. package/dist/browser-runner.js.map +0 -1
  13. package/dist/chat-storage.d.ts +0 -2
  14. package/dist/chat-storage.js +0 -98
  15. package/dist/chat-storage.js.map +0 -1
  16. package/dist/checkpoints/checkpoint-manager.d.ts +0 -94
  17. package/dist/checkpoints/checkpoint-manager.js +0 -291
  18. package/dist/checkpoints/checkpoint-manager.js.map +0 -1
  19. package/dist/checkpoints/file-manager.d.ts +0 -72
  20. package/dist/checkpoints/file-manager.js +0 -443
  21. package/dist/checkpoints/file-manager.js.map +0 -1
  22. package/dist/cli-definitions.d.ts +0 -9
  23. package/dist/cli-definitions.js +0 -66
  24. package/dist/cli-definitions.js.map +0 -1
  25. package/dist/cli-handlers/api-key.d.ts +0 -25
  26. package/dist/cli-handlers/api-key.js +0 -66
  27. package/dist/cli-handlers/api-key.js.map +0 -1
  28. package/dist/cli-handlers/checkpoint.d.ts +0 -19
  29. package/dist/cli-handlers/checkpoint.js +0 -221
  30. package/dist/cli-handlers/checkpoint.js.map +0 -1
  31. package/dist/cli-handlers/diff.d.ts +0 -2
  32. package/dist/cli-handlers/diff.js +0 -31
  33. package/dist/cli-handlers/diff.js.map +0 -1
  34. package/dist/cli-handlers/easter-egg.d.ts +0 -1
  35. package/dist/cli-handlers/easter-egg.js +0 -126
  36. package/dist/cli-handlers/easter-egg.js.map +0 -1
  37. package/dist/cli-handlers/inititalization-flow.d.ts +0 -1
  38. package/dist/cli-handlers/inititalization-flow.js +0 -25
  39. package/dist/cli-handlers/inititalization-flow.js.map +0 -1
  40. package/dist/cli.d.ts +0 -68
  41. package/dist/cli.js +0 -777
  42. package/dist/cli.js.map +0 -1
  43. package/dist/client.d.ts +0 -91
  44. package/dist/client.js +0 -1325
  45. package/dist/client.js.map +0 -1
  46. package/dist/code-map/languages.d.ts +0 -12
  47. package/dist/code-map/languages.d.ts.map +0 -1
  48. package/dist/code-map/languages.js +0 -130
  49. package/dist/code-map/languages.js.map +0 -1
  50. package/dist/code-map/parse.d.ts +0 -22
  51. package/dist/code-map/parse.d.ts.map +0 -1
  52. package/dist/code-map/parse.js +0 -180
  53. package/dist/code-map/parse.js.map +0 -1
  54. package/dist/code-map/test-langs/test.d.ts +0 -12
  55. package/dist/code-map/test-langs/test.d.ts.map +0 -1
  56. package/dist/code-map/test-langs/test.js +0 -23
  57. package/dist/code-map/test-langs/test.js.map +0 -1
  58. package/dist/code-map/tree-sitter-queries/readme.md +0 -23
  59. package/dist/code-map/tree-sitter-queries/tree-sitter-c-tags.scm +0 -16
  60. package/dist/code-map/tree-sitter-queries/tree-sitter-c_sharp-tags.scm +0 -23
  61. package/dist/code-map/tree-sitter-queries/tree-sitter-cpp-tags.scm +0 -29
  62. package/dist/code-map/tree-sitter-queries/tree-sitter-go-tags.scm +0 -26
  63. package/dist/code-map/tree-sitter-queries/tree-sitter-java-tags.scm +0 -19
  64. package/dist/code-map/tree-sitter-queries/tree-sitter-javascript-tags.scm +0 -16
  65. package/dist/code-map/tree-sitter-queries/tree-sitter-php-tags.scm +0 -23
  66. package/dist/code-map/tree-sitter-queries/tree-sitter-python-tags.scm +0 -12
  67. package/dist/code-map/tree-sitter-queries/tree-sitter-ruby-tags.scm +0 -58
  68. package/dist/code-map/tree-sitter-queries/tree-sitter-rust-tags.scm +0 -26
  69. package/dist/code-map/tree-sitter-queries/tree-sitter-typescript-tags.scm +0 -22
  70. package/dist/code-map/tsconfig.tsbuildinfo +0 -1
  71. package/dist/common/actions.d.ts +0 -2673
  72. package/dist/common/actions.d.ts.map +0 -1
  73. package/dist/common/actions.js +0 -167
  74. package/dist/common/actions.js.map +0 -1
  75. package/dist/common/analytics.d.ts +0 -6
  76. package/dist/common/analytics.d.ts.map +0 -1
  77. package/dist/common/analytics.js +0 -60
  78. package/dist/common/analytics.js.map +0 -1
  79. package/dist/common/api-keys/constants.d.ts +0 -9
  80. package/dist/common/api-keys/constants.d.ts.map +0 -1
  81. package/dist/common/api-keys/constants.js +0 -26
  82. package/dist/common/api-keys/constants.js.map +0 -1
  83. package/dist/common/api-keys/crypto.d.ts +0 -25
  84. package/dist/common/api-keys/crypto.d.ts.map +0 -1
  85. package/dist/common/api-keys/crypto.js +0 -186
  86. package/dist/common/api-keys/crypto.js.map +0 -1
  87. package/dist/common/browser-actions.d.ts +0 -4416
  88. package/dist/common/browser-actions.d.ts.map +0 -1
  89. package/dist/common/browser-actions.js +0 -343
  90. package/dist/common/browser-actions.js.map +0 -1
  91. package/dist/common/constants/analytics-events.d.ts +0 -29
  92. package/dist/common/constants/analytics-events.d.ts.map +0 -1
  93. package/dist/common/constants/analytics-events.js +0 -37
  94. package/dist/common/constants/analytics-events.js.map +0 -1
  95. package/dist/common/constants/grant-priorities.d.ts +0 -3
  96. package/dist/common/constants/grant-priorities.d.ts.map +0 -1
  97. package/dist/common/constants/grant-priorities.js +0 -11
  98. package/dist/common/constants/grant-priorities.js.map +0 -1
  99. package/dist/common/constants/tools.d.ts +0 -21
  100. package/dist/common/constants/tools.d.ts.map +0 -1
  101. package/dist/common/constants/tools.js +0 -48
  102. package/dist/common/constants/tools.js.map +0 -1
  103. package/dist/common/constants.d.ts +0 -149
  104. package/dist/common/constants.d.ts.map +0 -1
  105. package/dist/common/constants.js +0 -234
  106. package/dist/common/constants.js.map +0 -1
  107. package/dist/common/db/drizzle.config.d.ts +0 -3
  108. package/dist/common/db/drizzle.config.d.ts.map +0 -1
  109. package/dist/common/db/drizzle.config.js +0 -17
  110. package/dist/common/db/drizzle.config.js.map +0 -1
  111. package/dist/common/db/env.d.mts +0 -4
  112. package/dist/common/db/env.mjs +0 -26
  113. package/dist/common/db/env.mjs.map +0 -1
  114. package/dist/common/db/index.d.ts +0 -7
  115. package/dist/common/db/index.d.ts.map +0 -1
  116. package/dist/common/db/index.js +0 -35
  117. package/dist/common/db/index.js.map +0 -1
  118. package/dist/common/db/schema.d.ts +0 -2449
  119. package/dist/common/db/schema.d.ts.map +0 -1
  120. package/dist/common/db/schema.js +0 -310
  121. package/dist/common/db/schema.js.map +0 -1
  122. package/dist/common/db/transaction.d.ts +0 -13
  123. package/dist/common/db/transaction.d.ts.map +0 -1
  124. package/dist/common/db/transaction.js +0 -36
  125. package/dist/common/db/transaction.js.map +0 -1
  126. package/dist/common/env.d.mts +0 -13
  127. package/dist/common/env.mjs +0 -43
  128. package/dist/common/env.mjs.map +0 -1
  129. package/dist/common/json-config/__tests__/constants.test.d.ts +0 -2
  130. package/dist/common/json-config/__tests__/constants.test.d.ts.map +0 -1
  131. package/dist/common/json-config/__tests__/constants.test.js +0 -273
  132. package/dist/common/json-config/__tests__/constants.test.js.map +0 -1
  133. package/dist/common/json-config/__tests__/stringify-schema.test.d.ts +0 -2
  134. package/dist/common/json-config/__tests__/stringify-schema.test.d.ts.map +0 -1
  135. package/dist/common/json-config/__tests__/stringify-schema.test.js +0 -66
  136. package/dist/common/json-config/__tests__/stringify-schema.test.js.map +0 -1
  137. package/dist/common/json-config/constants.d.ts +0 -138
  138. package/dist/common/json-config/constants.d.ts.map +0 -1
  139. package/dist/common/json-config/constants.js +0 -78
  140. package/dist/common/json-config/constants.js.map +0 -1
  141. package/dist/common/json-config/stringify-schema.d.ts +0 -10
  142. package/dist/common/json-config/stringify-schema.d.ts.map +0 -1
  143. package/dist/common/json-config/stringify-schema.js +0 -131
  144. package/dist/common/json-config/stringify-schema.js.map +0 -1
  145. package/dist/common/project-file-tree.d.ts +0 -12
  146. package/dist/common/project-file-tree.d.ts.map +0 -1
  147. package/dist/common/project-file-tree.js +0 -212
  148. package/dist/common/project-file-tree.js.map +0 -1
  149. package/dist/common/src/actions.d.ts +0 -2673
  150. package/dist/common/src/actions.d.ts.map +0 -1
  151. package/dist/common/src/actions.js +0 -167
  152. package/dist/common/src/actions.js.map +0 -1
  153. package/dist/common/src/analytics.d.ts +0 -6
  154. package/dist/common/src/analytics.d.ts.map +0 -1
  155. package/dist/common/src/analytics.js +0 -60
  156. package/dist/common/src/analytics.js.map +0 -1
  157. package/dist/common/src/api-keys/constants.d.ts +0 -9
  158. package/dist/common/src/api-keys/constants.d.ts.map +0 -1
  159. package/dist/common/src/api-keys/constants.js +0 -26
  160. package/dist/common/src/api-keys/constants.js.map +0 -1
  161. package/dist/common/src/api-keys/crypto.d.ts +0 -25
  162. package/dist/common/src/api-keys/crypto.d.ts.map +0 -1
  163. package/dist/common/src/api-keys/crypto.js +0 -186
  164. package/dist/common/src/api-keys/crypto.js.map +0 -1
  165. package/dist/common/src/browser-actions.d.ts +0 -4416
  166. package/dist/common/src/browser-actions.d.ts.map +0 -1
  167. package/dist/common/src/browser-actions.js +0 -343
  168. package/dist/common/src/browser-actions.js.map +0 -1
  169. package/dist/common/src/constants/analytics-events.d.ts +0 -28
  170. package/dist/common/src/constants/analytics-events.d.ts.map +0 -1
  171. package/dist/common/src/constants/analytics-events.js +0 -36
  172. package/dist/common/src/constants/analytics-events.js.map +0 -1
  173. package/dist/common/src/constants/grant-priorities.d.ts +0 -3
  174. package/dist/common/src/constants/grant-priorities.d.ts.map +0 -1
  175. package/dist/common/src/constants/grant-priorities.js +0 -11
  176. package/dist/common/src/constants/grant-priorities.js.map +0 -1
  177. package/dist/common/src/constants/tools.d.ts +0 -20
  178. package/dist/common/src/constants/tools.d.ts.map +0 -1
  179. package/dist/common/src/constants/tools.js +0 -47
  180. package/dist/common/src/constants/tools.js.map +0 -1
  181. package/dist/common/src/constants.d.ts +0 -152
  182. package/dist/common/src/constants.d.ts.map +0 -1
  183. package/dist/common/src/constants.js +0 -222
  184. package/dist/common/src/constants.js.map +0 -1
  185. package/dist/common/src/db/drizzle.config.d.ts +0 -3
  186. package/dist/common/src/db/drizzle.config.d.ts.map +0 -1
  187. package/dist/common/src/db/drizzle.config.js +0 -17
  188. package/dist/common/src/db/drizzle.config.js.map +0 -1
  189. package/dist/common/src/db/index.d.ts +0 -7
  190. package/dist/common/src/db/index.d.ts.map +0 -1
  191. package/dist/common/src/db/index.js +0 -35
  192. package/dist/common/src/db/index.js.map +0 -1
  193. package/dist/common/src/db/schema.d.ts +0 -2289
  194. package/dist/common/src/db/schema.d.ts.map +0 -1
  195. package/dist/common/src/db/schema.js +0 -296
  196. package/dist/common/src/db/schema.js.map +0 -1
  197. package/dist/common/src/db/transaction.d.ts +0 -13
  198. package/dist/common/src/db/transaction.d.ts.map +0 -1
  199. package/dist/common/src/db/transaction.js +0 -36
  200. package/dist/common/src/db/transaction.js.map +0 -1
  201. package/dist/common/src/json-config/__tests__/constants.test.d.ts +0 -2
  202. package/dist/common/src/json-config/__tests__/constants.test.d.ts.map +0 -1
  203. package/dist/common/src/json-config/__tests__/constants.test.js +0 -273
  204. package/dist/common/src/json-config/__tests__/constants.test.js.map +0 -1
  205. package/dist/common/src/json-config/__tests__/stringify-schema.test.d.ts +0 -2
  206. package/dist/common/src/json-config/__tests__/stringify-schema.test.d.ts.map +0 -1
  207. package/dist/common/src/json-config/__tests__/stringify-schema.test.js +0 -66
  208. package/dist/common/src/json-config/__tests__/stringify-schema.test.js.map +0 -1
  209. package/dist/common/src/json-config/constants.d.ts +0 -138
  210. package/dist/common/src/json-config/constants.d.ts.map +0 -1
  211. package/dist/common/src/json-config/constants.js +0 -78
  212. package/dist/common/src/json-config/constants.js.map +0 -1
  213. package/dist/common/src/json-config/stringify-schema.d.ts +0 -10
  214. package/dist/common/src/json-config/stringify-schema.d.ts.map +0 -1
  215. package/dist/common/src/json-config/stringify-schema.js +0 -131
  216. package/dist/common/src/json-config/stringify-schema.js.map +0 -1
  217. package/dist/common/src/project-file-tree.d.ts +0 -12
  218. package/dist/common/src/project-file-tree.d.ts.map +0 -1
  219. package/dist/common/src/project-file-tree.js +0 -212
  220. package/dist/common/src/project-file-tree.js.map +0 -1
  221. package/dist/common/src/types/agent-state.d.ts +0 -227
  222. package/dist/common/src/types/agent-state.d.ts.map +0 -1
  223. package/dist/common/src/types/agent-state.js +0 -34
  224. package/dist/common/src/types/agent-state.js.map +0 -1
  225. package/dist/common/src/types/grant.d.ts +0 -3
  226. package/dist/common/src/types/grant.d.ts.map +0 -1
  227. package/dist/common/src/types/grant.js +0 -11
  228. package/dist/common/src/types/grant.js.map +0 -1
  229. package/dist/common/src/types/message.d.ts +0 -320
  230. package/dist/common/src/types/message.d.ts.map +0 -1
  231. package/dist/common/src/types/message.js +0 -60
  232. package/dist/common/src/types/message.js.map +0 -1
  233. package/dist/common/src/types/organization.d.ts +0 -106
  234. package/dist/common/src/types/organization.d.ts.map +0 -1
  235. package/dist/common/src/types/organization.js +0 -3
  236. package/dist/common/src/types/organization.js.map +0 -1
  237. package/dist/common/src/types/referral.d.ts +0 -3
  238. package/dist/common/src/types/referral.d.ts.map +0 -1
  239. package/dist/common/src/types/referral.js +0 -5
  240. package/dist/common/src/types/referral.js.map +0 -1
  241. package/dist/common/src/types/tools.d.ts +0 -6
  242. package/dist/common/src/types/tools.d.ts.map +0 -1
  243. package/dist/common/src/types/tools.js +0 -3
  244. package/dist/common/src/types/tools.js.map +0 -1
  245. package/dist/common/src/types/usage.d.ts +0 -41
  246. package/dist/common/src/types/usage.d.ts.map +0 -1
  247. package/dist/common/src/types/usage.js +0 -16
  248. package/dist/common/src/types/usage.js.map +0 -1
  249. package/dist/common/src/util/__tests__/messages.test.d.ts +0 -2
  250. package/dist/common/src/util/__tests__/messages.test.d.ts.map +0 -1
  251. package/dist/common/src/util/__tests__/messages.test.js +0 -70
  252. package/dist/common/src/util/__tests__/messages.test.js.map +0 -1
  253. package/dist/common/src/util/__tests__/saxy.test.d.ts +0 -2
  254. package/dist/common/src/util/__tests__/saxy.test.d.ts.map +0 -1
  255. package/dist/common/src/util/__tests__/saxy.test.js +0 -906
  256. package/dist/common/src/util/__tests__/saxy.test.js.map +0 -1
  257. package/dist/common/src/util/__tests__/string.test.d.ts +0 -2
  258. package/dist/common/src/util/__tests__/string.test.d.ts.map +0 -1
  259. package/dist/common/src/util/__tests__/string.test.js +0 -82
  260. package/dist/common/src/util/__tests__/string.test.js.map +0 -1
  261. package/dist/common/src/util/array.d.ts +0 -7
  262. package/dist/common/src/util/array.d.ts.map +0 -1
  263. package/dist/common/src/util/array.js +0 -32
  264. package/dist/common/src/util/array.js.map +0 -1
  265. package/dist/common/src/util/changes.d.ts +0 -9
  266. package/dist/common/src/util/changes.d.ts.map +0 -1
  267. package/dist/common/src/util/changes.js +0 -87
  268. package/dist/common/src/util/changes.js.map +0 -1
  269. package/dist/common/src/util/credentials.d.ts +0 -26
  270. package/dist/common/src/util/credentials.d.ts.map +0 -1
  271. package/dist/common/src/util/credentials.js +0 -24
  272. package/dist/common/src/util/credentials.js.map +0 -1
  273. package/dist/common/src/util/currency.d.ts +0 -15
  274. package/dist/common/src/util/currency.d.ts.map +0 -1
  275. package/dist/common/src/util/currency.js +0 -23
  276. package/dist/common/src/util/currency.js.map +0 -1
  277. package/dist/common/src/util/dates.d.ts +0 -11
  278. package/dist/common/src/util/dates.d.ts.map +0 -1
  279. package/dist/common/src/util/dates.js +0 -22
  280. package/dist/common/src/util/dates.js.map +0 -1
  281. package/dist/common/src/util/file.d.ts +0 -163
  282. package/dist/common/src/util/file.d.ts.map +0 -1
  283. package/dist/common/src/util/file.js +0 -192
  284. package/dist/common/src/util/file.js.map +0 -1
  285. package/dist/common/src/util/git.d.ts +0 -7
  286. package/dist/common/src/util/git.d.ts.map +0 -1
  287. package/dist/common/src/util/git.js +0 -81
  288. package/dist/common/src/util/git.js.map +0 -1
  289. package/dist/common/src/util/logger.d.ts +0 -9
  290. package/dist/common/src/util/logger.d.ts.map +0 -1
  291. package/dist/common/src/util/logger.js +0 -52
  292. package/dist/common/src/util/logger.js.map +0 -1
  293. package/dist/common/src/util/lru-cache.d.ts +0 -31
  294. package/dist/common/src/util/lru-cache.d.ts.map +0 -1
  295. package/dist/common/src/util/lru-cache.js +0 -68
  296. package/dist/common/src/util/lru-cache.js.map +0 -1
  297. package/dist/common/src/util/messages.d.ts +0 -12
  298. package/dist/common/src/util/messages.d.ts.map +0 -1
  299. package/dist/common/src/util/messages.js +0 -81
  300. package/dist/common/src/util/messages.js.map +0 -1
  301. package/dist/common/src/util/min-heap.d.ts +0 -16
  302. package/dist/common/src/util/min-heap.d.ts.map +0 -1
  303. package/dist/common/src/util/min-heap.js +0 -73
  304. package/dist/common/src/util/min-heap.js.map +0 -1
  305. package/dist/common/src/util/object.d.ts +0 -19
  306. package/dist/common/src/util/object.d.ts.map +0 -1
  307. package/dist/common/src/util/object.js +0 -91
  308. package/dist/common/src/util/object.js.map +0 -1
  309. package/dist/common/src/util/patch.d.ts +0 -2
  310. package/dist/common/src/util/patch.d.ts.map +0 -1
  311. package/dist/common/src/util/patch.js +0 -215
  312. package/dist/common/src/util/patch.js.map +0 -1
  313. package/dist/common/src/util/promise.d.ts +0 -17
  314. package/dist/common/src/util/promise.d.ts.map +0 -1
  315. package/dist/common/src/util/promise.js +0 -51
  316. package/dist/common/src/util/promise.js.map +0 -1
  317. package/dist/common/src/util/random.d.ts +0 -2
  318. package/dist/common/src/util/random.d.ts.map +0 -1
  319. package/dist/common/src/util/random.js +0 -17
  320. package/dist/common/src/util/random.js.map +0 -1
  321. package/dist/common/src/util/referral.d.ts +0 -2
  322. package/dist/common/src/util/referral.d.ts.map +0 -1
  323. package/dist/common/src/util/referral.js +0 -6
  324. package/dist/common/src/util/referral.js.map +0 -1
  325. package/dist/common/src/util/saxy.d.ts +0 -179
  326. package/dist/common/src/util/saxy.d.ts.map +0 -1
  327. package/dist/common/src/util/saxy.js +0 -548
  328. package/dist/common/src/util/saxy.js.map +0 -1
  329. package/dist/common/src/util/string.d.ts +0 -80
  330. package/dist/common/src/util/string.d.ts.map +0 -1
  331. package/dist/common/src/util/string.js +0 -264
  332. package/dist/common/src/util/string.js.map +0 -1
  333. package/dist/common/src/util/stripe.d.ts +0 -4
  334. package/dist/common/src/util/stripe.d.ts.map +0 -1
  335. package/dist/common/src/util/stripe.js +0 -22
  336. package/dist/common/src/util/stripe.js.map +0 -1
  337. package/dist/common/src/util/sync-failure.d.ts +0 -2
  338. package/dist/common/src/util/sync-failure.d.ts.map +0 -1
  339. package/dist/common/src/util/sync-failure.js +0 -57
  340. package/dist/common/src/util/sync-failure.js.map +0 -1
  341. package/dist/common/src/websockets/websocket-client.d.ts +0 -43
  342. package/dist/common/src/websockets/websocket-client.d.ts.map +0 -1
  343. package/dist/common/src/websockets/websocket-client.js +0 -216
  344. package/dist/common/src/websockets/websocket-client.js.map +0 -1
  345. package/dist/common/src/websockets/websocket-schema.d.ts +0 -5159
  346. package/dist/common/src/websockets/websocket-schema.d.ts.map +0 -1
  347. package/dist/common/src/websockets/websocket-schema.js +0 -55
  348. package/dist/common/src/websockets/websocket-schema.js.map +0 -1
  349. package/dist/common/tsconfig.tsbuildinfo +0 -1
  350. package/dist/common/types/agent-state.d.ts +0 -227
  351. package/dist/common/types/agent-state.d.ts.map +0 -1
  352. package/dist/common/types/agent-state.js +0 -34
  353. package/dist/common/types/agent-state.js.map +0 -1
  354. package/dist/common/types/grant.d.ts +0 -3
  355. package/dist/common/types/grant.d.ts.map +0 -1
  356. package/dist/common/types/grant.js +0 -11
  357. package/dist/common/types/grant.js.map +0 -1
  358. package/dist/common/types/message.d.ts +0 -320
  359. package/dist/common/types/message.d.ts.map +0 -1
  360. package/dist/common/types/message.js +0 -60
  361. package/dist/common/types/message.js.map +0 -1
  362. package/dist/common/types/organization.d.ts +0 -106
  363. package/dist/common/types/organization.d.ts.map +0 -1
  364. package/dist/common/types/organization.js +0 -3
  365. package/dist/common/types/organization.js.map +0 -1
  366. package/dist/common/types/referral.d.ts +0 -3
  367. package/dist/common/types/referral.d.ts.map +0 -1
  368. package/dist/common/types/referral.js +0 -5
  369. package/dist/common/types/referral.js.map +0 -1
  370. package/dist/common/types/tools.d.ts +0 -6
  371. package/dist/common/types/tools.d.ts.map +0 -1
  372. package/dist/common/types/tools.js +0 -3
  373. package/dist/common/types/tools.js.map +0 -1
  374. package/dist/common/types/usage.d.ts +0 -41
  375. package/dist/common/types/usage.d.ts.map +0 -1
  376. package/dist/common/types/usage.js +0 -16
  377. package/dist/common/types/usage.js.map +0 -1
  378. package/dist/common/util/__tests__/messages.test.d.ts +0 -2
  379. package/dist/common/util/__tests__/messages.test.d.ts.map +0 -1
  380. package/dist/common/util/__tests__/messages.test.js +0 -70
  381. package/dist/common/util/__tests__/messages.test.js.map +0 -1
  382. package/dist/common/util/__tests__/saxy.test.d.ts +0 -2
  383. package/dist/common/util/__tests__/saxy.test.d.ts.map +0 -1
  384. package/dist/common/util/__tests__/saxy.test.js +0 -906
  385. package/dist/common/util/__tests__/saxy.test.js.map +0 -1
  386. package/dist/common/util/__tests__/string.test.d.ts +0 -2
  387. package/dist/common/util/__tests__/string.test.d.ts.map +0 -1
  388. package/dist/common/util/__tests__/string.test.js +0 -82
  389. package/dist/common/util/__tests__/string.test.js.map +0 -1
  390. package/dist/common/util/array.d.ts +0 -7
  391. package/dist/common/util/array.d.ts.map +0 -1
  392. package/dist/common/util/array.js +0 -32
  393. package/dist/common/util/array.js.map +0 -1
  394. package/dist/common/util/changes.d.ts +0 -9
  395. package/dist/common/util/changes.d.ts.map +0 -1
  396. package/dist/common/util/changes.js +0 -87
  397. package/dist/common/util/changes.js.map +0 -1
  398. package/dist/common/util/credentials.d.ts +0 -26
  399. package/dist/common/util/credentials.d.ts.map +0 -1
  400. package/dist/common/util/credentials.js +0 -24
  401. package/dist/common/util/credentials.js.map +0 -1
  402. package/dist/common/util/currency.d.ts +0 -15
  403. package/dist/common/util/currency.d.ts.map +0 -1
  404. package/dist/common/util/currency.js +0 -23
  405. package/dist/common/util/currency.js.map +0 -1
  406. package/dist/common/util/dates.d.ts +0 -11
  407. package/dist/common/util/dates.d.ts.map +0 -1
  408. package/dist/common/util/dates.js +0 -22
  409. package/dist/common/util/dates.js.map +0 -1
  410. package/dist/common/util/file.d.ts +0 -168
  411. package/dist/common/util/file.d.ts.map +0 -1
  412. package/dist/common/util/file.js +0 -215
  413. package/dist/common/util/file.js.map +0 -1
  414. package/dist/common/util/git.d.ts +0 -7
  415. package/dist/common/util/git.d.ts.map +0 -1
  416. package/dist/common/util/git.js +0 -81
  417. package/dist/common/util/git.js.map +0 -1
  418. package/dist/common/util/logger.d.ts +0 -9
  419. package/dist/common/util/logger.d.ts.map +0 -1
  420. package/dist/common/util/logger.js +0 -52
  421. package/dist/common/util/logger.js.map +0 -1
  422. package/dist/common/util/lru-cache.d.ts +0 -31
  423. package/dist/common/util/lru-cache.d.ts.map +0 -1
  424. package/dist/common/util/lru-cache.js +0 -68
  425. package/dist/common/util/lru-cache.js.map +0 -1
  426. package/dist/common/util/messages.d.ts +0 -12
  427. package/dist/common/util/messages.d.ts.map +0 -1
  428. package/dist/common/util/messages.js +0 -81
  429. package/dist/common/util/messages.js.map +0 -1
  430. package/dist/common/util/min-heap.d.ts +0 -16
  431. package/dist/common/util/min-heap.d.ts.map +0 -1
  432. package/dist/common/util/min-heap.js +0 -73
  433. package/dist/common/util/min-heap.js.map +0 -1
  434. package/dist/common/util/object.d.ts +0 -19
  435. package/dist/common/util/object.d.ts.map +0 -1
  436. package/dist/common/util/object.js +0 -91
  437. package/dist/common/util/object.js.map +0 -1
  438. package/dist/common/util/patch.d.ts +0 -2
  439. package/dist/common/util/patch.d.ts.map +0 -1
  440. package/dist/common/util/patch.js +0 -215
  441. package/dist/common/util/patch.js.map +0 -1
  442. package/dist/common/util/promise.d.ts +0 -17
  443. package/dist/common/util/promise.d.ts.map +0 -1
  444. package/dist/common/util/promise.js +0 -51
  445. package/dist/common/util/promise.js.map +0 -1
  446. package/dist/common/util/random.d.ts +0 -2
  447. package/dist/common/util/random.d.ts.map +0 -1
  448. package/dist/common/util/random.js +0 -17
  449. package/dist/common/util/random.js.map +0 -1
  450. package/dist/common/util/referral.d.ts +0 -2
  451. package/dist/common/util/referral.d.ts.map +0 -1
  452. package/dist/common/util/referral.js +0 -6
  453. package/dist/common/util/referral.js.map +0 -1
  454. package/dist/common/util/saxy.d.ts +0 -179
  455. package/dist/common/util/saxy.d.ts.map +0 -1
  456. package/dist/common/util/saxy.js +0 -548
  457. package/dist/common/util/saxy.js.map +0 -1
  458. package/dist/common/util/string.d.ts +0 -80
  459. package/dist/common/util/string.d.ts.map +0 -1
  460. package/dist/common/util/string.js +0 -264
  461. package/dist/common/util/string.js.map +0 -1
  462. package/dist/common/util/stripe.d.ts +0 -4
  463. package/dist/common/util/stripe.d.ts.map +0 -1
  464. package/dist/common/util/stripe.js +0 -22
  465. package/dist/common/util/stripe.js.map +0 -1
  466. package/dist/common/util/sync-failure.d.ts +0 -2
  467. package/dist/common/util/sync-failure.d.ts.map +0 -1
  468. package/dist/common/util/sync-failure.js +0 -57
  469. package/dist/common/util/sync-failure.js.map +0 -1
  470. package/dist/common/websockets/websocket-client.d.ts +0 -43
  471. package/dist/common/websockets/websocket-client.d.ts.map +0 -1
  472. package/dist/common/websockets/websocket-client.js +0 -216
  473. package/dist/common/websockets/websocket-client.js.map +0 -1
  474. package/dist/common/websockets/websocket-schema.d.ts +0 -5159
  475. package/dist/common/websockets/websocket-schema.d.ts.map +0 -1
  476. package/dist/common/websockets/websocket-schema.js +0 -55
  477. package/dist/common/websockets/websocket-schema.js.map +0 -1
  478. package/dist/config.d.ts +0 -4
  479. package/dist/config.js +0 -12
  480. package/dist/config.js.map +0 -1
  481. package/dist/create-template-project.d.ts +0 -1
  482. package/dist/create-template-project.js +0 -131
  483. package/dist/create-template-project.js.map +0 -1
  484. package/dist/credentials.d.ts +0 -4
  485. package/dist/credentials.js +0 -44
  486. package/dist/credentials.js.map +0 -1
  487. package/dist/dev-process-manager.d.ts +0 -10
  488. package/dist/dev-process-manager.js +0 -56
  489. package/dist/dev-process-manager.js.map +0 -1
  490. package/dist/display.d.ts +0 -9
  491. package/dist/display.js +0 -137
  492. package/dist/display.js.map +0 -1
  493. package/dist/fingerprint.d.ts +0 -1
  494. package/dist/fingerprint.js +0 -48
  495. package/dist/fingerprint.js.map +0 -1
  496. package/dist/index.d.ts +0 -2
  497. package/dist/index.js +0 -130
  498. package/dist/index.js.map +0 -1
  499. package/dist/json-config/hooks.d.ts +0 -9
  500. package/dist/json-config/hooks.js +0 -60
  501. package/dist/json-config/hooks.js.map +0 -1
  502. package/dist/json-config/parser.d.ts +0 -7
  503. package/dist/json-config/parser.js +0 -53
  504. package/dist/json-config/parser.js.map +0 -1
  505. package/dist/menu.d.ts +0 -14
  506. package/dist/menu.js +0 -344
  507. package/dist/menu.js.map +0 -1
  508. package/dist/project-files.d.ts +0 -103
  509. package/dist/project-files.js +0 -620
  510. package/dist/project-files.js.map +0 -1
  511. package/dist/startup-process-handler.d.ts +0 -1
  512. package/dist/startup-process-handler.js +0 -25
  513. package/dist/startup-process-handler.js.map +0 -1
  514. package/dist/terminal/background.d.ts +0 -12
  515. package/dist/terminal/background.js +0 -148
  516. package/dist/terminal/background.js.map +0 -1
  517. package/dist/terminal/base.d.ts +0 -48
  518. package/dist/terminal/base.js +0 -667
  519. package/dist/terminal/base.js.map +0 -1
  520. package/dist/tool-handlers.d.ts +0 -35
  521. package/dist/tool-handlers.js +0 -303
  522. package/dist/tool-handlers.js.map +0 -1
  523. package/dist/types.d.ts +0 -16
  524. package/dist/types.js +0 -3
  525. package/dist/types.js.map +0 -1
  526. package/dist/update-codebuff.d.ts +0 -1
  527. package/dist/update-codebuff.js +0 -169
  528. package/dist/update-codebuff.js.map +0 -1
  529. package/dist/utils/__tests__/background-process-manager.test.d.ts +0 -1
  530. package/dist/utils/__tests__/background-process-manager.test.js +0 -327
  531. package/dist/utils/__tests__/background-process-manager.test.js.map +0 -1
  532. package/dist/utils/__tests__/response-example-4-files.txt +0 -621
  533. package/dist/utils/__tests__/tool-renderers.test.d.ts +0 -1
  534. package/dist/utils/__tests__/tool-renderers.test.js +0 -83
  535. package/dist/utils/__tests__/tool-renderers.test.js.map +0 -1
  536. package/dist/utils/__tests__/xml-stream-parser.test.d.ts +0 -1
  537. package/dist/utils/__tests__/xml-stream-parser.test.js +0 -255
  538. package/dist/utils/__tests__/xml-stream-parser.test.js.map +0 -1
  539. package/dist/utils/analytics.d.ts +0 -7
  540. package/dist/utils/analytics.js +0 -100
  541. package/dist/utils/analytics.js.map +0 -1
  542. package/dist/utils/detect-shell.d.ts +0 -1
  543. package/dist/utils/detect-shell.js +0 -65
  544. package/dist/utils/detect-shell.js.map +0 -1
  545. package/dist/utils/git.d.ts +0 -13
  546. package/dist/utils/git.js +0 -143
  547. package/dist/utils/git.js.map +0 -1
  548. package/dist/utils/logger.d.ts +0 -21
  549. package/dist/utils/logger.js +0 -109
  550. package/dist/utils/logger.js.map +0 -1
  551. package/dist/utils/spinner.d.ts +0 -12
  552. package/dist/utils/spinner.js +0 -85
  553. package/dist/utils/spinner.js.map +0 -1
  554. package/dist/utils/system-info.d.ts +0 -8
  555. package/dist/utils/system-info.js +0 -22
  556. package/dist/utils/system-info.js.map +0 -1
  557. package/dist/utils/tool-renderers.d.ts +0 -16
  558. package/dist/utils/tool-renderers.js +0 -222
  559. package/dist/utils/tool-renderers.js.map +0 -1
  560. package/dist/utils/xml-stream-parser.d.ts +0 -9
  561. package/dist/utils/xml-stream-parser.js +0 -143
  562. package/dist/utils/xml-stream-parser.js.map +0 -1
  563. package/dist/web-scraper.d.ts +0 -3
  564. package/dist/web-scraper.js +0 -59
  565. package/dist/web-scraper.js.map +0 -1
  566. package/dist/workers/checkpoint-worker.d.ts +0 -1
  567. package/dist/workers/checkpoint-worker.js +0 -51
  568. package/dist/workers/checkpoint-worker.js.map +0 -1
  569. package/dist/workers/project-context.d.ts +0 -1
  570. package/dist/workers/project-context.js +0 -27
  571. package/dist/workers/project-context.js.map +0 -1
package/dist/index.js DELETED
@@ -1,130 +0,0 @@
1
- #!/usr/bin/env node
2
- process.env.NEXT_PUBLIC_SUPPORT_EMAIL = 'support@codebuff.com';
3
- process.env.NEXT_PUBLIC_STRIPE_CUSTOMER_PORTAL = 'https://billing.stripe.com/p/login/cN22bea8W6Ra2is144';
4
- process.env.NEXT_PUBLIC_APP_URL = 'https://codebuff.com';
5
- process.env.NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY = 'pk_live_51Q0SA5KrNS6SjmqWMgRE0ar5v6cMvtizkyY3mXjYaZsU6AG9ctpNPKZMVf6xFK2ngqwkt8rHNIQgNiCFSbRdGb9Z00QEo13rfx';
6
- process.env.NEXT_PUBLIC_BACKEND_URL = 'manicode-backend.onrender.com';
7
- process.env.NEXT_PUBLIC_CB_ENVIRONMENT = 'prod';
8
- process.env.NEXT_PUBLIC_LINKEDIN_PARTNER_ID = '6771996';
9
- process.env.NEXT_PUBLIC_POSTHOG_API_KEY = 'phc_tug7g8yc10qNestK14QV8WyKwjfEl6vwzIbJkBdqeHS';
10
- process.env.NEXT_PUBLIC_POSTHOG_HOST_URL = 'https://us.i.posthog.com';
11
- "use strict";
12
- var __importDefault = (this && this.__importDefault) || function (mod) {
13
- return (mod && mod.__esModule) ? mod : { "default": mod };
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- const commander_1 = require("commander");
17
- const picocolors_1 = require("picocolors");
18
- const package_json_1 = __importDefault(require("../package.json"));
19
- const cli_1 = require("./cli");
20
- const cli_definitions_1 = require("./cli-definitions");
21
- const create_template_project_1 = require("./create-template-project");
22
- const display_1 = require("./display");
23
- const project_files_1 = require("./project-files");
24
- const startup_process_handler_1 = require("./startup-process-handler");
25
- const base_1 = require("./terminal/base");
26
- const update_codebuff_1 = require("./update-codebuff");
27
- const analytics_1 = require("./utils/analytics");
28
- const git_1 = require("./utils/git");
29
- const logger_1 = require("./utils/logger");
30
- async function codebuff(projectDir, { initialInput, git, costMode, runInitFlow, model, isManager }) {
31
- (0, display_1.enableSquashNewlines)();
32
- // Initialize starting directory
33
- const { cwd, shouldSearch } = (0, project_files_1.getStartingDirectory)(projectDir);
34
- const gitRoot = shouldSearch ? (0, git_1.findGitRoot)(cwd) ?? cwd : cwd;
35
- const projectRoot = (0, project_files_1.setProjectRoot)(gitRoot);
36
- (0, project_files_1.setWorkingDirectory)(cwd);
37
- (0, base_1.recreateShell)(cwd);
38
- // Kill all processes we failed to kill before
39
- const processCleanupPromise = (0, startup_process_handler_1.logAndHandleStartup)();
40
- (0, analytics_1.initAnalytics)();
41
- const updatePromise = (0, update_codebuff_1.updateCodebuff)();
42
- const initFileContextPromise = (0, project_files_1.initProjectFileContextWithWorker)(projectRoot);
43
- const readyPromise = Promise.all([
44
- initFileContextPromise,
45
- updatePromise,
46
- processCleanupPromise,
47
- ]);
48
- // Initialize the CLI singleton
49
- cli_1.CLI.initialize(readyPromise, { git, costMode, model, isManager });
50
- const cli = cli_1.CLI.getInstance();
51
- await cli.printInitialPrompt({ initialInput, runInitFlow });
52
- }
53
- if (require.main === module) {
54
- const program = new commander_1.Command();
55
- program.name('codebuff').version(package_json_1.default.version);
56
- // Add arguments from shared definitions
57
- cli_definitions_1.cliArguments.forEach((arg) => {
58
- // For hidden arguments, just skip adding them to the help text
59
- if (!arg.hidden) {
60
- program.argument(arg.flags, arg.description);
61
- }
62
- });
63
- // Add options from shared definitions
64
- cli_definitions_1.cliOptions.forEach((opt) => {
65
- const optionInstance = new commander_1.Option(opt.flags, opt.description);
66
- if (opt.hidden) {
67
- optionInstance.hideHelp(true);
68
- }
69
- program.addOption(optionInstance);
70
- });
71
- program.addHelpText('after', `
72
- Examples:
73
- $ codebuff # Start in current directory
74
- $ codebuff my-project # Start in specific directory
75
- $ codebuff --create nextjs my-app # Create and scaffold a new Next.js project
76
-
77
- For all commands and options, run 'codebuff' and then type 'help'.
78
- `);
79
- program.parse();
80
- const options = program.opts();
81
- const args = program.args;
82
- // Handle template creation
83
- if (options.create) {
84
- const template = options.create;
85
- const projectDir = args[0] || '.';
86
- const projectName = args[1] || template;
87
- (0, create_template_project_1.createTemplateProject)(template, projectDir, projectName);
88
- process.exit(0);
89
- }
90
- // Handle deprecated --pro flag
91
- if (options.pro) {
92
- console.error((0, picocolors_1.red)('Warning: The --pro flag is deprecated. Please restart codebuff and use the --max option instead.'));
93
- logger_1.logger.error({
94
- errorMessage: 'The --pro flag is deprecated. Please restart codebuff and use the --max option instead.',
95
- }, 'Deprecated --pro flag used');
96
- process.exit(1);
97
- }
98
- // Determine cost mode
99
- let costMode = 'normal';
100
- if (options.lite) {
101
- costMode = 'lite';
102
- }
103
- else if (options.max) {
104
- costMode = 'max';
105
- }
106
- else if (options.experimental) {
107
- costMode = 'experimental';
108
- }
109
- else if (options.ask) {
110
- costMode = 'ask';
111
- }
112
- let isManager = false;
113
- if (options.superagent) {
114
- isManager = true;
115
- }
116
- // Handle git integration
117
- const git = options.git === 'stage' ? 'stage' : undefined;
118
- // Get project directory and initial input
119
- const projectPath = args[0];
120
- const initialInput = args.slice(1).join(' ');
121
- codebuff(projectPath, {
122
- initialInput,
123
- git,
124
- costMode,
125
- isManager,
126
- runInitFlow: options.init,
127
- model: options.model,
128
- });
129
- }
130
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import { ToolResult } from '../common/types/agent-state';
2
- /**
3
- * Runs file change hooks defined in the codebuff.json configuration.
4
- * Returns an array of tool results for any hooks that fail.
5
- */
6
- export declare function runFileChangeHooks(filesChanged: string[]): Promise<{
7
- toolResults: ToolResult[];
8
- someHooksFailed: boolean;
9
- }>;
@@ -1,60 +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.runFileChangeHooks = runFileChangeHooks;
7
- const string_1 = require("../common/util/string");
8
- const micromatch_1 = __importDefault(require("micromatch"));
9
- const project_files_1 = require("../project-files");
10
- const base_1 = require("../terminal/base");
11
- const logger_1 = require("../utils/logger");
12
- const parser_1 = require("./parser");
13
- /**
14
- * Runs file change hooks defined in the codebuff.json configuration.
15
- * Returns an array of tool results for any hooks that fail.
16
- */
17
- async function runFileChangeHooks(filesChanged) {
18
- const config = (0, parser_1.loadCodebuffConfig)();
19
- const toolResults = [];
20
- let someHooksFailed = false;
21
- if (!config?.fileChangeHooks) {
22
- return { toolResults, someHooksFailed };
23
- }
24
- for (const hook of config.fileChangeHooks) {
25
- if (!hook.enabled) {
26
- continue;
27
- }
28
- // If a filePattern is specified, check if any of the changed files match
29
- if (hook.filePattern && filesChanged.length > 0) {
30
- const matchingFiles = (0, micromatch_1.default)(filesChanged, hook.filePattern);
31
- if (matchingFiles.length === 0) {
32
- // No files match the pattern, skip this hook
33
- continue;
34
- }
35
- }
36
- try {
37
- const hookName = `file-change-hook-${hook.name}`;
38
- const hookId = (0, string_1.generateCompactId)(`${hookName}-`);
39
- const result = await (0, base_1.runTerminalCommand)(hookId, hook.command, 'assistant', 'SYNC', -1, hook.cwd || (0, project_files_1.getProjectRoot)(), undefined, undefined);
40
- if (result.exitCode !== 0) {
41
- someHooksFailed = true;
42
- }
43
- toolResults.push({
44
- name: hookName,
45
- id: hookId,
46
- result: result.result,
47
- });
48
- }
49
- catch (error) {
50
- logger_1.logger.error({
51
- errorMessage: error instanceof Error ? error.message : String(error),
52
- errorStack: error instanceof Error ? error.stack : undefined,
53
- hookName: hook.name,
54
- hookCommand: hook.command,
55
- }, 'Error running file change hook');
56
- }
57
- }
58
- return { toolResults, someHooksFailed };
59
- }
60
- //# sourceMappingURL=hooks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/json-config/hooks.ts"],"names":[],"mappings":";;;;;AAaA,gDA4DC;AAxED,+CAAsD;AACtD,4DAAmC;AAEnC,oDAAiD;AACjD,2CAAqD;AACrD,4CAAwC;AACxC,qCAA6C;AAE7C;;;GAGG;AACI,KAAK,UAAU,kBAAkB,CACtC,YAAsB;IAEtB,MAAM,MAAM,GAAG,IAAA,2BAAkB,GAAE,CAAA;IACnC,MAAM,WAAW,GAAiB,EAAE,CAAA;IACpC,IAAI,eAAe,GAAG,KAAK,CAAA;IAE3B,IAAI,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;QAC7B,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,CAAA;IACzC,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,SAAQ;QACV,CAAC;QAED,yEAAyE;QACzE,IAAI,IAAI,CAAC,WAAW,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChD,MAAM,aAAa,GAAG,IAAA,oBAAU,EAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;YAChE,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/B,6CAA6C;gBAC7C,SAAQ;YACV,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,oBAAoB,IAAI,CAAC,IAAI,EAAE,CAAA;YAChD,MAAM,MAAM,GAAG,IAAA,0BAAiB,EAAC,GAAG,QAAQ,GAAG,CAAC,CAAA;YAChD,MAAM,MAAM,GAAG,MAAM,IAAA,yBAAkB,EACrC,MAAM,EACN,IAAI,CAAC,OAAO,EACZ,WAAW,EACX,MAAM,EACN,CAAC,CAAC,EACF,IAAI,CAAC,GAAG,IAAI,IAAA,8BAAc,GAAE,EAC5B,SAAS,EACT,SAAS,CACV,CAAA;YACD,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBAC1B,eAAe,GAAG,IAAI,CAAA;YACxB,CAAC;YACD,WAAW,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,QAAQ;gBACd,EAAE,EAAE,MAAM;gBACV,MAAM,EAAE,MAAM,CAAC,MAAM;aACtB,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CACV;gBACE,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpE,UAAU,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBAC5D,QAAQ,EAAE,IAAI,CAAC,IAAI;gBACnB,WAAW,EAAE,IAAI,CAAC,OAAO;aAC1B,EACD,gCAAgC,CACjC,CAAA;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,CAAA;AACzC,CAAC"}
@@ -1,7 +0,0 @@
1
- import { CodebuffConfig } from '../common/json-config/constants';
2
- /**
3
- * Loads and validates the configuration file from the project directory.
4
- * @param projectPath - The root directory of the project
5
- * @returns The parsed and validated configuration, or null if no valid config exists
6
- */
7
- export declare function loadCodebuffConfig(): CodebuffConfig | null;
@@ -1,53 +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.loadCodebuffConfig = loadCodebuffConfig;
7
- const fs_1 = require("fs");
8
- const path_1 = __importDefault(require("path"));
9
- const jsonc_parser_1 = require("jsonc-parser");
10
- const picocolors_1 = require("picocolors");
11
- const constants_1 = require("../common/json-config/constants");
12
- const project_files_1 = require("../project-files");
13
- /**
14
- * Loads and validates the configuration file from the project directory.
15
- * @param projectPath - The root directory of the project
16
- * @returns The parsed and validated configuration, or null if no valid config exists
17
- */
18
- function loadCodebuffConfig() {
19
- const projectPath = (0, project_files_1.getProjectRoot)();
20
- const configPathPrimary = path_1.default.join(projectPath, constants_1.codebuffConfigFile);
21
- const configPathBackup = path_1.default.join(projectPath, constants_1.codebuffConfigFileBackup);
22
- const configPath = (0, fs_1.existsSync)(configPathBackup)
23
- ? configPathBackup
24
- : (0, fs_1.existsSync)(configPathPrimary)
25
- ? configPathPrimary
26
- : null;
27
- if (configPath === null) {
28
- return null;
29
- }
30
- try {
31
- const jsoncContent = (0, fs_1.readFileSync)(configPath, 'utf-8');
32
- const parsedConfig = (0, jsonc_parser_1.parse)(jsoncContent);
33
- const result = constants_1.CodebuffConfigSchema.safeParse(parsedConfig);
34
- if (!result.success) {
35
- console.warn((0, picocolors_1.yellow)(`Warning: Invalid ${constants_1.codebuffConfigFile} configuration. Please check the schema:\n` +
36
- result.error.errors
37
- .map((err) => `- ${err.path.join('.')}: ${err.message}`)
38
- .join('\n')));
39
- return null;
40
- }
41
- return result.data;
42
- }
43
- catch (error) {
44
- if (error instanceof SyntaxError) {
45
- console.warn((0, picocolors_1.yellow)(`Warning: Invalid JSON in ${constants_1.codebuffConfigFile}. Please check the syntax.`));
46
- }
47
- else {
48
- console.warn((0, picocolors_1.yellow)(`Warning: Error reading ${constants_1.codebuffConfigFile} configuration file.`));
49
- }
50
- return null;
51
- }
52
- }
53
- //# sourceMappingURL=parser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/json-config/parser.ts"],"names":[],"mappings":";;;;;AAmBA,gDAiDC;AApED,2BAA6C;AAC7C,gDAAuB;AAEvB,+CAAkD;AAClD,2CAAmC;AAEnC,4DAKqC;AACrC,oDAAiD;AAEjD;;;;GAIG;AACH,SAAgB,kBAAkB;IAChC,MAAM,WAAW,GAAG,IAAA,8BAAc,GAAE,CAAA;IACpC,MAAM,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,8BAAkB,CAAC,CAAA;IACpE,MAAM,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,oCAAwB,CAAC,CAAA;IACzE,MAAM,UAAU,GAAG,IAAA,eAAU,EAAC,gBAAgB,CAAC;QAC7C,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,IAAA,eAAU,EAAC,iBAAiB,CAAC;YAC7B,CAAC,CAAC,iBAAiB;YACnB,CAAC,CAAC,IAAI,CAAA;IAEV,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAA,iBAAY,EAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QACtD,MAAM,YAAY,GAAG,IAAA,oBAAU,EAAC,YAAY,CAAC,CAAA;QAE7C,MAAM,MAAM,GAAG,gCAAoB,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;QAE3D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CACV,IAAA,mBAAM,EACJ,oBAAoB,8BAAkB,4CAA4C;gBAChF,MAAM,CAAC,KAAK,CAAC,MAAM;qBAChB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC;qBACvD,IAAI,CAAC,IAAI,CAAC,CAChB,CACF,CAAA;YACD,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO,MAAM,CAAC,IAAI,CAAA;IACpB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;YACjC,OAAO,CAAC,IAAI,CACV,IAAA,mBAAM,EACJ,4BAA4B,8BAAkB,4BAA4B,CAC3E,CACF,CAAA;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CACV,IAAA,mBAAM,EACJ,0BAA0B,8BAAkB,sBAAsB,CACnE,CACF,CAAA;QACH,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC"}
package/dist/menu.d.ts DELETED
@@ -1,14 +0,0 @@
1
- import { CostMode } from './common/constants';
2
- export interface CommandInfo {
3
- commandText: string;
4
- description: string;
5
- baseCommand?: string;
6
- params?: string;
7
- isSlashCommand?: boolean;
8
- aliases?: string[];
9
- }
10
- export declare const interactiveCommandDetails: CommandInfo[];
11
- export declare function getSlashCommands(): CommandInfo[];
12
- export declare function displaySlashCommandHelperMenu(): void;
13
- export declare function displayGreeting(costMode: CostMode, username: string | null): void;
14
- export declare function displayMenu(): void;
package/dist/menu.js DELETED
@@ -1,344 +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
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.interactiveCommandDetails = void 0;
30
- exports.getSlashCommands = getSlashCommands;
31
- exports.displaySlashCommandHelperMenu = displaySlashCommandHelperMenu;
32
- exports.displayGreeting = displayGreeting;
33
- exports.displayMenu = displayMenu;
34
- const fs = __importStar(require("fs"));
35
- const os_1 = __importDefault(require("os"));
36
- const path_1 = __importDefault(require("path"));
37
- const picocolors_1 = require("picocolors");
38
- const constants_1 = require("./common/json-config/constants");
39
- const file_1 = require("./common/util/file");
40
- const project_files_1 = require("./project-files");
41
- exports.interactiveCommandDetails = [
42
- {
43
- baseCommand: 'help',
44
- description: 'Display help information',
45
- isSlashCommand: true,
46
- commandText: '', // Empty commandText ensures it's not shown in the main interactive list
47
- aliases: ['h'], // Optional: if you want /h to also work for tab completion
48
- },
49
- {
50
- commandText: '"init"',
51
- baseCommand: 'init',
52
- description: 'Configure project for better results',
53
- isSlashCommand: true,
54
- },
55
- {
56
- commandText: '"login"',
57
- baseCommand: 'login',
58
- description: 'Authenticate your session',
59
- isSlashCommand: false,
60
- },
61
- {
62
- commandText: '"diff" or "d"',
63
- baseCommand: 'diff',
64
- aliases: ['d'],
65
- description: 'Show last assistant change diff',
66
- isSlashCommand: true,
67
- },
68
- {
69
- commandText: '"undo" / "redo"',
70
- description: 'Revert or re-apply last change',
71
- // This entry will be expanded into two slash commands: /undo and /redo
72
- },
73
- {
74
- commandText: '"checkpoint <id>"',
75
- baseCommand: 'checkpoint',
76
- params: '<id>',
77
- description: 'Restore to a specific checkpoint',
78
- isSlashCommand: true,
79
- },
80
- {
81
- commandText: '"!<cmd>"',
82
- baseCommand: '!', // Or handle this specially, e.g. baseCommand 'shell'
83
- params: '<cmd>',
84
- description: 'Run shell command directly',
85
- isSlashCommand: false, // e.g. /! <cmd> or /shell <cmd>
86
- },
87
- {
88
- commandText: '"usage" or "credits"',
89
- description: 'View remaining / bonus AI credits',
90
- // This entry will be expanded into two slash commands: /usage and /credits
91
- },
92
- {
93
- commandText: '"reset"',
94
- baseCommand: 'reset',
95
- description: 'Reset the conversation history, as if you just started a new Codebuff session',
96
- isSlashCommand: true,
97
- },
98
- {
99
- baseCommand: 'compact',
100
- description: 'Replace the conversation history with a summary and free up context',
101
- isSlashCommand: true,
102
- commandText: '"compact"',
103
- },
104
- {
105
- baseCommand: 'export',
106
- description: 'Export conversation summary to file',
107
- isSlashCommand: true,
108
- commandText: '"export"',
109
- },
110
- {
111
- commandText: 'ESC key or Ctrl-C',
112
- description: 'Cancel generation',
113
- isSlashCommand: false,
114
- },
115
- {
116
- baseCommand: 'undo',
117
- description: 'Undo last change',
118
- isSlashCommand: true,
119
- commandText: '',
120
- }, // commandText empty as it's covered by "undo / redo" for main menu
121
- {
122
- baseCommand: 'redo',
123
- description: 'Redo last undone change',
124
- isSlashCommand: true,
125
- commandText: '',
126
- },
127
- {
128
- baseCommand: 'usage',
129
- description: 'View AI credits usage',
130
- isSlashCommand: true,
131
- commandText: '',
132
- },
133
- {
134
- baseCommand: 'credits',
135
- description: 'View AI credits balance',
136
- isSlashCommand: false,
137
- commandText: '',
138
- },
139
- {
140
- baseCommand: 'ask',
141
- description: "Switch to ask mode (won't modify code)",
142
- isSlashCommand: true,
143
- commandText: '',
144
- },
145
- {
146
- baseCommand: 'lite',
147
- description: 'Switch to lite mode (faster, cheaper)',
148
- isSlashCommand: true,
149
- commandText: '',
150
- },
151
- {
152
- baseCommand: 'normal',
153
- description: 'Switch to normal mode (balanced)',
154
- isSlashCommand: true,
155
- commandText: '',
156
- },
157
- {
158
- baseCommand: 'max',
159
- description: 'Switch to max mode (slower, more thorough)',
160
- isSlashCommand: true,
161
- commandText: '',
162
- },
163
- {
164
- baseCommand: 'experimental',
165
- description: 'Switch to experimental mode (cutting-edge)',
166
- isSlashCommand: false,
167
- commandText: '',
168
- },
169
- {
170
- commandText: '"exit" or Ctrl-C x2',
171
- baseCommand: 'exit',
172
- description: 'Quit Codebuff',
173
- isSlashCommand: true,
174
- },
175
- ];
176
- function getSlashCommands() {
177
- return exports.interactiveCommandDetails.filter((cmd) => cmd.isSlashCommand && cmd.baseCommand);
178
- }
179
- function displaySlashCommandHelperMenu() {
180
- const commands = getSlashCommands();
181
- if (commands.length === 0) {
182
- return;
183
- }
184
- // Calculate the maximum length of command strings for alignment
185
- const maxCommandLength = Math.max(...commands.map((cmd) => {
186
- const commandString = `/${cmd.baseCommand}${cmd.params ? ` ${cmd.params}` : ''}`;
187
- return commandString.length;
188
- }));
189
- // Format each command with its description
190
- const commandLines = commands.map((cmd) => {
191
- const commandString = `/${cmd.baseCommand}${cmd.params ? ` ${cmd.params}` : ''}`;
192
- // Pad with dots to align descriptions
193
- const padding = '.'.repeat(maxCommandLength - commandString.length + 3);
194
- return `${(0, picocolors_1.cyan)(commandString)} ${padding} ${cmd.description}`;
195
- });
196
- // Add the shell command tip at the end
197
- const shellTip = (0, picocolors_1.gray)('Tip: Type "!" followed by a command to run it in your shell, e.g., !ls');
198
- // Print with consistent spacing
199
- console.log(`\n\n${commandLines.join('\n')}\n${shellTip}\n`);
200
- }
201
- function displayGreeting(costMode, username) {
202
- // Show extra info only for logged in users
203
- const costModeDescription = {
204
- lite: (0, picocolors_1.bold)((0, picocolors_1.yellow)('Lite mode ✨ enabled (switch modes by typing in "/")')),
205
- normal: '',
206
- max: (0, picocolors_1.bold)((0, picocolors_1.blueBright)('Max mode️ ⚡ enabled (switch modes by typing in "/")')),
207
- experimental: (0, picocolors_1.bold)((0, picocolors_1.magenta)('Experimental mode 🧪 enabled')),
208
- ask: (0, picocolors_1.bold)((0, picocolors_1.cyan)("Ask mode 💬 enabled (won't modify code)")),
209
- };
210
- if (costModeDescription[costMode]) {
211
- console.log(`${costModeDescription[costMode]}`);
212
- }
213
- if (!(0, file_1.isValidProjectRoot)((0, project_files_1.getProjectRoot)())) {
214
- console.info(`Welcome! Codebuff is your AI pair programmer that edits your codebase through natural conversation.
215
-
216
- You are currently in "${(0, picocolors_1.green)((0, project_files_1.getProjectRoot)())}".
217
-
218
- To get started:
219
- 1. Navigate to your project (cd your/project/root)
220
- 2. Run "codebuff" there instead
221
- `.trim());
222
- process.exit(0);
223
- }
224
- console.log(`Codebuff will read and write files in "${(0, project_files_1.getProjectRoot)()}". Type "help" for a list of commands.`);
225
- const gitDir = path_1.default.join((0, project_files_1.getProjectRoot)(), '.git');
226
- if (!fs.existsSync(gitDir)) {
227
- console.info((0, picocolors_1.magenta)("Just fyi, this project doesn't contain a .git directory (are you at the top level of your project?). Codebuff works best with a git repo!"));
228
- }
229
- console.log(`\nWelcome${username ? ` back ${username}` : ''}! What would you like to do?`);
230
- }
231
- const getRandomColors = () => {
232
- const allColors = [picocolors_1.red, picocolors_1.green, picocolors_1.yellow, picocolors_1.blue, picocolors_1.blueBright, picocolors_1.magenta, picocolors_1.cyan];
233
- const colors = [];
234
- while (colors.length < 3) {
235
- const color = allColors[Math.floor(Math.random() * allColors.length)];
236
- if (!colors.includes(color)) {
237
- colors.push(color);
238
- }
239
- }
240
- return colors;
241
- };
242
- function displayMenu() {
243
- const terminalWidth = process.stdout.columns || 80;
244
- const dividerLine = '─'.repeat(terminalWidth);
245
- const selectedColors = getRandomColors();
246
- const colorizeRandom = (text) => {
247
- return text
248
- .split('')
249
- .map((char) => {
250
- const colorFn = selectedColors[Math.floor(Math.random() * selectedColors.length)];
251
- return colorFn(char);
252
- })
253
- .join('');
254
- };
255
- console.log(`
256
- ${colorizeRandom(' ')}
257
- ${colorizeRandom('██████╗')}${colorizeRandom(' ██████╗ ')}${colorizeRandom('██████╗ ')}${colorizeRandom('███████╗')}${colorizeRandom('██████╗ ')}${colorizeRandom('██╗ ██╗')}${colorizeRandom('███████╗')}${colorizeRandom('███████╗')}
258
- ${colorizeRandom('██╔════╝')}${colorizeRandom('██╔═══██╗')}${colorizeRandom('██╔══██╗')}${colorizeRandom('██╔════╝')}${colorizeRandom('██╔══██╗')}${colorizeRandom('██║ ██║')}${colorizeRandom('██╔════╝')}${colorizeRandom('██╔════╝')}
259
- ${colorizeRandom('██║ ')}${colorizeRandom('██║ ██║')}${colorizeRandom('██║ ██║')}${colorizeRandom('█████╗ ')}${colorizeRandom('██████╔╝')}${colorizeRandom('██║ ██║')}${colorizeRandom('█████╗ ')}${colorizeRandom('█████╗ ')}
260
- ${colorizeRandom('██║ ')}${colorizeRandom('██║ ██║')}${colorizeRandom('██║ ██║')}${colorizeRandom('██╔══╝ ')}${colorizeRandom('██╔══██╗')}${colorizeRandom('██║ ██║')}${colorizeRandom('██╔══╝ ')}${colorizeRandom('██╔══╝ ')}
261
- ${colorizeRandom('╚██████╗')}${colorizeRandom('╚██████╔╝')}${colorizeRandom('██████╔╝')}${colorizeRandom('███████╗')}${colorizeRandom('██████╔╝')}${colorizeRandom('╚██████╔╝')}${colorizeRandom('██║ ')}${colorizeRandom('██║ ')}
262
- ${colorizeRandom(' ╚═════╝')}${colorizeRandom(' ╚═════╝ ')}${colorizeRandom('╚═════╝ ')}${colorizeRandom('╚══════╝')}${colorizeRandom('╚═════╝ ')}${colorizeRandom(' ╚═════╝ ')}${colorizeRandom('╚═╝ ')}${colorizeRandom('╚═╝ ')}
263
- `);
264
- console.log(`\n${(0, picocolors_1.bold)('Your AI pair programmer that understands, edits, and improves your codebase through natural conversation.')}`);
265
- console.log(`\n${(0, picocolors_1.bold)((0, picocolors_1.underline)('PROJECT SETUP'))}`);
266
- console.log((() => {
267
- const currentDirectoryLine = `${(0, picocolors_1.green)('✅ Current directory:')} ${(0, picocolors_1.bold)((0, picocolors_1.blueBright)((0, project_files_1.getProjectRoot)()))}`;
268
- const hasGitRepo = fs.existsSync(path_1.default.join((0, project_files_1.getProjectRoot)(), '.git'));
269
- const hasGitIgnore = fs.existsSync(path_1.default.join((0, project_files_1.getProjectRoot)(), '.gitignore'));
270
- const hasKnowledgeMd = fs.existsSync(path_1.default.join((0, project_files_1.getProjectRoot)(), 'knowledge.md'));
271
- const hasCodebuffJson = fs.existsSync(path_1.default.join((0, project_files_1.getProjectRoot)(), constants_1.codebuffConfigFile));
272
- const gitignoreNote = ' (Codebuff never reads files in your .gitignore/.codebuffignore)';
273
- // Condition 1: Git repo found, all files present
274
- if (hasGitRepo && hasGitIgnore && hasKnowledgeMd && hasCodebuffJson) {
275
- return `${currentDirectoryLine}\n${(0, picocolors_1.green)('✅ Git repo: detected')}
276
- ${(0, picocolors_1.green)('✅ .gitignore: detected')}${gitignoreNote}
277
- ${(0, picocolors_1.green)('✅ knowledge.md: detected')}
278
- ${(0, picocolors_1.green)(`✅ ${constants_1.codebuffConfigFile}: detected`)}`;
279
- }
280
- // Condition 2: Git repo not found
281
- if (!hasGitRepo) {
282
- return `${currentDirectoryLine}\n${(0, picocolors_1.yellow)('❌ Git repo: not found')}${' - navigate to a working directory!'}
283
- ${hasGitIgnore ? (0, picocolors_1.green)('✅ .gitignore: detected') : (0, picocolors_1.yellow)('❌ .gitignore: missing')}${gitignoreNote}
284
- ${hasKnowledgeMd ? (0, picocolors_1.green)('✅ knowledge.md: detected') : (0, picocolors_1.yellow)('❌ knowledge.md: missing')}${' — run "init" to fix'}
285
- ${hasCodebuffJson ? (0, picocolors_1.green)(`✅ ${constants_1.codebuffConfigFile}: detected`) : (0, picocolors_1.yellow)(`❌ ${constants_1.codebuffConfigFile}: missing`)}${' — run "init" to fix'}`;
286
- }
287
- // Condition 3: Missing .gitignore
288
- if (!hasGitIgnore) {
289
- return `${currentDirectoryLine}\n${(0, picocolors_1.green)('✅ Git repo: detected')}
290
- ${(0, picocolors_1.yellow)('❌ .gitignore: missing - type "generate a reasonable .gitignore"')}${gitignoreNote}
291
- ${hasKnowledgeMd ? (0, picocolors_1.green)('✅ knowledge.md: detected') : (0, picocolors_1.yellow)('❌ knowledge.md: missing')}
292
- ${hasCodebuffJson ? (0, picocolors_1.green)(`✅ ${constants_1.codebuffConfigFile}: detected`) : (0, picocolors_1.yellow)(`❌ ${constants_1.codebuffConfigFile}: missing`)}`;
293
- }
294
- // Condition 4: Missing knowledge files
295
- return `${currentDirectoryLine}\n${(0, picocolors_1.green)('✅ Git repo: detected')}
296
- ${(0, picocolors_1.green)('✅ .gitignore: detected')}${gitignoreNote}
297
- ${!hasKnowledgeMd && !hasCodebuffJson
298
- ? (0, picocolors_1.yellow)(`❌ knowledge.md & ${constants_1.codebuffConfigFile}: missing - type "init"`)
299
- : !hasKnowledgeMd
300
- ? (0, picocolors_1.yellow)('❌ knowledge.md: missing - type "init"')
301
- : !hasCodebuffJson
302
- ? (0, picocolors_1.yellow)(`❌ ${constants_1.codebuffConfigFile}: missing - type "init"`)
303
- : (0, picocolors_1.green)(`✅ knowledge.md & ${constants_1.codebuffConfigFile}: detected`)}
304
- ${hasKnowledgeMd && !hasCodebuffJson ? `\n${(0, picocolors_1.yellow)(`${constants_1.codebuffConfigFile} runs deployment scripts for you to test your code and runs configured checks for you by running your dev server.`)}` : ''}
305
- ${!hasKnowledgeMd && hasCodebuffJson ? `\n${(0, picocolors_1.yellow)('knowledge.md helps Codebuff understand your project structure and codebase better for better results.')}` : ''}
306
- ${!hasKnowledgeMd && !hasCodebuffJson ? `\n${(0, picocolors_1.yellow)('knowledge.md helps Codebuff understand your project structure and codebase better for better results.')}\n${(0, picocolors_1.yellow)(`${constants_1.codebuffConfigFile} runs deployment scripts for you to test your code and runs configured checks for you by running your dev server.`)}` : ''}`;
307
- })());
308
- // COMMUNITY & FEEDBACK SECTION
309
- console.log(`\n${(0, picocolors_1.bold)((0, picocolors_1.underline)('COMMUNITY & FEEDBACK'))}`);
310
- console.log(`Thanks for using Codebuff! DM @brandonkachen or @jahooma on Discord, or email ${(0, picocolors_1.blueBright)('founders@codebuff.com')}`);
311
- console.log(`Join our Discord: ${(0, picocolors_1.blueBright)('https://codebuff.com/discord')} ${(0, picocolors_1.gray)(`(${os_1.default.platform() === 'darwin' ? 'Command' : 'Ctrl'} + Click to open)`)}`);
312
- console.log(`\n${(0, picocolors_1.bold)((0, picocolors_1.underline)('EXAMPLE PROMPTS'))}
313
- ${'Code Quality:'}
314
- ${(0, picocolors_1.cyan)(' • "Add error handling to this function"')}
315
- ${(0, picocolors_1.cyan)(' • "Add JSDoc comments to this file"')}
316
- ${(0, picocolors_1.cyan)(' • "Fix the type errors in this component"')}
317
-
318
- ${'Testing & Validation:'}
319
- ${(0, picocolors_1.cyan)(' • "Create a unit test for the auth module"')}
320
- ${(0, picocolors_1.cyan)(' • "Add input validation to this endpoint"')}
321
-
322
- ${'Performance & Architecture:'}
323
- ${(0, picocolors_1.cyan)(' • "Optimize this database query"')}
324
- ${(0, picocolors_1.cyan)(' • "Refactor this to use async/await"')}
325
- ${(0, picocolors_1.cyan)(' • "Add caching to this service"')}
326
-
327
- ${'Features & Infrastructure:'}
328
- ${(0, picocolors_1.cyan)(' • "Create a new API endpoint for users"')}
329
- ${(0, picocolors_1.cyan)(' • "Add logging to these functions"')}
330
- ${(0, picocolors_1.cyan)(' • "Set up CI/CD pipeline config"')}
331
- `);
332
- // INTERACTIVE COMMANDS SECTION
333
- const fixedCommandWidth = 30; // Fixed width for command column
334
- const formatMenuLine = (commandText, description) => {
335
- const paddedCommand = commandText.padEnd(fixedCommandWidth);
336
- return `${paddedCommand}${description}`;
337
- };
338
- const menuLines = exports.interactiveCommandDetails
339
- .filter((cmd) => cmd.commandText) // Filter out slash-only commands like the discrete undo/redo
340
- .map((cmd) => formatMenuLine(cmd.commandText, cmd.description));
341
- console.log(`\n${(0, picocolors_1.bold)((0, picocolors_1.underline)('COMMANDS (type these below)'))}${' '.repeat(fixedCommandWidth - 27)}${(0, picocolors_1.bold)((0, picocolors_1.underline)('DESCRIPTION'))}\n\n${menuLines.join(`\n${dividerLine}`)}\n`);
342
- console.log(`\n↓ Enter your prompt or command below ↓`);
343
- }
344
- //# sourceMappingURL=menu.js.map