aicodeman 1.41.0 → 1.42.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 (339) hide show
  1. package/README.md +101 -21
  2. package/dist/attachment-registry.d.ts +2 -0
  3. package/dist/attachment-registry.d.ts.map +1 -1
  4. package/dist/attachment-registry.js +14 -3
  5. package/dist/attachment-registry.js.map +1 -1
  6. package/dist/cli-agent.d.ts +2 -0
  7. package/dist/cli-agent.d.ts.map +1 -1
  8. package/dist/cli-agent.js +13 -9
  9. package/dist/cli-agent.js.map +1 -1
  10. package/dist/cli.d.ts +25 -1
  11. package/dist/cli.d.ts.map +1 -1
  12. package/dist/cli.js +97 -11
  13. package/dist/cli.js.map +1 -1
  14. package/dist/config/buffer-limits.d.ts +9 -0
  15. package/dist/config/buffer-limits.d.ts.map +1 -1
  16. package/dist/config/buffer-limits.js +9 -0
  17. package/dist/config/buffer-limits.js.map +1 -1
  18. package/dist/config/cli-registry/schema.d.ts +10 -0
  19. package/dist/config/cli-registry/schema.d.ts.map +1 -1
  20. package/dist/config/cli-registry/schema.js +26 -0
  21. package/dist/config/cli-registry/schema.js.map +1 -1
  22. package/dist/config/cli-registry/stock.d.ts.map +1 -1
  23. package/dist/config/cli-registry/stock.js +89 -6
  24. package/dist/config/cli-registry/stock.js.map +1 -1
  25. package/dist/config/cli-registry/types.d.ts +61 -0
  26. package/dist/config/cli-registry/types.d.ts.map +1 -1
  27. package/dist/folder-listing.d.ts +94 -0
  28. package/dist/folder-listing.d.ts.map +1 -0
  29. package/dist/folder-listing.js +241 -0
  30. package/dist/folder-listing.js.map +1 -0
  31. package/dist/git-worktrees.d.ts +292 -0
  32. package/dist/git-worktrees.d.ts.map +1 -0
  33. package/dist/git-worktrees.js +791 -0
  34. package/dist/git-worktrees.js.map +1 -0
  35. package/dist/hooks-config.d.ts +36 -16
  36. package/dist/hooks-config.d.ts.map +1 -1
  37. package/dist/hooks-config.js +45 -20
  38. package/dist/hooks-config.js.map +1 -1
  39. package/dist/html-view-capabilities.d.ts +54 -0
  40. package/dist/html-view-capabilities.d.ts.map +1 -0
  41. package/dist/html-view-capabilities.js +103 -0
  42. package/dist/html-view-capabilities.js.map +1 -0
  43. package/dist/mcp-server.d.ts +114 -0
  44. package/dist/mcp-server.d.ts.map +1 -0
  45. package/dist/mcp-server.js +918 -0
  46. package/dist/mcp-server.js.map +1 -0
  47. package/dist/mcp-sync.d.ts +5 -0
  48. package/dist/mcp-sync.d.ts.map +1 -1
  49. package/dist/mcp-sync.js +51 -5
  50. package/dist/mcp-sync.js.map +1 -1
  51. package/dist/mux-interface.d.ts +36 -1
  52. package/dist/mux-interface.d.ts.map +1 -1
  53. package/dist/remote-files.d.ts +37 -0
  54. package/dist/remote-files.d.ts.map +1 -1
  55. package/dist/remote-files.js +103 -0
  56. package/dist/remote-files.js.map +1 -1
  57. package/dist/remote-pane-history.d.ts +103 -0
  58. package/dist/remote-pane-history.d.ts.map +1 -0
  59. package/dist/remote-pane-history.js +258 -0
  60. package/dist/remote-pane-history.js.map +1 -0
  61. package/dist/remote-ssh-limiter.d.ts +16 -3
  62. package/dist/remote-ssh-limiter.d.ts.map +1 -1
  63. package/dist/remote-ssh-limiter.js +37 -6
  64. package/dist/remote-ssh-limiter.js.map +1 -1
  65. package/dist/services/unified-session-service.d.ts +8 -0
  66. package/dist/services/unified-session-service.d.ts.map +1 -1
  67. package/dist/services/unified-session-service.js +21 -0
  68. package/dist/services/unified-session-service.js.map +1 -1
  69. package/dist/session-activity.d.ts +51 -0
  70. package/dist/session-activity.d.ts.map +1 -1
  71. package/dist/session-activity.js +62 -0
  72. package/dist/session-activity.js.map +1 -1
  73. package/dist/session-submit-verifier.js +1 -1
  74. package/dist/session.d.ts +90 -2
  75. package/dist/session.d.ts.map +1 -1
  76. package/dist/session.js +247 -9
  77. package/dist/session.js.map +1 -1
  78. package/dist/tab-layout-legacy-order.d.ts.map +1 -1
  79. package/dist/tab-layout-legacy-order.js +72 -13
  80. package/dist/tab-layout-legacy-order.js.map +1 -1
  81. package/dist/tab-layout-service.d.ts +33 -2
  82. package/dist/tab-layout-service.d.ts.map +1 -1
  83. package/dist/tab-layout-service.js +102 -7
  84. package/dist/tab-layout-service.js.map +1 -1
  85. package/dist/tab-layout.d.ts +9 -0
  86. package/dist/tab-layout.d.ts.map +1 -1
  87. package/dist/tab-layout.js +15 -2
  88. package/dist/tab-layout.js.map +1 -1
  89. package/dist/tmux-manager.d.ts +130 -7
  90. package/dist/tmux-manager.d.ts.map +1 -1
  91. package/dist/tmux-manager.js +263 -36
  92. package/dist/tmux-manager.js.map +1 -1
  93. package/dist/types/session.d.ts +53 -0
  94. package/dist/types/session.d.ts.map +1 -1
  95. package/dist/types/session.js.map +1 -1
  96. package/dist/usage-telemetry.d.ts +44 -7
  97. package/dist/usage-telemetry.d.ts.map +1 -1
  98. package/dist/usage-telemetry.js +72 -7
  99. package/dist/usage-telemetry.js.map +1 -1
  100. package/dist/utils/deepseek-cli-resolver.d.ts.map +1 -1
  101. package/dist/utils/deepseek-cli-resolver.js +1 -1
  102. package/dist/utils/deepseek-cli-resolver.js.map +1 -1
  103. package/dist/web/approval-inbox.d.ts +24 -2
  104. package/dist/web/approval-inbox.d.ts.map +1 -1
  105. package/dist/web/approval-inbox.js +8 -2
  106. package/dist/web/approval-inbox.js.map +1 -1
  107. package/dist/web/middleware/auth.d.ts.map +1 -1
  108. package/dist/web/middleware/auth.js +33 -0
  109. package/dist/web/middleware/auth.js.map +1 -1
  110. package/dist/web/ports/session-port.d.ts +8 -1
  111. package/dist/web/ports/session-port.d.ts.map +1 -1
  112. package/dist/web/public/admin-ui.js.gz +0 -0
  113. package/dist/web/public/api-client.c9b1cddc.js.gz +0 -0
  114. package/dist/web/public/app.f04bb2a5.js +43 -0
  115. package/dist/web/public/app.f04bb2a5.js.br +0 -0
  116. package/dist/web/public/app.f04bb2a5.js.gz +0 -0
  117. package/dist/web/public/approvals-ui.js +4 -0
  118. package/dist/web/public/approvals-ui.js.br +0 -0
  119. package/dist/web/public/approvals-ui.js.gz +0 -0
  120. package/dist/web/public/{constants.bc9c1f63.js → constants.12b0c247.js} +395 -7
  121. package/dist/web/public/constants.12b0c247.js.br +0 -0
  122. package/dist/web/public/constants.12b0c247.js.gz +0 -0
  123. package/dist/web/public/cron-ui.js.gz +0 -0
  124. package/dist/web/public/entrance-animations.js.gz +0 -0
  125. package/dist/web/public/gesture/gesture-codeman.js +112 -6
  126. package/dist/web/public/git-status-ui.js.gz +0 -0
  127. package/dist/web/public/home-sessions.js.gz +0 -0
  128. package/dist/web/public/host-wake-ui.js.gz +0 -0
  129. package/dist/web/public/i18n.06659676.js +2 -0
  130. package/dist/web/public/i18n.06659676.js.br +0 -0
  131. package/dist/web/public/i18n.06659676.js.gz +0 -0
  132. package/dist/web/public/image-input.fcdcb46c.js +462 -0
  133. package/dist/web/public/image-input.fcdcb46c.js.br +0 -0
  134. package/dist/web/public/image-input.fcdcb46c.js.gz +0 -0
  135. package/dist/web/public/index.html +169 -24
  136. package/dist/web/public/index.html.br +0 -0
  137. package/dist/web/public/index.html.gz +0 -0
  138. package/dist/web/public/input-cjk.8bc46081.js.gz +0 -0
  139. package/dist/web/public/{keyboard-accessory.c1e7c7b7.js → keyboard-accessory.b42f539b.js} +124 -44
  140. package/dist/web/public/keyboard-accessory.b42f539b.js.br +0 -0
  141. package/dist/web/public/keyboard-accessory.b42f539b.js.gz +0 -0
  142. package/dist/web/public/mobile-handlers.0ef9c311.js.gz +0 -0
  143. package/dist/web/public/mobile-ime-preview.2dbaf262.js.gz +0 -0
  144. package/dist/web/public/mobile-overview.js +11 -2
  145. package/dist/web/public/mobile-overview.js.br +0 -0
  146. package/dist/web/public/mobile-overview.js.gz +0 -0
  147. package/dist/web/public/mobile.2dff1580.css +1 -0
  148. package/dist/web/public/mobile.2dff1580.css.br +0 -0
  149. package/dist/web/public/mobile.2dff1580.css.gz +0 -0
  150. package/dist/web/public/notification-manager.feb82c04.js.gz +0 -0
  151. package/dist/web/public/orchestrator-panel.js.gz +0 -0
  152. package/dist/web/public/{panels-ui.71846fcb.js → panels-ui.73ec0137.js} +87 -87
  153. package/dist/web/public/panels-ui.73ec0137.js.br +0 -0
  154. package/dist/web/public/panels-ui.73ec0137.js.gz +0 -0
  155. package/dist/web/public/ralph-panel.b350e2ef.js.gz +0 -0
  156. package/dist/web/public/ralph-wizard.b6c0dd19.js.gz +0 -0
  157. package/dist/web/public/readmymind-ui.js.gz +0 -0
  158. package/dist/web/public/reboot-restore-ui.js.gz +0 -0
  159. package/dist/web/public/{respawn-ui.ff0dae4c.js → respawn-ui.d7adcf6a.js} +1 -1
  160. package/dist/web/public/respawn-ui.d7adcf6a.js.br +0 -0
  161. package/dist/web/public/respawn-ui.d7adcf6a.js.gz +0 -0
  162. package/dist/web/public/sanitize-html.e7147e76.js.gz +0 -0
  163. package/dist/web/public/session-lineage.js.gz +0 -0
  164. package/dist/web/public/session-ui.d52ff6aa.js +100 -0
  165. package/dist/web/public/session-ui.d52ff6aa.js.br +0 -0
  166. package/dist/web/public/session-ui.d52ff6aa.js.gz +0 -0
  167. package/dist/web/public/settings-ui.3a22bd2a.js +97 -0
  168. package/dist/web/public/settings-ui.3a22bd2a.js.br +0 -0
  169. package/dist/web/public/settings-ui.3a22bd2a.js.gz +0 -0
  170. package/dist/web/public/spreadsheet-preview-worker.js +11 -0
  171. package/dist/web/public/spreadsheet-preview-worker.js.br +0 -0
  172. package/dist/web/public/spreadsheet-preview-worker.js.gz +0 -0
  173. package/dist/web/public/{spreadsheet-preview.af82fa2f.js → spreadsheet-preview.75c751de.js} +1 -1
  174. package/dist/web/public/spreadsheet-preview.75c751de.js.br +0 -0
  175. package/dist/web/public/spreadsheet-preview.75c751de.js.gz +0 -0
  176. package/dist/web/public/spreadsheet-xlsx-core.js +110 -0
  177. package/dist/web/public/spreadsheet-xlsx-core.js.br +0 -0
  178. package/dist/web/public/spreadsheet-xlsx-core.js.gz +0 -0
  179. package/dist/web/public/styles.ba6a9b84.css +1 -0
  180. package/dist/web/public/styles.ba6a9b84.css.br +0 -0
  181. package/dist/web/public/styles.ba6a9b84.css.gz +0 -0
  182. package/dist/web/public/subagent-windows.07277a58.js.gz +0 -0
  183. package/dist/web/public/sw.js +6 -2
  184. package/dist/web/public/sw.js.br +0 -0
  185. package/dist/web/public/sw.js.gz +0 -0
  186. package/dist/web/public/tab-layout-browser.2d6189f7.js +1 -0
  187. package/dist/web/public/tab-layout-browser.2d6189f7.js.br +0 -0
  188. package/dist/web/public/tab-layout-browser.2d6189f7.js.gz +0 -0
  189. package/dist/web/public/{tab-rail-resize.a5867793.js → tab-rail-resize.7157e0bd.js} +1 -1
  190. package/dist/web/public/tab-rail-resize.7157e0bd.js.br +0 -0
  191. package/dist/web/public/tab-rail-resize.7157e0bd.js.gz +0 -0
  192. package/dist/web/public/terminal-keycode229-recovery.af09f99a.js.gz +0 -0
  193. package/dist/web/public/terminal-split.js.gz +0 -0
  194. package/dist/web/public/terminal-tile.js +45 -24
  195. package/dist/web/public/terminal-tile.js.br +0 -0
  196. package/dist/web/public/terminal-tile.js.gz +0 -0
  197. package/dist/web/public/terminal-ui.0a7ccc29.js +2 -0
  198. package/dist/web/public/terminal-ui.0a7ccc29.js.br +0 -0
  199. package/dist/web/public/terminal-ui.0a7ccc29.js.gz +0 -0
  200. package/dist/web/public/tile-grid.js +439 -18
  201. package/dist/web/public/tile-grid.js.br +0 -0
  202. package/dist/web/public/tile-grid.js.gz +0 -0
  203. package/dist/web/public/ultracode-panel.js.gz +0 -0
  204. package/dist/web/public/ultracode-windows.js.gz +0 -0
  205. package/dist/web/public/vendor/dompurify.min.js.gz +0 -0
  206. package/dist/web/public/vendor/exceljs.min.js.gz +0 -0
  207. package/dist/web/public/vendor/fflate.min.js.gz +0 -0
  208. package/dist/web/public/vendor/marked.min.js.gz +0 -0
  209. package/dist/web/public/vendor/xterm-addon-fit.min.js.gz +0 -0
  210. package/dist/web/public/vendor/xterm-addon-serialize.min.js.gz +0 -0
  211. package/dist/web/public/vendor/xterm-addon-unicode11.min.js.gz +0 -0
  212. package/dist/web/public/vendor/xterm-addon-webgl.min.js.gz +0 -0
  213. package/dist/web/public/vendor/xterm-predictive-echo.ae5e3d5d.js.gz +0 -0
  214. package/dist/web/public/vendor/xterm-zerolag-input.0b69623c.js.gz +0 -0
  215. package/dist/web/public/vendor/xterm.css.gz +0 -0
  216. package/dist/web/public/vendor/xterm.min.js.gz +0 -0
  217. package/dist/web/public/voice-input.2342c37b.js.gz +0 -0
  218. package/dist/web/public/voice-pcm-worklet.js.gz +0 -0
  219. package/dist/web/public/webview-tabs.js +12 -0
  220. package/dist/web/public/webview-tabs.js.br +0 -0
  221. package/dist/web/public/webview-tabs.js.gz +0 -0
  222. package/dist/web/public/whats-new.json +13 -0
  223. package/dist/web/route-helpers.d.ts +8 -0
  224. package/dist/web/route-helpers.d.ts.map +1 -1
  225. package/dist/web/route-helpers.js +8 -0
  226. package/dist/web/route-helpers.js.map +1 -1
  227. package/dist/web/routes/admin-routes.d.ts.map +1 -1
  228. package/dist/web/routes/admin-routes.js +4 -1
  229. package/dist/web/routes/admin-routes.js.map +1 -1
  230. package/dist/web/routes/approval-routes.d.ts.map +1 -1
  231. package/dist/web/routes/approval-routes.js +12 -10
  232. package/dist/web/routes/approval-routes.js.map +1 -1
  233. package/dist/web/routes/case-routes.d.ts.map +1 -1
  234. package/dist/web/routes/case-routes.js +10 -3
  235. package/dist/web/routes/case-routes.js.map +1 -1
  236. package/dist/web/routes/file-routes.d.ts +46 -1
  237. package/dist/web/routes/file-routes.d.ts.map +1 -1
  238. package/dist/web/routes/file-routes.js +214 -27
  239. package/dist/web/routes/file-routes.js.map +1 -1
  240. package/dist/web/routes/hook-event-routes.d.ts.map +1 -1
  241. package/dist/web/routes/hook-event-routes.js +8 -1
  242. package/dist/web/routes/hook-event-routes.js.map +1 -1
  243. package/dist/web/routes/html-view-routes.d.ts +60 -0
  244. package/dist/web/routes/html-view-routes.d.ts.map +1 -0
  245. package/dist/web/routes/html-view-routes.js +288 -0
  246. package/dist/web/routes/html-view-routes.js.map +1 -0
  247. package/dist/web/routes/index.d.ts +2 -0
  248. package/dist/web/routes/index.d.ts.map +1 -1
  249. package/dist/web/routes/index.js +2 -0
  250. package/dist/web/routes/index.js.map +1 -1
  251. package/dist/web/routes/ralph-routes.d.ts.map +1 -1
  252. package/dist/web/routes/ralph-routes.js +19 -14
  253. package/dist/web/routes/ralph-routes.js.map +1 -1
  254. package/dist/web/routes/reboot-restore-routes.js +2 -2
  255. package/dist/web/routes/reboot-restore-routes.js.map +1 -1
  256. package/dist/web/routes/session-routes.d.ts +8 -5
  257. package/dist/web/routes/session-routes.d.ts.map +1 -1
  258. package/dist/web/routes/session-routes.js +462 -109
  259. package/dist/web/routes/session-routes.js.map +1 -1
  260. package/dist/web/routes/status-telemetry-routes.d.ts.map +1 -1
  261. package/dist/web/routes/status-telemetry-routes.js +24 -6
  262. package/dist/web/routes/status-telemetry-routes.js.map +1 -1
  263. package/dist/web/routes/system-routes.d.ts +9 -0
  264. package/dist/web/routes/system-routes.d.ts.map +1 -1
  265. package/dist/web/routes/system-routes.js +91 -12
  266. package/dist/web/routes/system-routes.js.map +1 -1
  267. package/dist/web/routes/worktree-routes.d.ts +52 -0
  268. package/dist/web/routes/worktree-routes.d.ts.map +1 -0
  269. package/dist/web/routes/worktree-routes.js +220 -0
  270. package/dist/web/routes/worktree-routes.js.map +1 -0
  271. package/dist/web/schemas.d.ts +45 -0
  272. package/dist/web/schemas.d.ts.map +1 -1
  273. package/dist/web/schemas.js +105 -0
  274. package/dist/web/schemas.js.map +1 -1
  275. package/dist/web/screen-blocked.d.ts +80 -0
  276. package/dist/web/screen-blocked.d.ts.map +1 -0
  277. package/dist/web/screen-blocked.js +106 -0
  278. package/dist/web/screen-blocked.js.map +1 -0
  279. package/dist/web/server.d.ts +6 -1
  280. package/dist/web/server.d.ts.map +1 -1
  281. package/dist/web/server.js +73 -14
  282. package/dist/web/server.js.map +1 -1
  283. package/dist/web/session-listener-wiring.d.ts +1 -0
  284. package/dist/web/session-listener-wiring.d.ts.map +1 -1
  285. package/dist/web/session-listener-wiring.js +20 -0
  286. package/dist/web/session-listener-wiring.js.map +1 -1
  287. package/dist/web/session-wait-registry.d.ts +27 -9
  288. package/dist/web/session-wait-registry.d.ts.map +1 -1
  289. package/dist/web/session-wait-registry.js +36 -13
  290. package/dist/web/session-wait-registry.js.map +1 -1
  291. package/dist/web/sse-events.d.ts +12 -4
  292. package/dist/web/sse-events.d.ts.map +1 -1
  293. package/dist/web/sse-events.js +12 -4
  294. package/dist/web/sse-events.js.map +1 -1
  295. package/package.json +3 -2
  296. package/skills/codeman/SKILL.md +47 -27
  297. package/skills/codeman/preamble.sh +14 -11
  298. package/skills/codeman/reference/endpoints.md +1 -1
  299. package/skills/codeman/reference/recipes.md +12 -9
  300. package/skills/codeman/reference/verbs.md +3 -1
  301. package/dist/web/public/app.6f8552e1.js +0 -43
  302. package/dist/web/public/app.6f8552e1.js.br +0 -0
  303. package/dist/web/public/app.6f8552e1.js.gz +0 -0
  304. package/dist/web/public/constants.bc9c1f63.js.br +0 -0
  305. package/dist/web/public/constants.bc9c1f63.js.gz +0 -0
  306. package/dist/web/public/i18n.a9840ea2.js +0 -2
  307. package/dist/web/public/i18n.a9840ea2.js.br +0 -0
  308. package/dist/web/public/i18n.a9840ea2.js.gz +0 -0
  309. package/dist/web/public/image-input.e00471c6.js +0 -283
  310. package/dist/web/public/image-input.e00471c6.js.br +0 -0
  311. package/dist/web/public/image-input.e00471c6.js.gz +0 -0
  312. package/dist/web/public/keyboard-accessory.c1e7c7b7.js.br +0 -0
  313. package/dist/web/public/keyboard-accessory.c1e7c7b7.js.gz +0 -0
  314. package/dist/web/public/mobile.111b187d.css +0 -1
  315. package/dist/web/public/mobile.111b187d.css.br +0 -0
  316. package/dist/web/public/mobile.111b187d.css.gz +0 -0
  317. package/dist/web/public/panels-ui.71846fcb.js.br +0 -0
  318. package/dist/web/public/panels-ui.71846fcb.js.gz +0 -0
  319. package/dist/web/public/respawn-ui.ff0dae4c.js.br +0 -0
  320. package/dist/web/public/respawn-ui.ff0dae4c.js.gz +0 -0
  321. package/dist/web/public/session-ui.f731602c.js +0 -100
  322. package/dist/web/public/session-ui.f731602c.js.br +0 -0
  323. package/dist/web/public/session-ui.f731602c.js.gz +0 -0
  324. package/dist/web/public/settings-ui.4e33390f.js +0 -97
  325. package/dist/web/public/settings-ui.4e33390f.js.br +0 -0
  326. package/dist/web/public/settings-ui.4e33390f.js.gz +0 -0
  327. package/dist/web/public/spreadsheet-preview.af82fa2f.js.br +0 -0
  328. package/dist/web/public/spreadsheet-preview.af82fa2f.js.gz +0 -0
  329. package/dist/web/public/styles.81a72906.css +0 -1
  330. package/dist/web/public/styles.81a72906.css.br +0 -0
  331. package/dist/web/public/styles.81a72906.css.gz +0 -0
  332. package/dist/web/public/tab-layout-browser.065fcba4.js +0 -1
  333. package/dist/web/public/tab-layout-browser.065fcba4.js.br +0 -0
  334. package/dist/web/public/tab-layout-browser.065fcba4.js.gz +0 -0
  335. package/dist/web/public/tab-rail-resize.a5867793.js.br +0 -0
  336. package/dist/web/public/tab-rail-resize.a5867793.js.gz +0 -0
  337. package/dist/web/public/terminal-ui.b7267005.js +0 -2
  338. package/dist/web/public/terminal-ui.b7267005.js.br +0 -0
  339. package/dist/web/public/terminal-ui.b7267005.js.gz +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"status-telemetry-routes.d.ts","sourceRoot":"","sources":["../../../src/web/routes/status-telemetry-routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAY1C,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAGhE,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI,CAoDtG"}
