@paperclipai/server 2026.817.0-nightly.0 → 2026.817.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 (540) hide show
  1. package/dist/adapters/hermes-gateway-doc.d.ts +1 -1
  2. package/dist/adapters/hermes-gateway-doc.d.ts.map +1 -1
  3. package/dist/adapters/hermes-gateway-doc.js +1 -1
  4. package/dist/adapters/plugin-loader.d.ts.map +1 -1
  5. package/dist/adapters/plugin-loader.js +2 -3
  6. package/dist/adapters/plugin-loader.js.map +1 -1
  7. package/dist/agent-auth-jwt.d.ts.map +1 -1
  8. package/dist/agent-auth-jwt.js +2 -8
  9. package/dist/agent-auth-jwt.js.map +1 -1
  10. package/dist/app.d.ts +1 -5
  11. package/dist/app.d.ts.map +1 -1
  12. package/dist/app.js +15 -193
  13. package/dist/app.js.map +1 -1
  14. package/dist/built-ins/agents/summarizer/AGENTS.md +2 -2
  15. package/dist/built-ins/agents/summarizer/routines/refresh-stale-summaries.md +0 -1
  16. package/dist/db-errors.d.ts +0 -9
  17. package/dist/db-errors.d.ts.map +1 -1
  18. package/dist/db-errors.js +0 -19
  19. package/dist/db-errors.js.map +1 -1
  20. package/dist/errors.d.ts +1 -1
  21. package/dist/errors.d.ts.map +1 -1
  22. package/dist/errors.js +2 -2
  23. package/dist/errors.js.map +1 -1
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +38 -162
  26. package/dist/index.js.map +1 -1
  27. package/dist/middleware/auth.d.ts +1 -13
  28. package/dist/middleware/auth.d.ts.map +1 -1
  29. package/dist/middleware/auth.js +41 -92
  30. package/dist/middleware/auth.js.map +1 -1
  31. package/dist/middleware/cloud-tenant-actor.test.js +1 -26
  32. package/dist/middleware/cloud-tenant-actor.test.js.map +1 -1
  33. package/dist/middleware/error-handler.d.ts.map +1 -1
  34. package/dist/middleware/error-handler.js +2 -11
  35. package/dist/middleware/error-handler.js.map +1 -1
  36. package/dist/middleware/logger.d.ts.map +1 -1
  37. package/dist/middleware/logger.js +33 -7
  38. package/dist/middleware/logger.js.map +1 -1
  39. package/dist/middleware/private-hostname-guard.d.ts.map +1 -1
  40. package/dist/middleware/private-hostname-guard.js +6 -11
  41. package/dist/middleware/private-hostname-guard.js.map +1 -1
  42. package/dist/middleware/redact-sensitive.d.ts.map +1 -1
  43. package/dist/middleware/redact-sensitive.js +0 -11
  44. package/dist/middleware/redact-sensitive.js.map +1 -1
  45. package/dist/realtime/live-events-ws.d.ts +0 -12
  46. package/dist/realtime/live-events-ws.d.ts.map +1 -1
  47. package/dist/realtime/live-events-ws.js +0 -20
  48. package/dist/realtime/live-events-ws.js.map +1 -1
  49. package/dist/redaction.js +1 -1
  50. package/dist/redaction.js.map +1 -1
  51. package/dist/routes/access.d.ts +0 -2
  52. package/dist/routes/access.d.ts.map +1 -1
  53. package/dist/routes/access.js +10 -21
  54. package/dist/routes/access.js.map +1 -1
  55. package/dist/routes/agents.d.ts +0 -35
  56. package/dist/routes/agents.d.ts.map +1 -1
  57. package/dist/routes/agents.js +8 -872
  58. package/dist/routes/agents.js.map +1 -1
  59. package/dist/routes/companies.d.ts +1 -5
  60. package/dist/routes/companies.d.ts.map +1 -1
  61. package/dist/routes/companies.js +30 -467
  62. package/dist/routes/companies.js.map +1 -1
  63. package/dist/routes/environments.d.ts +3 -12
  64. package/dist/routes/environments.d.ts.map +1 -1
  65. package/dist/routes/environments.js +23 -139
  66. package/dist/routes/environments.js.map +1 -1
  67. package/dist/routes/execution-workspaces.d.ts.map +1 -1
  68. package/dist/routes/execution-workspaces.js +70 -240
  69. package/dist/routes/execution-workspaces.js.map +1 -1
  70. package/dist/routes/file-resources.d.ts +1 -10
  71. package/dist/routes/file-resources.d.ts.map +1 -1
  72. package/dist/routes/file-resources.js +2 -142
  73. package/dist/routes/file-resources.js.map +1 -1
  74. package/dist/routes/index.d.ts +1 -2
  75. package/dist/routes/index.d.ts.map +1 -1
  76. package/dist/routes/index.js +1 -2
  77. package/dist/routes/index.js.map +1 -1
  78. package/dist/routes/instance-settings.d.ts.map +1 -1
  79. package/dist/routes/instance-settings.js +1 -20
  80. package/dist/routes/instance-settings.js.map +1 -1
  81. package/dist/routes/issues.d.ts.map +1 -1
  82. package/dist/routes/issues.js +235 -750
  83. package/dist/routes/issues.js.map +1 -1
  84. package/dist/routes/openapi.d.ts.map +1 -1
  85. package/dist/routes/openapi.js +2 -316
  86. package/dist/routes/openapi.js.map +1 -1
  87. package/dist/routes/secrets.d.ts.map +1 -1
  88. package/dist/routes/secrets.js +1 -11
  89. package/dist/routes/secrets.js.map +1 -1
  90. package/dist/routes/tool-access.d.ts.map +1 -1
  91. package/dist/routes/tool-access.js +52 -87
  92. package/dist/routes/tool-access.js.map +1 -1
  93. package/dist/routes/workspace-runtime-service-authz.d.ts +1 -11
  94. package/dist/routes/workspace-runtime-service-authz.d.ts.map +1 -1
  95. package/dist/routes/workspace-runtime-service-authz.js +16 -18
  96. package/dist/routes/workspace-runtime-service-authz.js.map +1 -1
  97. package/dist/services/access.d.ts.map +1 -1
  98. package/dist/services/activity.d.ts +1 -1
  99. package/dist/services/agents.d.ts +0 -21
  100. package/dist/services/agents.d.ts.map +1 -1
  101. package/dist/services/agents.js +1 -121
  102. package/dist/services/agents.js.map +1 -1
  103. package/dist/services/attention.d.ts +1 -20
  104. package/dist/services/attention.d.ts.map +1 -1
  105. package/dist/services/attention.js +1 -45
  106. package/dist/services/attention.js.map +1 -1
  107. package/dist/services/authorization.d.ts +2 -2
  108. package/dist/services/authorization.d.ts.map +1 -1
  109. package/dist/services/authorization.js +46 -89
  110. package/dist/services/authorization.js.map +1 -1
  111. package/dist/services/board-auth.d.ts.map +1 -1
  112. package/dist/services/board-auth.js +1 -40
  113. package/dist/services/board-auth.js.map +1 -1
  114. package/dist/services/built-in-agents.d.ts.map +1 -1
  115. package/dist/services/built-in-agents.js +4 -20
  116. package/dist/services/built-in-agents.js.map +1 -1
  117. package/dist/services/bundled-plugins.d.ts +1 -11
  118. package/dist/services/bundled-plugins.d.ts.map +1 -1
  119. package/dist/services/bundled-plugins.js +1 -46
  120. package/dist/services/bundled-plugins.js.map +1 -1
  121. package/dist/services/companies.d.ts.map +1 -1
  122. package/dist/services/companies.js +0 -7
  123. package/dist/services/companies.js.map +1 -1
  124. package/dist/services/company-export-readme.js +1 -1
  125. package/dist/services/company-export-readme.js.map +1 -1
  126. package/dist/services/company-portability.d.ts.map +1 -1
  127. package/dist/services/company-portability.js +3 -128
  128. package/dist/services/company-portability.js.map +1 -1
  129. package/dist/services/cross-issue-influence-limit.d.ts +1 -7
  130. package/dist/services/cross-issue-influence-limit.d.ts.map +1 -1
  131. package/dist/services/cross-issue-influence-limit.js.map +1 -1
  132. package/dist/services/environment-config.d.ts +0 -15
  133. package/dist/services/environment-config.d.ts.map +1 -1
  134. package/dist/services/environment-config.js +10 -56
  135. package/dist/services/environment-config.js.map +1 -1
  136. package/dist/services/environment-execution-target.d.ts.map +1 -1
  137. package/dist/services/environment-execution-target.js +11 -61
  138. package/dist/services/environment-execution-target.js.map +1 -1
  139. package/dist/services/environment-run-orchestrator.d.ts +1 -16
  140. package/dist/services/environment-run-orchestrator.d.ts.map +1 -1
  141. package/dist/services/environment-run-orchestrator.js +1 -1
  142. package/dist/services/environment-run-orchestrator.js.map +1 -1
  143. package/dist/services/environment-runtime.d.ts +2 -178
  144. package/dist/services/environment-runtime.d.ts.map +1 -1
  145. package/dist/services/environment-runtime.js +96 -1035
  146. package/dist/services/environment-runtime.js.map +1 -1
  147. package/dist/services/environments.d.ts +0 -75
  148. package/dist/services/environments.d.ts.map +1 -1
  149. package/dist/services/environments.js +8 -199
  150. package/dist/services/environments.js.map +1 -1
  151. package/dist/services/execution-allowlist.d.ts +4 -16
  152. package/dist/services/execution-allowlist.d.ts.map +1 -1
  153. package/dist/services/execution-allowlist.js +16 -35
  154. package/dist/services/execution-allowlist.js.map +1 -1
  155. package/dist/services/execution-allowlist.test.js +0 -33
  156. package/dist/services/execution-allowlist.test.js.map +1 -1
  157. package/dist/services/execution-workspace-policy.d.ts +1 -14
  158. package/dist/services/execution-workspace-policy.d.ts.map +1 -1
  159. package/dist/services/execution-workspace-policy.js +12 -29
  160. package/dist/services/execution-workspace-policy.js.map +1 -1
  161. package/dist/services/execution-workspaces.d.ts +0 -89
  162. package/dist/services/execution-workspaces.d.ts.map +1 -1
  163. package/dist/services/execution-workspaces.js +120 -951
  164. package/dist/services/execution-workspaces.js.map +1 -1
  165. package/dist/services/heartbeat-run-summary.d.ts +0 -1
  166. package/dist/services/heartbeat-run-summary.d.ts.map +1 -1
  167. package/dist/services/heartbeat-run-summary.js +3 -19
  168. package/dist/services/heartbeat-run-summary.js.map +1 -1
  169. package/dist/services/heartbeat.d.ts +2 -18
  170. package/dist/services/heartbeat.d.ts.map +1 -1
  171. package/dist/services/heartbeat.js +16 -369
  172. package/dist/services/heartbeat.js.map +1 -1
  173. package/dist/services/import-write-types.d.ts +0 -12
  174. package/dist/services/import-write-types.d.ts.map +1 -1
  175. package/dist/services/index.d.ts +0 -1
  176. package/dist/services/index.d.ts.map +1 -1
  177. package/dist/services/index.js +0 -1
  178. package/dist/services/index.js.map +1 -1
  179. package/dist/services/instance-settings.d.ts +1 -10
  180. package/dist/services/instance-settings.d.ts.map +1 -1
  181. package/dist/services/instance-settings.js +9 -16
  182. package/dist/services/instance-settings.js.map +1 -1
  183. package/dist/services/issue-review-policy.d.ts +0 -4
  184. package/dist/services/issue-review-policy.d.ts.map +1 -1
  185. package/dist/services/issue-review-policy.js +7 -18
  186. package/dist/services/issue-review-policy.js.map +1 -1
  187. package/dist/services/issue-thread-interactions.d.ts +4 -24
  188. package/dist/services/issue-thread-interactions.d.ts.map +1 -1
  189. package/dist/services/issue-thread-interactions.js +145 -360
  190. package/dist/services/issue-thread-interactions.js.map +1 -1
  191. package/dist/services/issue-thread-interactions.test.js +11 -18
  192. package/dist/services/issue-thread-interactions.test.js.map +1 -1
  193. package/dist/services/issues.d.ts +0 -3
  194. package/dist/services/issues.d.ts.map +1 -1
  195. package/dist/services/issues.js +33 -157
  196. package/dist/services/issues.js.map +1 -1
  197. package/dist/services/local-service-supervisor.d.ts +0 -2
  198. package/dist/services/local-service-supervisor.d.ts.map +1 -1
  199. package/dist/services/local-service-supervisor.js +3 -53
  200. package/dist/services/local-service-supervisor.js.map +1 -1
  201. package/dist/services/managed-environments.d.ts +1 -4
  202. package/dist/services/managed-environments.d.ts.map +1 -1
  203. package/dist/services/managed-environments.js +2 -86
  204. package/dist/services/managed-environments.js.map +1 -1
  205. package/dist/services/managed-environments.test.js +0 -164
  206. package/dist/services/managed-environments.test.js.map +1 -1
  207. package/dist/services/plan-review-context.d.ts +1 -9
  208. package/dist/services/plan-review-context.d.ts.map +1 -1
  209. package/dist/services/plan-review-context.js +0 -192
  210. package/dist/services/plan-review-context.js.map +1 -1
  211. package/dist/services/plugin-environment-driver.d.ts +0 -46
  212. package/dist/services/plugin-environment-driver.d.ts.map +1 -1
  213. package/dist/services/plugin-environment-driver.js +0 -50
  214. package/dist/services/plugin-environment-driver.js.map +1 -1
  215. package/dist/services/plugin-host-services.d.ts +0 -1
  216. package/dist/services/plugin-host-services.d.ts.map +1 -1
  217. package/dist/services/plugin-host-services.js +28 -51
  218. package/dist/services/plugin-host-services.js.map +1 -1
  219. package/dist/services/plugin-loader.d.ts +1 -10
  220. package/dist/services/plugin-loader.d.ts.map +1 -1
  221. package/dist/services/plugin-loader.js +2 -43
  222. package/dist/services/plugin-loader.js.map +1 -1
  223. package/dist/services/plugin-worker-manager.d.ts +0 -61
  224. package/dist/services/plugin-worker-manager.d.ts.map +1 -1
  225. package/dist/services/plugin-worker-manager.js +1 -248
  226. package/dist/services/plugin-worker-manager.js.map +1 -1
  227. package/dist/services/productivity-review.d.ts.map +1 -1
  228. package/dist/services/productivity-review.js +0 -5
  229. package/dist/services/productivity-review.js.map +1 -1
  230. package/dist/services/recovery/service.d.ts.map +1 -1
  231. package/dist/services/recovery/service.js +1 -5
  232. package/dist/services/recovery/service.js.map +1 -1
  233. package/dist/services/recovery/successful-run-handoff.d.ts +1 -16
  234. package/dist/services/recovery/successful-run-handoff.d.ts.map +1 -1
  235. package/dist/services/recovery/successful-run-handoff.js +0 -32
  236. package/dist/services/recovery/successful-run-handoff.js.map +1 -1
  237. package/dist/services/recovery/successful-run-handoff.test.js +1 -51
  238. package/dist/services/recovery/successful-run-handoff.test.js.map +1 -1
  239. package/dist/services/routines.d.ts.map +1 -1
  240. package/dist/services/routines.js +4 -48
  241. package/dist/services/routines.js.map +1 -1
  242. package/dist/services/sandbox-provider-runtime.d.ts +0 -15
  243. package/dist/services/sandbox-provider-runtime.d.ts.map +1 -1
  244. package/dist/services/sandbox-provider-runtime.js +0 -1
  245. package/dist/services/sandbox-provider-runtime.js.map +1 -1
  246. package/dist/services/secrets.d.ts +0 -103
  247. package/dist/services/secrets.d.ts.map +1 -1
  248. package/dist/services/secrets.js +10 -432
  249. package/dist/services/secrets.js.map +1 -1
  250. package/dist/services/summary-slots.d.ts.map +1 -1
  251. package/dist/services/summary-slots.js +6 -40
  252. package/dist/services/summary-slots.js.map +1 -1
  253. package/dist/services/task-watchdogs.js +2 -2
  254. package/dist/services/task-watchdogs.js.map +1 -1
  255. package/dist/services/tool-access-policy.d.ts +1 -1
  256. package/dist/services/tool-access.d.ts.map +1 -1
  257. package/dist/services/tool-access.js +11 -29
  258. package/dist/services/tool-access.js.map +1 -1
  259. package/dist/services/tool-gateway.d.ts +1 -1
  260. package/dist/services/tool-gateway.d.ts.map +1 -1
  261. package/dist/services/tool-gateway.js +5 -56
  262. package/dist/services/tool-gateway.js.map +1 -1
  263. package/dist/services/workspace-file-resources.d.ts +1 -5
  264. package/dist/services/workspace-file-resources.d.ts.map +1 -1
  265. package/dist/services/workspace-file-resources.js +0 -233
  266. package/dist/services/workspace-file-resources.js.map +1 -1
  267. package/dist/services/workspace-operations.d.ts +0 -60
  268. package/dist/services/workspace-operations.d.ts.map +1 -1
  269. package/dist/services/workspace-operations.js +19 -384
  270. package/dist/services/workspace-operations.js.map +1 -1
  271. package/dist/services/workspace-runtime-read-model.d.ts +0 -12
  272. package/dist/services/workspace-runtime-read-model.d.ts.map +1 -1
  273. package/dist/services/workspace-runtime-read-model.test.js +0 -3
  274. package/dist/services/workspace-runtime-read-model.test.js.map +1 -1
  275. package/dist/services/workspace-runtime-ready-comment.test.js +0 -1
  276. package/dist/services/workspace-runtime-ready-comment.test.js.map +1 -1
  277. package/dist/services/workspace-runtime.d.ts +2 -160
  278. package/dist/services/workspace-runtime.d.ts.map +1 -1
  279. package/dist/services/workspace-runtime.js +138 -1656
  280. package/dist/services/workspace-runtime.js.map +1 -1
  281. package/dist/shutdown.d.ts +0 -24
  282. package/dist/shutdown.d.ts.map +1 -1
  283. package/dist/shutdown.js +0 -37
  284. package/dist/shutdown.js.map +1 -1
  285. package/dist/shutdown.test.js +1 -113
  286. package/dist/shutdown.test.js.map +1 -1
  287. package/dist/startup-banner.js +1 -1
  288. package/dist/startup-banner.js.map +1 -1
  289. package/dist/worktree-config.d.ts.map +1 -1
  290. package/dist/worktree-config.js +17 -3
  291. package/dist/worktree-config.js.map +1 -1
  292. package/package.json +20 -20
  293. package/skills/paperclip/SKILL.md +11 -16
  294. package/skills/paperclip/references/api-reference.md +5 -8
  295. package/skills/paperclip-board/SKILL.md +1 -1
  296. package/ui-dist/assets/{abnfDiagram-N423BO3Z-kdaaavXN.js → abnfDiagram-VRR7QNED-wvSnvD6-.js} +1 -1
  297. package/ui-dist/assets/{arc-Cd18ox-r.js → arc-Bx0V1JsN.js} +1 -1
  298. package/ui-dist/assets/architectureDiagram-ZJ3FMSHR-BcJt8Ia1.js +36 -0
  299. package/ui-dist/assets/{blockDiagram-VBNYF7ZC-C58bTAsZ.js → blockDiagram-677ZJIJ3-BROcLaUk.js} +1 -1
  300. package/ui-dist/assets/{c4Diagram-5PPSVZJV-B_KtB_EB.js → c4Diagram-LMCZKHZV-D-V3kgju.js} +1 -1
  301. package/ui-dist/assets/channel-ZRpjyNiZ.js +1 -0
  302. package/ui-dist/assets/{chunk-2Q5K7J3B-BmpBwmLP.js → chunk-2Q5K7J3B-D19cVnii.js} +1 -1
  303. package/ui-dist/assets/{chunk-2GRJ4B5K-qhRHwM8Y.js → chunk-32BRIVSS-qillH3H6.js} +1 -1
  304. package/ui-dist/assets/{chunk-5VM5RSS4-D6Tga9Mb.js → chunk-5VM5RSS4-Cwlp02Lx.js} +1 -1
  305. package/ui-dist/assets/{chunk-5RXB4S5H-CywQRTe5.js → chunk-EX3LRPZG-CLUswrZg.js} +1 -1
  306. package/ui-dist/assets/{chunk-JWPE2WC7-ZtWnwqln.js → chunk-JWPE2WC7-BjepyzEb.js} +1 -1
  307. package/ui-dist/assets/{chunk-6Q2QTUOP-0CsU7zKG.js → chunk-MOJQB5TN-yKciyq6E.js} +1 -1
  308. package/ui-dist/assets/{chunk-RYQCIY6F-DL2nCqGg.js → chunk-RYQCIY6F-ed7mQM9j.js} +1 -1
  309. package/ui-dist/assets/{chunk-GF5L2VYU-CPNUZr5Z.js → chunk-V7JOEXUC-DjJ75g0_.js} +1 -1
  310. package/ui-dist/assets/{chunk-KBJHAD2P-BglpLlt7.js → chunk-VR4S4FIN-CiEmy8-R.js} +1 -1
  311. package/ui-dist/assets/{chunk-XXDRQBXY-CbZaXCH1.js → chunk-XXDRQBXY-BiI83zoO.js} +1 -1
  312. package/ui-dist/assets/classDiagram-OUVF2IWQ-CCzzzCgk.js +1 -0
  313. package/ui-dist/assets/classDiagram-v2-EOCWNBFH-CCzzzCgk.js +1 -0
  314. package/ui-dist/assets/{cose-bilkent-JH36ORCC-g7-KyEFk.js → cose-bilkent-JH36ORCC-DIdQf5ta.js} +1 -1
  315. package/ui-dist/assets/{cynefin-VYW2F7L2-Ddyfknyn.js → cynefin-VYW2F7L2-B2m9xxh8.js} +1 -1
  316. package/ui-dist/assets/{cynefinDiagram-MW4NZA55-ybWs3Wtw.js → cynefinDiagram-TSTJHNR4-CGVdB0kX.js} +1 -1
  317. package/ui-dist/assets/cytoscape.esm-D8joxN9f.js +321 -0
  318. package/ui-dist/assets/{dagre-VZM6K2ZE-DVedg66G.js → dagre-VKFMJZFB-CskKiZwJ.js} +1 -1
  319. package/ui-dist/assets/{diagram-B4RE2ZJO-Uxn4QE1k.js → diagram-FQU43EPY-oa5Zu0XG.js} +1 -1
  320. package/ui-dist/assets/{diagram-Q27KOJAE-BFRHmYUR.js → diagram-G47NLZAW-BWF2ZCsw.js} +1 -1
  321. package/ui-dist/assets/{diagram-LBJQPF4R-Ky1WDHsF.js → diagram-NH7WQ7WH-fymti5Js.js} +1 -1
  322. package/ui-dist/assets/{diagram-7IWD3JNH-B3y_L0hG.js → diagram-OA4YK3LP-D2cn5eIN.js} +1 -1
  323. package/ui-dist/assets/diagram-WEI45ONY-M3WOC2tK.js +41 -0
  324. package/ui-dist/assets/{ebnfDiagram-BXEA7PRR-D1a0Rqvh.js → ebnfDiagram-CCIWWBDH-CJ1d3D5q.js} +1 -1
  325. package/ui-dist/assets/{erDiagram-JOGREHBK-BzAQkAlO.js → erDiagram-Q63AITRT-BJCPa7kK.js} +1 -1
  326. package/ui-dist/assets/{flowDiagram-UKHOOZJN-hvrW-gFq.js → flowDiagram-23GEKE2U-BWjWuz6r.js} +5 -5
  327. package/ui-dist/assets/{ganttDiagram-PKOTCBZU-nayknBOj.js → ganttDiagram-NO4QXBWP-Dv1KKjoM.js} +1 -1
  328. package/ui-dist/assets/{gitGraphDiagram-DS77QQ5N-kVm8tlTt.js → gitGraphDiagram-IHSO6WYX-9X7vgL0A.js} +1 -1
  329. package/ui-dist/assets/{index-DTRmOxIF.js → index-0yJtUsFh.js} +1 -1
  330. package/ui-dist/assets/{index-B_vImm_g.js → index-9JMDmXc5.js} +1 -1
  331. package/ui-dist/assets/{index-Bzq0zQGp.js → index-BTMiDMYv.js} +1 -1
  332. package/ui-dist/assets/{index-xUL-pLcX.js → index-BahRsj0s.js} +1 -1
  333. package/ui-dist/assets/{index-GApRWMfs.js → index-BexA3NAl.js} +1 -1
  334. package/ui-dist/assets/index-BqfqfoQX.css +1 -0
  335. package/ui-dist/assets/{index-CcljEelk.js → index-ByGcu-MB.js} +1 -1
  336. package/ui-dist/assets/{index-ClDlu8SX.js → index-C2a4_IKU.js} +1 -1
  337. package/ui-dist/assets/{index-BYJAA_gs.js → index-C5qHatpp.js} +1 -1
  338. package/ui-dist/assets/{index-yxu04f5O.js → index-C96LHV1A.js} +1 -1
  339. package/ui-dist/assets/{index-CI2nFrWG.js → index-Cfz6P0Qq.js} +1 -1
  340. package/ui-dist/assets/{index-EEYhQFqq.js → index-CjN2lm_w.js} +1 -1
  341. package/ui-dist/assets/{index-C6VVnr6a.js → index-CnBrDwGT.js} +223 -247
  342. package/ui-dist/assets/{index-BsJ74PWF.js → index-CpaK48ok.js} +1 -1
  343. package/ui-dist/assets/{index-K-yR0_iz.js → index-D2YCrA-D.js} +1 -1
  344. package/ui-dist/assets/{index-CAtSRe0E.js → index-D9d3sl6K.js} +1 -1
  345. package/ui-dist/assets/{index-DGp8Fwkd.js → index-DIXaXZrW.js} +1 -1
  346. package/ui-dist/assets/{index-VDideC_E.js → index-DKEzHO7c.js} +1 -1
  347. package/ui-dist/assets/{index-CACpGMZg.js → index-DKlsEDV7.js} +1 -1
  348. package/ui-dist/assets/{index-Ba3NVm1L.js → index-DcfO6NoY.js} +1 -1
  349. package/ui-dist/assets/{index-CBr05u1F.js → index-DuI6e5mP.js} +1 -1
  350. package/ui-dist/assets/{index-DiyJaeMJ.js → index-cUQXJtLK.js} +1 -1
  351. package/ui-dist/assets/{index-DKraBldB.js → index-pqJO8FsV.js} +1 -1
  352. package/ui-dist/assets/{index-ZhuZKD7A.js → index-rDI1Q4r9.js} +1 -1
  353. package/ui-dist/assets/{index-DK9VWhCv.js → index-tDuieU3u.js} +1 -1
  354. package/ui-dist/assets/{infoDiagram-6WML65LV-CEuNfv6U.js → infoDiagram-FWYZ7A6U-CHIhutSb.js} +1 -1
  355. package/ui-dist/assets/{ishikawaDiagram-WSZJBQD7-DEpSlkvS.js → ishikawaDiagram-FXEZZL3T-ChaD7-5_.js} +1 -1
  356. package/ui-dist/assets/{journeyDiagram-NVQOT4AX-CATgWMus.js → journeyDiagram-5HDEW3XC-M5T2sMgn.js} +1 -1
  357. package/ui-dist/assets/{kanban-definition-27J2QSJJ-Ce7s87OZ.js → kanban-definition-HUTT4EX6-B8H6R_Wc.js} +1 -1
  358. package/ui-dist/assets/{linear-BVMMVNi-.js → linear-cpPKlVCq.js} +1 -1
  359. package/ui-dist/assets/mermaid.core-MCazc_od.js +308 -0
  360. package/ui-dist/assets/{mindmap-definition-FAOFIHXS-rQds2Njn.js → mindmap-definition-LN4V7U3C-Bf6POzvm.js} +1 -1
  361. package/ui-dist/assets/{pegDiagram-VL7TDLO6-CLopYQkq.js → pegDiagram-2B236MQR-BJbGktAV.js} +1 -1
  362. package/ui-dist/assets/{pieDiagram-7S7Q4E2Y-C7TEyWBi.js → pieDiagram-ENE6RG2P-BmSN9Bio.js} +1 -1
  363. package/ui-dist/assets/{quadrantDiagram-CIZ2JOQS-3P1sRhyi.js → quadrantDiagram-ABIIQ3AL-JUpqQCx_.js} +1 -1
  364. package/ui-dist/assets/{railroadDiagram-AXF67PYL-S11hagYW.js → railroadDiagram-RFXS5EU6-B8k8T4-2.js} +1 -1
  365. package/ui-dist/assets/{requirementDiagram-LRYGKXZP-Dt0SvxPA.js → requirementDiagram-TGXJPOKE-b32heq7Q.js} +1 -1
  366. package/ui-dist/assets/{sankeyDiagram-W5VNT64P-D2TwJ0OV.js → sankeyDiagram-HTMAVEWB-DC3s-xgf.js} +1 -1
  367. package/ui-dist/assets/{sequenceDiagram-SI44F4Z6-B6pcnGbo.js → sequenceDiagram-DBY2YBRQ-BsCFyv_E.js} +1 -1
  368. package/ui-dist/assets/{sizeCapture-X5ZJPWSS-BwHHBcz4.js → sizeCapture-X5ZJPWSS-S7xeCud3.js} +1 -1
  369. package/ui-dist/assets/{stateDiagram-OKZ733FA-DeyWZ-1P.js → stateDiagram-2N3HPSRC-58O3ofoS.js} +1 -1
  370. package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-_VY5dpDG.js +1 -0
  371. package/ui-dist/assets/{swimlanes-SLNWSIFB-D_8zhPGT.js → swimlanes-5IMT3BWC-DFCVG0iF.js} +2 -2
  372. package/ui-dist/assets/swimlanesDiagram-G3AALYLV-BJhUjfns.js +8 -0
  373. package/ui-dist/assets/{timeline-definition-Z64GVDOM-ExLh8bsr.js → timeline-definition-FHXFAJF6-C0c0SkQu.js} +1 -1
  374. package/ui-dist/assets/{vennDiagram-T6HMQDX7-NhHU2XBa.js → vennDiagram-L72KCM5P-B1cEx8GQ.js} +1 -1
  375. package/ui-dist/assets/{wardleyDiagram-T6FBY63Y-Cpi3JH_6.js → wardleyDiagram-EHGQE667-BQhDkOx9.js} +1 -1
  376. package/ui-dist/assets/{xychartDiagram-ELKLHX3M-duq3uhjx.js → xychartDiagram-FW5EYKEG-YSQp1N0i.js} +4 -4
  377. package/ui-dist/index.html +3 -3
  378. package/ui-dist/sw.js +3 -8
  379. package/dist/lib/request-promise-memo.d.ts +0 -6
  380. package/dist/lib/request-promise-memo.d.ts.map +0 -1
  381. package/dist/lib/request-promise-memo.js +0 -25
  382. package/dist/lib/request-promise-memo.js.map +0 -1
  383. package/dist/lib/request-promise-memo.test.d.ts +0 -2
  384. package/dist/lib/request-promise-memo.test.d.ts.map +0 -1
  385. package/dist/lib/request-promise-memo.test.js +0 -74
  386. package/dist/lib/request-promise-memo.test.js.map +0 -1
  387. package/dist/middleware/private-json-etag.d.ts +0 -3
  388. package/dist/middleware/private-json-etag.d.ts.map +0 -1
  389. package/dist/middleware/private-json-etag.js +0 -37
  390. package/dist/middleware/private-json-etag.js.map +0 -1
  391. package/dist/routes/onboarding-seed.d.ts +0 -27
  392. package/dist/routes/onboarding-seed.d.ts.map +0 -1
  393. package/dist/routes/onboarding-seed.js +0 -56
  394. package/dist/routes/onboarding-seed.js.map +0 -1
  395. package/dist/routes/setup-token-route.test.d.ts +0 -2
  396. package/dist/routes/setup-token-route.test.d.ts.map +0 -1
  397. package/dist/routes/setup-token-route.test.js +0 -868
  398. package/dist/routes/setup-token-route.test.js.map +0 -1
  399. package/dist/services/attention-resolver-audience.test.d.ts +0 -2
  400. package/dist/services/attention-resolver-audience.test.d.ts.map +0 -1
  401. package/dist/services/attention-resolver-audience.test.js +0 -81
  402. package/dist/services/attention-resolver-audience.test.js.map +0 -1
  403. package/dist/services/board-auth.test.d.ts +0 -2
  404. package/dist/services/board-auth.test.d.ts.map +0 -1
  405. package/dist/services/board-auth.test.js +0 -34
  406. package/dist/services/board-auth.test.js.map +0 -1
  407. package/dist/services/codex-device-login-reaper.d.ts +0 -61
  408. package/dist/services/codex-device-login-reaper.d.ts.map +0 -1
  409. package/dist/services/codex-device-login-reaper.js +0 -219
  410. package/dist/services/codex-device-login-reaper.js.map +0 -1
  411. package/dist/services/codex-device-login-service.d.ts +0 -355
  412. package/dist/services/codex-device-login-service.d.ts.map +0 -1
  413. package/dist/services/codex-device-login-service.js +0 -775
  414. package/dist/services/codex-device-login-service.js.map +0 -1
  415. package/dist/services/company-import-transfers.d.ts +0 -55
  416. package/dist/services/company-import-transfers.d.ts.map +0 -1
  417. package/dist/services/company-import-transfers.js +0 -151
  418. package/dist/services/company-import-transfers.js.map +0 -1
  419. package/dist/services/company-transfer-runs.d.ts +0 -136
  420. package/dist/services/company-transfer-runs.d.ts.map +0 -1
  421. package/dist/services/company-transfer-runs.js +0 -243
  422. package/dist/services/company-transfer-runs.js.map +0 -1
  423. package/dist/services/issue-thread-interaction-resolution.d.ts +0 -92
  424. package/dist/services/issue-thread-interaction-resolution.d.ts.map +0 -1
  425. package/dist/services/issue-thread-interaction-resolution.js +0 -198
  426. package/dist/services/issue-thread-interaction-resolution.js.map +0 -1
  427. package/dist/services/issue-thread-interaction-resolution.test.d.ts +0 -2
  428. package/dist/services/issue-thread-interaction-resolution.test.d.ts.map +0 -1
  429. package/dist/services/issue-thread-interaction-resolution.test.js +0 -152
  430. package/dist/services/issue-thread-interaction-resolution.test.js.map +0 -1
  431. package/dist/services/onboarding-greeting.d.ts +0 -7
  432. package/dist/services/onboarding-greeting.d.ts.map +0 -1
  433. package/dist/services/onboarding-greeting.js +0 -27
  434. package/dist/services/onboarding-greeting.js.map +0 -1
  435. package/dist/services/onboarding-greeting.test.d.ts +0 -2
  436. package/dist/services/onboarding-greeting.test.d.ts.map +0 -1
  437. package/dist/services/onboarding-greeting.test.js +0 -32
  438. package/dist/services/onboarding-greeting.test.js.map +0 -1
  439. package/dist/services/onboarding-seed.d.ts +0 -57
  440. package/dist/services/onboarding-seed.d.ts.map +0 -1
  441. package/dist/services/onboarding-seed.js +0 -344
  442. package/dist/services/onboarding-seed.js.map +0 -1
  443. package/dist/services/runtime-exposure/broker-client.d.ts +0 -88
  444. package/dist/services/runtime-exposure/broker-client.d.ts.map +0 -1
  445. package/dist/services/runtime-exposure/broker-client.js +0 -217
  446. package/dist/services/runtime-exposure/broker-client.js.map +0 -1
  447. package/dist/services/runtime-exposure/broker-client.test.d.ts +0 -2
  448. package/dist/services/runtime-exposure/broker-client.test.d.ts.map +0 -1
  449. package/dist/services/runtime-exposure/broker-client.test.js +0 -185
  450. package/dist/services/runtime-exposure/broker-client.test.js.map +0 -1
  451. package/dist/services/runtime-exposure/exposure-manager.d.ts +0 -135
  452. package/dist/services/runtime-exposure/exposure-manager.d.ts.map +0 -1
  453. package/dist/services/runtime-exposure/exposure-manager.js +0 -247
  454. package/dist/services/runtime-exposure/exposure-manager.js.map +0 -1
  455. package/dist/services/runtime-exposure/exposure-manager.test.d.ts +0 -2
  456. package/dist/services/runtime-exposure/exposure-manager.test.d.ts.map +0 -1
  457. package/dist/services/runtime-exposure/exposure-manager.test.js +0 -384
  458. package/dist/services/runtime-exposure/exposure-manager.test.js.map +0 -1
  459. package/dist/services/runtime-exposure/loopback-listener.d.ts +0 -33
  460. package/dist/services/runtime-exposure/loopback-listener.d.ts.map +0 -1
  461. package/dist/services/runtime-exposure/loopback-listener.js +0 -146
  462. package/dist/services/runtime-exposure/loopback-listener.js.map +0 -1
  463. package/dist/services/runtime-exposure/loopback-listener.test.d.ts +0 -2
  464. package/dist/services/runtime-exposure/loopback-listener.test.d.ts.map +0 -1
  465. package/dist/services/runtime-exposure/loopback-listener.test.js +0 -116
  466. package/dist/services/runtime-exposure/loopback-listener.test.js.map +0 -1
  467. package/dist/services/runtime-exposure/port-pair.d.ts +0 -47
  468. package/dist/services/runtime-exposure/port-pair.d.ts.map +0 -1
  469. package/dist/services/runtime-exposure/port-pair.js +0 -57
  470. package/dist/services/runtime-exposure/port-pair.js.map +0 -1
  471. package/dist/services/runtime-exposure/port-pair.test.d.ts +0 -2
  472. package/dist/services/runtime-exposure/port-pair.test.d.ts.map +0 -1
  473. package/dist/services/runtime-exposure/port-pair.test.js +0 -92
  474. package/dist/services/runtime-exposure/port-pair.test.js.map +0 -1
  475. package/dist/services/runtime-exposure/port-reservation.d.ts +0 -211
  476. package/dist/services/runtime-exposure/port-reservation.d.ts.map +0 -1
  477. package/dist/services/runtime-exposure/port-reservation.js +0 -380
  478. package/dist/services/runtime-exposure/port-reservation.js.map +0 -1
  479. package/dist/services/runtime-exposure/port-reservation.test.d.ts +0 -2
  480. package/dist/services/runtime-exposure/port-reservation.test.d.ts.map +0 -1
  481. package/dist/services/runtime-exposure/port-reservation.test.js +0 -456
  482. package/dist/services/runtime-exposure/port-reservation.test.js.map +0 -1
  483. package/dist/services/runtime-exposure/tailscale-hostname.d.ts +0 -11
  484. package/dist/services/runtime-exposure/tailscale-hostname.d.ts.map +0 -1
  485. package/dist/services/runtime-exposure/tailscale-hostname.js +0 -36
  486. package/dist/services/runtime-exposure/tailscale-hostname.js.map +0 -1
  487. package/dist/services/runtime-exposure/tailscale-hostname.test.d.ts +0 -2
  488. package/dist/services/runtime-exposure/tailscale-hostname.test.d.ts.map +0 -1
  489. package/dist/services/runtime-exposure/tailscale-hostname.test.js +0 -14
  490. package/dist/services/runtime-exposure/tailscale-hostname.test.js.map +0 -1
  491. package/dist/services/sandbox-orphan-cleanup-spool.d.ts +0 -64
  492. package/dist/services/sandbox-orphan-cleanup-spool.d.ts.map +0 -1
  493. package/dist/services/sandbox-orphan-cleanup-spool.js +0 -134
  494. package/dist/services/sandbox-orphan-cleanup-spool.js.map +0 -1
  495. package/dist/services/setup-token-session.d.ts +0 -612
  496. package/dist/services/setup-token-session.d.ts.map +0 -1
  497. package/dist/services/setup-token-session.js +0 -986
  498. package/dist/services/setup-token-session.js.map +0 -1
  499. package/dist/services/setup-token-session.test.d.ts +0 -2
  500. package/dist/services/setup-token-session.test.d.ts.map +0 -1
  501. package/dist/services/setup-token-session.test.js +0 -1100
  502. package/dist/services/setup-token-session.test.js.map +0 -1
  503. package/dist/services/setup-token-transport-binding.d.ts +0 -202
  504. package/dist/services/setup-token-transport-binding.d.ts.map +0 -1
  505. package/dist/services/setup-token-transport-binding.js +0 -386
  506. package/dist/services/setup-token-transport-binding.js.map +0 -1
  507. package/dist/services/setup-token-transport-binding.test.d.ts +0 -2
  508. package/dist/services/setup-token-transport-binding.test.d.ts.map +0 -1
  509. package/dist/services/setup-token-transport-binding.test.js +0 -761
  510. package/dist/services/setup-token-transport-binding.test.js.map +0 -1
  511. package/dist/services/workspace-runtime-exposure-backfill.test.d.ts +0 -2
  512. package/dist/services/workspace-runtime-exposure-backfill.test.d.ts.map +0 -1
  513. package/dist/services/workspace-runtime-exposure-backfill.test.js +0 -149
  514. package/dist/services/workspace-runtime-exposure-backfill.test.js.map +0 -1
  515. package/dist/services/workspace-runtime-exposure.test.d.ts +0 -2
  516. package/dist/services/workspace-runtime-exposure.test.d.ts.map +0 -1
  517. package/dist/services/workspace-runtime-exposure.test.js +0 -517
  518. package/dist/services/workspace-runtime-exposure.test.js.map +0 -1
  519. package/dist/services/workspace-runtime-leases.d.ts +0 -90
  520. package/dist/services/workspace-runtime-leases.d.ts.map +0 -1
  521. package/dist/services/workspace-runtime-leases.js +0 -252
  522. package/dist/services/workspace-runtime-leases.js.map +0 -1
  523. package/dist/url-utils.d.ts +0 -26
  524. package/dist/url-utils.d.ts.map +0 -1
  525. package/dist/url-utils.js +0 -59
  526. package/dist/url-utils.js.map +0 -1
  527. package/dist/url-utils.test.d.ts +0 -2
  528. package/dist/url-utils.test.d.ts.map +0 -1
  529. package/dist/url-utils.test.js +0 -55
  530. package/dist/url-utils.test.js.map +0 -1
  531. package/ui-dist/assets/architectureDiagram-T3A2C74G-DtzDe418.js +0 -36
  532. package/ui-dist/assets/channel-CO5Hj_lo.js +0 -1
  533. package/ui-dist/assets/classDiagram-JCYQIIEL-B9WLXtNO.js +0 -1
  534. package/ui-dist/assets/classDiagram-v2-OCEON4UE-B9WLXtNO.js +0 -1
  535. package/ui-dist/assets/cytoscape.esm-DShqj__B.js +0 -321
  536. package/ui-dist/assets/diagram-UB23O5K3-C5Jb7jit.js +0 -41
  537. package/ui-dist/assets/index-BHiUiToL.css +0 -1
  538. package/ui-dist/assets/mermaid.core-Bd443bNG.js +0 -308
  539. package/ui-dist/assets/stateDiagram-v2-UEYNNEHI-DHYkVMlW.js +0 -1
  540. package/ui-dist/assets/swimlanesDiagram-ULZ7WXOC-DH1A2oGJ.js +0 -8
