@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,235 @@
1
+ import { type ApiClientOptions } from '../api-client.js';
2
+ import { type ProjectFileEntry, type ProjectGitConnection, type ProjectRole, type ServerTokenOptions } from './shared.js';
3
+ /** Stable ids for experimental features (mirrors apps/api experimental/features). */
4
+ export type ExperimentalFeatureKey = 'apps' | 'agent_tunnel' | 'marketplace' | 'agentmail_email' | 'meet' | 'llm_gateway' | 'review_center';
5
+ /** One experimental feature as described by the API catalog. */
6
+ export interface ExperimentalFeatureView {
7
+ key: ExperimentalFeatureKey;
8
+ name: string;
9
+ description: string;
10
+ stability: 'experimental' | 'beta';
11
+ /** Platform supports it (operator env). When false the UI hides the toggle. */
12
+ available: boolean;
13
+ /** Effective per-project state (the switch position). */
14
+ enabled: boolean;
15
+ /** True when this project set an explicit choice (vs inheriting the default). */
16
+ overridden: boolean;
17
+ }
18
+ export interface KortixProject {
19
+ project_id: string;
20
+ account_id: string;
21
+ name: string;
22
+ repo_url: string;
23
+ default_branch: string;
24
+ manifest_path: string;
25
+ status: 'active' | 'archived';
26
+ metadata: Record<string, unknown>;
27
+ last_opened_at: string | null;
28
+ created_at: string;
29
+ updated_at: string;
30
+ project_role?: ProjectRole | null;
31
+ effective_project_role?: ProjectRole | null;
32
+ /** Effective on/off for each experimental feature for THIS project. */
33
+ experimental?: Record<ExperimentalFeatureKey, boolean>;
34
+ /** Full experimental-feature catalog (drives Customize → Settings →
35
+ * Experimental). Self-describing so the UI never hard-codes the list. */
36
+ experimental_features?: ExperimentalFeatureView[];
37
+ /** Back-compat alias for `experimental.apps`. */
38
+ apps_enabled?: boolean;
39
+ /** Effective per-project warm sandbox pool config (Customize → Sandbox). */
40
+ warm_pool?: {
41
+ enabled: boolean;
42
+ size: number;
43
+ };
44
+ /** Whether the warm pool feature is enabled platform-wide (gates the UI). */
45
+ warm_pool_available?: boolean;
46
+ /** Per-project sandbox-provider pin (Customize → Settings). null = follow the
47
+ * platform default/distribution. */
48
+ default_sandbox_provider?: string | null;
49
+ /** Enabled sandbox providers the picker offers (ALLOWED ∩ has-API-key). */
50
+ available_sandbox_providers?: string[];
51
+ }
52
+ export interface ProjectConfigSummary {
53
+ is_kortix_repo: boolean;
54
+ signals: Record<string, boolean>;
55
+ manifest_raw: string | null;
56
+ open_code_raw: string | null;
57
+ open_code_default_agent: string | null;
58
+ agent_discovery: 'opencode' | 'declarative';
59
+ agents: Array<{
60
+ name: string;
61
+ path: string;
62
+ description: string | null;
63
+ mode: string | null;
64
+ source?: 'opencode' | 'kortix.toml';
65
+ enabled?: boolean;
66
+ /** Per-agent governance from `kortix.toml [[agents]]` (read-only mirror).
67
+ * `'all'` = unscoped; a list = the allowlist; `[]` = none. Absent for
68
+ * OpenCode-discovered agents (not governed by [[agents]]). */
69
+ scope?: {
70
+ env: string[] | 'all';
71
+ connectors: string[] | 'all';
72
+ kortix_cli: string[] | 'all';
73
+ };
74
+ }>;
75
+ skills: Array<{
76
+ name: string;
77
+ path: string;
78
+ description: string | null;
79
+ }>;
80
+ commands: Array<{
81
+ name: string;
82
+ path: string;
83
+ description: string | null;
84
+ }>;
85
+ env: {
86
+ required: string[];
87
+ optional: string[];
88
+ };
89
+ }
90
+ export interface ProjectDetail {
91
+ project: KortixProject;
92
+ git_connection?: ProjectGitConnection | null;
93
+ config: ProjectConfigSummary;
94
+ file_count: number;
95
+ files: ProjectFileEntry[];
96
+ }
97
+ export interface ProjectLlmCatalogResponse {
98
+ models: Record<string, {
99
+ name: string;
100
+ free?: boolean;
101
+ reasoning?: boolean;
102
+ tool_call?: boolean;
103
+ attachment?: boolean;
104
+ temperature?: boolean;
105
+ limit?: {
106
+ context?: number;
107
+ output?: number;
108
+ };
109
+ }>;
110
+ }
111
+ export interface ProjectInput {
112
+ account_id?: string;
113
+ name?: string;
114
+ repo_url: string;
115
+ default_branch?: string;
116
+ manifest_path?: string;
117
+ }
118
+ export interface CreateProjectRepoInput {
119
+ account_id?: string;
120
+ name: string;
121
+ installation_id?: string;
122
+ private?: boolean;
123
+ description?: string;
124
+ starter_template?: 'general-knowledge-worker' | 'minimal';
125
+ }
126
+ export interface ProvisionProjectInput {
127
+ account_id?: string;
128
+ name: string;
129
+ /** Seed the managed repo with the Kortix starter so sessions can boot. */
130
+ seed_starter?: boolean;
131
+ starter_template?: 'general-knowledge-worker' | 'minimal';
132
+ marketplace_items?: string[];
133
+ }
134
+ export interface RepoCollaboratorInvite {
135
+ username: string;
136
+ permission: string;
137
+ /** Pending-invitation URL to accept on GitHub, or null if already a collaborator. */
138
+ invitationUrl: string | null;
139
+ alreadyCollaborator: boolean;
140
+ }
141
+ export declare function listProjects(): Promise<KortixProject[]>;
142
+ export declare function listProjectsForAccount(accountId?: string): Promise<KortixProject[]>;
143
+ export declare function getProject(projectId: string, options?: ApiClientOptions): Promise<KortixProject>;
144
+ /**
145
+ * Invite a GitHub user as a collaborator on a MANAGED repo — lets the project
146
+ * creator pull "their" Kortix-managed repo into their own GitHub account.
147
+ */
148
+ export declare function inviteRepoCollaborator(projectId: string, githubUsername: string, permission?: 'read' | 'write'): Promise<RepoCollaboratorInvite>;
149
+ export interface ManifestValidationIssue {
150
+ [key: string]: unknown;
151
+ }
152
+ export interface ManifestValidationResult {
153
+ valid: boolean;
154
+ issues: ManifestValidationIssue[];
155
+ }
156
+ /**
157
+ * Validate a `kortix.toml` manifest's raw TOML text server-side — the same
158
+ * schema the CLI (`kortix ship` pre-flight / `kortix validate`) and the CR-merge
159
+ * gate exercise. Always resolves (never throws on an invalid manifest) — the
160
+ * verdict is in the body.
161
+ */
162
+ export declare function validateProjectManifest(projectId: string, raw: string): Promise<ManifestValidationResult>;
163
+ export interface ProjectGitToken {
164
+ push_token: string;
165
+ repo_id: string | null;
166
+ repo_url: string | null;
167
+ }
168
+ /**
169
+ * Mint a fresh scoped git push token for a *managed* project (so the CLI can
170
+ * `kortix ship` without persisting credentials in git config). Throws (409)
171
+ * for BYO projects — they push with the user's own git remote auth.
172
+ */
173
+ export declare function getProjectGitToken(projectId: string): Promise<ProjectGitToken>;
174
+ /** True when this project's repo is a Kortix-managed GitHub repo (invitable). */
175
+ export declare function isManagedGithubProject(project: {
176
+ metadata?: Record<string, unknown> | null;
177
+ }): boolean;
178
+ export declare function getProjectDetail(projectId: string, options?: ApiClientOptions): Promise<ProjectDetail>;
179
+ export declare function getProjectLlmCatalog(projectId: string, options?: ApiClientOptions): Promise<ProjectLlmCatalogResponse>;
180
+ export declare function createProject(input: ProjectInput): Promise<KortixProject>;
181
+ export declare function createProjectRepo(input: CreateProjectRepoInput): Promise<KortixProject>;
182
+ /**
183
+ * Create a project backed by a managed Kortix git repo — the
184
+ * default. No GitHub account or repo-name uniqueness needed; the starter is
185
+ * seeded server-side so the project boots immediately.
186
+ */
187
+ export declare function provisionProject(input: ProvisionProjectInput): Promise<KortixProject>;
188
+ export declare function updateProject(projectId: string, input: Partial<ProjectInput>): Promise<KortixProject>;
189
+ /** Toggle an experimental feature for a project (Customize → Settings →
190
+ * Experimental). Pass `enabled: null` to clear the override and fall back to
191
+ * the operator default. */
192
+ export declare function updateExperimentalFeature(projectId: string, feature: ExperimentalFeatureKey, enabled: boolean | null): Promise<KortixProject>;
193
+ /** Set or clear the per-project sandbox-provider pin (Customize → Settings).
194
+ * Pass `null` to clear (follow the platform default/distribution). The value must
195
+ * be one of the project's `available_sandbox_providers`. */
196
+ export declare function updateProjectSandboxProvider(projectId: string, provider: string | null): Promise<KortixProject>;
197
+ /** @deprecated Use {@link updateExperimentalFeature}('apps', …). */
198
+ export declare function updateAppsConfig(projectId: string, input: {
199
+ enabled: boolean | null;
200
+ }): Promise<KortixProject>;
201
+ /**
202
+ * Configure the warm sandbox pool for one sandbox template (Customize → Sandbox).
203
+ * Warm pool is per-template + opt-in; `slug` selects which template (defaults to
204
+ * the platform default). Live ready/warming counts come back on each template via
205
+ * `listProjectSnapshots`.
206
+ */
207
+ export declare function updateTemplateWarmPool(projectId: string, input: {
208
+ slug: string;
209
+ enabled?: boolean;
210
+ size?: number;
211
+ }): Promise<KortixProject>;
212
+ export declare function setProjectOnboardingComplete(projectId: string, completed: boolean): Promise<KortixProject>;
213
+ export declare function archiveProject(projectId: string): Promise<{
214
+ ok: boolean;
215
+ }>;
216
+ /**
217
+ * Server-side / explicit-token variant of {@link listProjectsForAccount}.
218
+ * Returns `null` on any failure.
219
+ */
220
+ export declare function fetchProjectsForAccountWithToken(opts: ServerTokenOptions, accountId: string): Promise<KortixProject[] | null>;
221
+ export type ProvisionProjectWithTokenResult = {
222
+ ok: true;
223
+ project: KortixProject;
224
+ } | {
225
+ ok: false;
226
+ limitReached: boolean;
227
+ };
228
+ /**
229
+ * Server-side / explicit-token variant of {@link provisionProject}. Mirrors
230
+ * the original bootstrap behavior: a 403 with `code: 'project_limit_reached'`
231
+ * is reported distinctly so the caller can fall back to re-listing existing
232
+ * projects instead of treating it as a hard failure.
233
+ */
234
+ export declare function provisionProjectWithToken(opts: ServerTokenOptions, input: ProvisionProjectInput): Promise<ProvisionProjectWithTokenResult>;
235
+ //# sourceMappingURL=projects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../../src/platform/projects-client/projects.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,161 @@
1
+ // Projects — project CRUD, detail, experimental features, warm pool, onboarding.
2
+ import { backendApi } from '../api-client.js';
3
+ import { normalizeServerBackendBase, serverTokenGet, unwrap, } from './shared.js';
4
+ export async function listProjects() {
5
+ return unwrap(await backendApi.get('/projects'));
6
+ }
7
+ export async function listProjectsForAccount(accountId) {
8
+ const query = accountId ? `?account_id=${encodeURIComponent(accountId)}` : '';
9
+ return unwrap(await backendApi.get(`/projects${query}`));
10
+ }
11
+ export async function getProject(projectId, options) {
12
+ return unwrap(await backendApi.get(`/projects/${projectId}`, options));
13
+ }
14
+ /**
15
+ * Invite a GitHub user as a collaborator on a MANAGED repo — lets the project
16
+ * creator pull "their" Kortix-managed repo into their own GitHub account.
17
+ */
18
+ export async function inviteRepoCollaborator(projectId, githubUsername, permission = 'write') {
19
+ return unwrap(await backendApi.post(`/projects/${projectId}/git/collaborators`, { github_username: githubUsername, permission }));
20
+ }
21
+ /**
22
+ * Validate a `kortix.toml` manifest's raw TOML text server-side — the same
23
+ * schema the CLI (`kortix ship` pre-flight / `kortix validate`) and the CR-merge
24
+ * gate exercise. Always resolves (never throws on an invalid manifest) — the
25
+ * verdict is in the body.
26
+ */
27
+ export async function validateProjectManifest(projectId, raw) {
28
+ return unwrap(await backendApi.post(`/projects/${projectId}/manifest/validate`, { raw }), 'Failed to validate manifest');
29
+ }
30
+ /**
31
+ * Mint a fresh scoped git push token for a *managed* project (so the CLI can
32
+ * `kortix ship` without persisting credentials in git config). Throws (409)
33
+ * for BYO projects — they push with the user's own git remote auth.
34
+ */
35
+ export async function getProjectGitToken(projectId) {
36
+ return unwrap(await backendApi.post(`/projects/${projectId}/git-token`, {}), 'Failed to mint git token');
37
+ }
38
+ /** True when this project's repo is a Kortix-managed GitHub repo (invitable). */
39
+ export function isManagedGithubProject(project) {
40
+ const git = project.metadata?.git;
41
+ return git?.provider === 'github' && git?.managed === true;
42
+ }
43
+ export async function getProjectDetail(projectId, options) {
44
+ return unwrap(await backendApi.get(`/projects/${projectId}/detail`, {
45
+ showErrors: false,
46
+ ...options,
47
+ }));
48
+ }
49
+ export async function getProjectLlmCatalog(projectId, options) {
50
+ return unwrap(await backendApi.get(`/projects/${projectId}/llm-catalog`, {
51
+ showErrors: false,
52
+ ...options,
53
+ }));
54
+ }
55
+ export async function createProject(input) {
56
+ return unwrap(await backendApi.post('/projects', input));
57
+ }
58
+ export async function createProjectRepo(input) {
59
+ return unwrap(await backendApi.post('/projects/create-repo', input));
60
+ }
61
+ /**
62
+ * Create a project backed by a managed Kortix git repo — the
63
+ * default. No GitHub account or repo-name uniqueness needed; the starter is
64
+ * seeded server-side so the project boots immediately.
65
+ */
66
+ export async function provisionProject(input) {
67
+ return unwrap(await backendApi.post('/projects/provision', {
68
+ seed_starter: true,
69
+ ...input,
70
+ }));
71
+ }
72
+ export async function updateProject(projectId, input) {
73
+ return unwrap(await backendApi.patch(`/projects/${projectId}`, input));
74
+ }
75
+ /** Toggle an experimental feature for a project (Customize → Settings →
76
+ * Experimental). Pass `enabled: null` to clear the override and fall back to
77
+ * the operator default. */
78
+ export async function updateExperimentalFeature(projectId, feature, enabled) {
79
+ return unwrap(await backendApi.patch(`/projects/${projectId}/experimental`, {
80
+ feature,
81
+ enabled,
82
+ }));
83
+ }
84
+ /** Set or clear the per-project sandbox-provider pin (Customize → Settings).
85
+ * Pass `null` to clear (follow the platform default/distribution). The value must
86
+ * be one of the project's `available_sandbox_providers`. */
87
+ export async function updateProjectSandboxProvider(projectId, provider) {
88
+ return unwrap(await backendApi.patch(`/projects/${projectId}/sandbox-provider`, {
89
+ provider,
90
+ }));
91
+ }
92
+ /** @deprecated Use {@link updateExperimentalFeature}('apps', …). */
93
+ export async function updateAppsConfig(projectId, input) {
94
+ return updateExperimentalFeature(projectId, 'apps', input.enabled);
95
+ }
96
+ /**
97
+ * Configure the warm sandbox pool for one sandbox template (Customize → Sandbox).
98
+ * Warm pool is per-template + opt-in; `slug` selects which template (defaults to
99
+ * the platform default). Live ready/warming counts come back on each template via
100
+ * `listProjectSnapshots`.
101
+ */
102
+ export async function updateTemplateWarmPool(projectId, input) {
103
+ return unwrap(await backendApi.patch(`/projects/${projectId}/warm-pool`, input));
104
+ }
105
+ export async function setProjectOnboardingComplete(projectId, completed) {
106
+ return unwrap(await backendApi.patch(`/projects/${projectId}/onboarding`, { completed }));
107
+ }
108
+ export async function archiveProject(projectId) {
109
+ return unwrap(await backendApi.delete(`/projects/${projectId}`));
110
+ }
111
+ // ── Server-side explicit-token variants ──────────────────────────────────────
112
+ // Next.js server actions / route handlers (post-signup first-project
113
+ // bootstrap) run per-request with an already-resolved Supabase access token —
114
+ // they must not rely on the SDK's process-wide `configureKortix()` seam.
115
+ /**
116
+ * Server-side / explicit-token variant of {@link listProjectsForAccount}.
117
+ * Returns `null` on any failure.
118
+ */
119
+ export async function fetchProjectsForAccountWithToken(opts, accountId) {
120
+ return serverTokenGet(opts, `/v1/projects?account_id=${encodeURIComponent(accountId)}`);
121
+ }
122
+ /**
123
+ * Server-side / explicit-token variant of {@link provisionProject}. Mirrors
124
+ * the original bootstrap behavior: a 403 with `code: 'project_limit_reached'`
125
+ * is reported distinctly so the caller can fall back to re-listing existing
126
+ * projects instead of treating it as a hard failure.
127
+ */
128
+ export async function provisionProjectWithToken(opts, input) {
129
+ if (!opts.backendUrl || !opts.accessToken)
130
+ return { ok: false, limitReached: false };
131
+ const base = normalizeServerBackendBase(opts.backendUrl);
132
+ try {
133
+ const res = await fetch(`${base}/v1/projects/provision`, {
134
+ method: 'POST',
135
+ headers: {
136
+ Authorization: `Bearer ${opts.accessToken}`,
137
+ 'Content-Type': 'application/json',
138
+ },
139
+ body: JSON.stringify({ seed_starter: true, ...input }),
140
+ signal: AbortSignal.timeout(opts.timeoutMs ?? 90_000),
141
+ });
142
+ if (res.ok) {
143
+ const project = (await res.json().catch(() => null));
144
+ // A 200 whose body doesn't actually carry a project_id is not a usable
145
+ // success — report it as not-ok instead of handing the caller a project
146
+ // it can't build a `/projects/{id}` path from.
147
+ if (!project?.project_id)
148
+ return { ok: false, limitReached: false };
149
+ return { ok: true, project };
150
+ }
151
+ if (res.status === 403) {
152
+ const body = (await res.json().catch(() => null));
153
+ return { ok: false, limitReached: body?.code === 'project_limit_reached' };
154
+ }
155
+ return { ok: false, limitReached: false };
156
+ }
157
+ catch {
158
+ return { ok: false, limitReached: false };
159
+ }
160
+ }
161
+ //# sourceMappingURL=projects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../../src/platform/projects-client/projects.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ export declare class PublicSessionShareError extends Error {
2
+ readonly status: number;
3
+ constructor(message: string, status: number);
4
+ }
5
+ export interface PublicSessionShareMeta {
6
+ share: {
7
+ share_id: string;
8
+ session_id: string;
9
+ project_id: string;
10
+ resource_type: string;
11
+ label: string;
12
+ sandbox_status: string | null;
13
+ expires_at: string | null;
14
+ };
15
+ session: {
16
+ session_id: string;
17
+ title: string | null;
18
+ status: string;
19
+ created_at: string;
20
+ updated_at: string;
21
+ };
22
+ }
23
+ export interface PublicSessionTranscriptToolCall {
24
+ tool: string;
25
+ status: string | null;
26
+ }
27
+ export interface PublicSessionTranscriptMessage {
28
+ role: string;
29
+ created: string | null;
30
+ completed: string | null;
31
+ text: string;
32
+ tools: PublicSessionTranscriptToolCall[];
33
+ files: Array<{
34
+ filename: string | null;
35
+ mime: string | null;
36
+ }>;
37
+ reasoning_omitted: boolean;
38
+ }
39
+ export interface PublicSessionTranscript {
40
+ available: boolean;
41
+ reason: string | null;
42
+ opencode_session_id: string | null;
43
+ message_count: number;
44
+ messages: PublicSessionTranscriptMessage[];
45
+ }
46
+ /** Anonymous session metadata (title/status/timestamps) for a share id — the
47
+ * route's own `:shareId` param, NOT the `kps_...` public token. */
48
+ export declare function getPublicSessionShare(shareId: string): Promise<PublicSessionShareMeta>;
49
+ /** Anonymous, sanitized (text-only, no tool args/output, no file contents)
50
+ * transcript digest for a share id. */
51
+ export declare function getPublicSessionShareMessages(shareId: string): Promise<PublicSessionTranscript>;
52
+ //# sourceMappingURL=public-session-shares.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-session-shares.d.ts","sourceRoot":"","sources":["../../../src/platform/projects-client/public-session-shares.ts"],"names":[],"mappings":"AAgBA,qBAAa,uBAAwB,SAAQ,KAAK;aAG9B,MAAM,EAAE,MAAM;gBAD9B,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,MAAM;CAKjC;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE;QACL,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,MAAM,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;KAC3B,CAAC;IACF,OAAO,EAAE;QACP,UAAU,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAED,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,+BAA+B,EAAE,CAAC;IACzC,KAAK,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IAC/D,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,8BAA8B,EAAE,CAAC;CAC5C;AAyBD;oEACoE;AACpE,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAE5F;AAED;wCACwC;AACxC,wBAAsB,6BAA6B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAErG"}
@@ -0,0 +1,54 @@
1
+ // Anonymous, read-only session-share viewing — `/v1/public/session-shares/:shareId`
2
+ // and `.../messages` (apps/api/src/public-session-shares/index.ts). Backs the
3
+ // logged-out `(public)/share/[shareId]` page (`ShareViewer.tsx`).
4
+ //
5
+ // Deliberately NOT built on `backendApi` (platform/api-client.ts): that client
6
+ // wraps every call in the authenticated fetch path, which for a visitor with
7
+ // no token synthesizes a failure WITHOUT ever making the network call (see
8
+ // `opencode/client.ts`'s `getPublicClientForUrl` doc comment for the same
9
+ // footgun on the sandbox side). These routes are genuinely public — no
10
+ // Authorization header is ever sent, and no `configureKortix()` call is
11
+ // required for these functions to work; `getBackendUrl()` degrades to a sane
12
+ // localhost default when unconfigured, exactly like the sibling
13
+ // `getPublicShareUrlForToken`.
14
+ import { getBackendUrl } from '../../state/server-store/url-helpers.js';
15
+ export class PublicSessionShareError extends Error {
16
+ status;
17
+ constructor(message, status) {
18
+ super(message);
19
+ this.status = status;
20
+ this.name = 'PublicSessionShareError';
21
+ }
22
+ }
23
+ function publicSessionShareUrl(shareId, suffix = '') {
24
+ return `${getBackendUrl()}/public/session-shares/${encodeURIComponent(shareId)}${suffix}`;
25
+ }
26
+ async function getJson(url) {
27
+ const res = await fetch(url, { method: 'GET', headers: { Accept: 'application/json' } });
28
+ const text = await res.text().catch(() => '');
29
+ let body = null;
30
+ try {
31
+ body = text ? JSON.parse(text) : null;
32
+ }
33
+ catch {
34
+ // Non-JSON body — fall through to the generic error message below.
35
+ }
36
+ if (!res.ok) {
37
+ const message = (body && typeof body === 'object' && 'error' in body && typeof body.error === 'string'
38
+ ? body.error
39
+ : null) || res.statusText || `HTTP ${res.status}`;
40
+ throw new PublicSessionShareError(message, res.status);
41
+ }
42
+ return body;
43
+ }
44
+ /** Anonymous session metadata (title/status/timestamps) for a share id — the
45
+ * route's own `:shareId` param, NOT the `kps_...` public token. */
46
+ export async function getPublicSessionShare(shareId) {
47
+ return getJson(publicSessionShareUrl(shareId));
48
+ }
49
+ /** Anonymous, sanitized (text-only, no tool args/output, no file contents)
50
+ * transcript digest for a share id. */
51
+ export async function getPublicSessionShareMessages(shareId) {
52
+ return getJson(publicSessionShareUrl(shareId, '/messages'));
53
+ }
54
+ //# sourceMappingURL=public-session-shares.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-session-shares.js","sourceRoot":"","sources":["../../../src/platform/projects-client/public-session-shares.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,8EAA8E;AAC9E,kEAAkE;AAClE,EAAE;AACF,+EAA+E;AAC/E,6EAA6E;AAC7E,2EAA2E;AAC3E,0EAA0E;AAC1E,uEAAuE;AACvE,wEAAwE;AACxE,6EAA6E;AAC7E,gEAAgE;AAChE,+BAA+B;AAE/B,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAErE,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAG9B;IAFlB,YACE,OAAe,EACC,MAAc;QAE9B,KAAK,CAAC,OAAO,CAAC,CAAC;QAFC,WAAM,GAAN,MAAM,CAAQ;QAG9B,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AA4CD,SAAS,qBAAqB,CAAC,OAAe,EAAE,MAAM,GAAG,EAAE;IACzD,OAAO,GAAG,aAAa,EAAE,0BAA0B,kBAAkB,CAAC,OAAO,CAAC,GAAG,MAAM,EAAE,CAAC;AAC5F,CAAC;AAED,KAAK,UAAU,OAAO,CAAI,GAAW;IACnC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAAE,CAAC,CAAC;IACzF,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9C,IAAI,IAAI,GAAY,IAAI,CAAC;IACzB,IAAI,CAAC;QACH,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,mEAAmE;IACrE,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,OAAO,GACX,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,IAAI,IAAI,OAAQ,IAA4B,CAAC,KAAK,KAAK,QAAQ;YAC7G,CAAC,CAAE,IAA0B,CAAC,KAAK;YACnC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,IAAI,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;QACtD,MAAM,IAAI,uBAAuB,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,IAAS,CAAC;AACnB,CAAC;AAED;oEACoE;AACpE,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAAe;IACzD,OAAO,OAAO,CAAyB,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;AACzE,CAAC;AAED;wCACwC;AACxC,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,OAAe;IACjE,OAAO,OAAO,CAA0B,qBAAqB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;AACvF,CAAC"}
@@ -0,0 +1,57 @@
1
+ export type ReviewItemKind = 'change' | 'approval' | 'output' | 'decision' | 'batch';
2
+ export type ReviewItemStatus = 'needs_you' | 'waiting' | 'approved' | 'changes_requested' | 'rejected' | 'done' | 'dismissed';
3
+ export type ReviewItemRisk = 'none' | 'low' | 'medium' | 'high';
4
+ export type ReviewItemSource = 'web' | 'slack' | 'agent';
5
+ export type ReviewVerdict = 'approve' | 'reject' | 'changes' | 'answer' | 'dismiss';
6
+ export type ReviewSegment = 'needs_you' | 'waiting' | 'done';
7
+ export interface ApiReviewItem {
8
+ review_item_id: string;
9
+ account_id: string;
10
+ project_id: string;
11
+ origin_session_id: string | null;
12
+ kind: ReviewItemKind;
13
+ status: ReviewItemStatus;
14
+ risk: ReviewItemRisk;
15
+ source: ReviewItemSource;
16
+ title: string;
17
+ summary: string;
18
+ detail: Record<string, unknown>;
19
+ agent: string;
20
+ created_by: string;
21
+ acted_by: string | null;
22
+ acted_at: string | null;
23
+ feedback: string | null;
24
+ metadata: Record<string, unknown>;
25
+ created_at: string;
26
+ updated_at: string;
27
+ }
28
+ export declare function listReviewItems(projectId: string, params?: {
29
+ segment?: ReviewSegment;
30
+ kind?: ReviewItemKind;
31
+ }): Promise<{
32
+ review_items: ApiReviewItem[];
33
+ }>;
34
+ export declare function getReviewItem(projectId: string, reviewItemId: string): Promise<{
35
+ review_item: ApiReviewItem;
36
+ }>;
37
+ export declare function submitReviewItem(projectId: string, input: {
38
+ kind: 'output' | 'decision' | 'batch';
39
+ title: string;
40
+ summary?: string;
41
+ risk?: ReviewItemRisk;
42
+ detail?: Record<string, unknown>;
43
+ agent?: string;
44
+ session_id?: string;
45
+ }): Promise<ApiReviewItem>;
46
+ export declare function actReviewItem(projectId: string, reviewItemId: string, input: {
47
+ verdict: ReviewVerdict;
48
+ feedback?: string;
49
+ }): Promise<ApiReviewItem>;
50
+ export declare function bulkActReviewItems(projectId: string, input: {
51
+ ids: string[];
52
+ verdict: ReviewVerdict;
53
+ }): Promise<{
54
+ updated: number;
55
+ review_items: ApiReviewItem[];
56
+ }>;
57
+ //# sourceMappingURL=review.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../../src/platform/projects-client/review.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;AACrF,MAAM,MAAM,gBAAgB,GACxB,WAAW,GACX,SAAS,GACT,UAAU,GACV,mBAAmB,GACnB,UAAU,GACV,MAAM,GACN,WAAW,CAAC;AAChB,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAChE,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC;AACzD,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AACpF,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM,CAAC;AAE7D,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,gBAAgB,CAAC;IACzB,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,gBAAgB,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,aAAa,CAAC;IAAC,IAAI,CAAC,EAAE,cAAc,CAAA;CAAE;kBAOpB,aAAa,EAAE;GAMvD;AAED,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;iBAEnC,aAAa;GAIpD;AAED,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE;IACL,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,0BAGF;AAED,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE;IAAE,OAAO,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,0BAQrD;AAED,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE;IAAE,GAAG,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,aAAa,CAAA;CAAE;aAGb,MAAM;kBAAgB,aAAa,EAAE;GAKzE"}
@@ -0,0 +1,28 @@
1
+ // Review Center — per-project human-in-the-loop inbox (change requests, tool
2
+ // approvals, agent outputs/decisions) surfaced as one reviewable queue.
3
+ import { backendApi } from '../api-client.js';
4
+ import { unwrap } from './shared.js';
5
+ export async function listReviewItems(projectId, params) {
6
+ const q = new URLSearchParams();
7
+ if (params?.segment)
8
+ q.set('segment', params.segment);
9
+ if (params?.kind)
10
+ q.set('kind', params.kind);
11
+ const qs = q.toString();
12
+ return unwrap(await backendApi.get(`/projects/${projectId}/review/items${qs ? `?${qs}` : ''}`,
13
+ // Background poll — keep failures with the query consumer, not the console.
14
+ { showErrors: false }));
15
+ }
16
+ export async function getReviewItem(projectId, reviewItemId) {
17
+ return unwrap(await backendApi.get(`/projects/${projectId}/review/items/${reviewItemId}`));
18
+ }
19
+ export async function submitReviewItem(projectId, input) {
20
+ return unwrap(await backendApi.post(`/projects/${projectId}/review/items`, input));
21
+ }
22
+ export async function actReviewItem(projectId, reviewItemId, input) {
23
+ return unwrap(await backendApi.post(`/projects/${projectId}/review/items/${reviewItemId}/act`, input));
24
+ }
25
+ export async function bulkActReviewItems(projectId, input) {
26
+ return unwrap(await backendApi.post(`/projects/${projectId}/review/bulk`, input));
27
+ }
28
+ //# sourceMappingURL=review.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"review.js","sourceRoot":"","sources":["../../../src/platform/projects-client/review.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,wEAAwE;AAExE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAsClC,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,SAAiB,EACjB,MAA2D;IAE3D,MAAM,CAAC,GAAG,IAAI,eAAe,EAAE,CAAC;IAChC,IAAI,MAAM,EAAE,OAAO;QAAE,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACtD,IAAI,MAAM,EAAE,IAAI;QAAE,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;IACxB,OAAO,MAAM,CACX,MAAM,UAAU,CAAC,GAAG,CAClB,aAAa,SAAS,gBAAgB,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;IAC1D,4EAA4E;IAC5E,EAAE,UAAU,EAAE,KAAK,EAAE,CACtB,CACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,SAAiB,EAAE,YAAoB;IACzE,OAAO,MAAM,CACX,MAAM,UAAU,CAAC,GAAG,CAClB,aAAa,SAAS,iBAAiB,YAAY,EAAE,CACtD,CACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,SAAiB,EACjB,KAQC;IAED,OAAO,MAAM,CAAC,MAAM,UAAU,CAAC,IAAI,CAAgB,aAAa,SAAS,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC;AACpG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,SAAiB,EACjB,YAAoB,EACpB,KAAoD;IAEpD,OAAO,MAAM,CACX,MAAM,UAAU,CAAC,IAAI,CACnB,aAAa,SAAS,iBAAiB,YAAY,MAAM,EACzD,KAAK,CACN,CACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,SAAiB,EACjB,KAAgD;IAEhD,OAAO,MAAM,CACX,MAAM,UAAU,CAAC,IAAI,CACnB,aAAa,SAAS,cAAc,EACpC,KAAK,CACN,CACF,CAAC;AACJ,CAAC"}