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":"sse-events.js","sourceRoot":"","sources":["../../src/web/sse-events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AAEH,gFAAgF;AAEhF,yEAAyE;AACzE,MAAM,CAAC,MAAM,IAAI,GAAG,MAAe,CAAC;AAEpC,gFAAgF;AAEhF;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,eAAwB,CAAC;AAElD,gFAAgF;AAEhF,2BAA2B;AAC3B,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,4DAA4D;AAC5D,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,mCAAmC;AACnC,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,qCAAqC;AACrC,MAAM,CAAC,MAAM,eAAe,GAAG,kBAA2B,CAAC;AAC3D,8EAA8E;AAC9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,sBAA+B,CAAC;AACnE,qDAAqD;AACrD,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAgC,CAAC;AACrE,2DAA2D;AAC3D,MAAM,CAAC,MAAM,iBAAiB,GAAG,oBAA6B,CAAC;AAC/D,2BAA2B;AAC3B,MAAM,CAAC,MAAM,YAAY,GAAG,eAAwB,CAAC;AACrD,iCAAiC;AACjC,MAAM,CAAC,MAAM,WAAW,GAAG,cAAuB,CAAC;AACnD,wDAAwD;AACxD,MAAM,CAAC,MAAM,WAAW,GAAG,cAAuB,CAAC;AACnD,8DAA8D;AAC9D,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,4CAA4C;AAC5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAA4B,CAAC;AAC7D,8CAA8C;AAC9C,MAAM,CAAC,MAAM,kBAAkB,GAAG,qBAA8B,CAAC;AACjE,yDAAyD;AACzD,MAAM,CAAC,MAAM,0BAA0B,GAAG,6BAAsC,CAAC;AACjF,yDAAyD;AACzD,MAAM,CAAC,MAAM,kBAAkB,GAAG,qBAA8B,CAAC;AACjE,uFAAuF;AACvF,MAAM,CAAC,MAAM,2BAA2B,GAAG,8BAAuC,CAAC;AACnF,yHAAyH;AACzH,MAAM,CAAC,MAAM,4BAA4B,GAAG,+BAAwC,CAAC;AACrF,2DAA2D;AAC3D,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,wFAAwF;AACxF,MAAM,CAAC,MAAM,aAAa,GAAG,gBAAyB,CAAC;AACvD,kDAAkD;AAClD,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,0DAA0D;AAC1D,MAAM,CAAC,MAAM,kBAAkB,GAAG,qBAA8B,CAAC;AACjE,4CAA4C;AAC5C,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,sFAAsF;AACtF,MAAM,CAAC,MAAM,sBAAsB,GAAG,yBAAkC,CAAC;AAEzE,gFAAgF;AAEhF,oEAAoE;AACpE,MAAM,CAAC,MAAM,sBAAsB,GAAG,yBAAkC,CAAC;AACzE,gCAAgC;AAChC,MAAM,CAAC,MAAM,sBAAsB,GAAG,yBAAkC,CAAC;AACzE,kDAAkD;AAClD,MAAM,CAAC,MAAM,8BAA8B,GAAG,iCAA0C,CAAC;AACzF,6CAA6C;AAC7C,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAAoC,CAAC;AAC7E,6DAA6D;AAC7D,MAAM,CAAC,MAAM,2BAA2B,GAAG,8BAAuC,CAAC;AACnF,8DAA8D;AAC9D,MAAM,CAAC,MAAM,kBAAkB,GAAG,qBAA8B,CAAC;AAEjE,gFAAgF;AAEhF,oCAAoC;AACpC,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAgC,CAAC;AACrE,sCAAsC;AACtC,MAAM,CAAC,MAAM,kBAAkB,GAAG,qBAA8B,CAAC;AACjE,sCAAsC;AACtC,MAAM,CAAC,MAAM,sBAAsB,GAAG,yBAAkC,CAAC;AAEzE,gFAAgF;AAEhF,gCAAgC;AAChC,MAAM,CAAC,MAAM,qBAAqB,GAAG,wBAAiC,CAAC;AACvE,+BAA+B;AAC/B,MAAM,CAAC,MAAM,qBAAqB,GAAG,wBAAiC,CAAC;AACvE,8CAA8C;AAC9C,MAAM,CAAC,MAAM,mBAAmB,GAAG,sBAA+B,CAAC;AACnE,8BAA8B;AAC9B,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAgC,CAAC;AAErE,gFAAgF;AAEhF,+BAA+B;AAC/B,MAAM,CAAC,MAAM,WAAW,GAAG,cAAuB,CAAC;AACnD,8CAA8C;AAC9C,MAAM,CAAC,MAAM,aAAa,GAAG,gBAAyB,CAAC;AACvD,8BAA8B;AAC9B,MAAM,CAAC,MAAM,UAAU,GAAG,aAAsB,CAAC;AACjD,qCAAqC;AACrC,MAAM,CAAC,MAAM,WAAW,GAAG,cAAuB,CAAC;AAEnD,gFAAgF;AAEhF,4BAA4B;AAC5B,MAAM,CAAC,MAAM,UAAU,GAAG,aAAsB,CAAC;AACjD,2BAA2B;AAC3B,MAAM,CAAC,MAAM,SAAS,GAAG,YAAqB,CAAC;AAC/C,sCAAsC;AACtC,MAAM,CAAC,MAAM,OAAO,GAAG,UAAmB,CAAC;AAC3C,oCAAoC;AACpC,MAAM,CAAC,MAAM,eAAe,GAAG,kBAA2B,CAAC;AAE3D,gFAAgF;AAChF,sFAAsF;AACtF,qFAAqF;AAErF,qFAAqF;AACrF,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAgC,CAAC;AACrE,6EAA6E;AAC7E,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAAoC,CAAC;AAC7E,sFAAsF;AACtF,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAAoC,CAAC;AAC7E;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAA4B,CAAC;AAC7D,yFAAyF;AACzF,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAgC,CAAC;AAErE,gFAAgF;AAEhF,0CAA0C;AAC1C,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,4BAA4B;AAC5B,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,0CAA0C;AAC1C,MAAM,CAAC,MAAM,mBAAmB,GAAG,sBAA+B,CAAC;AACnE,iCAAiC;AACjC,MAAM,CAAC,MAAM,mBAAmB,GAAG,sBAA+B,CAAC;AACnE,+BAA+B;AAC/B,MAAM,CAAC,MAAM,qBAAqB,GAAG,wBAAiC,CAAC;AACvE,qEAAqE;AACrE,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,sEAAsE;AACtE,MAAM,CAAC,MAAM,eAAe,GAAG,kBAA2B,CAAC;AAC3D,8BAA8B;AAC9B,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAgC,CAAC;AACrE,gDAAgD;AAChD,MAAM,CAAC,MAAM,sBAAsB,GAAG,yBAAkC,CAAC;AACzE,8CAA8C;AAC9C,MAAM,CAAC,MAAM,qBAAqB,GAAG,wBAAiC,CAAC;AACvE,6BAA6B;AAC7B,MAAM,CAAC,MAAM,qBAAqB,GAAG,wBAAiC,CAAC;AACvE,2CAA2C;AAC3C,MAAM,CAAC,MAAM,uBAAuB,GAAG,0BAAmC,CAAC;AAC3E,4BAA4B;AAC5B,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAgC,CAAC;AACrE,uCAAuC;AACvC,MAAM,CAAC,MAAM,sBAAsB,GAAG,yBAAkC,CAAC;AACzE,qCAAqC;AACrC,MAAM,CAAC,MAAM,uBAAuB,GAAG,0BAAmC,CAAC;AAC3E,mDAAmD;AACnD,MAAM,CAAC,MAAM,yBAAyB,GAAG,4BAAqC,CAAC;AAC/E,oCAAoC;AACpC,MAAM,CAAC,MAAM,sBAAsB,GAAG,yBAAkC,CAAC;AACzE,oDAAoD;AACpD,MAAM,CAAC,MAAM,mBAAmB,GAAG,sBAA+B,CAAC;AACnE,+BAA+B;AAC/B,MAAM,CAAC,MAAM,qBAAqB,GAAG,wBAAiC,CAAC;AACvE,+BAA+B;AAC/B,MAAM,CAAC,MAAM,qBAAqB,GAAG,wBAAiC,CAAC;AACvE,8CAA8C;AAC9C,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAA4B,CAAC;AAC7D,iCAAiC;AACjC,MAAM,CAAC,MAAM,UAAU,GAAG,aAAsB,CAAC;AACjD,8BAA8B;AAC9B,MAAM,CAAC,MAAM,YAAY,GAAG,eAAwB,CAAC;AACrD,qCAAqC;AACrC,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAgC,CAAC;AAErE,gFAAgF;AAEhF,kDAAkD;AAClD,MAAM,CAAC,MAAM,kBAAkB,GAAG,qBAA8B,CAAC;AACjE,8BAA8B;AAC9B,MAAM,CAAC,MAAM,eAAe,GAAG,kBAA2B,CAAC;AAC3D,mCAAmC;AACnC,MAAM,CAAC,MAAM,gBAAgB,GAAG,oBAA6B,CAAC;AAC9D,qCAAqC;AACrC,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAA+B,CAAC;AAClE,gCAAgC;AAChC,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAA4B,CAAC;AAC7D,yCAAyC;AACzC,MAAM,CAAC,MAAM,eAAe,GAAG,kBAA2B,CAAC;AAC3D,yBAAyB;AACzB,MAAM,CAAC,MAAM,iBAAiB,GAAG,oBAA6B,CAAC;AAE/D,gFAAgF;AAEhF,iFAAiF;AACjF,MAAM,CAAC,MAAM,qBAAqB,GAAG,yBAAkC,CAAC;AACxE,iFAAiF;AACjF,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAA+B,CAAC;AAClE,qEAAqE;AACrE,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAA+B,CAAC;AAElE,gFAAgF;AAEhF,6BAA6B;AAC7B,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAA4B,CAAC;AAC7D,mCAAmC;AACnC,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAA4B,CAAC;AAC7D,+BAA+B;AAC/B,MAAM,CAAC,MAAM,kBAAkB,GAAG,qBAA8B,CAAC;AACjE,6BAA6B;AAC7B,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAA4B,CAAC;AAC7D,qCAAqC;AACrC,MAAM,CAAC,MAAM,YAAY,GAAG,eAAwB,CAAC;AACrD,6BAA6B;AAC7B,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAA4B,CAAC;AAE7D,oDAAoD;AAEpD,+FAA+F;AAC/F,MAAM,CAAC,MAAM,eAAe,GAAG,kBAA2B,CAAC;AAC3D,oDAAoD;AACpD,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,6EAA6E;AAC7E,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,6EAA6E;AAC7E,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AAEzD,gFAAgF;AAEhF,0BAA0B;AAC1B,MAAM,CAAC,MAAM,WAAW,GAAG,cAAuB,CAAC;AACnD,0DAA0D;AAC1D,MAAM,CAAC,MAAM,WAAW,GAAG,cAAuB,CAAC;AACnD,0BAA0B;AAC1B,MAAM,CAAC,MAAM,WAAW,GAAG,cAAuB,CAAC;AACnD,+BAA+B;AAC/B,MAAM,CAAC,MAAM,eAAe,GAAG,kBAA2B,CAAC;AAE3D,gFAAgF;AAEhF,0CAA0C;AAC1C,MAAM,CAAC,MAAM,kBAAkB,GAAG,qBAA8B,CAAC;AACjE,wCAAwC;AACxC,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAA+B,CAAC;AAClE,6CAA6C;AAC7C,MAAM,CAAC,MAAM,mBAAmB,GAAG,uBAAgC,CAAC;AACpE,2CAA2C;AAC3C,MAAM,CAAC,MAAM,iBAAiB,GAAG,qBAA8B,CAAC;AAEhE,gFAAgF;AAEhF,+BAA+B;AAC/B,MAAM,CAAC,MAAM,WAAW,GAAG,cAAuB,CAAC;AACnD,uCAAuC;AACvC,MAAM,CAAC,MAAM,YAAY,GAAG,eAAwB,CAAC;AACrD,uDAAuD;AACvD,MAAM,CAAC,MAAM,YAAY,GAAG,eAAwB,CAAC;AACrD,iCAAiC;AACjC,MAAM,CAAC,MAAM,aAAa,GAAG,gBAAyB,CAAC;AACvD,iCAAiC;AACjC,MAAM,CAAC,MAAM,aAAa,GAAG,gBAAyB,CAAC;AAEvD,gFAAgF;AAEhF,iCAAiC;AACjC,MAAM,CAAC,MAAM,aAAa,GAAG,gBAAyB,CAAC;AACvD,iCAAiC;AACjC,MAAM,CAAC,MAAM,aAAa,GAAG,gBAAyB,CAAC;AACvD,+BAA+B;AAC/B,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,oBAAoB;AACpB,MAAM,CAAC,MAAM,WAAW,GAAG,cAAuB,CAAC;AACnD,6CAA6C;AAC7C,MAAM,CAAC,MAAM,eAAe,GAAG,kBAA2B,CAAC;AAC3D,iCAAiC;AACjC,MAAM,CAAC,MAAM,mBAAmB,GAAG,sBAA+B,CAAC;AACnE,0CAA0C;AAC1C,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAA4B,CAAC;AAE7D,gFAAgF;AAEhF,wDAAwD;AACxD,MAAM,CAAC,MAAM,aAAa,GAAG,gBAAyB,CAAC;AACvD,6EAA6E;AAC7E,MAAM,CAAC,MAAM,kBAAkB,GAAG,qBAA8B,CAAC;AAEjE,gFAAgF;AAEhF,yDAAyD;AACzD,MAAM,CAAC,MAAM,cAAc,GAAG,kBAA2B,CAAC;AAC1D,oDAAoD;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,wBAAiC,CAAC;AACtE,uEAAuE;AACvE,MAAM,CAAC,MAAM,qBAAqB,GAAG,yBAAkC,CAAC;AACxE,uFAAuF;AACvF,MAAM,CAAC,MAAM,uBAAuB,GAAG,2BAAoC,CAAC;AAC5E,sDAAsD;AACtD,MAAM,CAAC,MAAM,uBAAuB,GAAG,2BAAoC,CAAC;AAC5E,2CAA2C;AAC3C,MAAM,CAAC,MAAM,QAAQ,GAAG,WAAoB,CAAC;AAC7C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,oBAA6B,CAAC;AAC9D,4CAA4C;AAC5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,oBAA6B,CAAC;AAC9D,iDAAiD;AACjD,MAAM,CAAC,MAAM,iBAAiB,GAAG,qBAA8B,CAAC;AAChE,4GAA4G;AAC5G,MAAM,CAAC,MAAM,mBAAmB,GAAG,uBAAgC,CAAC;AAEpE,gFAAgF;AAEhF,iFAAiF;AACjF,MAAM,CAAC,MAAM,eAAe,GAAG,kBAA2B,CAAC;AAC3D,oEAAoE;AACpE,MAAM,CAAC,MAAM,eAAe,GAAG,kBAA2B,CAAC;AAC3D,8EAA8E;AAC9E,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAA4B,CAAC;AAE7D,gFAAgF;AAEhF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,0BAAmC,CAAC;AAEzE,gFAAgF;AAEhF,+CAA+C;AAC/C,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAAoC,CAAC;AAC7E,oDAAoD;AACpD,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAAoC,CAAC;AAC7E,0DAA0D;AAC1D,MAAM,CAAC,MAAM,qBAAqB,GAAG,wBAAiC,CAAC;AACvE,4CAA4C;AAC5C,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAAoC,CAAC;AAC7E,iDAAiD;AACjD,MAAM,CAAC,MAAM,0BAA0B,GAAG,6BAAsC,CAAC;AACjF,iCAAiC;AACjC,MAAM,CAAC,MAAM,uBAAuB,GAAG,0BAAmC,CAAC;AAC3E,oDAAoD;AACpD,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAAoC,CAAC;AAC7E,6CAA6C;AAC7C,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAAoC,CAAC;AAC7E,mCAAmC;AACnC,MAAM,CAAC,MAAM,yBAAyB,GAAG,4BAAqC,CAAC;AAC/E,gCAAgC;AAChC,MAAM,CAAC,MAAM,sBAAsB,GAAG,yBAAkC,CAAC;AACzE,sDAAsD;AACtD,MAAM,CAAC,MAAM,qBAAqB,GAAG,wBAAiC,CAAC;AACvE,0BAA0B;AAC1B,MAAM,CAAC,MAAM,iBAAiB,GAAG,oBAA6B,CAAC;AAE/D,+EAA+E;AAE/E,2CAA2C;AAC3C,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AAEzD,gFAAgF;AAEhF,kCAAkC;AAClC,MAAM,CAAC,MAAM,WAAW,GAAG,cAAuB,CAAC;AACnD,2CAA2C;AAC3C,MAAM,CAAC,MAAM,UAAU,GAAG,aAAsB,CAAC;AACjD,gCAAgC;AAChC,MAAM,CAAC,MAAM,WAAW,GAAG,cAAuB,CAAC;AACnD,6BAA6B;AAC7B,MAAM,CAAC,MAAM,gBAAgB,GAAG,oBAA6B,CAAC;AAE9D,gFAAgF;AAChF,oDAAoD;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAgC,CAAC;AACrE,mCAAmC;AACnC,MAAM,CAAC,MAAM,kBAAkB,GAAG,qBAA8B,CAAC;AACjE,oDAAoD;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAgC,CAAC;AACrE,0FAA0F;AAC1F,MAAM,CAAC,MAAM,uBAAuB,GAAG,0BAAmC,CAAC;AAC3E,oEAAoE;AACpE,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAAoC,CAAC;AAC7E,2DAA2D;AAC3D,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAAoC,CAAC;AAC7E,yCAAyC;AACzC,MAAM,CAAC,MAAM,sBAAsB,GAAG,yBAAkC,CAAC;AACzE,gHAAgH;AAChH,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAAoC,CAAC;AAE7E,gFAAgF;AAEhF,wEAAwE;AACxE,MAAM,CAAC,MAAM,iBAAiB,GAAG,oBAA6B,CAAC;AAC/D,kFAAkF;AAClF,MAAM,CAAC,MAAM,0BAA0B,GAAG,6BAAsC,CAAC;AAEjF,yEAAyE;AACzE,MAAM,CAAC,MAAM,mBAAmB,GAAG,sBAA+B,CAAC;AAEnE;;;;iFAIiF;AACjF,MAAM,CAAC,MAAM,cAAc,GAAG,iBAA0B,CAAC;AACzD,oFAAoF;AACpF,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAA4B,CAAC;AAE7D,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,OAAO;IACP,IAAI;IAEJ,YAAY;IACZ,SAAS;IAET,oBAAoB;IACpB,cAAc;IACd,cAAc;IACd,cAAc;IACd,eAAe;IACf,mBAAmB;IACnB,oBAAoB;IACpB,iBAAiB;IACjB,YAAY;IACZ,WAAW;IACX,WAAW;IACX,cAAc;IACd,gBAAgB;IAChB,kBAAkB;IAClB,0BAA0B;IAC1B,kBAAkB;IAClB,2BAA2B;IAC3B,4BAA4B;IAC5B,cAAc;IACd,aAAa;IACb,cAAc;IACd,kBAAkB;IAClB,cAAc;IACd,sBAAsB;IAEtB,iBAAiB;IACjB,sBAAsB;IACtB,sBAAsB;IACtB,8BAA8B;IAC9B,wBAAwB;IACxB,2BAA2B;IAC3B,kBAAkB;IAElB,sBAAsB;IACtB,oBAAoB;IACpB,kBAAkB;IAClB,sBAAsB;IAEtB,gBAAgB;IAChB,qBAAqB;IACrB,qBAAqB;IACrB,mBAAmB;IACnB,oBAAoB;IAEpB,QAAQ;IACR,WAAW;IACX,aAAa;IACb,UAAU;IACV,WAAW;IAEX,MAAM;IACN,UAAU;IACV,SAAS;IACT,OAAO;IACP,eAAe;IAEf,kCAAkC;IAClC,oBAAoB;IACpB,wBAAwB;IACxB,wBAAwB;IACxB,gBAAgB;IAChB,oBAAoB;IAEpB,UAAU;IACV,cAAc;IACd,cAAc;IACd,mBAAmB;IACnB,mBAAmB;IACnB,qBAAqB;IACrB,cAAc;IACd,eAAe;IACf,oBAAoB;IACpB,sBAAsB;IACtB,qBAAqB;IACrB,qBAAqB;IACrB,uBAAuB;IACvB,oBAAoB;IACpB,sBAAsB;IACtB,uBAAuB;IACvB,yBAAyB;IACzB,sBAAsB;IACtB,mBAAmB;IACnB,qBAAqB;IACrB,qBAAqB;IACrB,gBAAgB;IAChB,UAAU;IACV,YAAY;IACZ,oBAAoB;IAEpB,YAAY;IACZ,kBAAkB;IAClB,eAAe;IACf,gBAAgB;IAChB,kBAAkB;IAClB,gBAAgB;IAChB,eAAe;IACf,iBAAiB;IAEjB,4BAA4B;IAC5B,qBAAqB;IACrB,kBAAkB;IAClB,kBAAkB;IAElB,iBAAiB;IACjB,gBAAgB;IAChB,gBAAgB;IAChB,kBAAkB;IAClB,gBAAgB;IAChB,YAAY;IACZ,gBAAgB;IAEhB,YAAY;IACZ,eAAe;IACf,cAAc;IACd,cAAc;IACd,cAAc;IAEd,QAAQ;IACR,WAAW;IACX,WAAW;IACX,WAAW;IACX,eAAe;IAEf,aAAa;IACb,kBAAkB;IAClB,kBAAkB;IAClB,mBAAmB;IACnB,iBAAiB;IAEjB,qBAAqB;IACrB,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,aAAa;IACb,aAAa;IAEb,SAAS;IACT,aAAa;IACb,aAAa;IACb,cAAc;IACd,WAAW;IACX,eAAe;IACf,mBAAmB;IACnB,gBAAgB;IAEhB,QAAQ;IACR,aAAa;IACb,kBAAkB;IAElB,QAAQ;IACR,cAAc;IACd,oBAAoB;IACpB,qBAAqB;IACrB,uBAAuB;IACvB,uBAAuB;IACvB,QAAQ;IACR,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IAEjB,kBAAkB;IAClB,eAAe;IACf,eAAe;IACf,gBAAgB;IAEhB,iCAAiC;IACjC,qBAAqB;IAErB,eAAe;IACf,wBAAwB;IACxB,wBAAwB;IACxB,qBAAqB;IACrB,wBAAwB;IACxB,0BAA0B;IAC1B,uBAAuB;IACvB,wBAAwB;IACxB,wBAAwB;IACxB,yBAAyB;IACzB,sBAAsB;IACtB,qBAAqB;IACrB,iBAAiB;IAEjB,YAAY;IACZ,cAAc;IAEd,QAAQ;IACR,WAAW;IACX,UAAU;IACV,WAAW;IACX,gBAAgB;IAEhB,eAAe;IACf,oBAAoB;IACpB,kBAAkB;IAClB,oBAAoB;IACpB,uBAAuB;IACvB,wBAAwB;IACxB,wBAAwB;IACxB,sBAAsB;IACtB,iBAAiB;IACjB,0BAA0B;IAC1B,wBAAwB;IAExB,wCAAwC;IACxC,mBAAmB;IAEnB,4BAA4B;IAC5B,cAAc;IACd,gBAAgB;CACR,CAAC"}
1
+ {"version":3,"file":"sse-events.js","sourceRoot":"","sources":["../../src/web/sse-events.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "aicodeman",
3
- "version": "1.41.0",
3
+ "version": "1.42.0",
4
4
  "description": "Self-hosted mission control for AI coding agents: run Claude Code, Codex, OpenCode, Gemini, DeepSeek, Grok and more 24/7 in tmux, from any device.",
5
+ "mcpName": "io.github.Ark0N/codeman",
5
6
  "type": "module",
6
7
  "main": "dist/index.js",
7
8
  "types": "dist/index.d.ts",
@@ -38,7 +39,7 @@
38
39
  "check:public-assets": "node scripts/check-public-assets.mjs",
39
40
  "capture:subagents": "node scripts/capture-subagent-screenshots.mjs",
40
41
  "changeset": "changeset",
41
- "version-packages": "changeset version && node scripts/sync-plugin.mjs && npm install --package-lock-only && node scripts/check-lockfile-sync.mjs",
42
+ "version-packages": "changeset version && node scripts/generate-whats-new.mjs && prettier --write src/web/public/whats-new.json && node scripts/sync-plugin.mjs && npm install --package-lock-only && node scripts/check-lockfile-sync.mjs",
42
43
  "check:lockfile": "node scripts/check-lockfile-sync.mjs",
43
44
  "check:plugin": "node scripts/sync-plugin.mjs --check && claude plugin validate --strict plugins/codeman && claude plugin validate --strict .claude-plugin/marketplace.json",
44
45
  "knip": "npx --yes knip@latest --config config/knip.json",
@@ -1,11 +1,13 @@
1
1
  ---
2
2
  name: codeman
3
3
  description: >-
4
- Drive Codeman, the session manager this agent is running inside, over its HTTP API:
5
- list sessions, start worker sessions, send them prompts, block until they finish
6
- (wait / wait-output / send-and-wait), read their output, and clean up; where
7
- available, message claude workers directly (Claude Code cross-session messaging).
8
- Use when asked to orchestrate or parallelize work across Codeman sessions, watch
4
+ Drive Codeman, the session manager this agent is running inside, over its HTTP API,
5
+ from any agent CLI (Claude Code, Codex, Gemini CLI, OpenCode, Antigravity, Grok
6
+ Build, DeepSeek Harness, OMP): list sessions, start worker sessions in any installed
7
+ CLI, send them prompts, block until they finish (wait / wait-output / send-and-wait),
8
+ read their output, and clean up; where available, message claude workers directly
9
+ (Claude Code cross-session messaging). Use when asked to orchestrate or parallelize
10
+ work across Codeman sessions, get a second opinion from another CLI or model, watch
9
11
  another session, or start and manage workers. Only usable inside a Codeman-managed
10
12
  session (CODEMAN_MUX=1); refuse to act otherwise.
11
13
  ---
@@ -29,17 +31,31 @@ worked multi-worker flows in [reference/recipes.md](reference/recipes.md), endpo
29
31
  tables and a symptom gallery in [reference/endpoints.md](reference/endpoints.md), and
30
32
  direct messaging to claude workers in [reference/messaging.md](reference/messaging.md).
31
33
 
32
- Workers in **every other mode** never receive this preamble, but they have the same
33
- environment: tell them *"other sessions: `codeman agent --help`"* — the bundled CLI
34
- (`ls`, `spawn`, `send`, `wait`, `read`, `interrupt`, `rm`) is the same verbs over the
35
- same endpoints, with the guards below (no control bytes, no self-delete, no guessed
36
- URL) enforced in code.
34
+ This skill works the same whichever CLI you are: Codeman puts it where each CLI looks
35
+ for skills (`.claude/skills/` for Claude Code, `.agents/skills/` for Codex, Gemini CLI,
36
+ OpenCode, Antigravity, Grok, DeepSeek and OMP). A **pi** or **shell** worker never gets
37
+ it, but has the same environment: tell it *"other sessions: `codeman agent --help`"*.
38
+ That bundled CLI (`ls`, `spawn`, `send`, `wait`, `read`, `interrupt`, `rm`) is the same
39
+ verbs over the same endpoints, with the guards below (no control bytes, no self-delete,
40
+ no guessed URL) enforced in code, and it is also your own way through when this
41
+ machine has no `jq` for the preamble below.
37
42
 
38
43
  ## 0. Guard and bootstrap
39
44
 
40
45
  If `CODEMAN_MUX` is not `1`, **stop and say so**. Do not guess an API URL; a server
41
46
  you are not part of is not yours to drive.
42
47
 
48
+ Two failures come from your CLI, not from Codeman: name them to the user instead of
49
+ retrying.
50
+
51
+ - **Every call fails at once with "couldn't connect" or "connection refused".** Your
52
+ CLI's sandbox blocks network access, even to this machine. Codex's default sandbox
53
+ does; it needs **Bypass approvals and sandbox** (Codeman App Settings, Codex).
54
+ - **`"${CURL[@]}" -o /dev/null -w '%{http_code}' "$API/api/v1/sessions/$SELF"` prints
55
+ `404`.** The commands you run do not carry this session's environment: Codex can run them in a shared background
56
+ process another session started, so `$CODEMAN_SESSION_ID` (and with it `$SELF` and
57
+ the delete guard) is that session's. Delete nothing; tell the user.
58
+
43
59
  ⚠️ **Your shell state does not survive between tool calls.** Each Bash call starts a
44
60
  fresh shell, so `$API`, `$SELF`, the `CURL` array and `delete_session` are all gone by
45
61
  the next call, and `$$` is a different pid. **The filesystem does survive**, so write
@@ -47,13 +63,14 @@ the preamble to a file once and source it afterwards, rather than re-pasting a
47
63
  hundred-odd lines at the top of every call (a half-re-pasted preamble used to be the
48
64
  single most likely way to break a run).
49
65
 
50
- **Codeman seeds the preamble file for you** when it spawns a claude session (server
51
- 1.18.3+), so the bootstrap is usually nothing at all: these are the two lines every
66
+ **Codeman seeds the preamble file for you** when it spawns your session (claude since
67
+ server 1.18.3, the other CLIs since this skill reached them), so the bootstrap is
68
+ usually nothing at all: these are the two lines every
52
69
  later call opens with, and your first REAL call performs them anyway:
53
70
 
54
71
  ```bash
55
72
  . "${XDG_CACHE_HOME:-$HOME/.cache}/codeman-agent-$CODEMAN_SESSION_ID.sh" 2>/dev/null
56
- [ "${CODEMAN_PREAMBLE:-}" = 1.33.4 ] || { echo "preamble missing or stale; run the full §0 block"; exit 1; }
73
+ [ "${CODEMAN_PREAMBLE:-}" = 1.42.0 ] || { echo "preamble missing or stale; run the full §0 block"; exit 1; }
57
74
  ```
58
75
 
59
76
  ⚠️ **Never spend a Bash call on this check alone.** §1's block opens with this same
@@ -81,8 +98,11 @@ PRE="${XDG_CACHE_HOME:-$HOME/.cache}/codeman-agent-$CODEMAN_SESSION_ID.sh"
81
98
  mkdir -p "$(dirname "$PRE")"
82
99
  # Rewrite unless the file already ends with THIS version's stamp, so a stale or a
83
100
  # half-written file self-heals here instead of costing you a round trip to rm it.
84
- grep -qs '^CODEMAN_PREAMBLE=1.33.4$' "$PRE" || (umask 077; cat > "$PRE" <<'PREAMBLE'
85
- # ---- Codeman agent preamble 1.33.4 (seeded by Codeman at session spawn; the SKILL.md §0 bootstrap rewrites it when missing or stale) ----
101
+ grep -qs '^CODEMAN_PREAMBLE=1.42.0$' "$PRE" || (umask 077; cat > "$PRE" <<'PREAMBLE'
102
+ # ---- Codeman agent preamble 1.42.0 (seeded by Codeman at session spawn; the SKILL.md §0 bootstrap rewrites it when missing or stale) ----
103
+ # Positional parameters are always written with braces, ${1} and never a bare dollar-digit: Claude Code
104
+ # replaces a bare one in a skill body with the matching word of the skill's arguments, and §0 is pasted
105
+ # from that body (test/agent-skill.test.ts pins it).
86
106
  API="${CODEMAN_API_URL:?CODEMAN_API_URL not set; refusing to guess}"
87
107
  SELF="${CODEMAN_SESSION_ID:?CODEMAN_SESSION_ID not set}"
88
108
  # Credentials, cheapest first. Your session has usually INHERITED the server's
@@ -91,7 +111,7 @@ SELF="${CODEMAN_SESSION_ID:?CODEMAN_SESSION_ID not set}"
91
111
  # reads. The data dir is wherever the hook-secret file lives. Values may be
92
112
  # quoted or `export`-prefixed.
93
113
  ENV_FILE="${CODEMAN_HOOK_SECRET_FILE:+${CODEMAN_HOOK_SECRET_FILE%hook-secret}.env}"
94
- envval() { sed -n "s/^\(export \)\{0,1\}$1=//p" "$ENV_FILE" | tail -1 | sed 's/^"\(.*\)"$/\1/; s/^'\''\(.*\)'\''$/\1/'; }
114
+ envval() { sed -n "s/^\(export \)\{0,1\}${1}=//p" "$ENV_FILE" | tail -1 | sed 's/^"\(.*\)"$/\1/; s/^'\''\(.*\)'\''$/\1/'; }
95
115
  if [ -z "${CODEMAN_PASSWORD:-}" ] && [ -n "$ENV_FILE" ] && [ -f "$ENV_FILE" ]; then
96
116
  CODEMAN_USERNAME=$(envval CODEMAN_USERNAME)
97
117
  CODEMAN_PASSWORD=$(envval CODEMAN_PASSWORD)
@@ -126,15 +146,15 @@ delete_session() {
126
146
 
127
147
  # ---- fast path: the four verbs, already written. §1 composes them. ----
128
148
  _composer_up() { # <sid> <timeoutMs> -> "true"/"false". `shift+tab` is the one token
129
- "${CURL[@]}" -G "$API/api/v1/sessions/$1/wait-output" \
149
+ "${CURL[@]}" -G "$API/api/v1/sessions/${1}/wait-output" \
130
150
  --data-urlencode 'match=shift+tab' --data-urlencode 'from=buffer' \
131
- --data-urlencode "timeout=$2" | jq -r '.data.wait.matched // false'
151
+ --data-urlencode "timeout=${2}" | jq -r '.data.wait.matched // false'
132
152
  }
133
153
  _dsh_up() { # <sid> <timeoutMs> -> "true"/"false". The DeepSeek Harness TUI's
134
154
  # composer glyph. Override with DSH_READY_MARK for a profile that draws another one.
135
- "${CURL[@]}" -G "$API/api/v1/sessions/$1/wait-output" \
155
+ "${CURL[@]}" -G "$API/api/v1/sessions/${1}/wait-output" \
136
156
  --data-urlencode "match=${DSH_READY_MARK:-❯}" --data-urlencode 'from=buffer' \
137
- --data-urlencode "timeout=$2" | jq -r '.data.wait.matched // false'
157
+ --data-urlencode "timeout=${2}" | jq -r '.data.wait.matched // false'
138
158
  }
139
159
  # ---- the workspace-trust dialog: READ the screen, never press Enter blind ----
140
160
  # Claude Code 2.1.252 dropped the option numbers, REVERSED them, and highlights
@@ -150,7 +170,7 @@ _trust_key() { # <sid> -> "confirm" | "move" | "" (nothing safe to press)
150
170
  # full=1 returns the RENDERED pane; a claude pane keeps no tmux history, so that
151
171
  # is the current frame rather than every repaint since launch. tail -1 anyway,
152
172
  # because the freshest marked row is the only one still true.
153
- "${CURL[@]}" -G "$API/api/v1/sessions/$1/terminal" --data-urlencode 'full=1' \
173
+ "${CURL[@]}" -G "$API/api/v1/sessions/${1}/terminal" --data-urlencode 'full=1' \
154
174
  | jq -r '.data.terminalBuffer // empty' \
155
175
  | sed -e "s/$(printf '\033')\[[0-9;?]*[a-zA-Z]//g" -e "s/$(printf '\033')[()][AB0]//g" \
156
176
  | tr -d ' \t' | grep -i '❯[0-9.]*\(yes,itrustthisfolder\|no,exit\)' | tail -1 \
@@ -168,7 +188,7 @@ _composer_text() { # <sid> -> the composer's text with ALL whitespace removed: "
168
188
  # the LAST `❯` line: Claude Code echoes a submitted prompt with the same glyph higher
169
189
  # up in the transcript, so only the last one says whether the text was taken.
170
190
  local t
171
- t=$("${CURL[@]}" -G "$API/api/v1/sessions/$1/terminal" --data-urlencode 'full=1' \
191
+ t=$("${CURL[@]}" -G "$API/api/v1/sessions/${1}/terminal" --data-urlencode 'full=1' \
172
192
  | jq -r '.data.terminalBuffer // empty' \
173
193
  | sed -e "s/$(printf '\033')\[[0-9;?]*[a-zA-Z]//g" -e "s/$(printf '\033')[()][AB0]//g" \
174
194
  | tr -d '\r' | grep -a '^[[:space:]]*❯' | tail -1)
@@ -178,7 +198,7 @@ _composer_text() { # <sid> -> the composer's text with ALL whitespace removed: "
178
198
  printf '%s' "$t" | sed 's/^[[:space:]]*❯//' | tr -d '[:space:]' | sed "s/$(printf '\302\240')//g"
179
199
  }
180
200
  _accept_trust() { # <sid> -> 0 once it has answered the dialog, 1 if it could not
181
- local sid="$1" k i=1
201
+ local sid="${1}" k i=1
182
202
  while [ "$i" -le 6 ]; do
183
203
  k=$(_trust_key "$sid")
184
204
  [ -n "$k" ] || return 1 # no dialog on screen, or a layout this cannot read
@@ -379,7 +399,7 @@ sendwait() {
379
399
  last_text() {
380
400
  local t="" prev="${2:-}"
381
401
  for _ in $(seq 1 15); do
382
- t=$("${CURL[@]}" "$API/api/v1/sessions/$1/last-response" | jq -r '.data.text // empty')
402
+ t=$("${CURL[@]}" "$API/api/v1/sessions/${1}/last-response" | jq -r '.data.text // empty')
383
403
  [ -n "$t" ] && [ "$t" != "$prev" ] && { printf '%s\n' "$t"; return 0; }
384
404
  sleep 1
385
405
  done
@@ -390,10 +410,10 @@ last_text() {
390
410
  # The stamp is the LAST line on purpose (a truncated write leaves it unset) and is kept
391
411
  # bare on purpose: the write condition above anchors on it with $, so an inline comment
392
412
  # here would fail that match and rewrite this file on every single bootstrap.
393
- CODEMAN_PREAMBLE=1.33.4
413
+ CODEMAN_PREAMBLE=1.42.0
394
414
  PREAMBLE
395
415
  )
396
- . "$PRE"; [ "${CODEMAN_PREAMBLE:-}" = 1.33.4 ] || { echo "preamble at $PRE is stale or truncated: rm it and re-run this block"; exit 1; }
416
+ . "$PRE"; [ "${CODEMAN_PREAMBLE:-}" = 1.42.0 ] || { echo "preamble at $PRE is stale or truncated: rm it and re-run this block"; exit 1; }
397
417
  ```
398
418
 
399
419
  Every later Bash call that touches the API starts with the same two loader lines from
@@ -444,7 +464,7 @@ and no per-call body to hand-build.
444
464
 
445
465
  ```bash
446
466
  . "${XDG_CACHE_HOME:-$HOME/.cache}/codeman-agent-$CODEMAN_SESSION_ID.sh" 2>/dev/null # §0 loader
447
- [ "${CODEMAN_PREAMBLE:-}" = 1.33.4 ] || { echo "preamble missing or stale; run the full §0 block"; exit 1; }
467
+ [ "${CODEMAN_PREAMBLE:-}" = 1.42.0 ] || { echo "preamble missing or stale; run the full §0 block"; exit 1; }
448
468
  N=(alpha beta) # INVENT one fresh case name per worker; never list cases first
449
469
  # (a name may carry a mode: `beta:deepseek`, see below)
450
470
  T=('reply with one line: the absolute path of your working directory'
@@ -1,4 +1,7 @@
1
- # ---- Codeman agent preamble 1.33.4 (seeded by Codeman at session spawn; the SKILL.md §0 bootstrap rewrites it when missing or stale) ----
1
+ # ---- Codeman agent preamble 1.42.0 (seeded by Codeman at session spawn; the SKILL.md §0 bootstrap rewrites it when missing or stale) ----
2
+ # Positional parameters are always written with braces, ${1} and never a bare dollar-digit: Claude Code
3
+ # replaces a bare one in a skill body with the matching word of the skill's arguments, and §0 is pasted
4
+ # from that body (test/agent-skill.test.ts pins it).
2
5
  API="${CODEMAN_API_URL:?CODEMAN_API_URL not set; refusing to guess}"
3
6
  SELF="${CODEMAN_SESSION_ID:?CODEMAN_SESSION_ID not set}"
4
7
  # Credentials, cheapest first. Your session has usually INHERITED the server's
@@ -7,7 +10,7 @@ SELF="${CODEMAN_SESSION_ID:?CODEMAN_SESSION_ID not set}"
7
10
  # reads. The data dir is wherever the hook-secret file lives. Values may be
8
11
  # quoted or `export`-prefixed.
9
12
  ENV_FILE="${CODEMAN_HOOK_SECRET_FILE:+${CODEMAN_HOOK_SECRET_FILE%hook-secret}.env}"
10
- envval() { sed -n "s/^\(export \)\{0,1\}$1=//p" "$ENV_FILE" | tail -1 | sed 's/^"\(.*\)"$/\1/; s/^'\''\(.*\)'\''$/\1/'; }
13
+ envval() { sed -n "s/^\(export \)\{0,1\}${1}=//p" "$ENV_FILE" | tail -1 | sed 's/^"\(.*\)"$/\1/; s/^'\''\(.*\)'\''$/\1/'; }
11
14
  if [ -z "${CODEMAN_PASSWORD:-}" ] && [ -n "$ENV_FILE" ] && [ -f "$ENV_FILE" ]; then
12
15
  CODEMAN_USERNAME=$(envval CODEMAN_USERNAME)
13
16
  CODEMAN_PASSWORD=$(envval CODEMAN_PASSWORD)
@@ -42,15 +45,15 @@ delete_session() {
42
45
 
43
46
  # ---- fast path: the four verbs, already written. §1 composes them. ----
44
47
  _composer_up() { # <sid> <timeoutMs> -> "true"/"false". `shift+tab` is the one token
45
- "${CURL[@]}" -G "$API/api/v1/sessions/$1/wait-output" \
48
+ "${CURL[@]}" -G "$API/api/v1/sessions/${1}/wait-output" \
46
49
  --data-urlencode 'match=shift+tab' --data-urlencode 'from=buffer' \
47
- --data-urlencode "timeout=$2" | jq -r '.data.wait.matched // false'
50
+ --data-urlencode "timeout=${2}" | jq -r '.data.wait.matched // false'
48
51
  }
49
52
  _dsh_up() { # <sid> <timeoutMs> -> "true"/"false". The DeepSeek Harness TUI's
50
53
  # composer glyph. Override with DSH_READY_MARK for a profile that draws another one.
51
- "${CURL[@]}" -G "$API/api/v1/sessions/$1/wait-output" \
54
+ "${CURL[@]}" -G "$API/api/v1/sessions/${1}/wait-output" \
52
55
  --data-urlencode "match=${DSH_READY_MARK:-❯}" --data-urlencode 'from=buffer' \
53
- --data-urlencode "timeout=$2" | jq -r '.data.wait.matched // false'
56
+ --data-urlencode "timeout=${2}" | jq -r '.data.wait.matched // false'
54
57
  }
55
58
  # ---- the workspace-trust dialog: READ the screen, never press Enter blind ----
56
59
  # Claude Code 2.1.252 dropped the option numbers, REVERSED them, and highlights
@@ -66,7 +69,7 @@ _trust_key() { # <sid> -> "confirm" | "move" | "" (nothing safe to press)
66
69
  # full=1 returns the RENDERED pane; a claude pane keeps no tmux history, so that
67
70
  # is the current frame rather than every repaint since launch. tail -1 anyway,
68
71
  # because the freshest marked row is the only one still true.
69
- "${CURL[@]}" -G "$API/api/v1/sessions/$1/terminal" --data-urlencode 'full=1' \
72
+ "${CURL[@]}" -G "$API/api/v1/sessions/${1}/terminal" --data-urlencode 'full=1' \
70
73
  | jq -r '.data.terminalBuffer // empty' \
71
74
  | sed -e "s/$(printf '\033')\[[0-9;?]*[a-zA-Z]//g" -e "s/$(printf '\033')[()][AB0]//g" \
72
75
  | tr -d ' \t' | grep -i '❯[0-9.]*\(yes,itrustthisfolder\|no,exit\)' | tail -1 \
@@ -84,7 +87,7 @@ _composer_text() { # <sid> -> the composer's text with ALL whitespace removed: "
84
87
  # the LAST `❯` line: Claude Code echoes a submitted prompt with the same glyph higher
85
88
  # up in the transcript, so only the last one says whether the text was taken.
86
89
  local t
87
- t=$("${CURL[@]}" -G "$API/api/v1/sessions/$1/terminal" --data-urlencode 'full=1' \
90
+ t=$("${CURL[@]}" -G "$API/api/v1/sessions/${1}/terminal" --data-urlencode 'full=1' \
88
91
  | jq -r '.data.terminalBuffer // empty' \
89
92
  | sed -e "s/$(printf '\033')\[[0-9;?]*[a-zA-Z]//g" -e "s/$(printf '\033')[()][AB0]//g" \
90
93
  | tr -d '\r' | grep -a '^[[:space:]]*❯' | tail -1)
@@ -94,7 +97,7 @@ _composer_text() { # <sid> -> the composer's text with ALL whitespace removed: "
94
97
  printf '%s' "$t" | sed 's/^[[:space:]]*❯//' | tr -d '[:space:]' | sed "s/$(printf '\302\240')//g"
95
98
  }
96
99
  _accept_trust() { # <sid> -> 0 once it has answered the dialog, 1 if it could not
97
- local sid="$1" k i=1
100
+ local sid="${1}" k i=1
98
101
  while [ "$i" -le 6 ]; do
99
102
  k=$(_trust_key "$sid")
100
103
  [ -n "$k" ] || return 1 # no dialog on screen, or a layout this cannot read
@@ -295,7 +298,7 @@ sendwait() {
295
298
  last_text() {
296
299
  local t="" prev="${2:-}"
297
300
  for _ in $(seq 1 15); do
298
- t=$("${CURL[@]}" "$API/api/v1/sessions/$1/last-response" | jq -r '.data.text // empty')
301
+ t=$("${CURL[@]}" "$API/api/v1/sessions/${1}/last-response" | jq -r '.data.text // empty')
299
302
  [ -n "$t" ] && [ "$t" != "$prev" ] && { printf '%s\n' "$t"; return 0; }
300
303
  sleep 1
301
304
  done
@@ -306,4 +309,4 @@ last_text() {
306
309
  # The stamp is the LAST line on purpose (a truncated write leaves it unset) and is kept
307
310
  # bare on purpose: the write condition above anchors on it with $, so an inline comment
308
311
  # here would fail that match and rewrite this file on every single bootstrap.
309
- CODEMAN_PREAMBLE=1.33.4
312
+ CODEMAN_PREAMBLE=1.42.0
@@ -635,7 +635,7 @@ Three bounded long-polls. Shared semantics:
635
635
  | `idle` | output stabilized + prompt detected, heuristic, can flap mid-turn | every mode |
636
636
  | `working` | session started producing output | every mode |
637
637
  | `stop` | Claude Code `stop` hook, the definitive end-of-turn | `claude` only |
638
- | `blocked` | `permission_prompt` / `elicitation_dialog` hook, the worker needs an answer | `claude` only |
638
+ | `blocked` | `permission_prompt` / `elicitation_dialog` hook, the worker needs an answer | `claude`; also `codex`, whose approval, question and trust dialogs Codeman reads off its screen (answer them in the terminal, never through the inbox) |
639
639
  | `exit` | PTY exited or session deleted | every mode |
640
640
 
641
641
  ⚠️ **`claude` mode is necessary for `stop`/`blocked`, not sufficient. The real
@@ -21,7 +21,7 @@ by sourcing the preamble file the §0 bootstrap wrote, and checking its version
21
21
 
22
22
  ```bash
23
23
  . "${XDG_CACHE_HOME:-$HOME/.cache}/codeman-agent-$CODEMAN_SESSION_ID.sh" 2>/dev/null
24
- [ "${CODEMAN_PREAMBLE:-}" = 1.33.4 ] || { echo "preamble missing or stale; re-run the §0 bootstrap"; exit 1; }
24
+ [ "${CODEMAN_PREAMBLE:-}" = 1.42.0 ] || { echo "preamble missing or stale; re-run the §0 bootstrap"; exit 1; }
25
25
  ```
26
26
 
27
27
  Do **not** re-paste the preamble body into each call. Sourcing it is what retires the
@@ -391,10 +391,10 @@ the worker remembering to print a token.
391
391
 
392
392
  ## Flow 5: watch for a worker stuck on a prompt
393
393
 
394
- Claude workers can block on a permission dialog. `blocked` is a wait signal
395
- (claude-mode only, and it needs Codeman's hooks in the worker's directory: see Flow 7
396
- step 4), so watch for it and surface the question to the user instead of guessing an
397
- answer. Expect it routinely on a server whose `claudeMode` is not the default bypass
394
+ Claude workers can block on a permission dialog. `blocked` is a wait signal (a claude
395
+ worker needs Codeman's hooks in its directory for it: see Flow 7 step 4; a codex worker
396
+ gets it from its screen, see below), so watch for it and surface the question to the user
397
+ instead of guessing an answer. Expect it routinely on a server whose `claudeMode` is not the default bypass
398
398
  one (the same setting that decides whether the readiness marker in Flow 1 ever
399
399
  appears):
400
400
 
@@ -409,10 +409,13 @@ if [ "$(jq -r '.data.wait.signal' <<<"$R")" = blocked ]; then
409
409
  fi
410
410
  ```
411
411
 
412
- Where the worker has no hooks, `blocked` never fires and a stuck worker looks exactly
413
- like a slow one: your marker wait burns its whole bound. The fallback is the same
414
- terminal tail, taken when a bound runs out, and the same rule about not answering it
415
- yourself.
412
+ Codex workers are the one exception without hooks: Codeman reads their approval,
413
+ question and trust dialogs off the screen, so the same watch works with
414
+ `until=blocked,exit` (codex has no `stop`, a `400`), and the dialog is answered in the
415
+ terminal, never through the Approvals Inbox. Anywhere else without hooks, `blocked` never
416
+ fires and a stuck worker looks exactly like a slow one: your marker wait burns its whole
417
+ bound. The fallback is the same terminal tail, taken when a bound runs out, and the same
418
+ rule about not answering it yourself.
416
419
 
417
420
  ## Flow 6: claude fan-out over messaging
418
421
 
@@ -377,7 +377,9 @@ only when the workspace actually has them, see [§5.1](#51-where-to-spawn)) **an
377
377
  `deepseek`** — the one external CLI that reports its own lifecycle, so its `stop` is a
378
378
  real end-of-turn signal rather than a guess. On
379
379
  `shell`/`opencode`/`codex`/`gemini`/`antigravity`/`pi`/`grok`/`omp`, requesting them explicitly is a
380
- 400, and lifecycle transitions there are coarse (a short shell command may emit **no**
380
+ 400 (except `blocked` on `codex`, which Codeman reads off its screen when an approval,
381
+ question or trust dialog is up; a wait for it answers at once if one already is), and
382
+ lifecycle transitions there are coarse (a short shell command may emit **no**
381
383
  `idle` transition at all, verified live), so synchronize those with markers.
382
384
 
383
385
  ⚠️ A dsh session can still refuse them for a per-SESSION reason: `statusReporting: