tarsk 0.4.4 → 0.4.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (366) hide show
  1. package/dist/index.js +447375 -37
  2. package/package.json +2 -2
  3. package/dist/agent/agent.error-utils.d.ts +0 -14
  4. package/dist/agent/agent.error-utils.js +0 -52
  5. package/dist/agent/agent.event-transformer.d.ts +0 -55
  6. package/dist/agent/agent.event-transformer.js +0 -175
  7. package/dist/agent/agent.executor.d.ts +0 -26
  8. package/dist/agent/agent.executor.js +0 -286
  9. package/dist/agent/agent.model-resolver.d.ts +0 -22
  10. package/dist/agent/agent.model-resolver.js +0 -67
  11. package/dist/agent/agent.process-manager.d.ts +0 -57
  12. package/dist/agent/agent.process-manager.js +0 -262
  13. package/dist/agent/agent.processing-state-manager.d.ts +0 -74
  14. package/dist/agent/agent.processing-state-manager.js +0 -87
  15. package/dist/agent/agent.prompt-loader.d.ts +0 -16
  16. package/dist/agent/agent.prompt-loader.js +0 -227
  17. package/dist/agent/agent.subagent-executor.d.ts +0 -35
  18. package/dist/agent/agent.subagent-executor.js +0 -135
  19. package/dist/bun/index.d.ts +0 -2
  20. package/dist/bun/index.js +0 -165
  21. package/dist/cli.d.ts +0 -3
  22. package/dist/cli.js +0 -22
  23. package/dist/core/crypto.d.ts +0 -29
  24. package/dist/core/crypto.js +0 -166
  25. package/dist/core/dev-server-cache.d.ts +0 -46
  26. package/dist/core/dev-server-cache.js +0 -59
  27. package/dist/core/env-manager.d.ts +0 -3
  28. package/dist/core/env-manager.js +0 -60
  29. package/dist/core/error-responses.d.ts +0 -61
  30. package/dist/core/error-responses.js +0 -64
  31. package/dist/core/logger.d.ts +0 -10
  32. package/dist/core/logger.js +0 -47
  33. package/dist/core/paths.d.ts +0 -22
  34. package/dist/core/paths.js +0 -26
  35. package/dist/core/random-words.d.ts +0 -18
  36. package/dist/core/random-words.js +0 -135
  37. package/dist/core/response-builder.d.ts +0 -50
  38. package/dist/core/response-builder.js +0 -56
  39. package/dist/core/route-helpers.d.ts +0 -47
  40. package/dist/core/route-helpers.js +0 -54
  41. package/dist/core/run-command-detector.d.ts +0 -26
  42. package/dist/core/run-command-detector.js +0 -98
  43. package/dist/core/stream-helper.d.ts +0 -44
  44. package/dist/core/stream-helper.js +0 -50
  45. package/dist/core/utils.d.ts +0 -43
  46. package/dist/core/utils.js +0 -113
  47. package/dist/core/validation.d.ts +0 -10
  48. package/dist/core/validation.js +0 -20
  49. package/dist/database/database.d.ts +0 -40
  50. package/dist/database/database.encryption.d.ts +0 -33
  51. package/dist/database/database.encryption.js +0 -62
  52. package/dist/database/database.js +0 -480
  53. package/dist/database/database.state.d.ts +0 -52
  54. package/dist/database/database.state.js +0 -119
  55. package/dist/database/database.test-utils.d.ts +0 -22
  56. package/dist/database/database.test-utils.js +0 -39
  57. package/dist/database/database.types.d.ts +0 -3
  58. package/dist/database/database.types.js +0 -2
  59. package/dist/features/agents/agents.manager.d.ts +0 -24
  60. package/dist/features/agents/agents.manager.js +0 -200
  61. package/dist/features/ask-user/ask-user.routes.d.ts +0 -9
  62. package/dist/features/ask-user/ask-user.routes.js +0 -35
  63. package/dist/features/chat/chat-delete.route.d.ts +0 -15
  64. package/dist/features/chat/chat-delete.route.js +0 -36
  65. package/dist/features/chat/chat-post.route.d.ts +0 -11
  66. package/dist/features/chat/chat-post.route.js +0 -270
  67. package/dist/features/chat/chat-stop.route.d.ts +0 -21
  68. package/dist/features/chat/chat-stop.route.js +0 -22
  69. package/dist/features/chat/chat-subscribe.route.d.ts +0 -9
  70. package/dist/features/chat/chat-subscribe.route.js +0 -71
  71. package/dist/features/chat/chat.routes.d.ts +0 -22
  72. package/dist/features/chat/chat.routes.js +0 -29
  73. package/dist/features/conversations/conversations-delete.route.d.ts +0 -16
  74. package/dist/features/conversations/conversations-delete.route.js +0 -34
  75. package/dist/features/conversations/conversations-get-all.route.d.ts +0 -16
  76. package/dist/features/conversations/conversations-get-all.route.js +0 -39
  77. package/dist/features/conversations/conversations-get-by-id.route.d.ts +0 -16
  78. package/dist/features/conversations/conversations-get-by-id.route.js +0 -38
  79. package/dist/features/conversations/conversations-get-deleted.route.d.ts +0 -15
  80. package/dist/features/conversations/conversations-get-deleted.route.js +0 -34
  81. package/dist/features/conversations/conversations-get-messages.route.d.ts +0 -16
  82. package/dist/features/conversations/conversations-get-messages.route.js +0 -49
  83. package/dist/features/conversations/conversations.content.d.ts +0 -28
  84. package/dist/features/conversations/conversations.content.js +0 -142
  85. package/dist/features/conversations/conversations.database.d.ts +0 -108
  86. package/dist/features/conversations/conversations.database.js +0 -373
  87. package/dist/features/conversations/conversations.manager.d.ts +0 -130
  88. package/dist/features/conversations/conversations.manager.js +0 -162
  89. package/dist/features/conversations/conversations.routes.d.ts +0 -21
  90. package/dist/features/conversations/conversations.routes.js +0 -38
  91. package/dist/features/conversations/token-usage.route.d.ts +0 -41
  92. package/dist/features/conversations/token-usage.route.js +0 -419
  93. package/dist/features/git/git-commit.route.d.ts +0 -12
  94. package/dist/features/git/git-commit.route.js +0 -39
  95. package/dist/features/git/git-create-branch.route.d.ts +0 -28
  96. package/dist/features/git/git-create-branch.route.js +0 -119
  97. package/dist/features/git/git-create-pr.route.d.ts +0 -13
  98. package/dist/features/git/git-create-pr.route.js +0 -50
  99. package/dist/features/git/git-create-repo.route.d.ts +0 -14
  100. package/dist/features/git/git-create-repo.route.js +0 -108
  101. package/dist/features/git/git-diff.route.d.ts +0 -30
  102. package/dist/features/git/git-diff.route.js +0 -189
  103. package/dist/features/git/git-fetch.route.d.ts +0 -12
  104. package/dist/features/git/git-fetch.route.js +0 -31
  105. package/dist/features/git/git-generate-commit-message.route.d.ts +0 -12
  106. package/dist/features/git/git-generate-commit-message.route.js +0 -76
  107. package/dist/features/git/git-generate-pr-info.route.d.ts +0 -13
  108. package/dist/features/git/git-generate-pr-info.route.js +0 -147
  109. package/dist/features/git/git-github-status.route.d.ts +0 -16
  110. package/dist/features/git/git-github-status.route.js +0 -68
  111. package/dist/features/git/git-log.route.d.ts +0 -17
  112. package/dist/features/git/git-log.route.js +0 -33
  113. package/dist/features/git/git-pr-status.route.d.ts +0 -15
  114. package/dist/features/git/git-pr-status.route.js +0 -33
  115. package/dist/features/git/git-pull.route.d.ts +0 -12
  116. package/dist/features/git/git-pull.route.js +0 -35
  117. package/dist/features/git/git-push.route.d.ts +0 -12
  118. package/dist/features/git/git-push.route.js +0 -46
  119. package/dist/features/git/git-status-cache.database.d.ts +0 -7
  120. package/dist/features/git/git-status-cache.database.js +0 -53
  121. package/dist/features/git/git-status.route.d.ts +0 -15
  122. package/dist/features/git/git-status.route.js +0 -62
  123. package/dist/features/git/git-sync-branch.route.d.ts +0 -4
  124. package/dist/features/git/git-sync-branch.route.js +0 -208
  125. package/dist/features/git/git-unified-status.route.d.ts +0 -30
  126. package/dist/features/git/git-unified-status.route.js +0 -165
  127. package/dist/features/git/git-username.route.d.ts +0 -3
  128. package/dist/features/git/git-username.route.js +0 -24
  129. package/dist/features/git/git.manager.d.ts +0 -139
  130. package/dist/features/git/git.manager.js +0 -352
  131. package/dist/features/git/git.routes.d.ts +0 -4
  132. package/dist/features/git/git.routes.js +0 -116
  133. package/dist/features/git/git.utils.d.ts +0 -82
  134. package/dist/features/git/git.utils.js +0 -1040
  135. package/dist/features/mcp/mcp.config.d.ts +0 -27
  136. package/dist/features/mcp/mcp.config.js +0 -148
  137. package/dist/features/mcp/mcp.manager.d.ts +0 -61
  138. package/dist/features/mcp/mcp.manager.js +0 -254
  139. package/dist/features/mcp/mcp.popular.json +0 -103
  140. package/dist/features/mcp/mcp.routes.d.ts +0 -13
  141. package/dist/features/mcp/mcp.routes.js +0 -159
  142. package/dist/features/mcp/mcp.types.d.ts +0 -80
  143. package/dist/features/mcp/mcp.types.js +0 -8
  144. package/dist/features/metadata/metadata.manager.d.ts +0 -126
  145. package/dist/features/metadata/metadata.manager.js +0 -423
  146. package/dist/features/models/model-info-aihubmix.d.ts +0 -25
  147. package/dist/features/models/model-info-aihubmix.js +0 -117
  148. package/dist/features/models/model-info-openrouter.d.ts +0 -25
  149. package/dist/features/models/model-info-openrouter.js +0 -104
  150. package/dist/features/models/model-info.d.ts +0 -37
  151. package/dist/features/models/model-info.js +0 -39
  152. package/dist/features/models/models-catalog.d.ts +0 -49
  153. package/dist/features/models/models-catalog.js +0 -80
  154. package/dist/features/models/models-catalog.route.d.ts +0 -43
  155. package/dist/features/models/models-catalog.route.js +0 -15
  156. package/dist/features/models/models-get-available.route.d.ts +0 -36
  157. package/dist/features/models/models-get-available.route.js +0 -66
  158. package/dist/features/models/models-get-enabled.route.d.ts +0 -33
  159. package/dist/features/models/models-get-enabled.route.js +0 -45
  160. package/dist/features/models/models-get-model-info.route.d.ts +0 -31
  161. package/dist/features/models/models-get-model-info.route.js +0 -84
  162. package/dist/features/models/models-model-disable.route.d.ts +0 -15
  163. package/dist/features/models/models-model-disable.route.js +0 -20
  164. package/dist/features/models/models-model-enable.route.d.ts +0 -13
  165. package/dist/features/models/models-model-enable.route.js +0 -20
  166. package/dist/features/models/models-provider-refresh.route.d.ts +0 -17
  167. package/dist/features/models/models-provider-refresh.route.js +0 -20
  168. package/dist/features/models/models.manager.d.ts +0 -58
  169. package/dist/features/models/models.manager.js +0 -138
  170. package/dist/features/models/models.routes.d.ts +0 -18
  171. package/dist/features/models/models.routes.js +0 -83
  172. package/dist/features/models/open-router-models.d.ts +0 -38
  173. package/dist/features/models/open-router-models.js +0 -73
  174. package/dist/features/models/openai-models.d.ts +0 -63
  175. package/dist/features/models/openai-models.js +0 -150
  176. package/dist/features/onboarding/onboarding-get-git-check.route.d.ts +0 -11
  177. package/dist/features/onboarding/onboarding-get-git-check.route.js +0 -28
  178. package/dist/features/onboarding/onboarding-get-status.route.d.ts +0 -12
  179. package/dist/features/onboarding/onboarding-get-status.route.js +0 -15
  180. package/dist/features/onboarding/onboarding-post-complete.route.d.ts +0 -12
  181. package/dist/features/onboarding/onboarding-post-complete.route.js +0 -15
  182. package/dist/features/onboarding/onboarding-post-reset.route.d.ts +0 -12
  183. package/dist/features/onboarding/onboarding-post-reset.route.js +0 -15
  184. package/dist/features/onboarding/onboarding.routes.d.ts +0 -18
  185. package/dist/features/onboarding/onboarding.routes.js +0 -28
  186. package/dist/features/project-todos/project-todos.database.d.ts +0 -38
  187. package/dist/features/project-todos/project-todos.database.js +0 -91
  188. package/dist/features/project-todos/project-todos.routes.d.ts +0 -4
  189. package/dist/features/project-todos/project-todos.routes.js +0 -94
  190. package/dist/features/projects/projects-ai-files.route.d.ts +0 -148
  191. package/dist/features/projects/projects-ai-files.route.js +0 -425
  192. package/dist/features/projects/projects-commands.route.d.ts +0 -27
  193. package/dist/features/projects/projects-commands.route.js +0 -39
  194. package/dist/features/projects/projects-create.route.d.ts +0 -19
  195. package/dist/features/projects/projects-create.route.js +0 -37
  196. package/dist/features/projects/projects-delete.route.d.ts +0 -24
  197. package/dist/features/projects/projects-delete.route.js +0 -34
  198. package/dist/features/projects/projects-get.route.d.ts +0 -47
  199. package/dist/features/projects/projects-get.route.js +0 -36
  200. package/dist/features/projects/projects-list.route.d.ts +0 -58
  201. package/dist/features/projects/projects-list.route.js +0 -59
  202. package/dist/features/projects/projects-open-folder.route.d.ts +0 -10
  203. package/dist/features/projects/projects-open-folder.route.js +0 -11
  204. package/dist/features/projects/projects-open.route.d.ts +0 -26
  205. package/dist/features/projects/projects-open.route.js +0 -49
  206. package/dist/features/projects/projects-package-scripts.route.d.ts +0 -15
  207. package/dist/features/projects/projects-package-scripts.route.js +0 -96
  208. package/dist/features/projects/projects-run-command.route.d.ts +0 -8
  209. package/dist/features/projects/projects-run-command.route.js +0 -21
  210. package/dist/features/projects/projects-run.route.d.ts +0 -51
  211. package/dist/features/projects/projects-run.route.js +0 -74
  212. package/dist/features/projects/projects-update.route.d.ts +0 -24
  213. package/dist/features/projects/projects-update.route.js +0 -81
  214. package/dist/features/projects/projects.creator.d.ts +0 -33
  215. package/dist/features/projects/projects.creator.js +0 -555
  216. package/dist/features/projects/projects.database.d.ts +0 -61
  217. package/dist/features/projects/projects.database.js +0 -212
  218. package/dist/features/projects/projects.manager.d.ts +0 -291
  219. package/dist/features/projects/projects.manager.js +0 -426
  220. package/dist/features/projects/projects.open-with.d.ts +0 -27
  221. package/dist/features/projects/projects.open-with.js +0 -156
  222. package/dist/features/projects/projects.routes.d.ts +0 -20
  223. package/dist/features/projects/projects.routes.js +0 -255
  224. package/dist/features/projects/terminal-session-manager.d.ts +0 -55
  225. package/dist/features/projects/terminal-session-manager.js +0 -90
  226. package/dist/features/providers/provider-resolver.d.ts +0 -13
  227. package/dist/features/providers/provider-resolver.js +0 -22
  228. package/dist/features/providers/providers-get-credits.route.d.ts +0 -15
  229. package/dist/features/providers/providers-get-credits.route.js +0 -51
  230. package/dist/features/providers/providers-get.route.d.ts +0 -16
  231. package/dist/features/providers/providers-get.route.js +0 -32
  232. package/dist/features/providers/providers-open-external.route.d.ts +0 -15
  233. package/dist/features/providers/providers-open-external.route.js +0 -49
  234. package/dist/features/providers/providers-post-bulk-keys.route.d.ts +0 -14
  235. package/dist/features/providers/providers-post-bulk-keys.route.js +0 -31
  236. package/dist/features/providers/providers-post-keys.route.d.ts +0 -14
  237. package/dist/features/providers/providers-post-keys.route.js +0 -25
  238. package/dist/features/providers/providers.routes.d.ts +0 -19
  239. package/dist/features/providers/providers.routes.js +0 -31
  240. package/dist/features/rules/rules-post.route.d.ts +0 -43
  241. package/dist/features/rules/rules-post.route.js +0 -89
  242. package/dist/features/rules/rules.manager.d.ts +0 -36
  243. package/dist/features/rules/rules.manager.js +0 -203
  244. package/dist/features/rules/rules.routes.d.ts +0 -12
  245. package/dist/features/rules/rules.routes.js +0 -13
  246. package/dist/features/run/run-get-running.route.d.ts +0 -15
  247. package/dist/features/run/run-get-running.route.js +0 -21
  248. package/dist/features/run/run-post-start.route.d.ts +0 -8
  249. package/dist/features/run/run-post-start.route.js +0 -21
  250. package/dist/features/run/run-post-stop.route.d.ts +0 -15
  251. package/dist/features/run/run-post-stop.route.js +0 -24
  252. package/dist/features/run/run-post-suggest.route.d.ts +0 -15
  253. package/dist/features/run/run-post-suggest.route.js +0 -21
  254. package/dist/features/run/run-put-command.route.d.ts +0 -15
  255. package/dist/features/run/run-put-command.route.js +0 -24
  256. package/dist/features/run/run.routes.d.ts +0 -19
  257. package/dist/features/run/run.routes.js +0 -31
  258. package/dist/features/scaffold/index.d.ts +0 -7
  259. package/dist/features/scaffold/index.js +0 -5
  260. package/dist/features/scaffold/scaffold-get-templates.route.d.ts +0 -27
  261. package/dist/features/scaffold/scaffold-get-templates.route.js +0 -17
  262. package/dist/features/scaffold/scaffold-post.route.d.ts +0 -8
  263. package/dist/features/scaffold/scaffold-post.route.js +0 -30
  264. package/dist/features/scaffold/scaffold.routes.d.ts +0 -10
  265. package/dist/features/scaffold/scaffold.routes.js +0 -16
  266. package/dist/features/scaffold/scaffold.runner.d.ts +0 -48
  267. package/dist/features/scaffold/scaffold.runner.js +0 -475
  268. package/dist/features/scaffold/scaffold.types.d.ts +0 -26
  269. package/dist/features/scaffold/scaffold.types.js +0 -5
  270. package/dist/features/skills/skills.activation.d.ts +0 -31
  271. package/dist/features/skills/skills.activation.js +0 -155
  272. package/dist/features/skills/skills.manager.d.ts +0 -35
  273. package/dist/features/skills/skills.manager.js +0 -251
  274. package/dist/features/slash-commands/slash-commands-delete.route.d.ts +0 -23
  275. package/dist/features/slash-commands/slash-commands-delete.route.js +0 -36
  276. package/dist/features/slash-commands/slash-commands-get.route.d.ts +0 -53
  277. package/dist/features/slash-commands/slash-commands-get.route.js +0 -54
  278. package/dist/features/slash-commands/slash-commands-post.route.d.ts +0 -39
  279. package/dist/features/slash-commands/slash-commands-post.route.js +0 -70
  280. package/dist/features/slash-commands/slash-commands-put.route.d.ts +0 -23
  281. package/dist/features/slash-commands/slash-commands-put.route.js +0 -36
  282. package/dist/features/slash-commands/slash-commands.manager.d.ts +0 -46
  283. package/dist/features/slash-commands/slash-commands.manager.js +0 -265
  284. package/dist/features/slash-commands/slash-commands.routes.d.ts +0 -13
  285. package/dist/features/slash-commands/slash-commands.routes.js +0 -20
  286. package/dist/features/threads/threads-ai-files.route.d.ts +0 -153
  287. package/dist/features/threads/threads-ai-files.route.js +0 -287
  288. package/dist/features/threads/threads-conversation-folder-path.route.d.ts +0 -14
  289. package/dist/features/threads/threads-conversation-folder-path.route.js +0 -23
  290. package/dist/features/threads/threads-create.route.d.ts +0 -22
  291. package/dist/features/threads/threads-create.route.js +0 -60
  292. package/dist/features/threads/threads-delete.route.d.ts +0 -25
  293. package/dist/features/threads/threads-delete.route.js +0 -35
  294. package/dist/features/threads/threads-files.route.d.ts +0 -15
  295. package/dist/features/threads/threads-files.route.js +0 -20
  296. package/dist/features/threads/threads-fix-comments.route.d.ts +0 -26
  297. package/dist/features/threads/threads-fix-comments.route.js +0 -45
  298. package/dist/features/threads/threads-get.route.d.ts +0 -30
  299. package/dist/features/threads/threads-get.route.js +0 -38
  300. package/dist/features/threads/threads-list.route.d.ts +0 -56
  301. package/dist/features/threads/threads-list.route.js +0 -58
  302. package/dist/features/threads/threads-messages.route.d.ts +0 -28
  303. package/dist/features/threads/threads-messages.route.js +0 -110
  304. package/dist/features/threads/threads-open.route.d.ts +0 -26
  305. package/dist/features/threads/threads-open.route.js +0 -62
  306. package/dist/features/threads/threads-select.route.d.ts +0 -25
  307. package/dist/features/threads/threads-select.route.js +0 -35
  308. package/dist/features/threads/threads-update.route.d.ts +0 -15
  309. package/dist/features/threads/threads-update.route.js +0 -30
  310. package/dist/features/threads/threads.database.d.ts +0 -68
  311. package/dist/features/threads/threads.database.js +0 -215
  312. package/dist/features/threads/threads.manager.d.ts +0 -204
  313. package/dist/features/threads/threads.manager.js +0 -505
  314. package/dist/features/threads/threads.routes.d.ts +0 -20
  315. package/dist/features/threads/threads.routes.js +0 -230
  316. package/dist/features/todos/todos.database.d.ts +0 -14
  317. package/dist/features/todos/todos.database.js +0 -31
  318. package/dist/features/updates/updates.routes.d.ts +0 -13
  319. package/dist/features/updates/updates.routes.js +0 -40
  320. package/dist/index.d.ts +0 -3
  321. package/dist/project-analyzer.d.ts +0 -26
  322. package/dist/project-analyzer.js +0 -307
  323. package/dist/server.d.ts +0 -12
  324. package/dist/server.js +0 -142
  325. package/dist/tools/agent-tool.d.ts +0 -49
  326. package/dist/tools/agent-tool.js +0 -131
  327. package/dist/tools/ask-user.d.ts +0 -25
  328. package/dist/tools/ask-user.js +0 -74
  329. package/dist/tools/ast-grep.d.ts +0 -28
  330. package/dist/tools/ast-grep.js +0 -273
  331. package/dist/tools/bash.d.ts +0 -33
  332. package/dist/tools/bash.js +0 -186
  333. package/dist/tools/edit-diff.d.ts +0 -24
  334. package/dist/tools/edit-diff.js +0 -136
  335. package/dist/tools/edit.d.ts +0 -28
  336. package/dist/tools/edit.js +0 -78
  337. package/dist/tools/find.d.ts +0 -31
  338. package/dist/tools/find.js +0 -117
  339. package/dist/tools/grep.d.ts +0 -37
  340. package/dist/tools/grep.js +0 -231
  341. package/dist/tools/index.d.ts +0 -93
  342. package/dist/tools/index.js +0 -110
  343. package/dist/tools/ls.d.ts +0 -31
  344. package/dist/tools/ls.js +0 -108
  345. package/dist/tools/mcp-tools.d.ts +0 -31
  346. package/dist/tools/mcp-tools.js +0 -59
  347. package/dist/tools/path-utils.d.ts +0 -14
  348. package/dist/tools/path-utils.js +0 -87
  349. package/dist/tools/read.d.ts +0 -27
  350. package/dist/tools/read.js +0 -86
  351. package/dist/tools/resolve-bin.d.ts +0 -5
  352. package/dist/tools/resolve-bin.js +0 -28
  353. package/dist/tools/shell.d.ts +0 -7
  354. package/dist/tools/shell.js +0 -143
  355. package/dist/tools/skill-reference-tool.d.ts +0 -30
  356. package/dist/tools/skill-reference-tool.js +0 -171
  357. package/dist/tools/skill-tool.d.ts +0 -33
  358. package/dist/tools/skill-tool.js +0 -213
  359. package/dist/tools/todo.d.ts +0 -20
  360. package/dist/tools/todo.js +0 -168
  361. package/dist/tools/tool-helpers.d.ts +0 -78
  362. package/dist/tools/tool-helpers.js +0 -109
  363. package/dist/tools/truncate.d.ts +0 -31
  364. package/dist/tools/truncate.js +0 -164
  365. package/dist/tools/write.d.ts +0 -21
  366. package/dist/tools/write.js +0 -65