1
+ {"version":3,"file":"status-telemetry-routes.d.ts","sourceRoot":"","sources":["../../../src/web/routes/status-telemetry-routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAa1C,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAGhE,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI,CAwEtG"}
@@ -17,8 +17,8 @@
17
17
  */
18
18
  import { StatusTelemetrySchema } from '../schemas.js';
19
19
  import { parseBody } from '../route-helpers.js';
20
- import { parseStatusTelemetry, parseSessionStatus, formatSessionStatusText, telemetrySignature, } from '../../usage-telemetry.js';
21
- import { SessionStatusTelemetry } from '../sse-events.js';
20
+ import { parsePromptCache, parseStatusTelemetry, parseSessionStatus, formatSessionStatusText, telemetrySignature, } from '../../usage-telemetry.js';
21
+ import { SessionPromptCache, SessionStatusTelemetry } from '../sse-events.js';
22
22
  import { setLatestPlanUsage } from '../plan-usage-latest.js';
23
23
  import { getCli } from '../../config/cli-registry/index.js';
24
24
  export function registerStatusTelemetryRoutes(app, ctx) {
@@ -35,14 +35,32 @@ export function registerStatusTelemetryRoutes(app, ctx) {
35
35
  return '';
36
36
  }
37
37
  const payload = data;
38
+ // Only a CLI that has a statusline exporter at all speaks for its own model and
39
+ // prompt-cache state: both ride the SAME statusline payload the exporter POSTs, so
40
+ // both are gated on capabilities.statusLineTelemetry (the gate that also decides
41
+ // whether the exporter is injected at all, in tmux-manager._resolveStatusLine).
42
+ const session = ctx.sessions.get(sessionId);
43
+ const reportsStatusLine = !!session && !!getCli(session.mode)?.capabilities.statusLineTelemetry;
38
44
  // The model the CLI says it is running, for the session headers (displayModel). It
39
45
  // rides every render, so it follows an in-session `/model`; the session dedupes and
40
- // broadcasts only a change. Only a CLI that has a statusline exporter at all may
41
- // report one here.
42
- const session = ctx.sessions.get(sessionId);
43
- if (session && getCli(session.mode)?.capabilities.statusLineTelemetry) {
46
+ // broadcasts only a change.
47
+ if (session && reportsStatusLine) {
44
48
  session.noteReportedModel('statusline', payload?.model?.display_name);
45
49
  }
50
+ // Prompt-cache state of the main conversation (Claude Code v2.1.251+): kept on the
51
+ // session for the Session Options readout and `toState()`, broadcast only when the
52
+ // report changes (the statusline fires on every assistant message). The broadcast
53
+ // carries the STORED object, so a compaction stamp set in setPromptCache rides along.
54
+ // Reports are applied in arrival order. When the exporter wraps a user's own statusline
55
+ // it backgrounds this POST (hooks-config.ts), so two sub-second loopback reports can
56
+ // arrive out of order; a stale one then briefly overwrites newer state until the next
57
+ // render corrects it. Accepted for a display-only readout rather than ordered here.
58
+ const promptCache = reportsStatusLine ? parsePromptCache(payload) : null;
59
+ if (promptCache && session?.setPromptCache(promptCache)) {
60
+ ctx.broadcast(SessionPromptCache, { sessionId, ...session.promptCache });
61
+ // Persisted on change, like a model change, so a crash restores the latest report.
62
+ ctx.persistSessionState(session);
63
+ }
46
64
  // Plan-usage limits (account-wide) → broadcast to the header chip, when
47
65
  // present and changed (the statusline fires on every assistant message).
48
66
  const telemetry = parseStatusTelemetry(payload);
@@ -1 +1 @@
1
- {"version":3,"file":"status-telemetry-routes.js","sourceRoot":"","sources":["../../../src/web/routes/status-telemetry-routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,GAEnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAE5D,MAAM,UAAU,6BAA6B,CAAC,GAAoB,EAAE,GAA4B;IAC9F,2EAA2E;IAC3E,0EAA0E;IAC1E,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE1C,GAAG,CAAC,IAAI,CAAC,uBAAuB,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QACrD,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC,qBAAqB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAEvE,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAExC,4EAA4E;QAC5E,gDAAgD;QAChD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC1B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,OAAO,GAAG,IAAwC,CAAC;QAEzD,mFAAmF;QACnF,oFAAoF;QACpF,iFAAiF;QACjF,mBAAmB;QACnB,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,mBAAmB,EAAE,CAAC;YACtE,OAAO,CAAC,iBAAiB,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;QACxE,CAAC;QAED,wEAAwE;QACxE,yEAAyE;QACzE,MAAM,SAAS,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,GAAG,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;YAC1C,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,GAAG,EAAE,CAAC;gBACnC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBAC5B,qEAAqE;gBACrE,IAAI,OAAO,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC;oBACvB,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;wBACrC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;4BAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBAChD,CAAC;gBACH,CAAC;gBACD,MAAM,MAAM,GAAG,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,CAAC;gBAC3C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,oDAAoD;gBACjG,GAAG,CAAC,SAAS,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,yEAAyE;QACzE,8BAA8B;QAC9B,OAAO,uBAAuB,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"status-telemetry-routes.js","sourceRoot":"","sources":["../../../src/web/routes/status-telemetry-routes.ts"],"names":[],"mappings":"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"}
@@ -12,5 +12,14 @@ import type { SessionPort, EventPort, ConfigPort, InfraPort, AuthPort, TabLayout
12
12
  * port when the header is absent/odd. Exported for unit testing.
13
13
  */
14
14
  export declare function resolveSpanUrl(hostHeader: string | undefined, fallbackPort?: string): string;
15
+ /**
16
+ * What GET /api/settings answers a NON-ADMIN in multi-user mode: settings.json minus what
17
+ * belongs to the server's admin rather than to the reader. `voiceSettings.apiKey` is the
18
+ * Deepgram key an admin saved, a credential (the reader's browser seeded it into its own
19
+ * voice config and dictated on the admin's account); `caseOrder` and `lastUsedCase` name the
20
+ * admin's cases. Everything else stays readable, because the page reads the synced feature
21
+ * switches from it. Writes are admin-only there (PUT /api/settings). Exported for unit testing.
22
+ */
23
+ export declare function settingsForNonAdmin(settings: unknown): unknown;
15
24
  export declare function registerSystemRoutes(app: FastifyInstance, ctx: SessionPort & EventPort & ConfigPort & InfraPort & AuthPort & TabLayoutPort): void;
16
25
  //# sourceMappingURL=system-routes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"system-routes.d.ts","sourceRoot":"","sources":["../../../src/web/routes/system-routes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AA+C1C,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAiFhH;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,YAAY,SAAS,GAAG,MAAM,CAI5F;AAED,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,aAAa,GAC/E,IAAI,CAqwCN"}
1
+ {"version":3,"file":"system-routes.d.ts","sourceRoot":"","sources":["../../../src/web/routes/system-routes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AA+C1C,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAiFhH;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,YAAY,SAAS,GAAG,MAAM,CAI5F;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAY9D;AAED,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,aAAa,GAC/E,IAAI,CAozCN"}
@@ -15,7 +15,7 @@ import { ApiErrorCode, createErrorResponse, getErrorMessage } from '../../types.
15
15
  import { isUnauthenticatedNetworkAcknowledged } from '../network-auth-policy.js';
16
16
  import { isMultiUserMode } from '../../config/multiuser.js';
17
17
  import { findUser, canUsernameRunPrivilegedCommands } from '../../user-store.js';
18
- import { getAuthUser, requireAdmin, canAccessOwned } from '../route-helpers.js';
18
+ import { getAuthUser, isAdmin, requireAdmin, canAccessOwned, revokeUserSessions } from '../route-helpers.js';
19
19
  import { ConfigUpdateSchema, SettingsUpdateSchema, ModelConfigUpdateSchema, CpuLimitSchema, SubagentWindowStatesSchema, SubagentParentMapSchema, RevokeSessionSchema, DeepSeekInstallProfileSchema, DeepSeekWebStartSchema, } from '../schemas.js';
20
20
  import { subagentWatcher } from '../../subagent-watcher.js';
21
21
  import { imageWatcher } from '../../image-watcher.js';
@@ -108,6 +108,28 @@ export function resolveSpanUrl(hostHeader, fallbackPort = '3000') {
108
108
  const port = /^\d+$/.test(hostPort) ? hostPort : fallbackPort;
109
109
  return `http://localhost:${port}`;
110
110
  }
111
+ /**
112
+ * What GET /api/settings answers a NON-ADMIN in multi-user mode: settings.json minus what
113
+ * belongs to the server's admin rather than to the reader. `voiceSettings.apiKey` is the
114
+ * Deepgram key an admin saved, a credential (the reader's browser seeded it into its own
115
+ * voice config and dictated on the admin's account); `caseOrder` and `lastUsedCase` name the
116
+ * admin's cases. Everything else stays readable, because the page reads the synced feature
117
+ * switches from it. Writes are admin-only there (PUT /api/settings). Exported for unit testing.
118
+ */
119
+ export function settingsForNonAdmin(settings) {
120
+ if (!settings || typeof settings !== 'object' || Array.isArray(settings))
121
+ return settings;
122
+ const out = { ...settings };
123
+ delete out.caseOrder;
124
+ delete out.lastUsedCase;
125
+ const voice = out.voiceSettings;
126
+ if (voice && typeof voice === 'object' && !Array.isArray(voice) && 'apiKey' in voice) {
127
+ const voiceOut = { ...voice };
128
+ delete voiceOut.apiKey;
129
+ out.voiceSettings = voiceOut;
130
+ }
131
+ return out;
132
+ }
111
133
  export function registerSystemRoutes(app, ctx) {
112
134
  const windowStatesPath = dataPath('subagent-window-states.json');
113
135
  const parentMapPath = dataPath('subagent-parents.json');
@@ -118,12 +140,18 @@ export function registerSystemRoutes(app, ctx) {
118
140
  app.get('/api/status', async (req) => ctx.getLightState(req.authUser));
119
141
  // ========== Tunnel ==========
120
142
  app.get('/api/tunnel/status', async () => ctx.tunnelManager.getStatus());
121
- app.get('/api/tunnel/info', async () => {
143
+ app.get('/api/tunnel/info', async (req) => {
122
144
  const status = ctx.tunnelManager.getStatus();
123
145
  const sseClients = ctx.getSseClientCount();
124
146
  const sessions = [];
147
+ // Multi-user mode: a non-admin is shown only their own logins (address and browser of
148
+ // every other user's sessions are not theirs to read), matching what their Revoke All
149
+ // can revoke (POST /api/auth/revoke). null = everyone's (admin, single-user mode).
150
+ const onlyUser = isMultiUserMode() && !isAdmin(req) ? getAuthUser(req).username : null;
125
151
  if (ctx.authSessions) {
126
152
  for (const [, record] of ctx.authSessions) {
153
+ if (onlyUser !== null && record.username !== onlyUser)
154
+ continue;
127
155
  sessions.push({ ip: record.ip, ua: record.ua, createdAt: record.createdAt, method: record.method });
128
156
  }
129
157
  }
@@ -240,13 +268,32 @@ export function registerSystemRoutes(app, ctx) {
240
268
  return reply.redirect('/');
241
269
  });
242
270
  // ========== QR Regeneration ==========
243
- app.post('/api/tunnel/qr/regenerate', async () => {
271
+ app.post('/api/tunnel/qr/regenerate', async (req, reply) => {
272
+ // Clears EVERY outstanding QR login code (each user's minted one too) and rotates the
273
+ // server's token: admin-only in multi-user mode, like the other tunnel controls.
274
+ if (isMultiUserMode() && !requireAdmin(req, reply))
275
+ return;
244
276
  ctx.tunnelManager.regenerateQrToken();
245
277
  return {};
246
278
  });
247
279
  // ========== Auth Session Revocation ==========
248
280
  app.post('/api/auth/revoke', async (req) => {
249
281
  const result = RevokeSessionSchema.safeParse(req.body);
282
+ // Multi-user mode: a NON-ADMIN revokes only their own login sessions. The bare form
283
+ // below clears every session on the server, so for them it used to sign out every
284
+ // user, admins included; a named token is revoked only when it is one of theirs.
285
+ if (isMultiUserMode() && !isAdmin(req)) {
286
+ const username = getAuthUser(req).username;
287
+ const token = result.success ? result.data.sessionToken : undefined;
288
+ if (token) {
289
+ if (ctx.authSessions?.peek(token)?.username === username)
290
+ ctx.authSessions?.delete(token);
291
+ }
292
+ else {
293
+ revokeUserSessions(ctx.authSessions, username);
294
+ }
295
+ return {};
296
+ }
250
297
  if (result.success && result.data.sessionToken) {
251
298
  ctx.authSessions?.delete(result.data.sessionToken);
252
299
  }
@@ -264,6 +311,9 @@ export function registerSystemRoutes(app, ctx) {
264
311
  // panels can be dragged across the physical monitor seam. macOS only; needs
265
312
  // the one-time "Displays have separate Spaces" OFF prerequisite (see script).
266
313
  app.post('/api/system/span-displays', async (req, reply) => {
314
+ // Launches a browser window on the SERVER's desktop: admin-only in multi-user mode.
315
+ if (isMultiUserMode() && !requireAdmin(req, reply))
316
+ return;
267
317
  // macOS only: the launcher uses osascript + Finder desktop bounds and Chrome
268
318
  // --app geometry flags. Fail clearly elsewhere instead of spawning a bash
269
319
  // that errors out invisibly (the toast would otherwise lie "Opening…").
@@ -307,7 +357,10 @@ export function registerSystemRoutes(app, ctx) {
307
357
  app.get('/api/system/repo-status', async () => getRepositoryStatus());
308
358
  // Kick off a detached update to the latest release. Returns immediately; the
309
359
  // browser then polls /api/system/update/status across the service restart.
310
- app.post('/api/system/update', async (_req, reply) => {
360
+ app.post('/api/system/update', async (req, reply) => {
361
+ // Updates and restarts the server under every user: admin-only in multi-user mode.
362
+ if (isMultiUserMode() && !requireAdmin(req, reply))
363
+ return;
311
364
  const result = await startUpdate();
312
365
  if (result.ok) {
313
366
  return { updateId: result.updateId, toTag: result.toTag, toVersion: result.toVersion };
@@ -507,13 +560,16 @@ export function registerSystemRoutes(app, ctx) {
507
560
  // synchronous-spawn precedent this endpoint is modelled on.
508
561
  detached: true,
509
562
  // Inherit the environment: this needs a HOME to resolve $DSH_HOME
510
- // against, and a PATH carrying `pnpm`. ⚠️ `dsh plugin` does NOT bundle a
563
+ // against, and a PATH carrying `pnpm` (see the PATH below). ⚠️ `dsh plugin` does NOT bundle a
511
564
  // package manager — it `spawnSync`s a literal `pnpm` with no npm
512
565
  // fallback, so on a host without one this exits 127 and dsh's own
513
566
  // stderr ("pnpm not found on PATH") is what reaches the caller through
514
567
  // the OPERATION_FAILED detail below. That is the same missing
515
568
  // dependency that broke the docker agent image in issue #352.
516
- env: process.env,
569
+ // PATH leads with the directory `dsh` itself resolved to: CLI management installs
570
+ // `dsh` and `pnpm` into the user prefix (`~/.local/bin`), which a service's own PATH
571
+ // usually lacks, so `dsh plugin` could not find the `pnpm` sitting next to it.
572
+ env: { ...process.env, PATH: [dir, process.env.PATH].filter(Boolean).join(':') },
517
573
  });
518
574
  }
519
575
  catch (err) {
@@ -600,7 +656,11 @@ export function registerSystemRoutes(app, ctx) {
600
656
  // State & Lifecycle (cleanup, lifecycle log, stats)
601
657
  // ═══════════════════════════════════════════════════════════════
602
658
  // ========== State & Lifecycle ==========
603
- app.post('/api/cleanup-state', async () => {
659
+ app.post('/api/cleanup-state', async (req, reply) => {
660
+ // Drops every user's stale session records (and their tab-layout entries): admin-only
661
+ // in multi-user mode, like the other server-wide maintenance operations.
662
+ if (isMultiUserMode() && !requireAdmin(req, reply))
663
+ return;
604
664
  const activeSessionIds = new Set(ctx.sessions.keys());
605
665
  const result = await ctx.tabLayouts.runStaleSessionCleanup(activeSessionIds, (ids) => ctx.store.cleanupSessionsByIds(ids));
606
666
  const lifecycleLog = getLifecycleLog();
@@ -719,7 +779,11 @@ export function registerSystemRoutes(app, ctx) {
719
779
  app.get('/api/config', async () => {
720
780
  return { config: ctx.store.getConfig() };
721
781
  });
722
- app.put('/api/config', async (req) => {
782
+ app.put('/api/config', async (req, reply) => {
783
+ // Process-wide app config in state.json (poll interval, timeouts, the session cap,
784
+ // respawn defaults): admin-only in multi-user mode, like PUT /api/settings.
785
+ if (isMultiUserMode() && !requireAdmin(req, reply))
786
+ return;
723
787
  const configData = parseBody(ConfigUpdateSchema, req.body, 'Invalid config');
724
788
  ctx.store.setConfig(configData);
725
789
  return { config: ctx.store.getConfig() };
@@ -779,7 +843,7 @@ export function registerSystemRoutes(app, ctx) {
779
843
  return getSystemStats();
780
844
  });
781
845
  // ========== Settings ==========
782
- app.get('/api/settings', async () => {
846
+ app.get('/api/settings', async (req) => {
783
847
  // A plain read. This route must NEVER write settings.json: readJsonConfig()
784
848
  // answers `{}` for ANY read failure (a parse error, EACCES, EMFILE, a read
785
849
  // that lands inside PUT's non-atomic write), not only for a missing file,
@@ -791,9 +855,20 @@ export function registerSystemRoutes(app, ctx) {
791
855
  // `workspaceHooksEnabled` means ON, and the client resolves its own display
792
856
  // default through planUsageChipEnabled(). Pinned by
793
857
  // test/routes/system-routes-settings-get-plan-usage-default.test.ts.
794
- return readJsonConfig(SETTINGS_PATH, 'settings', {});
858
+ const settings = await readJsonConfig(SETTINGS_PATH, 'settings', {});
859
+ // Readable by every signed-in user, but a non-admin in multi-user mode gets it without
860
+ // the admin's credential and case names (settingsForNonAdmin). isAdmin is always true in
861
+ // single-user mode, so that answer is the file as it is.
862
+ return isAdmin(req) ? settings : settingsForNonAdmin(settings);
795
863
  });
796
- app.put('/api/settings', async (req) => {
864
+ app.put('/api/settings', async (req, reply) => {
865
+ // Multi-user mode: settings.json is ONE file for the whole server (feature switches,
866
+ // the plan-usage collection switch, run mode, respawn presets, the tunnel), so a write
867
+ // is admin-only, like every other server-wide setting (docs/multi-user-plan.md,
868
+ // Settings row). Refused FIRST: nothing is parsed, written, toggled or started for a
869
+ // non-admin. GET above stays readable by everyone. No-op in single-user mode.
870
+ if (isMultiUserMode() && !requireAdmin(req, reply))
871
+ return;
797
872
  const settings = parseBody(SettingsUpdateSchema, req.body, 'Invalid settings');
798
873
  // COD-55: enabling the Cloudflare tunnel publishes the whole app (full terminal
799
874
  // control = effectively RCE) to a public *.trycloudflare.com URL. Because the
@@ -916,7 +991,11 @@ export function registerSystemRoutes(app, ctx) {
916
991
  const settings = await readJsonConfig(SETTINGS_PATH, 'model config', {});
917
992
  return { success: true, data: settings.modelConfig || {} };
918
993
  });
919
- app.put('/api/execution/model-config', async (req) => {
994
+ app.put('/api/execution/model-config', async (req, reply) => {
995
+ // The `modelConfig` key of the server-wide settings.json (cron's and the plan
996
+ // orchestrator's default model): admin-only in multi-user mode, like PUT /api/settings.
997
+ if (isMultiUserMode() && !requireAdmin(req, reply))
998
+ return;
920
999
  const modelConfig = parseBody(ModelConfigUpdateSchema, req.body, 'Invalid model config');
921
1000
  try {
922
1001
  let existingSettings = {};
@@ -1 +1 @@
1
- {"version":3,"file":"system-routes.js","sourceRoot":"","sources":["../../../src/web/routes/system-routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"system-routes.js","sourceRoot":"","sources":["../../../src/web/routes/system-routes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * @fileoverview Git worktrees of a local case (src/git-worktrees.ts holds the rules):
3
+ *
4
+ * GET /api/cases/:name/worktrees the case repository's worktrees, which of them
5
+ * Codeman manages, and the live sessions in each
6
+ * POST /api/cases/:name/worktrees create `<case>/.claude/worktrees/<name>` on a
7
+ * new branch (`{ name, branch?, base? }`)
8
+ * DELETE /api/cases/:name/worktrees/:worktree `git worktree remove` WITHOUT --force, refused
9
+ * while a live session runs inside; optional
10
+ * `?deleteBranch=true` is `git branch -d`
11
+ *
12
+ * A session starts in a worktree through the EXISTING create paths, never a new spawn path here:
13
+ * `POST /api/quick-start` with `worktree: <name>` (validated against this module's rules), or
14
+ * `POST /api/sessions` with the worktree path as `workingDir`.
15
+ *
16
+ * The case is resolved the way quick-start resolves it: an owned remote or Docker case is refused
17
+ * with a 400 (git must never run on the host over a Docker workspace, and a remote case's folder
18
+ * is on another machine); a linked case resolves for admins only in multi-user mode; anything else
19
+ * is the caller's own case space, confined with `isWorkingDirAllowed`. The case folder is probed
20
+ * BOUNDED (#516): a case on a network mount that stopped answering is a 422, never a 404.
21
+ *
22
+ * Statuses are set explicitly from the error code, so the route answers the same with or without
23
+ * the server's envelope hook.
24
+ */
25
+ import type { FastifyInstance } from 'fastify';
26
+ import { type CaseWorktree, type WorktreeGitRunner } from '../../git-worktrees.js';
27
+ import type { SessionPort } from '../ports/index.js';
28
+ /** A live session in a worktree, as the list reports it to a caller who may see it. */
29
+ export interface WorktreeSessionRef {
30
+ id: string;
31
+ name: string;
32
+ }
33
+ /** One row of `GET /api/cases/:name/worktrees`. */
34
+ export interface CaseWorktreeInfo extends CaseWorktree {
35
+ /** Live sessions running in this worktree (deepest worktree wins), all owners. */
36
+ sessionCount: number;
37
+ /** The ones the caller may see (all of them outside multi-user mode). */
38
+ sessions: WorktreeSessionRef[];
39
+ }
40
+ export interface CaseWorktreeList {
41
+ caseName: string;
42
+ repoRoot: string;
43
+ /** `<repo>/.claude/worktrees`, where Codeman creates and removes worktrees. */
44
+ worktreesDir: string;
45
+ worktrees: CaseWorktreeInfo[];
46
+ truncated: boolean;
47
+ }
48
+ export declare function registerWorktreeRoutes(app: FastifyInstance, ctx: SessionPort, deps?: {
49
+ git?: WorktreeGitRunner;
50
+ dockerWorkspaces?: () => Promise<string[]>;
51
+ }): void;
52
+ //# sourceMappingURL=worktree-routes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worktree-routes.d.ts","sourceRoot":"","sources":["../../../src/web/routes/worktree-routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAgC,MAAM,SAAS,CAAC;AAS7E,OAAO,EAUL,KAAK,YAAY,EAIjB,KAAK,iBAAiB,EACvB,MAAM,wBAAwB,CAAC;AAYhC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAqBrD,uFAAuF;AACvF,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,mDAAmD;AACnD,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,kFAAkF;IAClF,YAAY,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B,SAAS,EAAE,OAAO,CAAC;CACpB;AAsFD,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,WAAW,EAChB,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,iBAAiB,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;CAAO,GACjF,IAAI,CAgGN"}