@kortix/sdk 0.9.98

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 (618) hide show
  1. package/README.md +313 -0
  2. package/dist/files/client.d.ts +96 -0
  3. package/dist/files/client.d.ts.map +1 -0
  4. package/dist/files/client.js +346 -0
  5. package/dist/files/client.js.map +1 -0
  6. package/dist/files/types.d.ts +82 -0
  7. package/dist/files/types.d.ts.map +1 -0
  8. package/dist/files/types.js +6 -0
  9. package/dist/files/types.js.map +1 -0
  10. package/dist/index.d.ts +119 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +93 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/kortix.d.ts +897 -0
  15. package/dist/kortix.d.ts.map +1 -0
  16. package/dist/kortix.js +772 -0
  17. package/dist/kortix.js.map +1 -0
  18. package/dist/opencode/client.d.ts +89 -0
  19. package/dist/opencode/client.d.ts.map +1 -0
  20. package/dist/opencode/client.js +191 -0
  21. package/dist/opencode/client.js.map +1 -0
  22. package/dist/opencode/env.d.ts +13 -0
  23. package/dist/opencode/env.d.ts.map +1 -0
  24. package/dist/opencode/env.js +63 -0
  25. package/dist/opencode/env.js.map +1 -0
  26. package/dist/opencode/kortix-master.d.ts +487 -0
  27. package/dist/opencode/kortix-master.d.ts.map +1 -0
  28. package/dist/opencode/kortix-master.js +313 -0
  29. package/dist/opencode/kortix-master.js.map +1 -0
  30. package/dist/opencode/triggers.d.ts +6 -0
  31. package/dist/opencode/triggers.d.ts.map +1 -0
  32. package/dist/opencode/triggers.js +34 -0
  33. package/dist/opencode/triggers.js.map +1 -0
  34. package/dist/platform/api/errors.d.ts +106 -0
  35. package/dist/platform/api/errors.d.ts.map +1 -0
  36. package/dist/platform/api/errors.js +137 -0
  37. package/dist/platform/api/errors.js.map +1 -0
  38. package/dist/platform/api-client.d.ts +35 -0
  39. package/dist/platform/api-client.d.ts.map +1 -0
  40. package/dist/platform/api-client.js +279 -0
  41. package/dist/platform/api-client.js.map +1 -0
  42. package/dist/platform/auth-core.d.ts +60 -0
  43. package/dist/platform/auth-core.d.ts.map +1 -0
  44. package/dist/platform/auth-core.js +104 -0
  45. package/dist/platform/auth-core.js.map +1 -0
  46. package/dist/platform/auth.d.ts +88 -0
  47. package/dist/platform/auth.d.ts.map +1 -0
  48. package/dist/platform/auth.js +161 -0
  49. package/dist/platform/auth.js.map +1 -0
  50. package/dist/platform/config-node.d.ts +33 -0
  51. package/dist/platform/config-node.d.ts.map +1 -0
  52. package/dist/platform/config-node.js +63 -0
  53. package/dist/platform/config-node.js.map +1 -0
  54. package/dist/platform/config.d.ts +77 -0
  55. package/dist/platform/config.d.ts.map +1 -0
  56. package/dist/platform/config.js +62 -0
  57. package/dist/platform/config.js.map +1 -0
  58. package/dist/platform/feature-flags.d.ts +25 -0
  59. package/dist/platform/feature-flags.d.ts.map +1 -0
  60. package/dist/platform/feature-flags.js +114 -0
  61. package/dist/platform/feature-flags.js.map +1 -0
  62. package/dist/platform/fresh-sessions.d.ts +4 -0
  63. package/dist/platform/fresh-sessions.d.ts.map +1 -0
  64. package/dist/platform/fresh-sessions.js +22 -0
  65. package/dist/platform/fresh-sessions.js.map +1 -0
  66. package/dist/platform/instance-routes.d.ts +17 -0
  67. package/dist/platform/instance-routes.d.ts.map +1 -0
  68. package/dist/platform/instance-routes.js +105 -0
  69. package/dist/platform/instance-routes.js.map +1 -0
  70. package/dist/platform/logger.d.ts +20 -0
  71. package/dist/platform/logger.d.ts.map +1 -0
  72. package/dist/platform/logger.js +44 -0
  73. package/dist/platform/logger.js.map +1 -0
  74. package/dist/platform/opencode-errors.d.ts +20 -0
  75. package/dist/platform/opencode-errors.d.ts.map +1 -0
  76. package/dist/platform/opencode-errors.js +71 -0
  77. package/dist/platform/opencode-errors.js.map +1 -0
  78. package/dist/platform/platform-client/backups.d.ts +22 -0
  79. package/dist/platform/platform-client/backups.d.ts.map +1 -0
  80. package/dist/platform/platform-client/backups.js +16 -0
  81. package/dist/platform/platform-client/backups.js.map +1 -0
  82. package/dist/platform/platform-client/index.d.ts +21 -0
  83. package/dist/platform/platform-client/index.d.ts.map +1 -0
  84. package/dist/platform/platform-client/index.js +21 -0
  85. package/dist/platform/platform-client/index.js.map +1 -0
  86. package/dist/platform/platform-client/instance-admin.d.ts +67 -0
  87. package/dist/platform/platform-client/instance-admin.d.ts.map +1 -0
  88. package/dist/platform/platform-client/instance-admin.js +59 -0
  89. package/dist/platform/platform-client/instance-admin.js.map +1 -0
  90. package/dist/platform/platform-client/invites.d.ts +35 -0
  91. package/dist/platform/platform-client/invites.d.ts.map +1 -0
  92. package/dist/platform/platform-client/invites.js +25 -0
  93. package/dist/platform/platform-client/invites.js.map +1 -0
  94. package/dist/platform/platform-client/lifecycle.d.ts +78 -0
  95. package/dist/platform/platform-client/lifecycle.d.ts.map +1 -0
  96. package/dist/platform/platform-client/lifecycle.js +151 -0
  97. package/dist/platform/platform-client/lifecycle.js.map +1 -0
  98. package/dist/platform/platform-client/members.d.ts +81 -0
  99. package/dist/platform/platform-client/members.d.ts.map +1 -0
  100. package/dist/platform/platform-client/members.js +59 -0
  101. package/dist/platform/platform-client/members.js.map +1 -0
  102. package/dist/platform/platform-client/shared.d.ts +44 -0
  103. package/dist/platform/platform-client/shared.d.ts.map +1 -0
  104. package/dist/platform/platform-client/shared.js +177 -0
  105. package/dist/platform/platform-client/shared.js.map +1 -0
  106. package/dist/platform/platform-client/ssh.d.ts +29 -0
  107. package/dist/platform/platform-client/ssh.d.ts.map +1 -0
  108. package/dist/platform/platform-client/ssh.js +14 -0
  109. package/dist/platform/platform-client/ssh.js.map +1 -0
  110. package/dist/platform/platform-client/types.d.ts +56 -0
  111. package/dist/platform/platform-client/types.d.ts.map +1 -0
  112. package/dist/platform/platform-client/types.js +19 -0
  113. package/dist/platform/platform-client/types.js.map +1 -0
  114. package/dist/platform/platform-client/updates.d.ts +117 -0
  115. package/dist/platform/platform-client/updates.d.ts.map +1 -0
  116. package/dist/platform/platform-client/updates.js +97 -0
  117. package/dist/platform/platform-client/updates.js.map +1 -0
  118. package/dist/platform/platform-client/urls.d.ts +18 -0
  119. package/dist/platform/platform-client/urls.d.ts.map +1 -0
  120. package/dist/platform/platform-client/urls.js +31 -0
  121. package/dist/platform/platform-client/urls.js.map +1 -0
  122. package/dist/platform/projects-client/access.d.ts +273 -0
  123. package/dist/platform/projects-client/access.d.ts.map +1 -0
  124. package/dist/platform/projects-client/access.js +89 -0
  125. package/dist/platform/projects-client/access.js.map +1 -0
  126. package/dist/platform/projects-client/accounts.d.ts +184 -0
  127. package/dist/platform/projects-client/accounts.d.ts.map +1 -0
  128. package/dist/platform/projects-client/accounts.js +78 -0
  129. package/dist/platform/projects-client/accounts.js.map +1 -0
  130. package/dist/platform/projects-client/agent-config.d.ts +58 -0
  131. package/dist/platform/projects-client/agent-config.d.ts.map +1 -0
  132. package/dist/platform/projects-client/agent-config.js +9 -0
  133. package/dist/platform/projects-client/agent-config.js.map +1 -0
  134. package/dist/platform/projects-client/agent-scope.d.ts +12 -0
  135. package/dist/platform/projects-client/agent-scope.d.ts.map +1 -0
  136. package/dist/platform/projects-client/agent-scope.js +6 -0
  137. package/dist/platform/projects-client/agent-scope.js.map +1 -0
  138. package/dist/platform/projects-client/apps.d.ts +98 -0
  139. package/dist/platform/projects-client/apps.d.ts.map +1 -0
  140. package/dist/platform/projects-client/apps.js +29 -0
  141. package/dist/platform/projects-client/apps.js.map +1 -0
  142. package/dist/platform/projects-client/audit.d.ts +85 -0
  143. package/dist/platform/projects-client/audit.d.ts.map +1 -0
  144. package/dist/platform/projects-client/audit.js +51 -0
  145. package/dist/platform/projects-client/audit.js.map +1 -0
  146. package/dist/platform/projects-client/billing.d.ts +336 -0
  147. package/dist/platform/projects-client/billing.d.ts.map +1 -0
  148. package/dist/platform/projects-client/billing.js +260 -0
  149. package/dist/platform/projects-client/billing.js.map +1 -0
  150. package/dist/platform/projects-client/change-requests.d.ts +119 -0
  151. package/dist/platform/projects-client/change-requests.d.ts.map +1 -0
  152. package/dist/platform/projects-client/change-requests.js +56 -0
  153. package/dist/platform/projects-client/change-requests.js.map +1 -0
  154. package/dist/platform/projects-client/channels.d.ts +135 -0
  155. package/dist/platform/projects-client/channels.d.ts.map +1 -0
  156. package/dist/platform/projects-client/channels.js +103 -0
  157. package/dist/platform/projects-client/channels.js.map +1 -0
  158. package/dist/platform/projects-client/connectors.d.ts +148 -0
  159. package/dist/platform/projects-client/connectors.d.ts.map +1 -0
  160. package/dist/platform/projects-client/connectors.js +66 -0
  161. package/dist/platform/projects-client/connectors.js.map +1 -0
  162. package/dist/platform/projects-client/files.d.ts +37 -0
  163. package/dist/platform/projects-client/files.d.ts.map +1 -0
  164. package/dist/platform/projects-client/files.js +58 -0
  165. package/dist/platform/projects-client/files.js.map +1 -0
  166. package/dist/platform/projects-client/gateway.d.ts +177 -0
  167. package/dist/platform/projects-client/gateway.d.ts.map +1 -0
  168. package/dist/platform/projects-client/gateway.js +59 -0
  169. package/dist/platform/projects-client/gateway.js.map +1 -0
  170. package/dist/platform/projects-client/git-history.d.ts +74 -0
  171. package/dist/platform/projects-client/git-history.d.ts.map +1 -0
  172. package/dist/platform/projects-client/git-history.js +40 -0
  173. package/dist/platform/projects-client/git-history.js.map +1 -0
  174. package/dist/platform/projects-client/github.d.ts +62 -0
  175. package/dist/platform/projects-client/github.d.ts.map +1 -0
  176. package/dist/platform/projects-client/github.js +30 -0
  177. package/dist/platform/projects-client/github.js.map +1 -0
  178. package/dist/platform/projects-client/index.d.ts +32 -0
  179. package/dist/platform/projects-client/index.d.ts.map +1 -0
  180. package/dist/platform/projects-client/index.js +34 -0
  181. package/dist/platform/projects-client/index.js.map +1 -0
  182. package/dist/platform/projects-client/marketplace-catalog.d.ts +76 -0
  183. package/dist/platform/projects-client/marketplace-catalog.d.ts.map +1 -0
  184. package/dist/platform/projects-client/marketplace-catalog.js +48 -0
  185. package/dist/platform/projects-client/marketplace-catalog.js.map +1 -0
  186. package/dist/platform/projects-client/marketplace.d.ts +80 -0
  187. package/dist/platform/projects-client/marketplace.d.ts.map +1 -0
  188. package/dist/platform/projects-client/marketplace.js +52 -0
  189. package/dist/platform/projects-client/marketplace.js.map +1 -0
  190. package/dist/platform/projects-client/model-defaults.d.ts +36 -0
  191. package/dist/platform/projects-client/model-defaults.d.ts.map +1 -0
  192. package/dist/platform/projects-client/model-defaults.js +16 -0
  193. package/dist/platform/projects-client/model-defaults.js.map +1 -0
  194. package/dist/platform/projects-client/policies.d.ts +21 -0
  195. package/dist/platform/projects-client/policies.d.ts.map +1 -0
  196. package/dist/platform/projects-client/policies.js +10 -0
  197. package/dist/platform/projects-client/policies.js.map +1 -0
  198. package/dist/platform/projects-client/projects.d.ts +235 -0
  199. package/dist/platform/projects-client/projects.d.ts.map +1 -0
  200. package/dist/platform/projects-client/projects.js +161 -0
  201. package/dist/platform/projects-client/projects.js.map +1 -0
  202. package/dist/platform/projects-client/public-session-shares.d.ts +52 -0
  203. package/dist/platform/projects-client/public-session-shares.d.ts.map +1 -0
  204. package/dist/platform/projects-client/public-session-shares.js +54 -0
  205. package/dist/platform/projects-client/public-session-shares.js.map +1 -0
  206. package/dist/platform/projects-client/review.d.ts +57 -0
  207. package/dist/platform/projects-client/review.d.ts.map +1 -0
  208. package/dist/platform/projects-client/review.js +28 -0
  209. package/dist/platform/projects-client/review.js.map +1 -0
  210. package/dist/platform/projects-client/sandbox-shares.d.ts +25 -0
  211. package/dist/platform/projects-client/sandbox-shares.d.ts.map +1 -0
  212. package/dist/platform/projects-client/sandbox-shares.js +29 -0
  213. package/dist/platform/projects-client/sandbox-shares.js.map +1 -0
  214. package/dist/platform/projects-client/sandbox.d.ts +123 -0
  215. package/dist/platform/projects-client/sandbox.d.ts.map +1 -0
  216. package/dist/platform/projects-client/sandbox.js +45 -0
  217. package/dist/platform/projects-client/sandbox.js.map +1 -0
  218. package/dist/platform/projects-client/secrets.d.ts +122 -0
  219. package/dist/platform/projects-client/secrets.d.ts.map +1 -0
  220. package/dist/platform/projects-client/secrets.js +34 -0
  221. package/dist/platform/projects-client/secrets.js.map +1 -0
  222. package/dist/platform/projects-client/session-sandbox.d.ts +61 -0
  223. package/dist/platform/projects-client/session-sandbox.d.ts.map +1 -0
  224. package/dist/platform/projects-client/session-sandbox.js +82 -0
  225. package/dist/platform/projects-client/session-sandbox.js.map +1 -0
  226. package/dist/platform/projects-client/sessions.d.ts +216 -0
  227. package/dist/platform/projects-client/sessions.d.ts.map +1 -0
  228. package/dist/platform/projects-client/sessions.js +74 -0
  229. package/dist/platform/projects-client/sessions.js.map +1 -0
  230. package/dist/platform/projects-client/setup-links.d.ts +35 -0
  231. package/dist/platform/projects-client/setup-links.d.ts.map +1 -0
  232. package/dist/platform/projects-client/setup-links.js +24 -0
  233. package/dist/platform/projects-client/setup-links.js.map +1 -0
  234. package/dist/platform/projects-client/shared.d.ts +66 -0
  235. package/dist/platform/projects-client/shared.d.ts.map +1 -0
  236. package/dist/platform/projects-client/shared.js +44 -0
  237. package/dist/platform/projects-client/shared.js.map +1 -0
  238. package/dist/platform/projects-client/tokens.d.ts +77 -0
  239. package/dist/platform/projects-client/tokens.d.ts.map +1 -0
  240. package/dist/platform/projects-client/tokens.js +43 -0
  241. package/dist/platform/projects-client/tokens.js.map +1 -0
  242. package/dist/platform/projects-client/transcription.d.ts +5 -0
  243. package/dist/platform/projects-client/transcription.d.ts.map +1 -0
  244. package/dist/platform/projects-client/transcription.js +14 -0
  245. package/dist/platform/projects-client/transcription.js.map +1 -0
  246. package/dist/platform/projects-client/triggers.d.ts +102 -0
  247. package/dist/platform/projects-client/triggers.d.ts.map +1 -0
  248. package/dist/platform/projects-client/triggers.js +27 -0
  249. package/dist/platform/projects-client/triggers.js.map +1 -0
  250. package/dist/platform/session-id.d.ts +9 -0
  251. package/dist/platform/session-id.d.ts.map +1 -0
  252. package/dist/platform/session-id.js +23 -0
  253. package/dist/platform/session-id.js.map +1 -0
  254. package/dist/platform/storage/managed-storage.d.ts +97 -0
  255. package/dist/platform/storage/managed-storage.d.ts.map +1 -0
  256. package/dist/platform/storage/managed-storage.js +271 -0
  257. package/dist/platform/storage/managed-storage.js.map +1 -0
  258. package/dist/platform/strings.d.ts +12 -0
  259. package/dist/platform/strings.d.ts.map +1 -0
  260. package/dist/platform/strings.js +17 -0
  261. package/dist/platform/strings.js.map +1 -0
  262. package/dist/platform/ui.d.ts +11 -0
  263. package/dist/platform/ui.d.ts.map +1 -0
  264. package/dist/platform/ui.js +22 -0
  265. package/dist/platform/ui.js.map +1 -0
  266. package/dist/react/chat/index.d.ts +3 -0
  267. package/dist/react/chat/index.d.ts.map +1 -0
  268. package/dist/react/chat/index.js +7 -0
  269. package/dist/react/chat/index.js.map +1 -0
  270. package/dist/react/chat/render-parts.d.ts +39 -0
  271. package/dist/react/chat/render-parts.d.ts.map +1 -0
  272. package/dist/react/chat/render-parts.js +34 -0
  273. package/dist/react/chat/render-parts.js.map +1 -0
  274. package/dist/react/chat/use-chat-turns.d.ts +19 -0
  275. package/dist/react/chat/use-chat-turns.d.ts.map +1 -0
  276. package/dist/react/chat/use-chat-turns.js +27 -0
  277. package/dist/react/chat/use-chat-turns.js.map +1 -0
  278. package/dist/react/file-keys.d.ts +18 -0
  279. package/dist/react/file-keys.d.ts.map +1 -0
  280. package/dist/react/file-keys.js +18 -0
  281. package/dist/react/file-keys.js.map +1 -0
  282. package/dist/react/index.d.ts +12 -0
  283. package/dist/react/index.d.ts.map +1 -0
  284. package/dist/react/index.js +49 -0
  285. package/dist/react/index.js.map +1 -0
  286. package/dist/react/model-flatten.d.ts +33 -0
  287. package/dist/react/model-flatten.d.ts.map +1 -0
  288. package/dist/react/model-flatten.js +59 -0
  289. package/dist/react/model-flatten.js.map +1 -0
  290. package/dist/react/opencode.d.ts +43 -0
  291. package/dist/react/opencode.d.ts.map +1 -0
  292. package/dist/react/opencode.js +100 -0
  293. package/dist/react/opencode.js.map +1 -0
  294. package/dist/react/prefetch-session-start.d.ts +10 -0
  295. package/dist/react/prefetch-session-start.d.ts.map +1 -0
  296. package/dist/react/prefetch-session-start.js +17 -0
  297. package/dist/react/prefetch-session-start.js.map +1 -0
  298. package/dist/react/provider-refresh.d.ts +7 -0
  299. package/dist/react/provider-refresh.d.ts.map +1 -0
  300. package/dist/react/provider-refresh.js +28 -0
  301. package/dist/react/provider-refresh.js.map +1 -0
  302. package/dist/react/provider-selection.d.ts +31 -0
  303. package/dist/react/provider-selection.d.ts.map +1 -0
  304. package/dist/react/provider-selection.js +135 -0
  305. package/dist/react/provider-selection.js.map +1 -0
  306. package/dist/react/route-project.d.ts +7 -0
  307. package/dist/react/route-project.d.ts.map +1 -0
  308. package/dist/react/route-project.js +19 -0
  309. package/dist/react/route-project.js.map +1 -0
  310. package/dist/react/session-start-stash.d.ts +56 -0
  311. package/dist/react/session-start-stash.d.ts.map +1 -0
  312. package/dist/react/session-start-stash.js +202 -0
  313. package/dist/react/session-start-stash.js.map +1 -0
  314. package/dist/react/use-canonical-opencode-session.d.ts +35 -0
  315. package/dist/react/use-canonical-opencode-session.d.ts.map +1 -0
  316. package/dist/react/use-canonical-opencode-session.js +52 -0
  317. package/dist/react/use-canonical-opencode-session.js.map +1 -0
  318. package/dist/react/use-change-requests.d.ts +321 -0
  319. package/dist/react/use-change-requests.d.ts.map +1 -0
  320. package/dist/react/use-change-requests.js +43 -0
  321. package/dist/react/use-change-requests.js.map +1 -0
  322. package/dist/react/use-current-runtime.d.ts +8 -0
  323. package/dist/react/use-current-runtime.d.ts.map +1 -0
  324. package/dist/react/use-current-runtime.js +12 -0
  325. package/dist/react/use-current-runtime.js.map +1 -0
  326. package/dist/react/use-gateway-catalog-sync.d.ts +2 -0
  327. package/dist/react/use-gateway-catalog-sync.d.ts.map +1 -0
  328. package/dist/react/use-gateway-catalog-sync.js +39 -0
  329. package/dist/react/use-gateway-catalog-sync.js.map +1 -0
  330. package/dist/react/use-kortix-master.d.ts +384 -0
  331. package/dist/react/use-kortix-master.d.ts.map +1 -0
  332. package/dist/react/use-kortix-master.js +958 -0
  333. package/dist/react/use-kortix-master.js.map +1 -0
  334. package/dist/react/use-model-store.d.ts +71 -0
  335. package/dist/react/use-model-store.d.ts.map +1 -0
  336. package/dist/react/use-model-store.js +411 -0
  337. package/dist/react/use-model-store.js.map +1 -0
  338. package/dist/react/use-opencode-config.d.ts +15 -0
  339. package/dist/react/use-opencode-config.d.ts.map +1 -0
  340. package/dist/react/use-opencode-config.js +79 -0
  341. package/dist/react/use-opencode-config.js.map +1 -0
  342. package/dist/react/use-opencode-events/diagnostics.d.ts +11 -0
  343. package/dist/react/use-opencode-events/diagnostics.d.ts.map +1 -0
  344. package/dist/react/use-opencode-events/diagnostics.js +58 -0
  345. package/dist/react/use-opencode-events/diagnostics.js.map +1 -0
  346. package/dist/react/use-opencode-events/handle-event.d.ts +20 -0
  347. package/dist/react/use-opencode-events/handle-event.d.ts.map +1 -0
  348. package/dist/react/use-opencode-events/handle-event.js +450 -0
  349. package/dist/react/use-opencode-events/handle-event.js.map +1 -0
  350. package/dist/react/use-opencode-events/helpers.d.ts +30 -0
  351. package/dist/react/use-opencode-events/helpers.d.ts.map +1 -0
  352. package/dist/react/use-opencode-events/helpers.js +93 -0
  353. package/dist/react/use-opencode-events/helpers.js.map +1 -0
  354. package/dist/react/use-opencode-events/index.d.ts +25 -0
  355. package/dist/react/use-opencode-events/index.d.ts.map +1 -0
  356. package/dist/react/use-opencode-events/index.js +242 -0
  357. package/dist/react/use-opencode-events/index.js.map +1 -0
  358. package/dist/react/use-opencode-events/types.d.ts +10 -0
  359. package/dist/react/use-opencode-events/types.d.ts.map +1 -0
  360. package/dist/react/use-opencode-events/types.js +2 -0
  361. package/dist/react/use-opencode-events/types.js.map +1 -0
  362. package/dist/react/use-opencode-events/use-event-stream-refs.d.ts +22 -0
  363. package/dist/react/use-opencode-events/use-event-stream-refs.d.ts.map +1 -0
  364. package/dist/react/use-opencode-events/use-event-stream-refs.js +158 -0
  365. package/dist/react/use-opencode-events/use-event-stream-refs.js.map +1 -0
  366. package/dist/react/use-opencode-local.d.ts +139 -0
  367. package/dist/react/use-opencode-local.d.ts.map +1 -0
  368. package/dist/react/use-opencode-local.js +484 -0
  369. package/dist/react/use-opencode-local.js.map +1 -0
  370. package/dist/react/use-opencode-mcp.d.ts +34 -0
  371. package/dist/react/use-opencode-mcp.d.ts.map +1 -0
  372. package/dist/react/use-opencode-mcp.js +190 -0
  373. package/dist/react/use-opencode-mcp.js.map +1 -0
  374. package/dist/react/use-opencode-pty.d.ts +30 -0
  375. package/dist/react/use-opencode-pty.d.ts.map +1 -0
  376. package/dist/react/use-opencode-pty.js +126 -0
  377. package/dist/react/use-opencode-pty.js.map +1 -0
  378. package/dist/react/use-opencode-sessions/agents.d.ts +14 -0
  379. package/dist/react/use-opencode-sessions/agents.d.ts.map +1 -0
  380. package/dist/react/use-opencode-sessions/agents.js +82 -0
  381. package/dist/react/use-opencode-sessions/agents.js.map +1 -0
  382. package/dist/react/use-opencode-sessions/commands.d.ts +8 -0
  383. package/dist/react/use-opencode-sessions/commands.d.ts.map +1 -0
  384. package/dist/react/use-opencode-sessions/commands.js +46 -0
  385. package/dist/react/use-opencode-sessions/commands.js.map +1 -0
  386. package/dist/react/use-opencode-sessions/files.d.ts +2 -0
  387. package/dist/react/use-opencode-sessions/files.d.ts.map +1 -0
  388. package/dist/react/use-opencode-sessions/files.js +181 -0
  389. package/dist/react/use-opencode-sessions/files.js.map +1 -0
  390. package/dist/react/use-opencode-sessions/index.d.ts +15 -0
  391. package/dist/react/use-opencode-sessions/index.d.ts.map +1 -0
  392. package/dist/react/use-opencode-sessions/index.js +21 -0
  393. package/dist/react/use-opencode-sessions/index.js.map +1 -0
  394. package/dist/react/use-opencode-sessions/keys.d.ts +94 -0
  395. package/dist/react/use-opencode-sessions/keys.d.ts.map +1 -0
  396. package/dist/react/use-opencode-sessions/keys.js +39 -0
  397. package/dist/react/use-opencode-sessions/keys.js.map +1 -0
  398. package/dist/react/use-opencode-sessions/mcp.d.ts +3 -0
  399. package/dist/react/use-opencode-sessions/mcp.d.ts.map +1 -0
  400. package/dist/react/use-opencode-sessions/mcp.js +23 -0
  401. package/dist/react/use-opencode-sessions/mcp.js.map +1 -0
  402. package/dist/react/use-opencode-sessions/messages.d.ts +75 -0
  403. package/dist/react/use-opencode-sessions/messages.d.ts.map +1 -0
  404. package/dist/react/use-opencode-sessions/messages.js +319 -0
  405. package/dist/react/use-opencode-sessions/messages.js.map +1 -0
  406. package/dist/react/use-opencode-sessions/parts.d.ts +23 -0
  407. package/dist/react/use-opencode-sessions/parts.d.ts.map +1 -0
  408. package/dist/react/use-opencode-sessions/parts.js +49 -0
  409. package/dist/react/use-opencode-sessions/parts.js.map +1 -0
  410. package/dist/react/use-opencode-sessions/permissions.d.ts +17 -0
  411. package/dist/react/use-opencode-sessions/permissions.d.ts.map +1 -0
  412. package/dist/react/use-opencode-sessions/permissions.js +66 -0
  413. package/dist/react/use-opencode-sessions/permissions.js.map +1 -0
  414. package/dist/react/use-opencode-sessions/projects.d.ts +5 -0
  415. package/dist/react/use-opencode-sessions/projects.d.ts.map +1 -0
  416. package/dist/react/use-opencode-sessions/projects.js +54 -0
  417. package/dist/react/use-opencode-sessions/projects.js.map +1 -0
  418. package/dist/react/use-opencode-sessions/providers.d.ts +10 -0
  419. package/dist/react/use-opencode-sessions/providers.d.ts.map +1 -0
  420. package/dist/react/use-opencode-sessions/providers.js +98 -0
  421. package/dist/react/use-opencode-sessions/providers.js.map +1 -0
  422. package/dist/react/use-opencode-sessions/sessions.d.ts +35 -0
  423. package/dist/react/use-opencode-sessions/sessions.d.ts.map +1 -0
  424. package/dist/react/use-opencode-sessions/sessions.js +380 -0
  425. package/dist/react/use-opencode-sessions/sessions.js.map +1 -0
  426. package/dist/react/use-opencode-sessions/shared.d.ts +43 -0
  427. package/dist/react/use-opencode-sessions/shared.d.ts.map +1 -0
  428. package/dist/react/use-opencode-sessions/shared.js +109 -0
  429. package/dist/react/use-opencode-sessions/shared.js.map +1 -0
  430. package/dist/react/use-opencode-sessions/sharing.d.ts +4 -0
  431. package/dist/react/use-opencode-sessions/sharing.d.ts.map +1 -0
  432. package/dist/react/use-opencode-sessions/sharing.js +57 -0
  433. package/dist/react/use-opencode-sessions/sharing.js.map +1 -0
  434. package/dist/react/use-opencode-sessions/tools.d.ts +5 -0
  435. package/dist/react/use-opencode-sessions/tools.d.ts.map +1 -0
  436. package/dist/react/use-opencode-sessions/tools.js +54 -0
  437. package/dist/react/use-opencode-sessions/tools.js.map +1 -0
  438. package/dist/react/use-permission-self-heal.d.ts +45 -0
  439. package/dist/react/use-permission-self-heal.d.ts.map +1 -0
  440. package/dist/react/use-permission-self-heal.js +144 -0
  441. package/dist/react/use-permission-self-heal.js.map +1 -0
  442. package/dist/react/use-project-config.d.ts +11 -0
  443. package/dist/react/use-project-config.d.ts.map +1 -0
  444. package/dist/react/use-project-config.js +22 -0
  445. package/dist/react/use-project-config.js.map +1 -0
  446. package/dist/react/use-project-models.d.ts +11 -0
  447. package/dist/react/use-project-models.d.ts.map +1 -0
  448. package/dist/react/use-project-models.js +25 -0
  449. package/dist/react/use-project-models.js.map +1 -0
  450. package/dist/react/use-project-secrets.d.ts +265 -0
  451. package/dist/react/use-project-secrets.d.ts.map +1 -0
  452. package/dist/react/use-project-secrets.js +41 -0
  453. package/dist/react/use-project-secrets.js.map +1 -0
  454. package/dist/react/use-project-triggers.d.ts +228 -0
  455. package/dist/react/use-project-triggers.d.ts.map +1 -0
  456. package/dist/react/use-project-triggers.js +42 -0
  457. package/dist/react/use-project-triggers.js.map +1 -0
  458. package/dist/react/use-question-self-heal.d.ts +36 -0
  459. package/dist/react/use-question-self-heal.d.ts.map +1 -0
  460. package/dist/react/use-question-self-heal.js +95 -0
  461. package/dist/react/use-question-self-heal.js.map +1 -0
  462. package/dist/react/use-runtime-phase.d.ts +9 -0
  463. package/dist/react/use-runtime-phase.d.ts.map +1 -0
  464. package/dist/react/use-runtime-phase.js +20 -0
  465. package/dist/react/use-runtime-phase.js.map +1 -0
  466. package/dist/react/use-runtime-reconnect.d.ts +90 -0
  467. package/dist/react/use-runtime-reconnect.d.ts.map +1 -0
  468. package/dist/react/use-runtime-reconnect.js +234 -0
  469. package/dist/react/use-runtime-reconnect.js.map +1 -0
  470. package/dist/react/use-session-picks.d.ts +17 -0
  471. package/dist/react/use-session-picks.d.ts.map +1 -0
  472. package/dist/react/use-session-picks.js +36 -0
  473. package/dist/react/use-session-picks.js.map +1 -0
  474. package/dist/react/use-session-prefetch.d.ts +18 -0
  475. package/dist/react/use-session-prefetch.d.ts.map +1 -0
  476. package/dist/react/use-session-prefetch.js +84 -0
  477. package/dist/react/use-session-prefetch.js.map +1 -0
  478. package/dist/react/use-session-send.d.ts +183 -0
  479. package/dist/react/use-session-send.d.ts.map +1 -0
  480. package/dist/react/use-session-send.js +287 -0
  481. package/dist/react/use-session-send.js.map +1 -0
  482. package/dist/react/use-session-sync.d.ts +24 -0
  483. package/dist/react/use-session-sync.d.ts.map +1 -0
  484. package/dist/react/use-session-sync.js +375 -0
  485. package/dist/react/use-session-sync.js.map +1 -0
  486. package/dist/react/use-session.d.ts +171 -0
  487. package/dist/react/use-session.d.ts.map +1 -0
  488. package/dist/react/use-session.js +396 -0
  489. package/dist/react/use-session.js.map +1 -0
  490. package/dist/react/use-visible-agents.d.ts +22 -0
  491. package/dist/react/use-visible-agents.d.ts.map +1 -0
  492. package/dist/react/use-visible-agents.js +45 -0
  493. package/dist/react/use-visible-agents.js.map +1 -0
  494. package/dist/server.d.ts +55 -0
  495. package/dist/server.d.ts.map +1 -0
  496. package/dist/server.js +122 -0
  497. package/dist/server.js.map +1 -0
  498. package/dist/session/health.d.ts +49 -0
  499. package/dist/session/health.d.ts.map +1 -0
  500. package/dist/session/health.js +57 -0
  501. package/dist/session/health.js.map +1 -0
  502. package/dist/session/index.d.ts +19 -0
  503. package/dist/session/index.d.ts.map +1 -0
  504. package/dist/session/index.js +19 -0
  505. package/dist/session/index.js.map +1 -0
  506. package/dist/session/preview.d.ts +24 -0
  507. package/dist/session/preview.d.ts.map +1 -0
  508. package/dist/session/preview.js +85 -0
  509. package/dist/session/preview.js.map +1 -0
  510. package/dist/session/url.d.ts +160 -0
  511. package/dist/session/url.d.ts.map +1 -0
  512. package/dist/session/url.js +522 -0
  513. package/dist/session/url.js.map +1 -0
  514. package/dist/state/chat-events.d.ts +141 -0
  515. package/dist/state/chat-events.d.ts.map +1 -0
  516. package/dist/state/chat-events.js +135 -0
  517. package/dist/state/chat-events.js.map +1 -0
  518. package/dist/state/current-runtime.d.ts +44 -0
  519. package/dist/state/current-runtime.d.ts.map +1 -0
  520. package/dist/state/current-runtime.js +44 -0
  521. package/dist/state/current-runtime.js.map +1 -0
  522. package/dist/state/diagnostics-store.d.ts +114 -0
  523. package/dist/state/diagnostics-store.d.ts.map +1 -0
  524. package/dist/state/diagnostics-store.js +319 -0
  525. package/dist/state/diagnostics-store.js.map +1 -0
  526. package/dist/state/event-stream.d.ts +134 -0
  527. package/dist/state/event-stream.d.ts.map +1 -0
  528. package/dist/state/event-stream.js +424 -0
  529. package/dist/state/event-stream.js.map +1 -0
  530. package/dist/state/idb-sync-cache.d.ts +18 -0
  531. package/dist/state/idb-sync-cache.d.ts.map +1 -0
  532. package/dist/state/idb-sync-cache.js +209 -0
  533. package/dist/state/idb-sync-cache.js.map +1 -0
  534. package/dist/state/opencode-compaction-store.d.ts +10 -0
  535. package/dist/state/opencode-compaction-store.d.ts.map +1 -0
  536. package/dist/state/opencode-compaction-store.js +32 -0
  537. package/dist/state/opencode-compaction-store.js.map +1 -0
  538. package/dist/state/opencode-pending-store.d.ts +19 -0
  539. package/dist/state/opencode-pending-store.d.ts.map +1 -0
  540. package/dist/state/opencode-pending-store.js +76 -0
  541. package/dist/state/opencode-pending-store.js.map +1 -0
  542. package/dist/state/sandbox-connection-store.d.ts +62 -0
  543. package/dist/state/sandbox-connection-store.d.ts.map +1 -0
  544. package/dist/state/sandbox-connection-store.js +290 -0
  545. package/dist/state/sandbox-connection-store.js.map +1 -0
  546. package/dist/state/server-store/active.d.ts +49 -0
  547. package/dist/state/server-store/active.d.ts.map +1 -0
  548. package/dist/state/server-store/active.js +76 -0
  549. package/dist/state/server-store/active.js.map +1 -0
  550. package/dist/state/server-store/types.d.ts +12 -0
  551. package/dist/state/server-store/types.d.ts.map +1 -0
  552. package/dist/state/server-store/types.js +2 -0
  553. package/dist/state/server-store/types.js.map +1 -0
  554. package/dist/state/server-store/url-helpers.d.ts +33 -0
  555. package/dist/state/server-store/url-helpers.d.ts.map +1 -0
  556. package/dist/state/server-store/url-helpers.js +55 -0
  557. package/dist/state/server-store/url-helpers.js.map +1 -0
  558. package/dist/state/server-store.d.ts +18 -0
  559. package/dist/state/server-store.d.ts.map +1 -0
  560. package/dist/state/server-store.js +23 -0
  561. package/dist/state/server-store.js.map +1 -0
  562. package/dist/state/session-runtime-registry.d.ts +49 -0
  563. package/dist/state/session-runtime-registry.d.ts.map +1 -0
  564. package/dist/state/session-runtime-registry.js +85 -0
  565. package/dist/state/session-runtime-registry.js.map +1 -0
  566. package/dist/state/sync-store/ascending-id.d.ts +2 -0
  567. package/dist/state/sync-store/ascending-id.d.ts.map +1 -0
  568. package/dist/state/sync-store/ascending-id.js +21 -0
  569. package/dist/state/sync-store/ascending-id.js.map +1 -0
  570. package/dist/state/sync-store/binary.d.ts +7 -0
  571. package/dist/state/sync-store/binary.d.ts.map +1 -0
  572. package/dist/state/sync-store/binary.js +21 -0
  573. package/dist/state/sync-store/binary.js.map +1 -0
  574. package/dist/state/sync-store/stream-cache.d.ts +2 -0
  575. package/dist/state/sync-store/stream-cache.d.ts.map +1 -0
  576. package/dist/state/sync-store/stream-cache.js +29 -0
  577. package/dist/state/sync-store/stream-cache.js.map +1 -0
  578. package/dist/state/sync-store/types.d.ts +29 -0
  579. package/dist/state/sync-store/types.d.ts.map +1 -0
  580. package/dist/state/sync-store/types.js +2 -0
  581. package/dist/state/sync-store/types.js.map +1 -0
  582. package/dist/state/sync-store.d.ts +39 -0
  583. package/dist/state/sync-store.d.ts.map +1 -0
  584. package/dist/state/sync-store.js +692 -0
  585. package/dist/state/sync-store.js.map +1 -0
  586. package/dist/state/tab-store.d.ts +91 -0
  587. package/dist/state/tab-store.d.ts.map +1 -0
  588. package/dist/state/tab-store.js +369 -0
  589. package/dist/state/tab-store.js.map +1 -0
  590. package/dist/transcript.d.ts +40 -0
  591. package/dist/transcript.d.ts.map +1 -0
  592. package/dist/transcript.js +126 -0
  593. package/dist/transcript.js.map +1 -0
  594. package/dist/turns/classify.d.ts +166 -0
  595. package/dist/turns/classify.d.ts.map +1 -0
  596. package/dist/turns/classify.js +259 -0
  597. package/dist/turns/classify.js.map +1 -0
  598. package/dist/turns/errors.d.ts +11 -0
  599. package/dist/turns/errors.d.ts.map +1 -0
  600. package/dist/turns/errors.js +85 -0
  601. package/dist/turns/errors.js.map +1 -0
  602. package/dist/turns/index.d.ts +264 -0
  603. package/dist/turns/index.d.ts.map +1 -0
  604. package/dist/turns/index.js +1243 -0
  605. package/dist/turns/index.js.map +1 -0
  606. package/dist/turns/tool-registry.d.ts +33 -0
  607. package/dist/turns/tool-registry.d.ts.map +1 -0
  608. package/dist/turns/tool-registry.js +108 -0
  609. package/dist/turns/tool-registry.js.map +1 -0
  610. package/dist/turns/types.d.ts +125 -0
  611. package/dist/turns/types.d.ts.map +1 -0
  612. package/dist/turns/types.js +12 -0
  613. package/dist/turns/types.js.map +1 -0
  614. package/dist/turns/view-model.d.ts +127 -0
  615. package/dist/turns/view-model.d.ts.map +1 -0
  616. package/dist/turns/view-model.js +401 -0
  617. package/dist/turns/view-model.js.map +1 -0
  618. package/package.json +155 -0
