@paperclipai/server 0.3.1 → 2026.3.17-canary.2

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 (335) hide show
  1. package/dist/adapters/registry.d.ts.map +1 -1
  2. package/dist/adapters/registry.js +23 -2
  3. package/dist/adapters/registry.js.map +1 -1
  4. package/dist/adapters/types.d.ts +1 -1
  5. package/dist/adapters/types.d.ts.map +1 -1
  6. package/dist/app.d.ts +4 -0
  7. package/dist/app.d.ts.map +1 -1
  8. package/dist/app.js +115 -3
  9. package/dist/app.js.map +1 -1
  10. package/dist/attachment-types.d.ts.map +1 -1
  11. package/dist/attachment-types.js +6 -0
  12. package/dist/attachment-types.js.map +1 -1
  13. package/dist/config.d.ts.map +1 -1
  14. package/dist/config.js +9 -1
  15. package/dist/config.js.map +1 -1
  16. package/dist/home-paths.d.ts +5 -0
  17. package/dist/home-paths.d.ts.map +1 -1
  18. package/dist/home-paths.js +18 -0
  19. package/dist/home-paths.js.map +1 -1
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +61 -42
  22. package/dist/index.js.map +1 -1
  23. package/dist/routes/access.d.ts.map +1 -1
  24. package/dist/routes/access.js +90 -1
  25. package/dist/routes/access.js.map +1 -1
  26. package/dist/routes/agents.d.ts.map +1 -1
  27. package/dist/routes/agents.js +64 -1
  28. package/dist/routes/agents.js.map +1 -1
  29. package/dist/routes/assets.d.ts.map +1 -1
  30. package/dist/routes/assets.js +191 -13
  31. package/dist/routes/assets.js.map +1 -1
  32. package/dist/routes/companies.d.ts.map +1 -1
  33. package/dist/routes/companies.js +10 -1
  34. package/dist/routes/companies.js.map +1 -1
  35. package/dist/routes/costs.d.ts.map +1 -1
  36. package/dist/routes/costs.js +160 -5
  37. package/dist/routes/costs.js.map +1 -1
  38. package/dist/routes/execution-workspaces.d.ts +3 -0
  39. package/dist/routes/execution-workspaces.d.ts.map +1 -0
  40. package/dist/routes/execution-workspaces.js +165 -0
  41. package/dist/routes/execution-workspaces.js.map +1 -0
  42. package/dist/routes/health.d.ts.map +1 -1
  43. package/dist/routes/health.js +3 -1
  44. package/dist/routes/health.js.map +1 -1
  45. package/dist/routes/index.d.ts +1 -0
  46. package/dist/routes/index.d.ts.map +1 -1
  47. package/dist/routes/index.js +1 -0
  48. package/dist/routes/index.js.map +1 -1
  49. package/dist/routes/instance-settings.d.ts +3 -0
  50. package/dist/routes/instance-settings.d.ts.map +1 -0
  51. package/dist/routes/instance-settings.js +46 -0
  52. package/dist/routes/instance-settings.js.map +1 -0
  53. package/dist/routes/issues.d.ts.map +1 -1
  54. package/dist/routes/issues.js +339 -4
  55. package/dist/routes/issues.js.map +1 -1
  56. package/dist/routes/plugin-ui-static.d.ts +69 -0
  57. package/dist/routes/plugin-ui-static.d.ts.map +1 -0
  58. package/dist/routes/plugin-ui-static.js +411 -0
  59. package/dist/routes/plugin-ui-static.js.map +1 -0
  60. package/dist/routes/plugins.d.ts +120 -0
  61. package/dist/routes/plugins.d.ts.map +1 -0
  62. package/dist/routes/plugins.js +1784 -0
  63. package/dist/routes/plugins.js.map +1 -0
  64. package/dist/routes/projects.d.ts.map +1 -1
  65. package/dist/routes/projects.js +5 -1
  66. package/dist/routes/projects.js.map +1 -1
  67. package/dist/services/access.d.ts +2 -2
  68. package/dist/services/activity-log.d.ts +3 -0
  69. package/dist/services/activity-log.d.ts.map +1 -1
  70. package/dist/services/activity-log.js +34 -0
  71. package/dist/services/activity-log.js.map +1 -1
  72. package/dist/services/agents.d.ts +39 -15
  73. package/dist/services/agents.d.ts.map +1 -1
  74. package/dist/services/agents.js +60 -8
  75. package/dist/services/agents.js.map +1 -1
  76. package/dist/services/approvals.d.ts +5 -5
  77. package/dist/services/approvals.d.ts.map +1 -1
  78. package/dist/services/approvals.js +11 -0
  79. package/dist/services/approvals.js.map +1 -1
  80. package/dist/services/assets.d.ts +4 -4
  81. package/dist/services/budgets.d.ts +38 -0
  82. package/dist/services/budgets.d.ts.map +1 -0
  83. package/dist/services/budgets.js +784 -0
  84. package/dist/services/budgets.js.map +1 -0
  85. package/dist/services/companies.d.ts +39 -418
  86. package/dist/services/companies.d.ts.map +1 -1
  87. package/dist/services/companies.js +157 -21
  88. package/dist/services/companies.js.map +1 -1
  89. package/dist/services/costs.d.ts +67 -3
  90. package/dist/services/costs.d.ts.map +1 -1
  91. package/dist/services/costs.js +185 -57
  92. package/dist/services/costs.js.map +1 -1
  93. package/dist/services/cron.d.ts +80 -0
  94. package/dist/services/cron.d.ts.map +1 -0
  95. package/dist/services/cron.js +300 -0
  96. package/dist/services/cron.js.map +1 -0
  97. package/dist/services/dashboard.d.ts +6 -0
  98. package/dist/services/dashboard.d.ts.map +1 -1
  99. package/dist/services/dashboard.js +9 -0
  100. package/dist/services/dashboard.js.map +1 -1
  101. package/dist/services/documents.d.ts +164 -0
  102. package/dist/services/documents.d.ts.map +1 -0
  103. package/dist/services/documents.js +382 -0
  104. package/dist/services/documents.js.map +1 -0
  105. package/dist/services/execution-workspace-policy.d.ts +2 -1
  106. package/dist/services/execution-workspace-policy.d.ts.map +1 -1
  107. package/dist/services/execution-workspace-policy.js +63 -15
  108. package/dist/services/execution-workspace-policy.js.map +1 -1
  109. package/dist/services/execution-workspaces.d.ts +19 -0
  110. package/dist/services/execution-workspaces.d.ts.map +1 -0
  111. package/dist/services/execution-workspaces.js +87 -0
  112. package/dist/services/execution-workspaces.js.map +1 -0
  113. package/dist/services/finance.d.ts +93 -0
  114. package/dist/services/finance.d.ts.map +1 -0
  115. package/dist/services/finance.js +120 -0
  116. package/dist/services/finance.js.map +1 -0
  117. package/dist/services/heartbeat.d.ts +11 -1
  118. package/dist/services/heartbeat.d.ts.map +1 -1
  119. package/dist/services/heartbeat.js +1292 -559
  120. package/dist/services/heartbeat.js.map +1 -1
  121. package/dist/services/index.d.ts +7 -0
  122. package/dist/services/index.d.ts.map +1 -1
  123. package/dist/services/index.js +7 -0
  124. package/dist/services/index.js.map +1 -1
  125. package/dist/services/instance-settings.d.ts +9 -0
  126. package/dist/services/instance-settings.d.ts.map +1 -0
  127. package/dist/services/instance-settings.js +80 -0
  128. package/dist/services/instance-settings.js.map +1 -0
  129. package/dist/services/issue-approvals.d.ts +1 -1
  130. package/dist/services/issues.d.ts +14 -2
  131. package/dist/services/issues.d.ts.map +1 -1
  132. package/dist/services/issues.js +161 -9
  133. package/dist/services/issues.js.map +1 -1
  134. package/dist/services/live-events.d.ts +5 -0
  135. package/dist/services/live-events.d.ts.map +1 -1
  136. package/dist/services/live-events.js +9 -0
  137. package/dist/services/live-events.js.map +1 -1
  138. package/dist/services/plugin-capability-validator.d.ts +108 -0
  139. package/dist/services/plugin-capability-validator.d.ts.map +1 -0
  140. package/dist/services/plugin-capability-validator.js +268 -0
  141. package/dist/services/plugin-capability-validator.js.map +1 -0
  142. package/dist/services/plugin-config-validator.d.ts +26 -0
  143. package/dist/services/plugin-config-validator.d.ts.map +1 -0
  144. package/dist/services/plugin-config-validator.js +41 -0
  145. package/dist/services/plugin-config-validator.js.map +1 -0
  146. package/dist/services/plugin-dev-watcher.d.ts +30 -0
  147. package/dist/services/plugin-dev-watcher.d.ts.map +1 -0
  148. package/dist/services/plugin-dev-watcher.js +241 -0
  149. package/dist/services/plugin-dev-watcher.js.map +1 -0
  150. package/dist/services/plugin-event-bus.d.ts +149 -0
  151. package/dist/services/plugin-event-bus.d.ts.map +1 -0
  152. package/dist/services/plugin-event-bus.js +258 -0
  153. package/dist/services/plugin-event-bus.js.map +1 -0
  154. package/dist/services/plugin-host-service-cleanup.d.ts +14 -0
  155. package/dist/services/plugin-host-service-cleanup.d.ts.map +1 -0
  156. package/dist/services/plugin-host-service-cleanup.js +37 -0
  157. package/dist/services/plugin-host-service-cleanup.js.map +1 -0
  158. package/dist/services/plugin-host-services.d.ts +13 -0
  159. package/dist/services/plugin-host-services.d.ts.map +1 -0
  160. package/dist/services/plugin-host-services.js +969 -0
  161. package/dist/services/plugin-host-services.js.map +1 -0
  162. package/dist/services/plugin-job-coordinator.d.ts +81 -0
  163. package/dist/services/plugin-job-coordinator.d.ts.map +1 -0
  164. package/dist/services/plugin-job-coordinator.js +172 -0
  165. package/dist/services/plugin-job-coordinator.js.map +1 -0
  166. package/dist/services/plugin-job-scheduler.d.ts +163 -0
  167. package/dist/services/plugin-job-scheduler.d.ts.map +1 -0
  168. package/dist/services/plugin-job-scheduler.js +454 -0
  169. package/dist/services/plugin-job-scheduler.js.map +1 -0
  170. package/dist/services/plugin-job-store.d.ts +208 -0
  171. package/dist/services/plugin-job-store.d.ts.map +1 -0
  172. package/dist/services/plugin-job-store.js +350 -0
  173. package/dist/services/plugin-job-store.js.map +1 -0
  174. package/dist/services/plugin-lifecycle.d.ts +203 -0
  175. package/dist/services/plugin-lifecycle.d.ts.map +1 -0
  176. package/dist/services/plugin-lifecycle.js +476 -0
  177. package/dist/services/plugin-lifecycle.js.map +1 -0
  178. package/dist/services/plugin-loader.d.ts +441 -0
  179. package/dist/services/plugin-loader.d.ts.map +1 -0
  180. package/dist/services/plugin-loader.js +1192 -0
  181. package/dist/services/plugin-loader.js.map +1 -0
  182. package/dist/services/plugin-log-retention.d.ts +20 -0
  183. package/dist/services/plugin-log-retention.d.ts.map +1 -0
  184. package/dist/services/plugin-log-retention.js +63 -0
  185. package/dist/services/plugin-log-retention.js.map +1 -0
  186. package/dist/services/plugin-manifest-validator.d.ts +79 -0
  187. package/dist/services/plugin-manifest-validator.d.ts.map +1 -0
  188. package/dist/services/plugin-manifest-validator.js +84 -0
  189. package/dist/services/plugin-manifest-validator.js.map +1 -0
  190. package/dist/services/plugin-registry.d.ts +2542 -0
  191. package/dist/services/plugin-registry.d.ts.map +1 -0
  192. package/dist/services/plugin-registry.js +539 -0
  193. package/dist/services/plugin-registry.js.map +1 -0
  194. package/dist/services/plugin-runtime-sandbox.d.ts +40 -0
  195. package/dist/services/plugin-runtime-sandbox.d.ts.map +1 -0
  196. package/dist/services/plugin-runtime-sandbox.js +154 -0
  197. package/dist/services/plugin-runtime-sandbox.js.map +1 -0
  198. package/dist/services/plugin-secrets-handler.d.ts +81 -0
  199. package/dist/services/plugin-secrets-handler.d.ts.map +1 -0
  200. package/dist/services/plugin-secrets-handler.js +275 -0
  201. package/dist/services/plugin-secrets-handler.js.map +1 -0
  202. package/dist/services/plugin-state-store.d.ts +92 -0
  203. package/dist/services/plugin-state-store.d.ts.map +1 -0
  204. package/dist/services/plugin-state-store.js +190 -0
  205. package/dist/services/plugin-state-store.js.map +1 -0
  206. package/dist/services/plugin-stream-bus.d.ts +29 -0
  207. package/dist/services/plugin-stream-bus.d.ts.map +1 -0
  208. package/dist/services/plugin-stream-bus.js +48 -0
  209. package/dist/services/plugin-stream-bus.js.map +1 -0
  210. package/dist/services/plugin-tool-dispatcher.d.ts +180 -0
  211. package/dist/services/plugin-tool-dispatcher.d.ts.map +1 -0
  212. package/dist/services/plugin-tool-dispatcher.js +224 -0
  213. package/dist/services/plugin-tool-dispatcher.js.map +1 -0
  214. package/dist/services/plugin-tool-registry.d.ts +192 -0
  215. package/dist/services/plugin-tool-registry.d.ts.map +1 -0
  216. package/dist/services/plugin-tool-registry.js +224 -0
  217. package/dist/services/plugin-tool-registry.js.map +1 -0
  218. package/dist/services/plugin-worker-manager.d.ts +260 -0
  219. package/dist/services/plugin-worker-manager.d.ts.map +1 -0
  220. package/dist/services/plugin-worker-manager.js +835 -0
  221. package/dist/services/plugin-worker-manager.js.map +1 -0
  222. package/dist/services/projects.d.ts +12 -1
  223. package/dist/services/projects.d.ts.map +1 -1
  224. package/dist/services/projects.js +100 -4
  225. package/dist/services/projects.js.map +1 -1
  226. package/dist/services/quota-windows.d.ts +9 -0
  227. package/dist/services/quota-windows.d.ts.map +1 -0
  228. package/dist/services/quota-windows.js +56 -0
  229. package/dist/services/quota-windows.js.map +1 -0
  230. package/dist/services/secrets.d.ts +5 -5
  231. package/dist/services/work-products.d.ts +14 -0
  232. package/dist/services/work-products.d.ts.map +1 -0
  233. package/dist/services/work-products.js +100 -0
  234. package/dist/services/work-products.js.map +1 -0
  235. package/dist/services/workspace-operation-log-store.d.ts +33 -0
  236. package/dist/services/workspace-operation-log-store.d.ts.map +1 -0
  237. package/dist/services/workspace-operation-log-store.js +110 -0
  238. package/dist/services/workspace-operation-log-store.js.map +1 -0
  239. package/dist/services/workspace-operations.d.ts +44 -0
  240. package/dist/services/workspace-operations.d.ts.map +1 -0
  241. package/dist/services/workspace-operations.js +204 -0
  242. package/dist/services/workspace-operations.js.map +1 -0
  243. package/dist/services/workspace-runtime.d.ts +43 -5
  244. package/dist/services/workspace-runtime.d.ts.map +1 -1
  245. package/dist/services/workspace-runtime.js +413 -30
  246. package/dist/services/workspace-runtime.js.map +1 -1
  247. package/dist/ui-branding.d.ts +10 -1
  248. package/dist/ui-branding.d.ts.map +1 -1
  249. package/dist/ui-branding.js +164 -14
  250. package/dist/ui-branding.js.map +1 -1
  251. package/dist/version.d.ts +2 -0
  252. package/dist/version.d.ts.map +1 -0
  253. package/dist/version.js +5 -0
  254. package/dist/version.js.map +1 -0
  255. package/package.json +32 -14
  256. package/skills/paperclip/SKILL.md +34 -20
  257. package/skills/paperclip-create-plugin/SKILL.md +101 -0
  258. package/ui-dist/assets/{_basePickBy-B0xbZITw.js → _basePickBy-Chytvk8p.js} +1 -1
  259. package/ui-dist/assets/{_baseUniq-Cfd5u3qc.js → _baseUniq-BVL8b2zA.js} +1 -1
  260. package/ui-dist/assets/{arc-7Xbu8tBF.js → arc-D5hJS7gD.js} +1 -1
  261. package/ui-dist/assets/{architectureDiagram-VXUJARFQ-C8F7ZRYc.js → architectureDiagram-VXUJARFQ-BFq3iN58.js} +1 -1
  262. package/ui-dist/assets/{blockDiagram-VD42YOAC-Dp08a65A.js → blockDiagram-VD42YOAC-B69ok7vL.js} +1 -1
  263. package/ui-dist/assets/{c4Diagram-YG6GDRKO-BJfslTgZ.js → c4Diagram-YG6GDRKO-FE0D9aiA.js} +1 -1
  264. package/ui-dist/assets/channel-CiKAknwU.js +1 -0
  265. package/ui-dist/assets/{chunk-4BX2VUAB-BhaYWH7e.js → chunk-4BX2VUAB-SAhF6g-l.js} +1 -1
  266. package/ui-dist/assets/{chunk-55IACEB6-BOzJUsYW.js → chunk-55IACEB6-yxKD70bX.js} +1 -1
  267. package/ui-dist/assets/{chunk-B4BG7PRW-CbVcziyE.js → chunk-B4BG7PRW-qB4VaAIx.js} +1 -1
  268. package/ui-dist/assets/{chunk-DI55MBZ5-DghPtP3y.js → chunk-DI55MBZ5-B4NIq1Ee.js} +1 -1
  269. package/ui-dist/assets/{chunk-FMBD7UC4-CB095Kfn.js → chunk-FMBD7UC4-B5kLoRe2.js} +1 -1
  270. package/ui-dist/assets/{chunk-QN33PNHL-DfpzfDqJ.js → chunk-QN33PNHL-BVVG2n_X.js} +1 -1
  271. package/ui-dist/assets/{chunk-QZHKN3VN-Df3d5z1y.js → chunk-QZHKN3VN-ncMubclp.js} +1 -1
  272. package/ui-dist/assets/{chunk-TZMSLE5B-B6tX6bZI.js → chunk-TZMSLE5B-DSyjQk8C.js} +1 -1
  273. package/ui-dist/assets/classDiagram-2ON5EDUG-B93oQX02.js +1 -0
  274. package/ui-dist/assets/classDiagram-v2-WZHVMYZB-B93oQX02.js +1 -0
  275. package/ui-dist/assets/clone-Dld-3yq0.js +1 -0
  276. package/ui-dist/assets/{cose-bilkent-S5V4N54A-38wg_s9V.js → cose-bilkent-S5V4N54A-BAikNewC.js} +1 -1
  277. package/ui-dist/assets/{dagre-6UL2VRFP-DPVj3XLS.js → dagre-6UL2VRFP-j223UI8_.js} +1 -1
  278. package/ui-dist/assets/{diagram-PSM6KHXK-BJh89zUA.js → diagram-PSM6KHXK-Bhg27ZsN.js} +1 -1
  279. package/ui-dist/assets/{diagram-QEK2KX5R-Bw0m_j10.js → diagram-QEK2KX5R-BmtcrTHq.js} +1 -1
  280. package/ui-dist/assets/{diagram-S2PKOQOG-D7_M2F3u.js → diagram-S2PKOQOG-x8XuP7dH.js} +1 -1
  281. package/ui-dist/assets/{erDiagram-Q2GNP2WA-CLsjqTWP.js → erDiagram-Q2GNP2WA-Dc8mHvB-.js} +1 -1
  282. package/ui-dist/assets/{flowDiagram-NV44I4VS-BZZ7ezVB.js → flowDiagram-NV44I4VS-Br08v6xs.js} +1 -1
  283. package/ui-dist/assets/{ganttDiagram-JELNMOA3-KzsFuwBt.js → ganttDiagram-JELNMOA3-CksKhiV8.js} +1 -1
  284. package/ui-dist/assets/{gitGraphDiagram-V2S2FVAM-DSHtY7Vu.js → gitGraphDiagram-V2S2FVAM-DmitztAD.js} +1 -1
  285. package/ui-dist/assets/{graph-luIG1UAS.js → graph-Xzh7bNfz.js} +1 -1
  286. package/ui-dist/assets/{index-nFjLambq.js → index-B-MPJNeS.js} +1 -1
  287. package/ui-dist/assets/{index-RUBFVv6t.js → index-BAOC35TS.js} +1 -1
  288. package/ui-dist/assets/{index-CaR9XM4h.js → index-BCtrpKdJ.js} +1 -1
  289. package/ui-dist/assets/{index-itc7BfMy.js → index-B_mlwDCG.js} +1 -1
  290. package/ui-dist/assets/{index-1gX09-Fl.js → index-Bp8oJMwx.js} +1 -1
  291. package/ui-dist/assets/{index-B_3g3Rie.js → index-BqOfMG1d.js} +1 -1
  292. package/ui-dist/assets/{index-uR3zjYaD.js → index-C0hw7cTu.js} +1 -1
  293. package/ui-dist/assets/{index-Ds7vLTSK.js → index-C1ENEd6Y.js} +1 -1
  294. package/ui-dist/assets/{index-CeDCs_2i.js → index-CGB1OHQi.js} +1 -1
  295. package/ui-dist/assets/{index-DBy0vJy3.js → index-CZlfAt7E.js} +1 -1
  296. package/ui-dist/assets/{index-00kuG4sI.js → index-CeL-QouZ.js} +1 -1
  297. package/ui-dist/assets/{index-Bv4xCjxl.js → index-Cz0TxJbw.js} +1 -1
  298. package/ui-dist/assets/{index-DJf8diAA.js → index-DBxUCwDG.js} +1 -1
  299. package/ui-dist/assets/{index-DnIPDZLp.js → index-DGzQUMWC.js} +1 -1
  300. package/ui-dist/assets/{index-CbGtsjW7.js → index-DI9dat7c.js} +1 -1
  301. package/ui-dist/assets/{index-BfB4lKJN.js → index-DMpo-QSZ.js} +1 -1
  302. package/ui-dist/assets/{index-DcfLFstG.js → index-DQ6xyFaN.js} +1 -1
  303. package/ui-dist/assets/{index-B1ZMzzs0.js → index-DWMQ1Fyj.js} +1 -1
  304. package/ui-dist/assets/index-DbrFgvLd.css +1 -0
  305. package/ui-dist/assets/{index-C8XyGAr9.js → index-Er4i9aLN.js} +1 -1
  306. package/ui-dist/assets/{index-C2SZYIDA.js → index-I5K-yQx5.js} +1 -1
  307. package/ui-dist/assets/index-MuodIbDJ.js +1120 -0
  308. package/ui-dist/assets/{index-BeeKMqNU.js → index-auLN8BHe.js} +1 -1
  309. package/ui-dist/assets/{index-DoTq-BeR.js → index-xw01-Pl4.js} +1 -1
  310. package/ui-dist/assets/{infoDiagram-HS3SLOUP-CDEfWpme.js → infoDiagram-HS3SLOUP-DHb4TS1W.js} +1 -1
  311. package/ui-dist/assets/{journeyDiagram-XKPGCS4Q-i7nsbg_Y.js → journeyDiagram-XKPGCS4Q-CLRBeXVU.js} +1 -1
  312. package/ui-dist/assets/{kanban-definition-3W4ZIXB7-DDlx1qVE.js → kanban-definition-3W4ZIXB7-CsQp6woE.js} +1 -1
  313. package/ui-dist/assets/{layout-C7AtmJzX.js → layout-DwD9tZ5r.js} +1 -1
  314. package/ui-dist/assets/{linear-C5jHT-WP.js → linear-DF9n_1d3.js} +1 -1
  315. package/ui-dist/assets/{mermaid.core-C8YQ4fcY.js → mermaid.core-CDm4Crkq.js} +4 -4
  316. package/ui-dist/assets/{mindmap-definition-VGOIOE7T-B9m9PuUg.js → mindmap-definition-VGOIOE7T-CVzU1x4i.js} +1 -1
  317. package/ui-dist/assets/{pieDiagram-ADFJNKIX-SvKywCSE.js → pieDiagram-ADFJNKIX-CWgl0Up8.js} +1 -1
  318. package/ui-dist/assets/{quadrantDiagram-AYHSOK5B-QfBPm7Y1.js → quadrantDiagram-AYHSOK5B-CcedyN6Q.js} +1 -1
  319. package/ui-dist/assets/{requirementDiagram-UZGBJVZJ-DnfQQuwi.js → requirementDiagram-UZGBJVZJ-DZ4BVz3s.js} +1 -1
  320. package/ui-dist/assets/{sankeyDiagram-TZEHDZUN-DvLkjzIW.js → sankeyDiagram-TZEHDZUN-CLHEx34B.js} +1 -1
  321. package/ui-dist/assets/{sequenceDiagram-WL72ISMW-5Lq2rWBc.js → sequenceDiagram-WL72ISMW-nmTJbPyy.js} +1 -1
  322. package/ui-dist/assets/{stateDiagram-FKZM4ZOC-DcYPHDyi.js → stateDiagram-FKZM4ZOC-_UGwFEqN.js} +1 -1
  323. package/ui-dist/assets/stateDiagram-v2-4FDKWEC3-CvFVoOUd.js +1 -0
  324. package/ui-dist/assets/{timeline-definition-IT6M3QCI-lrN4JmWa.js → timeline-definition-IT6M3QCI-Bibk8Daj.js} +1 -1
  325. package/ui-dist/assets/{treemap-GDKQZRPO-DFJKIBTQ.js → treemap-GDKQZRPO-Ch3rlaqT.js} +1 -1
  326. package/ui-dist/assets/{xychartDiagram-PRI3JC2R-CT47vtdm.js → xychartDiagram-PRI3JC2R-DBUudr-E.js} +1 -1
  327. package/ui-dist/index.html +4 -2
  328. package/skills/create-agent-adapter/SKILL.md +0 -718
  329. package/ui-dist/assets/channel-BViQDbSq.js +0 -1
  330. package/ui-dist/assets/classDiagram-2ON5EDUG-CjMCmxMT.js +0 -1
  331. package/ui-dist/assets/classDiagram-v2-WZHVMYZB-CjMCmxMT.js +0 -1
  332. package/ui-dist/assets/clone-Dbn9wtE1.js +0 -1
  333. package/ui-dist/assets/index-BHP9dico.js +0 -1006
  334. package/ui-dist/assets/index-BfNaDZnn.css +0 -1
  335. package/ui-dist/assets/stateDiagram-v2-4FDKWEC3-nv50YYrl.js +0 -1