@@ -1,14 +0,0 @@
1
- /**
2
- * POST /api/providers/keys
3
- * Save a provider API key
4
- */
5
- import type { Context } from "hono";
6
- import type { MetadataManager } from "../metadata/metadata.manager.js";
7
- export declare function postProviderKeys(c: Context, metadataManager: MetadataManager): Promise<(Response & import("hono").TypedResponse<{
8
- error: string;
9
- }, 400, "json">) | (Response & import("hono").TypedResponse<{
10
- success: true;
11
- }, import("hono/utils/http-status").ContentfulStatusCode, "json">) | (Response & import("hono").TypedResponse<{
12
- error: string;
13
- }, 500, "json">)>;
14
- //# sourceMappingURL=providers-post-keys.route.d.ts.map
@@ -1,25 +0,0 @@
1
- /**
2
- * POST /api/providers/keys
3
- * Save a provider API key
4
- */
5
- import { updateEnvFile } from "../../core/env-manager.js";
6
- import { resolveProviderKeyName } from "./provider-resolver.js";
7
- export async function postProviderKeys(c, metadataManager) {
8
- try {
9
- const { providerName, apiKey } = await c.req.json();
10
- if (!providerName) {
11
- return c.json({ error: "providerName is required" }, 400);
12
- }
13
- await metadataManager.saveProviderKey(providerName, apiKey);
14
- // Also update .env if provider has a keyName (from catalog or hardcoded)
15
- const keyName = await resolveProviderKeyName(providerName);
16
- if (keyName) {
17
- await updateEnvFile({ [keyName]: apiKey });
18
- }
19
- return c.json({ success: true });
20
- }
21
- catch (error) {
22
- return c.json({ error: `Failed to save provider key: ${String(error)}` }, 500);
23
- }
24
- }
25
- //# sourceMappingURL=providers-post-keys.route.js.map
@@ -1,19 +0,0 @@
1
- /**
2
- * Provider routes for the REST API
3
- *
4
- * Handles all provider-related operations:
5
- * - GET /api/providers - List all built-in providers
6
- * - POST /api/providers/keys - Save a provider API key
7
- * - POST /api/providers/bulk-keys - Save all provider API keys at once
8
- * - GET /api/providers/:name/credits - Get current balance for a provider
9
- * - POST /api/providers/open-external - Open an external URL
10
- */
11
- import { Hono } from "hono";
12
- import type { MetadataManager } from "../metadata/metadata.manager.js";
13
- /**
14
- * Creates provider routes
15
- * @param metadataManager - Manager for metadata persistence
16
- * @returns Hono router with provider routes
17
- */
18
- export declare function createProviderRoutes(metadataManager: MetadataManager): Hono;
19
- //# sourceMappingURL=providers.routes.d.ts.map
@@ -1,31 +0,0 @@
1
- /**
2
- * Provider routes for the REST API
3
- *
4
- * Handles all provider-related operations:
5
- * - GET /api/providers - List all built-in providers
6
- * - POST /api/providers/keys - Save a provider API key
7
- * - POST /api/providers/bulk-keys - Save all provider API keys at once
8
- * - GET /api/providers/:name/credits - Get current balance for a provider
9
- * - POST /api/providers/open-external - Open an external URL
10
- */
11
- import { Hono } from "hono";
12
- import { getProviders } from "./providers-get.route.js";
13
- import { postProviderKeys } from "./providers-post-keys.route.js";
14
- import { postProviderBulkKeys } from "./providers-post-bulk-keys.route.js";
15
- import { getProviderCredits } from "./providers-get-credits.route.js";
16
- import { openExternalUrl } from "./providers-open-external.route.js";
17
- /**
18
- * Creates provider routes
19
- * @param metadataManager - Manager for metadata persistence
20
- * @returns Hono router with provider routes
21
- */
22
- export function createProviderRoutes(metadataManager) {
23
- const router = new Hono();
24
- router.get("/", (c) => getProviders(c, metadataManager));
25
- router.post("/keys", (c) => postProviderKeys(c, metadataManager));
26
- router.post("/bulk-keys", (c) => postProviderBulkKeys(c, metadataManager));
27
- router.get("/:name/credits", (c) => getProviderCredits(c, metadataManager));
28
- router.post("/open-external", (c) => openExternalUrl(c));
29
- return router;
30
- }
31
- //# sourceMappingURL=providers.routes.js.map
@@ -1,43 +0,0 @@
1
- /**
2
- * POST /api/rules
3
- * Create a new rule
4
- * Body: { projectId, name, description, alwaysApply, scope }
5
- */
6
- import type { Context } from "hono";
7
- import type { ProjectManager } from "../projects/projects.manager.js";
8
- export declare function createRule(c: Context, projectManager: ProjectManager): Promise<(Response & import("hono").TypedResponse<{
9
- error: {
10
- code: string;
11
- message: string;
12
- timestamp: string;
13
- };
14
- }, 400, "json">) | (Response & import("hono").TypedResponse<{
15
- error: {
16
- code: string;
17
- message: string;
18
- timestamp: string;
19
- };
20
- }, 501, "json">) | (Response & import("hono").TypedResponse<{
21
- error: {
22
- code: string;
23
- message: string;
24
- timestamp: string;
25
- };
26
- }, 404, "json">) | (Response & import("hono").TypedResponse<{
27
- success: true;
28
- rule: {
29
- name: any;
30
- path: string;
31
- alwaysApply: any;
32
- scope: any;
33
- description: any;
34
- };
35
- }, 201, "json">) | (Response & import("hono").TypedResponse<{
36
- error: {
37
- code: string;
38
- message: string;
39
- details: import("hono/utils/types").JSONValue;
40
- timestamp: string;
41
- };
42
- }, 500, "json">)>;
43
- //# sourceMappingURL=rules-post.route.d.ts.map
@@ -1,89 +0,0 @@
1
- /**
2
- * POST /api/rules
3
- * Create a new rule
4
- * Body: { projectId, name, description, alwaysApply, scope }
5
- */
6
- import { promises as fs } from "fs";
7
- import path from "path";
8
- export async function createRule(c, projectManager) {
9
- try {
10
- const body = await c.req.json();
11
- const { projectId, name, description, alwaysApply, scope } = body;
12
- if (!projectId || !name || !description) {
13
- return c.json({
14
- error: {
15
- code: "MISSING_FIELDS",
16
- message: "projectId, name, and description are required",
17
- timestamp: new Date().toISOString(),
18
- },
19
- }, 400);
20
- }
21
- if (scope !== "local" && scope !== "global") {
22
- return c.json({
23
- error: {
24
- code: "INVALID_SCOPE",
25
- message: 'scope must be either "local" or "global"',
26
- timestamp: new Date().toISOString(),
27
- },
28
- }, 400);
29
- }
30
- // For now, only support local scope
31
- if (scope === "global") {
32
- return c.json({
33
- error: {
34
- code: "NOT_IMPLEMENTED",
35
- message: "Global scope is not yet implemented",
36
- timestamp: new Date().toISOString(),
37
- },
38
- }, 501);
39
- }
40
- // Get project information to find repository path
41
- const project = await projectManager.getProject(projectId);
42
- if (!project) {
43
- return c.json({
44
- error: {
45
- code: "PROJECT_NOT_FOUND",
46
- message: `Project not found: ${projectId}`,
47
- timestamp: new Date().toISOString(),
48
- },
49
- }, 404);
50
- }
51
- // Use the project's repository path
52
- const projectPath = project.path;
53
- // Create .agents/rules directory if it doesn't exist
54
- const rulesDir = path.join(projectPath, ".agents", "rules");
55
- await fs.mkdir(rulesDir, { recursive: true });
56
- // Create rule file content with front matter
57
- const ruleContent = `---
58
- description: ${description.replace(/"/g, '\\"')}
59
- alwaysApply: ${alwaysApply}
60
- ---
61
-
62
- Describe your rules here as markdown which will be used when Tarsk sees is prompted with a request that is related to the description of this rule.`;
63
- // Write rule file
64
- const ruleFilePath = path.join(rulesDir, `${name}.md`);
65
- await fs.writeFile(ruleFilePath, ruleContent, "utf-8");
66
- return c.json({
67
- success: true,
68
- rule: {
69
- name,
70
- path: `.agents/rules/${name}.md`,
71
- alwaysApply,
72
- scope,
73
- description,
74
- },
75
- }, 201);
76
- }
77
- catch (error) {
78
- console.error("Failed to create rule:", error);
79
- return c.json({
80
- error: {
81
- code: "CREATE_FAILED",
82
- message: error instanceof Error ? error.message : "Failed to create rule",
83
- details: error,
84
- timestamp: new Date().toISOString(),
85
- },
86
- }, 500);
87
- }
88
- }
89
- //# sourceMappingURL=rules-post.route.js.map
@@ -1,36 +0,0 @@
1
- /**
2
- * Rule Manager
3
- *
4
- * Loads and manages agent rules from .md/.mdc files with frontmatter.
5
- * Rules can be stored in:
6
- * - Project-specific: ./.agents/rules/ (relative to thread path)
7
- * - Global: ~/.agents/rules/
8
- *
9
- * Rules with alwaysApply: true are loaded in full into the context.
10
- * Rules with alwaysApply: false or missing are loaded as references.
11
- */
12
- import type { Rule } from "@tarsk/shared";
13
- /**
14
- * RuleManager handles loading and managing agent rules
15
- */
16
- export declare class RuleManager {
17
- /**
18
- * Load all available rules for a given thread
19
- * Project rules override global ones with the same name
20
- */
21
- loadRules(threadPath: string): Promise<Rule[]>;
22
- /**
23
- * Load rules from a specific directory (recursive)
24
- */
25
- private loadRulesFromDir;
26
- /**
27
- * Get a specific rule by name
28
- */
29
- getRule(name: string, threadPath: string): Promise<Rule | null>;
30
- /**
31
- * Format rules for inclusion in system prompt
32
- * Returns formatted string with alwaysApply rules in full and others as references
33
- */
34
- formatRulesForPrompt(rules: Rule[]): string;
35
- }
36
- //# sourceMappingURL=rules.manager.d.ts.map
@@ -1,203 +0,0 @@
1
- /**
2
- * Rule Manager
3
- *
4
- * Loads and manages agent rules from .md/.mdc files with frontmatter.
5
- * Rules can be stored in:
6
- * - Project-specific: ./.agents/rules/ (relative to thread path)
7
- * - Global: ~/.agents/rules/
8
- *
9
- * Rules with alwaysApply: true are loaded in full into the context.
10
- * Rules with alwaysApply: false or missing are loaded as references.
11
- */
12
- import { readdir, readFile } from "fs/promises";
13
- import { join, relative } from "path";
14
- import { existsSync } from "fs";
15
- import { homedir } from "os";
16
- /**
17
- * Parse frontmatter from rule markdown content
18
- * Returns { metadata, content } where content is the body after frontmatter
19
- */
20
- function parseRuleFrontmatter(markdown) {
21
- const lines = markdown.split("\n");
22
- // Check if file starts with ---
23
- if (lines[0]?.trim() !== "---") {
24
- return {
25
- metadata: {},
26
- content: markdown.trim(),
27
- };
28
- }
29
- // Find the closing ---
30
- let endIndex = -1;
31
- for (let i = 1; i < lines.length; i++) {
32
- if (lines[i]?.trim() === "---") {
33
- endIndex = i;
34
- break;
35
- }
36
- }
37
- // No closing --- found
38
- if (endIndex === -1) {
39
- return {
40
- metadata: {},
41
- content: markdown.trim(),
42
- };
43
- }
44
- // Parse frontmatter
45
- const frontmatterLines = lines.slice(1, endIndex);
46
- const metadata = {};
47
- for (const line of frontmatterLines) {
48
- const colonIndex = line.indexOf(":");
49
- if (colonIndex === -1)
50
- continue;
51
- const key = line.slice(0, colonIndex).trim();
52
- let value = line.slice(colonIndex + 1).trim();
53
- // Remove surrounding quotes if present
54
- if ((value.startsWith('"') && value.endsWith('"')) ||
55
- (value.startsWith("'") && value.endsWith("'"))) {
56
- value = value.slice(1, -1);
57
- }
58
- // Map YAML keys to TypeScript property names
59
- if (key === "description") {
60
- metadata.description = value;
61
- }
62
- else if (key === "alwaysApply") {
63
- // Parse boolean value
64
- metadata.alwaysApply = value.toLowerCase() === "true";
65
- }
66
- }
67
- // Content is everything after the closing ---
68
- const content = lines
69
- .slice(endIndex + 1)
70
- .join("\n")
71
- .trim();
72
- return { metadata, content };
73
- }
74
- /**
75
- * Get the global rules directory path
76
- */
77
- function getGlobalRulesDir() {
78
- return join(homedir(), ".agents", "rules");
79
- }
80
- /**
81
- * Get the project-specific rules directory path
82
- */
83
- function getProjectRulesDir(threadPath) {
84
- return join(threadPath, ".agents", "rules");
85
- }
86
- /**
87
- * RuleManager handles loading and managing agent rules
88
- */
89
- export class RuleManager {
90
- /**
91
- * Load all available rules for a given thread
92
- * Project rules override global ones with the same name
93
- */
94
- async loadRules(threadPath) {
95
- const rules = new Map();
96
- // Load global rules first
97
- const globalDir = getGlobalRulesDir();
98
- if (existsSync(globalDir)) {
99
- const globalRules = await this.loadRulesFromDir(globalDir, threadPath, "global");
100
- for (const rule of globalRules) {
101
- rules.set(rule.name, rule);
102
- }
103
- }
104
- // Load project rules (override global)
105
- const projectDir = getProjectRulesDir(threadPath);
106
- if (existsSync(projectDir)) {
107
- const projectRules = await this.loadRulesFromDir(projectDir, threadPath, "project");
108
- for (const rule of projectRules) {
109
- rules.set(rule.name, rule);
110
- }
111
- }
112
- return Array.from(rules.values());
113
- }
114
- /**
115
- * Load rules from a specific directory (recursive)
116
- */
117
- async loadRulesFromDir(dir, threadPath, scope) {
118
- const rules = [];
119
- try {
120
- const entries = await readdir(dir, { withFileTypes: true });
121
- for (const entry of entries) {
122
- const fullPath = join(dir, entry.name);
123
- if (entry.isDirectory()) {
124
- // Recursively load from subdirectories
125
- const subRules = await this.loadRulesFromDir(fullPath, threadPath, scope);
126
- rules.push(...subRules);
127
- }
128
- else if (entry.isFile() && (entry.name.endsWith(".md") || entry.name.endsWith(".mdc"))) {
129
- try {
130
- // Read and parse rule file
131
- const fileContent = await readFile(fullPath, "utf-8");
132
- const { metadata, content } = parseRuleFrontmatter(fileContent);
133
- // Generate rule name from filename (without extension)
134
- const ruleName = entry.name.replace(/\.(md|mdc)$/, "");
135
- // Calculate relative path from thread root
136
- const relativePath = relative(threadPath, fullPath);
137
- // Create rule object
138
- const rule = {
139
- name: ruleName,
140
- content,
141
- metadata: {
142
- description: metadata.description,
143
- alwaysApply: metadata.alwaysApply ?? false, // Default to false
144
- },
145
- scope,
146
- filePath: fullPath,
147
- relativePath,
148
- };
149
- rules.push(rule);
150
- }
151
- catch (error) {
152
- console.error(`Failed to load rule from ${entry.name}:`, error);
153
- }
154
- }
155
- }
156
- }
157
- catch (error) {
158
- // Directory doesn't exist or can't be read - that's okay
159
- console.error(`Failed to load rules from ${dir}:`, error);
160
- }
161
- return rules;
162
- }
163
- /**
164
- * Get a specific rule by name
165
- */
166
- async getRule(name, threadPath) {
167
- const rules = await this.loadRules(threadPath);
168
- return rules.find((rule) => rule.name === name) ?? null;
169
- }
170
- /**
171
- * Format rules for inclusion in system prompt
172
- * Returns formatted string with alwaysApply rules in full and others as references
173
- */
174
- formatRulesForPrompt(rules) {
175
- if (rules.length === 0) {
176
- return "";
177
- }
178
- let rulesSection = "\n\n# Rules\n\n";
179
- const alwaysApplyRules = rules.filter((rule) => rule.metadata.alwaysApply);
180
- const conditionalRules = rules.filter((rule) => !rule.metadata.alwaysApply);
181
- if (alwaysApplyRules.length > 0) {
182
- rulesSection += "## Always-Applicable Rules\n\n";
183
- for (const rule of alwaysApplyRules) {
184
- rulesSection += `### ${rule.name}\n\n`;
185
- if (rule.metadata.description) {
186
- rulesSection += `**Description**: ${rule.metadata.description}\n\n`;
187
- }
188
- rulesSection += rule.content;
189
- rulesSection += "\n\n---\n\n";
190
- }
191
- }
192
- if (conditionalRules.length > 0) {
193
- rulesSection += "## Conditional Rules\n\n";
194
- for (const rule of conditionalRules) {
195
- const description = rule.metadata.description ?? "various guidelines";
196
- rulesSection += `- Follow rules from ${rule.relativePath} if the user asks about ${description}\n`;
197
- }
198
- rulesSection += "\n";
199
- }
200
- return rulesSection;
201
- }
202
- }
203
- //# sourceMappingURL=rules.manager.js.map
@@ -1,12 +0,0 @@
1
- /**
2
- * Rules API Routes
3
- *
4
- * Endpoints for managing and querying rules
5
- */
6
- import { Hono } from "hono";
7
- import type { ProjectManager } from "../projects/projects.manager.js";
8
- /**
9
- * Create rule routes
10
- */
11
- export declare function createRuleRoutes(router: Hono, projectManager: ProjectManager): void;
12
- //# sourceMappingURL=rules.routes.d.ts.map
@@ -1,13 +0,0 @@
1
- /**
2
- * Rules API Routes
3
- *
4
- * Endpoints for managing and querying rules
5
- */
6
- import { createRule } from "./rules-post.route.js";
7
- /**
8
- * Create rule routes
9
- */
10
- export function createRuleRoutes(router, projectManager) {
11
- router.post("/api/rules", (c) => createRule(c, projectManager));
12
- }
13
- //# sourceMappingURL=rules.routes.js.map
@@ -1,15 +0,0 @@
1
- /**
2
- * GET /api/projects/:id/running
3
- * Check if a process is running for a project
4
- */
5
- import type { Context } from "hono";
6
- import type { ProjectManager } from "../projects/projects.manager.js";
7
- export declare function getRunning(c: Context, projectManager: ProjectManager): Promise<(Response & import("hono").TypedResponse<{
8
- error: {
9
- code: string;
10
- message: string;
11
- details?: import("hono/utils/types").JSONValue | undefined;
12
- timestamp: string;
13
- };
14
- }, any, "json">) | (Response & import("hono").TypedResponse<import("hono/utils/types").JSONValue, any, "json">)>;
15
- //# sourceMappingURL=run-get-running.route.d.ts.map
@@ -1,21 +0,0 @@
1
- /**
2
- * GET /api/projects/:id/running
3
- * Check if a process is running for a project
4
- */
5
- import { errorResponse, successResponse } from "../../core/route-helpers.js";
6
- import { ErrorCodes } from "../../core/error-responses.js";
7
- export async function getRunning(c, projectManager) {
8
- try {
9
- const projectId = c.req.param("id");
10
- if (!projectId) {
11
- return errorResponse(c, ErrorCodes.INVALID_REQUEST, "Project ID is required", 400);
12
- }
13
- const isRunning = await projectManager.isProcessRunning(projectId);
14
- return successResponse(c, { isRunning });
15
- }
16
- catch (error) {
17
- const errorMessage = error instanceof Error ? error.message : String(error);
18
- return errorResponse(c, ErrorCodes.CHECK_RUNNING_ERROR, "Failed to check running status", 500, errorMessage);
19
- }
20
- }
21
- //# sourceMappingURL=run-get-running.route.js.map
@@ -1,8 +0,0 @@
1
- /**
2
- * POST /api/projects/:id/run
3
- * Starts the dev server process
4
- */
5
- import type { Context } from "hono";
6
- import type { ProjectManager } from "../projects/projects.manager.js";
7
- export declare function postRunStart(c: Context, projectManager: ProjectManager): Promise<Response>;
8
- //# sourceMappingURL=run-post-start.route.d.ts.map
@@ -1,21 +0,0 @@
1
- /**
2
- * POST /api/projects/:id/run
3
- * Starts the dev server process
4
- */
5
- import { streamAsyncGenerator } from "../../core/stream-helper.js";
6
- import { errorResponse } from "../../core/route-helpers.js";
7
- import { ErrorCodes } from "../../core/error-responses.js";
8
- export async function postRunStart(c, projectManager) {
9
- try {
10
- const projectId = c.req.param("id");
11
- if (!projectId) {
12
- return errorResponse(c, ErrorCodes.INVALID_REQUEST, "Project ID is required", 400);
13
- }
14
- return streamAsyncGenerator(c, projectManager.startRunningProcess(projectId));
15
- }
16
- catch (error) {
17
- const errorMessage = error instanceof Error ? error.message : String(error);
18
- return errorResponse(c, ErrorCodes.RUN_PROCESS_ERROR, "Failed to start process", 500, errorMessage);
19
- }
20
- }
21
- //# sourceMappingURL=run-post-start.route.js.map
@@ -1,15 +0,0 @@
1
- /**
2
- * POST /api/projects/:id/stop
3
- * Stops the dev server process
4
- */
5
- import type { Context } from "hono";
6
- import type { ProjectManager } from "../projects/projects.manager.js";
7
- export declare function postRunStop(c: Context, projectManager: ProjectManager): Promise<(Response & import("hono").TypedResponse<{
8
- error: {
9
- code: string;
10
- message: string;
11
- details?: import("hono/utils/types").JSONValue | undefined;
12
- timestamp: string;
13
- };
14
- }, any, "json">) | (Response & import("hono").TypedResponse<import("hono/utils/types").JSONValue, any, "json">)>;
15
- //# sourceMappingURL=run-post-stop.route.d.ts.map
@@ -1,24 +0,0 @@
1
- /**
2
- * POST /api/projects/:id/stop
3
- * Stops the dev server process
4
- */
5
- import { errorResponse, successResponse } from "../../core/route-helpers.js";
6
- import { ErrorCodes } from "../../core/error-responses.js";
7
- export async function postRunStop(c, projectManager) {
8
- try {
9
- const projectId = c.req.param("id");
10
- if (!projectId) {
11
- return errorResponse(c, ErrorCodes.INVALID_REQUEST, "Project ID is required", 400);
12
- }
13
- const stopped = await projectManager.stopRunningProcess(projectId);
14
- if (!stopped) {
15
- return errorResponse(c, ErrorCodes.NO_PROCESS_RUNNING, "No process running for this project", 400);
16
- }
17
- return successResponse(c, { success: true, message: "Process stopped" });
18
- }
19
- catch (error) {
20
- const errorMessage = error instanceof Error ? error.message : String(error);
21
- return errorResponse(c, ErrorCodes.STOP_PROCESS_ERROR, "Failed to stop process", 500, errorMessage);
22
- }
23
- }
24
- //# sourceMappingURL=run-post-stop.route.js.map
@@ -1,15 +0,0 @@
1
- /**
2
- * POST /api/projects/:id/run-suggest
3
- * Suggests a run command based on package.json
4
- */
5
- import type { Context } from "hono";
6
- import type { ProjectManager } from "../projects/projects.manager.js";
7
- export declare function postRunSuggest(c: Context, projectManager: ProjectManager): Promise<(Response & import("hono").TypedResponse<{
8
- error: {
9
- code: string;
10
- message: string;
11
- details?: import("hono/utils/types").JSONValue | undefined;
12
- timestamp: string;
13
- };
14
- }, any, "json">) | (Response & import("hono").TypedResponse<import("hono/utils/types").JSONValue, any, "json">)>;
15
- //# sourceMappingURL=run-post-suggest.route.d.ts.map
@@ -1,21 +0,0 @@
1
- /**
2
- * POST /api/projects/:id/run-suggest
3
- * Suggests a run command based on package.json
4
- */
5
- import { errorResponse, successResponse } from "../../core/route-helpers.js";
6
- import { ErrorCodes } from "../../core/error-responses.js";
7
- export async function postRunSuggest(c, projectManager) {
8
- try {
9
- const projectId = c.req.param("id");
10
- if (!projectId) {
11
- return errorResponse(c, ErrorCodes.INVALID_REQUEST, "Project ID is required", 400);
12
- }
13
- const runCommand = await projectManager.suggestRunCommand(projectId);
14
- return successResponse(c, { runCommand });
15
- }
16
- catch (error) {
17
- const errorMessage = error instanceof Error ? error.message : String(error);
18
- return errorResponse(c, ErrorCodes.SUGGEST_RUN_COMMAND_ERROR, "Failed to suggest run command", 500, errorMessage);
19
- }
20
- }
21
- //# sourceMappingURL=run-post-suggest.route.js.map
@@ -1,15 +0,0 @@
1
- /**
2
- * PUT /api/projects/:id/run-command
3
- * Update the run command for a project
4
- */
5
- import type { Context } from "hono";
6
- import type { ProjectManager } from "../projects/projects.manager.js";
7
- export declare function putRunCommand(c: Context, projectManager: ProjectManager): Promise<(Response & import("hono").TypedResponse<{
8
- error: {
9
- code: string;
10
- message: string;
11
- details?: import("hono/utils/types").JSONValue | undefined;
12
- timestamp: string;
13
- };
14
- }, any, "json">) | (Response & import("hono").TypedResponse<import("hono/utils/types").JSONValue, any, "json">)>;
15
- //# sourceMappingURL=run-put-command.route.d.ts.map