@@ -0,0 +1,313 @@
1
+ /**
2
+ * kortix-master daemon client — the sandbox's project-management surface:
3
+ * `/kortix/tasks`, `/kortix/tickets`, `/kortix/projects` (+ its
4
+ * columns/fields/templates/agents/pm-session/activity sub-routes),
5
+ * `/kortix/projects/:id/milestones`, `/kortix/projects/:id/credentials`, and
6
+ * `/kortix/services`. Same shape as `./triggers` and `./env`: every call takes
7
+ * an explicit `baseUrl` (never the globally active runtime — a host may be
8
+ * looking at a specific project's owning sandbox that differs from the
9
+ * currently active session), goes through `authenticatedFetch`, and surfaces
10
+ * the daemon's JSON error body on non-2xx responses.
11
+ *
12
+ * Unlike `triggersRequest` (one generic passthrough for a single route
13
+ * family), this module exposes a typed function per endpoint — mirroring
14
+ * `./env`'s per-endpoint shape — because the six former web hooks each had
15
+ * their own hand-rolled fetch helper and locally-defined request/response
16
+ * types; this is those shapes moved down a layer, not a new design.
17
+ *
18
+ * The React Query layer (keys, caching, optimistic updates, `useAuth`-derived
19
+ * actor identity) stays in `apps/web/src/hooks/**` — this module is transport
20
+ * only. Reload (`/kortix/services/system/reload`) already has a home in
21
+ * `./client`'s `systemReload`; it is intentionally NOT duplicated here.
22
+ */
23
+ import { authenticatedFetch } from '../platform/auth.js';
24
+ // ─────────────────────────────────────────────────────────────────────────────
25
+ // Request core
26
+ // ─────────────────────────────────────────────────────────────────────────────
27
+ /**
28
+ * JSON request against `${baseUrl}${path}`, surfacing the daemon's error body
29
+ * on non-2xx responses. Reads the body as text first and parses defensively
30
+ * (falls back to `{}`) rather than assuming every response — success or
31
+ * error, from every one of these routes — is guaranteed valid JSON; some
32
+ * service actions reply with an empty body.
33
+ */
34
+ async function kortixMasterRequest(baseUrl, path, init, fetchOptions) {
35
+ let base = baseUrl;
36
+ while (base.endsWith('/'))
37
+ base = base.slice(0, -1);
38
+ const response = await authenticatedFetch(`${base}${path}`, {
39
+ ...init,
40
+ headers: {
41
+ 'Content-Type': 'application/json',
42
+ ...init?.headers,
43
+ },
44
+ }, fetchOptions);
45
+ const text = await response.text();
46
+ let body = {};
47
+ try {
48
+ body = text ? JSON.parse(text) : {};
49
+ }
50
+ catch {
51
+ body = {};
52
+ }
53
+ if (!response.ok) {
54
+ throw new Error(body?.error || body?.message || body?.details || text.slice(0, 200) || `Request failed with ${response.status}`);
55
+ }
56
+ return body;
57
+ }
58
+ /** GET /kortix/tasks?project_id=&status=. Returns raw rows — the daemon's
59
+ * `status` isn't schema-validated, so callers normalize it (defaulting to
60
+ * `'todo'`) before trusting `KortixTask['status']`. */
61
+ export async function listTasks(baseUrl, params = {}) {
62
+ const search = new URLSearchParams();
63
+ if (params.projectId)
64
+ search.set('project_id', params.projectId);
65
+ if (params.status)
66
+ search.set('status', params.status);
67
+ const qs = search.toString() ? `?${search}` : '';
68
+ return kortixMasterRequest(baseUrl, `/kortix/tasks${qs}`);
69
+ }
70
+ /** GET /kortix/tasks/:id. Same normalization caveat as {@link listTasks}. */
71
+ export async function getTask(baseUrl, id) {
72
+ return kortixMasterRequest(baseUrl, `/kortix/tasks/${encodeURIComponent(id)}`);
73
+ }
74
+ export async function listTaskEvents(baseUrl, id) {
75
+ return kortixMasterRequest(baseUrl, `/kortix/tasks/${encodeURIComponent(id)}/events`);
76
+ }
77
+ export async function getTaskStatus(baseUrl, id) {
78
+ return kortixMasterRequest(baseUrl, `/kortix/tasks/${encodeURIComponent(id)}/status`);
79
+ }
80
+ export async function createTask(baseUrl, data) {
81
+ return kortixMasterRequest(baseUrl, '/kortix/tasks', {
82
+ method: 'POST',
83
+ body: JSON.stringify(data),
84
+ });
85
+ }
86
+ export async function updateTask(baseUrl, id, data) {
87
+ return kortixMasterRequest(baseUrl, `/kortix/tasks/${encodeURIComponent(id)}`, {
88
+ method: 'PATCH',
89
+ body: JSON.stringify(data),
90
+ });
91
+ }
92
+ export async function startTask(baseUrl, id) {
93
+ return kortixMasterRequest(baseUrl, `/kortix/tasks/${encodeURIComponent(id)}/start`, {
94
+ method: 'POST',
95
+ });
96
+ }
97
+ export async function approveTask(baseUrl, id) {
98
+ return kortixMasterRequest(baseUrl, `/kortix/tasks/${encodeURIComponent(id)}/approve`, {
99
+ method: 'POST',
100
+ });
101
+ }
102
+ export async function deleteTask(baseUrl, id) {
103
+ return kortixMasterRequest(baseUrl, `/kortix/tasks/${encodeURIComponent(id)}`, {
104
+ method: 'DELETE',
105
+ });
106
+ }
107
+ export async function listTickets(baseUrl, projectId) {
108
+ const qs = projectId ? `?project_id=${encodeURIComponent(projectId)}` : '';
109
+ return kortixMasterRequest(baseUrl, `/kortix/tickets${qs}`);
110
+ }
111
+ export async function getTicket(baseUrl, id) {
112
+ return kortixMasterRequest(baseUrl, `/kortix/tickets/${encodeURIComponent(id)}`);
113
+ }
114
+ export async function listTicketEvents(baseUrl, id) {
115
+ return kortixMasterRequest(baseUrl, `/kortix/tickets/${encodeURIComponent(id)}/events`);
116
+ }
117
+ export async function createTicket(baseUrl, body) {
118
+ return kortixMasterRequest(baseUrl, '/kortix/tickets', {
119
+ method: 'POST',
120
+ body: JSON.stringify(body),
121
+ });
122
+ }
123
+ export async function updateTicket(baseUrl, id, body) {
124
+ return kortixMasterRequest(baseUrl, `/kortix/tickets/${encodeURIComponent(id)}`, {
125
+ method: 'PATCH',
126
+ body: JSON.stringify(body),
127
+ });
128
+ }
129
+ export async function updateTicketStatus(baseUrl, id, body) {
130
+ return kortixMasterRequest(baseUrl, `/kortix/tickets/${encodeURIComponent(id)}/status`, {
131
+ method: 'POST',
132
+ body: JSON.stringify(body),
133
+ });
134
+ }
135
+ export async function assignTicket(baseUrl, id, body) {
136
+ return kortixMasterRequest(baseUrl, `/kortix/tickets/${encodeURIComponent(id)}/assign`, {
137
+ method: 'POST',
138
+ body: JSON.stringify(body),
139
+ });
140
+ }
141
+ export async function unassignTicket(baseUrl, id, body) {
142
+ return kortixMasterRequest(baseUrl, `/kortix/tickets/${encodeURIComponent(id)}/unassign`, {
143
+ method: 'POST',
144
+ body: JSON.stringify(body),
145
+ });
146
+ }
147
+ export async function commentTicket(baseUrl, id, body) {
148
+ return kortixMasterRequest(baseUrl, `/kortix/tickets/${encodeURIComponent(id)}/comments`, {
149
+ method: 'POST',
150
+ body: JSON.stringify(body),
151
+ });
152
+ }
153
+ export async function deleteTicket(baseUrl, id) {
154
+ return kortixMasterRequest(baseUrl, `/kortix/tickets/${encodeURIComponent(id)}`, { method: 'DELETE' });
155
+ }
156
+ export async function listColumns(baseUrl, projectId) {
157
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/columns`);
158
+ }
159
+ export async function replaceColumns(baseUrl, projectId, columns) {
160
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/columns`, {
161
+ method: 'PUT',
162
+ body: JSON.stringify({ columns }),
163
+ });
164
+ }
165
+ export async function listFields(baseUrl, projectId) {
166
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/fields`);
167
+ }
168
+ export async function replaceFields(baseUrl, projectId, fields) {
169
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/fields`, {
170
+ method: 'PUT',
171
+ body: JSON.stringify({ fields }),
172
+ });
173
+ }
174
+ export async function listTemplates(baseUrl, projectId) {
175
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/templates`);
176
+ }
177
+ export async function replaceTemplates(baseUrl, projectId, templates) {
178
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/templates`, { method: 'PUT', body: JSON.stringify({ templates }) });
179
+ }
180
+ // ─────────────────────────────────────────────────────────────────────────────
181
+ // PM chat session — /kortix/projects/:id/pm-session
182
+ // ─────────────────────────────────────────────────────────────────────────────
183
+ /** Ensure (create-if-missing) a project-level session bound to the Project
184
+ * Manager agent. Idempotent on the daemon — first call creates + binds,
185
+ * subsequent calls return the existing session id. */
186
+ export async function ensurePmSession(baseUrl, projectId) {
187
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/pm-session`, {
188
+ method: 'POST',
189
+ });
190
+ }
191
+ export async function listProjectAgents(baseUrl, projectId) {
192
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/agents`);
193
+ }
194
+ export async function createProjectAgent(baseUrl, projectId, body) {
195
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/agents`, {
196
+ method: 'POST',
197
+ body: JSON.stringify(body),
198
+ });
199
+ }
200
+ export async function updateProjectAgent(baseUrl, projectId, slug, body) {
201
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/agents/${encodeURIComponent(slug)}`, { method: 'PATCH', body: JSON.stringify(body) });
202
+ }
203
+ export async function deleteProjectAgent(baseUrl, projectId, slug) {
204
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/agents/${encodeURIComponent(slug)}`, { method: 'DELETE' });
205
+ }
206
+ export async function getAgentPersona(baseUrl, projectId, slug) {
207
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/agents/${encodeURIComponent(slug)}/persona`);
208
+ }
209
+ // ─────────────────────────────────────────────────────────────────────────────
210
+ // Project activity — /kortix/projects/:id/activity
211
+ // ─────────────────────────────────────────────────────────────────────────────
212
+ export async function getProjectActivity(baseUrl, projectId, limit = 200) {
213
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/activity?limit=${limit}`);
214
+ }
215
+ export async function listKortixProjects(baseUrl) {
216
+ return kortixMasterRequest(baseUrl, '/kortix/projects');
217
+ }
218
+ export async function getKortixProject(baseUrl, id) {
219
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(id)}`);
220
+ }
221
+ export async function getKortixProjectBySession(baseUrl, sessionId) {
222
+ return kortixMasterRequest(baseUrl, `/kortix/projects/by-session/${encodeURIComponent(sessionId)}`);
223
+ }
224
+ export async function listKortixProjectSessions(baseUrl, projectId) {
225
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/sessions`);
226
+ }
227
+ export async function deleteKortixProject(baseUrl, id) {
228
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(id)}`, { method: 'DELETE' });
229
+ }
230
+ export async function patchKortixProject(baseUrl, id, body) {
231
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(id)}`, {
232
+ method: 'PATCH',
233
+ body: JSON.stringify(body),
234
+ });
235
+ }
236
+ export async function listMilestones(baseUrl, projectId, statusFilter = 'all') {
237
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/milestones?status=${statusFilter}`);
238
+ }
239
+ export async function getMilestone(baseUrl, projectId, ref) {
240
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/milestones/${encodeURIComponent(ref)}`);
241
+ }
242
+ export async function listMilestoneEvents(baseUrl, projectId, ref) {
243
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/milestones/${encodeURIComponent(ref)}/events`);
244
+ }
245
+ export async function createMilestone(baseUrl, projectId, body) {
246
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/milestones`, { method: 'POST', body: JSON.stringify(body) });
247
+ }
248
+ export async function updateMilestone(baseUrl, projectId, ref, patch) {
249
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/milestones/${encodeURIComponent(ref)}`, { method: 'PATCH', body: JSON.stringify(patch) });
250
+ }
251
+ export async function closeMilestone(baseUrl, projectId, ref, body) {
252
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/milestones/${encodeURIComponent(ref)}/close`, { method: 'POST', body: JSON.stringify(body) });
253
+ }
254
+ export async function reopenMilestone(baseUrl, projectId, ref) {
255
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/milestones/${encodeURIComponent(ref)}/reopen`, { method: 'POST' });
256
+ }
257
+ export async function deleteMilestone(baseUrl, projectId, ref) {
258
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/milestones/${encodeURIComponent(ref)}`, { method: 'DELETE' });
259
+ }
260
+ export async function listCredentials(baseUrl, projectId) {
261
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/credentials`);
262
+ }
263
+ export async function listCredentialEvents(baseUrl, projectId, name) {
264
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/credentials/${encodeURIComponent(name)}/events`);
265
+ }
266
+ export async function upsertCredential(baseUrl, projectId, body) {
267
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/credentials`, { method: 'POST', body: JSON.stringify(body) });
268
+ }
269
+ /** Reveal returns the decrypted value. Each call is audit-logged as a read
270
+ * by the daemon. */
271
+ export async function revealCredential(baseUrl, projectId, name) {
272
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/credentials/${encodeURIComponent(name)}`);
273
+ }
274
+ export async function deleteCredential(baseUrl, projectId, name) {
275
+ return kortixMasterRequest(baseUrl, `/kortix/projects/${encodeURIComponent(projectId)}/credentials/${encodeURIComponent(name)}`, { method: 'DELETE' });
276
+ }
277
+ const SERVICES_TIMEOUT_MS = 10_000;
278
+ const servicesFetchOptions = { retryOnAuthError: false };
279
+ function servicesRequest(baseUrl, path, init) {
280
+ return kortixMasterRequest(baseUrl, path, { signal: AbortSignal.timeout(SERVICES_TIMEOUT_MS), ...init }, servicesFetchOptions);
281
+ }
282
+ export async function listServices(baseUrl, includeAll = false) {
283
+ const query = includeAll ? '?all=true' : '';
284
+ const data = await servicesRequest(baseUrl, `/kortix/services${query}`);
285
+ return data.services ?? [];
286
+ }
287
+ export async function listServiceTemplates(baseUrl) {
288
+ const data = await servicesRequest(baseUrl, '/kortix/services/templates');
289
+ return data.templates ?? [];
290
+ }
291
+ export async function getServiceLogs(baseUrl, serviceId) {
292
+ const data = await servicesRequest(baseUrl, `/kortix/services/${encodeURIComponent(serviceId)}/logs`);
293
+ return data.logs ?? [];
294
+ }
295
+ /** `start`/`stop`/`restart` POST `/kortix/services/:id/:action`; `delete` DELETEs `/kortix/services/:id`. */
296
+ export async function serviceAction(baseUrl, serviceId, action) {
297
+ const isDelete = action === 'delete';
298
+ const path = isDelete
299
+ ? `/kortix/services/${encodeURIComponent(serviceId)}`
300
+ : `/kortix/services/${encodeURIComponent(serviceId)}/${action}`;
301
+ return servicesRequest(baseUrl, path, { method: isDelete ? 'DELETE' : 'POST' });
302
+ }
303
+ export async function reconcileServices(baseUrl, reload) {
304
+ const path = `/kortix/services/reconcile${reload ? '?reload=true' : ''}`;
305
+ return servicesRequest(baseUrl, path, { method: 'POST' });
306
+ }
307
+ export async function registerService(baseUrl, payload) {
308
+ return servicesRequest(baseUrl, '/kortix/services/register', {
309
+ method: 'POST',
310
+ body: JSON.stringify(payload),
311
+ });
312
+ }
313
+ //# sourceMappingURL=kortix-master.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kortix-master.js","sourceRoot":"","sources":["../../src/opencode/kortix-master.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * JSON request against `${baseUrl}/kortix/triggers${path}`, surfacing the
3
+ * daemon's error body on non-2xx responses.
4
+ */
5
+ export declare function triggersRequest<T>(baseUrl: string, path: string, init?: RequestInit): Promise<T>;
6
+ //# sourceMappingURL=triggers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"triggers.d.ts","sourceRoot":"","sources":["../../src/opencode/triggers.ts"],"names":[],"mappings":"AAaA;;;GAGG;AACH,wBAAsB,eAAe,CAAC,CAAC,EACrC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,CAAC,CAAC,CAgBZ"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Sandbox triggers client — the daemon `/kortix/triggers...` endpoints, owned
3
+ * by the SDK. The host resolves which sandbox base URL to talk to (it may
4
+ * differ from the globally active runtime — e.g. a specific trigger's owning
5
+ * sandbox, or a freshly-provisioned default sandbox) and calls through here
6
+ * instead of `authenticatedFetch('/kortix/triggers...')` directly.
7
+ *
8
+ * The trigger payload/response shapes are host-defined (cron/webhook trigger
9
+ * CRUD, executions) rather than part of the OpenCode protocol, so this stays a
10
+ * thin typed passthrough rather than a full typed surface per endpoint.
11
+ */
12
+ import { authenticatedFetch } from '../platform/auth.js';
13
+ /**
14
+ * JSON request against `${baseUrl}/kortix/triggers${path}`, surfacing the
15
+ * daemon's error body on non-2xx responses.
16
+ */
17
+ export async function triggersRequest(baseUrl, path, init) {
18
+ let base = baseUrl;
19
+ while (base.endsWith('/'))
20
+ base = base.slice(0, -1);
21
+ const response = await authenticatedFetch(`${base}/kortix/triggers${path}`, {
22
+ ...init,
23
+ headers: {
24
+ 'Content-Type': 'application/json',
25
+ ...init?.headers,
26
+ },
27
+ });
28
+ const body = await response.json();
29
+ if (!response.ok) {
30
+ throw new Error(body?.error || body?.message || `Request failed with ${response.status}`);
31
+ }
32
+ return body;
33
+ }
34
+ //# sourceMappingURL=triggers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"triggers.js","sourceRoot":"","sources":["../../src/opencode/triggers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,OAAe,EACf,IAAY,EACZ,IAAkB;IAElB,IAAI,IAAI,GAAG,OAAO,CAAC;IACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,GAAG,IAAI,mBAAmB,IAAI,EAAE,EAAE;QAC1E,GAAG,IAAI;QACP,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,GAAI,IAAI,EAAE,OAA8C;SACzD;KACF,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,OAAO,IAAI,uBAAuB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO,IAAS,CAAC;AACnB,CAAC"}
@@ -0,0 +1,106 @@
1
+ /**
2
+ * Billing & API Error Classes
3
+ *
4
+ * Simplified from the legacy 8-class hierarchy. The backend (kortix-api)
5
+ * only returns plain HTTP 402 with { message: "..." } for billing errors.
6
+ * All the old error codes (AGENT_RUN_LIMIT_EXCEEDED, THREAD_LIMIT_EXCEEDED, etc.)
7
+ * are no longer emitted by any backend endpoint.
8
+ */
9
+ /** Constructor fields for {@link ApiError} — everything beyond `message`. */
10
+ export interface ApiErrorFields {
11
+ status?: number;
12
+ code?: string;
13
+ /** Parsed error body (when the response carried JSON). */
14
+ details?: any;
15
+ /** Alias of `details` kept for legacy `.data` sniffers. */
16
+ data?: any;
17
+ /** The body's `detail` field (FastAPI-style), when present. */
18
+ detail?: any;
19
+ response?: Response;
20
+ /** Full request URL — set on timeouts so it's clear what timed out. */
21
+ url?: string;
22
+ /** Request path relative to the backend base — set on timeouts. */
23
+ endpoint?: string;
24
+ /** The timeout budget (ms) that elapsed — set on timeouts. */
25
+ timeout?: number;
26
+ /** Override `name` (e.g. 'AbortError') while keeping the class. */
27
+ name?: string;
28
+ stack?: string;
29
+ }
30
+ /**
31
+ * The REST error `backendApi` produces for any failed request. A real class —
32
+ * server-side wrappers and non-React hosts can `err instanceof ApiError` and
33
+ * branch on `.status`/`.code` instead of duck-typing `name === 'ApiError'`
34
+ * (which still works: `name` is preserved for legacy sniffers).
35
+ *
36
+ * `message` is defined as an ENUMERABLE own property on purpose: the previous
37
+ * ad-hoc `Object.assign(Object.create(Error.prototype), …)` objects had it
38
+ * enumerable, so spreads and JSON logging of these errors included it.
39
+ */
40
+ export declare class ApiError extends Error {
41
+ status?: number;
42
+ code?: string;
43
+ details?: any;
44
+ data?: any;
45
+ detail?: any;
46
+ response?: Response;
47
+ url?: string;
48
+ endpoint?: string;
49
+ timeout?: number;
50
+ constructor(message: string, fields?: ApiErrorFields);
51
+ }
52
+ /**
53
+ * "No token available" — `getToken` returned null, so the request was never
54
+ * sent (see `api-client.ts`). `code` is always `'NO_SESSION'`.
55
+ */
56
+ export declare class AuthError extends ApiError {
57
+ constructor(message?: string);
58
+ }
59
+ /**
60
+ * Generic billing error for HTTP 402 responses.
61
+ * This is the only billing error class the backend actually triggers.
62
+ */
63
+ export declare class BillingError extends Error {
64
+ status: number;
65
+ detail: {
66
+ message: string;
67
+ [key: string]: any;
68
+ };
69
+ constructor(status: number, detail: {
70
+ message: string;
71
+ [key: string]: any;
72
+ }, message?: string);
73
+ }
74
+ /**
75
+ * HTTP 431 - Request Header Fields Too Large.
76
+ * Typically when uploading many files at once.
77
+ */
78
+ export declare class RequestTooLargeError extends Error {
79
+ status: number;
80
+ detail: {
81
+ message: string;
82
+ suggestion: string;
83
+ };
84
+ constructor(status?: number, detail?: {
85
+ message?: string;
86
+ suggestion?: string;
87
+ }, message?: string);
88
+ }
89
+ /**
90
+ * Parse a raw API error into a BillingError if it's a 402.
91
+ * Returns the original error otherwise.
92
+ */
93
+ export declare function parseBillingError(error: any): Error;
94
+ /**
95
+ * Check if an error is a billing error that should prompt upgrade.
96
+ */
97
+ export declare function isBillingError(error: any): boolean;
98
+ export interface BillingErrorUI {
99
+ alertTitle: string;
100
+ alertSubtitle: string;
101
+ }
102
+ /**
103
+ * Format a billing error for display in the pricing modal.
104
+ */
105
+ export declare function formatBillingErrorForUI(error: any): BillingErrorUI | null;
106
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/platform/api/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,6EAA6E;AAC7E,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,2DAA2D;IAC3D,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,+DAA+D;IAC/D,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,uEAAuE;IACvE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8DAA8D;IAC9D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,qBAAa,QAAS,SAAQ,KAAK;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;gBAEL,OAAO,EAAE,MAAM,EAAE,MAAM,GAAE,cAAmB;CAezD;AAED;;;GAGG;AACH,qBAAa,SAAU,SAAQ,QAAQ;gBACzB,OAAO,SAAsB;CAI1C;AAED;;;GAGG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;gBAG9C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAC/C,OAAO,CAAC,EAAE,MAAM;CAQnB;AAED;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;gBAGA,MAAM,GAAE,MAAY,EACpB,MAAM,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,EAClD,OAAO,CAAC,EAAE,MAAM;CAcnB;AAMD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAUnD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAElD;AAMD,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,GAAG,GAAG,cAAc,GAAG,IAAI,CAoBzE"}
@@ -0,0 +1,137 @@
1
+ /**
2
+ * Billing & API Error Classes
3
+ *
4
+ * Simplified from the legacy 8-class hierarchy. The backend (kortix-api)
5
+ * only returns plain HTTP 402 with { message: "..." } for billing errors.
6
+ * All the old error codes (AGENT_RUN_LIMIT_EXCEEDED, THREAD_LIMIT_EXCEEDED, etc.)
7
+ * are no longer emitted by any backend endpoint.
8
+ */
9
+ /**
10
+ * The REST error `backendApi` produces for any failed request. A real class —
11
+ * server-side wrappers and non-React hosts can `err instanceof ApiError` and
12
+ * branch on `.status`/`.code` instead of duck-typing `name === 'ApiError'`
13
+ * (which still works: `name` is preserved for legacy sniffers).
14
+ *
15
+ * `message` is defined as an ENUMERABLE own property on purpose: the previous
16
+ * ad-hoc `Object.assign(Object.create(Error.prototype), …)` objects had it
17
+ * enumerable, so spreads and JSON logging of these errors included it.
18
+ */
19
+ export class ApiError extends Error {
20
+ status;
21
+ code;
22
+ details;
23
+ data;
24
+ detail;
25
+ response;
26
+ url;
27
+ endpoint;
28
+ timeout;
29
+ constructor(message, fields = {}) {
30
+ super(message);
31
+ this.name = 'ApiError';
32
+ const { name, stack, ...rest } = fields;
33
+ Object.assign(this, rest);
34
+ if (name)
35
+ this.name = name;
36
+ if (stack)
37
+ this.stack = stack;
38
+ Object.defineProperty(this, 'message', {
39
+ value: message,
40
+ enumerable: true,
41
+ writable: true,
42
+ configurable: true,
43
+ });
44
+ Object.setPrototypeOf(this, new.target.prototype);
45
+ }
46
+ }
47
+ /**
48
+ * "No token available" — `getToken` returned null, so the request was never
49
+ * sent (see `api-client.ts`). `code` is always `'NO_SESSION'`.
50
+ */
51
+ export class AuthError extends ApiError {
52
+ constructor(message = 'Not authenticated') {
53
+ super(message, { code: 'NO_SESSION' });
54
+ this.name = 'AuthError';
55
+ }
56
+ }
57
+ /**
58
+ * Generic billing error for HTTP 402 responses.
59
+ * This is the only billing error class the backend actually triggers.
60
+ */
61
+ export class BillingError extends Error {
62
+ status;
63
+ detail;
64
+ constructor(status, detail, message) {
65
+ super(message || detail.message || `Billing Error: ${status}`);
66
+ this.name = 'BillingError';
67
+ this.status = status;
68
+ this.detail = detail;
69
+ Object.setPrototypeOf(this, BillingError.prototype);
70
+ }
71
+ }
72
+ /**
73
+ * HTTP 431 - Request Header Fields Too Large.
74
+ * Typically when uploading many files at once.
75
+ */
76
+ export class RequestTooLargeError extends Error {
77
+ status;
78
+ detail;
79
+ constructor(status = 431, detail, message) {
80
+ const defaultMessage = 'Request headers are too large';
81
+ const defaultSuggestion = 'Try uploading files one at a time, or reduce the number of files in a single request.';
82
+ super(message || detail?.message || defaultMessage);
83
+ this.name = 'RequestTooLargeError';
84
+ this.status = status;
85
+ this.detail = {
86
+ message: detail?.message || defaultMessage,
87
+ suggestion: detail?.suggestion || defaultSuggestion,
88
+ };
89
+ Object.setPrototypeOf(this, RequestTooLargeError.prototype);
90
+ }
91
+ }
92
+ // ============================================================================
93
+ // Error Parsing
94
+ // ============================================================================
95
+ /**
96
+ * Parse a raw API error into a BillingError if it's a 402.
97
+ * Returns the original error otherwise.
98
+ */
99
+ export function parseBillingError(error) {
100
+ const status = error.response?.status || error.status;
101
+ if (status !== 402)
102
+ return error;
103
+ const errorData = error.response?.data || error.data || error.detail || {};
104
+ const detail = errorData?.detail || errorData;
105
+ return new BillingError(status, {
106
+ message: detail?.message || error.message || 'Billing error',
107
+ ...detail,
108
+ });
109
+ }
110
+ /**
111
+ * Check if an error is a billing error that should prompt upgrade.
112
+ */
113
+ export function isBillingError(error) {
114
+ return error instanceof BillingError;
115
+ }
116
+ /**
117
+ * Format a billing error for display in the pricing modal.
118
+ */
119
+ export function formatBillingErrorForUI(error) {
120
+ if (!(error instanceof BillingError))
121
+ return null;
122
+ const message = error.detail?.message?.toLowerCase() || '';
123
+ const isCreditsExhausted = message.includes('credit') ||
124
+ message.includes('balance') ||
125
+ message.includes('insufficient');
126
+ if (isCreditsExhausted) {
127
+ return {
128
+ alertTitle: 'You ran out of credits',
129
+ alertSubtitle: 'Upgrade your plan to get more credits and continue using the AI assistant.',
130
+ };
131
+ }
132
+ return {
133
+ alertTitle: 'Billing check failed',
134
+ alertSubtitle: error.detail?.message || 'Please upgrade to continue.',
135
+ };
136
+ }
137
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/platform/api/errors.ts"],"names":[],"mappings":"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"}