@rudderhq/server 0.1.0-canary.0

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 (902) hide show
  1. package/LICENSE +14 -0
  2. package/dist/agent-auth-jwt.d.ts +14 -0
  3. package/dist/agent-auth-jwt.d.ts.map +1 -0
  4. package/dist/agent-auth-jwt.js +119 -0
  5. package/dist/agent-auth-jwt.js.map +1 -0
  6. package/dist/agent-runtimes/codex-models.d.ts +4 -0
  7. package/dist/agent-runtimes/codex-models.d.ts.map +1 -0
  8. package/dist/agent-runtimes/codex-models.js +98 -0
  9. package/dist/agent-runtimes/codex-models.js.map +1 -0
  10. package/dist/agent-runtimes/cursor-models.d.ts +13 -0
  11. package/dist/agent-runtimes/cursor-models.d.ts.map +1 -0
  12. package/dist/agent-runtimes/cursor-models.js +148 -0
  13. package/dist/agent-runtimes/cursor-models.js.map +1 -0
  14. package/dist/agent-runtimes/http/execute.d.ts +3 -0
  15. package/dist/agent-runtimes/http/execute.d.ts.map +1 -0
  16. package/dist/agent-runtimes/http/execute.js +39 -0
  17. package/dist/agent-runtimes/http/execute.js.map +1 -0
  18. package/dist/agent-runtimes/http/index.d.ts +3 -0
  19. package/dist/agent-runtimes/http/index.d.ts.map +1 -0
  20. package/dist/agent-runtimes/http/index.js +20 -0
  21. package/dist/agent-runtimes/http/index.js.map +1 -0
  22. package/dist/agent-runtimes/http/test.d.ts +3 -0
  23. package/dist/agent-runtimes/http/test.d.ts.map +1 -0
  24. package/dist/agent-runtimes/http/test.js +106 -0
  25. package/dist/agent-runtimes/http/test.js.map +1 -0
  26. package/dist/agent-runtimes/index.d.ts +4 -0
  27. package/dist/agent-runtimes/index.d.ts.map +1 -0
  28. package/dist/agent-runtimes/index.js +3 -0
  29. package/dist/agent-runtimes/index.js.map +1 -0
  30. package/dist/agent-runtimes/process/execute.d.ts +3 -0
  31. package/dist/agent-runtimes/process/execute.d.ts.map +1 -0
  32. package/dist/agent-runtimes/process/execute.js +63 -0
  33. package/dist/agent-runtimes/process/execute.js.map +1 -0
  34. package/dist/agent-runtimes/process/index.d.ts +3 -0
  35. package/dist/agent-runtimes/process/index.d.ts.map +1 -0
  36. package/dist/agent-runtimes/process/index.js +23 -0
  37. package/dist/agent-runtimes/process/index.js.map +1 -0
  38. package/dist/agent-runtimes/process/test.d.ts +3 -0
  39. package/dist/agent-runtimes/process/test.d.ts.map +1 -0
  40. package/dist/agent-runtimes/process/test.js +77 -0
  41. package/dist/agent-runtimes/process/test.js.map +1 -0
  42. package/dist/agent-runtimes/registry.d.ts +9 -0
  43. package/dist/agent-runtimes/registry.d.ts.map +1 -0
  44. package/dist/agent-runtimes/registry.js +189 -0
  45. package/dist/agent-runtimes/registry.js.map +1 -0
  46. package/dist/agent-runtimes/types.d.ts +2 -0
  47. package/dist/agent-runtimes/types.d.ts.map +1 -0
  48. package/dist/agent-runtimes/types.js +2 -0
  49. package/dist/agent-runtimes/types.js.map +1 -0
  50. package/dist/agent-runtimes/utils.d.ts +10 -0
  51. package/dist/agent-runtimes/utils.d.ts.map +1 -0
  52. package/dist/agent-runtimes/utils.js +14 -0
  53. package/dist/agent-runtimes/utils.js.map +1 -0
  54. package/dist/agent-workspace-key.d.ts +17 -0
  55. package/dist/agent-workspace-key.d.ts.map +1 -0
  56. package/dist/agent-workspace-key.js +49 -0
  57. package/dist/agent-workspace-key.js.map +1 -0
  58. package/dist/app.d.ts +14 -0
  59. package/dist/app.d.ts.map +1 -0
  60. package/dist/app.js +19 -0
  61. package/dist/app.js.map +1 -0
  62. package/dist/attachment-types.d.ts +33 -0
  63. package/dist/attachment-types.d.ts.map +1 -0
  64. package/dist/attachment-types.js +67 -0
  65. package/dist/attachment-types.js.map +1 -0
  66. package/dist/auth/better-auth.d.ts +24 -0
  67. package/dist/auth/better-auth.d.ts.map +1 -0
  68. package/dist/auth/better-auth.js +108 -0
  69. package/dist/auth/better-auth.js.map +1 -0
  70. package/dist/board-claim.d.ts +23 -0
  71. package/dist/board-claim.d.ts.map +1 -0
  72. package/dist/board-claim.js +115 -0
  73. package/dist/board-claim.js.map +1 -0
  74. package/dist/bootstrap/create-http-app.d.ts +6 -0
  75. package/dist/bootstrap/create-http-app.d.ts.map +1 -0
  76. package/dist/bootstrap/create-http-app.js +122 -0
  77. package/dist/bootstrap/create-http-app.js.map +1 -0
  78. package/dist/bootstrap/plugin-host-runtime.d.ts +116 -0
  79. package/dist/bootstrap/plugin-host-runtime.d.ts.map +1 -0
  80. package/dist/bootstrap/plugin-host-runtime.js +121 -0
  81. package/dist/bootstrap/plugin-host-runtime.js.map +1 -0
  82. package/dist/bootstrap/register-api-routes.d.ts +5 -0
  83. package/dist/bootstrap/register-api-routes.d.ts.map +1 -0
  84. package/dist/bootstrap/register-api-routes.js +65 -0
  85. package/dist/bootstrap/register-api-routes.js.map +1 -0
  86. package/dist/bootstrap/types.d.ts +24 -0
  87. package/dist/bootstrap/types.d.ts.map +1 -0
  88. package/dist/bootstrap/types.js +2 -0
  89. package/dist/bootstrap/types.js.map +1 -0
  90. package/dist/config-file.d.ts +5 -0
  91. package/dist/config-file.d.ts.map +1 -0
  92. package/dist/config-file.js +48 -0
  93. package/dist/config-file.js.map +1 -0
  94. package/dist/config.d.ts +45 -0
  95. package/dist/config.d.ts.map +1 -0
  96. package/dist/config.js +233 -0
  97. package/dist/config.js.map +1 -0
  98. package/dist/dev-server-status.d.ts +29 -0
  99. package/dist/dev-server-status.d.ts.map +1 -0
  100. package/dist/dev-server-status.js +75 -0
  101. package/dist/dev-server-status.js.map +1 -0
  102. package/dist/errors.d.ts +12 -0
  103. package/dist/errors.d.ts.map +1 -0
  104. package/dist/errors.js +28 -0
  105. package/dist/errors.js.map +1 -0
  106. package/dist/home-paths.d.ts +50 -0
  107. package/dist/home-paths.d.ts.map +1 -0
  108. package/dist/home-paths.js +183 -0
  109. package/dist/home-paths.js.map +1 -0
  110. package/dist/index.d.ts +69 -0
  111. package/dist/index.d.ts.map +1 -0
  112. package/dist/index.js +827 -0
  113. package/dist/index.js.map +1 -0
  114. package/dist/langfuse-transcript.d.ts +32 -0
  115. package/dist/langfuse-transcript.d.ts.map +1 -0
  116. package/dist/langfuse-transcript.js +341 -0
  117. package/dist/langfuse-transcript.js.map +1 -0
  118. package/dist/langfuse.d.ts +93 -0
  119. package/dist/langfuse.d.ts.map +1 -0
  120. package/dist/langfuse.js +412 -0
  121. package/dist/langfuse.js.map +1 -0
  122. package/dist/local-runtime.d.ts +67 -0
  123. package/dist/local-runtime.d.ts.map +1 -0
  124. package/dist/local-runtime.js +302 -0
  125. package/dist/local-runtime.js.map +1 -0
  126. package/dist/log-redaction.d.ts +11 -0
  127. package/dist/log-redaction.d.ts.map +1 -0
  128. package/dist/log-redaction.js +118 -0
  129. package/dist/log-redaction.js.map +1 -0
  130. package/dist/middleware/auth.d.ts +12 -0
  131. package/dist/middleware/auth.d.ts.map +1 -0
  132. package/dist/middleware/auth.js +144 -0
  133. package/dist/middleware/auth.js.map +1 -0
  134. package/dist/middleware/board-mutation-guard.d.ts +3 -0
  135. package/dist/middleware/board-mutation-guard.d.ts.map +1 -0
  136. package/dist/middleware/board-mutation-guard.js +59 -0
  137. package/dist/middleware/board-mutation-guard.js.map +1 -0
  138. package/dist/middleware/error-handler.d.ts +17 -0
  139. package/dist/middleware/error-handler.d.ts.map +1 -0
  140. package/dist/middleware/error-handler.js +37 -0
  141. package/dist/middleware/error-handler.js.map +1 -0
  142. package/dist/middleware/index.d.ts +4 -0
  143. package/dist/middleware/index.d.ts.map +1 -0
  144. package/dist/middleware/index.js +4 -0
  145. package/dist/middleware/index.js.map +1 -0
  146. package/dist/middleware/logger.d.ts +4 -0
  147. package/dist/middleware/logger.d.ts.map +1 -0
  148. package/dist/middleware/logger.js +133 -0
  149. package/dist/middleware/logger.js.map +1 -0
  150. package/dist/middleware/private-hostname-guard.d.ts +11 -0
  151. package/dist/middleware/private-hostname-guard.d.ts.map +1 -0
  152. package/dist/middleware/private-hostname-guard.js +78 -0
  153. package/dist/middleware/private-hostname-guard.js.map +1 -0
  154. package/dist/middleware/validate.d.ts +4 -0
  155. package/dist/middleware/validate.d.ts.map +1 -0
  156. package/dist/middleware/validate.js +7 -0
  157. package/dist/middleware/validate.js.map +1 -0
  158. package/dist/onboarding-assets/ceo/AGENTS.md +33 -0
  159. package/dist/onboarding-assets/ceo/HEARTBEAT.md +77 -0
  160. package/dist/onboarding-assets/ceo/SOUL.md +33 -0
  161. package/dist/onboarding-assets/ceo/TOOLS.md +3 -0
  162. package/dist/onboarding-assets/default/AGENTS.md +9 -0
  163. package/dist/onboarding-assets/default/HEARTBEAT.md +36 -0
  164. package/dist/onboarding-assets/default/SOUL.md +23 -0
  165. package/dist/onboarding-assets/default/TOOLS.md +3 -0
  166. package/dist/paths.d.ts +3 -0
  167. package/dist/paths.d.ts.map +1 -0
  168. package/dist/paths.js +31 -0
  169. package/dist/paths.js.map +1 -0
  170. package/dist/realtime/live-events-ws.d.ts +28 -0
  171. package/dist/realtime/live-events-ws.d.ts.map +1 -0
  172. package/dist/realtime/live-events-ws.js +187 -0
  173. package/dist/realtime/live-events-ws.js.map +1 -0
  174. package/dist/redaction.d.ts +4 -0
  175. package/dist/redaction.d.ts.map +1 -0
  176. package/dist/redaction.js +63 -0
  177. package/dist/redaction.js.map +1 -0
  178. package/dist/routes/access.d.ts +57 -0
  179. package/dist/routes/access.d.ts.map +1 -0
  180. package/dist/routes/access.js +2266 -0
  181. package/dist/routes/access.js.map +1 -0
  182. package/dist/routes/activity.d.ts +3 -0
  183. package/dist/routes/activity.d.ts.map +1 -0
  184. package/dist/routes/activity.js +78 -0
  185. package/dist/routes/activity.js.map +1 -0
  186. package/dist/routes/agents.d.ts +3 -0
  187. package/dist/routes/agents.d.ts.map +1 -0
  188. package/dist/routes/agents.js +1913 -0
  189. package/dist/routes/agents.js.map +1 -0
  190. package/dist/routes/approvals.d.ts +3 -0
  191. package/dist/routes/approvals.d.ts.map +1 -0
  192. package/dist/routes/approvals.js +365 -0
  193. package/dist/routes/approvals.js.map +1 -0
  194. package/dist/routes/assets.d.ts +4 -0
  195. package/dist/routes/assets.d.ts.map +1 -0
  196. package/dist/routes/assets.js +309 -0
  197. package/dist/routes/assets.js.map +1 -0
  198. package/dist/routes/authz.d.ts +16 -0
  199. package/dist/routes/authz.d.ts.map +1 -0
  200. package/dist/routes/authz.js +47 -0
  201. package/dist/routes/authz.js.map +1 -0
  202. package/dist/routes/automations.d.ts +3 -0
  203. package/dist/routes/automations.d.ts.map +1 -0
  204. package/dist/routes/automations.js +277 -0
  205. package/dist/routes/automations.js.map +1 -0
  206. package/dist/routes/chats.d.ts +4 -0
  207. package/dist/routes/chats.d.ts.map +1 -0
  208. package/dist/routes/chats.js +1162 -0
  209. package/dist/routes/chats.js.map +1 -0
  210. package/dist/routes/costs.d.ts +3 -0
  211. package/dist/routes/costs.d.ts.map +1 -0
  212. package/dist/routes/costs.js +268 -0
  213. package/dist/routes/costs.js.map +1 -0
  214. package/dist/routes/dashboard.d.ts +3 -0
  215. package/dist/routes/dashboard.d.ts.map +1 -0
  216. package/dist/routes/dashboard.js +15 -0
  217. package/dist/routes/dashboard.js.map +1 -0
  218. package/dist/routes/execution-workspaces.d.ts +3 -0
  219. package/dist/routes/execution-workspaces.d.ts.map +1 -0
  220. package/dist/routes/execution-workspaces.js +165 -0
  221. package/dist/routes/execution-workspaces.js.map +1 -0
  222. package/dist/routes/goals.d.ts +3 -0
  223. package/dist/routes/goals.d.ts.map +1 -0
  224. package/dist/routes/goals.js +95 -0
  225. package/dist/routes/goals.js.map +1 -0
  226. package/dist/routes/health.d.ts +12 -0
  227. package/dist/routes/health.d.ts.map +1 -0
  228. package/dist/routes/health.js +85 -0
  229. package/dist/routes/health.js.map +1 -0
  230. package/dist/routes/index.d.ts +19 -0
  231. package/dist/routes/index.d.ts.map +1 -0
  232. package/dist/routes/index.js +19 -0
  233. package/dist/routes/index.js.map +1 -0
  234. package/dist/routes/instance-settings.d.ts +6 -0
  235. package/dist/routes/instance-settings.d.ts.map +1 -0
  236. package/dist/routes/instance-settings.js +250 -0
  237. package/dist/routes/instance-settings.js.map +1 -0
  238. package/dist/routes/issues-checkout-wakeup.d.ts +9 -0
  239. package/dist/routes/issues-checkout-wakeup.d.ts.map +1 -0
  240. package/dist/routes/issues-checkout-wakeup.js +12 -0
  241. package/dist/routes/issues-checkout-wakeup.js.map +1 -0
  242. package/dist/routes/issues.d.ts +4 -0
  243. package/dist/routes/issues.d.ts.map +1 -0
  244. package/dist/routes/issues.js +1615 -0
  245. package/dist/routes/issues.js.map +1 -0
  246. package/dist/routes/llms.d.ts +3 -0
  247. package/dist/routes/llms.d.ts.map +1 -0
  248. package/dist/routes/llms.js +78 -0
  249. package/dist/routes/llms.js.map +1 -0
  250. package/dist/routes/messenger.d.ts +3 -0
  251. package/dist/routes/messenger.d.ts.map +1 -0
  252. package/dist/routes/messenger.js +108 -0
  253. package/dist/routes/messenger.js.map +1 -0
  254. package/dist/routes/org-chart-logo.d.ts +2 -0
  255. package/dist/routes/org-chart-logo.d.ts.map +1 -0
  256. package/dist/routes/org-chart-logo.js +2 -0
  257. package/dist/routes/org-chart-logo.js.map +1 -0
  258. package/dist/routes/org-chart-svg.d.ts +25 -0
  259. package/dist/routes/org-chart-svg.d.ts.map +1 -0
  260. package/dist/routes/org-chart-svg.js +652 -0
  261. package/dist/routes/org-chart-svg.js.map +1 -0
  262. package/dist/routes/organization-skills.d.ts +3 -0
  263. package/dist/routes/organization-skills.d.ts.map +1 -0
  264. package/dist/routes/organization-skills.js +253 -0
  265. package/dist/routes/organization-skills.js.map +1 -0
  266. package/dist/routes/orgs.d.ts +4 -0
  267. package/dist/routes/orgs.d.ts.map +1 -0
  268. package/dist/routes/orgs.js +575 -0
  269. package/dist/routes/orgs.js.map +1 -0
  270. package/dist/routes/plugin-ui-static.d.ts +69 -0
  271. package/dist/routes/plugin-ui-static.d.ts.map +1 -0
  272. package/dist/routes/plugin-ui-static.js +411 -0
  273. package/dist/routes/plugin-ui-static.js.map +1 -0
  274. package/dist/routes/plugins.d.ts +120 -0
  275. package/dist/routes/plugins.d.ts.map +1 -0
  276. package/dist/routes/plugins.js +1776 -0
  277. package/dist/routes/plugins.js.map +1 -0
  278. package/dist/routes/projects.d.ts +3 -0
  279. package/dist/routes/projects.d.ts.map +1 -0
  280. package/dist/routes/projects.js +235 -0
  281. package/dist/routes/projects.js.map +1 -0
  282. package/dist/routes/run-intelligence.d.ts +3 -0
  283. package/dist/routes/run-intelligence.d.ts.map +1 -0
  284. package/dist/routes/run-intelligence.js +58 -0
  285. package/dist/routes/run-intelligence.js.map +1 -0
  286. package/dist/routes/secrets.d.ts +3 -0
  287. package/dist/routes/secrets.d.ts.map +1 -0
  288. package/dist/routes/secrets.js +128 -0
  289. package/dist/routes/secrets.js.map +1 -0
  290. package/dist/routes/sidebar-badges.d.ts +3 -0
  291. package/dist/routes/sidebar-badges.d.ts.map +1 -0
  292. package/dist/routes/sidebar-badges.js +70 -0
  293. package/dist/routes/sidebar-badges.js.map +1 -0
  294. package/dist/secrets/external-stub-providers.d.ts +5 -0
  295. package/dist/secrets/external-stub-providers.d.ts.map +1 -0
  296. package/dist/secrets/external-stub-providers.js +21 -0
  297. package/dist/secrets/external-stub-providers.js.map +1 -0
  298. package/dist/secrets/local-encrypted-provider.d.ts +3 -0
  299. package/dist/secrets/local-encrypted-provider.d.ts.map +1 -0
  300. package/dist/secrets/local-encrypted-provider.js +116 -0
  301. package/dist/secrets/local-encrypted-provider.js.map +1 -0
  302. package/dist/secrets/provider-registry.d.ts +5 -0
  303. package/dist/secrets/provider-registry.d.ts.map +1 -0
  304. package/dist/secrets/provider-registry.js +20 -0
  305. package/dist/secrets/provider-registry.js.map +1 -0
  306. package/dist/secrets/types.d.ts +21 -0
  307. package/dist/secrets/types.d.ts.map +1 -0
  308. package/dist/secrets/types.js +2 -0
  309. package/dist/secrets/types.js.map +1 -0
  310. package/dist/services/access.d.ts +113 -0
  311. package/dist/services/access.d.ts.map +1 -0
  312. package/dist/services/access.js +247 -0
  313. package/dist/services/access.js.map +1 -0
  314. package/dist/services/activity-log.d.ts +17 -0
  315. package/dist/services/activity-log.d.ts.map +1 -0
  316. package/dist/services/activity-log.js +109 -0
  317. package/dist/services/activity-log.js.map +1 -0
  318. package/dist/services/activity.d.ts +472 -0
  319. package/dist/services/activity.d.ts.map +1 -0
  320. package/dist/services/activity.js +134 -0
  321. package/dist/services/activity.js.map +1 -0
  322. package/dist/services/agent-enabled-skills.d.ts +9 -0
  323. package/dist/services/agent-enabled-skills.d.ts.map +1 -0
  324. package/dist/services/agent-enabled-skills.js +89 -0
  325. package/dist/services/agent-enabled-skills.js.map +1 -0
  326. package/dist/services/agent-instructions.d.ts +98 -0
  327. package/dist/services/agent-instructions.d.ts.map +1 -0
  328. package/dist/services/agent-instructions.js +596 -0
  329. package/dist/services/agent-instructions.js.map +1 -0
  330. package/dist/services/agent-name-pool.d.ts +10 -0
  331. package/dist/services/agent-name-pool.d.ts.map +1 -0
  332. package/dist/services/agent-name-pool.js +230 -0
  333. package/dist/services/agent-name-pool.js.map +1 -0
  334. package/dist/services/agent-permissions.d.ts +6 -0
  335. package/dist/services/agent-permissions.d.ts.map +1 -0
  336. package/dist/services/agent-permissions.js +18 -0
  337. package/dist/services/agent-permissions.js.map +1 -0
  338. package/dist/services/agent-run-context.d.ts +142 -0
  339. package/dist/services/agent-run-context.d.ts.map +1 -0
  340. package/dist/services/agent-run-context.js +451 -0
  341. package/dist/services/agent-run-context.js.map +1 -0
  342. package/dist/services/agents.d.ts +1713 -0
  343. package/dist/services/agents.d.ts.map +1 -0
  344. package/dist/services/agents.js +750 -0
  345. package/dist/services/agents.js.map +1 -0
  346. package/dist/services/approvals.d.ts +546 -0
  347. package/dist/services/approvals.d.ts.map +1 -0
  348. package/dist/services/approvals.js +212 -0
  349. package/dist/services/approvals.js.map +1 -0
  350. package/dist/services/assets.d.ts +33 -0
  351. package/dist/services/assets.d.ts.map +1 -0
  352. package/dist/services/assets.js +17 -0
  353. package/dist/services/assets.js.map +1 -0
  354. package/dist/services/automations.d.ts +135 -0
  355. package/dist/services/automations.d.ts.map +1 -0
  356. package/dist/services/automations.js +1105 -0
  357. package/dist/services/automations.js.map +1 -0
  358. package/dist/services/board-auth.d.ts +234 -0
  359. package/dist/services/board-auth.d.ts.map +1 -0
  360. package/dist/services/board-auth.js +295 -0
  361. package/dist/services/board-auth.js.map +1 -0
  362. package/dist/services/budgets.d.ts +38 -0
  363. package/dist/services/budgets.d.ts.map +1 -0
  364. package/dist/services/budgets.js +784 -0
  365. package/dist/services/budgets.js.map +1 -0
  366. package/dist/services/chat-assistant.d.ts +62 -0
  367. package/dist/services/chat-assistant.d.ts.map +1 -0
  368. package/dist/services/chat-assistant.js +943 -0
  369. package/dist/services/chat-assistant.js.map +1 -0
  370. package/dist/services/chat-generation-locks.d.ts +3 -0
  371. package/dist/services/chat-generation-locks.d.ts.map +1 -0
  372. package/dist/services/chat-generation-locks.js +16 -0
  373. package/dist/services/chat-generation-locks.js.map +1 -0
  374. package/dist/services/chats.d.ts +723 -0
  375. package/dist/services/chats.d.ts.map +1 -0
  376. package/dist/services/chats.js +1188 -0
  377. package/dist/services/chats.js.map +1 -0
  378. package/dist/services/costs.d.ts +114 -0
  379. package/dist/services/costs.d.ts.map +1 -0
  380. package/dist/services/costs.js +326 -0
  381. package/dist/services/costs.js.map +1 -0
  382. package/dist/services/cron.d.ts +80 -0
  383. package/dist/services/cron.d.ts.map +1 -0
  384. package/dist/services/cron.js +300 -0
  385. package/dist/services/cron.js.map +1 -0
  386. package/dist/services/dashboard.d.ts +26 -0
  387. package/dist/services/dashboard.d.ts.map +1 -0
  388. package/dist/services/dashboard.js +98 -0
  389. package/dist/services/dashboard.js.map +1 -0
  390. package/dist/services/default-agent-instructions.d.ts +9 -0
  391. package/dist/services/default-agent-instructions.d.ts.map +1 -0
  392. package/dist/services/default-agent-instructions.js +20 -0
  393. package/dist/services/default-agent-instructions.js.map +1 -0
  394. package/dist/services/documents.d.ts +164 -0
  395. package/dist/services/documents.d.ts.map +1 -0
  396. package/dist/services/documents.js +382 -0
  397. package/dist/services/documents.js.map +1 -0
  398. package/dist/services/execution-workspace-policy.d.ts +20 -0
  399. package/dist/services/execution-workspace-policy.d.ts.map +1 -0
  400. package/dist/services/execution-workspace-policy.js +172 -0
  401. package/dist/services/execution-workspace-policy.js.map +1 -0
  402. package/dist/services/execution-workspaces.d.ts +19 -0
  403. package/dist/services/execution-workspaces.d.ts.map +1 -0
  404. package/dist/services/execution-workspaces.js +87 -0
  405. package/dist/services/execution-workspaces.js.map +1 -0
  406. package/dist/services/finance.d.ts +93 -0
  407. package/dist/services/finance.d.ts.map +1 -0
  408. package/dist/services/finance.js +120 -0
  409. package/dist/services/finance.js.map +1 -0
  410. package/dist/services/goals.d.ts +433 -0
  411. package/dist/services/goals.d.ts.map +1 -0
  412. package/dist/services/goals.js +54 -0
  413. package/dist/services/goals.js.map +1 -0
  414. package/dist/services/heartbeat-run-summary.d.ts +2 -0
  415. package/dist/services/heartbeat-run-summary.d.ts.map +1 -0
  416. package/dist/services/heartbeat-run-summary.js +131 -0
  417. package/dist/services/heartbeat-run-summary.js.map +1 -0
  418. package/dist/services/heartbeat.d.ts +2 -0
  419. package/dist/services/heartbeat.d.ts.map +1 -0
  420. package/dist/services/heartbeat.js +2 -0
  421. package/dist/services/heartbeat.js.map +1 -0
  422. package/dist/services/hire-hook.d.ts +14 -0
  423. package/dist/services/hire-hook.d.ts.map +1 -0
  424. package/dist/services/hire-hook.js +85 -0
  425. package/dist/services/hire-hook.js.map +1 -0
  426. package/dist/services/index.d.ts +38 -0
  427. package/dist/services/index.d.ts.map +1 -0
  428. package/dist/services/index.js +38 -0
  429. package/dist/services/index.js.map +1 -0
  430. package/dist/services/instance-settings.d.ts +14 -0
  431. package/dist/services/instance-settings.d.ts.map +1 -0
  432. package/dist/services/instance-settings.js +158 -0
  433. package/dist/services/instance-settings.js.map +1 -0
  434. package/dist/services/issue-approvals.d.ts +56 -0
  435. package/dist/services/issue-approvals.d.ts.map +1 -0
  436. package/dist/services/issue-approvals.js +153 -0
  437. package/dist/services/issue-approvals.js.map +1 -0
  438. package/dist/services/issue-assignment-wakeup.d.ts +32 -0
  439. package/dist/services/issue-assignment-wakeup.d.ts.map +1 -0
  440. package/dist/services/issue-assignment-wakeup.js +43 -0
  441. package/dist/services/issue-assignment-wakeup.js.map +1 -0
  442. package/dist/services/issue-goal-fallback.d.ts +15 -0
  443. package/dist/services/issue-goal-fallback.d.ts.map +1 -0
  444. package/dist/services/issue-goal-fallback.js +15 -0
  445. package/dist/services/issue-goal-fallback.js.map +1 -0
  446. package/dist/services/issues.d.ts +580 -0
  447. package/dist/services/issues.d.ts.map +1 -0
  448. package/dist/services/issues.js +1464 -0
  449. package/dist/services/issues.js.map +1 -0
  450. package/dist/services/knowledge-portability/organization-portability.d.ts +23 -0
  451. package/dist/services/knowledge-portability/organization-portability.d.ts.map +1 -0
  452. package/dist/services/knowledge-portability/organization-portability.js +3795 -0
  453. package/dist/services/knowledge-portability/organization-portability.js.map +1 -0
  454. package/dist/services/knowledge-portability/organization-skills.d.ts +105 -0
  455. package/dist/services/knowledge-portability/organization-skills.d.ts.map +1 -0
  456. package/dist/services/knowledge-portability/organization-skills.js +3172 -0
  457. package/dist/services/knowledge-portability/organization-skills.js.map +1 -0
  458. package/dist/services/live-events.d.ts +17 -0
  459. package/dist/services/live-events.d.ts.map +1 -0
  460. package/dist/services/live-events.js +33 -0
  461. package/dist/services/live-events.js.map +1 -0
  462. package/dist/services/messenger.d.ts +111 -0
  463. package/dist/services/messenger.d.ts.map +1 -0
  464. package/dist/services/messenger.js +774 -0
  465. package/dist/services/messenger.js.map +1 -0
  466. package/dist/services/native-path-picker.d.ts +18 -0
  467. package/dist/services/native-path-picker.d.ts.map +1 -0
  468. package/dist/services/native-path-picker.js +119 -0
  469. package/dist/services/native-path-picker.js.map +1 -0
  470. package/dist/services/operator-profile.d.ts +7 -0
  471. package/dist/services/operator-profile.d.ts.map +1 -0
  472. package/dist/services/operator-profile.js +66 -0
  473. package/dist/services/operator-profile.js.map +1 -0
  474. package/dist/services/organization-export-readme.d.ts +17 -0
  475. package/dist/services/organization-export-readme.d.ts.map +1 -0
  476. package/dist/services/organization-export-readme.js +148 -0
  477. package/dist/services/organization-export-readme.js.map +1 -0
  478. package/dist/services/organization-portability.d.ts +2 -0
  479. package/dist/services/organization-portability.d.ts.map +1 -0
  480. package/dist/services/organization-portability.js +2 -0
  481. package/dist/services/organization-portability.js.map +1 -0
  482. package/dist/services/organization-skills.d.ts +2 -0
  483. package/dist/services/organization-skills.d.ts.map +1 -0
  484. package/dist/services/organization-skills.js +2 -0
  485. package/dist/services/organization-skills.js.map +1 -0
  486. package/dist/services/organization-workspace-browser.d.ts +8 -0
  487. package/dist/services/organization-workspace-browser.d.ts.map +1 -0
  488. package/dist/services/organization-workspace-browser.js +229 -0
  489. package/dist/services/organization-workspace-browser.js.map +1 -0
  490. package/dist/services/organization-workspace.d.ts +5 -0
  491. package/dist/services/organization-workspace.d.ts.map +1 -0
  492. package/dist/services/organization-workspace.js +71 -0
  493. package/dist/services/organization-workspace.js.map +1 -0
  494. package/dist/services/orgs.d.ts +163 -0
  495. package/dist/services/orgs.d.ts.map +1 -0
  496. package/dist/services/orgs.js +327 -0
  497. package/dist/services/orgs.js.map +1 -0
  498. package/dist/services/plugin-capability-validator.d.ts +108 -0
  499. package/dist/services/plugin-capability-validator.d.ts.map +1 -0
  500. package/dist/services/plugin-capability-validator.js +268 -0
  501. package/dist/services/plugin-capability-validator.js.map +1 -0
  502. package/dist/services/plugin-config-validator.d.ts +26 -0
  503. package/dist/services/plugin-config-validator.d.ts.map +1 -0
  504. package/dist/services/plugin-config-validator.js +41 -0
  505. package/dist/services/plugin-config-validator.js.map +1 -0
  506. package/dist/services/plugin-dev-watcher.d.ts +30 -0
  507. package/dist/services/plugin-dev-watcher.d.ts.map +1 -0
  508. package/dist/services/plugin-dev-watcher.js +241 -0
  509. package/dist/services/plugin-dev-watcher.js.map +1 -0
  510. package/dist/services/plugin-event-bus.d.ts +149 -0
  511. package/dist/services/plugin-event-bus.d.ts.map +1 -0
  512. package/dist/services/plugin-event-bus.js +258 -0
  513. package/dist/services/plugin-event-bus.js.map +1 -0
  514. package/dist/services/plugin-host-service-cleanup.d.ts +14 -0
  515. package/dist/services/plugin-host-service-cleanup.d.ts.map +1 -0
  516. package/dist/services/plugin-host-service-cleanup.js +37 -0
  517. package/dist/services/plugin-host-service-cleanup.js.map +1 -0
  518. package/dist/services/plugin-host-services.d.ts +13 -0
  519. package/dist/services/plugin-host-services.d.ts.map +1 -0
  520. package/dist/services/plugin-host-services.js +973 -0
  521. package/dist/services/plugin-host-services.js.map +1 -0
  522. package/dist/services/plugin-job-coordinator.d.ts +81 -0
  523. package/dist/services/plugin-job-coordinator.d.ts.map +1 -0
  524. package/dist/services/plugin-job-coordinator.js +172 -0
  525. package/dist/services/plugin-job-coordinator.js.map +1 -0
  526. package/dist/services/plugin-job-scheduler.d.ts +163 -0
  527. package/dist/services/plugin-job-scheduler.d.ts.map +1 -0
  528. package/dist/services/plugin-job-scheduler.js +564 -0
  529. package/dist/services/plugin-job-scheduler.js.map +1 -0
  530. package/dist/services/plugin-job-store.d.ts +208 -0
  531. package/dist/services/plugin-job-store.d.ts.map +1 -0
  532. package/dist/services/plugin-job-store.js +350 -0
  533. package/dist/services/plugin-job-store.js.map +1 -0
  534. package/dist/services/plugin-lifecycle.d.ts +203 -0
  535. package/dist/services/plugin-lifecycle.d.ts.map +1 -0
  536. package/dist/services/plugin-lifecycle.js +476 -0
  537. package/dist/services/plugin-lifecycle.js.map +1 -0
  538. package/dist/services/plugin-loader.d.ts +441 -0
  539. package/dist/services/plugin-loader.d.ts.map +1 -0
  540. package/dist/services/plugin-loader.js +1192 -0
  541. package/dist/services/plugin-loader.js.map +1 -0
  542. package/dist/services/plugin-log-retention.d.ts +20 -0
  543. package/dist/services/plugin-log-retention.d.ts.map +1 -0
  544. package/dist/services/plugin-log-retention.js +63 -0
  545. package/dist/services/plugin-log-retention.js.map +1 -0
  546. package/dist/services/plugin-manifest-validator.d.ts +79 -0
  547. package/dist/services/plugin-manifest-validator.d.ts.map +1 -0
  548. package/dist/services/plugin-manifest-validator.js +84 -0
  549. package/dist/services/plugin-manifest-validator.js.map +1 -0
  550. package/dist/services/plugin-registry.d.ts +2542 -0
  551. package/dist/services/plugin-registry.d.ts.map +1 -0
  552. package/dist/services/plugin-registry.js +539 -0
  553. package/dist/services/plugin-registry.js.map +1 -0
  554. package/dist/services/plugin-runtime-sandbox.d.ts +40 -0
  555. package/dist/services/plugin-runtime-sandbox.d.ts.map +1 -0
  556. package/dist/services/plugin-runtime-sandbox.js +154 -0
  557. package/dist/services/plugin-runtime-sandbox.js.map +1 -0
  558. package/dist/services/plugin-secrets-handler.d.ts +81 -0
  559. package/dist/services/plugin-secrets-handler.d.ts.map +1 -0
  560. package/dist/services/plugin-secrets-handler.js +275 -0
  561. package/dist/services/plugin-secrets-handler.js.map +1 -0
  562. package/dist/services/plugin-state-store.d.ts +92 -0
  563. package/dist/services/plugin-state-store.d.ts.map +1 -0
  564. package/dist/services/plugin-state-store.js +190 -0
  565. package/dist/services/plugin-state-store.js.map +1 -0
  566. package/dist/services/plugin-stream-bus.d.ts +29 -0
  567. package/dist/services/plugin-stream-bus.d.ts.map +1 -0
  568. package/dist/services/plugin-stream-bus.js +48 -0
  569. package/dist/services/plugin-stream-bus.js.map +1 -0
  570. package/dist/services/plugin-tool-dispatcher.d.ts +180 -0
  571. package/dist/services/plugin-tool-dispatcher.d.ts.map +1 -0
  572. package/dist/services/plugin-tool-dispatcher.js +224 -0
  573. package/dist/services/plugin-tool-dispatcher.js.map +1 -0
  574. package/dist/services/plugin-tool-registry.d.ts +192 -0
  575. package/dist/services/plugin-tool-registry.d.ts.map +1 -0
  576. package/dist/services/plugin-tool-registry.js +224 -0
  577. package/dist/services/plugin-tool-registry.js.map +1 -0
  578. package/dist/services/plugin-worker-manager.d.ts +260 -0
  579. package/dist/services/plugin-worker-manager.d.ts.map +1 -0
  580. package/dist/services/plugin-worker-manager.js +835 -0
  581. package/dist/services/plugin-worker-manager.js.map +1 -0
  582. package/dist/services/projects.d.ts +92 -0
  583. package/dist/services/projects.d.ts.map +1 -0
  584. package/dist/services/projects.js +705 -0
  585. package/dist/services/projects.js.map +1 -0
  586. package/dist/services/quota-windows.d.ts +9 -0
  587. package/dist/services/quota-windows.d.ts.map +1 -0
  588. package/dist/services/quota-windows.js +56 -0
  589. package/dist/services/quota-windows.js.map +1 -0
  590. package/dist/services/resource-catalog.d.ts +29 -0
  591. package/dist/services/resource-catalog.d.ts.map +1 -0
  592. package/dist/services/resource-catalog.js +298 -0
  593. package/dist/services/resource-catalog.js.map +1 -0
  594. package/dist/services/run-intelligence.d.ts +31 -0
  595. package/dist/services/run-intelligence.d.ts.map +1 -0
  596. package/dist/services/run-intelligence.js +315 -0
  597. package/dist/services/run-intelligence.js.map +1 -0
  598. package/dist/services/run-log-store.d.ts +36 -0
  599. package/dist/services/run-log-store.d.ts.map +1 -0
  600. package/dist/services/run-log-store.js +114 -0
  601. package/dist/services/run-log-store.js.map +1 -0
  602. package/dist/services/runtime-kernel/heartbeat.d.ts +882 -0
  603. package/dist/services/runtime-kernel/heartbeat.d.ts.map +1 -0
  604. package/dist/services/runtime-kernel/heartbeat.js +4345 -0
  605. package/dist/services/runtime-kernel/heartbeat.js.map +1 -0
  606. package/dist/services/runtime-trace-metadata.d.ts +12 -0
  607. package/dist/services/runtime-trace-metadata.d.ts.map +1 -0
  608. package/dist/services/runtime-trace-metadata.js +13 -0
  609. package/dist/services/runtime-trace-metadata.js.map +1 -0
  610. package/dist/services/secrets.d.ts +511 -0
  611. package/dist/services/secrets.d.ts.map +1 -0
  612. package/dist/services/secrets.js +289 -0
  613. package/dist/services/secrets.js.map +1 -0
  614. package/dist/services/sidebar-badges.d.ts +11 -0
  615. package/dist/services/sidebar-badges.d.ts.map +1 -0
  616. package/dist/services/sidebar-badges.js +43 -0
  617. package/dist/services/sidebar-badges.js.map +1 -0
  618. package/dist/services/work-products.d.ts +14 -0
  619. package/dist/services/work-products.d.ts.map +1 -0
  620. package/dist/services/work-products.js +100 -0
  621. package/dist/services/work-products.js.map +1 -0
  622. package/dist/services/workspace-operation-log-store.d.ts +35 -0
  623. package/dist/services/workspace-operation-log-store.d.ts.map +1 -0
  624. package/dist/services/workspace-operation-log-store.js +115 -0
  625. package/dist/services/workspace-operation-log-store.js.map +1 -0
  626. package/dist/services/workspace-operations.d.ts +46 -0
  627. package/dist/services/workspace-operations.d.ts.map +1 -0
  628. package/dist/services/workspace-operations.js +237 -0
  629. package/dist/services/workspace-operations.js.map +1 -0
  630. package/dist/services/workspace-runtime.d.ts +164 -0
  631. package/dist/services/workspace-runtime.d.ts.map +1 -0
  632. package/dist/services/workspace-runtime.js +1235 -0
  633. package/dist/services/workspace-runtime.js.map +1 -0
  634. package/dist/startup-banner.d.ts +31 -0
  635. package/dist/startup-banner.d.ts.map +1 -0
  636. package/dist/startup-banner.js +121 -0
  637. package/dist/startup-banner.js.map +1 -0
  638. package/dist/storage/index.d.ts +6 -0
  639. package/dist/storage/index.d.ts.map +1 -0
  640. package/dist/storage/index.js +29 -0
  641. package/dist/storage/index.js.map +1 -0
  642. package/dist/storage/local-disk-provider.d.ts +3 -0
  643. package/dist/storage/local-disk-provider.d.ts.map +1 -0
  644. package/dist/storage/local-disk-provider.js +79 -0
  645. package/dist/storage/local-disk-provider.js.map +1 -0
  646. package/dist/storage/provider-registry.d.ts +4 -0
  647. package/dist/storage/provider-registry.d.ts.map +1 -0
  648. package/dist/storage/provider-registry.js +15 -0
  649. package/dist/storage/provider-registry.js.map +1 -0
  650. package/dist/storage/s3-provider.d.ts +11 -0
  651. package/dist/storage/s3-provider.d.ts.map +1 -0
  652. package/dist/storage/s3-provider.js +123 -0
  653. package/dist/storage/s3-provider.js.map +1 -0
  654. package/dist/storage/service.d.ts +3 -0
  655. package/dist/storage/service.d.ts.map +1 -0
  656. package/dist/storage/service.js +120 -0
  657. package/dist/storage/service.js.map +1 -0
  658. package/dist/storage/types.d.ts +55 -0
  659. package/dist/storage/types.d.ts.map +1 -0
  660. package/dist/storage/types.js +2 -0
  661. package/dist/storage/types.js.map +1 -0
  662. package/dist/ui-branding.d.ts +14 -0
  663. package/dist/ui-branding.d.ts.map +1 -0
  664. package/dist/ui-branding.js +201 -0
  665. package/dist/ui-branding.js.map +1 -0
  666. package/dist/version.d.ts +2 -0
  667. package/dist/version.d.ts.map +1 -0
  668. package/dist/version.js +5 -0
  669. package/dist/version.js.map +1 -0
  670. package/package.json +101 -0
  671. package/resources/bundled-skills/para-memory-files/SKILL.md +114 -0
  672. package/resources/bundled-skills/para-memory-files/references/schemas.md +35 -0
  673. package/resources/bundled-skills/rudder/SKILL.md +265 -0
  674. package/resources/bundled-skills/rudder/references/api-reference.md +253 -0
  675. package/resources/bundled-skills/rudder/references/cli-reference.md +67 -0
  676. package/resources/bundled-skills/rudder/references/organization-skills.md +155 -0
  677. package/resources/bundled-skills/rudder-create-agent/SKILL.md +166 -0
  678. package/resources/bundled-skills/rudder-create-agent/references/api-reference.md +172 -0
  679. package/resources/bundled-skills/rudder-create-agent/references/cli-reference.md +126 -0
  680. package/resources/bundled-skills/rudder-create-plugin/SKILL.md +103 -0
  681. package/resources/community-skills/deep-research/README.md +124 -0
  682. package/resources/community-skills/deep-research/SKILL.md +107 -0
  683. package/resources/community-skills/deep-research/reference/continuation.md +169 -0
  684. package/resources/community-skills/deep-research/reference/html-generation.md +103 -0
  685. package/resources/community-skills/deep-research/reference/methodology.md +421 -0
  686. package/resources/community-skills/deep-research/reference/quality-gates.md +197 -0
  687. package/resources/community-skills/deep-research/reference/report-assembly.md +119 -0
  688. package/resources/community-skills/deep-research/reference/weasyprint_guidelines.md +324 -0
  689. package/resources/community-skills/deep-research/requirements.txt +14 -0
  690. package/resources/community-skills/deep-research/scripts/citation_manager.py +177 -0
  691. package/resources/community-skills/deep-research/scripts/md_to_html.py +330 -0
  692. package/resources/community-skills/deep-research/scripts/research_engine.py +582 -0
  693. package/resources/community-skills/deep-research/scripts/source_evaluator.py +292 -0
  694. package/resources/community-skills/deep-research/scripts/validate_report.py +403 -0
  695. package/resources/community-skills/deep-research/scripts/verify_citations.py +426 -0
  696. package/resources/community-skills/deep-research/scripts/verify_html.py +220 -0
  697. package/resources/community-skills/deep-research/templates/mckinsey_report_template.html +443 -0
  698. package/resources/community-skills/deep-research/templates/report_template.md +433 -0
  699. package/resources/community-skills/skill-creator/SKILL.md +9 -0
  700. package/resources/community-skills/software-product-advisor/SKILL.md +290 -0
  701. package/skills/para-memory-files/SKILL.md +114 -0
  702. package/skills/para-memory-files/references/schemas.md +35 -0
  703. package/skills/rudder/SKILL.md +265 -0
  704. package/skills/rudder/references/api-reference.md +253 -0
  705. package/skills/rudder/references/cli-reference.md +67 -0
  706. package/skills/rudder/references/organization-skills.md +155 -0
  707. package/skills/rudder-create-agent/SKILL.md +166 -0
  708. package/skills/rudder-create-agent/references/api-reference.md +172 -0
  709. package/skills/rudder-create-agent/references/cli-reference.md +126 -0
  710. package/skills/rudder-create-plugin/SKILL.md +103 -0
  711. package/ui-dist/android-chrome-192x192.png +0 -0
  712. package/ui-dist/android-chrome-512x512.png +0 -0
  713. package/ui-dist/android-chrome-maskable-512x512.png +0 -0
  714. package/ui-dist/apple-touch-icon.png +0 -0
  715. package/ui-dist/assets/_basePickBy-CjUu04_e.js +1 -0
  716. package/ui-dist/assets/_baseUniq-C9YNlrVG.js +1 -0
  717. package/ui-dist/assets/apl-B4CMkyY2.js +1 -0
  718. package/ui-dist/assets/arc-CSSZfktq.js +1 -0
  719. package/ui-dist/assets/architectureDiagram-2XIMDMQ5-Co78JKUi.js +36 -0
  720. package/ui-dist/assets/asciiarmor-Df11BRmG.js +1 -0
  721. package/ui-dist/assets/asn1-EdZsLKOL.js +1 -0
  722. package/ui-dist/assets/asterisk-B-8jnY81.js +1 -0
  723. package/ui-dist/assets/blockDiagram-WCTKOSBZ-2KUUIzzz.js +132 -0
  724. package/ui-dist/assets/brainfuck-C4LP7Hcl.js +1 -0
  725. package/ui-dist/assets/c4Diagram-IC4MRINW-C6pq8tPP.js +10 -0
  726. package/ui-dist/assets/channel-BEODbRMk.js +1 -0
  727. package/ui-dist/assets/chunk-4BX2VUAB-ojCLkixe.js +1 -0
  728. package/ui-dist/assets/chunk-55IACEB6-MGONqzmz.js +1 -0
  729. package/ui-dist/assets/chunk-FMBD7UC4-CmGuLv2P.js +15 -0
  730. package/ui-dist/assets/chunk-JSJVCQXG-BNBefVr6.js +1 -0
  731. package/ui-dist/assets/chunk-KX2RTZJC-DIGBQLn5.js +1 -0
  732. package/ui-dist/assets/chunk-NQ4KR5QH-_KEutsaQ.js +220 -0
  733. package/ui-dist/assets/chunk-QZHKN3VN-B6pzyuwm.js +1 -0
  734. package/ui-dist/assets/chunk-WL4C6EOR-B8NDzcfm.js +189 -0
  735. package/ui-dist/assets/classDiagram-VBA2DB6C-CsSqaaRj.js +1 -0
  736. package/ui-dist/assets/classDiagram-v2-RAHNMMFH-CsSqaaRj.js +1 -0
  737. package/ui-dist/assets/clike-B9uivgTg.js +1 -0
  738. package/ui-dist/assets/clojure-BMjYHr_A.js +1 -0
  739. package/ui-dist/assets/clone-5oWMCI0u.js +1 -0
  740. package/ui-dist/assets/cmake-BQqOBYOt.js +1 -0
  741. package/ui-dist/assets/cobol-CWcv1MsR.js +1 -0
  742. package/ui-dist/assets/coffeescript-S37ZYGWr.js +1 -0
  743. package/ui-dist/assets/commonlisp-DBKNyK5s.js +1 -0
  744. package/ui-dist/assets/cose-bilkent-S5V4N54A-B1t6ulcV.js +1 -0
  745. package/ui-dist/assets/crystal-SjHAIU92.js +1 -0
  746. package/ui-dist/assets/css-BnMrqG3P.js +1 -0
  747. package/ui-dist/assets/cypher-C_CwsFkJ.js +1 -0
  748. package/ui-dist/assets/cytoscape.esm-BQaXIfA_.js +331 -0
  749. package/ui-dist/assets/d-pRatUO7H.js +1 -0
  750. package/ui-dist/assets/dagre-KLK3FWXG-DWVC5_HJ.js +4 -0
  751. package/ui-dist/assets/defaultLocale-DX6XiGOO.js +1 -0
  752. package/ui-dist/assets/diagram-E7M64L7V-C4ztYLox.js +24 -0
  753. package/ui-dist/assets/diagram-IFDJBPK2-DtWBGLnA.js +43 -0
  754. package/ui-dist/assets/diagram-P4PSJMXO-BiqiI4Df.js +24 -0
  755. package/ui-dist/assets/diff-DbItnlRl.js +1 -0
  756. package/ui-dist/assets/dockerfile-BKs6k2Af.js +1 -0
  757. package/ui-dist/assets/dtd-DF_7sFjM.js +1 -0
  758. package/ui-dist/assets/dylan-DwRh75JA.js +1 -0
  759. package/ui-dist/assets/ebnf-CDyGwa7X.js +1 -0
  760. package/ui-dist/assets/ecl-Cabwm37j.js +1 -0
  761. package/ui-dist/assets/eiffel-CnydiIhH.js +1 -0
  762. package/ui-dist/assets/elm-vLlmbW-K.js +1 -0
  763. package/ui-dist/assets/erDiagram-INFDFZHY-CUhr9rIh.js +70 -0
  764. package/ui-dist/assets/erlang-BNw1qcRV.js +1 -0
  765. package/ui-dist/assets/factor-kuTfRLto.js +1 -0
  766. package/ui-dist/assets/fcl-Kvtd6kyn.js +1 -0
  767. package/ui-dist/assets/flowDiagram-PKNHOUZH-BEqBmNL-.js +162 -0
  768. package/ui-dist/assets/forth-Ffai-XNe.js +1 -0
  769. package/ui-dist/assets/fortran-DYz_wnZ1.js +1 -0
  770. package/ui-dist/assets/ganttDiagram-A5KZAMGK-CdeWhdno.js +292 -0
  771. package/ui-dist/assets/gas-Bneqetm1.js +1 -0
  772. package/ui-dist/assets/gherkin-heZmZLOM.js +1 -0
  773. package/ui-dist/assets/gitGraphDiagram-K3NZZRJ6-CgG66QFg.js +65 -0
  774. package/ui-dist/assets/graph-rmownl79.js +1 -0
  775. package/ui-dist/assets/groovy-D9Dt4D0W.js +1 -0
  776. package/ui-dist/assets/haskell-Cw1EW3IL.js +1 -0
  777. package/ui-dist/assets/haxe-H-WmDvRZ.js +1 -0
  778. package/ui-dist/assets/http-DBlCnlav.js +1 -0
  779. package/ui-dist/assets/idl-BEugSyMb.js +1 -0
  780. package/ui-dist/assets/index-B1YyDqaG.js +1 -0
  781. package/ui-dist/assets/index-B7exNxYd.js +1 -0
  782. package/ui-dist/assets/index-BIuriVDl.js +1 -0
  783. package/ui-dist/assets/index-BT9rfwYt.js +1 -0
  784. package/ui-dist/assets/index-BZhmacJG.js +1 -0
  785. package/ui-dist/assets/index-B_ebS3U_.js +3 -0
  786. package/ui-dist/assets/index-BnQqZOsc.js +1 -0
  787. package/ui-dist/assets/index-BwPbAax6.js +1 -0
  788. package/ui-dist/assets/index-C5i670o5.js +1 -0
  789. package/ui-dist/assets/index-C9KwE7Yr.js +1 -0
  790. package/ui-dist/assets/index-CDId_UjP.js +1 -0
  791. package/ui-dist/assets/index-CI9ydSGM.js +1 -0
  792. package/ui-dist/assets/index-CKpm3WGI.css +1 -0
  793. package/ui-dist/assets/index-CMP_bzP3.js +2 -0
  794. package/ui-dist/assets/index-CRcHIoCW.js +1 -0
  795. package/ui-dist/assets/index-DZqNY-Lg.js +1 -0
  796. package/ui-dist/assets/index-DbDKJhW-.js +7 -0
  797. package/ui-dist/assets/index-Dkg6MwQ_.js +1 -0
  798. package/ui-dist/assets/index-Dn0iitKg.js +1 -0
  799. package/ui-dist/assets/index-GvHywIOA.js +1323 -0
  800. package/ui-dist/assets/index-WtX4Y4Fx.js +13 -0
  801. package/ui-dist/assets/index-iyC5PHC3.js +6 -0
  802. package/ui-dist/assets/index-jMlzlqoV.js +1 -0
  803. package/ui-dist/assets/index-pTIOLGTe.js +1 -0
  804. package/ui-dist/assets/infoDiagram-LFFYTUFH-CEhdbTYQ.js +2 -0
  805. package/ui-dist/assets/init-Gi6I4Gst.js +1 -0
  806. package/ui-dist/assets/ishikawaDiagram-PHBUUO56-g9GiiXI2.js +70 -0
  807. package/ui-dist/assets/javascript-iXu5QeM3.js +1 -0
  808. package/ui-dist/assets/journeyDiagram-4ABVD52K-CheeZzlg.js +139 -0
  809. package/ui-dist/assets/julia-DuME0IfC.js +1 -0
  810. package/ui-dist/assets/kanban-definition-K7BYSVSG-BTpuAgUJ.js +89 -0
  811. package/ui-dist/assets/katex-B1X10hvy.js +261 -0
  812. package/ui-dist/assets/layout-CuBgufef.js +1 -0
  813. package/ui-dist/assets/linear-CnXO6wXw.js +1 -0
  814. package/ui-dist/assets/livescript-BwQOo05w.js +1 -0
  815. package/ui-dist/assets/lua-BgMRiT3U.js +1 -0
  816. package/ui-dist/assets/mathematica-DTrFuWx2.js +1 -0
  817. package/ui-dist/assets/mbox-CNhZ1qSd.js +1 -0
  818. package/ui-dist/assets/mermaid.core-DVaYxfh9.js +255 -0
  819. package/ui-dist/assets/mindmap-definition-YRQLILUH-00nAuexq.js +68 -0
  820. package/ui-dist/assets/mirc-CjQqDB4T.js +1 -0
  821. package/ui-dist/assets/mllike-CXdrOF99.js +1 -0
  822. package/ui-dist/assets/modelica-Dc1JOy9r.js +1 -0
  823. package/ui-dist/assets/mscgen-BA5vi2Kp.js +1 -0
  824. package/ui-dist/assets/mumps-BT43cFF4.js +1 -0
  825. package/ui-dist/assets/nginx-DdIZxoE0.js +1 -0
  826. package/ui-dist/assets/nsis-LdVXkNf5.js +1 -0
  827. package/ui-dist/assets/ntriples-BfvgReVJ.js +1 -0
  828. package/ui-dist/assets/octave-Ck1zUtKM.js +1 -0
  829. package/ui-dist/assets/ordinal-Cboi1Yqb.js +1 -0
  830. package/ui-dist/assets/oz-BzwKVEFT.js +1 -0
  831. package/ui-dist/assets/pascal--L3eBynH.js +1 -0
  832. package/ui-dist/assets/perl-CdXCOZ3F.js +1 -0
  833. package/ui-dist/assets/pieDiagram-SKSYHLDU-NaOgRqIj.js +30 -0
  834. package/ui-dist/assets/pig-CevX1Tat.js +1 -0
  835. package/ui-dist/assets/powershell-CFHJl5sT.js +1 -0
  836. package/ui-dist/assets/properties-C78fOPTZ.js +1 -0
  837. package/ui-dist/assets/protobuf-ChK-085T.js +1 -0
  838. package/ui-dist/assets/pug-DeIclll2.js +1 -0
  839. package/ui-dist/assets/puppet-DMA9R1ak.js +1 -0
  840. package/ui-dist/assets/python-BuPzkPfP.js +1 -0
  841. package/ui-dist/assets/q-pXgVlZs6.js +1 -0
  842. package/ui-dist/assets/quadrantDiagram-337W2JSQ-Bnf9OCW0.js +7 -0
  843. package/ui-dist/assets/r-B6wPVr8A.js +1 -0
  844. package/ui-dist/assets/requirementDiagram-Z7DCOOCP-BiacZTTh.js +73 -0
  845. package/ui-dist/assets/rpm-CTu-6PCP.js +1 -0
  846. package/ui-dist/assets/ruby-B2Rjki9n.js +1 -0
  847. package/ui-dist/assets/sankeyDiagram-WA2Y5GQK-DOuD4D2Q.js +10 -0
  848. package/ui-dist/assets/sas-B4kiWyti.js +1 -0
  849. package/ui-dist/assets/scheme-C41bIUwD.js +1 -0
  850. package/ui-dist/assets/sequenceDiagram-2WXFIKYE-oV3M_w-H.js +145 -0
  851. package/ui-dist/assets/shell-CjFT_Tl9.js +1 -0
  852. package/ui-dist/assets/sieve-C3Gn_uJK.js +1 -0
  853. package/ui-dist/assets/simple-mode-GW_nhZxv.js +1 -0
  854. package/ui-dist/assets/smalltalk-CnHTOXQT.js +1 -0
  855. package/ui-dist/assets/solr-DehyRSwq.js +1 -0
  856. package/ui-dist/assets/sparql-DkYu6x3z.js +1 -0
  857. package/ui-dist/assets/spreadsheet-BCZA_wO0.js +1 -0
  858. package/ui-dist/assets/sql-D0XecflT.js +1 -0
  859. package/ui-dist/assets/stateDiagram-RAJIS63D-CdRc2Pqb.js +1 -0
  860. package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-CIMHFJYg.js +1 -0
  861. package/ui-dist/assets/stex-C3f8Ysf7.js +1 -0
  862. package/ui-dist/assets/stylus-B533Al4x.js +1 -0
  863. package/ui-dist/assets/swift-BzpIVaGY.js +1 -0
  864. package/ui-dist/assets/tcl-DVfN8rqt.js +1 -0
  865. package/ui-dist/assets/textile-CnDTJFAw.js +1 -0
  866. package/ui-dist/assets/tiddlywiki-DO-Gjzrf.js +1 -0
  867. package/ui-dist/assets/tiki-DGYXhP31.js +1 -0
  868. package/ui-dist/assets/timeline-definition-YZTLITO2-BCWQDIwt.js +61 -0
  869. package/ui-dist/assets/toml-Bm5Em-hy.js +1 -0
  870. package/ui-dist/assets/treemap-KZPCXAKY-BvsIxXAi.js +162 -0
  871. package/ui-dist/assets/troff-wAsdV37c.js +1 -0
  872. package/ui-dist/assets/ttcn-CfJYG6tj.js +1 -0
  873. package/ui-dist/assets/ttcn-cfg-B9xdYoR4.js +1 -0
  874. package/ui-dist/assets/turtle-B1tBg_DP.js +1 -0
  875. package/ui-dist/assets/vb-CmGdzxic.js +1 -0
  876. package/ui-dist/assets/vbscript-BuJXcnF6.js +1 -0
  877. package/ui-dist/assets/velocity-D8B20fx6.js +1 -0
  878. package/ui-dist/assets/vennDiagram-LZ73GAT5-BzibHs4r.js +34 -0
  879. package/ui-dist/assets/verilog-C6RDOZhf.js +1 -0
  880. package/ui-dist/assets/vhdl-lSbBsy5d.js +1 -0
  881. package/ui-dist/assets/webidl-ZXfAyPTL.js +1 -0
  882. package/ui-dist/assets/xquery-DzFWVndE.js +1 -0
  883. package/ui-dist/assets/xychartDiagram-JWTSCODW-CX_Xt_y-.js +7 -0
  884. package/ui-dist/assets/yacas-BJ4BC0dw.js +1 -0
  885. package/ui-dist/assets/z80-Hz9HOZM7.js +1 -0
  886. package/ui-dist/brands/opencode-logo-dark-square.svg +18 -0
  887. package/ui-dist/brands/opencode-logo-light-square.svg +18 -0
  888. package/ui-dist/favicon-16x16.png +0 -0
  889. package/ui-dist/favicon-32x32.png +0 -0
  890. package/ui-dist/favicon-dev-16x16.png +0 -0
  891. package/ui-dist/favicon-dev-32x32.png +0 -0
  892. package/ui-dist/favicon-dev.ico +0 -0
  893. package/ui-dist/favicon.ico +0 -0
  894. package/ui-dist/favicon.svg +1 -0
  895. package/ui-dist/index.html +61 -0
  896. package/ui-dist/rudder-logo.png +0 -0
  897. package/ui-dist/site.webmanifest +30 -0
  898. package/ui-dist/sw.js +42 -0
  899. package/ui-dist/worktree-favicon-16x16.png +0 -0
  900. package/ui-dist/worktree-favicon-32x32.png +0 -0
  901. package/ui-dist/worktree-favicon.ico +0 -0
  902. package/ui-dist/worktree-favicon.svg +1 -0