@@ -1,2 +1,2 @@
1
- export declare const hermesGatewayAgentConfigurationDoc = "# hermes_gateway agent configuration\n\nAdapter: hermes_gateway\n\nUse when:\n- Hermes is already running outside Paperclip and exposes its API server.\n- Paperclip should invoke Hermes through the gateway HTTP API instead of spawning Hermes locally.\n- The Hermes runtime may live on another host, a private overlay, in Docker, or behind a TLS reverse proxy.\n\nDon't use when:\n- Paperclip should start the Hermes CLI directly on the same host. Use the built-in hermes_local adapter for that flow.\n- Hermes is the process calling Paperclip APIs after claiming its key. That is Hermes-originated Paperclip API usage, not the gateway adapter transport.\n\nRuntime distinction:\n- hermes_local: Paperclip starts Hermes on the Paperclip host through the built-in local adapter.\n- hermes_gateway: Paperclip calls an already-running Hermes API server using agentDefaultsPayload.apiBaseUrl.\n- Hermes-originated Paperclip API usage: Hermes calls Paperclip with PAPERCLIP_API_URL and the Paperclip API key claimed through the standard join approval flow. Do not use agentDefaultsPayload.apiBaseUrl for Paperclip API calls. For internet-facing Hermes chat/webhook task bridges, use a separate task_bridge key instead of exposing the normal claimed agent key.\n\nHermes gateway process setup:\n- Set API_SERVER_ENABLED=true.\n- Set API_SERVER_KEY to a generated secret value. Do not paste a real key into tickets, docs, screenshots, or tests.\n- Start Hermes with: hermes gateway run --replace --accept-hooks\n- Default Hermes API server port: 8642.\n- Default Hermes dashboard port: 9119. If Paperclip is configured with a default dashboard root or chat URL such as http://127.0.0.1:9119 or http://127.0.0.1:9119/chat, it maps the base URL to /api automatically.\n- Watch out: /chat and the dashboard root are browser UI routes. Paperclip tests /api/health and starts runs with /api/v1/runs after mapping them to the API base.\n\nJoin request minimum:\n{\n \"requestType\": \"agent\",\n \"agentName\": \"My Hermes Gateway Agent\",\n \"adapterType\": \"hermes_gateway\",\n \"capabilities\": \"Hermes gateway agent\",\n \"agentDefaultsPayload\": {\n \"apiBaseUrl\": \"http://127.0.0.1:8642\",\n \"apiKey\": \"<same-value-as-API_SERVER_KEY>\",\n \"paperclipApiUrl\": \"http://localhost:3100\"\n }\n}\n\nCore fields:\n- agentDefaultsPayload.apiBaseUrl (string, required): Base URL for the Hermes API server as reachable from the Paperclip server. A default dashboard root or chat URL such as http://127.0.0.1:9119 or http://127.0.0.1:9119/chat is accepted and maps to http://127.0.0.1:9119/api.\n- agentDefaultsPayload.apiKey (string, required unless the adapter package documents another auth field): Hermes API server key matching API_SERVER_KEY. This is the Hermes gateway key, not the claimed Paperclip API key.\n- agentDefaultsPayload.paperclipApiUrl (string, strongly recommended): Paperclip base URL as reachable from Hermes for invite, claim, skill bootstrap, and later Paperclip API calls.\n- agentDefaultsPayload.timeoutSec or timeoutMs (number, optional): Runtime request timeout when supported by the installed Hermes gateway adapter.\n\nNetwork examples:\n- Local loopback on one host: agentDefaultsPayload.apiBaseUrl = \"http://127.0.0.1:8642\"; agentDefaultsPayload.paperclipApiUrl = \"http://127.0.0.1:3100\".\n- Local dashboard root or chat URL on one host: agentDefaultsPayload.apiBaseUrl = \"http://127.0.0.1:9119\" or \"http://127.0.0.1:9119/chat\"; Paperclip maps it to \"http://127.0.0.1:9119/api\".\n- LAN/private network: agentDefaultsPayload.apiBaseUrl = \"http://192.168.1.25:8642\"; agentDefaultsPayload.paperclipApiUrl = \"http://192.168.1.10:3100\". Use private IPs or hostnames reachable from both machines.\n- Private overlay: agentDefaultsPayload.apiBaseUrl = \"http://hermes-host.tailnet-name.ts.net:8642\"; agentDefaultsPayload.paperclipApiUrl = \"http://paperclip-host.tailnet-name.ts.net:3100\". Add the Paperclip hostname with npx paperclipai allowed-hostname <host> when authenticated/private mode requires it.\n- Docker: if Hermes runs on the host and Paperclip runs in Docker, use agentDefaultsPayload.apiBaseUrl = \"http://host.docker.internal:8642\". If Hermes runs in another container, use the Compose service DNS name such as \"http://hermes:8642\".\n- Reverse proxy/TLS: publish Hermes behind HTTPS and set agentDefaultsPayload.apiBaseUrl = \"https://hermes-gateway.example\"; set agentDefaultsPayload.paperclipApiUrl = \"https://paperclip.example\". Keep API_SERVER_KEY required at the origin or proxy.\n\nSecurity notes:\n- Treat API_SERVER_KEY and PAPERCLIP_BRIDGE_API_KEY as secrets.\n- When claiming the normal Paperclip agent API key, store the parsed token field from the raw claim response before printing or summarizing it. Hermes/tool displays may redact secrets with literal ... or [redacted]; those previews are not valid keys.\n- Never use a normal claimed Paperclip agent API key for internet-facing Hermes-originated task bridge calls; task_bridge keys cannot use company-wide issue list/search/read surfaces and can only mutate bridge-created or assigned issues.\n- Prefer private network or TLS for non-loopback gateway access.\n- Use placeholders such as <same-value-as-API_SERVER_KEY> in docs and tests.\n";
1
+ export declare const hermesGatewayAgentConfigurationDoc = "# hermes_gateway agent configuration\n\nAdapter: hermes_gateway\n\nUse when:\n- Hermes is already running outside Paperclip and exposes its API server.\n- Paperclip should invoke Hermes through the gateway HTTP API instead of spawning Hermes locally.\n- The Hermes runtime may live on another host, a private overlay, in Docker, or behind a TLS reverse proxy.\n\nDon't use when:\n- Paperclip should start the Hermes CLI directly on the same host. Use the built-in hermes_local adapter for that flow.\n- Hermes is the process calling Paperclip APIs after claiming its key. That is Hermes-originated Paperclip API usage, not the gateway adapter transport.\n\nRuntime distinction:\n- hermes_local: Paperclip starts Hermes on the Paperclip host through the built-in local adapter.\n- hermes_gateway: Paperclip calls an already-running Hermes API server using agentDefaultsPayload.apiBaseUrl.\n- Hermes-originated Paperclip API usage: Hermes calls Paperclip with PAPERCLIP_API_URL and the Paperclip API key claimed through the standard join approval flow. Do not use agentDefaultsPayload.apiBaseUrl for Paperclip API calls. For internet-facing Hermes chat/webhook task bridges, use a separate task_bridge key instead of exposing the normal claimed agent key.\n\nHermes gateway process setup:\n- Set API_SERVER_ENABLED=true.\n- Set API_SERVER_KEY to a generated secret value. Do not paste a real key into tickets, docs, screenshots, or tests.\n- Start Hermes with: hermes gateway run --replace --accept-hooks\n- Default Hermes API server port: 8642.\n- Default Hermes dashboard port: 9119. If Paperclip is configured with a default dashboard root or chat URL such as http://127.0.0.1:9119 or http://127.0.0.1:9119/chat, it maps the base URL to /api automatically.\n- Watch out: /chat and the dashboard root are browser UI routes. Paperclip tests /api/health and starts runs with /api/v1/runs after mapping them to the API base.\n\nJoin request minimum:\n{\n \"requestType\": \"agent\",\n \"agentName\": \"My Hermes Gateway Agent\",\n \"adapterType\": \"hermes_gateway\",\n \"capabilities\": \"Hermes gateway agent\",\n \"agentDefaultsPayload\": {\n \"apiBaseUrl\": \"http://127.0.0.1:8642\",\n \"apiKey\": \"<same-value-as-API_SERVER_KEY>\",\n \"paperclipApiUrl\": \"http://localhost:3100\"\n }\n}\n\nCore fields:\n- agentDefaultsPayload.apiBaseUrl (string, required): Base URL for the Hermes API server as reachable from the Paperclip server. A default dashboard root or chat URL such as http://127.0.0.1:9119 or http://127.0.0.1:9119/chat is accepted and maps to http://127.0.0.1:9119/api.\n- agentDefaultsPayload.apiKey (string, required unless the adapter package documents another auth field): Hermes API server key matching API_SERVER_KEY. This is the Hermes gateway key, not the claimed Paperclip API key.\n- agentDefaultsPayload.paperclipApiUrl (string, strongly recommended): Paperclip base URL as reachable from Hermes for invite, claim, skill bootstrap, and later Paperclip API calls.\n- agentDefaultsPayload.timeoutSec or timeoutMs (number, optional): Runtime request timeout when supported by the installed Hermes gateway adapter.\n\nNetwork examples:\n- Local loopback on one host: agentDefaultsPayload.apiBaseUrl = \"http://127.0.0.1:8642\"; agentDefaultsPayload.paperclipApiUrl = \"http://127.0.0.1:3100\".\n- Local dashboard root or chat URL on one host: agentDefaultsPayload.apiBaseUrl = \"http://127.0.0.1:9119\" or \"http://127.0.0.1:9119/chat\"; Paperclip maps it to \"http://127.0.0.1:9119/api\".\n- LAN/private network: agentDefaultsPayload.apiBaseUrl = \"http://192.168.1.25:8642\"; agentDefaultsPayload.paperclipApiUrl = \"http://192.168.1.10:3100\". Use private IPs or hostnames reachable from both machines.\n- Private overlay: agentDefaultsPayload.apiBaseUrl = \"http://hermes-host.tailnet-name.ts.net:8642\"; agentDefaultsPayload.paperclipApiUrl = \"http://paperclip-host.tailnet-name.ts.net:3100\". Add the Paperclip hostname with pnpm paperclipai allowed-hostname <host> when authenticated/private mode requires it.\n- Docker: if Hermes runs on the host and Paperclip runs in Docker, use agentDefaultsPayload.apiBaseUrl = \"http://host.docker.internal:8642\". If Hermes runs in another container, use the Compose service DNS name such as \"http://hermes:8642\".\n- Reverse proxy/TLS: publish Hermes behind HTTPS and set agentDefaultsPayload.apiBaseUrl = \"https://hermes-gateway.example\"; set agentDefaultsPayload.paperclipApiUrl = \"https://paperclip.example\". Keep API_SERVER_KEY required at the origin or proxy.\n\nSecurity notes:\n- Treat API_SERVER_KEY and PAPERCLIP_BRIDGE_API_KEY as secrets.\n- When claiming the normal Paperclip agent API key, store the parsed token field from the raw claim response before printing or summarizing it. Hermes/tool displays may redact secrets with literal ... or [redacted]; those previews are not valid keys.\n- Never use a normal claimed Paperclip agent API key for internet-facing Hermes-originated task bridge calls; task_bridge keys cannot use company-wide issue list/search/read surfaces and can only mutate bridge-created or assigned issues.\n- Prefer private network or TLS for non-loopback gateway access.\n- Use placeholders such as <same-value-as-API_SERVER_KEY> in docs and tests.\n";
2
2
  //# sourceMappingURL=hermes-gateway-doc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hermes-gateway-doc.d.ts","sourceRoot":"","sources":["../../src/adapters/hermes-gateway-doc.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kCAAkC,iqKA2D9C,CAAC"}