@@ -0,0 +1,260 @@
1
+ /**
2
+ * PluginWorkerManager — spawns and manages out-of-process plugin worker child
3
+ * processes, routes JSON-RPC 2.0 calls over stdio, and handles lifecycle
4
+ * management including crash recovery with exponential backoff.
5
+ *
6
+ * Each installed plugin gets one dedicated worker process. The host sends
7
+ * JSON-RPC requests over the child's stdin and reads responses from stdout.
8
+ * Worker stderr is captured and forwarded to the host logger.
9
+ *
10
+ * Process Model (from PLUGIN_SPEC.md §12):
11
+ * - One worker process per installed plugin
12
+ * - Failure isolation: plugin crashes do not affect the host
13
+ * - Graceful shutdown: 10-second drain, then SIGTERM, then SIGKILL
14
+ * - Automatic restart with exponential backoff on unexpected exits
15
+ *
16
+ * @see PLUGIN_SPEC.md §12 — Process Model
17
+ * @see PLUGIN_SPEC.md §12.5 — Graceful Shutdown Policy
18
+ * @see PLUGIN_SPEC.md §13 — Host-Worker Protocol
19
+ */
20
+ import type { PaperclipPluginManifestV1 } from "@paperclipai/shared";
21
+ import type { HostToWorkerMethodName, HostToWorkerMethods, WorkerToHostMethodName, WorkerToHostMethods } from "@paperclipai/plugin-sdk";
22
+ /**
23
+ * Status of a managed worker process.
24
+ */
25
+ export type WorkerStatus = "stopped" | "starting" | "running" | "stopping" | "crashed" | "backoff";
26
+ /**
27
+ * Worker-to-host method handler. The host registers these to service calls
28
+ * that the plugin worker makes back to the host (e.g. state.get, events.emit).
29
+ */
30
+ export type WorkerToHostHandler<M extends WorkerToHostMethodName> = (params: WorkerToHostMethods[M][0]) => Promise<WorkerToHostMethods[M][1]>;
31
+ /**
32
+ * A map of all worker-to-host method handlers provided by the host.
33
+ */
34
+ export type WorkerToHostHandlers = {
35
+ [M in WorkerToHostMethodName]?: WorkerToHostHandler<M>;
36
+ };
37
+ /**
38
+ * Events emitted by a PluginWorkerHandle.
39
+ */
40
+ export interface WorkerHandleEvents {
41
+ /** Worker process started and is ready (initialize succeeded). */
42
+ "ready": {
43
+ pluginId: string;
44
+ };
45
+ /** Worker process exited. */
46
+ "exit": {
47
+ pluginId: string;
48
+ code: number | null;
49
+ signal: NodeJS.Signals | null;
50
+ };
51
+ /** Worker process crashed unexpectedly. */
52
+ "crash": {
53
+ pluginId: string;
54
+ code: number | null;
55
+ signal: NodeJS.Signals | null;
56
+ willRestart: boolean;
57
+ };
58
+ /** Worker process errored (e.g. spawn failure). */
59
+ "error": {
60
+ pluginId: string;
61
+ error: Error;
62
+ };
63
+ /** Worker status changed. */
64
+ "status": {
65
+ pluginId: string;
66
+ status: WorkerStatus;
67
+ previousStatus: WorkerStatus;
68
+ };
69
+ }
70
+ type WorkerHandleEventName = keyof WorkerHandleEvents;
71
+ export declare function appendStderrExcerpt(current: string, chunk: string): string;
72
+ export declare function formatWorkerFailureMessage(message: string, stderrExcerpt: string): string;
73
+ /**
74
+ * Options for starting a worker process.
75
+ */
76
+ export interface WorkerStartOptions {
77
+ /** Absolute path to the plugin worker entrypoint (CJS bundle). */
78
+ entrypointPath: string;
79
+ /** Plugin manifest. */
80
+ manifest: PaperclipPluginManifestV1;
81
+ /** Resolved plugin configuration. */
82
+ config: Record<string, unknown>;
83
+ /** Host instance information for the initialize call. */
84
+ instanceInfo: {
85
+ instanceId: string;
86
+ hostVersion: string;
87
+ };
88
+ /** Host API version. */
89
+ apiVersion: number;
90
+ /** Handlers for worker→host RPC calls. */
91
+ hostHandlers: WorkerToHostHandlers;
92
+ /** Default timeout for RPC calls (ms). Defaults to 30s. */
93
+ rpcTimeoutMs?: number;
94
+ /** Whether to auto-restart on crash. Defaults to true. */
95
+ autoRestart?: boolean;
96
+ /** Node.js execArgv passed to the child process. */
97
+ execArgv?: string[];
98
+ /** Environment variables passed to the child process. */
99
+ env?: Record<string, string>;
100
+ /**
101
+ * Callback for stream notifications from the worker (streams.open/emit/close).
102
+ * The host wires this to the PluginStreamBus to fan out events to SSE clients.
103
+ */
104
+ onStreamNotification?: (method: string, params: Record<string, unknown>) => void;
105
+ }
106
+ /**
107
+ * Handle for a single plugin worker process.
108
+ *
109
+ * Callers use `start()` to spawn the worker, `call()` to send RPC requests,
110
+ * and `stop()` to gracefully shut down. The handle manages crash recovery
111
+ * with exponential backoff automatically when `autoRestart` is enabled.
112
+ */
113
+ export interface PluginWorkerHandle {
114
+ /** The plugin ID this worker serves. */
115
+ readonly pluginId: string;
116
+ /** Current worker status. */
117
+ readonly status: WorkerStatus;
118
+ /** Start the worker process. Resolves when initialize completes. */
119
+ start(): Promise<void>;
120
+ /**
121
+ * Stop the worker process gracefully.
122
+ *
123
+ * Sends a `shutdown` RPC call, waits up to 10 seconds for the worker to
124
+ * exit, then escalates to SIGTERM, and finally SIGKILL if needed.
125
+ */
126
+ stop(): Promise<void>;
127
+ /**
128
+ * Restart the worker process (stop + start).
129
+ */
130
+ restart(): Promise<void>;
131
+ /**
132
+ * Send a typed host→worker RPC call.
133
+ *
134
+ * @param method - The RPC method name
135
+ * @param params - Method parameters
136
+ * @param timeoutMs - Optional per-call timeout override
137
+ * @returns The method result
138
+ * @throws {JsonRpcCallError} if the worker returns an error response
139
+ * @throws {Error} if the worker is not running or the call times out
140
+ */
141
+ call<M extends HostToWorkerMethodName>(method: M, params: HostToWorkerMethods[M][0], timeoutMs?: number): Promise<HostToWorkerMethods[M][1]>;
142
+ /**
143
+ * Send a fire-and-forget notification to the worker (no response expected).
144
+ */
145
+ notify(method: string, params: unknown): void;
146
+ /** Subscribe to worker events. */
147
+ on<K extends WorkerHandleEventName>(event: K, listener: (payload: WorkerHandleEvents[K]) => void): void;
148
+ /** Unsubscribe from worker events. */
149
+ off<K extends WorkerHandleEventName>(event: K, listener: (payload: WorkerHandleEvents[K]) => void): void;
150
+ /** Optional methods the worker reported during initialization. */
151
+ readonly supportedMethods: string[];
152
+ /** Get diagnostic info about the worker. */
153
+ diagnostics(): WorkerDiagnostics;
154
+ }
155
+ /**
156
+ * Diagnostic information about a worker process.
157
+ */
158
+ export interface WorkerDiagnostics {
159
+ pluginId: string;
160
+ status: WorkerStatus;
161
+ pid: number | null;
162
+ uptime: number | null;
163
+ consecutiveCrashes: number;
164
+ totalCrashes: number;
165
+ pendingRequests: number;
166
+ lastCrashAt: number | null;
167
+ nextRestartAt: number | null;
168
+ }
169
+ /**
170
+ * The top-level manager that holds all plugin worker handles.
171
+ *
172
+ * Provides a registry of workers keyed by plugin ID, with convenience methods
173
+ * for starting/stopping all workers and routing RPC calls.
174
+ */
175
+ export interface PluginWorkerManager {
176
+ /**
177
+ * Register and start a worker for a plugin.
178
+ *
179
+ * @returns The worker handle
180
+ * @throws if a worker is already registered for this plugin
181
+ */
182
+ startWorker(pluginId: string, options: WorkerStartOptions): Promise<PluginWorkerHandle>;
183
+ /**
184
+ * Stop and unregister a specific plugin worker.
185
+ */
186
+ stopWorker(pluginId: string): Promise<void>;
187
+ /**
188
+ * Get the worker handle for a plugin.
189
+ */
190
+ getWorker(pluginId: string): PluginWorkerHandle | undefined;
191
+ /**
192
+ * Check if a worker is registered and running for a plugin.
193
+ */
194
+ isRunning(pluginId: string): boolean;
195
+ /**
196
+ * Stop all managed workers. Called during server shutdown.
197
+ */
198
+ stopAll(): Promise<void>;
199
+ /**
200
+ * Get diagnostic info for all workers.
201
+ */
202
+ diagnostics(): WorkerDiagnostics[];
203
+ /**
204
+ * Send an RPC call to a specific plugin worker.
205
+ *
206
+ * @throws if the worker is not running
207
+ */
208
+ call<M extends HostToWorkerMethodName>(pluginId: string, method: M, params: HostToWorkerMethods[M][0], timeoutMs?: number): Promise<HostToWorkerMethods[M][1]>;
209
+ }
210
+ /**
211
+ * Create a handle for a single plugin worker process.
212
+ *
213
+ * @internal Exported for testing; consumers should use `createPluginWorkerManager`.
214
+ */
215
+ export declare function createPluginWorkerHandle(pluginId: string, options: WorkerStartOptions): PluginWorkerHandle;
216
+ /**
217
+ * Options for creating a PluginWorkerManager.
218
+ */
219
+ export interface PluginWorkerManagerOptions {
220
+ /**
221
+ * Optional callback invoked when a worker emits a lifecycle event
222
+ * (crash, restart). Used by the server to publish global live events.
223
+ */
224
+ onWorkerEvent?: (event: {
225
+ type: "plugin.worker.crashed" | "plugin.worker.restarted";
226
+ pluginId: string;
227
+ code?: number | null;
228
+ signal?: string | null;
229
+ willRestart?: boolean;
230
+ }) => void;
231
+ }
232
+ /**
233
+ * Create a new PluginWorkerManager.
234
+ *
235
+ * The manager holds all plugin worker handles and provides a unified API for
236
+ * starting, stopping, and communicating with plugin workers.
237
+ *
238
+ * @example
239
+ * ```ts
240
+ * const manager = createPluginWorkerManager();
241
+ *
242
+ * const handle = await manager.startWorker("acme.linear", {
243
+ * entrypointPath: "/path/to/worker.cjs",
244
+ * manifest,
245
+ * config: resolvedConfig,
246
+ * instanceInfo: { instanceId: "inst-1", hostVersion: "1.0.0" },
247
+ * apiVersion: 1,
248
+ * hostHandlers: { "config.get": async () => resolvedConfig, ... },
249
+ * });
250
+ *
251
+ * // Send RPC call to the worker
252
+ * const health = await manager.call("acme.linear", "health", {});
253
+ *
254
+ * // Shutdown all workers on server exit
255
+ * await manager.stopAll();
256
+ * ```
257
+ */
258
+ export declare function createPluginWorkerManager(managerOptions?: PluginWorkerManagerOptions): PluginWorkerManager;
259
+ export {};
260
+ //# sourceMappingURL=plugin-worker-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-worker-manager.d.ts","sourceRoot":"","sources":["../../src/services/plugin-worker-manager.ts"],"names":[],"mappings":"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"}