@@ -0,0 +1,750 @@
1
+ import { createHash, randomBytes, randomUUID } from "node:crypto";
2
+ import path from "node:path";
3
+ import { and, desc, eq, gte, inArray, isNull, lt, ne, sql } from "drizzle-orm";
4
+ import { agents, agentConfigRevisions, agentApiKeys, agentRuntimeState, agentTaskSessions, agentWakeupRequests, costEvents, heartbeatRunEvents, heartbeatRuns, organizations, } from "@rudderhq/db";
5
+ import { isUuidLike, normalizeAgentUrlKey } from "@rudderhq/shared";
6
+ import { conflict, notFound, unprocessable } from "../errors.js";
7
+ import { resolveHomeAwarePath, resolveOrganizationAgentsDir } from "../home-paths.js";
8
+ import { normalizeAgentPermissions } from "./agent-permissions.js";
9
+ import { REDACTED_EVENT_VALUE, sanitizeRecord } from "../redaction.js";
10
+ import { deriveUniqueAgentWorkspaceKey } from "../agent-workspace-key.js";
11
+ import { pickUniqueAgentName } from "./agent-name-pool.js";
12
+ function hashToken(token) {
13
+ return createHash("sha256").update(token).digest("hex");
14
+ }
15
+ function createToken() {
16
+ return `pcp_${randomBytes(24).toString("hex")}`;
17
+ }
18
+ const CONFIG_REVISION_FIELDS = [
19
+ "name",
20
+ "role",
21
+ "title",
22
+ "reportsTo",
23
+ "capabilities",
24
+ "agentRuntimeType",
25
+ "agentRuntimeConfig",
26
+ "runtimeConfig",
27
+ "budgetMonthlyCents",
28
+ "metadata",
29
+ ];
30
+ const ORGANIZATION_DEFAULT_CHAT_RUNTIME_TYPES = new Set([
31
+ "claude_local",
32
+ "codex_local",
33
+ "cursor",
34
+ "gemini_local",
35
+ "opencode_local",
36
+ "pi_local",
37
+ "openclaw_gateway",
38
+ ]);
39
+ const ORGANIZATION_DEFAULT_CHAT_CONFIG_KEYS_TO_STRIP = new Set([
40
+ "promptTemplate",
41
+ "bootstrapPromptTemplate",
42
+ "instructionsFilePath",
43
+ "instructionsBundleMode",
44
+ "instructionsRootPath",
45
+ "instructionsEntryFile",
46
+ "agentsMdPath",
47
+ "rudderSkillSync",
48
+ "paperclipSkillSync",
49
+ "rudderRuntimeSkills",
50
+ "paperclipRuntimeSkills",
51
+ ]);
52
+ function isPlainRecord(value) {
53
+ return typeof value === "object" && value !== null && !Array.isArray(value);
54
+ }
55
+ function isHiddenSystemAgentMetadata(metadata) {
56
+ if (!isPlainRecord(metadata))
57
+ return false;
58
+ return metadata.hidden === true || metadata.systemManaged === "rudder_copilot";
59
+ }
60
+ function jsonEqual(left, right) {
61
+ return JSON.stringify(left) === JSON.stringify(right);
62
+ }
63
+ function sanitizeOrganizationDefaultChatConfig(agentRuntimeConfig) {
64
+ const sanitized = sanitizeRecord(isPlainRecord(agentRuntimeConfig) ? agentRuntimeConfig : {});
65
+ for (const key of ORGANIZATION_DEFAULT_CHAT_CONFIG_KEYS_TO_STRIP) {
66
+ delete sanitized[key];
67
+ }
68
+ return sanitized;
69
+ }
70
+ function buildConfigSnapshot(row) {
71
+ const agentRuntimeConfig = typeof row.agentRuntimeConfig === "object" && row.agentRuntimeConfig !== null && !Array.isArray(row.agentRuntimeConfig)
72
+ ? sanitizeRecord(row.agentRuntimeConfig)
73
+ : {};
74
+ const runtimeConfig = typeof row.runtimeConfig === "object" && row.runtimeConfig !== null && !Array.isArray(row.runtimeConfig)
75
+ ? sanitizeRecord(row.runtimeConfig)
76
+ : {};
77
+ const metadata = typeof row.metadata === "object" && row.metadata !== null && !Array.isArray(row.metadata)
78
+ ? sanitizeRecord(row.metadata)
79
+ : row.metadata ?? null;
80
+ return {
81
+ name: row.name,
82
+ role: row.role,
83
+ title: row.title,
84
+ reportsTo: row.reportsTo,
85
+ capabilities: row.capabilities,
86
+ agentRuntimeType: row.agentRuntimeType,
87
+ agentRuntimeConfig,
88
+ runtimeConfig,
89
+ budgetMonthlyCents: row.budgetMonthlyCents,
90
+ metadata,
91
+ };
92
+ }
93
+ function containsRedactedMarker(value) {
94
+ if (value === REDACTED_EVENT_VALUE)
95
+ return true;
96
+ if (Array.isArray(value))
97
+ return value.some((item) => containsRedactedMarker(item));
98
+ if (typeof value !== "object" || value === null)
99
+ return false;
100
+ return Object.values(value).some((entry) => containsRedactedMarker(entry));
101
+ }
102
+ function hasConfigPatchFields(data) {
103
+ return CONFIG_REVISION_FIELDS.some((field) => Object.prototype.hasOwnProperty.call(data, field));
104
+ }
105
+ function readNonEmptyString(value) {
106
+ return typeof value === "string" && value.trim().length > 0 ? value.trim() : null;
107
+ }
108
+ function extractWorkspaceKeyFromManagedInstructionsConfig(orgId, agentRuntimeConfig) {
109
+ if (!isPlainRecord(agentRuntimeConfig))
110
+ return null;
111
+ const managedAgentsRoot = path.resolve(resolveOrganizationAgentsDir(orgId));
112
+ const candidatePaths = [
113
+ readNonEmptyString(agentRuntimeConfig.instructionsRootPath),
114
+ readNonEmptyString(agentRuntimeConfig.instructionsFilePath),
115
+ readNonEmptyString(agentRuntimeConfig.agentsMdPath),
116
+ ]
117
+ .filter((value) => Boolean(value))
118
+ .map((value) => resolveHomeAwarePath(value));
119
+ for (const candidatePath of candidatePaths) {
120
+ const relativePath = path.relative(managedAgentsRoot, candidatePath);
121
+ if (relativePath.length === 0
122
+ || relativePath === ".."
123
+ || relativePath.startsWith(`..${path.sep}`)) {
124
+ continue;
125
+ }
126
+ const segments = relativePath.split(path.sep).filter((segment) => segment.length > 0);
127
+ const instructionsIndex = segments.indexOf("instructions");
128
+ if (instructionsIndex <= 0)
129
+ continue;
130
+ const workspaceKey = segments[instructionsIndex - 1]?.trim();
131
+ if (workspaceKey)
132
+ return workspaceKey;
133
+ }
134
+ return null;
135
+ }
136
+ function diffConfigSnapshot(before, after) {
137
+ return CONFIG_REVISION_FIELDS.filter((field) => !jsonEqual(before[field], after[field]));
138
+ }
139
+ function configPatchFromSnapshot(snapshot) {
140
+ if (!isPlainRecord(snapshot))
141
+ throw unprocessable("Invalid revision snapshot");
142
+ if (typeof snapshot.name !== "string" || snapshot.name.length === 0) {
143
+ throw unprocessable("Invalid revision snapshot: name");
144
+ }
145
+ if (typeof snapshot.role !== "string" || snapshot.role.length === 0) {
146
+ throw unprocessable("Invalid revision snapshot: role");
147
+ }
148
+ if (typeof snapshot.agentRuntimeType !== "string" || snapshot.agentRuntimeType.length === 0) {
149
+ throw unprocessable("Invalid revision snapshot: agentRuntimeType");
150
+ }
151
+ if (typeof snapshot.budgetMonthlyCents !== "number" || !Number.isFinite(snapshot.budgetMonthlyCents)) {
152
+ throw unprocessable("Invalid revision snapshot: budgetMonthlyCents");
153
+ }
154
+ return {
155
+ name: snapshot.name,
156
+ role: snapshot.role,
157
+ title: typeof snapshot.title === "string" || snapshot.title === null ? snapshot.title : null,
158
+ reportsTo: typeof snapshot.reportsTo === "string" || snapshot.reportsTo === null ? snapshot.reportsTo : null,
159
+ capabilities: typeof snapshot.capabilities === "string" || snapshot.capabilities === null
160
+ ? snapshot.capabilities
161
+ : null,
162
+ agentRuntimeType: snapshot.agentRuntimeType,
163
+ agentRuntimeConfig: isPlainRecord(snapshot.agentRuntimeConfig) ? snapshot.agentRuntimeConfig : {},
164
+ runtimeConfig: isPlainRecord(snapshot.runtimeConfig) ? snapshot.runtimeConfig : {},
165
+ budgetMonthlyCents: Math.max(0, Math.floor(snapshot.budgetMonthlyCents)),
166
+ metadata: isPlainRecord(snapshot.metadata) || snapshot.metadata === null ? snapshot.metadata : null,
167
+ };
168
+ }
169
+ export function hasAgentShortnameCollision(candidateName, existingAgents, options) {
170
+ const candidateShortname = normalizeAgentUrlKey(candidateName);
171
+ if (!candidateShortname)
172
+ return false;
173
+ return existingAgents.some((agent) => {
174
+ if (agent.status === "terminated")
175
+ return false;
176
+ if (options?.excludeAgentId && agent.id === options.excludeAgentId)
177
+ return false;
178
+ return normalizeAgentUrlKey(agent.name) === candidateShortname;
179
+ });
180
+ }
181
+ export function deduplicateAgentName(candidateName, existingAgents) {
182
+ if (!hasAgentShortnameCollision(candidateName, existingAgents)) {
183
+ return candidateName;
184
+ }
185
+ for (let i = 2; i <= 100; i++) {
186
+ const suffixed = `${candidateName} ${i}`;
187
+ if (!hasAgentShortnameCollision(suffixed, existingAgents)) {
188
+ return suffixed;
189
+ }
190
+ }
191
+ return `${candidateName} ${Date.now()}`;
192
+ }
193
+ export function agentService(db) {
194
+ function currentUtcMonthWindow(now = new Date()) {
195
+ const year = now.getUTCFullYear();
196
+ const month = now.getUTCMonth();
197
+ return {
198
+ start: new Date(Date.UTC(year, month, 1, 0, 0, 0, 0)),
199
+ end: new Date(Date.UTC(year, month + 1, 1, 0, 0, 0, 0)),
200
+ };
201
+ }
202
+ function withUrlKey(row) {
203
+ return {
204
+ ...row,
205
+ urlKey: normalizeAgentUrlKey(row.name) ?? row.id,
206
+ };
207
+ }
208
+ function normalizeAgentInternalRow(row) {
209
+ return withUrlKey({
210
+ ...row,
211
+ permissions: normalizeAgentPermissions(row.permissions, row.role),
212
+ });
213
+ }
214
+ function stripWorkspaceKey(row) {
215
+ const { workspaceKey: _workspaceKey, ...rest } = row;
216
+ return rest;
217
+ }
218
+ function normalizeAgentRow(row) {
219
+ return stripWorkspaceKey(normalizeAgentInternalRow(row));
220
+ }
221
+ function isVisibleAgentRow(row) {
222
+ return row.status !== "terminated" && !isHiddenSystemAgentMetadata(row.metadata);
223
+ }
224
+ async function getMonthlySpendByAgentIds(orgId, agentIds) {
225
+ if (agentIds.length === 0)
226
+ return new Map();
227
+ const { start, end } = currentUtcMonthWindow();
228
+ const rows = await db
229
+ .select({
230
+ agentId: costEvents.agentId,
231
+ spentMonthlyCents: sql `coalesce(sum(${costEvents.costCents}), 0)::int`,
232
+ })
233
+ .from(costEvents)
234
+ .where(and(eq(costEvents.orgId, orgId), inArray(costEvents.agentId, agentIds), gte(costEvents.occurredAt, start), lt(costEvents.occurredAt, end)))
235
+ .groupBy(costEvents.agentId);
236
+ return new Map(rows.map((row) => [row.agentId, Number(row.spentMonthlyCents ?? 0)]));
237
+ }
238
+ async function hydrateAgentSpend(rows) {
239
+ const agentIds = rows.map((row) => row.id);
240
+ const orgId = rows[0]?.orgId;
241
+ if (!orgId || agentIds.length === 0)
242
+ return rows;
243
+ const spendByAgentId = await getMonthlySpendByAgentIds(orgId, agentIds);
244
+ return rows.map((row) => ({
245
+ ...row,
246
+ spentMonthlyCents: spendByAgentId.get(row.id) ?? 0,
247
+ }));
248
+ }
249
+ async function ensureStoredWorkspaceKey(row) {
250
+ const storedWorkspaceKey = row.workspaceKey?.trim();
251
+ if (storedWorkspaceKey)
252
+ return row;
253
+ const existingRows = await db
254
+ .select({ workspaceKey: agents.workspaceKey })
255
+ .from(agents)
256
+ .where(and(eq(agents.orgId, row.orgId), ne(agents.id, row.id)));
257
+ const existingKeys = new Set(existingRows
258
+ .map((entry) => entry.workspaceKey?.trim() ?? "")
259
+ .filter((value) => value.length > 0));
260
+ const preferredWorkspaceKey = extractWorkspaceKeyFromManagedInstructionsConfig(row.orgId, row.agentRuntimeConfig);
261
+ const workspaceKey = preferredWorkspaceKey && !existingKeys.has(preferredWorkspaceKey)
262
+ ? preferredWorkspaceKey
263
+ : deriveUniqueAgentWorkspaceKey({
264
+ agentId: row.id,
265
+ name: row.name,
266
+ existingKeys,
267
+ });
268
+ if (typeof db.update !== "function") {
269
+ return { ...row, workspaceKey };
270
+ }
271
+ const updated = await db
272
+ .update(agents)
273
+ .set({
274
+ workspaceKey,
275
+ updatedAt: new Date(),
276
+ })
277
+ .where(and(eq(agents.id, row.id), isNull(agents.workspaceKey)))
278
+ .returning()
279
+ .then((rows) => rows[0] ?? null);
280
+ if (updated)
281
+ return updated;
282
+ return db
283
+ .select()
284
+ .from(agents)
285
+ .where(eq(agents.id, row.id))
286
+ .then((rows) => rows[0] ?? { ...row, workspaceKey });
287
+ }
288
+ async function getStoredById(id) {
289
+ const row = await db
290
+ .select()
291
+ .from(agents)
292
+ .where(eq(agents.id, id))
293
+ .then((rows) => rows[0] ?? null);
294
+ if (!row)
295
+ return null;
296
+ return ensureStoredWorkspaceKey(row);
297
+ }
298
+ async function getInternalById(id) {
299
+ const row = await getStoredById(id);
300
+ if (!row)
301
+ return null;
302
+ const [hydrated] = await hydrateAgentSpend([row]);
303
+ return normalizeAgentInternalRow(hydrated);
304
+ }
305
+ async function getById(id) {
306
+ const row = await getInternalById(id);
307
+ if (!row)
308
+ return null;
309
+ return stripWorkspaceKey(row);
310
+ }
311
+ async function ensureManager(orgId, managerId) {
312
+ const manager = await getById(managerId);
313
+ if (!manager)
314
+ throw notFound("Manager not found");
315
+ if (manager.orgId !== orgId) {
316
+ throw unprocessable("Manager must belong to same organization");
317
+ }
318
+ return manager;
319
+ }
320
+ async function assertNoCycle(agentId, reportsTo) {
321
+ if (!reportsTo)
322
+ return;
323
+ if (reportsTo === agentId)
324
+ throw unprocessable("Agent cannot report to itself");
325
+ let cursor = reportsTo;
326
+ while (cursor) {
327
+ if (cursor === agentId)
328
+ throw unprocessable("Reporting relationship would create cycle");
329
+ const next = await getById(cursor);
330
+ cursor = next?.reportsTo ?? null;
331
+ }
332
+ }
333
+ async function assertCompanyShortnameAvailable(orgId, candidateName, options) {
334
+ const candidateShortname = normalizeAgentUrlKey(candidateName);
335
+ if (!candidateShortname)
336
+ return;
337
+ const existingAgents = await db
338
+ .select({
339
+ id: agents.id,
340
+ name: agents.name,
341
+ status: agents.status,
342
+ })
343
+ .from(agents)
344
+ .where(eq(agents.orgId, orgId));
345
+ const hasCollision = hasAgentShortnameCollision(candidateName, existingAgents, options);
346
+ if (hasCollision) {
347
+ throw conflict(`Agent shortname '${candidateShortname}' is already in use in this organization`);
348
+ }
349
+ }
350
+ async function updateAgent(id, data, options) {
351
+ const existing = await getStoredById(id);
352
+ if (!existing)
353
+ return null;
354
+ if (existing.status === "terminated" && data.status && data.status !== "terminated") {
355
+ throw conflict("Terminated agents cannot be resumed");
356
+ }
357
+ if (existing.status === "pending_approval" &&
358
+ data.status &&
359
+ data.status !== "pending_approval" &&
360
+ data.status !== "terminated") {
361
+ throw conflict("Pending approval agents cannot be activated directly");
362
+ }
363
+ if (data.workspaceKey !== undefined && data.workspaceKey !== existing.workspaceKey) {
364
+ throw conflict("Agent workspace key is immutable");
365
+ }
366
+ if (data.reportsTo !== undefined) {
367
+ if (data.reportsTo) {
368
+ await ensureManager(existing.orgId, data.reportsTo);
369
+ }
370
+ await assertNoCycle(id, data.reportsTo);
371
+ }
372
+ if (data.name !== undefined) {
373
+ const previousShortname = normalizeAgentUrlKey(existing.name);
374
+ const nextShortname = normalizeAgentUrlKey(data.name);
375
+ if (previousShortname !== nextShortname) {
376
+ await assertCompanyShortnameAvailable(existing.orgId, data.name, { excludeAgentId: id });
377
+ }
378
+ }
379
+ const normalizedPatch = { ...data };
380
+ if (data.permissions !== undefined) {
381
+ const role = (data.role ?? existing.role);
382
+ normalizedPatch.permissions = normalizeAgentPermissions(data.permissions, role);
383
+ }
384
+ delete normalizedPatch.workspaceKey;
385
+ const shouldRecordRevision = Boolean(options?.recordRevision) && hasConfigPatchFields(normalizedPatch);
386
+ const beforeConfig = shouldRecordRevision ? buildConfigSnapshot(existing) : null;
387
+ const updated = await db
388
+ .update(agents)
389
+ .set({ ...normalizedPatch, updatedAt: new Date() })
390
+ .where(eq(agents.id, id))
391
+ .returning()
392
+ .then((rows) => rows[0] ?? null);
393
+ const normalizedUpdated = updated ? normalizeAgentRow(updated) : null;
394
+ if (normalizedUpdated && shouldRecordRevision && beforeConfig) {
395
+ const afterConfig = buildConfigSnapshot(normalizedUpdated);
396
+ const changedKeys = diffConfigSnapshot(beforeConfig, afterConfig);
397
+ if (changedKeys.length > 0) {
398
+ await db.insert(agentConfigRevisions).values({
399
+ orgId: normalizedUpdated.orgId,
400
+ agentId: normalizedUpdated.id,
401
+ createdByAgentId: options?.recordRevision?.createdByAgentId ?? null,
402
+ createdByUserId: options?.recordRevision?.createdByUserId ?? null,
403
+ source: options?.recordRevision?.source ?? "patch",
404
+ rolledBackFromRevisionId: options?.recordRevision?.rolledBackFromRevisionId ?? null,
405
+ changedKeys,
406
+ beforeConfig: beforeConfig,
407
+ afterConfig: afterConfig,
408
+ });
409
+ }
410
+ }
411
+ return normalizedUpdated;
412
+ }
413
+ return {
414
+ list: async (orgId, options) => {
415
+ const conditions = [eq(agents.orgId, orgId)];
416
+ if (!options?.includeTerminated) {
417
+ conditions.push(ne(agents.status, "terminated"));
418
+ }
419
+ const rows = await db.select().from(agents).where(and(...conditions));
420
+ const visibleRows = options?.includeHidden ? rows : rows.filter((row) => !isHiddenSystemAgentMetadata(row.metadata));
421
+ const hydrated = await hydrateAgentSpend(visibleRows);
422
+ return hydrated.map(normalizeAgentRow);
423
+ },
424
+ getById,
425
+ getInternalById,
426
+ suggestName: async (orgId) => {
427
+ const existingAgents = await db
428
+ .select({
429
+ id: agents.id,
430
+ name: agents.name,
431
+ status: agents.status,
432
+ })
433
+ .from(agents)
434
+ .where(eq(agents.orgId, orgId));
435
+ const baseName = pickUniqueAgentName(existingAgents);
436
+ return deduplicateAgentName(baseName, existingAgents);
437
+ },
438
+ create: async (orgId, data) => {
439
+ if (data.reportsTo) {
440
+ await ensureManager(orgId, data.reportsTo);
441
+ }
442
+ const existingAgents = await db
443
+ .select({
444
+ id: agents.id,
445
+ name: agents.name,
446
+ status: agents.status,
447
+ metadata: agents.metadata,
448
+ workspaceKey: agents.workspaceKey,
449
+ })
450
+ .from(agents)
451
+ .where(eq(agents.orgId, orgId));
452
+ const hasVisibleExistingAgents = existingAgents.some((agent) => isVisibleAgentRow(agent));
453
+ const requestedName = typeof data.name === "string" ? data.name.trim() : "";
454
+ const baseName = requestedName.length > 0 ? requestedName : pickUniqueAgentName(existingAgents);
455
+ const uniqueName = deduplicateAgentName(baseName, existingAgents);
456
+ const agentId = data.id ?? randomUUID();
457
+ const workspaceKey = deriveUniqueAgentWorkspaceKey({
458
+ agentId,
459
+ name: uniqueName,
460
+ existingKeys: existingAgents
461
+ .map((agent) => agent.workspaceKey?.trim() ?? "")
462
+ .filter((value) => value.length > 0),
463
+ });
464
+ const role = data.role ?? "general";
465
+ const normalizedPermissions = normalizeAgentPermissions(data.permissions, role);
466
+ const created = await db
467
+ .insert(agents)
468
+ .values({
469
+ ...data,
470
+ id: agentId,
471
+ name: uniqueName,
472
+ orgId,
473
+ role,
474
+ permissions: normalizedPermissions,
475
+ workspaceKey,
476
+ })
477
+ .returning()
478
+ .then((rows) => rows[0]);
479
+ if (!hasVisibleExistingAgents
480
+ && ORGANIZATION_DEFAULT_CHAT_RUNTIME_TYPES.has(created.agentRuntimeType)) {
481
+ await db
482
+ .update(organizations)
483
+ .set({
484
+ defaultChatAgentRuntimeType: created.agentRuntimeType,
485
+ defaultChatAgentRuntimeConfig: sanitizeOrganizationDefaultChatConfig(created.agentRuntimeConfig),
486
+ updatedAt: new Date(),
487
+ })
488
+ .where(and(eq(organizations.id, orgId), isNull(organizations.defaultChatAgentRuntimeType)));
489
+ }
490
+ return normalizeAgentRow(created);
491
+ },
492
+ update: updateAgent,
493
+ pause: async (id, reason = "manual") => {
494
+ const existing = await getById(id);
495
+ if (!existing)
496
+ return null;
497
+ if (existing.status === "terminated")
498
+ throw conflict("Cannot pause terminated agent");
499
+ const updated = await db
500
+ .update(agents)
501
+ .set({
502
+ status: "paused",
503
+ pauseReason: reason,
504
+ pausedAt: new Date(),
505
+ updatedAt: new Date(),
506
+ })
507
+ .where(eq(agents.id, id))
508
+ .returning()
509
+ .then((rows) => rows[0] ?? null);
510
+ return updated ? normalizeAgentRow(updated) : null;
511
+ },
512
+ resume: async (id) => {
513
+ const existing = await getById(id);
514
+ if (!existing)
515
+ return null;
516
+ if (existing.status === "terminated")
517
+ throw conflict("Cannot resume terminated agent");
518
+ if (existing.status === "pending_approval") {
519
+ throw conflict("Pending approval agents cannot be resumed");
520
+ }
521
+ const updated = await db
522
+ .update(agents)
523
+ .set({
524
+ status: "idle",
525
+ pauseReason: null,
526
+ pausedAt: null,
527
+ updatedAt: new Date(),
528
+ })
529
+ .where(eq(agents.id, id))
530
+ .returning()
531
+ .then((rows) => rows[0] ?? null);
532
+ return updated ? normalizeAgentRow(updated) : null;
533
+ },
534
+ terminate: async (id) => {
535
+ const existing = await getById(id);
536
+ if (!existing)
537
+ return null;
538
+ await db
539
+ .update(agents)
540
+ .set({
541
+ status: "terminated",
542
+ pauseReason: null,
543
+ pausedAt: null,
544
+ updatedAt: new Date(),
545
+ })
546
+ .where(eq(agents.id, id));
547
+ await db
548
+ .update(agentApiKeys)
549
+ .set({ revokedAt: new Date() })
550
+ .where(eq(agentApiKeys.agentId, id));
551
+ return getById(id);
552
+ },
553
+ remove: async (id) => {
554
+ const existing = await getById(id);
555
+ if (!existing)
556
+ return null;
557
+ return db.transaction(async (tx) => {
558
+ await tx.update(agents).set({ reportsTo: null }).where(eq(agents.reportsTo, id));
559
+ await tx.delete(heartbeatRunEvents).where(eq(heartbeatRunEvents.agentId, id));
560
+ await tx.delete(agentTaskSessions).where(eq(agentTaskSessions.agentId, id));
561
+ await tx.delete(heartbeatRuns).where(eq(heartbeatRuns.agentId, id));
562
+ await tx.delete(agentWakeupRequests).where(eq(agentWakeupRequests.agentId, id));
563
+ await tx.delete(agentApiKeys).where(eq(agentApiKeys.agentId, id));
564
+ await tx.delete(agentRuntimeState).where(eq(agentRuntimeState.agentId, id));
565
+ const deleted = await tx
566
+ .delete(agents)
567
+ .where(eq(agents.id, id))
568
+ .returning()
569
+ .then((rows) => rows[0] ?? null);
570
+ return deleted ? normalizeAgentRow(deleted) : null;
571
+ });
572
+ },
573
+ activatePendingApproval: async (id) => {
574
+ const existing = await getById(id);
575
+ if (!existing)
576
+ return null;
577
+ if (existing.status !== "pending_approval")
578
+ return existing;
579
+ const updated = await db
580
+ .update(agents)
581
+ .set({ status: "idle", updatedAt: new Date() })
582
+ .where(eq(agents.id, id))
583
+ .returning()
584
+ .then((rows) => rows[0] ?? null);
585
+ return updated ? normalizeAgentRow(updated) : null;
586
+ },
587
+ updatePermissions: async (id, permissions) => {
588
+ const existing = await getById(id);
589
+ if (!existing)
590
+ return null;
591
+ const updated = await db
592
+ .update(agents)
593
+ .set({
594
+ permissions: normalizeAgentPermissions(permissions, existing.role),
595
+ updatedAt: new Date(),
596
+ })
597
+ .where(eq(agents.id, id))
598
+ .returning()
599
+ .then((rows) => rows[0] ?? null);
600
+ return updated ? normalizeAgentRow(updated) : null;
601
+ },
602
+ listConfigRevisions: async (id) => db
603
+ .select()
604
+ .from(agentConfigRevisions)
605
+ .where(eq(agentConfigRevisions.agentId, id))
606
+ .orderBy(desc(agentConfigRevisions.createdAt)),
607
+ getConfigRevision: async (id, revisionId) => db
608
+ .select()
609
+ .from(agentConfigRevisions)
610
+ .where(and(eq(agentConfigRevisions.agentId, id), eq(agentConfigRevisions.id, revisionId)))
611
+ .then((rows) => rows[0] ?? null),
612
+ rollbackConfigRevision: async (id, revisionId, actor) => {
613
+ const revision = await db
614
+ .select()
615
+ .from(agentConfigRevisions)
616
+ .where(and(eq(agentConfigRevisions.agentId, id), eq(agentConfigRevisions.id, revisionId)))
617
+ .then((rows) => rows[0] ?? null);
618
+ if (!revision)
619
+ return null;
620
+ if (containsRedactedMarker(revision.afterConfig)) {
621
+ throw unprocessable("Cannot roll back a revision that contains redacted secret values");
622
+ }
623
+ const patch = configPatchFromSnapshot(revision.afterConfig);
624
+ return updateAgent(id, patch, {
625
+ recordRevision: {
626
+ createdByAgentId: actor.agentId ?? null,
627
+ createdByUserId: actor.userId ?? null,
628
+ source: "rollback",
629
+ rolledBackFromRevisionId: revision.id,
630
+ },
631
+ });
632
+ },
633
+ createApiKey: async (id, name) => {
634
+ const existing = await getById(id);
635
+ if (!existing)
636
+ throw notFound("Agent not found");
637
+ if (existing.status === "pending_approval") {
638
+ throw conflict("Cannot create keys for pending approval agents");
639
+ }
640
+ if (existing.status === "terminated") {
641
+ throw conflict("Cannot create keys for terminated agents");
642
+ }
643
+ const token = createToken();
644
+ const keyHash = hashToken(token);
645
+ const created = await db
646
+ .insert(agentApiKeys)
647
+ .values({
648
+ agentId: id,
649
+ orgId: existing.orgId,
650
+ name,
651
+ keyHash,
652
+ })
653
+ .returning()
654
+ .then((rows) => rows[0]);
655
+ return {
656
+ id: created.id,
657
+ name: created.name,
658
+ token,
659
+ createdAt: created.createdAt,
660
+ };
661
+ },
662
+ listKeys: (id) => db
663
+ .select({
664
+ id: agentApiKeys.id,
665
+ name: agentApiKeys.name,
666
+ createdAt: agentApiKeys.createdAt,
667
+ revokedAt: agentApiKeys.revokedAt,
668
+ })
669
+ .from(agentApiKeys)
670
+ .where(eq(agentApiKeys.agentId, id)),
671
+ revokeKey: async (keyId) => {
672
+ const rows = await db
673
+ .update(agentApiKeys)
674
+ .set({ revokedAt: new Date() })
675
+ .where(eq(agentApiKeys.id, keyId))
676
+ .returning();
677
+ return rows[0] ?? null;
678
+ },
679
+ orgForCompany: async (orgId) => {
680
+ const rows = await db
681
+ .select()
682
+ .from(agents)
683
+ .where(and(eq(agents.orgId, orgId), ne(agents.status, "terminated")));
684
+ const normalizedRows = rows.filter((row) => !isHiddenSystemAgentMetadata(row.metadata)).map(normalizeAgentRow);
685
+ const byManager = new Map();
686
+ for (const row of normalizedRows) {
687
+ const key = row.reportsTo ?? null;
688
+ const group = byManager.get(key) ?? [];
689
+ group.push(row);
690
+ byManager.set(key, group);
691
+ }
692
+ const build = (managerId) => {
693
+ const members = byManager.get(managerId) ?? [];
694
+ return members.map((member) => ({
695
+ ...member,
696
+ reports: build(member.id),
697
+ }));
698
+ };
699
+ return build(null);
700
+ },
701
+ getChainOfCommand: async (agentId) => {
702
+ const chain = [];
703
+ const visited = new Set([agentId]);
704
+ const start = await getById(agentId);
705
+ let currentId = start?.reportsTo ?? null;
706
+ while (currentId && !visited.has(currentId) && chain.length < 50) {
707
+ visited.add(currentId);
708
+ const mgr = await getById(currentId);
709
+ if (!mgr)
710
+ break;
711
+ chain.push({ id: mgr.id, name: mgr.name, role: mgr.role, title: mgr.title ?? null });
712
+ currentId = mgr.reportsTo ?? null;
713
+ }
714
+ return chain;
715
+ },
716
+ runningForAgent: (agentId) => db
717
+ .select()
718
+ .from(heartbeatRuns)
719
+ .where(and(eq(heartbeatRuns.agentId, agentId), inArray(heartbeatRuns.status, ["queued", "running"]))),
720
+ resolveByReference: async (orgId, reference) => {
721
+ const raw = reference.trim();
722
+ if (raw.length === 0) {
723
+ return { agent: null, ambiguous: false };
724
+ }
725
+ if (isUuidLike(raw)) {
726
+ const byId = await getById(raw);
727
+ if (!byId || byId.orgId !== orgId) {
728
+ return { agent: null, ambiguous: false };
729
+ }
730
+ return { agent: byId, ambiguous: false };
731
+ }
732
+ const urlKey = normalizeAgentUrlKey(raw);
733
+ if (!urlKey) {
734
+ return { agent: null, ambiguous: false };
735
+ }
736
+ const rows = await db.select().from(agents).where(eq(agents.orgId, orgId));
737
+ const matches = rows
738
+ .map(normalizeAgentRow)
739
+ .filter((agent) => isVisibleAgentRow(agent) && agent.urlKey === urlKey);
740
+ if (matches.length === 1) {
741
+ return { agent: matches[0] ?? null, ambiguous: false };
742
+ }
743
+ if (matches.length > 1) {
744
+ return { agent: null, ambiguous: true };
745
+ }
746
+ return { agent: null, ambiguous: false };
747
+ },
748
+ };
749
+ }
750
+ //# sourceMappingURL=agents.js.map