1
+ {"version":3,"file":"hermes-gateway-doc.d.ts","sourceRoot":"","sources":["../../src/adapters/hermes-gateway-doc.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kCAAkC,kqKA2D9C,CAAC"}
@@ -47,7 +47,7 @@ Network examples:
47
47
  - Local loopback on one host: agentDefaultsPayload.apiBaseUrl = "http://127.0.0.1:8642"; agentDefaultsPayload.paperclipApiUrl = "http://127.0.0.1:3100".
48
48
  - Local dashboard root or chat URL on one host: agentDefaultsPayload.apiBaseUrl = "http://127.0.0.1:9119" or "http://127.0.0.1:9119/chat"; Paperclip maps it to "http://127.0.0.1:9119/api".
49
49
  - LAN/private network: agentDefaultsPayload.apiBaseUrl = "http://192.168.1.25:8642"; agentDefaultsPayload.paperclipApiUrl = "http://192.168.1.10:3100". Use private IPs or hostnames reachable from both machines.
50
- - Private overlay: agentDefaultsPayload.apiBaseUrl = "http://hermes-host.tailnet-name.ts.net:8642"; agentDefaultsPayload.paperclipApiUrl = "http://paperclip-host.tailnet-name.ts.net:3100". Add the Paperclip hostname with npx paperclipai allowed-hostname <host> when authenticated/private mode requires it.
50
+ - Private overlay: agentDefaultsPayload.apiBaseUrl = "http://hermes-host.tailnet-name.ts.net:8642"; agentDefaultsPayload.paperclipApiUrl = "http://paperclip-host.tailnet-name.ts.net:3100". Add the Paperclip hostname with pnpm paperclipai allowed-hostname <host> when authenticated/private mode requires it.
51
51
  - Docker: if Hermes runs on the host and Paperclip runs in Docker, use agentDefaultsPayload.apiBaseUrl = "http://host.docker.internal:8642". If Hermes runs in another container, use the Compose service DNS name such as "http://hermes:8642".
52
52
  - Reverse proxy/TLS: publish Hermes behind HTTPS and set agentDefaultsPayload.apiBaseUrl = "https://hermes-gateway.example"; set agentDefaultsPayload.paperclipApiUrl = "https://paperclip.example". Keep API_SERVER_KEY required at the origin or proxy.
53
53
 
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-loader.d.ts","sourceRoot":"","sources":["../../src/adapters/plugin-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAgBtD,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEzE;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAiBlF;AA+GD,wBAAsB,0BAA0B,CAC9C,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,mBAAmB,CAAC,CAmB9B;AAcD;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CA6CrC;AAED;;GAEG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAmB5E"}
1
+ {"version":3,"file":"plugin-loader.d.ts","sourceRoot":"","sources":["../../src/adapters/plugin-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAgBtD,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEzE;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAiBlF;AA+GD,wBAAsB,0BAA0B,CAC9C,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,mBAAmB,CAAC,CAmB9B;AAcD;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CA6CrC;AAED;;GAEG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAmB5E"}
@@ -10,7 +10,6 @@
10
10
  */
11
11
  import fs from "node:fs";
12
12
  import path from "node:path";
13
- import { pathToFileURL } from "node:url";
14
13
  import { logger } from "../middleware/logger.js";
15
14
  import { listAdapterPlugins, getAdapterPluginsDir, getAdapterPluginByType, } from "../services/adapter-plugin-store.js";
16
15
  // ---------------------------------------------------------------------------
@@ -123,7 +122,7 @@ export async function loadExternalAdapterPackage(packageName, localPath) {
123
122
  const modulePath = path.resolve(packageDir, entryPoint);
124
123
  const uiParserSource = extractUiParserSource(packageDir, packageName);
125
124
  logger.info({ packageName, packageDir, entryPoint, modulePath, hasUiParser: !!uiParserSource }, "Loading external adapter package");
126
- const mod = await import(pathToFileURL(modulePath).href);
125
+ const mod = await import(modulePath);
127
126
  const adapterModule = validateAdapterModule(mod, packageName);
128
127
  if (uiParserSource) {
129
128
  uiParserCache.set(adapterModule.type, uiParserSource);
@@ -150,7 +149,7 @@ export async function reloadExternalAdapter(type) {
150
149
  const packageDir = resolvePackageDir(record);
151
150
  const entryPoint = resolvePackageEntryPoint(packageDir);
152
151
  const modulePath = path.resolve(packageDir, entryPoint);
153
- const fileUrl = pathToFileURL(modulePath).href;
152
+ const fileUrl = `file://${modulePath}`;
154
153
  // Bust ESM module cache so re-import loads fresh code from disk.
155
154
  // Query-string trick (?t=...) works in Node; Bun may need the file:// URL
156
155
  // to be evicted from its internal registry first.
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-loader.js","sourceRoot":"","sources":["../../src/adapters/plugin-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-loader.js","sourceRoot":"","sources":["../../src/adapters/plugin-loader.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"agent-auth-jwt.d.ts","sourceRoot":"","sources":["../src/agent-auth-jwt.ts"],"names":[],"mappings":"AACA,OAAO,EAA6B,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAQvF,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,SAAS,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAmGD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,EACjC,QAAQ,GAAE,gBAAuC,iBAiClD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CA4F7E"}
1
+ {"version":3,"file":"agent-auth-jwt.d.ts","sourceRoot":"","sources":["../src/agent-auth-jwt.ts"],"names":[],"mappings":"AACA,OAAO,EAA6B,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAQvF,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,SAAS,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AA6FD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,EACjC,QAAQ,GAAE,gBAAuC,iBAiClD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CA4F7E"}
@@ -20,13 +20,7 @@ function jwtConfig() {
20
20
  return null;
21
21
  return {
22
22
  secret,
23
- // 48h default, matching DEFAULT_AGENT_JWT_TTL_SECONDS in cli/src/commands/env.ts
24
- // and the agent-authentication design doc. Run tokens are minted once at
25
- // adapter spawn and injected as env, so the TTL must cover the entire run —
26
- // including host-suspension gaps: heartbeats scheduled while a laptop lid is
27
- // closed fire during ~2s dark wakes, and the spawned session can then sit
28
- // frozen for over an hour before it first executes.
29
- ttlSeconds: parseNumber(process.env.PAPERCLIP_AGENT_JWT_TTL_SECONDS, 60 * 60 * 48),
23
+ ttlSeconds: parseNumber(process.env.PAPERCLIP_AGENT_JWT_TTL_SECONDS, 60 * 60),
30
24
  issuer: process.env.PAPERCLIP_AGENT_JWT_ISSUER ?? "paperclip",
31
25
  audience: process.env.PAPERCLIP_AGENT_JWT_AUDIENCE ?? "paperclip-api",
32
26
  // The control-plane instance this process belongs to. The live plane runs as
@@ -152,7 +146,7 @@ export function verifyLocalAgentJwt(token) {
152
146
  // bounds the legacy window naturally).
153
147
  //
154
148
  // Operators should set `PAPERCLIP_AGENT_JWT_DISABLE_LEGACY_FALLBACK=true`
155
- // approximately one JWT TTL (~48h by default, see PAPERCLIP_AGENT_JWT_TTL_SECONDS)
149
+ // approximately one JWT TTL (~1h by default, see PAPERCLIP_AGENT_JWT_TTL_SECONDS)
156
150
  // after deploying per-company signing. Once set, the master-secret fallback
157
151
  // is disabled and only tokens validating under the per-instance/per-company
158
152
  // derived key are accepted — closing the window in which a leaked master
@@ -1 +1 @@
1
- {"version":3,"file":"agent-auth-jwt.js","sourceRoot":"","sources":["../src/agent-auth-jwt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-auth-jwt.js","sourceRoot":"","sources":["../src/agent-auth-jwt.ts"],"names":[],"mappings":"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"}
package/dist/app.d.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  import express, { type Request as ExpressRequest } from "express";
2
- import { type Server as HttpServer } from "node:http";
3
2
  import type { Db } from "@paperclipai/db";
4
- import { type DeploymentExposure, type DeploymentMode } from "@paperclipai/shared";
3
+ import type { DeploymentExposure, DeploymentMode } from "@paperclipai/shared";
5
4
  import type { InspectDatabaseBackupHealthOptions } from "./services/database-backup-health.js";
6
5
  import type { StorageService } from "./storage/types.js";
7
6
  import type { DecisionServiceOptions } from "./services/decisions.js";
@@ -13,8 +12,6 @@ type UiMode = "none" | "static" | "vite-dev";
13
12
  export declare function isDatabaseConnectionUnavailableError(err: unknown): boolean;
14
13
  export declare function resolveViteHmrPort(serverPort: number): number;
15
14
  export declare function resolveViteHmrHost(bindHost: string): string | undefined;
16
- export declare function resolveViteHmrProtocol(value: string | undefined): "ws" | "wss" | undefined;
17
- export declare function listenViteHmrServer(server: HttpServer, port: number, bindHost: string): Promise<void>;
18
15
  export declare function shouldServeViteDevHtml(req: ExpressRequest): boolean;
19
16
  export declare function shouldEnablePrivateHostnameGuard(opts: {
20
17
  deploymentMode: DeploymentMode;
@@ -46,7 +43,6 @@ export declare function createApp(db: Db, opts: {
46
43
  deploymentExposure: DeploymentExposure;
47
44
  allowedHostnames: string[];
48
45
  bindHost: string;
49
- authPublicBaseUrl?: string;
50
46
  authReady: boolean;
51
47
  companyDeletionEnabled: boolean;
52
48
  instanceId?: string;
package/dist/app.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAU,KAAK,OAAO,IAAI,cAAc,EAAE,MAAM,SAAS,CAAC;AAI1E,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAC/F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAwCzD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAQtE,OAAO,EAEL,KAAK,6BAA6B,EACnC,MAAM,uCAAuC,CAAC;AAY/C,OAAO,EAA0C,KAAK,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAOxG,OAAO,EAA6B,KAAK,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAc1G,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAMrE,KAAK,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;AAqB7C,wBAAgB,oCAAoC,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAI1E;AAED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAK7D;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAIvE;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAKnE;AAED,wBAAgB,gCAAgC,CAAC,IAAI,EAAE;IACrD,cAAc,EAAE,cAAc,CAAC;IAC/B,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,GAAG,OAAO,CAKV;AAED,wBAAgB,wCAAwC,CAAC,KAAK,EAAE;IAC9D,wBAAwB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,aAAa,EAAE,IAAI,CAAC,mBAAmB,EAAE,WAAW,GAAG,WAAW,GAAG,YAAY,CAAC,CAAC;IACnF,SAAS,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,GAAG,IAAI,CAAC;CAC1D,GAAG,CAAC,MAAM,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CA2ElE;AAED,wBAAsB,SAAS,CAC7B,EAAE,EAAE,EAAE,EACN,IAAI,EAAE;IACJ,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,cAAc,CAAC;IAC/B,qBAAqB,CAAC,EAAE;QACtB,0BAA0B,CAAC,KAAK,CAAC,EAAE;YACjC,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,GAAG,CAAC,EAAE,IAAI,CAAC;SACZ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KACtB,CAAC;IACF,qBAAqB,CAAC,EAAE,6BAA6B,CAAC;IACtD,oBAAoB,CAAC,EAAE,kCAAkC,CAAC;IAC1D,cAAc,EAAE,cAAc,CAAC;IAC/B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,sBAAsB,EAAE,OAAO,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,EAAE,CAAC;IACvB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,iBAAiB,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IAC3C,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAC;IAClF;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;IACpD,yDAAyD;IACzD,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC,wDA6dF"}
package/dist/app.js CHANGED
@@ -1,16 +1,12 @@
1
1
  import express, { Router } from "express";
2
- import { createServer as createHttpServer } from "node:http";
3
2
  import path from "node:path";
4
3
  import fs from "node:fs";
5
4
  import { fileURLToPath } from "node:url";
6
- import { derivePaperclipViteHmrPort } from "@paperclipai/shared";
7
5
  import { httpLogger, errorHandler } from "./middleware/index.js";
8
6
  import { actorMiddleware } from "./middleware/auth.js";
9
7
  import { boardMutationGuard } from "./middleware/board-mutation-guard.js";
10
8
  import { privateHostnameGuard, resolvePrivateHostnameAllowSet } from "./middleware/private-hostname-guard.js";
11
9
  import { applyTrustProxy, parseTrustProxyEnv } from "./middleware/trust-proxy.js";
12
- import { IMPORT_TRANSFER_SPOOL_SWEEP_INTERVAL_MS, resolveDefaultImportTransferSpoolRoot, sweepAbandonedImportTransferSpools, } from "./services/company-import-transfers.js";
13
- import { companyTransferRunService } from "./services/company-transfer-runs.js";
14
10
  import { healthRoutes } from "./routes/health.js";
15
11
  import { cloudRoutes } from "./routes/cloud.js";
16
12
  import { companyRoutes } from "./routes/companies.js";
@@ -23,9 +19,6 @@ import { summarySlotRoutes } from "./routes/summary-slots.js";
23
19
  import { statusCardRoutes } from "./routes/status-cards.js";
24
20
  import { teamsCatalogRoutes } from "./routes/teams-catalog.js";
25
21
  import { agentRoutes } from "./routes/agents.js";
26
- import { buildSetupTokenLoginTransport, createProductionSetupTokenSandboxProvider, createProductionSetupTokenCleanupStore, createSetupTokenSecretWriter, createWorkerBoundSetupTokenPtyOpener, } from "./services/setup-token-transport-binding.js";
27
- import { environmentService } from "./services/environments.js";
28
- import { environmentRuntimeService } from "./services/environment-runtime.js";
29
22
  import { projectRoutes } from "./routes/projects.js";
30
23
  import { issueRoutes } from "./routes/issues.js";
31
24
  import { issueTreeControlRoutes } from "./routes/issue-tree-control.js";
@@ -36,7 +29,6 @@ import { pipelineRoutes } from "./routes/pipelines.js";
36
29
  import { environmentRoutes } from "./routes/environments.js";
37
30
  import { executionWorkspaceRoutes } from "./routes/execution-workspaces.js";
38
31
  import { goalRoutes } from "./routes/goals.js";
39
- import { onboardingSeedRoutes } from "./routes/onboarding-seed.js";
40
32
  import { boardChatRoutes } from "./routes/board-chat.js";
41
33
  import { approvalRoutes } from "./routes/approvals.js";
42
34
  import { secretRoutes } from "./routes/secrets.js";
@@ -114,40 +106,17 @@ export function isDatabaseConnectionUnavailableError(err) {
114
106
  return Boolean(error?.cause && isDatabaseConnectionUnavailableError(error.cause));
115
107
  }
116
108
  export function resolveViteHmrPort(serverPort) {
117
- return derivePaperclipViteHmrPort(serverPort);
109
+ if (serverPort <= 55_535) {
110
+ return serverPort + 10_000;
111
+ }
112
+ return Math.max(1_024, serverPort - 10_000);
118
113
  }
119
114
  export function resolveViteHmrHost(bindHost) {
120
115
  const normalized = bindHost.trim().toLowerCase();
121
- if (normalized === "0.0.0.0"
122
- || normalized === "::"
123
- || normalized === "127.0.0.1"
124
- || normalized === "::1"
125
- || normalized === "localhost")
116
+ if (normalized === "0.0.0.0" || normalized === "::")
126
117
  return undefined;
127
118
  return bindHost;
128
119
  }
129
- export function resolveViteHmrProtocol(value) {
130
- if (!value)
131
- return undefined;
132
- if (value === "ws" || value === "wss")
133
- return value;
134
- throw new Error("PAPERCLIP_VITE_HMR_PROTOCOL must be ws or wss");
135
- }
136
- export function listenViteHmrServer(server, port, bindHost) {
137
- return new Promise((resolve, reject) => {
138
- const onError = (error) => {
139
- server.off("listening", onListening);
140
- reject(error);
141
- };
142
- const onListening = () => {
143
- server.off("error", onError);
144
- resolve();
145
- };
146
- server.once("error", onError);
147
- server.once("listening", onListening);
148
- server.listen(port, bindHost);
149
- });
150
- }
151
120
  export function shouldServeViteDevHtml(req) {
152
121
  const pathname = req.path;
153
122
  if (VITE_DEV_STATIC_PATHS.has(pathname))
@@ -318,73 +287,7 @@ export async function createApp(db, opts) {
318
287
  api.use(summarySlotRoutes(db));
319
288
  api.use(statusCardRoutes(db));
320
289
  api.use(teamsCatalogRoutes(db));
321
- // The setup-token login session service. The router builds it and hands it
322
- // back through the callback below, so the shutdown hook can cancel every live
323
- // session (SR-4).
324
- let setupTokenLoginService = null;
325
- // The dedicated proxy IP or CIDR allowlist for the confidential setup-token
326
- // login responses (SR-7). The global `TRUST_PROXY` setting does not satisfy
327
- // the guard; an operator sets this allowlist to the real TLS-terminating
328
- // proxy addresses. An empty value keeps the confidential responses on direct
329
- // TLS (or a `local_trusted` loopback peer) only.
330
- const setupTokenLoginProxyAllowlist = (process.env.CLAUDE_LOGIN_TRUSTED_PROXIES ?? "")
331
- .split(",")
332
- .map((entry) => entry.trim())
333
- .filter((entry) => entry.length > 0);
334
- // Bind the production setup-token login transport. It carries the live lease
335
- // manager, the login-process factory over the sandbox pseudo-terminal, and the
336
- // durable cleanup store. The factory passes only the fixed command
337
- // `CLAUDE_SETUP_TOKEN_COMMAND`; it never reads a command from a
338
- // route, a request body, or an adapter configuration. The durable store and the
339
- // startup reaper are live now, so a restart reaps a leftover lease.
340
- //
341
- // The live sandbox pseudo-terminal opener binds inside the sandbox provider
342
- // worker, so the server process does not hold the raw sandbox process. The
343
- // opener drives the worker through the plugin worker manager route gate.
344
- // The manager mints a host-owned route identifier, permits one
345
- // active credential pseudo-terminal per worker, binds the worker session
346
- // identifier one time for output only, and terminalizes the route on every open
347
- // failure path. With the opener supplied, the provider acquires a lease and the
348
- // start route drives a live login instead of the fixed 503.
349
- const setupTokenLoginTransport = buildSetupTokenLoginTransport({
350
- sandbox: createProductionSetupTokenSandboxProvider({
351
- environments: environmentService(db),
352
- environmentRuntime: environmentRuntimeService(db, { pluginWorkerManager: workerManager }),
353
- openLivePtySession: createWorkerBoundSetupTokenPtyOpener({
354
- workerManager,
355
- environments: environmentService(db),
356
- log: (line) => logger.info(line),
357
- }),
358
- log: (line) => logger.info(line),
359
- }),
360
- store: createProductionSetupTokenCleanupStore(db),
361
- // Bind the atomic credential-claim writer, so a completed login transitions
362
- // the durable row to `stored` and stores the minted token in one control-plane
363
- // transaction. The writer reads the company and the owner only from the
364
- // immutable session scope. The confirm-replacement flow owns rotation. Without
365
- // this writer the router falls back to the deferred, fail-closed 503 and never
366
- // stores the token.
367
- completeCredential: createSetupTokenSecretWriter({ db }),
368
- // Forward the login runner diagnostic lines to the server logger. The
369
- // runner is the sole producer, and every line is a fixed, non-secret
370
- // literal. Without this sink the diagnostics fall back to a no-op in
371
- // production, so a failed login leaves no log trail.
372
- log: (line) => logger.info(line),
373
- });
374
- api.use(agentRoutes(db, {
375
- pluginWorkerManager: workerManager,
376
- deploymentMode: opts.deploymentMode,
377
- confidentialProxyAllowlist: setupTokenLoginProxyAllowlist,
378
- setupTokenLogin: setupTokenLoginTransport,
379
- onSetupTokenLoginService: (service) => {
380
- setupTokenLoginService = service;
381
- // Startup reaper (SR-4): release any lease whose login session is
382
- // terminal or past its deadline after a restart. The DB is ready here.
383
- void service.reap().catch((err) => {
384
- logger.error({ err }, "Setup-token login startup reaper failed");
385
- });
386
- },
387
- }));
290
+ api.use(agentRoutes(db, { pluginWorkerManager: workerManager }));
388
291
  api.use(assetRoutes(db, opts.storageService));
389
292
  api.use(projectRoutes(db));
390
293
  api.use(caseRoutes(db, opts.storageService));
@@ -403,7 +306,6 @@ export async function createApp(db, opts) {
403
306
  }));
404
307
  api.use(executionWorkspaceRoutes(db, { pluginWorkerManager: workerManager }));
405
308
  api.use(goalRoutes(db));
406
- api.use(onboardingSeedRoutes(db));
407
309
  api.use(boardChatRoutes(db, { deploymentMode: opts.deploymentMode }));
408
310
  api.use(approvalRoutes(db, { pluginWorkerManager: workerManager }));
409
311
  api.use(secretRoutes(db));
@@ -474,8 +376,6 @@ export async function createApp(db, opts) {
474
376
  });
475
377
  const hostServiceCleanup = createPluginHostServiceCleanup(lifecycle, hostServicesDisposers);
476
378
  let viteHtmlRenderer = null;
477
- let viteDevServer = null;
478
- let viteHmrServer = null;
479
379
  const loader = pluginLoader(db, {
480
380
  localPluginDir: opts.localPluginDir ?? DEFAULT_LOCAL_PLUGIN_DIR,
481
381
  migrationDb: opts.pluginMigrationDb,
@@ -519,7 +419,6 @@ export async function createApp(db, opts) {
519
419
  deploymentExposure: opts.deploymentExposure,
520
420
  bindHost: opts.bindHost,
521
421
  allowedHostnames: opts.allowedHostnames,
522
- authPublicBaseUrl: opts.authPublicBaseUrl,
523
422
  }));
524
423
  app.use("/api", api);
525
424
  app.use("/api", (_req, res) => {
@@ -583,40 +482,20 @@ export async function createApp(db, opts) {
583
482
  const publicUiRoot = path.resolve(uiRoot, "public");
584
483
  const hmrPort = resolveViteHmrPort(opts.serverPort);
585
484
  const hmrHost = resolveViteHmrHost(opts.bindHost);
586
- const hmrProtocol = resolveViteHmrProtocol(process.env.PAPERCLIP_VITE_HMR_PROTOCOL);
587
- const hmrServer = createHttpServer((_req, res) => {
588
- res.writeHead(426, { "Content-Type": "text/plain" });
589
- res.end("Upgrade Required");
590
- });
591
485
  const { createServer: createViteServer } = await import("vite");
592
486
  const vite = await createViteServer({
593
487
  root: uiRoot,
594
488
  appType: "custom",
595
489
  server: {
596
- // Listener binding and browser HMR hostname are deliberately separate:
597
- // exposed branch runtimes stay loopback-only while the browser uses the
598
- // current MagicDNS hostname through the broker's HTTPS listener.
599
- host: opts.bindHost,
600
490
  middlewareMode: true,
601
491
  hmr: {
602
- server: hmrServer,
603
492
  ...(hmrHost ? { host: hmrHost } : {}),
604
- ...(hmrProtocol ? { protocol: hmrProtocol } : {}),
605
493
  port: hmrPort,
606
494
  clientPort: hmrPort,
607
495
  },
608
496
  allowedHosts: privateHostnameGateEnabled ? Array.from(privateHostnameAllowSet) : undefined,
609
497
  },
610
498
  });
611
- try {
612
- await listenViteHmrServer(hmrServer, hmrPort, opts.bindHost);
613
- }
614
- catch (error) {
615
- await vite.close();
616
- throw error;
617
- }
618
- viteDevServer = vite;
619
- viteHmrServer = hmrServer;
620
499
  viteHtmlRenderer = createCachedViteHtmlRenderer({
621
500
  vite,
622
501
  uiRoot,
@@ -677,42 +556,6 @@ export async function createApp(db, opts) {
677
556
  if (opts.feedbackExportService) {
678
557
  void flushPendingFeedbackExports();
679
558
  }
680
- // Abandoned chunked-import spool sweep: hourly (plus once at startup),
681
- // deleting spool dirs whose transfer saw no activity for 24h and cancelling
682
- // their still-open ledger runs. Same setInterval + unref + shutdown-clear
683
- // shape as the feedback export flush above.
684
- const importTransferSpoolRoot = resolveDefaultImportTransferSpoolRoot();
685
- const sweepImportTransferSpools = () => {
686
- sweepAbandonedImportTransferSpools(db, importTransferSpoolRoot)
687
- .then((result) => {
688
- if (result.swept > 0) {
689
- logger.info(result, "swept abandoned company import transfer spools");
690
- }
691
- })
692
- .catch((err) => {
693
- logger.error({ err }, "abandoned company import transfer spool sweep failed");
694
- });
695
- };
696
- let importTransferSweepTimer = setInterval(sweepImportTransferSpools, IMPORT_TRANSFER_SPOOL_SWEEP_INTERVAL_MS);
697
- importTransferSweepTimer.unref?.();
698
- // Startup only (never on the hourly interval — that would kill live
699
- // applies): apply jobs are in-memory in this single process, so any run
700
- // still "applying" now was interrupted by the previous shutdown and would
701
- // otherwise 409 every retry forever. Fail those stranded runs — their
702
- // spooled parts stay reusable — then run the normal sweep once.
703
- void companyTransferRunService
704
- .recoverStrandedApplyingRuns(db)
705
- .then((recovered) => {
706
- if (recovered.length > 0) {
707
- logger.warn({ count: recovered.length, runIds: recovered }, "failed company transfer runs stranded in applying by a restart");
708
- }
709
- })
710
- .catch((err) => {
711
- logger.error({ err }, "stranded company transfer apply recovery failed");
712
- })
713
- .finally(() => {
714
- sweepImportTransferSpools();
715
- });
716
559
  void toolDispatcher.initialize().catch((err) => {
717
560
  logger.error({ err }, "Failed to initialize plugin tool dispatcher");
718
561
  });
@@ -767,40 +610,19 @@ export async function createApp(db, opts) {
767
610
  logger.error({ err }, "Failed to load ready plugins on startup");
768
611
  });
769
612
  app.locals.bundledPluginsStartup = bundledPluginsStartup;
770
- // The shutdown hook runs at most once. It caches the in-flight promise, so a
771
- // second caller (for example the `exit` handler) awaits the same completion
772
- // instead of starting a second teardown.
773
- let appServicesShutdown = null;
613
+ let appServicesShutdown = false;
774
614
  const shutdownAppServices = () => {
775
615
  if (appServicesShutdown)
776
- return appServicesShutdown;
777
- appServicesShutdown = (async () => {
778
- disableFeedbackExportFlushes();
779
- if (importTransferSweepTimer) {
780
- clearInterval(importTransferSweepTimer);
781
- importTransferSweepTimer = null;
782
- }
783
- devWatcher?.close();
784
- viteHtmlRenderer?.dispose();
785
- void viteDevServer?.close().catch(() => undefined);
786
- viteHmrServer?.close();
787
- hostServiceCleanup.disposeAll();
788
- hostServiceCleanup.teardown();
789
- // Cancel every live setup-token login session and AWAIT the cancellation,
790
- // so each direct child stops and the server releases each lease before the
791
- // caller stops the database and the provider. A lease release that
792
- // fails stays a durable record for the startup reaper.
793
- await setupTokenLoginService?.shutdown();
794
- })();
795
- return appServicesShutdown;
616
+ return;
617
+ appServicesShutdown = true;
618
+ disableFeedbackExportFlushes();
619
+ devWatcher?.close();
620
+ viteHtmlRenderer?.dispose();
621
+ hostServiceCleanup.disposeAll();
622
+ hostServiceCleanup.teardown();
796
623
  };
797
624
  app.locals.paperclipShutdown = shutdownAppServices;
798
- // The `exit` event is synchronous. It cannot await the teardown, so it runs
799
- // the best-effort cleanup and drops the returned promise. The orderly signal
800
- // path awaits `shutdownAppServices` in full before the process exits.
801
- process.once("exit", () => {
802
- void shutdownAppServices();
803
- });
625
+ process.once("exit", shutdownAppServices);
804
626
  process.once("beforeExit", () => {
805
627
  void flushPluginLogBuffer();
806
628
  });