botmux 3.10.0 → 3.23.1

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 (3338) hide show
  1. package/README.en.md +57 -4
  2. package/README.md +89 -4
  3. package/package.json +47 -31
  4. package/scripts/install-path-entry.mjs +263 -0
  5. package/scripts/postinstall-bin.mjs +388 -0
  6. package/dist/.runtime-build-id +0 -1
  7. package/dist/adapters/adopt-route.d.ts +0 -63
  8. package/dist/adapters/adopt-route.d.ts.map +0 -1
  9. package/dist/adapters/adopt-route.js +0 -196
  10. package/dist/adapters/adopt-route.js.map +0 -1
  11. package/dist/adapters/backend/capabilities.d.ts +0 -17
  12. package/dist/adapters/backend/capabilities.d.ts.map +0 -1
  13. package/dist/adapters/backend/capabilities.js +0 -22
  14. package/dist/adapters/backend/capabilities.js.map +0 -1
  15. package/dist/adapters/backend/critical-control-key.d.ts +0 -19
  16. package/dist/adapters/backend/critical-control-key.d.ts.map +0 -1
  17. package/dist/adapters/backend/critical-control-key.js +0 -34
  18. package/dist/adapters/backend/critical-control-key.js.map +0 -1
  19. package/dist/adapters/backend/herdr-backend.d.ts +0 -164
  20. package/dist/adapters/backend/herdr-backend.d.ts.map +0 -1
  21. package/dist/adapters/backend/herdr-backend.js +0 -1073
  22. package/dist/adapters/backend/herdr-backend.js.map +0 -1
  23. package/dist/adapters/backend/liveness-gate.d.ts +0 -38
  24. package/dist/adapters/backend/liveness-gate.d.ts.map +0 -1
  25. package/dist/adapters/backend/liveness-gate.js +0 -53
  26. package/dist/adapters/backend/liveness-gate.js.map +0 -1
  27. package/dist/adapters/backend/pty-backend.d.ts +0 -23
  28. package/dist/adapters/backend/pty-backend.d.ts.map +0 -1
  29. package/dist/adapters/backend/pty-backend.js +0 -70
  30. package/dist/adapters/backend/pty-backend.js.map +0 -1
  31. package/dist/adapters/backend/reproduce-command.d.ts +0 -39
  32. package/dist/adapters/backend/reproduce-command.d.ts.map +0 -1
  33. package/dist/adapters/backend/reproduce-command.js +0 -63
  34. package/dist/adapters/backend/reproduce-command.js.map +0 -1
  35. package/dist/adapters/backend/riff-backend.d.ts +0 -272
  36. package/dist/adapters/backend/riff-backend.d.ts.map +0 -1
  37. package/dist/adapters/backend/riff-backend.js +0 -1017
  38. package/dist/adapters/backend/riff-backend.js.map +0 -1
  39. package/dist/adapters/backend/sandbox.d.ts +0 -298
  40. package/dist/adapters/backend/sandbox.d.ts.map +0 -1
  41. package/dist/adapters/backend/sandbox.js +0 -1196
  42. package/dist/adapters/backend/sandbox.js.map +0 -1
  43. package/dist/adapters/backend/session-backend-selector.d.ts +0 -113
  44. package/dist/adapters/backend/session-backend-selector.d.ts.map +0 -1
  45. package/dist/adapters/backend/session-backend-selector.js +0 -344
  46. package/dist/adapters/backend/session-backend-selector.js.map +0 -1
  47. package/dist/adapters/backend/tmux-backend.d.ts +0 -292
  48. package/dist/adapters/backend/tmux-backend.d.ts.map +0 -1
  49. package/dist/adapters/backend/tmux-backend.js +0 -821
  50. package/dist/adapters/backend/tmux-backend.js.map +0 -1
  51. package/dist/adapters/backend/tmux-pipe-backend.d.ts +0 -237
  52. package/dist/adapters/backend/tmux-pipe-backend.d.ts.map +0 -1
  53. package/dist/adapters/backend/tmux-pipe-backend.js +0 -786
  54. package/dist/adapters/backend/tmux-pipe-backend.js.map +0 -1
  55. package/dist/adapters/backend/types.d.ts +0 -183
  56. package/dist/adapters/backend/types.d.ts.map +0 -1
  57. package/dist/adapters/backend/types.js +0 -19
  58. package/dist/adapters/backend/types.js.map +0 -1
  59. package/dist/adapters/backend/zellij-backend.d.ts +0 -173
  60. package/dist/adapters/backend/zellij-backend.d.ts.map +0 -1
  61. package/dist/adapters/backend/zellij-backend.js +0 -466
  62. package/dist/adapters/backend/zellij-backend.js.map +0 -1
  63. package/dist/adapters/backend/zellij-observe-backend.d.ts +0 -95
  64. package/dist/adapters/backend/zellij-observe-backend.d.ts.map +0 -1
  65. package/dist/adapters/backend/zellij-observe-backend.js +0 -301
  66. package/dist/adapters/backend/zellij-observe-backend.js.map +0 -1
  67. package/dist/adapters/backend/zellij-socket-probe.d.ts +0 -18
  68. package/dist/adapters/backend/zellij-socket-probe.d.ts.map +0 -1
  69. package/dist/adapters/backend/zellij-socket-probe.js +0 -146
  70. package/dist/adapters/backend/zellij-socket-probe.js.map +0 -1
  71. package/dist/adapters/backend/zmx-backend.d.ts +0 -284
  72. package/dist/adapters/backend/zmx-backend.d.ts.map +0 -1
  73. package/dist/adapters/backend/zmx-backend.js +0 -2387
  74. package/dist/adapters/backend/zmx-backend.js.map +0 -1
  75. package/dist/adapters/cli/aiden.d.ts +0 -4
  76. package/dist/adapters/cli/aiden.d.ts.map +0 -1
  77. package/dist/adapters/cli/aiden.js +0 -46
  78. package/dist/adapters/cli/aiden.js.map +0 -1
  79. package/dist/adapters/cli/antigravity.d.ts +0 -4
  80. package/dist/adapters/cli/antigravity.d.ts.map +0 -1
  81. package/dist/adapters/cli/antigravity.js +0 -274
  82. package/dist/adapters/cli/antigravity.js.map +0 -1
  83. package/dist/adapters/cli/claude-code.d.ts +0 -121
  84. package/dist/adapters/cli/claude-code.d.ts.map +0 -1
  85. package/dist/adapters/cli/claude-code.js +0 -1128
  86. package/dist/adapters/cli/claude-code.js.map +0 -1
  87. package/dist/adapters/cli/coco.d.ts +0 -4
  88. package/dist/adapters/cli/coco.d.ts.map +0 -1
  89. package/dist/adapters/cli/coco.js +0 -315
  90. package/dist/adapters/cli/coco.js.map +0 -1
  91. package/dist/adapters/cli/codex-app-turn.d.ts +0 -59
  92. package/dist/adapters/cli/codex-app-turn.d.ts.map +0 -1
  93. package/dist/adapters/cli/codex-app-turn.js +0 -136
  94. package/dist/adapters/cli/codex-app-turn.js.map +0 -1
  95. package/dist/adapters/cli/codex-app.d.ts +0 -4
  96. package/dist/adapters/cli/codex-app.d.ts.map +0 -1
  97. package/dist/adapters/cli/codex-app.js +0 -88
  98. package/dist/adapters/cli/codex-app.js.map +0 -1
  99. package/dist/adapters/cli/codex.d.ts +0 -4
  100. package/dist/adapters/cli/codex.d.ts.map +0 -1
  101. package/dist/adapters/cli/codex.js +0 -439
  102. package/dist/adapters/cli/codex.js.map +0 -1
  103. package/dist/adapters/cli/copilot.d.ts +0 -10
  104. package/dist/adapters/cli/copilot.d.ts.map +0 -1
  105. package/dist/adapters/cli/copilot.js +0 -73
  106. package/dist/adapters/cli/copilot.js.map +0 -1
  107. package/dist/adapters/cli/cursor.d.ts +0 -4
  108. package/dist/adapters/cli/cursor.d.ts.map +0 -1
  109. package/dist/adapters/cli/cursor.js +0 -104
  110. package/dist/adapters/cli/cursor.js.map +0 -1
  111. package/dist/adapters/cli/fs-policy.d.ts +0 -385
  112. package/dist/adapters/cli/fs-policy.d.ts.map +0 -1
  113. package/dist/adapters/cli/fs-policy.js +0 -889
  114. package/dist/adapters/cli/fs-policy.js.map +0 -1
  115. package/dist/adapters/cli/gemini.d.ts +0 -4
  116. package/dist/adapters/cli/gemini.d.ts.map +0 -1
  117. package/dist/adapters/cli/gemini.js +0 -53
  118. package/dist/adapters/cli/gemini.js.map +0 -1
  119. package/dist/adapters/cli/genius.d.ts +0 -4
  120. package/dist/adapters/cli/genius.d.ts.map +0 -1
  121. package/dist/adapters/cli/genius.js +0 -230
  122. package/dist/adapters/cli/genius.js.map +0 -1
  123. package/dist/adapters/cli/grok.d.ts +0 -76
  124. package/dist/adapters/cli/grok.d.ts.map +0 -1
  125. package/dist/adapters/cli/grok.js +0 -310
  126. package/dist/adapters/cli/grok.js.map +0 -1
  127. package/dist/adapters/cli/hermes.d.ts +0 -4
  128. package/dist/adapters/cli/hermes.d.ts.map +0 -1
  129. package/dist/adapters/cli/hermes.js +0 -83
  130. package/dist/adapters/cli/hermes.js.map +0 -1
  131. package/dist/adapters/cli/kimi.d.ts +0 -4
  132. package/dist/adapters/cli/kimi.d.ts.map +0 -1
  133. package/dist/adapters/cli/kimi.js +0 -54
  134. package/dist/adapters/cli/kimi.js.map +0 -1
  135. package/dist/adapters/cli/kiro-cli.d.ts +0 -4
  136. package/dist/adapters/cli/kiro-cli.d.ts.map +0 -1
  137. package/dist/adapters/cli/kiro-cli.js +0 -73
  138. package/dist/adapters/cli/kiro-cli.js.map +0 -1
  139. package/dist/adapters/cli/mir.d.ts +0 -4
  140. package/dist/adapters/cli/mir.d.ts.map +0 -1
  141. package/dist/adapters/cli/mir.js +0 -81
  142. package/dist/adapters/cli/mir.js.map +0 -1
  143. package/dist/adapters/cli/mira.d.ts +0 -4
  144. package/dist/adapters/cli/mira.d.ts.map +0 -1
  145. package/dist/adapters/cli/mira.js +0 -54
  146. package/dist/adapters/cli/mira.js.map +0 -1
  147. package/dist/adapters/cli/mtr.d.ts +0 -5
  148. package/dist/adapters/cli/mtr.d.ts.map +0 -1
  149. package/dist/adapters/cli/mtr.js +0 -69
  150. package/dist/adapters/cli/mtr.js.map +0 -1
  151. package/dist/adapters/cli/oh-my-pi.d.ts +0 -5
  152. package/dist/adapters/cli/oh-my-pi.d.ts.map +0 -1
  153. package/dist/adapters/cli/oh-my-pi.js +0 -186
  154. package/dist/adapters/cli/oh-my-pi.js.map +0 -1
  155. package/dist/adapters/cli/opencode.d.ts +0 -4
  156. package/dist/adapters/cli/opencode.d.ts.map +0 -1
  157. package/dist/adapters/cli/opencode.js +0 -305
  158. package/dist/adapters/cli/opencode.js.map +0 -1
  159. package/dist/adapters/cli/pi-initial-prompt-extension.d.ts +0 -27
  160. package/dist/adapters/cli/pi-initial-prompt-extension.d.ts.map +0 -1
  161. package/dist/adapters/cli/pi-initial-prompt-extension.js +0 -38
  162. package/dist/adapters/cli/pi-initial-prompt-extension.js.map +0 -1
  163. package/dist/adapters/cli/pi-initial-prompt.d.ts +0 -21
  164. package/dist/adapters/cli/pi-initial-prompt.d.ts.map +0 -1
  165. package/dist/adapters/cli/pi-initial-prompt.js +0 -59
  166. package/dist/adapters/cli/pi-initial-prompt.js.map +0 -1
  167. package/dist/adapters/cli/pi.d.ts +0 -58
  168. package/dist/adapters/cli/pi.d.ts.map +0 -1
  169. package/dist/adapters/cli/pi.js +0 -121
  170. package/dist/adapters/cli/pi.js.map +0 -1
  171. package/dist/adapters/cli/read-isolation.d.ts +0 -198
  172. package/dist/adapters/cli/read-isolation.d.ts.map +0 -1
  173. package/dist/adapters/cli/read-isolation.js +0 -335
  174. package/dist/adapters/cli/read-isolation.js.map +0 -1
  175. package/dist/adapters/cli/reasonix.d.ts +0 -35
  176. package/dist/adapters/cli/reasonix.d.ts.map +0 -1
  177. package/dist/adapters/cli/reasonix.js +0 -236
  178. package/dist/adapters/cli/reasonix.js.map +0 -1
  179. package/dist/adapters/cli/registry.d.ts +0 -51
  180. package/dist/adapters/cli/registry.d.ts.map +0 -1
  181. package/dist/adapters/cli/registry.js +0 -192
  182. package/dist/adapters/cli/registry.js.map +0 -1
  183. package/dist/adapters/cli/relay.d.ts +0 -26
  184. package/dist/adapters/cli/relay.d.ts.map +0 -1
  185. package/dist/adapters/cli/relay.js +0 -55
  186. package/dist/adapters/cli/relay.js.map +0 -1
  187. package/dist/adapters/cli/riff.d.ts +0 -14
  188. package/dist/adapters/cli/riff.d.ts.map +0 -1
  189. package/dist/adapters/cli/riff.js +0 -35
  190. package/dist/adapters/cli/riff.js.map +0 -1
  191. package/dist/adapters/cli/runner-control-channel.d.ts +0 -32
  192. package/dist/adapters/cli/runner-control-channel.d.ts.map +0 -1
  193. package/dist/adapters/cli/runner-control-channel.js +0 -104
  194. package/dist/adapters/cli/runner-control-channel.js.map +0 -1
  195. package/dist/adapters/cli/runner-input.d.ts +0 -67
  196. package/dist/adapters/cli/runner-input.d.ts.map +0 -1
  197. package/dist/adapters/cli/runner-input.js +0 -131
  198. package/dist/adapters/cli/runner-input.js.map +0 -1
  199. package/dist/adapters/cli/runtime.d.ts +0 -81
  200. package/dist/adapters/cli/runtime.d.ts.map +0 -1
  201. package/dist/adapters/cli/runtime.js +0 -243
  202. package/dist/adapters/cli/runtime.js.map +0 -1
  203. package/dist/adapters/cli/seed.d.ts +0 -29
  204. package/dist/adapters/cli/seed.d.ts.map +0 -1
  205. package/dist/adapters/cli/seed.js +0 -68
  206. package/dist/adapters/cli/seed.js.map +0 -1
  207. package/dist/adapters/cli/shared-hints.d.ts +0 -45
  208. package/dist/adapters/cli/shared-hints.d.ts.map +0 -1
  209. package/dist/adapters/cli/shared-hints.js +0 -144
  210. package/dist/adapters/cli/shared-hints.js.map +0 -1
  211. package/dist/adapters/cli/strict-input-handle.d.ts +0 -13
  212. package/dist/adapters/cli/strict-input-handle.d.ts.map +0 -1
  213. package/dist/adapters/cli/strict-input-handle.js +0 -39
  214. package/dist/adapters/cli/strict-input-handle.js.map +0 -1
  215. package/dist/adapters/cli/traex.d.ts +0 -28
  216. package/dist/adapters/cli/traex.d.ts.map +0 -1
  217. package/dist/adapters/cli/traex.js +0 -343
  218. package/dist/adapters/cli/traex.js.map +0 -1
  219. package/dist/adapters/cli/types.d.ts +0 -460
  220. package/dist/adapters/cli/types.d.ts.map +0 -1
  221. package/dist/adapters/cli/types.js +0 -2
  222. package/dist/adapters/cli/types.js.map +0 -1
  223. package/dist/adapters/coco-ask-plugin.d.ts +0 -25
  224. package/dist/adapters/coco-ask-plugin.d.ts.map +0 -1
  225. package/dist/adapters/coco-ask-plugin.js +0 -73
  226. package/dist/adapters/coco-ask-plugin.js.map +0 -1
  227. package/dist/adapters/hook-command.d.ts +0 -27
  228. package/dist/adapters/hook-command.d.ts.map +0 -1
  229. package/dist/adapters/hook-command.js +0 -50
  230. package/dist/adapters/hook-command.js.map +0 -1
  231. package/dist/adapters/hook-installer.d.ts +0 -37
  232. package/dist/adapters/hook-installer.d.ts.map +0 -1
  233. package/dist/adapters/hook-installer.js +0 -494
  234. package/dist/adapters/hook-installer.js.map +0 -1
  235. package/dist/autostart.d.ts +0 -14
  236. package/dist/autostart.d.ts.map +0 -1
  237. package/dist/autostart.js +0 -516
  238. package/dist/autostart.js.map +0 -1
  239. package/dist/bot-registry.d.ts +0 -942
  240. package/dist/bot-registry.d.ts.map +0 -1
  241. package/dist/bot-registry.js +0 -1909
  242. package/dist/bot-registry.js.map +0 -1
  243. package/dist/cli/arg-utils.d.ts +0 -11
  244. package/dist/cli/arg-utils.d.ts.map +0 -1
  245. package/dist/cli/arg-utils.js +0 -25
  246. package/dist/cli/arg-utils.js.map +0 -1
  247. package/dist/cli/bots-list-output.d.ts +0 -29
  248. package/dist/cli/bots-list-output.d.ts.map +0 -1
  249. package/dist/cli/bots-list-output.js +0 -32
  250. package/dist/cli/bots-list-output.js.map +0 -1
  251. package/dist/cli/capabilities.d.ts +0 -24
  252. package/dist/cli/capabilities.d.ts.map +0 -1
  253. package/dist/cli/capabilities.js +0 -25
  254. package/dist/cli/capabilities.js.map +0 -1
  255. package/dist/cli/create-group-resolver.d.ts +0 -75
  256. package/dist/cli/create-group-resolver.d.ts.map +0 -1
  257. package/dist/cli/create-group-resolver.js +0 -123
  258. package/dist/cli/create-group-resolver.js.map +0 -1
  259. package/dist/cli/daemon-lifecycle-env.d.ts +0 -9
  260. package/dist/cli/daemon-lifecycle-env.d.ts.map +0 -1
  261. package/dist/cli/daemon-lifecycle-env.js +0 -43
  262. package/dist/cli/daemon-lifecycle-env.js.map +0 -1
  263. package/dist/cli/dashboard-endpoint.d.ts +0 -76
  264. package/dist/cli/dashboard-endpoint.d.ts.map +0 -1
  265. package/dist/cli/dashboard-endpoint.js +0 -161
  266. package/dist/cli/dashboard-endpoint.js.map +0 -1
  267. package/dist/cli/deferred-topic-send.d.ts +0 -48
  268. package/dist/cli/deferred-topic-send.d.ts.map +0 -1
  269. package/dist/cli/deferred-topic-send.js +0 -86
  270. package/dist/cli/deferred-topic-send.js.map +0 -1
  271. package/dist/cli/exact-chat-grant-client.d.ts +0 -48
  272. package/dist/cli/exact-chat-grant-client.d.ts.map +0 -1
  273. package/dist/cli/exact-chat-grant-client.js +0 -108
  274. package/dist/cli/exact-chat-grant-client.js.map +0 -1
  275. package/dist/cli/exact-chat-grant.d.ts +0 -18
  276. package/dist/cli/exact-chat-grant.d.ts.map +0 -1
  277. package/dist/cli/exact-chat-grant.js +0 -97
  278. package/dist/cli/exact-chat-grant.js.map +0 -1
  279. package/dist/cli/pm2-command.d.ts +0 -7
  280. package/dist/cli/pm2-command.d.ts.map +0 -1
  281. package/dist/cli/pm2-command.js +0 -25
  282. package/dist/cli/pm2-command.js.map +0 -1
  283. package/dist/cli/quoted-render.d.ts +0 -41
  284. package/dist/cli/quoted-render.d.ts.map +0 -1
  285. package/dist/cli/quoted-render.js +0 -44
  286. package/dist/cli/quoted-render.js.map +0 -1
  287. package/dist/cli/saved-workflow.d.ts +0 -25
  288. package/dist/cli/saved-workflow.d.ts.map +0 -1
  289. package/dist/cli/saved-workflow.js +0 -338
  290. package/dist/cli/saved-workflow.js.map +0 -1
  291. package/dist/cli/send-dispatch.d.ts +0 -125
  292. package/dist/cli/send-dispatch.d.ts.map +0 -1
  293. package/dist/cli/send-dispatch.js +0 -320
  294. package/dist/cli/send-dispatch.js.map +0 -1
  295. package/dist/cli/session-list-liveness.d.ts +0 -41
  296. package/dist/cli/session-list-liveness.d.ts.map +0 -1
  297. package/dist/cli/session-list-liveness.js +0 -48
  298. package/dist/cli/session-list-liveness.js.map +0 -1
  299. package/dist/cli/stdin-encoding.d.ts +0 -24
  300. package/dist/cli/stdin-encoding.d.ts.map +0 -1
  301. package/dist/cli/stdin-encoding.js +0 -56
  302. package/dist/cli/stdin-encoding.js.map +0 -1
  303. package/dist/cli/v3-run-cancel.d.ts +0 -47
  304. package/dist/cli/v3-run-cancel.d.ts.map +0 -1
  305. package/dist/cli/v3-run-cancel.js +0 -96
  306. package/dist/cli/v3-run-cancel.js.map +0 -1
  307. package/dist/cli/vc-agent.d.ts +0 -2
  308. package/dist/cli/vc-agent.d.ts.map +0 -1
  309. package/dist/cli/vc-agent.js +0 -384
  310. package/dist/cli/vc-agent.js.map +0 -1
  311. package/dist/cli/workflow-migration.d.ts +0 -39
  312. package/dist/cli/workflow-migration.d.ts.map +0 -1
  313. package/dist/cli/workflow-migration.js +0 -302
  314. package/dist/cli/workflow-migration.js.map +0 -1
  315. package/dist/cli/workflow-run-archive.d.ts +0 -29
  316. package/dist/cli/workflow-run-archive.d.ts.map +0 -1
  317. package/dist/cli/workflow-run-archive.js +0 -183
  318. package/dist/cli/workflow-run-archive.js.map +0 -1
  319. package/dist/cli/workflow.d.ts +0 -8
  320. package/dist/cli/workflow.d.ts.map +0 -1
  321. package/dist/cli/workflow.js +0 -109
  322. package/dist/cli/workflow.js.map +0 -1
  323. package/dist/cli/zmx-managed-attach.d.ts +0 -41
  324. package/dist/cli/zmx-managed-attach.d.ts.map +0 -1
  325. package/dist/cli/zmx-managed-attach.js +0 -72
  326. package/dist/cli/zmx-managed-attach.js.map +0 -1
  327. package/dist/cli.d.ts +0 -35
  328. package/dist/cli.d.ts.map +0 -1
  329. package/dist/cli.js +0 -10769
  330. package/dist/cli.js.map +0 -1
  331. package/dist/codex-app-runner.d.ts +0 -3
  332. package/dist/codex-app-runner.d.ts.map +0 -1
  333. package/dist/codex-app-runner.js +0 -565
  334. package/dist/codex-app-runner.js.map +0 -1
  335. package/dist/codex-rpc-engine.d.ts +0 -136
  336. package/dist/codex-rpc-engine.d.ts.map +0 -1
  337. package/dist/codex-rpc-engine.js +0 -640
  338. package/dist/codex-rpc-engine.js.map +0 -1
  339. package/dist/codex-rpc-lifecycle.d.ts +0 -157
  340. package/dist/codex-rpc-lifecycle.d.ts.map +0 -1
  341. package/dist/codex-rpc-lifecycle.js +0 -238
  342. package/dist/codex-rpc-lifecycle.js.map +0 -1
  343. package/dist/config.d.ts +0 -146
  344. package/dist/config.d.ts.map +0 -1
  345. package/dist/config.js +0 -293
  346. package/dist/config.js.map +0 -1
  347. package/dist/core/ask-api.d.ts +0 -29
  348. package/dist/core/ask-api.d.ts.map +0 -1
  349. package/dist/core/ask-api.js +0 -116
  350. package/dist/core/ask-api.js.map +0 -1
  351. package/dist/core/ask-args.d.ts +0 -53
  352. package/dist/core/ask-args.d.ts.map +0 -1
  353. package/dist/core/ask-args.js +0 -122
  354. package/dist/core/ask-args.js.map +0 -1
  355. package/dist/core/ask-broker.d.ts +0 -166
  356. package/dist/core/ask-broker.d.ts.map +0 -1
  357. package/dist/core/ask-broker.js +0 -451
  358. package/dist/core/ask-broker.js.map +0 -1
  359. package/dist/core/ask-hook/claude-code.d.ts +0 -50
  360. package/dist/core/ask-hook/claude-code.d.ts.map +0 -1
  361. package/dist/core/ask-hook/claude-code.js +0 -151
  362. package/dist/core/ask-hook/claude-code.js.map +0 -1
  363. package/dist/core/ask-hook/coco.d.ts +0 -22
  364. package/dist/core/ask-hook/coco.d.ts.map +0 -1
  365. package/dist/core/ask-hook/coco.js +0 -35
  366. package/dist/core/ask-hook/coco.js.map +0 -1
  367. package/dist/core/ask-hook/codex.d.ts +0 -43
  368. package/dist/core/ask-hook/codex.d.ts.map +0 -1
  369. package/dist/core/ask-hook/codex.js +0 -70
  370. package/dist/core/ask-hook/codex.js.map +0 -1
  371. package/dist/core/ask-hook/opencode.d.ts +0 -39
  372. package/dist/core/ask-hook/opencode.d.ts.map +0 -1
  373. package/dist/core/ask-hook/opencode.js +0 -109
  374. package/dist/core/ask-hook/opencode.js.map +0 -1
  375. package/dist/core/ask-hook/registry.d.ts +0 -3
  376. package/dist/core/ask-hook/registry.d.ts.map +0 -1
  377. package/dist/core/ask-hook/registry.js +0 -25
  378. package/dist/core/ask-hook/registry.js.map +0 -1
  379. package/dist/core/ask-hook/types.d.ts +0 -28
  380. package/dist/core/ask-hook/types.d.ts.map +0 -1
  381. package/dist/core/ask-hook/types.js +0 -2
  382. package/dist/core/ask-hook/types.js.map +0 -1
  383. package/dist/core/ask-types.d.ts +0 -157
  384. package/dist/core/ask-types.d.ts.map +0 -1
  385. package/dist/core/ask-types.js +0 -28
  386. package/dist/core/ask-types.js.map +0 -1
  387. package/dist/core/attachment-path.d.ts +0 -3
  388. package/dist/core/attachment-path.d.ts.map +0 -1
  389. package/dist/core/attachment-path.js +0 -8
  390. package/dist/core/attachment-path.js.map +0 -1
  391. package/dist/core/auto-start.d.ts +0 -84
  392. package/dist/core/auto-start.d.ts.map +0 -1
  393. package/dist/core/auto-start.js +0 -92
  394. package/dist/core/auto-start.js.map +0 -1
  395. package/dist/core/bot-live-control.d.ts +0 -41
  396. package/dist/core/bot-live-control.d.ts.map +0 -1
  397. package/dist/core/bot-live-control.js +0 -135
  398. package/dist/core/bot-live-control.js.map +0 -1
  399. package/dist/core/bot-turn-mutation-gate.d.ts +0 -24
  400. package/dist/core/bot-turn-mutation-gate.d.ts.map +0 -1
  401. package/dist/core/bot-turn-mutation-gate.js +0 -369
  402. package/dist/core/bot-turn-mutation-gate.js.map +0 -1
  403. package/dist/core/botmux-wrapper.d.ts +0 -41
  404. package/dist/core/botmux-wrapper.d.ts.map +0 -1
  405. package/dist/core/botmux-wrapper.js +0 -63
  406. package/dist/core/botmux-wrapper.js.map +0 -1
  407. package/dist/core/chat-rename.d.ts +0 -27
  408. package/dist/core/chat-rename.d.ts.map +0 -1
  409. package/dist/core/chat-rename.js +0 -53
  410. package/dist/core/chat-rename.js.map +0 -1
  411. package/dist/core/cli-runtime-display.d.ts +0 -19
  412. package/dist/core/cli-runtime-display.d.ts.map +0 -1
  413. package/dist/core/cli-runtime-display.js +0 -28
  414. package/dist/core/cli-runtime-display.js.map +0 -1
  415. package/dist/core/cli-runtime-update.d.ts +0 -129
  416. package/dist/core/cli-runtime-update.d.ts.map +0 -1
  417. package/dist/core/cli-runtime-update.js +0 -737
  418. package/dist/core/cli-runtime-update.js.map +0 -1
  419. package/dist/core/closed-session-card.d.ts +0 -16
  420. package/dist/core/closed-session-card.d.ts.map +0 -1
  421. package/dist/core/closed-session-card.js +0 -80
  422. package/dist/core/closed-session-card.js.map +0 -1
  423. package/dist/core/coco-picker-keys.d.ts +0 -31
  424. package/dist/core/coco-picker-keys.d.ts.map +0 -1
  425. package/dist/core/coco-picker-keys.js +0 -60
  426. package/dist/core/coco-picker-keys.js.map +0 -1
  427. package/dist/core/command-discovery.d.ts +0 -33
  428. package/dist/core/command-discovery.d.ts.map +0 -1
  429. package/dist/core/command-discovery.js +0 -261
  430. package/dist/core/command-discovery.js.map +0 -1
  431. package/dist/core/command-handler.d.ts +0 -163
  432. package/dist/core/command-handler.d.ts.map +0 -1
  433. package/dist/core/command-handler.js +0 -4108
  434. package/dist/core/command-handler.js.map +0 -1
  435. package/dist/core/cost-calculator.d.ts +0 -69
  436. package/dist/core/cost-calculator.d.ts.map +0 -1
  437. package/dist/core/cost-calculator.js +0 -603
  438. package/dist/core/cost-calculator.js.map +0 -1
  439. package/dist/core/current-turn-provenance.d.ts +0 -39
  440. package/dist/core/current-turn-provenance.d.ts.map +0 -1
  441. package/dist/core/current-turn-provenance.js +0 -122
  442. package/dist/core/current-turn-provenance.js.map +0 -1
  443. package/dist/core/daemon-config-fence.d.ts +0 -8
  444. package/dist/core/daemon-config-fence.d.ts.map +0 -1
  445. package/dist/core/daemon-config-fence.js +0 -13
  446. package/dist/core/daemon-config-fence.js.map +0 -1
  447. package/dist/core/daemon-heartbeat.d.ts +0 -15
  448. package/dist/core/daemon-heartbeat.d.ts.map +0 -1
  449. package/dist/core/daemon-heartbeat.js +0 -83
  450. package/dist/core/daemon-heartbeat.js.map +0 -1
  451. package/dist/core/daemon-ipc-auth.d.ts +0 -20
  452. package/dist/core/daemon-ipc-auth.d.ts.map +0 -1
  453. package/dist/core/daemon-ipc-auth.js +0 -44
  454. package/dist/core/daemon-ipc-auth.js.map +0 -1
  455. package/dist/core/daemon-ipc-session-auth.d.ts +0 -37
  456. package/dist/core/daemon-ipc-session-auth.d.ts.map +0 -1
  457. package/dist/core/daemon-ipc-session-auth.js +0 -35
  458. package/dist/core/daemon-ipc-session-auth.js.map +0 -1
  459. package/dist/core/dashboard-command/groups.d.ts +0 -20
  460. package/dist/core/dashboard-command/groups.d.ts.map +0 -1
  461. package/dist/core/dashboard-command/groups.js +0 -52
  462. package/dist/core/dashboard-command/groups.js.map +0 -1
  463. package/dist/core/dashboard-command/index.d.ts +0 -28
  464. package/dist/core/dashboard-command/index.d.ts.map +0 -1
  465. package/dist/core/dashboard-command/index.js +0 -81
  466. package/dist/core/dashboard-command/index.js.map +0 -1
  467. package/dist/core/dashboard-command/overview.d.ts +0 -29
  468. package/dist/core/dashboard-command/overview.d.ts.map +0 -1
  469. package/dist/core/dashboard-command/overview.js +0 -61
  470. package/dist/core/dashboard-command/overview.js.map +0 -1
  471. package/dist/core/dashboard-command/owner-gate.d.ts +0 -41
  472. package/dist/core/dashboard-command/owner-gate.d.ts.map +0 -1
  473. package/dist/core/dashboard-command/owner-gate.js +0 -40
  474. package/dist/core/dashboard-command/owner-gate.js.map +0 -1
  475. package/dist/core/dashboard-command/schedules.d.ts +0 -20
  476. package/dist/core/dashboard-command/schedules.d.ts.map +0 -1
  477. package/dist/core/dashboard-command/schedules.js +0 -47
  478. package/dist/core/dashboard-command/schedules.js.map +0 -1
  479. package/dist/core/dashboard-command/sessions.d.ts +0 -22
  480. package/dist/core/dashboard-command/sessions.d.ts.map +0 -1
  481. package/dist/core/dashboard-command/sessions.js +0 -43
  482. package/dist/core/dashboard-command/sessions.js.map +0 -1
  483. package/dist/core/dashboard-command/settings.d.ts +0 -21
  484. package/dist/core/dashboard-command/settings.d.ts.map +0 -1
  485. package/dist/core/dashboard-command/settings.js +0 -55
  486. package/dist/core/dashboard-command/settings.js.map +0 -1
  487. package/dist/core/dashboard-command/stub.d.ts +0 -16
  488. package/dist/core/dashboard-command/stub.d.ts.map +0 -1
  489. package/dist/core/dashboard-command/stub.js +0 -27
  490. package/dist/core/dashboard-command/stub.js.map +0 -1
  491. package/dist/core/dashboard-events.d.ts +0 -67
  492. package/dist/core/dashboard-events.d.ts.map +0 -1
  493. package/dist/core/dashboard-events.js +0 -23
  494. package/dist/core/dashboard-events.js.map +0 -1
  495. package/dist/core/dashboard-images.d.ts +0 -29
  496. package/dist/core/dashboard-images.d.ts.map +0 -1
  497. package/dist/core/dashboard-images.js +0 -113
  498. package/dist/core/dashboard-images.js.map +0 -1
  499. package/dist/core/dashboard-ipc-server.d.ts +0 -114
  500. package/dist/core/dashboard-ipc-server.d.ts.map +0 -1
  501. package/dist/core/dashboard-ipc-server.js +0 -4398
  502. package/dist/core/dashboard-ipc-server.js.map +0 -1
  503. package/dist/core/dashboard-locate.d.ts +0 -20
  504. package/dist/core/dashboard-locate.d.ts.map +0 -1
  505. package/dist/core/dashboard-locate.js +0 -26
  506. package/dist/core/dashboard-locate.js.map +0 -1
  507. package/dist/core/dashboard-rows.d.ts +0 -117
  508. package/dist/core/dashboard-rows.d.ts.map +0 -1
  509. package/dist/core/dashboard-rows.js +0 -206
  510. package/dist/core/dashboard-rows.js.map +0 -1
  511. package/dist/core/dashboard-secret.d.ts +0 -3
  512. package/dist/core/dashboard-secret.d.ts.map +0 -1
  513. package/dist/core/dashboard-secret.js +0 -7
  514. package/dist/core/dashboard-secret.js.map +0 -1
  515. package/dist/core/dashboard-url.d.ts +0 -79
  516. package/dist/core/dashboard-url.d.ts.map +0 -1
  517. package/dist/core/dashboard-url.js +0 -107
  518. package/dist/core/dashboard-url.js.map +0 -1
  519. package/dist/core/data-dir.d.ts +0 -24
  520. package/dist/core/data-dir.d.ts.map +0 -1
  521. package/dist/core/data-dir.js +0 -48
  522. package/dist/core/data-dir.js.map +0 -1
  523. package/dist/core/deferred-schedule-settlement.d.ts +0 -20
  524. package/dist/core/deferred-schedule-settlement.d.ts.map +0 -1
  525. package/dist/core/deferred-schedule-settlement.js +0 -18
  526. package/dist/core/deferred-schedule-settlement.js.map +0 -1
  527. package/dist/core/deferred-topic-binding.d.ts +0 -19
  528. package/dist/core/deferred-topic-binding.d.ts.map +0 -1
  529. package/dist/core/deferred-topic-binding.js +0 -55
  530. package/dist/core/deferred-topic-binding.js.map +0 -1
  531. package/dist/core/device-isolation-activation.d.ts +0 -56
  532. package/dist/core/device-isolation-activation.d.ts.map +0 -1
  533. package/dist/core/device-isolation-activation.js +0 -110
  534. package/dist/core/device-isolation-activation.js.map +0 -1
  535. package/dist/core/device-isolation-daemon.d.ts +0 -106
  536. package/dist/core/device-isolation-daemon.d.ts.map +0 -1
  537. package/dist/core/device-isolation-daemon.js +0 -674
  538. package/dist/core/device-isolation-daemon.js.map +0 -1
  539. package/dist/core/dispatch-registry.d.ts +0 -12
  540. package/dist/core/dispatch-registry.d.ts.map +0 -1
  541. package/dist/core/dispatch-registry.js +0 -33
  542. package/dist/core/dispatch-registry.js.map +0 -1
  543. package/dist/core/dispatch.d.ts +0 -364
  544. package/dist/core/dispatch.d.ts.map +0 -1
  545. package/dist/core/dispatch.js +0 -527
  546. package/dist/core/dispatch.js.map +0 -1
  547. package/dist/core/doc-comment-poller.d.ts +0 -36
  548. package/dist/core/doc-comment-poller.d.ts.map +0 -1
  549. package/dist/core/doc-comment-poller.js +0 -60
  550. package/dist/core/doc-comment-poller.js.map +0 -1
  551. package/dist/core/doc-comment-prompt.d.ts +0 -90
  552. package/dist/core/doc-comment-prompt.d.ts.map +0 -1
  553. package/dist/core/doc-comment-prompt.js +0 -252
  554. package/dist/core/doc-comment-prompt.js.map +0 -1
  555. package/dist/core/doc-watch-command.d.ts +0 -22
  556. package/dist/core/doc-watch-command.d.ts.map +0 -1
  557. package/dist/core/doc-watch-command.js +0 -41
  558. package/dist/core/doc-watch-command.js.map +0 -1
  559. package/dist/core/github-auth.d.ts +0 -13
  560. package/dist/core/github-auth.d.ts.map +0 -1
  561. package/dist/core/github-auth.js +0 -82
  562. package/dist/core/github-auth.js.map +0 -1
  563. package/dist/core/host-overload-alert.d.ts +0 -232
  564. package/dist/core/host-overload-alert.d.ts.map +0 -1
  565. package/dist/core/host-overload-alert.js +0 -354
  566. package/dist/core/host-overload-alert.js.map +0 -1
  567. package/dist/core/idle-worker-sweeper.d.ts +0 -39
  568. package/dist/core/idle-worker-sweeper.d.ts.map +0 -1
  569. package/dist/core/idle-worker-sweeper.js +0 -63
  570. package/dist/core/idle-worker-sweeper.js.map +0 -1
  571. package/dist/core/inflight-input-tracker.d.ts +0 -54
  572. package/dist/core/inflight-input-tracker.d.ts.map +0 -1
  573. package/dist/core/inflight-input-tracker.js +0 -64
  574. package/dist/core/inflight-input-tracker.js.map +0 -1
  575. package/dist/core/inherit-peer.d.ts +0 -19
  576. package/dist/core/inherit-peer.d.ts.map +0 -1
  577. package/dist/core/inherit-peer.js +0 -55
  578. package/dist/core/inherit-peer.js.map +0 -1
  579. package/dist/core/initial-user-turn.d.ts +0 -14
  580. package/dist/core/initial-user-turn.d.ts.map +0 -1
  581. package/dist/core/initial-user-turn.js +0 -65
  582. package/dist/core/initial-user-turn.js.map +0 -1
  583. package/dist/core/inject-queue-policy.d.ts +0 -70
  584. package/dist/core/inject-queue-policy.d.ts.map +0 -1
  585. package/dist/core/inject-queue-policy.js +0 -30
  586. package/dist/core/inject-queue-policy.js.map +0 -1
  587. package/dist/core/input-turn-dedupe.d.ts +0 -20
  588. package/dist/core/input-turn-dedupe.d.ts.map +0 -1
  589. package/dist/core/input-turn-dedupe.js +0 -57
  590. package/dist/core/input-turn-dedupe.js.map +0 -1
  591. package/dist/core/local-terminal-opener.d.ts +0 -43
  592. package/dist/core/local-terminal-opener.d.ts.map +0 -1
  593. package/dist/core/local-terminal-opener.js +0 -230
  594. package/dist/core/local-terminal-opener.js.map +0 -1
  595. package/dist/core/maintenance-schedule.d.ts +0 -34
  596. package/dist/core/maintenance-schedule.d.ts.map +0 -1
  597. package/dist/core/maintenance-schedule.js +0 -72
  598. package/dist/core/maintenance-schedule.js.map +0 -1
  599. package/dist/core/maintenance.d.ts +0 -114
  600. package/dist/core/maintenance.d.ts.map +0 -1
  601. package/dist/core/maintenance.js +0 -340
  602. package/dist/core/maintenance.js.map +0 -1
  603. package/dist/core/managed-origin-capability.d.ts +0 -37
  604. package/dist/core/managed-origin-capability.d.ts.map +0 -1
  605. package/dist/core/managed-origin-capability.js +0 -100
  606. package/dist/core/managed-origin-capability.js.map +0 -1
  607. package/dist/core/passthrough-commands.d.ts +0 -56
  608. package/dist/core/passthrough-commands.d.ts.map +0 -1
  609. package/dist/core/passthrough-commands.js +0 -120
  610. package/dist/core/passthrough-commands.js.map +0 -1
  611. package/dist/core/pending-response.d.ts +0 -4
  612. package/dist/core/pending-response.d.ts.map +0 -1
  613. package/dist/core/pending-response.js +0 -11
  614. package/dist/core/pending-response.js.map +0 -1
  615. package/dist/core/per-bot-env.d.ts +0 -38
  616. package/dist/core/per-bot-env.d.ts.map +0 -1
  617. package/dist/core/per-bot-env.js +0 -94
  618. package/dist/core/per-bot-env.js.map +0 -1
  619. package/dist/core/persistent-backend.d.ts +0 -107
  620. package/dist/core/persistent-backend.d.ts.map +0 -1
  621. package/dist/core/persistent-backend.js +0 -235
  622. package/dist/core/persistent-backend.js.map +0 -1
  623. package/dist/core/plugins/cli-generation.d.ts +0 -30
  624. package/dist/core/plugins/cli-generation.d.ts.map +0 -1
  625. package/dist/core/plugins/cli-generation.js +0 -62
  626. package/dist/core/plugins/cli-generation.js.map +0 -1
  627. package/dist/core/plugins/convention-scanner.d.ts +0 -4
  628. package/dist/core/plugins/convention-scanner.d.ts.map +0 -1
  629. package/dist/core/plugins/convention-scanner.js +0 -202
  630. package/dist/core/plugins/convention-scanner.js.map +0 -1
  631. package/dist/core/plugins/dependencies.d.ts +0 -5
  632. package/dist/core/plugins/dependencies.d.ts.map +0 -1
  633. package/dist/core/plugins/dependencies.js +0 -50
  634. package/dist/core/plugins/dependencies.js.map +0 -1
  635. package/dist/core/plugins/effective.d.ts +0 -5
  636. package/dist/core/plugins/effective.d.ts.map +0 -1
  637. package/dist/core/plugins/effective.js +0 -16
  638. package/dist/core/plugins/effective.js.map +0 -1
  639. package/dist/core/plugins/ids.d.ts +0 -4
  640. package/dist/core/plugins/ids.d.ts.map +0 -1
  641. package/dist/core/plugins/ids.js +0 -30
  642. package/dist/core/plugins/ids.js.map +0 -1
  643. package/dist/core/plugins/init.d.ts +0 -23
  644. package/dist/core/plugins/init.d.ts.map +0 -1
  645. package/dist/core/plugins/init.js +0 -332
  646. package/dist/core/plugins/init.js.map +0 -1
  647. package/dist/core/plugins/install.d.ts +0 -14
  648. package/dist/core/plugins/install.d.ts.map +0 -1
  649. package/dist/core/plugins/install.js +0 -234
  650. package/dist/core/plugins/install.js.map +0 -1
  651. package/dist/core/plugins/manifest.d.ts +0 -4
  652. package/dist/core/plugins/manifest.d.ts.map +0 -1
  653. package/dist/core/plugins/manifest.js +0 -78
  654. package/dist/core/plugins/manifest.js.map +0 -1
  655. package/dist/core/plugins/materializer.d.ts +0 -16
  656. package/dist/core/plugins/materializer.d.ts.map +0 -1
  657. package/dist/core/plugins/materializer.js +0 -73
  658. package/dist/core/plugins/materializer.js.map +0 -1
  659. package/dist/core/plugins/mcp/environment.d.ts +0 -12
  660. package/dist/core/plugins/mcp/environment.d.ts.map +0 -1
  661. package/dist/core/plugins/mcp/environment.js +0 -17
  662. package/dist/core/plugins/mcp/environment.js.map +0 -1
  663. package/dist/core/plugins/mcp/gateway-installer.d.ts +0 -16
  664. package/dist/core/plugins/mcp/gateway-installer.d.ts.map +0 -1
  665. package/dist/core/plugins/mcp/gateway-installer.js +0 -273
  666. package/dist/core/plugins/mcp/gateway-installer.js.map +0 -1
  667. package/dist/core/plugins/mcp/gateway.d.ts +0 -63
  668. package/dist/core/plugins/mcp/gateway.d.ts.map +0 -1
  669. package/dist/core/plugins/mcp/gateway.js +0 -620
  670. package/dist/core/plugins/mcp/gateway.js.map +0 -1
  671. package/dist/core/plugins/mcp/host.d.ts +0 -18
  672. package/dist/core/plugins/mcp/host.d.ts.map +0 -1
  673. package/dist/core/plugins/mcp/host.js +0 -126
  674. package/dist/core/plugins/mcp/host.js.map +0 -1
  675. package/dist/core/plugins/mcp/private-store.d.ts +0 -15
  676. package/dist/core/plugins/mcp/private-store.d.ts.map +0 -1
  677. package/dist/core/plugins/mcp/private-store.js +0 -162
  678. package/dist/core/plugins/mcp/private-store.js.map +0 -1
  679. package/dist/core/plugins/mcp/session-runtime.d.ts +0 -25
  680. package/dist/core/plugins/mcp/session-runtime.d.ts.map +0 -1
  681. package/dist/core/plugins/mcp/session-runtime.js +0 -76
  682. package/dist/core/plugins/mcp/session-runtime.js.map +0 -1
  683. package/dist/core/plugins/mcp/socket-auth.d.ts +0 -9
  684. package/dist/core/plugins/mcp/socket-auth.d.ts.map +0 -1
  685. package/dist/core/plugins/mcp/socket-auth.js +0 -94
  686. package/dist/core/plugins/mcp/socket-auth.js.map +0 -1
  687. package/dist/core/plugins/paths.d.ts +0 -17
  688. package/dist/core/plugins/paths.d.ts.map +0 -1
  689. package/dist/core/plugins/paths.js +0 -71
  690. package/dist/core/plugins/paths.js.map +0 -1
  691. package/dist/core/plugins/pm2.d.ts +0 -13
  692. package/dist/core/plugins/pm2.d.ts.map +0 -1
  693. package/dist/core/plugins/pm2.js +0 -73
  694. package/dist/core/plugins/pm2.js.map +0 -1
  695. package/dist/core/plugins/runtime.d.ts +0 -54
  696. package/dist/core/plugins/runtime.d.ts.map +0 -1
  697. package/dist/core/plugins/runtime.js +0 -158
  698. package/dist/core/plugins/runtime.js.map +0 -1
  699. package/dist/core/plugins/service-manager.d.ts +0 -46
  700. package/dist/core/plugins/service-manager.d.ts.map +0 -1
  701. package/dist/core/plugins/service-manager.js +0 -403
  702. package/dist/core/plugins/service-manager.js.map +0 -1
  703. package/dist/core/plugins/session-manifest.d.ts +0 -25
  704. package/dist/core/plugins/session-manifest.d.ts.map +0 -1
  705. package/dist/core/plugins/session-manifest.js +0 -58
  706. package/dist/core/plugins/session-manifest.js.map +0 -1
  707. package/dist/core/plugins/skills.d.ts +0 -7
  708. package/dist/core/plugins/skills.d.ts.map +0 -1
  709. package/dist/core/plugins/skills.js +0 -36
  710. package/dist/core/plugins/skills.js.map +0 -1
  711. package/dist/core/plugins/types.d.ts +0 -139
  712. package/dist/core/plugins/types.d.ts.map +0 -1
  713. package/dist/core/plugins/types.js +0 -2
  714. package/dist/core/plugins/types.js.map +0 -1
  715. package/dist/core/reply-target.d.ts +0 -62
  716. package/dist/core/reply-target.d.ts.map +0 -1
  717. package/dist/core/reply-target.js +0 -122
  718. package/dist/core/reply-target.js.map +0 -1
  719. package/dist/core/resource-monitor/attribution.d.ts +0 -70
  720. package/dist/core/resource-monitor/attribution.d.ts.map +0 -1
  721. package/dist/core/resource-monitor/attribution.js +0 -238
  722. package/dist/core/resource-monitor/attribution.js.map +0 -1
  723. package/dist/core/resource-monitor/darwin.d.ts +0 -145
  724. package/dist/core/resource-monitor/darwin.d.ts.map +0 -1
  725. package/dist/core/resource-monitor/darwin.js +0 -360
  726. package/dist/core/resource-monitor/darwin.js.map +0 -1
  727. package/dist/core/resource-monitor/procfs.d.ts +0 -22
  728. package/dist/core/resource-monitor/procfs.d.ts.map +0 -1
  729. package/dist/core/resource-monitor/procfs.js +0 -140
  730. package/dist/core/resource-monitor/procfs.js.map +0 -1
  731. package/dist/core/resource-monitor/ring-buffer.d.ts +0 -15
  732. package/dist/core/resource-monitor/ring-buffer.d.ts.map +0 -1
  733. package/dist/core/resource-monitor/ring-buffer.js +0 -61
  734. package/dist/core/resource-monitor/ring-buffer.js.map +0 -1
  735. package/dist/core/resource-monitor/runtime.d.ts +0 -31
  736. package/dist/core/resource-monitor/runtime.d.ts.map +0 -1
  737. package/dist/core/resource-monitor/runtime.js +0 -92
  738. package/dist/core/resource-monitor/runtime.js.map +0 -1
  739. package/dist/core/resource-monitor/top-selector.d.ts +0 -18
  740. package/dist/core/resource-monitor/top-selector.d.ts.map +0 -1
  741. package/dist/core/resource-monitor/top-selector.js +0 -57
  742. package/dist/core/resource-monitor/top-selector.js.map +0 -1
  743. package/dist/core/resource-monitor/types.d.ts +0 -181
  744. package/dist/core/resource-monitor/types.d.ts.map +0 -1
  745. package/dist/core/resource-monitor/types.js +0 -2
  746. package/dist/core/resource-monitor/types.js.map +0 -1
  747. package/dist/core/restart-coordinator.d.ts +0 -28
  748. package/dist/core/restart-coordinator.d.ts.map +0 -1
  749. package/dist/core/restart-coordinator.js +0 -82
  750. package/dist/core/restart-coordinator.js.map +0 -1
  751. package/dist/core/restart-followup-policy.d.ts +0 -112
  752. package/dist/core/restart-followup-policy.d.ts.map +0 -1
  753. package/dist/core/restart-followup-policy.js +0 -49
  754. package/dist/core/restart-followup-policy.js.map +0 -1
  755. package/dist/core/restart-report.d.ts +0 -63
  756. package/dist/core/restart-report.d.ts.map +0 -1
  757. package/dist/core/restart-report.js +0 -122
  758. package/dist/core/restart-report.js.map +0 -1
  759. package/dist/core/role-library.d.ts +0 -62
  760. package/dist/core/role-library.d.ts.map +0 -1
  761. package/dist/core/role-library.js +0 -183
  762. package/dist/core/role-library.js.map +0 -1
  763. package/dist/core/role-resolver.d.ts +0 -81
  764. package/dist/core/role-resolver.d.ts.map +0 -1
  765. package/dist/core/role-resolver.js +0 -306
  766. package/dist/core/role-resolver.js.map +0 -1
  767. package/dist/core/scheduler.d.ts +0 -173
  768. package/dist/core/scheduler.d.ts.map +0 -1
  769. package/dist/core/scheduler.js +0 -799
  770. package/dist/core/scheduler.js.map +0 -1
  771. package/dist/core/session-activity.d.ts +0 -43
  772. package/dist/core/session-activity.d.ts.map +0 -1
  773. package/dist/core/session-activity.js +0 -131
  774. package/dist/core/session-activity.js.map +0 -1
  775. package/dist/core/session-board.d.ts +0 -13
  776. package/dist/core/session-board.d.ts.map +0 -1
  777. package/dist/core/session-board.js +0 -28
  778. package/dist/core/session-board.js.map +0 -1
  779. package/dist/core/session-create.d.ts +0 -109
  780. package/dist/core/session-create.d.ts.map +0 -1
  781. package/dist/core/session-create.js +0 -183
  782. package/dist/core/session-create.js.map +0 -1
  783. package/dist/core/session-cwd.d.ts +0 -14
  784. package/dist/core/session-cwd.d.ts.map +0 -1
  785. package/dist/core/session-cwd.js +0 -25
  786. package/dist/core/session-cwd.js.map +0 -1
  787. package/dist/core/session-discovery.d.ts +0 -241
  788. package/dist/core/session-discovery.d.ts.map +0 -1
  789. package/dist/core/session-discovery.js +0 -1127
  790. package/dist/core/session-discovery.js.map +0 -1
  791. package/dist/core/session-liveness.d.ts +0 -41
  792. package/dist/core/session-liveness.d.ts.map +0 -1
  793. package/dist/core/session-liveness.js +0 -50
  794. package/dist/core/session-liveness.js.map +0 -1
  795. package/dist/core/session-manager.d.ts +0 -383
  796. package/dist/core/session-manager.d.ts.map +0 -1
  797. package/dist/core/session-manager.js +0 -2545
  798. package/dist/core/session-manager.js.map +0 -1
  799. package/dist/core/session-marker.d.ts +0 -56
  800. package/dist/core/session-marker.d.ts.map +0 -1
  801. package/dist/core/session-marker.js +0 -240
  802. package/dist/core/session-marker.js.map +0 -1
  803. package/dist/core/session-message-preview.d.ts +0 -20
  804. package/dist/core/session-message-preview.d.ts.map +0 -1
  805. package/dist/core/session-message-preview.js +0 -188
  806. package/dist/core/session-message-preview.js.map +0 -1
  807. package/dist/core/session-ready-handshake.d.ts +0 -11
  808. package/dist/core/session-ready-handshake.d.ts.map +0 -1
  809. package/dist/core/session-ready-handshake.js +0 -41
  810. package/dist/core/session-ready-handshake.js.map +0 -1
  811. package/dist/core/session-rename.d.ts +0 -25
  812. package/dist/core/session-rename.d.ts.map +0 -1
  813. package/dist/core/session-rename.js +0 -43
  814. package/dist/core/session-rename.js.map +0 -1
  815. package/dist/core/session-row-enrichment.d.ts +0 -15
  816. package/dist/core/session-row-enrichment.d.ts.map +0 -1
  817. package/dist/core/session-row-enrichment.js +0 -93
  818. package/dist/core/session-row-enrichment.js.map +0 -1
  819. package/dist/core/session-title.d.ts +0 -23
  820. package/dist/core/session-title.d.ts.map +0 -1
  821. package/dist/core/session-title.js +0 -88
  822. package/dist/core/session-title.js.map +0 -1
  823. package/dist/core/silent-schedule-turns.d.ts +0 -5
  824. package/dist/core/silent-schedule-turns.d.ts.map +0 -1
  825. package/dist/core/silent-schedule-turns.js +0 -47
  826. package/dist/core/silent-schedule-turns.js.map +0 -1
  827. package/dist/core/skills/claude-plugin-delivery.d.ts +0 -6
  828. package/dist/core/skills/claude-plugin-delivery.d.ts.map +0 -1
  829. package/dist/core/skills/claude-plugin-delivery.js +0 -21
  830. package/dist/core/skills/claude-plugin-delivery.js.map +0 -1
  831. package/dist/core/skills/cli-admin-command.d.ts +0 -7
  832. package/dist/core/skills/cli-admin-command.d.ts.map +0 -1
  833. package/dist/core/skills/cli-admin-command.js +0 -359
  834. package/dist/core/skills/cli-admin-command.js.map +0 -1
  835. package/dist/core/skills/cli-session-command.d.ts +0 -7
  836. package/dist/core/skills/cli-session-command.d.ts.map +0 -1
  837. package/dist/core/skills/cli-session-command.js +0 -72
  838. package/dist/core/skills/cli-session-command.js.map +0 -1
  839. package/dist/core/skills/delivery.d.ts +0 -11
  840. package/dist/core/skills/delivery.d.ts.map +0 -1
  841. package/dist/core/skills/delivery.js +0 -22
  842. package/dist/core/skills/delivery.js.map +0 -1
  843. package/dist/core/skills/discovery.d.ts +0 -26
  844. package/dist/core/skills/discovery.d.ts.map +0 -1
  845. package/dist/core/skills/discovery.js +0 -131
  846. package/dist/core/skills/discovery.js.map +0 -1
  847. package/dist/core/skills/frontmatter.d.ts +0 -9
  848. package/dist/core/skills/frontmatter.d.ts.map +0 -1
  849. package/dist/core/skills/frontmatter.js +0 -42
  850. package/dist/core/skills/frontmatter.js.map +0 -1
  851. package/dist/core/skills/im-command.d.ts +0 -9
  852. package/dist/core/skills/im-command.d.ts.map +0 -1
  853. package/dist/core/skills/im-command.js +0 -109
  854. package/dist/core/skills/im-command.js.map +0 -1
  855. package/dist/core/skills/manifest-store.d.ts +0 -5
  856. package/dist/core/skills/manifest-store.d.ts.map +0 -1
  857. package/dist/core/skills/manifest-store.js +0 -29
  858. package/dist/core/skills/manifest-store.js.map +0 -1
  859. package/dist/core/skills/package.d.ts +0 -13
  860. package/dist/core/skills/package.d.ts.map +0 -1
  861. package/dist/core/skills/package.js +0 -35
  862. package/dist/core/skills/package.js.map +0 -1
  863. package/dist/core/skills/policy.d.ts +0 -19
  864. package/dist/core/skills/policy.d.ts.map +0 -1
  865. package/dist/core/skills/policy.js +0 -73
  866. package/dist/core/skills/policy.js.map +0 -1
  867. package/dist/core/skills/prompt.d.ts +0 -3
  868. package/dist/core/skills/prompt.d.ts.map +0 -1
  869. package/dist/core/skills/prompt.js +0 -25
  870. package/dist/core/skills/prompt.js.map +0 -1
  871. package/dist/core/skills/references.d.ts +0 -21
  872. package/dist/core/skills/references.d.ts.map +0 -1
  873. package/dist/core/skills/references.js +0 -27
  874. package/dist/core/skills/references.js.map +0 -1
  875. package/dist/core/skills/registry-paths.d.ts +0 -5
  876. package/dist/core/skills/registry-paths.d.ts.map +0 -1
  877. package/dist/core/skills/registry-paths.js +0 -15
  878. package/dist/core/skills/registry-paths.js.map +0 -1
  879. package/dist/core/skills/resource-reader.d.ts +0 -9
  880. package/dist/core/skills/resource-reader.d.ts.map +0 -1
  881. package/dist/core/skills/resource-reader.js +0 -97
  882. package/dist/core/skills/resource-reader.js.map +0 -1
  883. package/dist/core/skills/session-resolver.d.ts +0 -15
  884. package/dist/core/skills/session-resolver.d.ts.map +0 -1
  885. package/dist/core/skills/session-resolver.js +0 -25
  886. package/dist/core/skills/session-resolver.js.map +0 -1
  887. package/dist/core/skills/session-runtime.d.ts +0 -15
  888. package/dist/core/skills/session-runtime.d.ts.map +0 -1
  889. package/dist/core/skills/session-runtime.js +0 -37
  890. package/dist/core/skills/session-runtime.js.map +0 -1
  891. package/dist/core/skills/sources.d.ts +0 -53
  892. package/dist/core/skills/sources.d.ts.map +0 -1
  893. package/dist/core/skills/sources.js +0 -257
  894. package/dist/core/skills/sources.js.map +0 -1
  895. package/dist/core/skills/types.d.ts +0 -83
  896. package/dist/core/skills/types.d.ts.map +0 -1
  897. package/dist/core/skills/types.js +0 -2
  898. package/dist/core/skills/types.js.map +0 -1
  899. package/dist/core/slash-inject.d.ts +0 -15
  900. package/dist/core/slash-inject.d.ts.map +0 -1
  901. package/dist/core/slash-inject.js +0 -25
  902. package/dist/core/slash-inject.js.map +0 -1
  903. package/dist/core/startup-commands.d.ts +0 -57
  904. package/dist/core/startup-commands.d.ts.map +0 -1
  905. package/dist/core/startup-commands.js +0 -85
  906. package/dist/core/startup-commands.js.map +0 -1
  907. package/dist/core/terminal-proxy.d.ts +0 -39
  908. package/dist/core/terminal-proxy.d.ts.map +0 -1
  909. package/dist/core/terminal-proxy.js +0 -160
  910. package/dist/core/terminal-proxy.js.map +0 -1
  911. package/dist/core/terminal-url.d.ts +0 -47
  912. package/dist/core/terminal-url.d.ts.map +0 -1
  913. package/dist/core/terminal-url.js +0 -87
  914. package/dist/core/terminal-url.js.map +0 -1
  915. package/dist/core/terminal-write-auth.d.ts +0 -75
  916. package/dist/core/terminal-write-auth.d.ts.map +0 -1
  917. package/dist/core/terminal-write-auth.js +0 -149
  918. package/dist/core/terminal-write-auth.js.map +0 -1
  919. package/dist/core/tmux-recovery.d.ts +0 -11
  920. package/dist/core/tmux-recovery.d.ts.map +0 -1
  921. package/dist/core/tmux-recovery.js +0 -19
  922. package/dist/core/tmux-recovery.js.map +0 -1
  923. package/dist/core/trigger-final-suppression.d.ts +0 -24
  924. package/dist/core/trigger-final-suppression.d.ts.map +0 -1
  925. package/dist/core/trigger-final-suppression.js +0 -97
  926. package/dist/core/trigger-final-suppression.js.map +0 -1
  927. package/dist/core/trigger-session.d.ts +0 -56
  928. package/dist/core/trigger-session.d.ts.map +0 -1
  929. package/dist/core/trigger-session.js +0 -637
  930. package/dist/core/trigger-session.js.map +0 -1
  931. package/dist/core/types.d.ts +0 -441
  932. package/dist/core/types.d.ts.map +0 -1
  933. package/dist/core/types.js +0 -128
  934. package/dist/core/types.js.map +0 -1
  935. package/dist/core/update-check.d.ts +0 -94
  936. package/dist/core/update-check.d.ts.map +0 -1
  937. package/dist/core/update-check.js +0 -216
  938. package/dist/core/update-check.js.map +0 -1
  939. package/dist/core/vc-meeting-prepare-command.d.ts +0 -22
  940. package/dist/core/vc-meeting-prepare-command.d.ts.map +0 -1
  941. package/dist/core/vc-meeting-prepare-command.js +0 -50
  942. package/dist/core/vc-meeting-prepare-command.js.map +0 -1
  943. package/dist/core/worker-ipc.d.ts +0 -11
  944. package/dist/core/worker-ipc.d.ts.map +0 -1
  945. package/dist/core/worker-ipc.js +0 -26
  946. package/dist/core/worker-ipc.js.map +0 -1
  947. package/dist/core/worker-pool.d.ts +0 -788
  948. package/dist/core/worker-pool.d.ts.map +0 -1
  949. package/dist/core/worker-pool.js +0 -6914
  950. package/dist/core/worker-pool.js.map +0 -1
  951. package/dist/core/working-dir.d.ts +0 -27
  952. package/dist/core/working-dir.d.ts.map +0 -1
  953. package/dist/core/working-dir.js +0 -52
  954. package/dist/core/working-dir.js.map +0 -1
  955. package/dist/core/zellij-adopt-discovery.d.ts +0 -42
  956. package/dist/core/zellij-adopt-discovery.d.ts.map +0 -1
  957. package/dist/core/zellij-adopt-discovery.js +0 -259
  958. package/dist/core/zellij-adopt-discovery.js.map +0 -1
  959. package/dist/core/zellij-session-discovery.d.ts +0 -76
  960. package/dist/core/zellij-session-discovery.d.ts.map +0 -1
  961. package/dist/core/zellij-session-discovery.js +0 -260
  962. package/dist/core/zellij-session-discovery.js.map +0 -1
  963. package/dist/daemon-internal-client-wrapper.d.ts +0 -41
  964. package/dist/daemon-internal-client-wrapper.d.ts.map +0 -1
  965. package/dist/daemon-internal-client-wrapper.js +0 -65
  966. package/dist/daemon-internal-client-wrapper.js.map +0 -1
  967. package/dist/daemon.d.ts +0 -610
  968. package/dist/daemon.d.ts.map +0 -1
  969. package/dist/daemon.js +0 -16756
  970. package/dist/daemon.js.map +0 -1
  971. package/dist/dashboard/aggregator.d.ts +0 -59
  972. package/dist/dashboard/aggregator.d.ts.map +0 -1
  973. package/dist/dashboard/aggregator.js +0 -176
  974. package/dist/dashboard/aggregator.js.map +0 -1
  975. package/dist/dashboard/auth.d.ts +0 -106
  976. package/dist/dashboard/auth.d.ts.map +0 -1
  977. package/dist/dashboard/auth.js +0 -253
  978. package/dist/dashboard/auth.js.map +0 -1
  979. package/dist/dashboard/bot-onboarding.d.ts +0 -320
  980. package/dist/dashboard/bot-onboarding.d.ts.map +0 -1
  981. package/dist/dashboard/bot-onboarding.js +0 -1666
  982. package/dist/dashboard/bot-onboarding.js.map +0 -1
  983. package/dist/dashboard/bot-payload.d.ts +0 -94
  984. package/dist/dashboard/bot-payload.d.ts.map +0 -1
  985. package/dist/dashboard/bot-payload.js +0 -96
  986. package/dist/dashboard/bot-payload.js.map +0 -1
  987. package/dist/dashboard/card-model-types.d.ts +0 -50
  988. package/dist/dashboard/card-model-types.d.ts.map +0 -1
  989. package/dist/dashboard/card-model-types.js +0 -9
  990. package/dist/dashboard/card-model-types.js.map +0 -1
  991. package/dist/dashboard/compat.d.ts +0 -119
  992. package/dist/dashboard/compat.d.ts.map +0 -1
  993. package/dist/dashboard/compat.js +0 -102
  994. package/dist/dashboard/compat.js.map +0 -1
  995. package/dist/dashboard/connector-api.d.ts +0 -3
  996. package/dist/dashboard/connector-api.d.ts.map +0 -1
  997. package/dist/dashboard/connector-api.js +0 -453
  998. package/dist/dashboard/connector-api.js.map +0 -1
  999. package/dist/dashboard/daemon-internal-api.d.ts +0 -88
  1000. package/dist/dashboard/daemon-internal-api.d.ts.map +0 -1
  1001. package/dist/dashboard/daemon-internal-api.js +0 -476
  1002. package/dist/dashboard/daemon-internal-api.js.map +0 -1
  1003. package/dist/dashboard/daemon-internal-auth.d.ts +0 -124
  1004. package/dist/dashboard/daemon-internal-auth.d.ts.map +0 -1
  1005. package/dist/dashboard/daemon-internal-auth.js +0 -188
  1006. package/dist/dashboard/daemon-internal-auth.js.map +0 -1
  1007. package/dist/dashboard/daemon-internal-client.d.ts +0 -67
  1008. package/dist/dashboard/daemon-internal-client.d.ts.map +0 -1
  1009. package/dist/dashboard/daemon-internal-client.js +0 -156
  1010. package/dist/dashboard/daemon-internal-client.js.map +0 -1
  1011. package/dist/dashboard/dashboard-admins.d.ts +0 -8
  1012. package/dist/dashboard/dashboard-admins.d.ts.map +0 -1
  1013. package/dist/dashboard/dashboard-admins.js +0 -15
  1014. package/dist/dashboard/dashboard-admins.js.map +0 -1
  1015. package/dist/dashboard/debug-terminal.d.ts +0 -18
  1016. package/dist/dashboard/debug-terminal.d.ts.map +0 -1
  1017. package/dist/dashboard/debug-terminal.js +0 -338
  1018. package/dist/dashboard/debug-terminal.js.map +0 -1
  1019. package/dist/dashboard/desktop-asks.d.ts +0 -21
  1020. package/dist/dashboard/desktop-asks.d.ts.map +0 -1
  1021. package/dist/dashboard/desktop-asks.js +0 -49
  1022. package/dist/dashboard/desktop-asks.js.map +0 -1
  1023. package/dist/dashboard/federated-group-core.d.ts +0 -75
  1024. package/dist/dashboard/federated-group-core.d.ts.map +0 -1
  1025. package/dist/dashboard/federated-group-core.js +0 -236
  1026. package/dist/dashboard/federated-group-core.js.map +0 -1
  1027. package/dist/dashboard/federation-api.d.ts +0 -43
  1028. package/dist/dashboard/federation-api.d.ts.map +0 -1
  1029. package/dist/dashboard/federation-api.js +0 -580
  1030. package/dist/dashboard/federation-api.js.map +0 -1
  1031. package/dist/dashboard/federation-spoke-api.d.ts +0 -129
  1032. package/dist/dashboard/federation-spoke-api.d.ts.map +0 -1
  1033. package/dist/dashboard/federation-spoke-api.js +0 -809
  1034. package/dist/dashboard/federation-spoke-api.js.map +0 -1
  1035. package/dist/dashboard/feishu-login.d.ts +0 -64
  1036. package/dist/dashboard/feishu-login.d.ts.map +0 -1
  1037. package/dist/dashboard/feishu-login.js +0 -99
  1038. package/dist/dashboard/feishu-login.js.map +0 -1
  1039. package/dist/dashboard/groups-action-helpers.d.ts +0 -71
  1040. package/dist/dashboard/groups-action-helpers.d.ts.map +0 -1
  1041. package/dist/dashboard/groups-action-helpers.js +0 -150
  1042. package/dist/dashboard/groups-action-helpers.js.map +0 -1
  1043. package/dist/dashboard/groups-card-model.d.ts +0 -120
  1044. package/dist/dashboard/groups-card-model.d.ts.map +0 -1
  1045. package/dist/dashboard/groups-card-model.js +0 -175
  1046. package/dist/dashboard/groups-card-model.js.map +0 -1
  1047. package/dist/dashboard/groups-matrix-snapshot.d.ts +0 -56
  1048. package/dist/dashboard/groups-matrix-snapshot.d.ts.map +0 -1
  1049. package/dist/dashboard/groups-matrix-snapshot.js +0 -127
  1050. package/dist/dashboard/groups-matrix-snapshot.js.map +0 -1
  1051. package/dist/dashboard/hd2d-assets.d.ts +0 -20
  1052. package/dist/dashboard/hd2d-assets.d.ts.map +0 -1
  1053. package/dist/dashboard/hd2d-assets.js +0 -216
  1054. package/dist/dashboard/hd2d-assets.js.map +0 -1
  1055. package/dist/dashboard/history-senders.d.ts +0 -40
  1056. package/dist/dashboard/history-senders.d.ts.map +0 -1
  1057. package/dist/dashboard/history-senders.js +0 -60
  1058. package/dist/dashboard/history-senders.js.map +0 -1
  1059. package/dist/dashboard/http.d.ts +0 -4
  1060. package/dist/dashboard/http.d.ts.map +0 -1
  1061. package/dist/dashboard/http.js +0 -6
  1062. package/dist/dashboard/http.js.map +0 -1
  1063. package/dist/dashboard/operator-selector.d.ts +0 -20
  1064. package/dist/dashboard/operator-selector.d.ts.map +0 -1
  1065. package/dist/dashboard/operator-selector.js +0 -39
  1066. package/dist/dashboard/operator-selector.js.map +0 -1
  1067. package/dist/dashboard/public-redact.d.ts +0 -32
  1068. package/dist/dashboard/public-redact.d.ts.map +0 -1
  1069. package/dist/dashboard/public-redact.js +0 -137
  1070. package/dist/dashboard/public-redact.js.map +0 -1
  1071. package/dist/dashboard/registry.d.ts +0 -56
  1072. package/dist/dashboard/registry.d.ts.map +0 -1
  1073. package/dist/dashboard/registry.js +0 -99
  1074. package/dist/dashboard/registry.js.map +0 -1
  1075. package/dist/dashboard/resource-monitor-service.d.ts +0 -56
  1076. package/dist/dashboard/resource-monitor-service.d.ts.map +0 -1
  1077. package/dist/dashboard/resource-monitor-service.js +0 -462
  1078. package/dist/dashboard/resource-monitor-service.js.map +0 -1
  1079. package/dist/dashboard/roles-batch.d.ts +0 -31
  1080. package/dist/dashboard/roles-batch.d.ts.map +0 -1
  1081. package/dist/dashboard/roles-batch.js +0 -87
  1082. package/dist/dashboard/roles-batch.js.map +0 -1
  1083. package/dist/dashboard/schedule-card-model.d.ts +0 -185
  1084. package/dist/dashboard/schedule-card-model.d.ts.map +0 -1
  1085. package/dist/dashboard/schedule-card-model.js +0 -320
  1086. package/dist/dashboard/schedule-card-model.js.map +0 -1
  1087. package/dist/dashboard/session-card-model.d.ts +0 -83
  1088. package/dist/dashboard/session-card-model.d.ts.map +0 -1
  1089. package/dist/dashboard/session-card-model.js +0 -207
  1090. package/dist/dashboard/session-card-model.js.map +0 -1
  1091. package/dist/dashboard/session-cleanup.d.ts +0 -31
  1092. package/dist/dashboard/session-cleanup.d.ts.map +0 -1
  1093. package/dist/dashboard/session-cleanup.js +0 -49
  1094. package/dist/dashboard/session-cleanup.js.map +0 -1
  1095. package/dist/dashboard/session-presentation.d.ts +0 -16
  1096. package/dist/dashboard/session-presentation.d.ts.map +0 -1
  1097. package/dist/dashboard/session-presentation.js +0 -62
  1098. package/dist/dashboard/session-presentation.js.map +0 -1
  1099. package/dist/dashboard/settings-card-model.d.ts +0 -76
  1100. package/dist/dashboard/settings-card-model.d.ts.map +0 -1
  1101. package/dist/dashboard/settings-card-model.js +0 -109
  1102. package/dist/dashboard/settings-card-model.js.map +0 -1
  1103. package/dist/dashboard/settings-owner-resolver.d.ts +0 -32
  1104. package/dist/dashboard/settings-owner-resolver.d.ts.map +0 -1
  1105. package/dist/dashboard/settings-owner-resolver.js +0 -43
  1106. package/dist/dashboard/settings-owner-resolver.js.map +0 -1
  1107. package/dist/dashboard/settings-write-applier.d.ts +0 -219
  1108. package/dist/dashboard/settings-write-applier.d.ts.map +0 -1
  1109. package/dist/dashboard/settings-write-applier.js +0 -467
  1110. package/dist/dashboard/settings-write-applier.js.map +0 -1
  1111. package/dist/dashboard/skill-install-request.d.ts +0 -46
  1112. package/dist/dashboard/skill-install-request.d.ts.map +0 -1
  1113. package/dist/dashboard/skill-install-request.js +0 -150
  1114. package/dist/dashboard/skill-install-request.js.map +0 -1
  1115. package/dist/dashboard/stale-chunk-module.d.ts +0 -3
  1116. package/dist/dashboard/stale-chunk-module.d.ts.map +0 -1
  1117. package/dist/dashboard/stale-chunk-module.js +0 -55
  1118. package/dist/dashboard/stale-chunk-module.js.map +0 -1
  1119. package/dist/dashboard/team-group.d.ts +0 -39
  1120. package/dist/dashboard/team-group.d.ts.map +0 -1
  1121. package/dist/dashboard/team-group.js +0 -23
  1122. package/dist/dashboard/team-group.js.map +0 -1
  1123. package/dist/dashboard/trigger-api.d.ts +0 -25
  1124. package/dist/dashboard/trigger-api.d.ts.map +0 -1
  1125. package/dist/dashboard/trigger-api.js +0 -153
  1126. package/dist/dashboard/trigger-api.js.map +0 -1
  1127. package/dist/dashboard/v3-runs-api.d.ts +0 -29
  1128. package/dist/dashboard/v3-runs-api.d.ts.map +0 -1
  1129. package/dist/dashboard/v3-runs-api.js +0 -184
  1130. package/dist/dashboard/v3-runs-api.js.map +0 -1
  1131. package/dist/dashboard/vc-consumer-profiles-api.d.ts +0 -110
  1132. package/dist/dashboard/vc-consumer-profiles-api.d.ts.map +0 -1
  1133. package/dist/dashboard/vc-consumer-profiles-api.js +0 -325
  1134. package/dist/dashboard/vc-consumer-profiles-api.js.map +0 -1
  1135. package/dist/dashboard/web/app.d.ts +0 -3
  1136. package/dist/dashboard/web/app.d.ts.map +0 -1
  1137. package/dist/dashboard/web/app.js +0 -962
  1138. package/dist/dashboard/web/app.js.map +0 -1
  1139. package/dist/dashboard/web/auth-login.d.ts +0 -3
  1140. package/dist/dashboard/web/auth-login.d.ts.map +0 -1
  1141. package/dist/dashboard/web/auth-login.js +0 -19
  1142. package/dist/dashboard/web/auth-login.js.map +0 -1
  1143. package/dist/dashboard/web/bot-defaults-page.d.ts +0 -78
  1144. package/dist/dashboard/web/bot-defaults-page.d.ts.map +0 -1
  1145. package/dist/dashboard/web/bot-defaults-page.js +0 -2486
  1146. package/dist/dashboard/web/bot-defaults-page.js.map +0 -1
  1147. package/dist/dashboard/web/bot-defaults.d.ts +0 -163
  1148. package/dist/dashboard/web/bot-defaults.d.ts.map +0 -1
  1149. package/dist/dashboard/web/bot-defaults.js +0 -127
  1150. package/dist/dashboard/web/bot-defaults.js.map +0 -1
  1151. package/dist/dashboard/web/bot-onboarding.d.ts +0 -9
  1152. package/dist/dashboard/web/bot-onboarding.d.ts.map +0 -1
  1153. package/dist/dashboard/web/bot-onboarding.js +0 -421
  1154. package/dist/dashboard/web/bot-onboarding.js.map +0 -1
  1155. package/dist/dashboard/web/client-shell.d.ts +0 -29
  1156. package/dist/dashboard/web/client-shell.d.ts.map +0 -1
  1157. package/dist/dashboard/web/client-shell.js +0 -89
  1158. package/dist/dashboard/web/client-shell.js.map +0 -1
  1159. package/dist/dashboard/web/clipboard.d.ts +0 -2
  1160. package/dist/dashboard/web/clipboard.d.ts.map +0 -1
  1161. package/dist/dashboard/web/clipboard.js +0 -42
  1162. package/dist/dashboard/web/clipboard.js.map +0 -1
  1163. package/dist/dashboard/web/connectors-page.d.ts +0 -23
  1164. package/dist/dashboard/web/connectors-page.d.ts.map +0 -1
  1165. package/dist/dashboard/web/connectors-page.js +0 -516
  1166. package/dist/dashboard/web/connectors-page.js.map +0 -1
  1167. package/dist/dashboard/web/create-session-composer.d.ts +0 -35
  1168. package/dist/dashboard/web/create-session-composer.d.ts.map +0 -1
  1169. package/dist/dashboard/web/create-session-composer.js +0 -70
  1170. package/dist/dashboard/web/create-session-composer.js.map +0 -1
  1171. package/dist/dashboard/web/create-session-entry.d.ts +0 -4
  1172. package/dist/dashboard/web/create-session-entry.d.ts.map +0 -1
  1173. package/dist/dashboard/web/create-session-entry.js +0 -17
  1174. package/dist/dashboard/web/create-session-entry.js.map +0 -1
  1175. package/dist/dashboard/web/cyber-fx.d.ts +0 -6
  1176. package/dist/dashboard/web/cyber-fx.d.ts.map +0 -1
  1177. package/dist/dashboard/web/cyber-fx.js +0 -289
  1178. package/dist/dashboard/web/cyber-fx.js.map +0 -1
  1179. package/dist/dashboard/web/dashboard-api.d.ts +0 -9
  1180. package/dist/dashboard/web/dashboard-api.d.ts.map +0 -1
  1181. package/dist/dashboard/web/dashboard-api.js +0 -18
  1182. package/dist/dashboard/web/dashboard-api.js.map +0 -1
  1183. package/dist/dashboard/web/dashboard-components.d.ts +0 -105
  1184. package/dist/dashboard/web/dashboard-components.d.ts.map +0 -1
  1185. package/dist/dashboard/web/dashboard-components.js +0 -284
  1186. package/dist/dashboard/web/dashboard-components.js.map +0 -1
  1187. package/dist/dashboard/web/dashboard-routes.d.ts +0 -14
  1188. package/dist/dashboard/web/dashboard-routes.d.ts.map +0 -1
  1189. package/dist/dashboard/web/dashboard-routes.js +0 -49
  1190. package/dist/dashboard/web/dashboard-routes.js.map +0 -1
  1191. package/dist/dashboard/web/floating-scrollbars.d.ts +0 -2
  1192. package/dist/dashboard/web/floating-scrollbars.d.ts.map +0 -1
  1193. package/dist/dashboard/web/floating-scrollbars.js +0 -264
  1194. package/dist/dashboard/web/floating-scrollbars.js.map +0 -1
  1195. package/dist/dashboard/web/groups-api.d.ts +0 -36
  1196. package/dist/dashboard/web/groups-api.d.ts.map +0 -1
  1197. package/dist/dashboard/web/groups-api.js +0 -44
  1198. package/dist/dashboard/web/groups-api.js.map +0 -1
  1199. package/dist/dashboard/web/groups-page.d.ts +0 -3
  1200. package/dist/dashboard/web/groups-page.d.ts.map +0 -1
  1201. package/dist/dashboard/web/groups-page.js +0 -761
  1202. package/dist/dashboard/web/groups-page.js.map +0 -1
  1203. package/dist/dashboard/web/groups.d.ts +0 -58
  1204. package/dist/dashboard/web/groups.d.ts.map +0 -1
  1205. package/dist/dashboard/web/groups.js +0 -203
  1206. package/dist/dashboard/web/groups.js.map +0 -1
  1207. package/dist/dashboard/web/i18n.d.ts +0 -7
  1208. package/dist/dashboard/web/i18n.d.ts.map +0 -1
  1209. package/dist/dashboard/web/i18n.js +0 -4295
  1210. package/dist/dashboard/web/i18n.js.map +0 -1
  1211. package/dist/dashboard/web/icon-tooltip.d.ts +0 -3
  1212. package/dist/dashboard/web/icon-tooltip.d.ts.map +0 -1
  1213. package/dist/dashboard/web/icon-tooltip.js +0 -123
  1214. package/dist/dashboard/web/icon-tooltip.js.map +0 -1
  1215. package/dist/dashboard/web/insights-page.d.ts +0 -3
  1216. package/dist/dashboard/web/insights-page.d.ts.map +0 -1
  1217. package/dist/dashboard/web/insights-page.js +0 -1059
  1218. package/dist/dashboard/web/insights-page.js.map +0 -1
  1219. package/dist/dashboard/web/insights.d.ts +0 -189
  1220. package/dist/dashboard/web/insights.d.ts.map +0 -1
  1221. package/dist/dashboard/web/insights.js +0 -519
  1222. package/dist/dashboard/web/insights.js.map +0 -1
  1223. package/dist/dashboard/web/kanban-model.d.ts +0 -19
  1224. package/dist/dashboard/web/kanban-model.d.ts.map +0 -1
  1225. package/dist/dashboard/web/kanban-model.js +0 -40
  1226. package/dist/dashboard/web/kanban-model.js.map +0 -1
  1227. package/dist/dashboard/web/listener-filters.d.ts +0 -54
  1228. package/dist/dashboard/web/listener-filters.d.ts.map +0 -1
  1229. package/dist/dashboard/web/listener-filters.js +0 -94
  1230. package/dist/dashboard/web/listener-filters.js.map +0 -1
  1231. package/dist/dashboard/web/monitor-room-store.d.ts +0 -20
  1232. package/dist/dashboard/web/monitor-room-store.d.ts.map +0 -1
  1233. package/dist/dashboard/web/monitor-room-store.js +0 -80
  1234. package/dist/dashboard/web/monitor-room-store.js.map +0 -1
  1235. package/dist/dashboard/web/monitor-room.d.ts +0 -31
  1236. package/dist/dashboard/web/monitor-room.d.ts.map +0 -1
  1237. package/dist/dashboard/web/monitor-room.js +0 -395
  1238. package/dist/dashboard/web/monitor-room.js.map +0 -1
  1239. package/dist/dashboard/web/monitoring-page.d.ts +0 -155
  1240. package/dist/dashboard/web/monitoring-page.d.ts.map +0 -1
  1241. package/dist/dashboard/web/monitoring-page.js +0 -363
  1242. package/dist/dashboard/web/monitoring-page.js.map +0 -1
  1243. package/dist/dashboard/web/office-page.d.ts +0 -3
  1244. package/dist/dashboard/web/office-page.d.ts.map +0 -1
  1245. package/dist/dashboard/web/office-page.js +0 -137
  1246. package/dist/dashboard/web/office-page.js.map +0 -1
  1247. package/dist/dashboard/web/overview-page.d.ts +0 -3
  1248. package/dist/dashboard/web/overview-page.d.ts.map +0 -1
  1249. package/dist/dashboard/web/overview-page.js +0 -253
  1250. package/dist/dashboard/web/overview-page.js.map +0 -1
  1251. package/dist/dashboard/web/overview.d.ts +0 -23
  1252. package/dist/dashboard/web/overview.d.ts.map +0 -1
  1253. package/dist/dashboard/web/overview.js +0 -81
  1254. package/dist/dashboard/web/overview.js.map +0 -1
  1255. package/dist/dashboard/web/plugin-events.d.ts +0 -2
  1256. package/dist/dashboard/web/plugin-events.d.ts.map +0 -1
  1257. package/dist/dashboard/web/plugin-events.js +0 -2
  1258. package/dist/dashboard/web/plugin-events.js.map +0 -1
  1259. package/dist/dashboard/web/plugin-page.d.ts +0 -3
  1260. package/dist/dashboard/web/plugin-page.d.ts.map +0 -1
  1261. package/dist/dashboard/web/plugin-page.js +0 -467
  1262. package/dist/dashboard/web/plugin-page.js.map +0 -1
  1263. package/dist/dashboard/web/preferences.d.ts +0 -42
  1264. package/dist/dashboard/web/preferences.d.ts.map +0 -1
  1265. package/dist/dashboard/web/preferences.js +0 -162
  1266. package/dist/dashboard/web/preferences.js.map +0 -1
  1267. package/dist/dashboard/web/preview-markdown.d.ts +0 -5
  1268. package/dist/dashboard/web/preview-markdown.d.ts.map +0 -1
  1269. package/dist/dashboard/web/preview-markdown.js +0 -52
  1270. package/dist/dashboard/web/preview-markdown.js.map +0 -1
  1271. package/dist/dashboard/web/react-hooks.d.ts +0 -8
  1272. package/dist/dashboard/web/react-hooks.d.ts.map +0 -1
  1273. package/dist/dashboard/web/react-hooks.js +0 -43
  1274. package/dist/dashboard/web/react-hooks.js.map +0 -1
  1275. package/dist/dashboard/web/react-mount.d.ts +0 -4
  1276. package/dist/dashboard/web/react-mount.d.ts.map +0 -1
  1277. package/dist/dashboard/web/react-mount.js +0 -7
  1278. package/dist/dashboard/web/react-mount.js.map +0 -1
  1279. package/dist/dashboard/web/role-batch.d.ts +0 -9
  1280. package/dist/dashboard/web/role-batch.d.ts.map +0 -1
  1281. package/dist/dashboard/web/role-batch.js +0 -42
  1282. package/dist/dashboard/web/role-batch.js.map +0 -1
  1283. package/dist/dashboard/web/role-profile-match.d.ts +0 -31
  1284. package/dist/dashboard/web/role-profile-match.d.ts.map +0 -1
  1285. package/dist/dashboard/web/role-profile-match.js +0 -58
  1286. package/dist/dashboard/web/role-profile-match.js.map +0 -1
  1287. package/dist/dashboard/web/roles-page.d.ts +0 -4
  1288. package/dist/dashboard/web/roles-page.d.ts.map +0 -1
  1289. package/dist/dashboard/web/roles-page.js +0 -1120
  1290. package/dist/dashboard/web/roles-page.js.map +0 -1
  1291. package/dist/dashboard/web/roles.d.ts +0 -177
  1292. package/dist/dashboard/web/roles.d.ts.map +0 -1
  1293. package/dist/dashboard/web/roles.js +0 -272
  1294. package/dist/dashboard/web/roles.js.map +0 -1
  1295. package/dist/dashboard/web/route-lifecycle.d.ts +0 -14
  1296. package/dist/dashboard/web/route-lifecycle.d.ts.map +0 -1
  1297. package/dist/dashboard/web/route-lifecycle.js +0 -29
  1298. package/dist/dashboard/web/route-lifecycle.js.map +0 -1
  1299. package/dist/dashboard/web/schedules-page.d.ts +0 -16
  1300. package/dist/dashboard/web/schedules-page.d.ts.map +0 -1
  1301. package/dist/dashboard/web/schedules-page.js +0 -303
  1302. package/dist/dashboard/web/schedules-page.js.map +0 -1
  1303. package/dist/dashboard/web/session-terminal.d.ts +0 -7
  1304. package/dist/dashboard/web/session-terminal.d.ts.map +0 -1
  1305. package/dist/dashboard/web/session-terminal.js +0 -23
  1306. package/dist/dashboard/web/session-terminal.js.map +0 -1
  1307. package/dist/dashboard/web/sessions-kanban.d.ts +0 -70
  1308. package/dist/dashboard/web/sessions-kanban.d.ts.map +0 -1
  1309. package/dist/dashboard/web/sessions-kanban.js +0 -481
  1310. package/dist/dashboard/web/sessions-kanban.js.map +0 -1
  1311. package/dist/dashboard/web/sessions-page.d.ts +0 -27
  1312. package/dist/dashboard/web/sessions-page.d.ts.map +0 -1
  1313. package/dist/dashboard/web/sessions-page.js +0 -2085
  1314. package/dist/dashboard/web/sessions-page.js.map +0 -1
  1315. package/dist/dashboard/web/sessions.d.ts +0 -116
  1316. package/dist/dashboard/web/sessions.d.ts.map +0 -1
  1317. package/dist/dashboard/web/sessions.js +0 -390
  1318. package/dist/dashboard/web/sessions.js.map +0 -1
  1319. package/dist/dashboard/web/settings-page.d.ts +0 -119
  1320. package/dist/dashboard/web/settings-page.d.ts.map +0 -1
  1321. package/dist/dashboard/web/settings-page.js +0 -772
  1322. package/dist/dashboard/web/settings-page.js.map +0 -1
  1323. package/dist/dashboard/web/skills-page.d.ts +0 -90
  1324. package/dist/dashboard/web/skills-page.d.ts.map +0 -1
  1325. package/dist/dashboard/web/skills-page.js +0 -1004
  1326. package/dist/dashboard/web/skills-page.js.map +0 -1
  1327. package/dist/dashboard/web/stale-chunk-reload.d.ts +0 -16
  1328. package/dist/dashboard/web/stale-chunk-reload.d.ts.map +0 -1
  1329. package/dist/dashboard/web/stale-chunk-reload.js +0 -51
  1330. package/dist/dashboard/web/stale-chunk-reload.js.map +0 -1
  1331. package/dist/dashboard/web/store.d.ts +0 -39
  1332. package/dist/dashboard/web/store.d.ts.map +0 -1
  1333. package/dist/dashboard/web/store.js +0 -177
  1334. package/dist/dashboard/web/store.js.map +0 -1
  1335. package/dist/dashboard/web/substitute-targets.d.ts +0 -30
  1336. package/dist/dashboard/web/substitute-targets.d.ts.map +0 -1
  1337. package/dist/dashboard/web/substitute-targets.js +0 -99
  1338. package/dist/dashboard/web/substitute-targets.js.map +0 -1
  1339. package/dist/dashboard/web/team-federation-page.d.ts +0 -4
  1340. package/dist/dashboard/web/team-federation-page.d.ts.map +0 -1
  1341. package/dist/dashboard/web/team-federation-page.js +0 -465
  1342. package/dist/dashboard/web/team-federation-page.js.map +0 -1
  1343. package/dist/dashboard/web/team-federation.d.ts +0 -92
  1344. package/dist/dashboard/web/team-federation.d.ts.map +0 -1
  1345. package/dist/dashboard/web/team-federation.js +0 -106
  1346. package/dist/dashboard/web/team-federation.js.map +0 -1
  1347. package/dist/dashboard/web/theme-menu.d.ts +0 -4
  1348. package/dist/dashboard/web/theme-menu.d.ts.map +0 -1
  1349. package/dist/dashboard/web/theme-menu.js +0 -173
  1350. package/dist/dashboard/web/theme-menu.js.map +0 -1
  1351. package/dist/dashboard/web/ui.d.ts +0 -81
  1352. package/dist/dashboard/web/ui.d.ts.map +0 -1
  1353. package/dist/dashboard/web/ui.js +0 -330
  1354. package/dist/dashboard/web/ui.js.map +0 -1
  1355. package/dist/dashboard/web/update-action.d.ts +0 -16
  1356. package/dist/dashboard/web/update-action.d.ts.map +0 -1
  1357. package/dist/dashboard/web/update-action.js +0 -64
  1358. package/dist/dashboard/web/update-action.js.map +0 -1
  1359. package/dist/dashboard/web/v3-api.d.ts +0 -26
  1360. package/dist/dashboard/web/v3-api.d.ts.map +0 -1
  1361. package/dist/dashboard/web/v3-api.js +0 -49
  1362. package/dist/dashboard/web/v3-api.js.map +0 -1
  1363. package/dist/dashboard/web/v3-components.d.ts +0 -9
  1364. package/dist/dashboard/web/v3-components.d.ts.map +0 -1
  1365. package/dist/dashboard/web/v3-components.js +0 -333
  1366. package/dist/dashboard/web/v3-components.js.map +0 -1
  1367. package/dist/dashboard/web/v3-model.d.ts +0 -80
  1368. package/dist/dashboard/web/v3-model.d.ts.map +0 -1
  1369. package/dist/dashboard/web/v3-model.js +0 -240
  1370. package/dist/dashboard/web/v3-model.js.map +0 -1
  1371. package/dist/dashboard/web/v3-page.d.ts +0 -3
  1372. package/dist/dashboard/web/v3-page.d.ts.map +0 -1
  1373. package/dist/dashboard/web/v3-page.js +0 -7
  1374. package/dist/dashboard/web/v3-page.js.map +0 -1
  1375. package/dist/dashboard/web/v3-terminal.d.ts +0 -25
  1376. package/dist/dashboard/web/v3-terminal.d.ts.map +0 -1
  1377. package/dist/dashboard/web/v3-terminal.js +0 -155
  1378. package/dist/dashboard/web/v3-terminal.js.map +0 -1
  1379. package/dist/dashboard/web/vc-consumer-profiles-section.d.ts +0 -29
  1380. package/dist/dashboard/web/vc-consumer-profiles-section.d.ts.map +0 -1
  1381. package/dist/dashboard/web/vc-consumer-profiles-section.js +0 -459
  1382. package/dist/dashboard/web/vc-consumer-profiles-section.js.map +0 -1
  1383. package/dist/dashboard/web/webhook-logs-page.d.ts +0 -17
  1384. package/dist/dashboard/web/webhook-logs-page.d.ts.map +0 -1
  1385. package/dist/dashboard/web/webhook-logs-page.js +0 -198
  1386. package/dist/dashboard/web/webhook-logs-page.js.map +0 -1
  1387. package/dist/dashboard/web/whiteboards-page.d.ts +0 -3
  1388. package/dist/dashboard/web/whiteboards-page.d.ts.map +0 -1
  1389. package/dist/dashboard/web/whiteboards-page.js +0 -198
  1390. package/dist/dashboard/web/whiteboards-page.js.map +0 -1
  1391. package/dist/dashboard/webhook-routes.d.ts +0 -19
  1392. package/dist/dashboard/webhook-routes.d.ts.map +0 -1
  1393. package/dist/dashboard/webhook-routes.js +0 -618
  1394. package/dist/dashboard/webhook-routes.js.map +0 -1
  1395. package/dist/dashboard-web/app.js +0 -1
  1396. package/dist/dashboard-web/apple-touch-icon.png +0 -0
  1397. package/dist/dashboard-web/brand-logo.png +0 -0
  1398. package/dist/dashboard-web/chunks/bot-defaults-page-LTVOUDIS.js +0 -10
  1399. package/dist/dashboard-web/chunks/chunk-3UE7S77S.js +0 -1
  1400. package/dist/dashboard-web/chunks/chunk-5CJMHTT4.js +0 -1
  1401. package/dist/dashboard-web/chunks/chunk-5THX4DI2.js +0 -66
  1402. package/dist/dashboard-web/chunks/chunk-7SZRL6FY.js +0 -1
  1403. package/dist/dashboard-web/chunks/chunk-AGCPF6MT.js +0 -1
  1404. package/dist/dashboard-web/chunks/chunk-BD3PZGH2.js +0 -1
  1405. package/dist/dashboard-web/chunks/chunk-DCS35UMD.js +0 -1
  1406. package/dist/dashboard-web/chunks/chunk-EVK77ASG.js +0 -1
  1407. package/dist/dashboard-web/chunks/chunk-FDZ7WOBW.js +0 -16
  1408. package/dist/dashboard-web/chunks/chunk-MFQPCVHY.js +0 -51
  1409. package/dist/dashboard-web/chunks/chunk-R3FXBFQH.js +0 -1
  1410. package/dist/dashboard-web/chunks/chunk-SYC6D5XU.js +0 -1
  1411. package/dist/dashboard-web/chunks/chunk-XJ7BGPJH.js +0 -1
  1412. package/dist/dashboard-web/chunks/chunk-ZJVTGU5X.js +0 -1
  1413. package/dist/dashboard-web/chunks/chunk-ZU3UUKAR.js +0 -1
  1414. package/dist/dashboard-web/chunks/connectors-page-5KWDIMKC.js +0 -1
  1415. package/dist/dashboard-web/chunks/groups-page-FHOKYXMW.js +0 -8
  1416. package/dist/dashboard-web/chunks/insights-page-T2ZX2RWL.js +0 -7
  1417. package/dist/dashboard-web/chunks/monitor-room-YNVBAGR6.js +0 -53
  1418. package/dist/dashboard-web/chunks/monitoring-page-LHM55YWN.js +0 -2
  1419. package/dist/dashboard-web/chunks/office-page-ATXVP7PW.js +0 -1
  1420. package/dist/dashboard-web/chunks/overview-page-QYI3KBDD.js +0 -1
  1421. package/dist/dashboard-web/chunks/plugin-page-VEGTCEAS.js +0 -1
  1422. package/dist/dashboard-web/chunks/roles-page-56VWM6CD.js +0 -1
  1423. package/dist/dashboard-web/chunks/schedules-page-S5K6U4EO.js +0 -1
  1424. package/dist/dashboard-web/chunks/sessions-page-WBP4N7D2.js +0 -6
  1425. package/dist/dashboard-web/chunks/settings-page-QUZDQARR.js +0 -2
  1426. package/dist/dashboard-web/chunks/skills-page-IFY7AEND.js +0 -4
  1427. package/dist/dashboard-web/chunks/team-federation-page-C7FJQPFZ.js +0 -1
  1428. package/dist/dashboard-web/chunks/v3-page-2LMF3WWR.js +0 -94
  1429. package/dist/dashboard-web/chunks/whiteboards-page-3XC6QRMY.js +0 -1
  1430. package/dist/dashboard-web/favicon.png +0 -0
  1431. package/dist/dashboard-web/game/index.apple-touch-icon.png +0 -0
  1432. package/dist/dashboard-web/game/index.audio.position.worklet.js +0 -66
  1433. package/dist/dashboard-web/game/index.audio.worklet.js +0 -213
  1434. package/dist/dashboard-web/game/index.html +0 -224
  1435. package/dist/dashboard-web/game/index.icon.png +0 -0
  1436. package/dist/dashboard-web/game/index.js +0 -909
  1437. package/dist/dashboard-web/game/index.png +0 -0
  1438. package/dist/dashboard-web/index.html +0 -17
  1439. package/dist/dashboard-web/skins/fallout-vaultboy.webp +0 -0
  1440. package/dist/dashboard-web/style.css +0 -25771
  1441. package/dist/dashboard.d.ts +0 -2
  1442. package/dist/dashboard.d.ts.map +0 -1
  1443. package/dist/dashboard.js +0 -5487
  1444. package/dist/dashboard.js.map +0 -1
  1445. package/dist/desktop/main/auto-start.d.ts +0 -19
  1446. package/dist/desktop/main/auto-start.d.ts.map +0 -1
  1447. package/dist/desktop/main/auto-start.js +0 -41
  1448. package/dist/desktop/main/auto-start.js.map +0 -1
  1449. package/dist/desktop/main/bundled-runtime.d.ts +0 -12
  1450. package/dist/desktop/main/bundled-runtime.d.ts.map +0 -1
  1451. package/dist/desktop/main/bundled-runtime.js +0 -30
  1452. package/dist/desktop/main/bundled-runtime.js.map +0 -1
  1453. package/dist/desktop/main/dashboard-compat.d.ts +0 -25
  1454. package/dist/desktop/main/dashboard-compat.d.ts.map +0 -1
  1455. package/dist/desktop/main/dashboard-compat.js +0 -117
  1456. package/dist/desktop/main/dashboard-compat.js.map +0 -1
  1457. package/dist/desktop/main/device-status.d.ts +0 -15
  1458. package/dist/desktop/main/device-status.d.ts.map +0 -1
  1459. package/dist/desktop/main/device-status.js +0 -94
  1460. package/dist/desktop/main/device-status.js.map +0 -1
  1461. package/dist/desktop/main/external-runtime.d.ts +0 -38
  1462. package/dist/desktop/main/external-runtime.d.ts.map +0 -1
  1463. package/dist/desktop/main/external-runtime.js +0 -272
  1464. package/dist/desktop/main/external-runtime.js.map +0 -1
  1465. package/dist/desktop/main/ipc.d.ts +0 -20
  1466. package/dist/desktop/main/ipc.d.ts.map +0 -1
  1467. package/dist/desktop/main/ipc.js +0 -242
  1468. package/dist/desktop/main/ipc.js.map +0 -1
  1469. package/dist/desktop/main/log-service.d.ts +0 -4
  1470. package/dist/desktop/main/log-service.d.ts.map +0 -1
  1471. package/dist/desktop/main/log-service.js +0 -53
  1472. package/dist/desktop/main/log-service.js.map +0 -1
  1473. package/dist/desktop/main/login-item.d.ts +0 -10
  1474. package/dist/desktop/main/login-item.d.ts.map +0 -1
  1475. package/dist/desktop/main/login-item.js +0 -11
  1476. package/dist/desktop/main/login-item.js.map +0 -1
  1477. package/dist/desktop/main/node-command.d.ts +0 -43
  1478. package/dist/desktop/main/node-command.d.ts.map +0 -1
  1479. package/dist/desktop/main/node-command.js +0 -97
  1480. package/dist/desktop/main/node-command.js.map +0 -1
  1481. package/dist/desktop/main/paths.d.ts +0 -11
  1482. package/dist/desktop/main/paths.d.ts.map +0 -1
  1483. package/dist/desktop/main/paths.js +0 -13
  1484. package/dist/desktop/main/paths.js.map +0 -1
  1485. package/dist/desktop/main/pm2-apps.d.ts +0 -17
  1486. package/dist/desktop/main/pm2-apps.d.ts.map +0 -1
  1487. package/dist/desktop/main/pm2-apps.js +0 -105
  1488. package/dist/desktop/main/pm2-apps.js.map +0 -1
  1489. package/dist/desktop/main/runtime-service.d.ts +0 -65
  1490. package/dist/desktop/main/runtime-service.d.ts.map +0 -1
  1491. package/dist/desktop/main/runtime-service.js +0 -381
  1492. package/dist/desktop/main/runtime-service.js.map +0 -1
  1493. package/dist/desktop/main/runtime-source.d.ts +0 -19
  1494. package/dist/desktop/main/runtime-source.d.ts.map +0 -1
  1495. package/dist/desktop/main/runtime-source.js +0 -67
  1496. package/dist/desktop/main/runtime-source.js.map +0 -1
  1497. package/dist/desktop/main/tray.d.ts +0 -11
  1498. package/dist/desktop/main/tray.d.ts.map +0 -1
  1499. package/dist/desktop/main/tray.js +0 -27
  1500. package/dist/desktop/main/tray.js.map +0 -1
  1501. package/dist/desktop/main/window.d.ts +0 -16
  1502. package/dist/desktop/main/window.d.ts.map +0 -1
  1503. package/dist/desktop/main/window.js +0 -113
  1504. package/dist/desktop/main/window.js.map +0 -1
  1505. package/dist/desktop/main.d.ts +0 -2
  1506. package/dist/desktop/main.d.ts.map +0 -1
  1507. package/dist/desktop/main.js +0 -195
  1508. package/dist/desktop/main.js.map +0 -1
  1509. package/dist/desktop/preload.d.ts +0 -2
  1510. package/dist/desktop/preload.d.ts.map +0 -1
  1511. package/dist/desktop/preload.js +0 -27
  1512. package/dist/desktop/preload.js.map +0 -1
  1513. package/dist/desktop/renderer/app.d.ts +0 -36
  1514. package/dist/desktop/renderer/app.d.ts.map +0 -1
  1515. package/dist/desktop/renderer/app.js +0 -950
  1516. package/dist/desktop/renderer/app.js.map +0 -1
  1517. package/dist/desktop/renderer/dashboard-url.d.ts +0 -13
  1518. package/dist/desktop/renderer/dashboard-url.d.ts.map +0 -1
  1519. package/dist/desktop/renderer/dashboard-url.js +0 -98
  1520. package/dist/desktop/renderer/dashboard-url.js.map +0 -1
  1521. package/dist/desktop/renderer/runtime-state.d.ts +0 -8
  1522. package/dist/desktop/renderer/runtime-state.d.ts.map +0 -1
  1523. package/dist/desktop/renderer/runtime-state.js +0 -69
  1524. package/dist/desktop/renderer/runtime-state.js.map +0 -1
  1525. package/dist/desktop/shared/shell-path-probes.d.ts +0 -24
  1526. package/dist/desktop/shared/shell-path-probes.d.ts.map +0 -1
  1527. package/dist/desktop/shared/shell-path-probes.js +0 -38
  1528. package/dist/desktop/shared/shell-path-probes.js.map +0 -1
  1529. package/dist/desktop/shared/types.d.ts +0 -68
  1530. package/dist/desktop/shared/types.d.ts.map +0 -1
  1531. package/dist/desktop/shared/types.js +0 -2
  1532. package/dist/desktop/shared/types.js.map +0 -1
  1533. package/dist/desktop/smoke.d.ts +0 -29
  1534. package/dist/desktop/smoke.d.ts.map +0 -1
  1535. package/dist/desktop/smoke.js +0 -273
  1536. package/dist/desktop/smoke.js.map +0 -1
  1537. package/dist/features/codex-notifier/adoption.d.ts +0 -11
  1538. package/dist/features/codex-notifier/adoption.d.ts.map +0 -1
  1539. package/dist/features/codex-notifier/adoption.js +0 -11
  1540. package/dist/features/codex-notifier/adoption.js.map +0 -1
  1541. package/dist/features/codex-notifier/app-opener.d.ts +0 -21
  1542. package/dist/features/codex-notifier/app-opener.d.ts.map +0 -1
  1543. package/dist/features/codex-notifier/app-opener.js +0 -33
  1544. package/dist/features/codex-notifier/app-opener.js.map +0 -1
  1545. package/dist/features/codex-notifier/card-action.d.ts +0 -27
  1546. package/dist/features/codex-notifier/card-action.d.ts.map +0 -1
  1547. package/dist/features/codex-notifier/card-action.js +0 -84
  1548. package/dist/features/codex-notifier/card-action.js.map +0 -1
  1549. package/dist/features/codex-notifier/card.d.ts +0 -12
  1550. package/dist/features/codex-notifier/card.d.ts.map +0 -1
  1551. package/dist/features/codex-notifier/card.js +0 -150
  1552. package/dist/features/codex-notifier/card.js.map +0 -1
  1553. package/dist/features/codex-notifier/codex-context.d.ts +0 -12
  1554. package/dist/features/codex-notifier/codex-context.d.ts.map +0 -1
  1555. package/dist/features/codex-notifier/codex-context.js +0 -161
  1556. package/dist/features/codex-notifier/codex-context.js.map +0 -1
  1557. package/dist/features/codex-notifier/config.d.ts +0 -9
  1558. package/dist/features/codex-notifier/config.d.ts.map +0 -1
  1559. package/dist/features/codex-notifier/config.js +0 -11
  1560. package/dist/features/codex-notifier/config.js.map +0 -1
  1561. package/dist/features/codex-notifier/confirmed-turn.d.ts +0 -20
  1562. package/dist/features/codex-notifier/confirmed-turn.d.ts.map +0 -1
  1563. package/dist/features/codex-notifier/confirmed-turn.js +0 -130
  1564. package/dist/features/codex-notifier/confirmed-turn.js.map +0 -1
  1565. package/dist/features/codex-notifier/emitter.d.ts +0 -13
  1566. package/dist/features/codex-notifier/emitter.d.ts.map +0 -1
  1567. package/dist/features/codex-notifier/emitter.js +0 -33
  1568. package/dist/features/codex-notifier/emitter.js.map +0 -1
  1569. package/dist/features/codex-notifier/event-store.d.ts +0 -29
  1570. package/dist/features/codex-notifier/event-store.d.ts.map +0 -1
  1571. package/dist/features/codex-notifier/event-store.js +0 -217
  1572. package/dist/features/codex-notifier/event-store.js.map +0 -1
  1573. package/dist/features/codex-notifier/event.d.ts +0 -46
  1574. package/dist/features/codex-notifier/event.d.ts.map +0 -1
  1575. package/dist/features/codex-notifier/event.js +0 -188
  1576. package/dist/features/codex-notifier/event.js.map +0 -1
  1577. package/dist/features/codex-notifier/hook-cli.d.ts +0 -23
  1578. package/dist/features/codex-notifier/hook-cli.d.ts.map +0 -1
  1579. package/dist/features/codex-notifier/hook-cli.js +0 -130
  1580. package/dist/features/codex-notifier/hook-cli.js.map +0 -1
  1581. package/dist/features/codex-notifier/hook-installer.d.ts +0 -19
  1582. package/dist/features/codex-notifier/hook-installer.d.ts.map +0 -1
  1583. package/dist/features/codex-notifier/hook-installer.js +0 -158
  1584. package/dist/features/codex-notifier/hook-installer.js.map +0 -1
  1585. package/dist/features/codex-notifier/index.d.ts +0 -21
  1586. package/dist/features/codex-notifier/index.d.ts.map +0 -1
  1587. package/dist/features/codex-notifier/index.js +0 -19
  1588. package/dist/features/codex-notifier/index.js.map +0 -1
  1589. package/dist/features/codex-notifier/internal-turn.d.ts +0 -5
  1590. package/dist/features/codex-notifier/internal-turn.d.ts.map +0 -1
  1591. package/dist/features/codex-notifier/internal-turn.js +0 -43
  1592. package/dist/features/codex-notifier/internal-turn.js.map +0 -1
  1593. package/dist/features/codex-notifier/outbox-worker.d.ts +0 -71
  1594. package/dist/features/codex-notifier/outbox-worker.d.ts.map +0 -1
  1595. package/dist/features/codex-notifier/outbox-worker.js +0 -290
  1596. package/dist/features/codex-notifier/outbox-worker.js.map +0 -1
  1597. package/dist/features/codex-notifier/outbox.d.ts +0 -25
  1598. package/dist/features/codex-notifier/outbox.d.ts.map +0 -1
  1599. package/dist/features/codex-notifier/outbox.js +0 -225
  1600. package/dist/features/codex-notifier/outbox.js.map +0 -1
  1601. package/dist/features/codex-notifier/paths.d.ts +0 -7
  1602. package/dist/features/codex-notifier/paths.d.ts.map +0 -1
  1603. package/dist/features/codex-notifier/paths.js +0 -20
  1604. package/dist/features/codex-notifier/paths.js.map +0 -1
  1605. package/dist/features/codex-notifier/screen-lock.d.ts +0 -12
  1606. package/dist/features/codex-notifier/screen-lock.d.ts.map +0 -1
  1607. package/dist/features/codex-notifier/screen-lock.js +0 -47
  1608. package/dist/features/codex-notifier/screen-lock.js.map +0 -1
  1609. package/dist/features/codex-notifier/side-conversation-monitor.d.ts +0 -102
  1610. package/dist/features/codex-notifier/side-conversation-monitor.d.ts.map +0 -1
  1611. package/dist/features/codex-notifier/side-conversation-monitor.js +0 -774
  1612. package/dist/features/codex-notifier/side-conversation-monitor.js.map +0 -1
  1613. package/dist/features/codex-notifier/types.d.ts +0 -42
  1614. package/dist/features/codex-notifier/types.d.ts.map +0 -1
  1615. package/dist/features/codex-notifier/types.js +0 -2
  1616. package/dist/features/codex-notifier/types.js.map +0 -1
  1617. package/dist/features/codex-notifier/worker-lock.d.ts +0 -8
  1618. package/dist/features/codex-notifier/worker-lock.d.ts.map +0 -1
  1619. package/dist/features/codex-notifier/worker-lock.js +0 -108
  1620. package/dist/features/codex-notifier/worker-lock.js.map +0 -1
  1621. package/dist/global-config.d.ts +0 -264
  1622. package/dist/global-config.d.ts.map +0 -1
  1623. package/dist/global-config.js +0 -504
  1624. package/dist/global-config.js.map +0 -1
  1625. package/dist/i18n/en.d.ts +0 -3
  1626. package/dist/i18n/en.d.ts.map +0 -1
  1627. package/dist/i18n/en.js +0 -1211
  1628. package/dist/i18n/en.js.map +0 -1
  1629. package/dist/i18n/index.d.ts +0 -33
  1630. package/dist/i18n/index.d.ts.map +0 -1
  1631. package/dist/i18n/index.js +0 -74
  1632. package/dist/i18n/index.js.map +0 -1
  1633. package/dist/i18n/types.d.ts +0 -4
  1634. package/dist/i18n/types.d.ts.map +0 -1
  1635. package/dist/i18n/types.js +0 -5
  1636. package/dist/i18n/types.js.map +0 -1
  1637. package/dist/i18n/zh.d.ts +0 -6
  1638. package/dist/i18n/zh.d.ts.map +0 -1
  1639. package/dist/i18n/zh.js +0 -1212
  1640. package/dist/i18n/zh.js.map +0 -1
  1641. package/dist/im/lark/ask-card.d.ts +0 -55
  1642. package/dist/im/lark/ask-card.d.ts.map +0 -1
  1643. package/dist/im/lark/ask-card.js +0 -392
  1644. package/dist/im/lark/ask-card.js.map +0 -1
  1645. package/dist/im/lark/brand-template.d.ts +0 -15
  1646. package/dist/im/lark/brand-template.d.ts.map +0 -1
  1647. package/dist/im/lark/brand-template.js +0 -114
  1648. package/dist/im/lark/brand-template.js.map +0 -1
  1649. package/dist/im/lark/callback-button-marker.d.ts +0 -34
  1650. package/dist/im/lark/callback-button-marker.d.ts.map +0 -1
  1651. package/dist/im/lark/callback-button-marker.js +0 -99
  1652. package/dist/im/lark/callback-button-marker.js.map +0 -1
  1653. package/dist/im/lark/card-builder.d.ts +0 -367
  1654. package/dist/im/lark/card-builder.d.ts.map +0 -1
  1655. package/dist/im/lark/card-builder.js +0 -2238
  1656. package/dist/im/lark/card-builder.js.map +0 -1
  1657. package/dist/im/lark/card-handler.d.ts +0 -158
  1658. package/dist/im/lark/card-handler.d.ts.map +0 -1
  1659. package/dist/im/lark/card-handler.js +0 -2923
  1660. package/dist/im/lark/card-handler.js.map +0 -1
  1661. package/dist/im/lark/client.d.ts +0 -471
  1662. package/dist/im/lark/client.d.ts.map +0 -1
  1663. package/dist/im/lark/client.js +0 -1943
  1664. package/dist/im/lark/client.js.map +0 -1
  1665. package/dist/im/lark/doc-comment.d.ts +0 -164
  1666. package/dist/im/lark/doc-comment.d.ts.map +0 -1
  1667. package/dist/im/lark/doc-comment.js +0 -611
  1668. package/dist/im/lark/doc-comment.js.map +0 -1
  1669. package/dist/im/lark/event-dispatcher.d.ts +0 -420
  1670. package/dist/im/lark/event-dispatcher.d.ts.map +0 -1
  1671. package/dist/im/lark/event-dispatcher.js +0 -3274
  1672. package/dist/im/lark/event-dispatcher.js.map +0 -1
  1673. package/dist/im/lark/forward-followup-buffer.d.ts +0 -26
  1674. package/dist/im/lark/forward-followup-buffer.d.ts.map +0 -1
  1675. package/dist/im/lark/forward-followup-buffer.js +0 -48
  1676. package/dist/im/lark/forward-followup-buffer.js.map +0 -1
  1677. package/dist/im/lark/forward-followup-content.d.ts +0 -6
  1678. package/dist/im/lark/forward-followup-content.d.ts.map +0 -1
  1679. package/dist/im/lark/forward-followup-content.js +0 -46
  1680. package/dist/im/lark/forward-followup-content.js.map +0 -1
  1681. package/dist/im/lark/forward-followup-store.d.ts +0 -9
  1682. package/dist/im/lark/forward-followup-store.d.ts.map +0 -1
  1683. package/dist/im/lark/forward-followup-store.js +0 -48
  1684. package/dist/im/lark/forward-followup-store.js.map +0 -1
  1685. package/dist/im/lark/forwarded-renderer.d.ts +0 -23
  1686. package/dist/im/lark/forwarded-renderer.d.ts.map +0 -1
  1687. package/dist/im/lark/forwarded-renderer.js +0 -112
  1688. package/dist/im/lark/forwarded-renderer.js.map +0 -1
  1689. package/dist/im/lark/grant-command.d.ts +0 -51
  1690. package/dist/im/lark/grant-command.d.ts.map +0 -1
  1691. package/dist/im/lark/grant-command.js +0 -215
  1692. package/dist/im/lark/grant-command.js.map +0 -1
  1693. package/dist/im/lark/grant-pending.d.ts +0 -31
  1694. package/dist/im/lark/grant-pending.d.ts.map +0 -1
  1695. package/dist/im/lark/grant-pending.js +0 -122
  1696. package/dist/im/lark/grant-pending.js.map +0 -1
  1697. package/dist/im/lark/groups-card.d.ts +0 -90
  1698. package/dist/im/lark/groups-card.d.ts.map +0 -1
  1699. package/dist/im/lark/groups-card.js +0 -832
  1700. package/dist/im/lark/groups-card.js.map +0 -1
  1701. package/dist/im/lark/identity-cache.d.ts +0 -88
  1702. package/dist/im/lark/identity-cache.d.ts.map +0 -1
  1703. package/dist/im/lark/identity-cache.js +0 -310
  1704. package/dist/im/lark/identity-cache.js.map +0 -1
  1705. package/dist/im/lark/inline-mentions.d.ts +0 -42
  1706. package/dist/im/lark/inline-mentions.d.ts.map +0 -1
  1707. package/dist/im/lark/inline-mentions.js +0 -27
  1708. package/dist/im/lark/inline-mentions.js.map +0 -1
  1709. package/dist/im/lark/invite-command.d.ts +0 -20
  1710. package/dist/im/lark/invite-command.d.ts.map +0 -1
  1711. package/dist/im/lark/invite-command.js +0 -292
  1712. package/dist/im/lark/invite-command.js.map +0 -1
  1713. package/dist/im/lark/issue-card.d.ts +0 -223
  1714. package/dist/im/lark/issue-card.d.ts.map +0 -1
  1715. package/dist/im/lark/issue-card.js +0 -542
  1716. package/dist/im/lark/issue-card.js.map +0 -1
  1717. package/dist/im/lark/issue-command-deps.d.ts +0 -41
  1718. package/dist/im/lark/issue-command-deps.d.ts.map +0 -1
  1719. package/dist/im/lark/issue-command-deps.js +0 -195
  1720. package/dist/im/lark/issue-command-deps.js.map +0 -1
  1721. package/dist/im/lark/issue-command.d.ts +0 -137
  1722. package/dist/im/lark/issue-command.d.ts.map +0 -1
  1723. package/dist/im/lark/issue-command.js +0 -335
  1724. package/dist/im/lark/issue-command.js.map +0 -1
  1725. package/dist/im/lark/lark-hosts.d.ts +0 -49
  1726. package/dist/im/lark/lark-hosts.d.ts.map +0 -1
  1727. package/dist/im/lark/lark-hosts.js +0 -59
  1728. package/dist/im/lark/lark-hosts.js.map +0 -1
  1729. package/dist/im/lark/md-card.d.ts +0 -192
  1730. package/dist/im/lark/md-card.d.ts.map +0 -1
  1731. package/dist/im/lark/md-card.js +0 -872
  1732. package/dist/im/lark/md-card.js.map +0 -1
  1733. package/dist/im/lark/mention-targets.d.ts +0 -43
  1734. package/dist/im/lark/mention-targets.d.ts.map +0 -1
  1735. package/dist/im/lark/mention-targets.js +0 -190
  1736. package/dist/im/lark/mention-targets.js.map +0 -1
  1737. package/dist/im/lark/merge-forward.d.ts +0 -32
  1738. package/dist/im/lark/merge-forward.d.ts.map +0 -1
  1739. package/dist/im/lark/merge-forward.js +0 -140
  1740. package/dist/im/lark/merge-forward.js.map +0 -1
  1741. package/dist/im/lark/message-parser.d.ts +0 -272
  1742. package/dist/im/lark/message-parser.d.ts.map +0 -1
  1743. package/dist/im/lark/message-parser.js +0 -1261
  1744. package/dist/im/lark/message-parser.js.map +0 -1
  1745. package/dist/im/lark/overload-nonce.d.ts +0 -19
  1746. package/dist/im/lark/overload-nonce.d.ts.map +0 -1
  1747. package/dist/im/lark/overload-nonce.js +0 -72
  1748. package/dist/im/lark/overload-nonce.js.map +0 -1
  1749. package/dist/im/lark/overview-card.d.ts +0 -100
  1750. package/dist/im/lark/overview-card.d.ts.map +0 -1
  1751. package/dist/im/lark/overview-card.js +0 -428
  1752. package/dist/im/lark/overview-card.js.map +0 -1
  1753. package/dist/im/lark/quote-hint.d.ts +0 -19
  1754. package/dist/im/lark/quote-hint.d.ts.map +0 -1
  1755. package/dist/im/lark/quote-hint.js +0 -24
  1756. package/dist/im/lark/quote-hint.js.map +0 -1
  1757. package/dist/im/lark/relay-target-routing.d.ts +0 -17
  1758. package/dist/im/lark/relay-target-routing.d.ts.map +0 -1
  1759. package/dist/im/lark/relay-target-routing.js +0 -74
  1760. package/dist/im/lark/relay-target-routing.js.map +0 -1
  1761. package/dist/im/lark/reply-card-footer-signature.d.ts +0 -7
  1762. package/dist/im/lark/reply-card-footer-signature.d.ts.map +0 -1
  1763. package/dist/im/lark/reply-card-footer-signature.js +0 -7
  1764. package/dist/im/lark/reply-card-footer-signature.js.map +0 -1
  1765. package/dist/im/lark/reply-mode-command.d.ts +0 -2
  1766. package/dist/im/lark/reply-mode-command.d.ts.map +0 -1
  1767. package/dist/im/lark/reply-mode-command.js +0 -108
  1768. package/dist/im/lark/reply-mode-command.js.map +0 -1
  1769. package/dist/im/lark/schedules-card.d.ts +0 -96
  1770. package/dist/im/lark/schedules-card.d.ts.map +0 -1
  1771. package/dist/im/lark/schedules-card.js +0 -910
  1772. package/dist/im/lark/schedules-card.js.map +0 -1
  1773. package/dist/im/lark/sessions-card.d.ts +0 -117
  1774. package/dist/im/lark/sessions-card.d.ts.map +0 -1
  1775. package/dist/im/lark/sessions-card.js +0 -876
  1776. package/dist/im/lark/sessions-card.js.map +0 -1
  1777. package/dist/im/lark/settings-card.d.ts +0 -125
  1778. package/dist/im/lark/settings-card.d.ts.map +0 -1
  1779. package/dist/im/lark/settings-card.js +0 -434
  1780. package/dist/im/lark/settings-card.js.map +0 -1
  1781. package/dist/im/lark/substitute-command.d.ts +0 -2
  1782. package/dist/im/lark/substitute-command.d.ts.map +0 -1
  1783. package/dist/im/lark/substitute-command.js +0 -68
  1784. package/dist/im/lark/substitute-command.js.map +0 -1
  1785. package/dist/im/lark/summary-command.d.ts +0 -21
  1786. package/dist/im/lark/summary-command.d.ts.map +0 -1
  1787. package/dist/im/lark/summary-command.js +0 -335
  1788. package/dist/im/lark/summary-command.js.map +0 -1
  1789. package/dist/im/lark/topic-root-context.d.ts +0 -35
  1790. package/dist/im/lark/topic-root-context.d.ts.map +0 -1
  1791. package/dist/im/lark/topic-root-context.js +0 -37
  1792. package/dist/im/lark/topic-root-context.js.map +0 -1
  1793. package/dist/im/lark/v3-blocked-card-handler.d.ts +0 -28
  1794. package/dist/im/lark/v3-blocked-card-handler.d.ts.map +0 -1
  1795. package/dist/im/lark/v3-blocked-card-handler.js +0 -134
  1796. package/dist/im/lark/v3-blocked-card-handler.js.map +0 -1
  1797. package/dist/im/lark/v3-blocked-card.d.ts +0 -76
  1798. package/dist/im/lark/v3-blocked-card.d.ts.map +0 -1
  1799. package/dist/im/lark/v3-blocked-card.js +0 -224
  1800. package/dist/im/lark/v3-blocked-card.js.map +0 -1
  1801. package/dist/im/lark/v3-distillation-card-handler.d.ts +0 -12
  1802. package/dist/im/lark/v3-distillation-card-handler.d.ts.map +0 -1
  1803. package/dist/im/lark/v3-distillation-card-handler.js +0 -107
  1804. package/dist/im/lark/v3-distillation-card-handler.js.map +0 -1
  1805. package/dist/im/lark/v3-distillation-card.d.ts +0 -42
  1806. package/dist/im/lark/v3-distillation-card.d.ts.map +0 -1
  1807. package/dist/im/lark/v3-distillation-card.js +0 -206
  1808. package/dist/im/lark/v3-distillation-card.js.map +0 -1
  1809. package/dist/im/lark/v3-gate-card-handler.d.ts +0 -31
  1810. package/dist/im/lark/v3-gate-card-handler.d.ts.map +0 -1
  1811. package/dist/im/lark/v3-gate-card-handler.js +0 -111
  1812. package/dist/im/lark/v3-gate-card-handler.js.map +0 -1
  1813. package/dist/im/lark/v3-gate-card.d.ts +0 -56
  1814. package/dist/im/lark/v3-gate-card.d.ts.map +0 -1
  1815. package/dist/im/lark/v3-gate-card.js +0 -153
  1816. package/dist/im/lark/v3-gate-card.js.map +0 -1
  1817. package/dist/im/lark/v3-loop-grant-card-handler.d.ts +0 -28
  1818. package/dist/im/lark/v3-loop-grant-card-handler.d.ts.map +0 -1
  1819. package/dist/im/lark/v3-loop-grant-card-handler.js +0 -89
  1820. package/dist/im/lark/v3-loop-grant-card-handler.js.map +0 -1
  1821. package/dist/im/lark/v3-loop-grant-card.d.ts +0 -46
  1822. package/dist/im/lark/v3-loop-grant-card.d.ts.map +0 -1
  1823. package/dist/im/lark/v3-loop-grant-card.js +0 -120
  1824. package/dist/im/lark/v3-loop-grant-card.js.map +0 -1
  1825. package/dist/im/lark/v3-progress-card-manager.d.ts +0 -79
  1826. package/dist/im/lark/v3-progress-card-manager.d.ts.map +0 -1
  1827. package/dist/im/lark/v3-progress-card-manager.js +0 -444
  1828. package/dist/im/lark/v3-progress-card-manager.js.map +0 -1
  1829. package/dist/im/lark/v3-progress-card.d.ts +0 -26
  1830. package/dist/im/lark/v3-progress-card.d.ts.map +0 -1
  1831. package/dist/im/lark/v3-progress-card.js +0 -217
  1832. package/dist/im/lark/v3-progress-card.js.map +0 -1
  1833. package/dist/im/lark/v3-revisit-grant-card-handler.d.ts +0 -29
  1834. package/dist/im/lark/v3-revisit-grant-card-handler.d.ts.map +0 -1
  1835. package/dist/im/lark/v3-revisit-grant-card-handler.js +0 -95
  1836. package/dist/im/lark/v3-revisit-grant-card-handler.js.map +0 -1
  1837. package/dist/im/lark/v3-revisit-grant-card.d.ts +0 -52
  1838. package/dist/im/lark/v3-revisit-grant-card.d.ts.map +0 -1
  1839. package/dist/im/lark/v3-revisit-grant-card.js +0 -124
  1840. package/dist/im/lark/v3-revisit-grant-card.js.map +0 -1
  1841. package/dist/im/lark/v3-run-save-card-handler.d.ts +0 -12
  1842. package/dist/im/lark/v3-run-save-card-handler.d.ts.map +0 -1
  1843. package/dist/im/lark/v3-run-save-card-handler.js +0 -160
  1844. package/dist/im/lark/v3-run-save-card-handler.js.map +0 -1
  1845. package/dist/im/lark/v3-run-save-card.d.ts +0 -38
  1846. package/dist/im/lark/v3-run-save-card.d.ts.map +0 -1
  1847. package/dist/im/lark/v3-run-save-card.js +0 -125
  1848. package/dist/im/lark/v3-run-save-card.js.map +0 -1
  1849. package/dist/im/lark/v3-saved-workflow-command.d.ts +0 -36
  1850. package/dist/im/lark/v3-saved-workflow-command.d.ts.map +0 -1
  1851. package/dist/im/lark/v3-saved-workflow-command.js +0 -186
  1852. package/dist/im/lark/v3-saved-workflow-command.js.map +0 -1
  1853. package/dist/im/lark/v3-saved-workflow-handler.d.ts +0 -89
  1854. package/dist/im/lark/v3-saved-workflow-handler.d.ts.map +0 -1
  1855. package/dist/im/lark/v3-saved-workflow-handler.js +0 -212
  1856. package/dist/im/lark/v3-saved-workflow-handler.js.map +0 -1
  1857. package/dist/im/lark/workflow-slash-command.d.ts +0 -18
  1858. package/dist/im/lark/workflow-slash-command.d.ts.map +0 -1
  1859. package/dist/im/lark/workflow-slash-command.js +0 -36
  1860. package/dist/im/lark/workflow-slash-command.js.map +0 -1
  1861. package/dist/im/types.d.ts +0 -79
  1862. package/dist/im/types.d.ts.map +0 -1
  1863. package/dist/im/types.js +0 -2
  1864. package/dist/im/types.js.map +0 -1
  1865. package/dist/index-core-only.d.ts +0 -3
  1866. package/dist/index-core-only.d.ts.map +0 -1
  1867. package/dist/index-core-only.js +0 -118
  1868. package/dist/index-core-only.js.map +0 -1
  1869. package/dist/index-daemon.d.ts +0 -3
  1870. package/dist/index-daemon.d.ts.map +0 -1
  1871. package/dist/index-daemon.js +0 -64
  1872. package/dist/index-daemon.js.map +0 -1
  1873. package/dist/mir-local-runtime.d.ts +0 -60
  1874. package/dist/mir-local-runtime.d.ts.map +0 -1
  1875. package/dist/mir-local-runtime.js +0 -362
  1876. package/dist/mir-local-runtime.js.map +0 -1
  1877. package/dist/mir-prompt.d.ts +0 -16
  1878. package/dist/mir-prompt.d.ts.map +0 -1
  1879. package/dist/mir-prompt.js +0 -170
  1880. package/dist/mir-prompt.js.map +0 -1
  1881. package/dist/mir-runner.d.ts +0 -3
  1882. package/dist/mir-runner.d.ts.map +0 -1
  1883. package/dist/mir-runner.js +0 -369
  1884. package/dist/mir-runner.js.map +0 -1
  1885. package/dist/mira-output.d.ts +0 -3
  1886. package/dist/mira-output.d.ts.map +0 -1
  1887. package/dist/mira-output.js +0 -136
  1888. package/dist/mira-output.js.map +0 -1
  1889. package/dist/mira-runner.d.ts +0 -3
  1890. package/dist/mira-runner.d.ts.map +0 -1
  1891. package/dist/mira-runner.js +0 -530
  1892. package/dist/mira-runner.js.map +0 -1
  1893. package/dist/platform/bind.d.ts +0 -5
  1894. package/dist/platform/bind.d.ts.map +0 -1
  1895. package/dist/platform/bind.js +0 -157
  1896. package/dist/platform/bind.js.map +0 -1
  1897. package/dist/platform/binding.d.ts +0 -47
  1898. package/dist/platform/binding.d.ts.map +0 -1
  1899. package/dist/platform/binding.js +0 -84
  1900. package/dist/platform/binding.js.map +0 -1
  1901. package/dist/platform/device-command.d.ts +0 -35
  1902. package/dist/platform/device-command.d.ts.map +0 -1
  1903. package/dist/platform/device-command.js +0 -187
  1904. package/dist/platform/device-command.js.map +0 -1
  1905. package/dist/platform/device-enroll.d.ts +0 -156
  1906. package/dist/platform/device-enroll.d.ts.map +0 -1
  1907. package/dist/platform/device-enroll.js +0 -781
  1908. package/dist/platform/device-enroll.js.map +0 -1
  1909. package/dist/platform/device-isolation-activation-client.d.ts +0 -28
  1910. package/dist/platform/device-isolation-activation-client.d.ts.map +0 -1
  1911. package/dist/platform/device-isolation-activation-client.js +0 -279
  1912. package/dist/platform/device-isolation-activation-client.js.map +0 -1
  1913. package/dist/platform/device-isolation.d.ts +0 -35
  1914. package/dist/platform/device-isolation.d.ts.map +0 -1
  1915. package/dist/platform/device-isolation.js +0 -90
  1916. package/dist/platform/device-isolation.js.map +0 -1
  1917. package/dist/platform/device-paths.d.ts +0 -9
  1918. package/dist/platform/device-paths.d.ts.map +0 -1
  1919. package/dist/platform/device-paths.js +0 -14
  1920. package/dist/platform/device-paths.js.map +0 -1
  1921. package/dist/platform/device.d.ts +0 -77
  1922. package/dist/platform/device.d.ts.map +0 -1
  1923. package/dist/platform/device.js +0 -212
  1924. package/dist/platform/device.js.map +0 -1
  1925. package/dist/platform/host-command-context.d.ts +0 -15
  1926. package/dist/platform/host-command-context.d.ts.map +0 -1
  1927. package/dist/platform/host-command-context.js +0 -26
  1928. package/dist/platform/host-command-context.js.map +0 -1
  1929. package/dist/platform/issue-client.d.ts +0 -201
  1930. package/dist/platform/issue-client.d.ts.map +0 -1
  1931. package/dist/platform/issue-client.js +0 -142
  1932. package/dist/platform/issue-client.js.map +0 -1
  1933. package/dist/platform/platform-http.d.ts +0 -15
  1934. package/dist/platform/platform-http.d.ts.map +0 -1
  1935. package/dist/platform/platform-http.js +0 -77
  1936. package/dist/platform/platform-http.js.map +0 -1
  1937. package/dist/platform/secure-host-file.d.ts +0 -12
  1938. package/dist/platform/secure-host-file.d.ts.map +0 -1
  1939. package/dist/platform/secure-host-file.js +0 -301
  1940. package/dist/platform/secure-host-file.js.map +0 -1
  1941. package/dist/platform/tunnel-client.d.ts +0 -41
  1942. package/dist/platform/tunnel-client.d.ts.map +0 -1
  1943. package/dist/platform/tunnel-client.js +0 -493
  1944. package/dist/platform/tunnel-client.js.map +0 -1
  1945. package/dist/pm2-graceful-exit.d.ts +0 -28
  1946. package/dist/pm2-graceful-exit.d.ts.map +0 -1
  1947. package/dist/pm2-graceful-exit.js +0 -39
  1948. package/dist/pm2-graceful-exit.js.map +0 -1
  1949. package/dist/services/adopt-picker.d.ts +0 -41
  1950. package/dist/services/adopt-picker.d.ts.map +0 -1
  1951. package/dist/services/adopt-picker.js +0 -70
  1952. package/dist/services/adopt-picker.js.map +0 -1
  1953. package/dist/services/aiden-checkpoints.d.ts +0 -5
  1954. package/dist/services/aiden-checkpoints.d.ts.map +0 -1
  1955. package/dist/services/aiden-checkpoints.js +0 -91
  1956. package/dist/services/aiden-checkpoints.js.map +0 -1
  1957. package/dist/services/allowed-chat-groups.d.ts +0 -11
  1958. package/dist/services/allowed-chat-groups.d.ts.map +0 -1
  1959. package/dist/services/allowed-chat-groups.js +0 -20
  1960. package/dist/services/allowed-chat-groups.js.map +0 -1
  1961. package/dist/services/async-trigger-state.d.ts +0 -90
  1962. package/dist/services/async-trigger-state.d.ts.map +0 -1
  1963. package/dist/services/async-trigger-state.js +0 -96
  1964. package/dist/services/async-trigger-state.js.map +0 -1
  1965. package/dist/services/async-trigger-store.d.ts +0 -36
  1966. package/dist/services/async-trigger-store.d.ts.map +0 -1
  1967. package/dist/services/async-trigger-store.js +0 -121
  1968. package/dist/services/async-trigger-store.js.map +0 -1
  1969. package/dist/services/backend-availability.d.ts +0 -29
  1970. package/dist/services/backend-availability.d.ts.map +0 -1
  1971. package/dist/services/backend-availability.js +0 -55
  1972. package/dist/services/backend-availability.js.map +0 -1
  1973. package/dist/services/backend-type-store.d.ts +0 -33
  1974. package/dist/services/backend-type-store.d.ts.map +0 -1
  1975. package/dist/services/backend-type-store.js +0 -43
  1976. package/dist/services/backend-type-store.js.map +0 -1
  1977. package/dist/services/bot-config-store.d.ts +0 -155
  1978. package/dist/services/bot-config-store.d.ts.map +0 -1
  1979. package/dist/services/bot-config-store.js +0 -384
  1980. package/dist/services/bot-config-store.js.map +0 -1
  1981. package/dist/services/bot-owner-store.d.ts +0 -28
  1982. package/dist/services/bot-owner-store.d.ts.map +0 -1
  1983. package/dist/services/bot-owner-store.js +0 -82
  1984. package/dist/services/bot-owner-store.js.map +0 -1
  1985. package/dist/services/bot-profile-store.d.ts +0 -16
  1986. package/dist/services/bot-profile-store.d.ts.map +0 -1
  1987. package/dist/services/bot-profile-store.js +0 -98
  1988. package/dist/services/bot-profile-store.js.map +0 -1
  1989. package/dist/services/bot-union-ids-store.d.ts +0 -24
  1990. package/dist/services/bot-union-ids-store.d.ts.map +0 -1
  1991. package/dist/services/bot-union-ids-store.js +0 -79
  1992. package/dist/services/bot-union-ids-store.js.map +0 -1
  1993. package/dist/services/brand-store.d.ts +0 -15
  1994. package/dist/services/brand-store.d.ts.map +0 -1
  1995. package/dist/services/brand-store.js +0 -47
  1996. package/dist/services/brand-store.js.map +0 -1
  1997. package/dist/services/bridge-fallback-gate.d.ts +0 -72
  1998. package/dist/services/bridge-fallback-gate.d.ts.map +0 -1
  1999. package/dist/services/bridge-fallback-gate.js +0 -190
  2000. package/dist/services/bridge-fallback-gate.js.map +0 -1
  2001. package/dist/services/bridge-rotation-policy.d.ts +0 -179
  2002. package/dist/services/bridge-rotation-policy.d.ts.map +0 -1
  2003. package/dist/services/bridge-rotation-policy.js +0 -163
  2004. package/dist/services/bridge-rotation-policy.js.map +0 -1
  2005. package/dist/services/bridge-turn-queue.d.ts +0 -198
  2006. package/dist/services/bridge-turn-queue.d.ts.map +0 -1
  2007. package/dist/services/bridge-turn-queue.js +0 -430
  2008. package/dist/services/bridge-turn-queue.js.map +0 -1
  2009. package/dist/services/card-mode-store.d.ts +0 -13
  2010. package/dist/services/card-mode-store.d.ts.map +0 -1
  2011. package/dist/services/card-mode-store.js +0 -52
  2012. package/dist/services/card-mode-store.js.map +0 -1
  2013. package/dist/services/card-prefs-store.d.ts +0 -55
  2014. package/dist/services/card-prefs-store.d.ts.map +0 -1
  2015. package/dist/services/card-prefs-store.js +0 -269
  2016. package/dist/services/card-prefs-store.js.map +0 -1
  2017. package/dist/services/chat-first-seen-store.d.ts +0 -27
  2018. package/dist/services/chat-first-seen-store.d.ts.map +0 -1
  2019. package/dist/services/chat-first-seen-store.js +0 -114
  2020. package/dist/services/chat-first-seen-store.js.map +0 -1
  2021. package/dist/services/chat-reply-mode-store.d.ts +0 -30
  2022. package/dist/services/chat-reply-mode-store.d.ts.map +0 -1
  2023. package/dist/services/chat-reply-mode-store.js +0 -135
  2024. package/dist/services/chat-reply-mode-store.js.map +0 -1
  2025. package/dist/services/claude-transcript.d.ts +0 -323
  2026. package/dist/services/claude-transcript.d.ts.map +0 -1
  2027. package/dist/services/claude-transcript.js +0 -930
  2028. package/dist/services/claude-transcript.js.map +0 -1
  2029. package/dist/services/coco-paths.d.ts +0 -10
  2030. package/dist/services/coco-paths.d.ts.map +0 -1
  2031. package/dist/services/coco-paths.js +0 -16
  2032. package/dist/services/coco-paths.js.map +0 -1
  2033. package/dist/services/coco-transcript.d.ts +0 -35
  2034. package/dist/services/coco-transcript.d.ts.map +0 -1
  2035. package/dist/services/coco-transcript.js +0 -183
  2036. package/dist/services/coco-transcript.js.map +0 -1
  2037. package/dist/services/codex-app-runner-protocol.d.ts +0 -70
  2038. package/dist/services/codex-app-runner-protocol.d.ts.map +0 -1
  2039. package/dist/services/codex-app-runner-protocol.js +0 -187
  2040. package/dist/services/codex-app-runner-protocol.js.map +0 -1
  2041. package/dist/services/codex-app-threads.d.ts +0 -67
  2042. package/dist/services/codex-app-threads.d.ts.map +0 -1
  2043. package/dist/services/codex-app-threads.js +0 -657
  2044. package/dist/services/codex-app-threads.js.map +0 -1
  2045. package/dist/services/codex-app-token-usage.d.ts +0 -93
  2046. package/dist/services/codex-app-token-usage.d.ts.map +0 -1
  2047. package/dist/services/codex-app-token-usage.js +0 -190
  2048. package/dist/services/codex-app-token-usage.js.map +0 -1
  2049. package/dist/services/codex-app-turn-controller.d.ts +0 -72
  2050. package/dist/services/codex-app-turn-controller.d.ts.map +0 -1
  2051. package/dist/services/codex-app-turn-controller.js +0 -524
  2052. package/dist/services/codex-app-turn-controller.js.map +0 -1
  2053. package/dist/services/codex-bridge-queue.d.ts +0 -73
  2054. package/dist/services/codex-bridge-queue.d.ts.map +0 -1
  2055. package/dist/services/codex-bridge-queue.js +0 -273
  2056. package/dist/services/codex-bridge-queue.js.map +0 -1
  2057. package/dist/services/codex-composer-state.d.ts +0 -27
  2058. package/dist/services/codex-composer-state.d.ts.map +0 -1
  2059. package/dist/services/codex-composer-state.js +0 -53
  2060. package/dist/services/codex-composer-state.js.map +0 -1
  2061. package/dist/services/codex-paths.d.ts +0 -7
  2062. package/dist/services/codex-paths.d.ts.map +0 -1
  2063. package/dist/services/codex-paths.js +0 -19
  2064. package/dist/services/codex-paths.js.map +0 -1
  2065. package/dist/services/codex-runner-freshness.d.ts +0 -39
  2066. package/dist/services/codex-runner-freshness.d.ts.map +0 -1
  2067. package/dist/services/codex-runner-freshness.js +0 -78
  2068. package/dist/services/codex-runner-freshness.js.map +0 -1
  2069. package/dist/services/codex-service-tier.d.ts +0 -44
  2070. package/dist/services/codex-service-tier.d.ts.map +0 -1
  2071. package/dist/services/codex-service-tier.js +0 -63
  2072. package/dist/services/codex-service-tier.js.map +0 -1
  2073. package/dist/services/codex-transcript.d.ts +0 -140
  2074. package/dist/services/codex-transcript.d.ts.map +0 -1
  2075. package/dist/services/codex-transcript.js +0 -631
  2076. package/dist/services/codex-transcript.js.map +0 -1
  2077. package/dist/services/config-store.d.ts +0 -19
  2078. package/dist/services/config-store.d.ts.map +0 -1
  2079. package/dist/services/config-store.js +0 -52
  2080. package/dist/services/config-store.js.map +0 -1
  2081. package/dist/services/connector-store.d.ts +0 -71
  2082. package/dist/services/connector-store.d.ts.map +0 -1
  2083. package/dist/services/connector-store.js +0 -79
  2084. package/dist/services/connector-store.js.map +0 -1
  2085. package/dist/services/cursor-resume-policy.d.ts +0 -12
  2086. package/dist/services/cursor-resume-policy.d.ts.map +0 -1
  2087. package/dist/services/cursor-resume-policy.js +0 -15
  2088. package/dist/services/cursor-resume-policy.js.map +0 -1
  2089. package/dist/services/cursor-transcript.d.ts +0 -47
  2090. package/dist/services/cursor-transcript.d.ts.map +0 -1
  2091. package/dist/services/cursor-transcript.js +0 -324
  2092. package/dist/services/cursor-transcript.js.map +0 -1
  2093. package/dist/services/default-worktree.d.ts +0 -28
  2094. package/dist/services/default-worktree.d.ts.map +0 -1
  2095. package/dist/services/default-worktree.js +0 -102
  2096. package/dist/services/default-worktree.js.map +0 -1
  2097. package/dist/services/deployment-identity.d.ts +0 -22
  2098. package/dist/services/deployment-identity.d.ts.map +0 -1
  2099. package/dist/services/deployment-identity.js +0 -67
  2100. package/dist/services/deployment-identity.js.map +0 -1
  2101. package/dist/services/doc-subs-store.d.ts +0 -63
  2102. package/dist/services/doc-subs-store.d.ts.map +0 -1
  2103. package/dist/services/doc-subs-store.js +0 -95
  2104. package/dist/services/doc-subs-store.js.map +0 -1
  2105. package/dist/services/exact-chat-grant.d.ts +0 -83
  2106. package/dist/services/exact-chat-grant.d.ts.map +0 -1
  2107. package/dist/services/exact-chat-grant.js +0 -249
  2108. package/dist/services/exact-chat-grant.js.map +0 -1
  2109. package/dist/services/federation-membership-store.d.ts +0 -23
  2110. package/dist/services/federation-membership-store.d.ts.map +0 -1
  2111. package/dist/services/federation-membership-store.js +0 -66
  2112. package/dist/services/federation-membership-store.js.map +0 -1
  2113. package/dist/services/federation-roster.d.ts +0 -58
  2114. package/dist/services/federation-roster.d.ts.map +0 -1
  2115. package/dist/services/federation-roster.js +0 -59
  2116. package/dist/services/federation-roster.js.map +0 -1
  2117. package/dist/services/federation-store.d.ts +0 -87
  2118. package/dist/services/federation-store.d.ts.map +0 -1
  2119. package/dist/services/federation-store.js +0 -143
  2120. package/dist/services/federation-store.js.map +0 -1
  2121. package/dist/services/file-bridge-path.d.ts +0 -8
  2122. package/dist/services/file-bridge-path.d.ts.map +0 -1
  2123. package/dist/services/file-bridge-path.js +0 -75
  2124. package/dist/services/file-bridge-path.js.map +0 -1
  2125. package/dist/services/frozen-card-store.d.ts +0 -8
  2126. package/dist/services/frozen-card-store.d.ts.map +0 -1
  2127. package/dist/services/frozen-card-store.js +0 -66
  2128. package/dist/services/frozen-card-store.js.map +0 -1
  2129. package/dist/services/git-worktree.d.ts +0 -63
  2130. package/dist/services/git-worktree.d.ts.map +0 -1
  2131. package/dist/services/git-worktree.js +0 -246
  2132. package/dist/services/git-worktree.js.map +0 -1
  2133. package/dist/services/grant-policy.d.ts +0 -13
  2134. package/dist/services/grant-policy.d.ts.map +0 -1
  2135. package/dist/services/grant-policy.js +0 -40
  2136. package/dist/services/grant-policy.js.map +0 -1
  2137. package/dist/services/grant-prefs-store.d.ts +0 -26
  2138. package/dist/services/grant-prefs-store.d.ts.map +0 -1
  2139. package/dist/services/grant-prefs-store.js +0 -109
  2140. package/dist/services/grant-prefs-store.js.map +0 -1
  2141. package/dist/services/grant-store.d.ts +0 -103
  2142. package/dist/services/grant-store.d.ts.map +0 -1
  2143. package/dist/services/grant-store.js +0 -580
  2144. package/dist/services/grant-store.js.map +0 -1
  2145. package/dist/services/grok-paths.d.ts +0 -27
  2146. package/dist/services/grok-paths.d.ts.map +0 -1
  2147. package/dist/services/grok-paths.js +0 -106
  2148. package/dist/services/grok-paths.js.map +0 -1
  2149. package/dist/services/grok-transcript.d.ts +0 -68
  2150. package/dist/services/grok-transcript.d.ts.map +0 -1
  2151. package/dist/services/grok-transcript.js +0 -681
  2152. package/dist/services/grok-transcript.js.map +0 -1
  2153. package/dist/services/group-creator.d.ts +0 -87
  2154. package/dist/services/group-creator.d.ts.map +0 -1
  2155. package/dist/services/group-creator.js +0 -288
  2156. package/dist/services/group-creator.js.map +0 -1
  2157. package/dist/services/groups-store.d.ts +0 -194
  2158. package/dist/services/groups-store.d.ts.map +0 -1
  2159. package/dist/services/groups-store.js +0 -493
  2160. package/dist/services/groups-store.js.map +0 -1
  2161. package/dist/services/hermes-session-filter.d.ts +0 -28
  2162. package/dist/services/hermes-session-filter.d.ts.map +0 -1
  2163. package/dist/services/hermes-session-filter.js +0 -53
  2164. package/dist/services/hermes-session-filter.js.map +0 -1
  2165. package/dist/services/hermes-transcript.d.ts +0 -11
  2166. package/dist/services/hermes-transcript.d.ts.map +0 -1
  2167. package/dist/services/hermes-transcript.js +0 -184
  2168. package/dist/services/hermes-transcript.js.map +0 -1
  2169. package/dist/services/hook-runner.d.ts +0 -53
  2170. package/dist/services/hook-runner.d.ts.map +0 -1
  2171. package/dist/services/hook-runner.js +0 -451
  2172. package/dist/services/hook-runner.js.map +0 -1
  2173. package/dist/services/insight/antigravity-span-reader.d.ts +0 -3
  2174. package/dist/services/insight/antigravity-span-reader.d.ts.map +0 -1
  2175. package/dist/services/insight/antigravity-span-reader.js +0 -249
  2176. package/dist/services/insight/antigravity-span-reader.js.map +0 -1
  2177. package/dist/services/insight/classify.d.ts +0 -9
  2178. package/dist/services/insight/classify.d.ts.map +0 -1
  2179. package/dist/services/insight/classify.js +0 -71
  2180. package/dist/services/insight/classify.js.map +0 -1
  2181. package/dist/services/insight/claude-span-reader.d.ts +0 -3
  2182. package/dist/services/insight/claude-span-reader.d.ts.map +0 -1
  2183. package/dist/services/insight/claude-span-reader.js +0 -276
  2184. package/dist/services/insight/claude-span-reader.js.map +0 -1
  2185. package/dist/services/insight/codex-span-reader.d.ts +0 -3
  2186. package/dist/services/insight/codex-span-reader.d.ts.map +0 -1
  2187. package/dist/services/insight/codex-span-reader.js +0 -306
  2188. package/dist/services/insight/codex-span-reader.js.map +0 -1
  2189. package/dist/services/insight/intent.d.ts +0 -5
  2190. package/dist/services/insight/intent.d.ts.map +0 -1
  2191. package/dist/services/insight/intent.js +0 -145
  2192. package/dist/services/insight/intent.js.map +0 -1
  2193. package/dist/services/insight/jsonl.d.ts +0 -10
  2194. package/dist/services/insight/jsonl.d.ts.map +0 -1
  2195. package/dist/services/insight/jsonl.js +0 -36
  2196. package/dist/services/insight/jsonl.js.map +0 -1
  2197. package/dist/services/insight/prompt.d.ts +0 -3
  2198. package/dist/services/insight/prompt.d.ts.map +0 -1
  2199. package/dist/services/insight/prompt.js +0 -99
  2200. package/dist/services/insight/prompt.js.map +0 -1
  2201. package/dist/services/insight/redact.d.ts +0 -4
  2202. package/dist/services/insight/redact.d.ts.map +0 -1
  2203. package/dist/services/insight/redact.js +0 -67
  2204. package/dist/services/insight/redact.js.map +0 -1
  2205. package/dist/services/insight/report.d.ts +0 -29
  2206. package/dist/services/insight/report.d.ts.map +0 -1
  2207. package/dist/services/insight/report.js +0 -1247
  2208. package/dist/services/insight/report.js.map +0 -1
  2209. package/dist/services/insight/safe-detail.d.ts +0 -5
  2210. package/dist/services/insight/safe-detail.d.ts.map +0 -1
  2211. package/dist/services/insight/safe-detail.js +0 -59
  2212. package/dist/services/insight/safe-detail.js.map +0 -1
  2213. package/dist/services/insight/scrub.d.ts +0 -22
  2214. package/dist/services/insight/scrub.d.ts.map +0 -1
  2215. package/dist/services/insight/scrub.js +0 -70
  2216. package/dist/services/insight/scrub.js.map +0 -1
  2217. package/dist/services/insight/subagent-reader.d.ts +0 -19
  2218. package/dist/services/insight/subagent-reader.d.ts.map +0 -1
  2219. package/dist/services/insight/subagent-reader.js +0 -111
  2220. package/dist/services/insight/subagent-reader.js.map +0 -1
  2221. package/dist/services/insight/types.d.ts +0 -448
  2222. package/dist/services/insight/types.d.ts.map +0 -1
  2223. package/dist/services/insight/types.js +0 -2
  2224. package/dist/services/insight/types.js.map +0 -1
  2225. package/dist/services/invite-store.d.ts +0 -28
  2226. package/dist/services/invite-store.d.ts.map +0 -1
  2227. package/dist/services/invite-store.js +0 -85
  2228. package/dist/services/invite-store.js.map +0 -1
  2229. package/dist/services/issue-board-store.d.ts +0 -214
  2230. package/dist/services/issue-board-store.d.ts.map +0 -1
  2231. package/dist/services/issue-board-store.js +0 -472
  2232. package/dist/services/issue-board-store.js.map +0 -1
  2233. package/dist/services/issue-claim-flow.d.ts +0 -160
  2234. package/dist/services/issue-claim-flow.d.ts.map +0 -1
  2235. package/dist/services/issue-claim-flow.js +0 -222
  2236. package/dist/services/issue-claim-flow.js.map +0 -1
  2237. package/dist/services/issue-outbox-pump.d.ts +0 -25
  2238. package/dist/services/issue-outbox-pump.d.ts.map +0 -1
  2239. package/dist/services/issue-outbox-pump.js +0 -102
  2240. package/dist/services/issue-outbox-pump.js.map +0 -1
  2241. package/dist/services/issue-release.d.ts +0 -78
  2242. package/dist/services/issue-release.d.ts.map +0 -1
  2243. package/dist/services/issue-release.js +0 -89
  2244. package/dist/services/issue-release.js.map +0 -1
  2245. package/dist/services/issue-report.d.ts +0 -72
  2246. package/dist/services/issue-report.d.ts.map +0 -1
  2247. package/dist/services/issue-report.js +0 -84
  2248. package/dist/services/issue-report.js.map +0 -1
  2249. package/dist/services/issue-status-view.d.ts +0 -52
  2250. package/dist/services/issue-status-view.d.ts.map +0 -1
  2251. package/dist/services/issue-status-view.js +0 -42
  2252. package/dist/services/issue-status-view.js.map +0 -1
  2253. package/dist/services/issue-status-writer.d.ts +0 -98
  2254. package/dist/services/issue-status-writer.d.ts.map +0 -1
  2255. package/dist/services/issue-status-writer.js +0 -123
  2256. package/dist/services/issue-status-writer.js.map +0 -1
  2257. package/dist/services/jsonl-cursor.d.ts +0 -24
  2258. package/dist/services/jsonl-cursor.d.ts.map +0 -1
  2259. package/dist/services/jsonl-cursor.js +0 -110
  2260. package/dist/services/jsonl-cursor.js.map +0 -1
  2261. package/dist/services/kiro-session.d.ts +0 -2
  2262. package/dist/services/kiro-session.d.ts.map +0 -1
  2263. package/dist/services/kiro-session.js +0 -19
  2264. package/dist/services/kiro-session.js.map +0 -1
  2265. package/dist/services/local-cli-opener.d.ts +0 -65
  2266. package/dist/services/local-cli-opener.d.ts.map +0 -1
  2267. package/dist/services/local-cli-opener.js +0 -426
  2268. package/dist/services/local-cli-opener.js.map +0 -1
  2269. package/dist/services/message-listener-run-preview-store.d.ts +0 -43
  2270. package/dist/services/message-listener-run-preview-store.d.ts.map +0 -1
  2271. package/dist/services/message-listener-run-preview-store.js +0 -152
  2272. package/dist/services/message-listener-run-preview-store.js.map +0 -1
  2273. package/dist/services/message-listener-store.d.ts +0 -44
  2274. package/dist/services/message-listener-store.d.ts.map +0 -1
  2275. package/dist/services/message-listener-store.js +0 -179
  2276. package/dist/services/message-listener-store.js.map +0 -1
  2277. package/dist/services/message-listener.d.ts +0 -129
  2278. package/dist/services/message-listener.d.ts.map +0 -1
  2279. package/dist/services/message-listener.js +0 -441
  2280. package/dist/services/message-listener.js.map +0 -1
  2281. package/dist/services/message-queue.d.ts +0 -9
  2282. package/dist/services/message-queue.d.ts.map +0 -1
  2283. package/dist/services/message-queue.js +0 -79
  2284. package/dist/services/message-queue.js.map +0 -1
  2285. package/dist/services/mtr-transcript.d.ts +0 -14
  2286. package/dist/services/mtr-transcript.d.ts.map +0 -1
  2287. package/dist/services/mtr-transcript.js +0 -291
  2288. package/dist/services/mtr-transcript.js.map +0 -1
  2289. package/dist/services/observed-bots-store.d.ts +0 -33
  2290. package/dist/services/observed-bots-store.d.ts.map +0 -1
  2291. package/dist/services/observed-bots-store.js +0 -103
  2292. package/dist/services/observed-bots-store.js.map +0 -1
  2293. package/dist/services/oncall-store.d.ts +0 -140
  2294. package/dist/services/oncall-store.d.ts.map +0 -1
  2295. package/dist/services/oncall-store.js +0 -403
  2296. package/dist/services/oncall-store.js.map +0 -1
  2297. package/dist/services/open-platform-rename.d.ts +0 -73
  2298. package/dist/services/open-platform-rename.d.ts.map +0 -1
  2299. package/dist/services/open-platform-rename.js +0 -396
  2300. package/dist/services/open-platform-rename.js.map +0 -1
  2301. package/dist/services/opencode-paths.d.ts +0 -7
  2302. package/dist/services/opencode-paths.d.ts.map +0 -1
  2303. package/dist/services/opencode-paths.js +0 -18
  2304. package/dist/services/opencode-paths.js.map +0 -1
  2305. package/dist/services/overload-alert-migration.d.ts +0 -15
  2306. package/dist/services/overload-alert-migration.d.ts.map +0 -1
  2307. package/dist/services/overload-alert-migration.js +0 -115
  2308. package/dist/services/overload-alert-migration.js.map +0 -1
  2309. package/dist/services/pairing-store.d.ts +0 -47
  2310. package/dist/services/pairing-store.d.ts.map +0 -1
  2311. package/dist/services/pairing-store.js +0 -132
  2312. package/dist/services/pairing-store.js.map +0 -1
  2313. package/dist/services/pi-transcript.d.ts +0 -26
  2314. package/dist/services/pi-transcript.d.ts.map +0 -1
  2315. package/dist/services/pi-transcript.js +0 -327
  2316. package/dist/services/pi-transcript.js.map +0 -1
  2317. package/dist/services/platform-team-store.d.ts +0 -52
  2318. package/dist/services/platform-team-store.d.ts.map +0 -1
  2319. package/dist/services/platform-team-store.js +0 -159
  2320. package/dist/services/platform-team-store.js.map +0 -1
  2321. package/dist/services/plugin-registry-store.d.ts +0 -8
  2322. package/dist/services/plugin-registry-store.d.ts.map +0 -1
  2323. package/dist/services/plugin-registry-store.js +0 -153
  2324. package/dist/services/plugin-registry-store.js.map +0 -1
  2325. package/dist/services/project-scanner.d.ts +0 -28
  2326. package/dist/services/project-scanner.d.ts.map +0 -1
  2327. package/dist/services/project-scanner.js +0 -203
  2328. package/dist/services/project-scanner.js.map +0 -1
  2329. package/dist/services/quota-dedup.d.ts +0 -33
  2330. package/dist/services/quota-dedup.d.ts.map +0 -1
  2331. package/dist/services/quota-dedup.js +0 -67
  2332. package/dist/services/quota-dedup.js.map +0 -1
  2333. package/dist/services/relay-picker.d.ts +0 -27
  2334. package/dist/services/relay-picker.d.ts.map +0 -1
  2335. package/dist/services/relay-picker.js +0 -88
  2336. package/dist/services/relay-picker.js.map +0 -1
  2337. package/dist/services/restart-intent-store.d.ts +0 -41
  2338. package/dist/services/restart-intent-store.d.ts.map +0 -1
  2339. package/dist/services/restart-intent-store.js +0 -194
  2340. package/dist/services/restart-intent-store.js.map +0 -1
  2341. package/dist/services/resumable-session-discovery.d.ts +0 -15
  2342. package/dist/services/resumable-session-discovery.d.ts.map +0 -1
  2343. package/dist/services/resumable-session-discovery.js +0 -357
  2344. package/dist/services/resumable-session-discovery.js.map +0 -1
  2345. package/dist/services/role-profile-store.d.ts +0 -25
  2346. package/dist/services/role-profile-store.d.ts.map +0 -1
  2347. package/dist/services/role-profile-store.js +0 -176
  2348. package/dist/services/role-profile-store.js.map +0 -1
  2349. package/dist/services/sandbox-migration.d.ts +0 -14
  2350. package/dist/services/sandbox-migration.d.ts.map +0 -1
  2351. package/dist/services/sandbox-migration.js +0 -85
  2352. package/dist/services/sandbox-migration.js.map +0 -1
  2353. package/dist/services/sandbox-store.d.ts +0 -50
  2354. package/dist/services/sandbox-store.d.ts.map +0 -1
  2355. package/dist/services/sandbox-store.js +0 -155
  2356. package/dist/services/sandbox-store.js.map +0 -1
  2357. package/dist/services/schedule-split-migration.d.ts +0 -2
  2358. package/dist/services/schedule-split-migration.d.ts.map +0 -1
  2359. package/dist/services/schedule-split-migration.js +0 -159
  2360. package/dist/services/schedule-split-migration.js.map +0 -1
  2361. package/dist/services/schedule-store.d.ts +0 -138
  2362. package/dist/services/schedule-store.d.ts.map +0 -1
  2363. package/dist/services/schedule-store.js +0 -619
  2364. package/dist/services/schedule-store.js.map +0 -1
  2365. package/dist/services/seen-message-store.d.ts +0 -12
  2366. package/dist/services/seen-message-store.d.ts.map +0 -1
  2367. package/dist/services/seen-message-store.js +0 -119
  2368. package/dist/services/seen-message-store.js.map +0 -1
  2369. package/dist/services/send-policy.d.ts +0 -182
  2370. package/dist/services/send-policy.d.ts.map +0 -1
  2371. package/dist/services/send-policy.js +0 -189
  2372. package/dist/services/send-policy.js.map +0 -1
  2373. package/dist/services/session-lifecycle-hooks.d.ts +0 -10
  2374. package/dist/services/session-lifecycle-hooks.d.ts.map +0 -1
  2375. package/dist/services/session-lifecycle-hooks.js +0 -78
  2376. package/dist/services/session-lifecycle-hooks.js.map +0 -1
  2377. package/dist/services/session-store.d.ts +0 -68
  2378. package/dist/services/session-store.d.ts.map +0 -1
  2379. package/dist/services/session-store.js +0 -419
  2380. package/dist/services/session-store.js.map +0 -1
  2381. package/dist/services/skill-registry-store.d.ts +0 -121
  2382. package/dist/services/skill-registry-store.d.ts.map +0 -1
  2383. package/dist/services/skill-registry-store.js +0 -1240
  2384. package/dist/services/skill-registry-store.js.map +0 -1
  2385. package/dist/services/structured-bridge-clis.d.ts +0 -29
  2386. package/dist/services/structured-bridge-clis.d.ts.map +0 -1
  2387. package/dist/services/structured-bridge-clis.js +0 -76
  2388. package/dist/services/structured-bridge-clis.js.map +0 -1
  2389. package/dist/services/submit-confirmation.d.ts +0 -22
  2390. package/dist/services/submit-confirmation.d.ts.map +0 -1
  2391. package/dist/services/submit-confirmation.js +0 -12
  2392. package/dist/services/submit-confirmation.js.map +0 -1
  2393. package/dist/services/substitute-chat-toggle-store.d.ts +0 -3
  2394. package/dist/services/substitute-chat-toggle-store.d.ts.map +0 -1
  2395. package/dist/services/substitute-chat-toggle-store.js +0 -58
  2396. package/dist/services/substitute-chat-toggle-store.js.map +0 -1
  2397. package/dist/services/substitute-mode-normalize.d.ts +0 -25
  2398. package/dist/services/substitute-mode-normalize.d.ts.map +0 -1
  2399. package/dist/services/substitute-mode-normalize.js +0 -80
  2400. package/dist/services/substitute-mode-normalize.js.map +0 -1
  2401. package/dist/services/substitute-mode-store.d.ts +0 -69
  2402. package/dist/services/substitute-mode-store.d.ts.map +0 -1
  2403. package/dist/services/substitute-mode-store.js +0 -142
  2404. package/dist/services/substitute-mode-store.js.map +0 -1
  2405. package/dist/services/summary-range-store.d.ts +0 -21
  2406. package/dist/services/summary-range-store.d.ts.map +0 -1
  2407. package/dist/services/summary-range-store.js +0 -89
  2408. package/dist/services/summary-range-store.js.map +0 -1
  2409. package/dist/services/team-board-store.d.ts +0 -33
  2410. package/dist/services/team-board-store.d.ts.map +0 -1
  2411. package/dist/services/team-board-store.js +0 -88
  2412. package/dist/services/team-board-store.js.map +0 -1
  2413. package/dist/services/team-bot-directory.d.ts +0 -29
  2414. package/dist/services/team-bot-directory.d.ts.map +0 -1
  2415. package/dist/services/team-bot-directory.js +0 -118
  2416. package/dist/services/team-bot-directory.js.map +0 -1
  2417. package/dist/services/team-bots-store.d.ts +0 -34
  2418. package/dist/services/team-bots-store.d.ts.map +0 -1
  2419. package/dist/services/team-bots-store.js +0 -111
  2420. package/dist/services/team-bots-store.js.map +0 -1
  2421. package/dist/services/team-groups-store.d.ts +0 -29
  2422. package/dist/services/team-groups-store.d.ts.map +0 -1
  2423. package/dist/services/team-groups-store.js +0 -70
  2424. package/dist/services/team-groups-store.js.map +0 -1
  2425. package/dist/services/team-roster.d.ts +0 -64
  2426. package/dist/services/team-roster.d.ts.map +0 -1
  2427. package/dist/services/team-roster.js +0 -108
  2428. package/dist/services/team-roster.js.map +0 -1
  2429. package/dist/services/team-store.d.ts +0 -54
  2430. package/dist/services/team-store.d.ts.map +0 -1
  2431. package/dist/services/team-store.js +0 -156
  2432. package/dist/services/team-store.js.map +0 -1
  2433. package/dist/services/traex-paths.d.ts +0 -26
  2434. package/dist/services/traex-paths.d.ts.map +0 -1
  2435. package/dist/services/traex-paths.js +0 -40
  2436. package/dist/services/traex-paths.js.map +0 -1
  2437. package/dist/services/traex-transcript.d.ts +0 -59
  2438. package/dist/services/traex-transcript.d.ts.map +0 -1
  2439. package/dist/services/traex-transcript.js +0 -370
  2440. package/dist/services/traex-transcript.js.map +0 -1
  2441. package/dist/services/traex-user-input.d.ts +0 -19
  2442. package/dist/services/traex-user-input.d.ts.map +0 -1
  2443. package/dist/services/traex-user-input.js +0 -57
  2444. package/dist/services/traex-user-input.js.map +0 -1
  2445. package/dist/services/transcript-resolver.d.ts +0 -35
  2446. package/dist/services/transcript-resolver.d.ts.map +0 -1
  2447. package/dist/services/transcript-resolver.js +0 -297
  2448. package/dist/services/transcript-resolver.js.map +0 -1
  2449. package/dist/services/trigger-log-store.d.ts +0 -105
  2450. package/dist/services/trigger-log-store.d.ts.map +0 -1
  2451. package/dist/services/trigger-log-store.js +0 -203
  2452. package/dist/services/trigger-log-store.js.map +0 -1
  2453. package/dist/services/trigger-types.d.ts +0 -124
  2454. package/dist/services/trigger-types.d.ts.map +0 -1
  2455. package/dist/services/trigger-types.js +0 -72
  2456. package/dist/services/trigger-types.js.map +0 -1
  2457. package/dist/services/turn-terminal-deduper.d.ts +0 -14
  2458. package/dist/services/turn-terminal-deduper.d.ts.map +0 -1
  2459. package/dist/services/turn-terminal-deduper.js +0 -34
  2460. package/dist/services/turn-terminal-deduper.js.map +0 -1
  2461. package/dist/services/usage-ledger.d.ts +0 -112
  2462. package/dist/services/usage-ledger.d.ts.map +0 -1
  2463. package/dist/services/usage-ledger.js +0 -485
  2464. package/dist/services/usage-ledger.js.map +0 -1
  2465. package/dist/services/vc-meeting-action-gate.d.ts +0 -246
  2466. package/dist/services/vc-meeting-action-gate.d.ts.map +0 -1
  2467. package/dist/services/vc-meeting-action-gate.js +0 -756
  2468. package/dist/services/vc-meeting-action-gate.js.map +0 -1
  2469. package/dist/services/vc-meeting-action-store.d.ts +0 -222
  2470. package/dist/services/vc-meeting-action-store.d.ts.map +0 -1
  2471. package/dist/services/vc-meeting-action-store.js +0 -806
  2472. package/dist/services/vc-meeting-action-store.js.map +0 -1
  2473. package/dist/services/vc-meeting-consumer-isolation.d.ts +0 -29
  2474. package/dist/services/vc-meeting-consumer-isolation.d.ts.map +0 -1
  2475. package/dist/services/vc-meeting-consumer-isolation.js +0 -39
  2476. package/dist/services/vc-meeting-consumer-isolation.js.map +0 -1
  2477. package/dist/services/vc-meeting-consumer-profile-bootstrap.d.ts +0 -72
  2478. package/dist/services/vc-meeting-consumer-profile-bootstrap.d.ts.map +0 -1
  2479. package/dist/services/vc-meeting-consumer-profile-bootstrap.js +0 -343
  2480. package/dist/services/vc-meeting-consumer-profile-bootstrap.js.map +0 -1
  2481. package/dist/services/vc-meeting-consumer-profile-store.d.ts +0 -39
  2482. package/dist/services/vc-meeting-consumer-profile-store.d.ts.map +0 -1
  2483. package/dist/services/vc-meeting-consumer-profile-store.js +0 -191
  2484. package/dist/services/vc-meeting-consumer-profile-store.js.map +0 -1
  2485. package/dist/services/vc-meeting-consumer-profile-templates.d.ts +0 -32
  2486. package/dist/services/vc-meeting-consumer-profile-templates.d.ts.map +0 -1
  2487. package/dist/services/vc-meeting-consumer-profile-templates.js +0 -106
  2488. package/dist/services/vc-meeting-consumer-profile-templates.js.map +0 -1
  2489. package/dist/services/vc-meeting-daemon-auth.d.ts +0 -29
  2490. package/dist/services/vc-meeting-daemon-auth.d.ts.map +0 -1
  2491. package/dist/services/vc-meeting-daemon-auth.js +0 -117
  2492. package/dist/services/vc-meeting-daemon-auth.js.map +0 -1
  2493. package/dist/services/vc-meeting-delivery-feed.d.ts +0 -52
  2494. package/dist/services/vc-meeting-delivery-feed.d.ts.map +0 -1
  2495. package/dist/services/vc-meeting-delivery-feed.js +0 -232
  2496. package/dist/services/vc-meeting-delivery-feed.js.map +0 -1
  2497. package/dist/services/vc-meeting-delivery-hub-store.d.ts +0 -215
  2498. package/dist/services/vc-meeting-delivery-hub-store.d.ts.map +0 -1
  2499. package/dist/services/vc-meeting-delivery-hub-store.js +0 -1241
  2500. package/dist/services/vc-meeting-delivery-hub-store.js.map +0 -1
  2501. package/dist/services/vc-meeting-delivery-protocol.d.ts +0 -166
  2502. package/dist/services/vc-meeting-delivery-protocol.d.ts.map +0 -1
  2503. package/dist/services/vc-meeting-delivery-protocol.js +0 -452
  2504. package/dist/services/vc-meeting-delivery-protocol.js.map +0 -1
  2505. package/dist/services/vc-meeting-delivery-receiver.d.ts +0 -80
  2506. package/dist/services/vc-meeting-delivery-receiver.d.ts.map +0 -1
  2507. package/dist/services/vc-meeting-delivery-receiver.js +0 -552
  2508. package/dist/services/vc-meeting-delivery-receiver.js.map +0 -1
  2509. package/dist/services/vc-meeting-delivery-store.d.ts +0 -349
  2510. package/dist/services/vc-meeting-delivery-store.d.ts.map +0 -1
  2511. package/dist/services/vc-meeting-delivery-store.js +0 -1036
  2512. package/dist/services/vc-meeting-delivery-store.js.map +0 -1
  2513. package/dist/services/vc-meeting-feed-metadata-store.d.ts +0 -58
  2514. package/dist/services/vc-meeting-feed-metadata-store.d.ts.map +0 -1
  2515. package/dist/services/vc-meeting-feed-metadata-store.js +0 -356
  2516. package/dist/services/vc-meeting-feed-metadata-store.js.map +0 -1
  2517. package/dist/services/vc-meeting-im-reply.d.ts +0 -56
  2518. package/dist/services/vc-meeting-im-reply.d.ts.map +0 -1
  2519. package/dist/services/vc-meeting-im-reply.js +0 -295
  2520. package/dist/services/vc-meeting-im-reply.js.map +0 -1
  2521. package/dist/services/vc-meeting-im-routing.d.ts +0 -131
  2522. package/dist/services/vc-meeting-im-routing.d.ts.map +0 -1
  2523. package/dist/services/vc-meeting-im-routing.js +0 -449
  2524. package/dist/services/vc-meeting-im-routing.js.map +0 -1
  2525. package/dist/services/vc-meeting-listener-message-store.d.ts +0 -23
  2526. package/dist/services/vc-meeting-listener-message-store.d.ts.map +0 -1
  2527. package/dist/services/vc-meeting-listener-message-store.js +0 -142
  2528. package/dist/services/vc-meeting-listener-message-store.js.map +0 -1
  2529. package/dist/services/vc-meeting-listener-output-protocol.d.ts +0 -27
  2530. package/dist/services/vc-meeting-listener-output-protocol.d.ts.map +0 -1
  2531. package/dist/services/vc-meeting-listener-output-protocol.js +0 -58
  2532. package/dist/services/vc-meeting-listener-output-protocol.js.map +0 -1
  2533. package/dist/services/vc-meeting-listener-topic-store.d.ts +0 -31
  2534. package/dist/services/vc-meeting-listener-topic-store.d.ts.map +0 -1
  2535. package/dist/services/vc-meeting-listener-topic-store.js +0 -120
  2536. package/dist/services/vc-meeting-listener-topic-store.js.map +0 -1
  2537. package/dist/services/vc-meeting-member-policy.d.ts +0 -37
  2538. package/dist/services/vc-meeting-member-policy.d.ts.map +0 -1
  2539. package/dist/services/vc-meeting-member-policy.js +0 -102
  2540. package/dist/services/vc-meeting-member-policy.js.map +0 -1
  2541. package/dist/services/vc-meeting-preparations-store.d.ts +0 -22
  2542. package/dist/services/vc-meeting-preparations-store.d.ts.map +0 -1
  2543. package/dist/services/vc-meeting-preparations-store.js +0 -131
  2544. package/dist/services/vc-meeting-preparations-store.js.map +0 -1
  2545. package/dist/services/vc-meeting-profile-instructions.d.ts +0 -22
  2546. package/dist/services/vc-meeting-profile-instructions.d.ts.map +0 -1
  2547. package/dist/services/vc-meeting-profile-instructions.js +0 -64
  2548. package/dist/services/vc-meeting-profile-instructions.js.map +0 -1
  2549. package/dist/services/vc-meeting-runtime-store.d.ts +0 -132
  2550. package/dist/services/vc-meeting-runtime-store.d.ts.map +0 -1
  2551. package/dist/services/vc-meeting-runtime-store.js +0 -852
  2552. package/dist/services/vc-meeting-runtime-store.js.map +0 -1
  2553. package/dist/services/vc-meeting-send-policy.d.ts +0 -96
  2554. package/dist/services/vc-meeting-send-policy.d.ts.map +0 -1
  2555. package/dist/services/vc-meeting-send-policy.js +0 -158
  2556. package/dist/services/vc-meeting-send-policy.js.map +0 -1
  2557. package/dist/services/vc-meeting-terminal-reconciler.d.ts +0 -93
  2558. package/dist/services/vc-meeting-terminal-reconciler.d.ts.map +0 -1
  2559. package/dist/services/vc-meeting-terminal-reconciler.js +0 -198
  2560. package/dist/services/vc-meeting-terminal-reconciler.js.map +0 -1
  2561. package/dist/services/voice/audio.d.ts +0 -32
  2562. package/dist/services/voice/audio.d.ts.map +0 -1
  2563. package/dist/services/voice/audio.js +0 -114
  2564. package/dist/services/voice/audio.js.map +0 -1
  2565. package/dist/services/voice/index.d.ts +0 -37
  2566. package/dist/services/voice/index.d.ts.map +0 -1
  2567. package/dist/services/voice/index.js +0 -105
  2568. package/dist/services/voice/index.js.map +0 -1
  2569. package/dist/services/voice/openai.d.ts +0 -24
  2570. package/dist/services/voice/openai.d.ts.map +0 -1
  2571. package/dist/services/voice/openai.js +0 -47
  2572. package/dist/services/voice/openai.js.map +0 -1
  2573. package/dist/services/voice/sami.d.ts +0 -22
  2574. package/dist/services/voice/sami.d.ts.map +0 -1
  2575. package/dist/services/voice/sami.js +0 -128
  2576. package/dist/services/voice/sami.js.map +0 -1
  2577. package/dist/services/voice/types.d.ts +0 -32
  2578. package/dist/services/voice/types.d.ts.map +0 -1
  2579. package/dist/services/voice/types.js +0 -2
  2580. package/dist/services/voice/types.js.map +0 -1
  2581. package/dist/services/webhook-audit.d.ts +0 -10
  2582. package/dist/services/webhook-audit.d.ts.map +0 -1
  2583. package/dist/services/webhook-audit.js +0 -116
  2584. package/dist/services/webhook-audit.js.map +0 -1
  2585. package/dist/services/webhook-key.d.ts +0 -16
  2586. package/dist/services/webhook-key.d.ts.map +0 -1
  2587. package/dist/services/webhook-key.js +0 -123
  2588. package/dist/services/webhook-key.js.map +0 -1
  2589. package/dist/services/webhook-lifecycle-extractors.d.ts +0 -6
  2590. package/dist/services/webhook-lifecycle-extractors.d.ts.map +0 -1
  2591. package/dist/services/webhook-lifecycle-extractors.js +0 -44
  2592. package/dist/services/webhook-lifecycle-extractors.js.map +0 -1
  2593. package/dist/services/webhook-lifecycle-store.d.ts +0 -45
  2594. package/dist/services/webhook-lifecycle-store.d.ts.map +0 -1
  2595. package/dist/services/webhook-lifecycle-store.js +0 -159
  2596. package/dist/services/webhook-lifecycle-store.js.map +0 -1
  2597. package/dist/services/whiteboard-store.d.ts +0 -67
  2598. package/dist/services/whiteboard-store.d.ts.map +0 -1
  2599. package/dist/services/whiteboard-store.js +0 -450
  2600. package/dist/services/whiteboard-store.js.map +0 -1
  2601. package/dist/services/worktree-slug-ai.d.ts +0 -3
  2602. package/dist/services/worktree-slug-ai.d.ts.map +0 -1
  2603. package/dist/services/worktree-slug-ai.js +0 -82
  2604. package/dist/services/worktree-slug-ai.js.map +0 -1
  2605. package/dist/setup/agent-preset.d.ts +0 -78
  2606. package/dist/setup/agent-preset.d.ts.map +0 -1
  2607. package/dist/setup/agent-preset.js +0 -127
  2608. package/dist/setup/agent-preset.js.map +0 -1
  2609. package/dist/setup/app-name.d.ts +0 -7
  2610. package/dist/setup/app-name.d.ts.map +0 -1
  2611. package/dist/setup/app-name.js +0 -10
  2612. package/dist/setup/app-name.js.map +0 -1
  2613. package/dist/setup/bot-config-editor.d.ts +0 -160
  2614. package/dist/setup/bot-config-editor.d.ts.map +0 -1
  2615. package/dist/setup/bot-config-editor.js +0 -459
  2616. package/dist/setup/bot-config-editor.js.map +0 -1
  2617. package/dist/setup/bots-store.d.ts +0 -3
  2618. package/dist/setup/bots-store.d.ts.map +0 -1
  2619. package/dist/setup/bots-store.js +0 -24
  2620. package/dist/setup/bots-store.js.map +0 -1
  2621. package/dist/setup/cli-availability.d.ts +0 -26
  2622. package/dist/setup/cli-availability.d.ts.map +0 -1
  2623. package/dist/setup/cli-availability.js +0 -77
  2624. package/dist/setup/cli-availability.js.map +0 -1
  2625. package/dist/setup/cli-selection.d.ts +0 -145
  2626. package/dist/setup/cli-selection.d.ts.map +0 -1
  2627. package/dist/setup/cli-selection.js +0 -402
  2628. package/dist/setup/cli-selection.js.map +0 -1
  2629. package/dist/setup/detect-platform.d.ts +0 -14
  2630. package/dist/setup/detect-platform.d.ts.map +0 -1
  2631. package/dist/setup/detect-platform.js +0 -139
  2632. package/dist/setup/detect-platform.js.map +0 -1
  2633. package/dist/setup/ensure-fonts.d.ts +0 -13
  2634. package/dist/setup/ensure-fonts.d.ts.map +0 -1
  2635. package/dist/setup/ensure-fonts.js +0 -225
  2636. package/dist/setup/ensure-fonts.js.map +0 -1
  2637. package/dist/setup/ensure-herdr-integrations.d.ts +0 -102
  2638. package/dist/setup/ensure-herdr-integrations.d.ts.map +0 -1
  2639. package/dist/setup/ensure-herdr-integrations.js +0 -432
  2640. package/dist/setup/ensure-herdr-integrations.js.map +0 -1
  2641. package/dist/setup/ensure-herdr.d.ts +0 -12
  2642. package/dist/setup/ensure-herdr.d.ts.map +0 -1
  2643. package/dist/setup/ensure-herdr.js +0 -70
  2644. package/dist/setup/ensure-herdr.js.map +0 -1
  2645. package/dist/setup/ensure-opus.d.ts +0 -13
  2646. package/dist/setup/ensure-opus.d.ts.map +0 -1
  2647. package/dist/setup/ensure-opus.js +0 -64
  2648. package/dist/setup/ensure-opus.js.map +0 -1
  2649. package/dist/setup/ensure-tmux.d.ts +0 -91
  2650. package/dist/setup/ensure-tmux.d.ts.map +0 -1
  2651. package/dist/setup/ensure-tmux.js +0 -418
  2652. package/dist/setup/ensure-tmux.js.map +0 -1
  2653. package/dist/setup/ensure-zellij.d.ts +0 -48
  2654. package/dist/setup/ensure-zellij.d.ts.map +0 -1
  2655. package/dist/setup/ensure-zellij.js +0 -94
  2656. package/dist/setup/ensure-zellij.js.map +0 -1
  2657. package/dist/setup/ensure-zmx.d.ts +0 -31
  2658. package/dist/setup/ensure-zmx.d.ts.map +0 -1
  2659. package/dist/setup/ensure-zmx.js +0 -161
  2660. package/dist/setup/ensure-zmx.js.map +0 -1
  2661. package/dist/setup/index.d.ts +0 -38
  2662. package/dist/setup/index.d.ts.map +0 -1
  2663. package/dist/setup/index.js +0 -194
  2664. package/dist/setup/index.js.map +0 -1
  2665. package/dist/setup/interactive-select.d.ts +0 -52
  2666. package/dist/setup/interactive-select.d.ts.map +0 -1
  2667. package/dist/setup/interactive-select.js +0 -271
  2668. package/dist/setup/interactive-select.js.map +0 -1
  2669. package/dist/setup/lark-scopes.json +0 -305
  2670. package/dist/setup/open-platform-automation.d.ts +0 -417
  2671. package/dist/setup/open-platform-automation.d.ts.map +0 -1
  2672. package/dist/setup/open-platform-automation.js +0 -1610
  2673. package/dist/setup/open-platform-automation.js.map +0 -1
  2674. package/dist/setup/open-platform-outcome.d.ts +0 -50
  2675. package/dist/setup/open-platform-outcome.d.ts.map +0 -1
  2676. package/dist/setup/open-platform-outcome.js +0 -56
  2677. package/dist/setup/open-platform-outcome.js.map +0 -1
  2678. package/dist/setup/register-app.d.ts +0 -52
  2679. package/dist/setup/register-app.d.ts.map +0 -1
  2680. package/dist/setup/register-app.js +0 -91
  2681. package/dist/setup/register-app.js.map +0 -1
  2682. package/dist/setup/setup-args.d.ts +0 -89
  2683. package/dist/setup/setup-args.d.ts.map +0 -1
  2684. package/dist/setup/setup-args.js +0 -387
  2685. package/dist/setup/setup-args.js.map +0 -1
  2686. package/dist/setup/verify-permissions.d.ts +0 -150
  2687. package/dist/setup/verify-permissions.d.ts.map +0 -1
  2688. package/dist/setup/verify-permissions.js +0 -353
  2689. package/dist/setup/verify-permissions.js.map +0 -1
  2690. package/dist/skills/definitions.d.ts +0 -31
  2691. package/dist/skills/definitions.d.ts.map +0 -1
  2692. package/dist/skills/definitions.js +0 -1510
  2693. package/dist/skills/definitions.js.map +0 -1
  2694. package/dist/skills/injection-mode.d.ts +0 -93
  2695. package/dist/skills/injection-mode.d.ts.map +0 -1
  2696. package/dist/skills/injection-mode.js +0 -204
  2697. package/dist/skills/injection-mode.js.map +0 -1
  2698. package/dist/skills/installer.d.ts +0 -60
  2699. package/dist/skills/installer.d.ts.map +0 -1
  2700. package/dist/skills/installer.js +0 -217
  2701. package/dist/skills/installer.js.map +0 -1
  2702. package/dist/types.d.ts +0 -1131
  2703. package/dist/types.d.ts.map +0 -1
  2704. package/dist/types.js +0 -2
  2705. package/dist/types.js.map +0 -1
  2706. package/dist/utils/allowed-users-apply.d.ts +0 -76
  2707. package/dist/utils/allowed-users-apply.d.ts.map +0 -1
  2708. package/dist/utils/allowed-users-apply.js +0 -124
  2709. package/dist/utils/allowed-users-apply.js.map +0 -1
  2710. package/dist/utils/allowed-users-cache.d.ts +0 -29
  2711. package/dist/utils/allowed-users-cache.d.ts.map +0 -1
  2712. package/dist/utils/allowed-users-cache.js +0 -82
  2713. package/dist/utils/allowed-users-cache.js.map +0 -1
  2714. package/dist/utils/anchor-serializer.d.ts +0 -12
  2715. package/dist/utils/anchor-serializer.d.ts.map +0 -1
  2716. package/dist/utils/anchor-serializer.js +0 -64
  2717. package/dist/utils/anchor-serializer.js.map +0 -1
  2718. package/dist/utils/atomic-write.d.ts +0 -34
  2719. package/dist/utils/atomic-write.d.ts.map +0 -1
  2720. package/dist/utils/atomic-write.js +0 -183
  2721. package/dist/utils/atomic-write.js.map +0 -1
  2722. package/dist/utils/bot-routing.d.ts +0 -80
  2723. package/dist/utils/bot-routing.d.ts.map +0 -1
  2724. package/dist/utils/bot-routing.js +0 -167
  2725. package/dist/utils/bot-routing.js.map +0 -1
  2726. package/dist/utils/bounded-map.d.ts +0 -15
  2727. package/dist/utils/bounded-map.d.ts.map +0 -1
  2728. package/dist/utils/bounded-map.js +0 -29
  2729. package/dist/utils/bounded-map.js.map +0 -1
  2730. package/dist/utils/canonical-input-hash.d.ts +0 -5
  2731. package/dist/utils/canonical-input-hash.d.ts.map +0 -1
  2732. package/dist/utils/canonical-input-hash.js +0 -43
  2733. package/dist/utils/canonical-input-hash.js.map +0 -1
  2734. package/dist/utils/canonical-json.d.ts +0 -10
  2735. package/dist/utils/canonical-json.d.ts.map +0 -1
  2736. package/dist/utils/canonical-json.js +0 -23
  2737. package/dist/utils/canonical-json.js.map +0 -1
  2738. package/dist/utils/child-env.d.ts +0 -147
  2739. package/dist/utils/child-env.d.ts.map +0 -1
  2740. package/dist/utils/child-env.js +0 -299
  2741. package/dist/utils/child-env.js.map +0 -1
  2742. package/dist/utils/cli-usage-limit.d.ts +0 -62
  2743. package/dist/utils/cli-usage-limit.d.ts.map +0 -1
  2744. package/dist/utils/cli-usage-limit.js +0 -169
  2745. package/dist/utils/cli-usage-limit.js.map +0 -1
  2746. package/dist/utils/codex-app-context.d.ts +0 -9
  2747. package/dist/utils/codex-app-context.d.ts.map +0 -1
  2748. package/dist/utils/codex-app-context.js +0 -47
  2749. package/dist/utils/codex-app-context.js.map +0 -1
  2750. package/dist/utils/codex-update-dialog.d.ts +0 -17
  2751. package/dist/utils/codex-update-dialog.d.ts.map +0 -1
  2752. package/dist/utils/codex-update-dialog.js +0 -33
  2753. package/dist/utils/codex-update-dialog.js.map +0 -1
  2754. package/dist/utils/crash-log.d.ts +0 -22
  2755. package/dist/utils/crash-log.d.ts.map +0 -1
  2756. package/dist/utils/crash-log.js +0 -37
  2757. package/dist/utils/crash-log.js.map +0 -1
  2758. package/dist/utils/daemon-discovery.d.ts +0 -25
  2759. package/dist/utils/daemon-discovery.d.ts.map +0 -1
  2760. package/dist/utils/daemon-discovery.js +0 -86
  2761. package/dist/utils/daemon-discovery.js.map +0 -1
  2762. package/dist/utils/effort-confirm-dialog.d.ts +0 -40
  2763. package/dist/utils/effort-confirm-dialog.d.ts.map +0 -1
  2764. package/dist/utils/effort-confirm-dialog.js +0 -74
  2765. package/dist/utils/effort-confirm-dialog.js.map +0 -1
  2766. package/dist/utils/executable.d.ts +0 -3
  2767. package/dist/utils/executable.d.ts.map +0 -1
  2768. package/dist/utils/executable.js +0 -24
  2769. package/dist/utils/executable.js.map +0 -1
  2770. package/dist/utils/file-lock.d.ts +0 -19
  2771. package/dist/utils/file-lock.d.ts.map +0 -1
  2772. package/dist/utils/file-lock.js +0 -1038
  2773. package/dist/utils/file-lock.js.map +0 -1
  2774. package/dist/utils/font-installer.d.ts +0 -2
  2775. package/dist/utils/font-installer.d.ts.map +0 -1
  2776. package/dist/utils/font-installer.js +0 -60
  2777. package/dist/utils/font-installer.js.map +0 -1
  2778. package/dist/utils/fs-durability.d.ts +0 -20
  2779. package/dist/utils/fs-durability.d.ts.map +0 -1
  2780. package/dist/utils/fs-durability.js +0 -84
  2781. package/dist/utils/fs-durability.js.map +0 -1
  2782. package/dist/utils/global-install.d.ts +0 -27
  2783. package/dist/utils/global-install.d.ts.map +0 -1
  2784. package/dist/utils/global-install.js +0 -184
  2785. package/dist/utils/global-install.js.map +0 -1
  2786. package/dist/utils/herdr-web-history.d.ts +0 -12
  2787. package/dist/utils/herdr-web-history.d.ts.map +0 -1
  2788. package/dist/utils/herdr-web-history.js +0 -74
  2789. package/dist/utils/herdr-web-history.js.map +0 -1
  2790. package/dist/utils/herdr-web-terminal-binding.d.ts +0 -39
  2791. package/dist/utils/herdr-web-terminal-binding.d.ts.map +0 -1
  2792. package/dist/utils/herdr-web-terminal-binding.js +0 -56
  2793. package/dist/utils/herdr-web-terminal-binding.js.map +0 -1
  2794. package/dist/utils/idle-detector.d.ts +0 -39
  2795. package/dist/utils/idle-detector.d.ts.map +0 -1
  2796. package/dist/utils/idle-detector.js +0 -159
  2797. package/dist/utils/idle-detector.js.map +0 -1
  2798. package/dist/utils/input-gate.d.ts +0 -103
  2799. package/dist/utils/input-gate.d.ts.map +0 -1
  2800. package/dist/utils/input-gate.js +0 -96
  2801. package/dist/utils/input-gate.js.map +0 -1
  2802. package/dist/utils/install-diagnostics.d.ts +0 -52
  2803. package/dist/utils/install-diagnostics.d.ts.map +0 -1
  2804. package/dist/utils/install-diagnostics.js +0 -157
  2805. package/dist/utils/install-diagnostics.js.map +0 -1
  2806. package/dist/utils/install-info.d.ts +0 -19
  2807. package/dist/utils/install-info.d.ts.map +0 -1
  2808. package/dist/utils/install-info.js +0 -68
  2809. package/dist/utils/install-info.js.map +0 -1
  2810. package/dist/utils/lark-upload.d.ts +0 -3
  2811. package/dist/utils/lark-upload.d.ts.map +0 -1
  2812. package/dist/utils/lark-upload.js +0 -31
  2813. package/dist/utils/lark-upload.js.map +0 -1
  2814. package/dist/utils/listen-with-probe.d.ts +0 -47
  2815. package/dist/utils/listen-with-probe.d.ts.map +0 -1
  2816. package/dist/utils/listen-with-probe.js +0 -142
  2817. package/dist/utils/listen-with-probe.js.map +0 -1
  2818. package/dist/utils/logger.d.ts +0 -17
  2819. package/dist/utils/logger.d.ts.map +0 -1
  2820. package/dist/utils/logger.js +0 -80
  2821. package/dist/utils/logger.js.map +0 -1
  2822. package/dist/utils/pending-input-queue.d.ts +0 -122
  2823. package/dist/utils/pending-input-queue.d.ts.map +0 -1
  2824. package/dist/utils/pending-input-queue.js +0 -170
  2825. package/dist/utils/pending-input-queue.js.map +0 -1
  2826. package/dist/utils/process-identity.d.ts +0 -7
  2827. package/dist/utils/process-identity.d.ts.map +0 -1
  2828. package/dist/utils/process-identity.js +0 -62
  2829. package/dist/utils/process-identity.js.map +0 -1
  2830. package/dist/utils/ready-gate.d.ts +0 -90
  2831. package/dist/utils/ready-gate.d.ts.map +0 -1
  2832. package/dist/utils/ready-gate.js +0 -104
  2833. package/dist/utils/ready-gate.js.map +0 -1
  2834. package/dist/utils/render-dimensions.d.ts +0 -56
  2835. package/dist/utils/render-dimensions.d.ts.map +0 -1
  2836. package/dist/utils/render-dimensions.js +0 -65
  2837. package/dist/utils/render-dimensions.js.map +0 -1
  2838. package/dist/utils/runtime-build-id.d.ts +0 -21
  2839. package/dist/utils/runtime-build-id.d.ts.map +0 -1
  2840. package/dist/utils/runtime-build-id.js +0 -83
  2841. package/dist/utils/runtime-build-id.js.map +0 -1
  2842. package/dist/utils/screenshot-renderer.d.ts +0 -11
  2843. package/dist/utils/screenshot-renderer.d.ts.map +0 -1
  2844. package/dist/utils/screenshot-renderer.js +0 -267
  2845. package/dist/utils/screenshot-renderer.js.map +0 -1
  2846. package/dist/utils/stdio-epipe-guard.d.ts +0 -39
  2847. package/dist/utils/stdio-epipe-guard.d.ts.map +0 -1
  2848. package/dist/utils/stdio-epipe-guard.js +0 -67
  2849. package/dist/utils/stdio-epipe-guard.js.map +0 -1
  2850. package/dist/utils/stuck-detector.d.ts +0 -45
  2851. package/dist/utils/stuck-detector.d.ts.map +0 -1
  2852. package/dist/utils/stuck-detector.js +0 -188
  2853. package/dist/utils/stuck-detector.js.map +0 -1
  2854. package/dist/utils/stuck-key-guard.d.ts +0 -76
  2855. package/dist/utils/stuck-key-guard.d.ts.map +0 -1
  2856. package/dist/utils/stuck-key-guard.js +0 -77
  2857. package/dist/utils/stuck-key-guard.js.map +0 -1
  2858. package/dist/utils/terminal-favicon.d.ts +0 -2
  2859. package/dist/utils/terminal-favicon.d.ts.map +0 -1
  2860. package/dist/utils/terminal-favicon.js +0 -5
  2861. package/dist/utils/terminal-favicon.js.map +0 -1
  2862. package/dist/utils/terminal-renderer.d.ts +0 -59
  2863. package/dist/utils/terminal-renderer.d.ts.map +0 -1
  2864. package/dist/utils/terminal-renderer.js +0 -121
  2865. package/dist/utils/terminal-renderer.js.map +0 -1
  2866. package/dist/utils/timezone.d.ts +0 -51
  2867. package/dist/utils/timezone.d.ts.map +0 -1
  2868. package/dist/utils/timezone.js +0 -110
  2869. package/dist/utils/timezone.js.map +0 -1
  2870. package/dist/utils/timing.d.ts +0 -30
  2871. package/dist/utils/timing.d.ts.map +0 -1
  2872. package/dist/utils/timing.js +0 -41
  2873. package/dist/utils/timing.js.map +0 -1
  2874. package/dist/utils/transient-snapshot.d.ts +0 -53
  2875. package/dist/utils/transient-snapshot.d.ts.map +0 -1
  2876. package/dist/utils/transient-snapshot.js +0 -123
  2877. package/dist/utils/transient-snapshot.js.map +0 -1
  2878. package/dist/utils/tui-input-delivery.d.ts +0 -32
  2879. package/dist/utils/tui-input-delivery.d.ts.map +0 -1
  2880. package/dist/utils/tui-input-delivery.js +0 -53
  2881. package/dist/utils/tui-input-delivery.js.map +0 -1
  2882. package/dist/utils/user-token.d.ts +0 -53
  2883. package/dist/utils/user-token.d.ts.map +0 -1
  2884. package/dist/utils/user-token.js +0 -296
  2885. package/dist/utils/user-token.js.map +0 -1
  2886. package/dist/utils/version-info.d.ts +0 -25
  2887. package/dist/utils/version-info.d.ts.map +0 -1
  2888. package/dist/utils/version-info.js +0 -48
  2889. package/dist/utils/version-info.js.map +0 -1
  2890. package/dist/utils/web-terminal-listen.d.ts +0 -30
  2891. package/dist/utils/web-terminal-listen.d.ts.map +0 -1
  2892. package/dist/utils/web-terminal-listen.js +0 -81
  2893. package/dist/utils/web-terminal-listen.js.map +0 -1
  2894. package/dist/utils/web-terminal-seed.d.ts +0 -40
  2895. package/dist/utils/web-terminal-seed.d.ts.map +0 -1
  2896. package/dist/utils/web-terminal-seed.js +0 -46
  2897. package/dist/utils/web-terminal-seed.js.map +0 -1
  2898. package/dist/utils/worker-http.d.ts +0 -7
  2899. package/dist/utils/worker-http.d.ts.map +0 -1
  2900. package/dist/utils/worker-http.js +0 -27
  2901. package/dist/utils/worker-http.js.map +0 -1
  2902. package/dist/utils/working-dir.d.ts +0 -11
  2903. package/dist/utils/working-dir.d.ts.map +0 -1
  2904. package/dist/utils/working-dir.js +0 -45
  2905. package/dist/utils/working-dir.js.map +0 -1
  2906. package/dist/utils/xml.d.ts +0 -19
  2907. package/dist/utils/xml.d.ts.map +0 -1
  2908. package/dist/utils/xml.js +0 -26
  2909. package/dist/utils/xml.js.map +0 -1
  2910. package/dist/vc-agent/cards.d.ts +0 -94
  2911. package/dist/vc-agent/cards.d.ts.map +0 -1
  2912. package/dist/vc-agent/cards.js +0 -927
  2913. package/dist/vc-agent/cards.js.map +0 -1
  2914. package/dist/vc-agent/meeting-state.d.ts +0 -39
  2915. package/dist/vc-agent/meeting-state.d.ts.map +0 -1
  2916. package/dist/vc-agent/meeting-state.js +0 -186
  2917. package/dist/vc-agent/meeting-state.js.map +0 -1
  2918. package/dist/vc-agent/normalizer.d.ts +0 -13
  2919. package/dist/vc-agent/normalizer.d.ts.map +0 -1
  2920. package/dist/vc-agent/normalizer.js +0 -470
  2921. package/dist/vc-agent/normalizer.js.map +0 -1
  2922. package/dist/vc-agent/polling-source.d.ts +0 -69
  2923. package/dist/vc-agent/polling-source.d.ts.map +0 -1
  2924. package/dist/vc-agent/polling-source.js +0 -194
  2925. package/dist/vc-agent/polling-source.js.map +0 -1
  2926. package/dist/vc-agent/push-source.d.ts +0 -13
  2927. package/dist/vc-agent/push-source.d.ts.map +0 -1
  2928. package/dist/vc-agent/push-source.js +0 -109
  2929. package/dist/vc-agent/push-source.js.map +0 -1
  2930. package/dist/vc-agent/realtime/audio-source.d.ts +0 -6
  2931. package/dist/vc-agent/realtime/audio-source.d.ts.map +0 -1
  2932. package/dist/vc-agent/realtime/audio-source.js +0 -17
  2933. package/dist/vc-agent/realtime/audio-source.js.map +0 -1
  2934. package/dist/vc-agent/realtime/endpoint.d.ts +0 -6
  2935. package/dist/vc-agent/realtime/endpoint.d.ts.map +0 -1
  2936. package/dist/vc-agent/realtime/endpoint.js +0 -25
  2937. package/dist/vc-agent/realtime/endpoint.js.map +0 -1
  2938. package/dist/vc-agent/realtime/errors.d.ts +0 -9
  2939. package/dist/vc-agent/realtime/errors.d.ts.map +0 -1
  2940. package/dist/vc-agent/realtime/errors.js +0 -17
  2941. package/dist/vc-agent/realtime/errors.js.map +0 -1
  2942. package/dist/vc-agent/realtime/events.d.ts +0 -24
  2943. package/dist/vc-agent/realtime/events.d.ts.map +0 -1
  2944. package/dist/vc-agent/realtime/events.js +0 -190
  2945. package/dist/vc-agent/realtime/events.js.map +0 -1
  2946. package/dist/vc-agent/realtime/frontier.d.ts +0 -34
  2947. package/dist/vc-agent/realtime/frontier.d.ts.map +0 -1
  2948. package/dist/vc-agent/realtime/frontier.js +0 -40
  2949. package/dist/vc-agent/realtime/frontier.js.map +0 -1
  2950. package/dist/vc-agent/realtime/index.d.ts +0 -11
  2951. package/dist/vc-agent/realtime/index.d.ts.map +0 -1
  2952. package/dist/vc-agent/realtime/index.js +0 -11
  2953. package/dist/vc-agent/realtime/index.js.map +0 -1
  2954. package/dist/vc-agent/realtime/pacer.d.ts +0 -21
  2955. package/dist/vc-agent/realtime/pacer.d.ts.map +0 -1
  2956. package/dist/vc-agent/realtime/pacer.js +0 -80
  2957. package/dist/vc-agent/realtime/pacer.js.map +0 -1
  2958. package/dist/vc-agent/realtime/protobuf.d.ts +0 -33
  2959. package/dist/vc-agent/realtime/protobuf.d.ts.map +0 -1
  2960. package/dist/vc-agent/realtime/protobuf.js +0 -159
  2961. package/dist/vc-agent/realtime/protobuf.js.map +0 -1
  2962. package/dist/vc-agent/realtime/protocol.d.ts +0 -4
  2963. package/dist/vc-agent/realtime/protocol.d.ts.map +0 -1
  2964. package/dist/vc-agent/realtime/protocol.js +0 -59
  2965. package/dist/vc-agent/realtime/protocol.js.map +0 -1
  2966. package/dist/vc-agent/realtime/session.d.ts +0 -39
  2967. package/dist/vc-agent/realtime/session.d.ts.map +0 -1
  2968. package/dist/vc-agent/realtime/session.js +0 -221
  2969. package/dist/vc-agent/realtime/session.js.map +0 -1
  2970. package/dist/vc-agent/realtime/transport.d.ts +0 -23
  2971. package/dist/vc-agent/realtime/transport.d.ts.map +0 -1
  2972. package/dist/vc-agent/realtime/transport.js +0 -112
  2973. package/dist/vc-agent/realtime/transport.js.map +0 -1
  2974. package/dist/vc-agent/realtime/types.d.ts +0 -84
  2975. package/dist/vc-agent/realtime/types.d.ts.map +0 -1
  2976. package/dist/vc-agent/realtime/types.js +0 -5
  2977. package/dist/vc-agent/realtime/types.js.map +0 -1
  2978. package/dist/vc-agent/types.d.ts +0 -143
  2979. package/dist/vc-agent/types.d.ts.map +0 -1
  2980. package/dist/vc-agent/types.js +0 -2
  2981. package/dist/vc-agent/types.js.map +0 -1
  2982. package/dist/worker.d.ts +0 -3
  2983. package/dist/worker.d.ts.map +0 -1
  2984. package/dist/worker.js +0 -12831
  2985. package/dist/worker.js.map +0 -1
  2986. package/dist/workflows/attempt-terminal.d.ts +0 -25
  2987. package/dist/workflows/attempt-terminal.d.ts.map +0 -1
  2988. package/dist/workflows/attempt-terminal.js +0 -7
  2989. package/dist/workflows/attempt-terminal.js.map +0 -1
  2990. package/dist/workflows/definition.d.ts +0 -1705
  2991. package/dist/workflows/definition.d.ts.map +0 -1
  2992. package/dist/workflows/definition.js +0 -552
  2993. package/dist/workflows/definition.js.map +0 -1
  2994. package/dist/workflows/events/payloads.d.ts +0 -1116
  2995. package/dist/workflows/events/payloads.d.ts.map +0 -1
  2996. package/dist/workflows/events/payloads.js +0 -397
  2997. package/dist/workflows/events/payloads.js.map +0 -1
  2998. package/dist/workflows/events/replay.d.ts +0 -265
  2999. package/dist/workflows/events/replay.d.ts.map +0 -1
  3000. package/dist/workflows/events/replay.js +0 -716
  3001. package/dist/workflows/events/replay.js.map +0 -1
  3002. package/dist/workflows/events/schema.d.ts +0 -6093
  3003. package/dist/workflows/events/schema.d.ts.map +0 -1
  3004. package/dist/workflows/events/schema.js +0 -328
  3005. package/dist/workflows/events/schema.js.map +0 -1
  3006. package/dist/workflows/events/types.d.ts +0 -38
  3007. package/dist/workflows/events/types.d.ts.map +0 -1
  3008. package/dist/workflows/events/types.js +0 -2
  3009. package/dist/workflows/events/types.js.map +0 -1
  3010. package/dist/workflows/hostExecutors/botmux-schedule.d.ts +0 -47
  3011. package/dist/workflows/hostExecutors/botmux-schedule.d.ts.map +0 -1
  3012. package/dist/workflows/hostExecutors/botmux-schedule.js +0 -198
  3013. package/dist/workflows/hostExecutors/botmux-schedule.js.map +0 -1
  3014. package/dist/workflows/hostExecutors/feishu-im.d.ts +0 -12
  3015. package/dist/workflows/hostExecutors/feishu-im.d.ts.map +0 -1
  3016. package/dist/workflows/hostExecutors/feishu-im.js +0 -49
  3017. package/dist/workflows/hostExecutors/feishu-im.js.map +0 -1
  3018. package/dist/workflows/hostExecutors/feishu-reply.d.ts +0 -24
  3019. package/dist/workflows/hostExecutors/feishu-reply.d.ts.map +0 -1
  3020. package/dist/workflows/hostExecutors/feishu-reply.js +0 -88
  3021. package/dist/workflows/hostExecutors/feishu-reply.js.map +0 -1
  3022. package/dist/workflows/hostExecutors/feishu-send.d.ts +0 -23
  3023. package/dist/workflows/hostExecutors/feishu-send.d.ts.map +0 -1
  3024. package/dist/workflows/hostExecutors/feishu-send.js +0 -124
  3025. package/dist/workflows/hostExecutors/feishu-send.js.map +0 -1
  3026. package/dist/workflows/hostExecutors/index.d.ts +0 -7
  3027. package/dist/workflows/hostExecutors/index.d.ts.map +0 -1
  3028. package/dist/workflows/hostExecutors/index.js +0 -7
  3029. package/dist/workflows/hostExecutors/index.js.map +0 -1
  3030. package/dist/workflows/hostExecutors/registry.d.ts +0 -5
  3031. package/dist/workflows/hostExecutors/registry.d.ts.map +0 -1
  3032. package/dist/workflows/hostExecutors/registry.js +0 -36
  3033. package/dist/workflows/hostExecutors/registry.js.map +0 -1
  3034. package/dist/workflows/hostExecutors/types.d.ts +0 -70
  3035. package/dist/workflows/hostExecutors/types.d.ts.map +0 -1
  3036. package/dist/workflows/hostExecutors/types.js +0 -2
  3037. package/dist/workflows/hostExecutors/types.js.map +0 -1
  3038. package/dist/workflows/migration/v2-definition-paths.d.ts +0 -3
  3039. package/dist/workflows/migration/v2-definition-paths.d.ts.map +0 -1
  3040. package/dist/workflows/migration/v2-definition-paths.js +0 -10
  3041. package/dist/workflows/migration/v2-definition-paths.js.map +0 -1
  3042. package/dist/workflows/migration/v2-ledger.d.ts +0 -138
  3043. package/dist/workflows/migration/v2-ledger.d.ts.map +0 -1
  3044. package/dist/workflows/migration/v2-ledger.js +0 -599
  3045. package/dist/workflows/migration/v2-ledger.js.map +0 -1
  3046. package/dist/workflows/migration/v2-migration-service.d.ts +0 -40
  3047. package/dist/workflows/migration/v2-migration-service.d.ts.map +0 -1
  3048. package/dist/workflows/migration/v2-migration-service.js +0 -454
  3049. package/dist/workflows/migration/v2-migration-service.js.map +0 -1
  3050. package/dist/workflows/migration/v2-read-only-ids.d.ts +0 -7
  3051. package/dist/workflows/migration/v2-read-only-ids.d.ts.map +0 -1
  3052. package/dist/workflows/migration/v2-read-only-ids.js +0 -9
  3053. package/dist/workflows/migration/v2-read-only-ids.js.map +0 -1
  3054. package/dist/workflows/migration/v2-run-archive-schema.d.ts +0 -976
  3055. package/dist/workflows/migration/v2-run-archive-schema.d.ts.map +0 -1
  3056. package/dist/workflows/migration/v2-run-archive-schema.js +0 -113
  3057. package/dist/workflows/migration/v2-run-archive-schema.js.map +0 -1
  3058. package/dist/workflows/migration/v2-run-archive.d.ts +0 -92
  3059. package/dist/workflows/migration/v2-run-archive.d.ts.map +0 -1
  3060. package/dist/workflows/migration/v2-run-archive.js +0 -1220
  3061. package/dist/workflows/migration/v2-run-archive.js.map +0 -1
  3062. package/dist/workflows/migration/v2-scanner.d.ts +0 -22
  3063. package/dist/workflows/migration/v2-scanner.d.ts.map +0 -1
  3064. package/dist/workflows/migration/v2-scanner.js +0 -114
  3065. package/dist/workflows/migration/v2-scanner.js.map +0 -1
  3066. package/dist/workflows/migration/v2-to-v3.d.ts +0 -32
  3067. package/dist/workflows/migration/v2-to-v3.d.ts.map +0 -1
  3068. package/dist/workflows/migration/v2-to-v3.js +0 -498
  3069. package/dist/workflows/migration/v2-to-v3.js.map +0 -1
  3070. package/dist/workflows/ops-projection.d.ts +0 -226
  3071. package/dist/workflows/ops-projection.d.ts.map +0 -1
  3072. package/dist/workflows/ops-projection.js +0 -804
  3073. package/dist/workflows/ops-projection.js.map +0 -1
  3074. package/dist/workflows/shared/idempotency-key.d.ts +0 -19
  3075. package/dist/workflows/shared/idempotency-key.d.ts.map +0 -1
  3076. package/dist/workflows/shared/idempotency-key.js +0 -23
  3077. package/dist/workflows/shared/idempotency-key.js.map +0 -1
  3078. package/dist/workflows/shared/params.d.ts +0 -97
  3079. package/dist/workflows/shared/params.d.ts.map +0 -1
  3080. package/dist/workflows/shared/params.js +0 -282
  3081. package/dist/workflows/shared/params.js.map +0 -1
  3082. package/dist/workflows/shared/provider-reconciler.d.ts +0 -18
  3083. package/dist/workflows/shared/provider-reconciler.d.ts.map +0 -1
  3084. package/dist/workflows/shared/provider-reconciler.js +0 -17
  3085. package/dist/workflows/shared/provider-reconciler.js.map +0 -1
  3086. package/dist/workflows/shared/sandbox-policy.d.ts +0 -23
  3087. package/dist/workflows/shared/sandbox-policy.d.ts.map +0 -1
  3088. package/dist/workflows/shared/sandbox-policy.js +0 -21
  3089. package/dist/workflows/shared/sandbox-policy.js.map +0 -1
  3090. package/dist/workflows/shared/worker-process.d.ts +0 -29
  3091. package/dist/workflows/shared/worker-process.d.ts.map +0 -1
  3092. package/dist/workflows/shared/worker-process.js +0 -56
  3093. package/dist/workflows/shared/worker-process.js.map +0 -1
  3094. package/dist/workflows/v3/architect.d.ts +0 -37
  3095. package/dist/workflows/v3/architect.d.ts.map +0 -1
  3096. package/dist/workflows/v3/architect.js +0 -239
  3097. package/dist/workflows/v3/architect.js.map +0 -1
  3098. package/dist/workflows/v3/artifact-contract.d.ts +0 -41
  3099. package/dist/workflows/v3/artifact-contract.d.ts.map +0 -1
  3100. package/dist/workflows/v3/artifact-contract.js +0 -20
  3101. package/dist/workflows/v3/artifact-contract.js.map +0 -1
  3102. package/dist/workflows/v3/attempt-ledger.d.ts +0 -23
  3103. package/dist/workflows/v3/attempt-ledger.d.ts.map +0 -1
  3104. package/dist/workflows/v3/attempt-ledger.js +0 -74
  3105. package/dist/workflows/v3/attempt-ledger.js.map +0 -1
  3106. package/dist/workflows/v3/bot-resolve.d.ts +0 -39
  3107. package/dist/workflows/v3/bot-resolve.d.ts.map +0 -1
  3108. package/dist/workflows/v3/bot-resolve.js +0 -214
  3109. package/dist/workflows/v3/bot-resolve.js.map +0 -1
  3110. package/dist/workflows/v3/botmux-attempt-lease.d.ts +0 -7
  3111. package/dist/workflows/v3/botmux-attempt-lease.d.ts.map +0 -1
  3112. package/dist/workflows/v3/botmux-attempt-lease.js +0 -189
  3113. package/dist/workflows/v3/botmux-attempt-lease.js.map +0 -1
  3114. package/dist/workflows/v3/botmux-host-policy.d.ts +0 -7
  3115. package/dist/workflows/v3/botmux-host-policy.d.ts.map +0 -1
  3116. package/dist/workflows/v3/botmux-host-policy.js +0 -34
  3117. package/dist/workflows/v3/botmux-host-policy.js.map +0 -1
  3118. package/dist/workflows/v3/cli-daemon-command-authority.d.ts +0 -59
  3119. package/dist/workflows/v3/cli-daemon-command-authority.d.ts.map +0 -1
  3120. package/dist/workflows/v3/cli-daemon-command-authority.js +0 -175
  3121. package/dist/workflows/v3/cli-daemon-command-authority.js.map +0 -1
  3122. package/dist/workflows/v3/cli-run.d.ts +0 -60
  3123. package/dist/workflows/v3/cli-run.d.ts.map +0 -1
  3124. package/dist/workflows/v3/cli-run.js +0 -368
  3125. package/dist/workflows/v3/cli-run.js.map +0 -1
  3126. package/dist/workflows/v3/contract.d.ts +0 -243
  3127. package/dist/workflows/v3/contract.d.ts.map +0 -1
  3128. package/dist/workflows/v3/contract.js +0 -89
  3129. package/dist/workflows/v3/contract.js.map +0 -1
  3130. package/dist/workflows/v3/core-control.d.ts +0 -16
  3131. package/dist/workflows/v3/core-control.d.ts.map +0 -1
  3132. package/dist/workflows/v3/core-control.js +0 -60
  3133. package/dist/workflows/v3/core-control.js.map +0 -1
  3134. package/dist/workflows/v3/daemon-ipc-auth.d.ts +0 -113
  3135. package/dist/workflows/v3/daemon-ipc-auth.d.ts.map +0 -1
  3136. package/dist/workflows/v3/daemon-ipc-auth.js +0 -294
  3137. package/dist/workflows/v3/daemon-ipc-auth.js.map +0 -1
  3138. package/dist/workflows/v3/daemon-ipc-body.d.ts +0 -30
  3139. package/dist/workflows/v3/daemon-ipc-body.d.ts.map +0 -1
  3140. package/dist/workflows/v3/daemon-ipc-body.js +0 -65
  3141. package/dist/workflows/v3/daemon-ipc-body.js.map +0 -1
  3142. package/dist/workflows/v3/daemon-ipc-client.d.ts +0 -32
  3143. package/dist/workflows/v3/daemon-ipc-client.d.ts.map +0 -1
  3144. package/dist/workflows/v3/daemon-ipc-client.js +0 -74
  3145. package/dist/workflows/v3/daemon-ipc-client.js.map +0 -1
  3146. package/dist/workflows/v3/daemon-run.d.ts +0 -396
  3147. package/dist/workflows/v3/daemon-run.d.ts.map +0 -1
  3148. package/dist/workflows/v3/daemon-run.js +0 -1573
  3149. package/dist/workflows/v3/daemon-run.js.map +0 -1
  3150. package/dist/workflows/v3/dag-loader.d.ts +0 -5
  3151. package/dist/workflows/v3/dag-loader.d.ts.map +0 -1
  3152. package/dist/workflows/v3/dag-loader.js +0 -22
  3153. package/dist/workflows/v3/dag-loader.js.map +0 -1
  3154. package/dist/workflows/v3/dag.d.ts +0 -342
  3155. package/dist/workflows/v3/dag.d.ts.map +0 -1
  3156. package/dist/workflows/v3/dag.js +0 -1210
  3157. package/dist/workflows/v3/dag.js.map +0 -1
  3158. package/dist/workflows/v3/distillation-compiler.d.ts +0 -36
  3159. package/dist/workflows/v3/distillation-compiler.d.ts.map +0 -1
  3160. package/dist/workflows/v3/distillation-compiler.js +0 -704
  3161. package/dist/workflows/v3/distillation-compiler.js.map +0 -1
  3162. package/dist/workflows/v3/distillation-private-root.d.ts +0 -10
  3163. package/dist/workflows/v3/distillation-private-root.d.ts.map +0 -1
  3164. package/dist/workflows/v3/distillation-private-root.js +0 -34
  3165. package/dist/workflows/v3/distillation-private-root.js.map +0 -1
  3166. package/dist/workflows/v3/distillation-runner.d.ts +0 -68
  3167. package/dist/workflows/v3/distillation-runner.d.ts.map +0 -1
  3168. package/dist/workflows/v3/distillation-runner.js +0 -1030
  3169. package/dist/workflows/v3/distillation-runner.js.map +0 -1
  3170. package/dist/workflows/v3/distillation-schema.d.ts +0 -63
  3171. package/dist/workflows/v3/distillation-schema.d.ts.map +0 -1
  3172. package/dist/workflows/v3/distillation-schema.js +0 -184
  3173. package/dist/workflows/v3/distillation-schema.js.map +0 -1
  3174. package/dist/workflows/v3/distillation-service.d.ts +0 -78
  3175. package/dist/workflows/v3/distillation-service.d.ts.map +0 -1
  3176. package/dist/workflows/v3/distillation-service.js +0 -416
  3177. package/dist/workflows/v3/distillation-service.js.map +0 -1
  3178. package/dist/workflows/v3/distillation-source.d.ts +0 -35
  3179. package/dist/workflows/v3/distillation-source.d.ts.map +0 -1
  3180. package/dist/workflows/v3/distillation-source.js +0 -118
  3181. package/dist/workflows/v3/distillation-source.js.map +0 -1
  3182. package/dist/workflows/v3/distillation-store.d.ts +0 -185
  3183. package/dist/workflows/v3/distillation-store.d.ts.map +0 -1
  3184. package/dist/workflows/v3/distillation-store.js +0 -1127
  3185. package/dist/workflows/v3/distillation-store.js.map +0 -1
  3186. package/dist/workflows/v3/drive-lease.d.ts +0 -7
  3187. package/dist/workflows/v3/drive-lease.d.ts.map +0 -1
  3188. package/dist/workflows/v3/drive-lease.js +0 -10
  3189. package/dist/workflows/v3/drive-lease.js.map +0 -1
  3190. package/dist/workflows/v3/ephemeral-pool.d.ts +0 -29
  3191. package/dist/workflows/v3/ephemeral-pool.d.ts.map +0 -1
  3192. package/dist/workflows/v3/ephemeral-pool.js +0 -536
  3193. package/dist/workflows/v3/ephemeral-pool.js.map +0 -1
  3194. package/dist/workflows/v3/event-contract.d.ts +0 -273
  3195. package/dist/workflows/v3/event-contract.d.ts.map +0 -1
  3196. package/dist/workflows/v3/event-contract.js +0 -8
  3197. package/dist/workflows/v3/event-contract.js.map +0 -1
  3198. package/dist/workflows/v3/gate-policy.d.ts +0 -12
  3199. package/dist/workflows/v3/gate-policy.d.ts.map +0 -1
  3200. package/dist/workflows/v3/gate-policy.js +0 -20
  3201. package/dist/workflows/v3/gate-policy.js.map +0 -1
  3202. package/dist/workflows/v3/gate-wait-store.d.ts +0 -99
  3203. package/dist/workflows/v3/gate-wait-store.d.ts.map +0 -1
  3204. package/dist/workflows/v3/gate-wait-store.js +0 -263
  3205. package/dist/workflows/v3/gate-wait-store.js.map +0 -1
  3206. package/dist/workflows/v3/goal-cli.d.ts +0 -58
  3207. package/dist/workflows/v3/goal-cli.d.ts.map +0 -1
  3208. package/dist/workflows/v3/goal-cli.js +0 -430
  3209. package/dist/workflows/v3/goal-cli.js.map +0 -1
  3210. package/dist/workflows/v3/grill-state.d.ts +0 -107
  3211. package/dist/workflows/v3/grill-state.d.ts.map +0 -1
  3212. package/dist/workflows/v3/grill-state.js +0 -168
  3213. package/dist/workflows/v3/grill-state.js.map +0 -1
  3214. package/dist/workflows/v3/host-bindings.d.ts +0 -40
  3215. package/dist/workflows/v3/host-bindings.d.ts.map +0 -1
  3216. package/dist/workflows/v3/host-bindings.js +0 -272
  3217. package/dist/workflows/v3/host-bindings.js.map +0 -1
  3218. package/dist/workflows/v3/host-effect-ledger.d.ts +0 -22
  3219. package/dist/workflows/v3/host-effect-ledger.d.ts.map +0 -1
  3220. package/dist/workflows/v3/host-effect-ledger.js +0 -110
  3221. package/dist/workflows/v3/host-effect-ledger.js.map +0 -1
  3222. package/dist/workflows/v3/host-execution.d.ts +0 -142
  3223. package/dist/workflows/v3/host-execution.d.ts.map +0 -1
  3224. package/dist/workflows/v3/host-execution.js +0 -424
  3225. package/dist/workflows/v3/host-execution.js.map +0 -1
  3226. package/dist/workflows/v3/host.d.ts +0 -124
  3227. package/dist/workflows/v3/host.d.ts.map +0 -1
  3228. package/dist/workflows/v3/host.js +0 -628
  3229. package/dist/workflows/v3/host.js.map +0 -1
  3230. package/dist/workflows/v3/human-gate.d.ts +0 -8
  3231. package/dist/workflows/v3/human-gate.d.ts.map +0 -1
  3232. package/dist/workflows/v3/human-gate.js +0 -8
  3233. package/dist/workflows/v3/human-gate.js.map +0 -1
  3234. package/dist/workflows/v3/in-process-attempt-lease.d.ts +0 -10
  3235. package/dist/workflows/v3/in-process-attempt-lease.d.ts.map +0 -1
  3236. package/dist/workflows/v3/in-process-attempt-lease.js +0 -47
  3237. package/dist/workflows/v3/in-process-attempt-lease.js.map +0 -1
  3238. package/dist/workflows/v3/journal.d.ts +0 -52
  3239. package/dist/workflows/v3/journal.d.ts.map +0 -1
  3240. package/dist/workflows/v3/journal.js +0 -190
  3241. package/dist/workflows/v3/journal.js.map +0 -1
  3242. package/dist/workflows/v3/library-materialize.d.ts +0 -88
  3243. package/dist/workflows/v3/library-materialize.d.ts.map +0 -1
  3244. package/dist/workflows/v3/library-materialize.js +0 -298
  3245. package/dist/workflows/v3/library-materialize.js.map +0 -1
  3246. package/dist/workflows/v3/library-schema.d.ts +0 -159
  3247. package/dist/workflows/v3/library-schema.d.ts.map +0 -1
  3248. package/dist/workflows/v3/library-schema.js +0 -667
  3249. package/dist/workflows/v3/library-schema.js.map +0 -1
  3250. package/dist/workflows/v3/library-service.d.ts +0 -126
  3251. package/dist/workflows/v3/library-service.d.ts.map +0 -1
  3252. package/dist/workflows/v3/library-service.js +0 -542
  3253. package/dist/workflows/v3/library-service.js.map +0 -1
  3254. package/dist/workflows/v3/library-store.d.ts +0 -124
  3255. package/dist/workflows/v3/library-store.d.ts.map +0 -1
  3256. package/dist/workflows/v3/library-store.js +0 -665
  3257. package/dist/workflows/v3/library-store.js.map +0 -1
  3258. package/dist/workflows/v3/manifest.d.ts +0 -17
  3259. package/dist/workflows/v3/manifest.d.ts.map +0 -1
  3260. package/dist/workflows/v3/manifest.js +0 -266
  3261. package/dist/workflows/v3/manifest.js.map +0 -1
  3262. package/dist/workflows/v3/ops-projection.d.ts +0 -110
  3263. package/dist/workflows/v3/ops-projection.d.ts.map +0 -1
  3264. package/dist/workflows/v3/ops-projection.js +0 -0
  3265. package/dist/workflows/v3/ops-projection.js.map +0 -1
  3266. package/dist/workflows/v3/orchestrator.d.ts +0 -175
  3267. package/dist/workflows/v3/orchestrator.d.ts.map +0 -1
  3268. package/dist/workflows/v3/orchestrator.js +0 -418
  3269. package/dist/workflows/v3/orchestrator.js.map +0 -1
  3270. package/dist/workflows/v3/portable-artifact-snapshot.d.ts +0 -15
  3271. package/dist/workflows/v3/portable-artifact-snapshot.d.ts.map +0 -1
  3272. package/dist/workflows/v3/portable-artifact-snapshot.js +0 -76
  3273. package/dist/workflows/v3/portable-artifact-snapshot.js.map +0 -1
  3274. package/dist/workflows/v3/portable-final-outputs.d.ts +0 -37
  3275. package/dist/workflows/v3/portable-final-outputs.d.ts.map +0 -1
  3276. package/dist/workflows/v3/portable-final-outputs.js +0 -137
  3277. package/dist/workflows/v3/portable-final-outputs.js.map +0 -1
  3278. package/dist/workflows/v3/portable-run-snapshot.d.ts +0 -14
  3279. package/dist/workflows/v3/portable-run-snapshot.d.ts.map +0 -1
  3280. package/dist/workflows/v3/portable-run-snapshot.js +0 -176
  3281. package/dist/workflows/v3/portable-run-snapshot.js.map +0 -1
  3282. package/dist/workflows/v3/portable-runtime.d.ts +0 -83
  3283. package/dist/workflows/v3/portable-runtime.d.ts.map +0 -1
  3284. package/dist/workflows/v3/portable-runtime.js +0 -135
  3285. package/dist/workflows/v3/portable-runtime.js.map +0 -1
  3286. package/dist/workflows/v3/progress-projection.d.ts +0 -102
  3287. package/dist/workflows/v3/progress-projection.d.ts.map +0 -1
  3288. package/dist/workflows/v3/progress-projection.js +0 -219
  3289. package/dist/workflows/v3/progress-projection.js.map +0 -1
  3290. package/dist/workflows/v3/run-envelope.d.ts +0 -1324
  3291. package/dist/workflows/v3/run-envelope.d.ts.map +0 -1
  3292. package/dist/workflows/v3/run-envelope.js +0 -712
  3293. package/dist/workflows/v3/run-envelope.js.map +0 -1
  3294. package/dist/workflows/v3/runtime-host-contract.d.ts +0 -182
  3295. package/dist/workflows/v3/runtime-host-contract.d.ts.map +0 -1
  3296. package/dist/workflows/v3/runtime-host-contract.js +0 -9
  3297. package/dist/workflows/v3/runtime-host-contract.js.map +0 -1
  3298. package/dist/workflows/v3/runtime.d.ts +0 -16
  3299. package/dist/workflows/v3/runtime.d.ts.map +0 -1
  3300. package/dist/workflows/v3/runtime.js +0 -18
  3301. package/dist/workflows/v3/runtime.js.map +0 -1
  3302. package/dist/workflows/v3/session-relay-client.d.ts +0 -61
  3303. package/dist/workflows/v3/session-relay-client.d.ts.map +0 -1
  3304. package/dist/workflows/v3/session-relay-client.js +0 -92
  3305. package/dist/workflows/v3/session-relay-client.js.map +0 -1
  3306. package/dist/workflows/v3/session-relay.d.ts +0 -66
  3307. package/dist/workflows/v3/session-relay.d.ts.map +0 -1
  3308. package/dist/workflows/v3/session-relay.js +0 -157
  3309. package/dist/workflows/v3/session-relay.js.map +0 -1
  3310. package/dist/workflows/v3/shared-node-runtime.d.ts +0 -203
  3311. package/dist/workflows/v3/shared-node-runtime.d.ts.map +0 -1
  3312. package/dist/workflows/v3/shared-node-runtime.js +0 -2978
  3313. package/dist/workflows/v3/shared-node-runtime.js.map +0 -1
  3314. package/dist/workflows/v3/shared-runtime.d.ts +0 -17
  3315. package/dist/workflows/v3/shared-runtime.d.ts.map +0 -1
  3316. package/dist/workflows/v3/shared-runtime.js +0 -12
  3317. package/dist/workflows/v3/shared-runtime.js.map +0 -1
  3318. package/dist/workflows/v3/spec.d.ts +0 -32
  3319. package/dist/workflows/v3/spec.d.ts.map +0 -1
  3320. package/dist/workflows/v3/spec.js +0 -173
  3321. package/dist/workflows/v3/spec.js.map +0 -1
  3322. package/dist/workflows/v3/start-intent.d.ts +0 -8
  3323. package/dist/workflows/v3/start-intent.d.ts.map +0 -1
  3324. package/dist/workflows/v3/start-intent.js +0 -34
  3325. package/dist/workflows/v3/start-intent.js.map +0 -1
  3326. package/dist/workflows/v3/state.d.ts +0 -83
  3327. package/dist/workflows/v3/state.d.ts.map +0 -1
  3328. package/dist/workflows/v3/state.js +0 -525
  3329. package/dist/workflows/v3/state.js.map +0 -1
  3330. package/dist/workflows/v3/template-bindings.d.ts +0 -22
  3331. package/dist/workflows/v3/template-bindings.d.ts.map +0 -1
  3332. package/dist/workflows/v3/template-bindings.js +0 -204
  3333. package/dist/workflows/v3/template-bindings.js.map +0 -1
  3334. package/dist/workflows/v3/worker-fence.d.ts +0 -158
  3335. package/dist/workflows/v3/worker-fence.d.ts.map +0 -1
  3336. package/dist/workflows/v3/worker-fence.js +0 -690
  3337. package/dist/workflows/v3/worker-fence.js.map +0 -1
  3338. package/ecosystem.config.cjs +0 -15
@@ -1,2486 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
3
- import { openBotOnboarding } from './bot-onboarding.js';
4
- import { agentSelectionKey, cliIdOf, createRefreshGate, displayCliId, fallbackCliOptionsState, fetchBotDefaults, fetchCliOptions, fmtSince, modelSuggestionsForOption, resolveSubstituteTarget, selectedCliOption, } from './bot-defaults.js';
5
- import { mountReactPage } from './react-mount.js';
6
- import { useT } from './react-hooks.js';
7
- import { store } from './store.js';
8
- import { CreateActionButton, DropdownMenu, Html, InfoTip as BaseInfoTip, LoadingState, OverflowText, RefreshIconButton, dropdownLabel, } from './dashboard-components.js';
9
- import { botAvatarHtml, loadNameMaps, overrideBotAvatar, ui } from './ui.js';
10
- function runtimeDraftFromBot(bot) {
11
- const runtime = bot.cliRuntime;
12
- if (!runtime || typeof runtime !== 'object') {
13
- const legacyPath = typeof bot.cliPathOverride === 'string' ? bot.cliPathOverride.trim() : '';
14
- return {
15
- mode: legacyPath ? 'legacy' : 'official',
16
- id: '',
17
- displayName: '',
18
- // Carry the path into the custom form so migrating a legacy entry does
19
- // not require retyping it; the legacy state itself remains read-only.
20
- executable: legacyPath,
21
- legacyPath,
22
- updateProvider: 'auto',
23
- packageName: '',
24
- };
25
- }
26
- const provider = runtime.update?.provider;
27
- const updateProvider = provider === 'self' || provider === 'npm' || provider === 'none'
28
- ? provider
29
- : 'auto';
30
- return {
31
- mode: 'custom',
32
- id: typeof runtime.id === 'string' ? runtime.id : '',
33
- displayName: typeof runtime.displayName === 'string' ? runtime.displayName : '',
34
- executable: typeof runtime.executable === 'string' ? runtime.executable : '',
35
- legacyPath: '',
36
- updateProvider,
37
- packageName: runtime.update?.provider === 'npm' && typeof runtime.update.packageName === 'string'
38
- ? runtime.update.packageName
39
- : '',
40
- };
41
- }
42
- export const BOT_DEFAULTS_TABS = [
43
- 'common',
44
- 'sessions',
45
- 'security',
46
- 'cards',
47
- 'advanced',
48
- ];
49
- export function BotDefaultsTabs(props) {
50
- const tr = useT();
51
- const tabRefs = useRef([]);
52
- const labels = {
53
- common: tr('botDefaults.tabCommon'),
54
- sessions: tr('botDefaults.tabSessions'),
55
- security: tr('botDefaults.tabSecurity'),
56
- cards: tr('botDefaults.tabCards'),
57
- advanced: tr('botDefaults.tabAdvanced'),
58
- };
59
- function selectAt(index) {
60
- const nextIndex = (index + BOT_DEFAULTS_TABS.length) % BOT_DEFAULTS_TABS.length;
61
- const next = BOT_DEFAULTS_TABS[nextIndex];
62
- props.onChange(next);
63
- tabRefs.current[nextIndex]?.focus();
64
- }
65
- return (_jsxs("nav", { className: "bd-tab-bar", "aria-label": tr('botDefaults.tabNavigation'), children: [_jsx("div", { className: "bd-tabs", role: "tablist", children: BOT_DEFAULTS_TABS.map((tab, index) => (_jsx("button", { ref: node => { tabRefs.current[index] = node; }, id: `bd-tab-${tab}`, type: "button", role: "tab", className: `bd-tab${props.active === tab ? ' active' : ''}`, "aria-selected": props.active === tab, "aria-controls": `bd-panel-${tab}`, tabIndex: props.active === tab ? 0 : -1, "data-bd-tab": tab, onClick: () => props.onChange(tab), onKeyDown: event => {
66
- if (event.key === 'ArrowRight') {
67
- event.preventDefault();
68
- selectAt(index + 1);
69
- }
70
- else if (event.key === 'ArrowLeft') {
71
- event.preventDefault();
72
- selectAt(index - 1);
73
- }
74
- else if (event.key === 'Home') {
75
- event.preventDefault();
76
- selectAt(0);
77
- }
78
- else if (event.key === 'End') {
79
- event.preventDefault();
80
- selectAt(BOT_DEFAULTS_TABS.length - 1);
81
- }
82
- }, children: labels[tab] }, tab))) }), _jsx("small", { className: "bd-tab-hint", children: tr('botDefaults.tabHint') })] }));
83
- }
84
- // Two-column waterfall (masonry) for the task panels. A plain row-major grid
85
- // locks each row to its tallest tile, stranding a short tile beside a tall one
86
- // with a dead gap below. This lays tiles out by greedily dropping each into the
87
- // currently shortest column and writing back an inline grid-column /
88
- // grid-row-start over the CSS 1px row track. Tiles stay direct grid children —
89
- // never reparented into per-column wrappers — so their unsaved form drafts
90
- // (the whole point of the focused editor) never remount. Degrades to the plain
91
- // auto-fill grid when there is only one column (mobile / narrow) or before the
92
- // first measure.
93
- const BD_GRID_ROW_PX = 1; // must match grid-auto-rows in style.css
94
- const BD_GRID_GAP_PX = 14; // must match .bd-tab-grid gap
95
- export function BdTabGrid(props) {
96
- const ref = useRef(null);
97
- useEffect(() => {
98
- const grid = ref.current;
99
- if (!grid || typeof window === 'undefined')
100
- return undefined;
101
- const clearPlacement = (tiles) => {
102
- for (const tile of tiles) {
103
- tile.style.gridColumn = '';
104
- tile.style.gridRowStart = '';
105
- tile.style.gridRowEnd = '';
106
- }
107
- };
108
- const layout = () => {
109
- const tiles = Array.from(grid.children).filter((n) => n instanceof HTMLElement);
110
- if (!tiles.length)
111
- return;
112
- // A hidden panel (display:none) reports 0 width — skip; the ResizeObserver
113
- // re-fires with real geometry the moment the tab becomes visible.
114
- const gridWidth = grid.clientWidth;
115
- if (gridWidth <= 0)
116
- return;
117
- // Decide the column count from the SAME width the CSS @container rule keys
118
- // off (the .bd-detail container), instead of parsing
119
- // getComputedStyle().gridTemplateColumns — that value contains spaces
120
- // inside minmax(...) and, once we write an inline grid-column, can report a
121
- // stale/implicit extra track, which previously produced a rogue 3rd column.
122
- // Reading the container keeps JS placement and the CSS track count in lockstep.
123
- const container = grid.closest('.bd-detail');
124
- const decideWidth = container?.clientWidth ?? gridWidth;
125
- const columns = decideWidth >= 1024 ? 2 : 1;
126
- // Single column (mobile / narrow): normal flow already stacks with no gap.
127
- if (columns < 2) {
128
- clearPlacement(tiles);
129
- return;
130
- }
131
- const rowStep = BD_GRID_ROW_PX + BD_GRID_GAP_PX;
132
- const colBottom = new Array(columns).fill(0); // running bottom, row units
133
- for (const tile of tiles) {
134
- const spanRows = Math.max(1, Math.ceil((tile.getBoundingClientRect().height + BD_GRID_GAP_PX) / rowStep));
135
- if (tile.classList.contains('bd-tile-wide')) {
136
- // full-width tile: start below the tallest column, then level every
137
- // column to its bottom so following tiles pack beneath it evenly.
138
- const start = Math.max(...colBottom);
139
- tile.style.gridColumn = '1 / -1';
140
- tile.style.gridRowStart = String(start + 1);
141
- tile.style.gridRowEnd = String(start + 1 + spanRows);
142
- colBottom.fill(start + spanRows);
143
- continue;
144
- }
145
- // drop into the currently shortest column (true waterfall)
146
- let target = 0;
147
- for (let c = 1; c < columns; c++)
148
- if (colBottom[c] < colBottom[target])
149
- target = c;
150
- const start = colBottom[target];
151
- tile.style.gridColumn = String(target + 1);
152
- tile.style.gridRowStart = String(start + 1);
153
- tile.style.gridRowEnd = String(start + 1 + spanRows);
154
- colBottom[target] = start + spanRows;
155
- }
156
- };
157
- // Measure after paint; re-run on any tile resize (content toggles, textarea
158
- // growth, async loads, tab becoming visible) and on viewport resize.
159
- const raf = window.requestAnimationFrame(layout);
160
- const ro = typeof ResizeObserver !== 'undefined' ? new ResizeObserver(() => layout()) : null;
161
- if (ro) {
162
- ro.observe(grid);
163
- for (const child of Array.from(grid.children))
164
- ro.observe(child);
165
- }
166
- window.addEventListener('resize', layout);
167
- return () => {
168
- window.cancelAnimationFrame(raf);
169
- ro?.disconnect();
170
- window.removeEventListener('resize', layout);
171
- };
172
- });
173
- return (_jsx("div", { ref: ref, className: props.className ? `bd-tab-grid ${props.className}` : 'bd-tab-grid', children: props.children }));
174
- }
175
- function statusClass(status, extra = '') {
176
- const suffix = status ? ` ${status.ok ? 'hint-ok' : 'hint-warn-inline'}` : '';
177
- return `oncall-status${extra ? ` ${extra}` : ''}${suffix}`;
178
- }
179
- function StatusSpan(props) {
180
- return _jsx("span", { className: statusClass(props.status), ...(props.attr ?? {}), children: props.status?.text ?? '' });
181
- }
182
- function InfoTip(props) {
183
- const ariaLabel = typeof props.children === 'string' ? props.children : undefined;
184
- return _jsx(BaseInfoTip, { className: "bd-info-tip", label: ariaLabel, children: props.children });
185
- }
186
- function FieldTitle(props) {
187
- return (_jsxs("span", { className: "bd-field-title", children: [_jsx("span", { className: "bd-field-title-text", children: props.children }), props.help ? _jsx(InfoTip, { children: props.help }) : null] }));
188
- }
189
- function DropdownField(props) {
190
- const tr = useT();
191
- return (_jsxs(_Fragment, { children: [_jsx(DropdownMenu, { id: `bd-menu-${props.dataInput}`, className: ['bd-field-menu', props.className].filter(Boolean).join(' '), ariaLabel: props.ariaLabel, disabled: props.disabled, label: dropdownLabel(props.options, props.value), value: props.value, options: props.options, searchable: props.searchable, searchPlaceholder: props.searchable ? tr('common.dropdownSearch') : undefined, searchEmptyLabel: props.searchable ? tr('common.dropdownSearchEmpty') : undefined, onChange: props.onChange }), _jsx("input", { type: "hidden", "data-input": props.dataInput, value: props.value, readOnly: true })] }));
192
- }
193
- function ToggleRow(props) {
194
- return (_jsxs("label", { className: "toggle-row", children: [_jsx("input", { type: "checkbox", "data-action": props.dataAction, checked: props.checked, disabled: props.disabled, onChange: event => props.onChange(event.currentTarget.checked) }), _jsx("span", { className: "switch", "aria-hidden": "true" }), _jsx("span", { className: "toggle-tx", children: _jsx("strong", { children: _jsx(FieldTitle, { help: props.help, children: props.title }) }) })] }));
195
- }
196
- async function sendJson(method, url, body) {
197
- const r = await fetch(url, {
198
- method,
199
- headers: { 'content-type': 'application/json' },
200
- body: body === undefined ? undefined : JSON.stringify(body),
201
- });
202
- const parsed = await r.json().catch(() => ({}));
203
- return { ok: r.ok && parsed?.ok !== false, status: r.status, body: parsed };
204
- }
205
- function responseErrorText(res) {
206
- const reason = typeof res.body?.reason === 'string' ? res.body.reason : '';
207
- const manual = typeof res.body?.manualCommand === 'string' ? res.body.manualCommand : '';
208
- if (reason && manual)
209
- return `${reason}(${manual})`;
210
- return String(reason || res.body?.error || res.status);
211
- }
212
- function caughtErrorText(e) {
213
- return e?.message ?? String(e);
214
- }
215
- function positiveIntegerOrNull(raw) {
216
- const value = raw.trim();
217
- if (!value)
218
- return null;
219
- if (!/^[1-9]\d*$/.test(value))
220
- return 'invalid';
221
- return Number(value);
222
- }
223
- function nonNegativeInteger(raw, fallback) {
224
- const value = raw.trim();
225
- if (value === '')
226
- return fallback;
227
- if (!/^(0|[1-9]\d*)$/.test(value))
228
- return null;
229
- return Number(value);
230
- }
231
- const substituteTargetIdFields = ['email', 'openId', 'userId', 'unionId'];
232
- function parseSubstituteChats(text) {
233
- const values = text.split(/[\r\n,,;;]+/).map(s => s.trim()).filter(Boolean);
234
- return [...new Set(values)];
235
- }
236
- function formatSubstituteChats(chats) {
237
- return (chats ?? []).join('\n');
238
- }
239
- function substituteTargetIdField(target) {
240
- return substituteTargetIdFields.find(field => target?.[field]?.trim()) ?? 'email';
241
- }
242
- /**
243
- * Build the substitute target to PUT for one edited row. Returns null when the id value is
244
- * blank. When the id value/field was edited, every carried-over resolved id is dropped so the
245
- * server re-resolves the new value — otherwise `persisted` keeps a previously-resolved openId
246
- * alongside the email and the server (which prefers openId) would substitute the stale person.
247
- * An unchanged row keeps its resolved ids so the stable id is preserved.
248
- */
249
- export function buildSubstituteTarget(row) {
250
- const idValue = row.idValue.trim();
251
- if (!idValue)
252
- return null;
253
- const target = { ...row.persisted };
254
- const idEdited = row.persisted[row.idField] !== idValue
255
- || (row.originalIdField != null && row.originalIdField !== row.idField);
256
- if (idEdited) {
257
- for (const field of substituteTargetIdFields)
258
- delete target[field];
259
- }
260
- target[row.idField] = idValue;
261
- const name = row.name.trim();
262
- if (name)
263
- target.name = name;
264
- else
265
- delete target.name;
266
- return target;
267
- }
268
- function brandStateLabel(brand, tr) {
269
- if (brand == null)
270
- return tr('botDefaults.brandStateDefault');
271
- return brand.trim() === '' ? tr('botDefaults.brandStateOff') : tr('botDefaults.brandStateCustom');
272
- }
273
- function quotaStateLabel(quota, tr) {
274
- return quota == null
275
- ? tr('botDefaults.quotaStateOff')
276
- : tr('botDefaults.quotaStateOn', { count: quota });
277
- }
278
- function sessionCapStateLabel(cap, tr) {
279
- return cap == null
280
- ? tr('botDefaults.maxLiveWorkersStateDefault')
281
- : tr('botDefaults.maxLiveWorkersStateOn', { count: cap });
282
- }
283
- function patchCardPrefsFromBody(bot, body) {
284
- return {
285
- ...bot,
286
- usageDisplay: body.usageDisplay,
287
- disableStreamingCard: body.disableStreamingCard,
288
- silentTurnReactions: body.silentTurnReactions,
289
- codexAppCleanInput: body.codexAppCleanInput,
290
- writableTerminalLinkInCard: body.writableTerminalLinkInCard,
291
- privateCard: body.privateCard,
292
- summaryMemory: body.summaryMemory,
293
- summaryMemoryPath: body.summaryMemoryPath,
294
- botToBotSameDir: body.botToBotSameDir,
295
- autoStartOnGroupJoin: body.autoStartOnGroupJoin,
296
- autoStartOnGroupJoinPrompt: body.autoStartOnGroupJoinPrompt,
297
- autoStartOnNewTopic: body.autoStartOnNewTopic,
298
- regularGroupReplyMode: body.regularGroupReplyMode,
299
- regularGroupMentionMode: body.regularGroupMentionMode,
300
- docSubscribeDefaultMode: body.docSubscribeDefaultMode,
301
- };
302
- }
303
- export function BotDefaultsPage() {
304
- const tr = useT();
305
- const mountedRef = useRef(true);
306
- // Latest-wins guard: mount's first refresh() and bots.changed-triggered
307
- // refresh()es can overlap, so a slow earlier response must not clobber a
308
- // newer roster ("后发先回"). Only the latest in-flight request commits.
309
- const refreshGateRef = useRef(createRefreshGate());
310
- const [bots, setBots] = useState([]);
311
- const [cliState, setCliState] = useState(fallbackCliOptionsState);
312
- const [loadError, setLoadError] = useState(null);
313
- const [loading, setLoading] = useState(true);
314
- const [refreshing, setRefreshing] = useState(false);
315
- const [query, setQuery] = useState('');
316
- const [selectedAppId, setSelectedAppId] = useState(null);
317
- const [profileRoleVersion, setProfileRoleVersion] = useState(0);
318
- const [, setAvatarVersion] = useState(0);
319
- const [onboardingBusy, setOnboardingBusy] = useState(false);
320
- const [activeTab, setActiveTab] = useState('common');
321
- const refresh = useCallback(async (clearProfileRoles = false) => {
322
- if (clearProfileRoles)
323
- setProfileRoleVersion(version => version + 1);
324
- const req = refreshGateRef.current.begin();
325
- setLoading(true);
326
- try {
327
- const [nextBots, nextCli] = await Promise.all([fetchBotDefaults(), fetchCliOptions()]);
328
- // Drop a stale response: a newer refresh() started after us (e.g. a
329
- // bots.changed fired while this request was in flight) — committing here
330
- // would overwrite the fresher roster and re-hide the new bot.
331
- if (!mountedRef.current || !req.commit())
332
- return;
333
- setBots(nextBots.bots);
334
- setLoadError(nextBots.error);
335
- setCliState(nextCli);
336
- }
337
- finally {
338
- // Only the latest request owns the loading flag — an out-of-order earlier
339
- // response must not flip loading off while the newest is still pending.
340
- if (mountedRef.current && req.commit())
341
- setLoading(false);
342
- }
343
- }, []);
344
- useEffect(() => {
345
- mountedRef.current = true;
346
- void refresh();
347
- void loadNameMaps().then(() => {
348
- if (mountedRef.current)
349
- setAvatarVersion(value => value + 1);
350
- });
351
- // Auto-refresh the roster when a bot is added / removed / renamed on the
352
- // daemon side (SSE bots.changed), so the list stays live without a manual
353
- // reload. The bot rows carry their own botName/cliId from /api/bots, so a
354
- // plain refresh() is enough to surface a freshly-added bot.
355
- const offBots = store.onBotsChanged(() => {
356
- if (mountedRef.current)
357
- void refresh();
358
- });
359
- return () => { mountedRef.current = false; offBots(); };
360
- }, [refresh]);
361
- const filtered = useMemo(() => {
362
- const q = query.trim().toLowerCase();
363
- return bots.filter(bot => !q ||
364
- (bot.botName ?? '').toLowerCase().includes(q) ||
365
- (bot.larkAppId ?? '').toLowerCase().includes(q));
366
- }, [bots, query]);
367
- useEffect(() => {
368
- if (loadError || loading)
369
- return;
370
- if (filtered.length === 0) {
371
- if (selectedAppId !== null)
372
- setSelectedAppId(null);
373
- return;
374
- }
375
- if (!selectedAppId || !filtered.some(bot => bot.larkAppId === selectedAppId)) {
376
- setSelectedAppId(filtered[0].larkAppId);
377
- }
378
- }, [filtered, loadError, loading, selectedAppId]);
379
- const selectedBot = selectedAppId ? filtered.find(bot => bot.larkAppId === selectedAppId) ?? null : null;
380
- const patchBot = useCallback((appId, patch) => {
381
- setBots(rows => rows.map(bot => {
382
- if (bot.larkAppId !== appId)
383
- return bot;
384
- return typeof patch === 'function' ? patch(bot) : { ...bot, ...patch };
385
- }));
386
- }, []);
387
- const reload = async () => {
388
- setRefreshing(true);
389
- try {
390
- await refresh(true);
391
- }
392
- finally {
393
- if (mountedRef.current)
394
- setRefreshing(false);
395
- }
396
- };
397
- let detail;
398
- if (loading) {
399
- detail = _jsx(LoadingState, { label: tr('common.loading') });
400
- }
401
- else if (loadError) {
402
- detail = (_jsxs("p", { className: "hint-warn", children: ["\u65E0\u6CD5\u52A0\u8F7D bot \u5217\u8868\uFF1A", loadError, _jsx("br", {}), "\u5E38\u89C1\u539F\u56E0\uFF1Adashboard / daemon \u8FDB\u7A0B\u8FD8\u5728\u8DD1\u65E7\u4EE3\u7801\uFF0C\u6267\u884C ", _jsx("code", { children: "botmux restart" }), " \u540E\u5237\u65B0\u3002"] }));
403
- }
404
- else if (filtered.length === 0) {
405
- detail = _jsx("p", { className: "empty", children: tr('botDefaults.empty') });
406
- }
407
- else if (selectedBot) {
408
- detail = (_jsx(BotDefaultsCard, { bot: selectedBot, cliState: cliState, patchBot: patchBot, activeTab: activeTab, onTabChange: setActiveTab }, `${selectedBot.larkAppId}:${profileRoleVersion}`));
409
- }
410
- else {
411
- detail = null;
412
- }
413
- return (_jsxs("section", { className: "page bot-defaults-page", children: [_jsxs("div", { className: "page-heading", children: [_jsxs("div", { children: [_jsx("p", { className: "eyebrow", children: tr('nav.botDefaults') }), _jsx("h1", { children: tr('botDefaults.title') })] }), _jsxs("div", { className: "page-heading-actions", children: [_jsx(RefreshIconButton, { id: "bd-refresh", label: tr('botDefaults.refresh'), busy: refreshing, disabled: refreshing, onClick: () => void reload() }), ui.authed ? (_jsx(CreateActionButton, { className: "page-primary-action add-bot-btn", disabled: onboardingBusy, onClick: () => {
414
- setOnboardingBusy(true);
415
- void openBotOnboarding().finally(() => setOnboardingBusy(false));
416
- }, children: tr('botOnboarding.add') })) : null] })] }), _jsxs("div", { className: "bd-layout", children: [_jsxs("aside", { id: "bd-roster", className: "bd-roster", children: [_jsx("form", { id: "bd-filters", className: "filters dashboard-toolbar", onSubmit: event => event.preventDefault(), children: _jsx("input", { type: "search", name: "q", placeholder: tr('botDefaults.search'), value: query, onChange: event => setQuery(event.currentTarget.value) }) }), _jsxs("div", { className: "bd-roster-meta", children: [_jsx("span", { children: tr('botDefaults.rosterCount', { count: filtered.length }) }), query.trim() && filtered.length !== bots.length ? (_jsx("span", { children: tr('botDefaults.rosterFiltered', { total: bots.length }) })) : null] }), _jsx("div", { className: "bd-roster-list", children: !loadError && filtered.map(bot => (_jsx(RosterItem, { bot: bot, selected: bot.larkAppId === selectedAppId, onSelect: () => setSelectedAppId(bot.larkAppId) }, bot.larkAppId))) })] }), _jsx("div", { id: "bd-list", className: "bd-detail", children: detail })] })] }));
417
- }
418
- function RosterItem(props) {
419
- const { bot } = props;
420
- const name = bot.botName ?? bot.larkAppId;
421
- const cli = displayCliId(bot, cliIdOf(bot.larkAppId));
422
- return (_jsxs("div", { className: `bd-roster-item${props.selected ? ' on' : ''}`, "data-appid": bot.larkAppId, role: "button", tabIndex: 0, onClick: props.onSelect, onKeyDown: event => {
423
- if (event.key === 'Enter' || event.key === ' ') {
424
- event.preventDefault();
425
- props.onSelect();
426
- }
427
- }, children: [_jsx(Html, { html: botAvatarHtml({ name, larkAppId: bot.larkAppId, size: 'sm' }) }), _jsxs("div", { className: "bd-roster-tx", children: [_jsx("b", { children: _jsx(OverflowText, { text: name, showPopover: false, textClassName: "bd-roster-name" }) }), _jsx("span", { children: cli || bot.larkAppId.slice(0, 14) })] }), bot.defaultOncall?.enabled ? _jsx("span", { className: "bd-roster-flag", children: "oncall" }) : null] }));
428
- }
429
- function BotDefaultsCard(props) {
430
- const tr = useT();
431
- const { bot, cliState, patchBot } = props;
432
- const name = bot.botName ?? bot.larkAppId;
433
- const cli = displayCliId(bot, cliIdOf(bot.larkAppId));
434
- const putCardPref = useCallback(async (patch) => {
435
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(bot.larkAppId)}/card-prefs`, patch);
436
- if (res.ok) {
437
- patchBot(bot.larkAppId, current => patchCardPrefsFromBody(current, res.body));
438
- }
439
- return res;
440
- }, [bot.larkAppId, patchBot]);
441
- if (bot.error) {
442
- return (_jsxs("article", { className: "bd-card bd-profile", "data-appid": bot.larkAppId, children: [_jsxs("header", { className: "bd-profile-head", children: [_jsx(Html, { html: botAvatarHtml({ name, larkAppId: bot.larkAppId }) }), _jsxs("div", { className: "bd-profile-id", children: [_jsx("strong", { children: name }), _jsx("code", { children: bot.larkAppId })] })] }), _jsxs("p", { className: "hint-warn-inline", children: ["\u67E5\u8BE2\u5931\u8D25\uFF1A", bot.error] })] }));
443
- }
444
- const def = bot.defaultOncall ?? { enabled: false, workingDir: '', since: 0 };
445
- return (_jsxs("article", { className: "bd-card bd-profile", "data-appid": bot.larkAppId, children: [_jsxs("div", { className: "bd-profile-chrome", children: [_jsxs("header", { className: "bd-profile-head", children: [_jsx(BotAvatarControl, { bot: bot, name: name, patchBot: patchBot }), _jsx("div", { className: "bd-profile-main", children: _jsx(BotProfileIdentity, { bot: bot, cli: cli, patchBot: patchBot, meta: (_jsxs(_Fragment, { children: [_jsxs("small", { className: "bd-meta-ok", children: ["\u25CF ", tr('botDefaults.metaOnline')] }), (def.since ?? 0) > 0 ? _jsxs("small", { "data-oncall-since": true, children: [tr('botDefaults.lastEnabled'), ": ", fmtSince(def.since ?? 0)] }) : null, (bot.autoboundChatCount ?? 0) > 0 ? _jsx("small", { children: tr('botDefaults.autobound', { count: bot.autoboundChatCount ?? 0 }) }) : null] })) }) })] }), _jsx(BotDefaultsTabs, { active: props.activeTab, onChange: props.onTabChange })] }), _jsxs("div", { className: "bd-body bd-tab-panels", children: [_jsx("div", { id: "bd-panel-common", role: "tabpanel", "aria-labelledby": "bd-tab-common", className: "bd-tab-panel", hidden: props.activeTab !== 'common', children: _jsxs(BdTabGrid, { children: [_jsx("section", { className: "bd-tile", children: _jsx(BotAgentSection, { bot: bot, sessionFallback: cli, cliState: cliState, patchBot: patchBot }) }), _jsx("section", { className: "bd-tile", children: _jsx(WorkingDirSection, { bot: bot, patchBot: patchBot, putCardPref: putCardPref }) }), _jsx("section", { className: "bd-tile", children: _jsx(RoleSection, { bot: bot, patchBot: patchBot }) })] }) }), _jsx("div", { id: "bd-panel-sessions", role: "tabpanel", "aria-labelledby": "bd-tab-sessions", className: "bd-tab-panel", hidden: props.activeTab !== 'sessions', children: _jsxs(BdTabGrid, { children: [_jsx("section", { className: "bd-tile", children: _jsx(SessionModeSection, { bot: bot, patchBot: patchBot, putCardPref: putCardPref }) }), _jsx("section", { className: "bd-tile", children: _jsx(SubstituteModeSection, { bot: bot, patchBot: patchBot }) }), _jsx("section", { className: "bd-tile", children: _jsx(CrossBotSection, { bot: bot, putCardPref: putCardPref }) }), _jsx("section", { className: "bd-tile", children: _jsx(SessionCapSection, { bot: bot, patchBot: patchBot }) }), _jsx("section", { className: "bd-tile", children: _jsx(StartupCommandsSection, { bot: bot, patchBot: patchBot }) }), _jsx("section", { className: "bd-tile", children: _jsx(SummaryTriggerSection, { bot: bot, patchBot: patchBot, putCardPref: putCardPref }) })] }) }), _jsx("div", { id: "bd-panel-security", role: "tabpanel", "aria-labelledby": "bd-tab-security", className: "bd-tab-panel", hidden: props.activeTab !== 'security', children: _jsxs(BdTabGrid, { children: [bot.cliId !== 'riff' ? (_jsx("section", { className: "bd-tile", children: _jsx(SandboxSection, { bot: bot, patchBot: patchBot }) })) : null, bot.cliId !== 'riff' && bot.sandbox === true ? (_jsx("section", { className: "bd-tile bd-tile-wide", children: _jsx(SandboxPathsSection, { bot: bot, patchBot: patchBot }) })) : null, _jsx("section", { className: "bd-tile", children: _jsx(GrantSection, { bot: bot, patchBot: patchBot }) }), _jsx("section", { className: "bd-tile", children: _jsx(SlashCommandPermissionsSection, { bot: bot, patchBot: patchBot }) })] }) }), _jsx("div", { id: "bd-panel-cards", role: "tabpanel", "aria-labelledby": "bd-tab-cards", className: "bd-tab-panel", hidden: props.activeTab !== 'cards', children: _jsxs(BdTabGrid, { children: [_jsx("section", { className: "bd-tile", children: _jsx(CardBehaviorSection, { bot: bot, putCardPref: putCardPref }) }), _jsx("section", { className: "bd-tile", children: _jsx(BrandSection, { bot: bot, patchBot: patchBot }) })] }) }), _jsx("div", { id: "bd-panel-advanced", role: "tabpanel", "aria-labelledby": "bd-tab-advanced", className: "bd-tab-panel", hidden: props.activeTab !== 'advanced', children: _jsxs(BdTabGrid, { children: [bot.cliId !== 'riff' ? (_jsx("section", { className: "bd-tile", children: _jsx(BackendTypeSection, { bot: bot, patchBot: patchBot }) })) : null, bot.cliId === 'codex-app' ? (_jsx("section", { className: "bd-tile", children: _jsx(CodexAppDisplaySection, { bot: bot, putCardPref: putCardPref }) })) : null, _jsx("section", { className: "bd-tile", children: _jsx(RuntimeEnvironmentSection, { bot: bot, patchBot: patchBot }) })] }) })] })] }));
446
- }
447
- function RuntimeEnvironmentSection(props) {
448
- const tr = useT();
449
- return (_jsxs("section", { className: "bd-section bd-runtime-env", children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionRuntimeEnv') }), _jsx(LaunchShellSection, { bot: props.bot, patchBot: props.patchBot }), _jsx(EnvSection, { bot: props.bot, patchBot: props.patchBot })] }));
450
- }
451
- /** console 头像上传只实测过 512×512 PNG,前端统一归一化成这一形态再上传。 */
452
- const AVATAR_UPLOAD_SIDE = 512;
453
- /** 任意用户图片 → 512×512 PNG dataURL(短边 cover 裁剪居中)。 */
454
- async function normalizeAvatarImage(file) {
455
- const bitmap = await createImageBitmap(file);
456
- try {
457
- const side = Math.min(bitmap.width, bitmap.height);
458
- if (!side)
459
- throw new Error('empty image');
460
- const canvas = document.createElement('canvas');
461
- canvas.width = AVATAR_UPLOAD_SIDE;
462
- canvas.height = AVATAR_UPLOAD_SIDE;
463
- const ctx = canvas.getContext('2d');
464
- if (!ctx)
465
- throw new Error('canvas unavailable');
466
- const sx = (bitmap.width - side) / 2;
467
- const sy = (bitmap.height - side) / 2;
468
- ctx.drawImage(bitmap, sx, sy, side, side, 0, 0, AVATAR_UPLOAD_SIDE, AVATAR_UPLOAD_SIDE);
469
- return canvas.toDataURL('image/png');
470
- }
471
- finally {
472
- bitmap.close();
473
- }
474
- }
475
- /** 档案头头像:点击选图 → 归一化 → 走开放平台自动化真改飞书应用头像并发版。
476
- * 与改名同款失败语义:缺飞书 Web 登录态时给扫码入口,登录成功自动重试。 */
477
- function BotAvatarControl(props) {
478
- const tr = useT();
479
- const { bot, name, patchBot } = props;
480
- const inputRef = useRef(null);
481
- const [busy, setBusy] = useState(false);
482
- const [status, setStatus] = useState(null);
483
- const [loginVisible, setLoginVisible] = useState(false);
484
- const [loginOpen, setLoginOpen] = useState(false);
485
- // 待上传图片留到登录成功后重试;成功/明确失败时清掉。
486
- const pendingRef = useRef(null);
487
- function avatarFailText(error, message) {
488
- const known = ['no_session', 'session_expired', 'no_access', 'unsupported_brand'];
489
- const detail = known.includes(error) ? tr(`botDefaults.avatarWarn.${error}`) : (message || error);
490
- return tr('botDefaults.avatarFailed', { error: detail });
491
- }
492
- const upload = useCallback(async (imageBase64) => {
493
- setBusy(true);
494
- setStatus({ text: `⏳ ${tr('botDefaults.avatarUploading')}`, ok: true });
495
- try {
496
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(bot.larkAppId)}/avatar`, { imageBase64 });
497
- if (res.ok && res.body.ok) {
498
- const url = typeof res.body.avatarUrl === 'string' ? res.body.avatarUrl : '';
499
- if (url)
500
- overrideBotAvatar(bot.larkAppId, name, url);
501
- // 行内容不变,触发一次重绘让 orb 读到覆写后的头像映射。
502
- patchBot(bot.larkAppId, current => ({ ...current }));
503
- pendingRef.current = null;
504
- setLoginVisible(false);
505
- setStatus({ text: `✓ ${tr('botDefaults.avatarOkFeishu')}`, ok: true });
506
- }
507
- else {
508
- const err = String(res.body?.error ?? '');
509
- const message = typeof res.body?.message === 'string' ? res.body.message : undefined;
510
- setStatus({ text: `✗ ${avatarFailText(err, message ?? responseErrorText(res))}` });
511
- const needLogin = err === 'no_session' || err === 'session_expired';
512
- setLoginVisible(needLogin);
513
- if (!needLogin)
514
- pendingRef.current = null;
515
- }
516
- }
517
- catch (e) {
518
- setStatus({ text: `✗ ${tr('botDefaults.avatarFailed', { error: caughtErrorText(e) })}` });
519
- }
520
- finally {
521
- setBusy(false);
522
- }
523
- }, [bot.larkAppId, name, patchBot, tr]);
524
- async function handleFile(file) {
525
- if (!file || busy)
526
- return;
527
- // 归一化阶段就置 busy:canvas 解码大图有可感知耗时,这个窗口里不该还能
528
- // 再开一次选图/触发并发提交(服务端另有 per-app 串行队列兜底)。
529
- setBusy(true);
530
- let dataUrl;
531
- try {
532
- dataUrl = await normalizeAvatarImage(file);
533
- }
534
- catch {
535
- setBusy(false);
536
- setStatus({ text: `✗ ${tr('botDefaults.avatarBadImage')}` });
537
- return;
538
- }
539
- pendingRef.current = dataUrl;
540
- await upload(dataUrl);
541
- }
542
- return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "bd-profile-avatar bd-avatar-editable", "data-avatar-control": true, children: [_jsxs("button", { type: "button", className: "bd-avatar-btn", "data-action": "edit-bot-avatar", title: tr('botDefaults.avatarTitle'), "aria-label": tr('botDefaults.avatarTitle'), disabled: busy, onClick: () => inputRef.current?.click(), children: [_jsx(Html, { html: botAvatarHtml({ name, larkAppId: bot.larkAppId, dot: 'ok' }) }), _jsx("span", { className: "bd-avatar-edit-badge", "aria-hidden": "true", children: busy ? '⏳' : '✎' })] }), _jsx("input", { ref: inputRef, type: "file", accept: "image/*", hidden: true, "data-input": "botAvatarFile", onChange: event => {
543
- const file = event.currentTarget.files?.[0];
544
- event.currentTarget.value = ''; // 允许再次选择同一文件
545
- void handleFile(file);
546
- } }), loginOpen ? (_jsx(FeishuLoginModal, { onClose: () => setLoginOpen(false), onSuccess: () => {
547
- setLoginVisible(false);
548
- setLoginOpen(false);
549
- if (pendingRef.current)
550
- void upload(pendingRef.current);
551
- } })) : null] }), status ? (_jsxs("small", { className: statusClass(status, 'bd-avatar-status'), "data-avatar-status": true, children: [status.text, loginVisible ? (_jsx("button", { type: "button", className: "bd-feishu-login", "data-action": "feishu-login-avatar", onClick: () => setLoginOpen(true), children: tr('feishuLogin.entry') })) : null] })) : null] }));
552
- }
553
- function BotProfileIdentity(props) {
554
- const tr = useT();
555
- const { bot, cli, patchBot } = props;
556
- const name = bot.botName ?? bot.larkAppId;
557
- const [editing, setEditing] = useState(false);
558
- const [draft, setDraft] = useState(name);
559
- const [busy, setBusy] = useState(false);
560
- const [status, setStatus] = useState(null);
561
- const [loginVisible, setLoginVisible] = useState(false);
562
- const [loginOpen, setLoginOpen] = useState(false);
563
- useEffect(() => {
564
- if (!editing)
565
- setDraft(name);
566
- }, [editing, name]);
567
- function setEditMode(on) {
568
- setEditing(on);
569
- if (on) {
570
- setDraft(name);
571
- setStatus(null);
572
- setLoginVisible(false);
573
- }
574
- }
575
- function renameWarningText(warning, message) {
576
- const known = ['no_session', 'session_expired', 'no_access', 'unsupported_brand'];
577
- const detail = known.includes(warning)
578
- ? tr(`botDefaults.renameWarn.${warning}`)
579
- : (message || warning);
580
- return tr('botDefaults.renameLocalOnly', { reason: detail });
581
- }
582
- const submitRename = useCallback(async () => {
583
- const nextName = draft.trim();
584
- if (!nextName) {
585
- setStatus({ text: `✗ ${tr('botDefaults.renameEmpty')}` });
586
- return;
587
- }
588
- setBusy(true);
589
- setStatus({ text: `⏳ ${tr('botDefaults.renaming')}`, ok: true });
590
- try {
591
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(bot.larkAppId)}/rename`, { name: nextName });
592
- if (res.ok && res.body.ok) {
593
- const effective = typeof res.body.botName === 'string' && res.body.botName ? res.body.botName : nextName;
594
- patchBot(bot.larkAppId, current => ({
595
- ...current,
596
- botName: effective,
597
- larkBotName: res.body.mode === 'feishu' ? nextName : current.larkBotName,
598
- displayName: res.body.mode === 'feishu' ? null : nextName,
599
- }));
600
- setEditMode(false);
601
- if (res.body.mode === 'feishu') {
602
- setStatus({ text: `✓ ${tr('botDefaults.renameOkFeishu')}`, ok: true });
603
- setLoginVisible(false);
604
- }
605
- else {
606
- setStatus({ text: `⚠ ${renameWarningText(String(res.body.warning ?? ''), res.body.message)}` });
607
- setLoginVisible(res.body.warning === 'no_session' || res.body.warning === 'session_expired');
608
- }
609
- }
610
- else {
611
- setStatus({ text: `✗ ${tr('botDefaults.renameFailed', { error: responseErrorText(res) })}` });
612
- }
613
- }
614
- catch (e) {
615
- setStatus({ text: `✗ ${tr('botDefaults.renameFailed', { error: caughtErrorText(e) })}` });
616
- }
617
- finally {
618
- setBusy(false);
619
- }
620
- }, [bot.larkAppId, draft, patchBot, tr]);
621
- return (_jsxs("div", { className: "bd-profile-id", children: [!editing ? (_jsxs("div", { className: "bd-profile-title-row", "data-name-row": true, children: [_jsxs("div", { className: "bd-profile-title-content", children: [_jsx("strong", { "data-bot-name": true, children: name }), cli ? _jsx("span", { className: "mate-role bd-profile-cli-tag", children: cli }) : null, props.meta ? _jsx("span", { className: "bd-profile-meta bd-meta", children: props.meta }) : null] }), _jsx("button", { type: "button", className: "bd-name-edit", "data-action": "edit-bot-name", title: tr('botDefaults.renameTitle'), "aria-label": tr('botDefaults.renameTitle'), onClick: () => setEditMode(true), children: _jsx("svg", { viewBox: "0 0 16 16", width: "14", height: "14", fill: "none", stroke: "currentColor", strokeWidth: "1.6", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: _jsx("path", { d: "M11.5 2.5l2 2L6 12l-2.5.5L4 10z" }) }) })] })) : (_jsxs("span", { className: "bd-name-editor", "data-name-editor": true, children: [_jsx("input", { type: "text", className: "bd-name-input", "data-input": "botRename", maxLength: 64, value: draft, disabled: busy, autoFocus: true, onChange: event => setDraft(event.currentTarget.value), onKeyDown: event => {
622
- if (event.key === 'Enter') {
623
- event.preventDefault();
624
- void submitRename();
625
- }
626
- else if (event.key === 'Escape') {
627
- setEditMode(false);
628
- }
629
- } }), _jsx("button", { type: "button", className: "primary", "data-action": "save-bot-name", disabled: busy, onClick: () => void submitRename(), children: tr('botDefaults.renameSave') }), _jsx("button", { type: "button", "data-action": "cancel-bot-name", disabled: busy, onClick: () => setEditMode(false), children: tr('botDefaults.renameCancel') })] })), _jsx("code", { children: bot.larkAppId }), _jsx("small", { className: statusClass(status, 'bd-name-status'), "data-name-status": true, children: status?.text ?? '' }), _jsx("button", { type: "button", className: "bd-feishu-login", "data-action": "feishu-login", hidden: !loginVisible, onClick: () => setLoginOpen(true), children: tr('feishuLogin.entry') }), loginOpen ? (_jsx(FeishuLoginModal, { onClose: () => setLoginOpen(false), onSuccess: () => {
630
- setLoginVisible(false);
631
- setLoginOpen(false);
632
- void submitRename();
633
- } })) : null] }));
634
- }
635
- function FeishuLoginModal(props) {
636
- const tr = useT();
637
- const { onClose, onSuccess } = props;
638
- const timerRef = useRef(null);
639
- const successTimerRef = useRef(null);
640
- const [hint, setHint] = useState(tr('feishuLogin.starting'));
641
- const [qrDataUrl, setQrDataUrl] = useState(null);
642
- const [retry, setRetry] = useState(false);
643
- const stopTimer = useCallback(() => {
644
- if (timerRef.current !== null) {
645
- window.clearInterval(timerRef.current);
646
- timerRef.current = null;
647
- }
648
- }, []);
649
- const renderLogin = useCallback((login) => {
650
- if (!login)
651
- return 'active';
652
- if (login.status === 'awaiting_scan' && login.qrDataUrl) {
653
- setQrDataUrl(login.qrDataUrl);
654
- setHint(login.message || tr('feishuLogin.scanHint'));
655
- setRetry(false);
656
- return 'active';
657
- }
658
- if (login.status === 'starting') {
659
- setHint(login.message || tr('feishuLogin.starting'));
660
- setQrDataUrl(null);
661
- setRetry(false);
662
- return 'active';
663
- }
664
- if (login.status === 'success') {
665
- stopTimer();
666
- setQrDataUrl(null);
667
- setRetry(false);
668
- setHint(tr('feishuLogin.success'));
669
- successTimerRef.current = window.setTimeout(() => onSuccess(), 900);
670
- return 'done';
671
- }
672
- stopTimer();
673
- setQrDataUrl(null);
674
- setHint(tr('feishuLogin.failed', { reason: login.message || login.reason || '' }));
675
- setRetry(true);
676
- return 'done';
677
- }, [onSuccess, stopTimer, tr]);
678
- const poll = useCallback(async () => {
679
- try {
680
- const r = await fetch('/api/feishu-login/status');
681
- const body = await r.json().catch(() => ({}));
682
- renderLogin(body.login);
683
- }
684
- catch {
685
- // transient; keep polling
686
- }
687
- }, [renderLogin]);
688
- const begin = useCallback(async () => {
689
- stopTimer();
690
- setHint(tr('feishuLogin.starting'));
691
- setQrDataUrl(null);
692
- setRetry(false);
693
- let phase = 'active';
694
- try {
695
- const r = await fetch('/api/feishu-login/start', { method: 'POST' });
696
- const body = await r.json().catch(() => ({}));
697
- phase = renderLogin(body.login);
698
- }
699
- catch (e) {
700
- setHint(tr('feishuLogin.failed', { reason: caughtErrorText(e) }));
701
- setRetry(true);
702
- return;
703
- }
704
- if (phase === 'active' && timerRef.current === null) {
705
- timerRef.current = window.setInterval(() => void poll(), 1500);
706
- }
707
- }, [poll, renderLogin, stopTimer, tr]);
708
- useEffect(() => {
709
- void begin();
710
- return () => {
711
- stopTimer();
712
- if (successTimerRef.current !== null)
713
- window.clearTimeout(successTimerRef.current);
714
- };
715
- }, [begin, stopTimer]);
716
- return (_jsx("div", { className: "feishu-login-overlay", onClick: event => {
717
- if (event.currentTarget === event.target)
718
- onClose();
719
- }, children: _jsxs("div", { className: "feishu-login-modal", role: "dialog", "aria-modal": "true", children: [_jsx("button", { type: "button", className: "feishu-login-close", "data-close": true, "aria-label": tr('feishuLogin.close'), onClick: onClose, children: "x" }), _jsx("h3", { className: "feishu-login-title", children: tr('feishuLogin.title') }), _jsx("p", { className: "feishu-login-hint", "data-hint": true, children: hint }), _jsx("div", { className: "feishu-login-qr", "data-qr": true, children: qrDataUrl ? _jsx("img", { className: "qr-image", src: qrDataUrl, alt: tr('feishuLogin.qrAlt') }) : null }), _jsx("div", { className: "feishu-login-actions", children: _jsx("button", { type: "button", className: "primary", "data-retry": true, hidden: !retry, onClick: () => void begin(), children: tr('feishuLogin.retry') }) })] }) }));
720
- }
721
- export function BotAgentSection(props) {
722
- const tr = useT();
723
- const { bot, cliState, patchBot } = props;
724
- const initialKey = agentSelectionKey(bot, props.sessionFallback);
725
- const runtimeConfigKey = JSON.stringify([bot.cliRuntime ?? null, bot.cliPathOverride ?? null]);
726
- const [cliKey, setCliKey] = useState(initialKey);
727
- const [cliSelectionTouched, setCliSelectionTouched] = useState(false);
728
- const [model, setModel] = useState(typeof bot.model === 'string' ? bot.model : '');
729
- const [runtimeDraft, setRuntimeDraft] = useState(() => runtimeDraftFromBot(bot));
730
- const [runtimeTouched, setRuntimeTouched] = useState(false);
731
- const [runtimeStatus, setRuntimeStatus] = useState(null);
732
- const [agentStatus, setAgentStatus] = useState(null);
733
- const [agentBusy, setAgentBusy] = useState(false);
734
- const [skillValue, setSkillValue] = useState(skillInjectionResolved(bot));
735
- const [skillStatus, setSkillStatus] = useState(null);
736
- const [skillBusy, setSkillBusy] = useState(false);
737
- useEffect(() => {
738
- setCliKey(agentSelectionKey(bot, props.sessionFallback));
739
- setCliSelectionTouched(false);
740
- setModel(typeof bot.model === 'string' ? bot.model : '');
741
- setRuntimeDraft(runtimeDraftFromBot(bot));
742
- setRuntimeTouched(false);
743
- setSkillValue(skillInjectionResolved(bot));
744
- }, [
745
- bot.agentSelectionKey,
746
- bot.cliId,
747
- bot.larkAppId,
748
- bot.model,
749
- runtimeConfigKey,
750
- bot.wrapperCli,
751
- bot.skillInjection,
752
- bot.skillInjectionDefault,
753
- props.sessionFallback,
754
- ]);
755
- const option = selectedCliOption(cliState.options, cliKey);
756
- const suggestions = modelSuggestionsForOption(option, cliState);
757
- const modelDisabledByCli = option?.gateway === 'ttadk' && option.acceptsModel === false;
758
- const modelPlaceholder = modelDisabledByCli
759
- ? tr('botOnboarding.modelTtadkCocoPlaceholder')
760
- : option?.gateway === 'ttadk'
761
- ? tr('botOnboarding.modelTtadkPlaceholder').replace('{model}', cliState.ttadkModelDefault)
762
- : tr('botDefaults.agentModelPlaceholder');
763
- function updateCli(nextKey) {
764
- const previousKey = cliKey;
765
- setCliKey(nextKey);
766
- setCliSelectionTouched(true);
767
- if (nextKey !== previousKey && (nextKey !== 'codex' || previousKey !== 'codex')) {
768
- setRuntimeDraft(runtimeDraftFromBot({ cliRuntime: null, cliPathOverride: null }));
769
- // If the user leaves Codex and comes back before saving, the visible
770
- // Official state is intentional and must clear the old runtime/path.
771
- setRuntimeTouched(true);
772
- setRuntimeStatus(null);
773
- }
774
- const nextOption = selectedCliOption(cliState.options, nextKey);
775
- const isTtadk = nextOption?.gateway === 'ttadk';
776
- const acceptsModel = isTtadk && nextOption.acceptsModel !== false;
777
- if (isTtadk && !acceptsModel) {
778
- setModel('');
779
- }
780
- else if (acceptsModel) {
781
- setModel(current => current.trim() ? current : cliState.ttadkModelDefault);
782
- }
783
- else {
784
- setModel(current => current.trim() === cliState.ttadkModelDefault ? '' : current);
785
- }
786
- }
787
- function updateRuntimeMode(mode) {
788
- setRuntimeDraft(current => ({ ...current, mode }));
789
- setRuntimeTouched(true);
790
- setRuntimeStatus(null);
791
- setAgentStatus(null);
792
- }
793
- function updateRuntimeDraft(patch) {
794
- setRuntimeDraft(current => ({ ...current, ...patch }));
795
- setRuntimeTouched(true);
796
- setRuntimeStatus(null);
797
- setAgentStatus(null);
798
- }
799
- async function saveAgent() {
800
- setAgentStatus(null);
801
- setRuntimeStatus(null);
802
- let cliRuntime;
803
- if (runtimeTouched)
804
- cliRuntime = null;
805
- if (runtimeTouched && cliKey === 'codex' && runtimeDraft.mode === 'custom') {
806
- const id = runtimeDraft.id.trim();
807
- const executable = runtimeDraft.executable.trim();
808
- const displayName = runtimeDraft.displayName.trim();
809
- const packageName = runtimeDraft.packageName.trim();
810
- if (!id || !executable) {
811
- const text = tr('botDefaults.runtimeRequired');
812
- setAgentStatus({ text });
813
- setRuntimeStatus({ text });
814
- return;
815
- }
816
- if (runtimeDraft.updateProvider === 'npm' && !packageName) {
817
- const text = tr('botDefaults.runtimePackageRequired');
818
- setAgentStatus({ text });
819
- setRuntimeStatus({ text });
820
- return;
821
- }
822
- cliRuntime = {
823
- id,
824
- ...(displayName ? { displayName } : {}),
825
- executable,
826
- update: runtimeDraft.updateProvider === 'npm'
827
- ? { provider: 'npm', packageName }
828
- : { provider: runtimeDraft.updateProvider },
829
- };
830
- }
831
- setAgentBusy(true);
832
- try {
833
- const body = {
834
- cliId: cliKey,
835
- model,
836
- ...(runtimeTouched ? { cliRuntime } : {}),
837
- };
838
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(bot.larkAppId)}/agent`, body);
839
- if (res.ok && res.body.ok) {
840
- const closedCount = Number.isInteger(res.body.closedMismatchedSessions) && res.body.closedMismatchedSessions > 0
841
- ? res.body.closedMismatchedSessions
842
- : 0;
843
- const closedText = closedCount > 0
844
- ? tr('botDefaults.agentClosedCount', { count: closedCount })
845
- : '';
846
- setAgentStatus(res.body.availabilityWarning
847
- ? { text: `⚠️ ${res.body.availabilityWarning}${closedText ? ` · ${closedText}` : ''}` }
848
- : { text: `✓ ${closedText || tr('botDefaults.agentSaved')}`, ok: true });
849
- patchBot(bot.larkAppId, {
850
- cliId: res.body.cliId,
851
- cliRuntime: res.body.cliRuntime === undefined
852
- ? runtimeTouched ? cliRuntime ?? null : bot.cliRuntime ?? null
853
- : res.body.cliRuntime,
854
- cliPathOverride: res.body.cliPathOverride === undefined
855
- ? runtimeTouched ? null : bot.cliPathOverride ?? null
856
- : res.body.cliPathOverride,
857
- wrapperCli: res.body.wrapperCli ?? null,
858
- model: res.body.model ?? '',
859
- agentSelectionKey: res.body.selectionKey ?? cliKey,
860
- });
861
- setRuntimeTouched(false);
862
- if (cliRuntime) {
863
- const probe = res.body.runtimeProbe;
864
- if (probe && typeof probe.version === 'string') {
865
- setRuntimeStatus({
866
- text: tr('botDefaults.runtimeProbeOk', {
867
- version: probe.version,
868
- provider: typeof probe.updateProvider === 'string' ? probe.updateProvider : runtimeDraft.updateProvider,
869
- }),
870
- ok: true,
871
- });
872
- }
873
- else {
874
- setRuntimeStatus({ text: tr('botDefaults.runtimeProbeMissing') });
875
- }
876
- }
877
- }
878
- else {
879
- const detail = typeof res.body?.message === 'string' && res.body.message
880
- ? res.body.message
881
- : responseErrorText(res);
882
- const text = `✗ ${detail}`;
883
- setAgentStatus({ text });
884
- if (cliKey === 'codex' && runtimeDraft.mode === 'custom')
885
- setRuntimeStatus({ text });
886
- }
887
- }
888
- catch (e) {
889
- const text = `✗ ${caughtErrorText(e)}`;
890
- setAgentStatus({ text });
891
- if (cliKey === 'codex' && runtimeDraft.mode === 'custom')
892
- setRuntimeStatus({ text });
893
- }
894
- finally {
895
- setAgentBusy(false);
896
- }
897
- }
898
- /**
899
- * Persist the CLI selection as riff before saving riff config. Selecting
900
- * riff in the dropdown hides the「保存 Agent」button (model/skill rows are
901
- * replaced by RiffSection), so without this the cliId change would never
902
- * reach PUT /agent — the bot would stay on its old CLI and backendType
903
- * would never auto-flip to riff. Returns false when persisting failed.
904
- */
905
- async function persistRiffCliSelection() {
906
- if (bot.cliId === 'riff')
907
- return true; // already persisted
908
- try {
909
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(bot.larkAppId)}/agent`, { cliId: 'riff', model: '' });
910
- if (res.ok && res.body.ok) {
911
- patchBot(bot.larkAppId, {
912
- cliId: res.body.cliId,
913
- cliRuntime: res.body.cliRuntime ?? null,
914
- wrapperCli: res.body.wrapperCli ?? null,
915
- model: res.body.model ?? '',
916
- agentSelectionKey: res.body.selectionKey ?? 'riff',
917
- });
918
- return true;
919
- }
920
- setAgentStatus({ text: `✗ ${responseErrorText(res)}` });
921
- return false;
922
- }
923
- catch (e) {
924
- setAgentStatus({ text: `✗ ${caughtErrorText(e)}` });
925
- return false;
926
- }
927
- }
928
- async function saveSkillInjection(next) {
929
- setSkillValue(next);
930
- setSkillStatus(null);
931
- setSkillBusy(true);
932
- try {
933
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(bot.larkAppId)}/skill-injection`, { skillInjection: next });
934
- if (res.ok && res.body.ok) {
935
- setSkillStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
936
- patchBot(bot.larkAppId, { skillInjection: res.body.skillInjection ?? null });
937
- }
938
- else {
939
- setSkillStatus({ text: `✗ ${responseErrorText(res)}` });
940
- }
941
- }
942
- catch (e) {
943
- setSkillStatus({ text: `✗ ${caughtErrorText(e)}` });
944
- }
945
- finally {
946
- setSkillBusy(false);
947
- }
948
- }
949
- const siSupport = bot.skillInjectionSupport === 'dynamic' ? 'dynamic' : bot.skillInjectionSupport === 'global' ? 'global' : 'none';
950
- const isRiff = cliKey === 'riff';
951
- // Old dashboard payloads can omit agentSelectionKey while still carrying a
952
- // legacy wrapperCli. Keep the custom-runtime editor hidden until the user
953
- // explicitly selects bare Codex; structured runtimes and wrappers cannot mix.
954
- const isBareCodex = cliKey === 'codex' && (!bot.wrapperCli || cliSelectionTouched);
955
- const usesAlternativeCodexExecutable = isBareCodex && runtimeDraft.mode !== 'official';
956
- // 与添加机器人弹窗一致:按名称首字母排序,便于在 20+ 个 CLI 里定位。
957
- const cliOptions = [...cliState.options]
958
- .sort((a, b) => a.label.localeCompare(b.label, 'en', { sensitivity: 'base' }))
959
- .map(option => ({
960
- value: option.id,
961
- label: option.available === false && !(option.id === 'codex' && usesAlternativeCodexExecutable)
962
- ? tr('botDefaults.agentMissingOption', { label: option.label, command: option.command ?? option.id })
963
- : `${option.label}(${option.id})`,
964
- }));
965
- const dynamicSkillOptions = [
966
- { value: 'dynamic', label: tr('botDefaults.skillInjectionDynamic') },
967
- ];
968
- const skillOptions = [
969
- // Non-selectable cue: dynamic injection isn't available for this CLI (parity with the old UI).
970
- { value: 'dynamic', label: tr('botDefaults.skillInjectionDynamicUnsupported'), disabled: true },
971
- { value: 'prompt', label: tr('botDefaults.skillInjectionPrompt') },
972
- { value: 'global', label: tr('botDefaults.skillInjectionGlobal') },
973
- { value: 'off', label: tr('botDefaults.skillInjectionOff') },
974
- ];
975
- const runtimeProviderOptions = [
976
- { value: 'auto', label: tr('botDefaults.runtimeProviderAuto') },
977
- { value: 'self', label: tr('botDefaults.runtimeProviderSelf') },
978
- { value: 'npm', label: tr('botDefaults.runtimeProviderNpm') },
979
- { value: 'none', label: tr('botDefaults.runtimeProviderNone') },
980
- ];
981
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionAgent') }), _jsx("div", { className: "bd-row", children: _jsxs("div", { className: "bd-field", children: [_jsx("span", { children: tr('botDefaults.agentCli') }), _jsx(DropdownField, { dataInput: "agentCliId", ariaLabel: tr('botDefaults.agentCli'), value: cliKey, disabled: agentBusy, options: cliOptions, searchable: true, onChange: updateCli }), option?.available === false && !usesAlternativeCodexExecutable ? (_jsx("small", { className: "hint-warn", children: tr('botDefaults.agentMissingHint', { command: option.command ?? cliKey }) })) : null] }) }), isBareCodex ? (_jsxs("div", { className: "bd-codex-runtime", "data-codex-runtime": "", children: [_jsx("div", { className: "bd-runtime-heading", children: _jsx(FieldTitle, { help: tr('botDefaults.runtimeHelp'), children: tr('botDefaults.runtimeTitle') }) }), _jsxs("div", { className: "bd-runtime-mode", role: "group", "aria-label": tr('botDefaults.runtimeTitle'), children: [_jsx("button", { type: "button", "data-action": "runtime-official", "aria-pressed": runtimeDraft.mode === 'official', disabled: agentBusy, onClick: () => updateRuntimeMode('official'), children: tr('botDefaults.runtimeOfficial') }), _jsx("button", { type: "button", "data-action": "runtime-custom", "aria-pressed": runtimeDraft.mode === 'custom', disabled: agentBusy, onClick: () => updateRuntimeMode('custom'), children: tr('botDefaults.runtimeCustom') })] }), _jsx("input", { type: "hidden", "data-input": "agentRuntimeMode", value: runtimeDraft.mode, readOnly: true }), _jsx("p", { className: "bd-runtime-note", children: tr(runtimeDraft.mode === 'official'
982
- ? 'botDefaults.runtimeOfficialNote'
983
- : runtimeDraft.mode === 'legacy'
984
- ? 'botDefaults.runtimeLegacyNote'
985
- : 'botDefaults.runtimeCustomNote') }), runtimeDraft.mode === 'legacy' ? (_jsx("div", { className: "bd-runtime-fields", "data-runtime-legacy": "", children: _jsxs("label", { className: "bd-runtime-wide", children: [_jsx("span", { children: tr('botDefaults.runtimeLegacyPath') }), _jsx("input", { type: "text", value: runtimeDraft.legacyPath, readOnly: true, "aria-readonly": "true", "data-input": "agentRuntimeLegacyPath" })] }) })) : null, runtimeDraft.mode === 'custom' ? (_jsxs("div", { className: "bd-runtime-fields", children: [_jsxs("label", { children: [_jsx(FieldTitle, { help: tr('botDefaults.runtimeIdHelp'), children: tr('botDefaults.runtimeId') }), _jsx("input", { type: "text", "data-input": "agentRuntimeId", value: runtimeDraft.id, disabled: agentBusy, autoComplete: "off", onChange: event => updateRuntimeDraft({ id: event.currentTarget.value }) })] }), _jsxs("label", { children: [_jsx("span", { children: tr('botDefaults.runtimeDisplayName') }), _jsx("input", { type: "text", "data-input": "agentRuntimeDisplayName", placeholder: tr('botDefaults.runtimeDisplayNamePlaceholder'), value: runtimeDraft.displayName, disabled: agentBusy, autoComplete: "off", onChange: event => updateRuntimeDraft({ displayName: event.currentTarget.value }) })] }), _jsxs("label", { className: "bd-runtime-wide", children: [_jsx(FieldTitle, { help: tr('botDefaults.runtimeExecutableHelp'), children: tr('botDefaults.runtimeExecutable') }), _jsx("input", { type: "text", "data-input": "agentRuntimeExecutable", value: runtimeDraft.executable, disabled: agentBusy, autoCapitalize: "none", autoComplete: "off", spellCheck: false, onChange: event => updateRuntimeDraft({ executable: event.currentTarget.value }) })] }), _jsxs("div", { className: "bd-field", children: [_jsx("span", { children: tr('botDefaults.runtimeUpdateProvider') }), _jsx(DropdownField, { dataInput: "agentRuntimeUpdateProvider", ariaLabel: tr('botDefaults.runtimeUpdateProvider'), value: runtimeDraft.updateProvider, disabled: agentBusy, options: runtimeProviderOptions, onChange: updateProvider => updateRuntimeDraft({ updateProvider }) })] }), runtimeDraft.updateProvider === 'npm' ? (_jsxs("label", { children: [_jsx(FieldTitle, { help: tr('botDefaults.runtimePackageHelp'), children: tr('botDefaults.runtimePackageName') }), _jsx("input", { type: "text", "data-input": "agentRuntimePackageName", value: runtimeDraft.packageName, disabled: agentBusy, autoCapitalize: "none", autoComplete: "off", spellCheck: false, onChange: event => updateRuntimeDraft({ packageName: event.currentTarget.value }) })] })) : null] })) : null, _jsx(StatusSpan, { status: runtimeStatus, attr: { 'data-runtime-status': '' } })] })) : null, !isRiff && (_jsx("div", { className: "bd-row", children: _jsxs("label", { children: [_jsx(FieldTitle, { help: tr('botDefaults.agentHelp'), children: tr('botDefaults.agentModel') }), _jsx("input", { type: "text", "data-input": "agentModel", list: `agent-model-suggestions-${bot.larkAppId}`, placeholder: modelPlaceholder, value: model, disabled: agentBusy || modelDisabledByCli, onChange: event => setModel(event.currentTarget.value) }), _jsx("datalist", { id: `agent-model-suggestions-${bot.larkAppId}`, children: suggestions.map(item => _jsx("option", { value: item }, item)) })] }) })), isRiff && _jsx(RiffSection, { bot: bot, patchBot: patchBot, persistCliSelection: persistRiffCliSelection }), !isRiff && siSupport === 'dynamic' ? (_jsx("div", { className: "bd-row", children: _jsxs("div", { className: "bd-field", children: [_jsx(FieldTitle, { help: tr('botDefaults.skillInjectionHelpDynamic'), children: tr('botDefaults.skillInjection') }), _jsx(DropdownField, { dataInput: "skillInjection", ariaLabel: tr('botDefaults.skillInjection'), value: "dynamic", disabled: true, options: dynamicSkillOptions, onChange: () => undefined })] }) })) : !isRiff && siSupport === 'global' ? (_jsxs("div", { className: "bd-row", children: [_jsxs("div", { className: "bd-field", children: [_jsx(FieldTitle, { help: tr('botDefaults.skillInjectionHelp'), children: tr('botDefaults.skillInjection') }), _jsx(DropdownField, { dataInput: "skillInjection", ariaLabel: tr('botDefaults.skillInjection'), value: skillValue, disabled: skillBusy, options: skillOptions, onChange: next => void saveSkillInjection(next) })] }), _jsx("div", { className: "actions", children: _jsx(StatusSpan, { status: skillStatus, attr: { 'data-skill-injection-status': '' } }) })] })) : null, !isRiff && (_jsxs("div", { className: "actions bd-section-actions", children: [_jsx("button", { type: "button", className: "primary", "data-action": "save-agent", disabled: agentBusy, onClick: () => void saveAgent(), children: tr('botDefaults.agentSave') }), _jsx(StatusSpan, { status: agentStatus, attr: { 'data-agent-status': '' } })] }))] }));
986
- }
987
- function skillInjectionResolved(bot) {
988
- const override = bot.skillInjection === 'global' || bot.skillInjection === 'prompt' || bot.skillInjection === 'off' ? bot.skillInjection : '';
989
- const def = bot.skillInjectionDefault === 'global' || bot.skillInjectionDefault === 'off' ? bot.skillInjectionDefault : 'prompt';
990
- return override || def;
991
- }
992
- function WorkingDirSection(props) {
993
- const tr = useT();
994
- const { bot, patchBot } = props;
995
- const initial = workingDirState(bot);
996
- const [mode, setMode] = useState(initial.mode);
997
- const [workingDir, setWorkingDir] = useState(initial.workingDir);
998
- const [autoWorktree, setAutoWorktree] = useState(bot.defaultWorkingDirAutoWorktree === true);
999
- const [status, setStatus] = useState(null);
1000
- const [busy, setBusy] = useState(false);
1001
- useEffect(() => {
1002
- const next = workingDirState(bot);
1003
- setMode(next.mode);
1004
- setWorkingDir(next.workingDir);
1005
- setAutoWorktree(bot.defaultWorkingDirAutoWorktree === true);
1006
- }, [
1007
- bot.defaultOncall?.enabled,
1008
- bot.defaultOncall?.workingDir,
1009
- bot.defaultWorkingDir,
1010
- bot.defaultWorkingDirAutoWorktree,
1011
- ]);
1012
- async function save() {
1013
- setStatus(null);
1014
- const dir = workingDir.trim();
1015
- if (mode !== 'off' && !dir) {
1016
- setStatus({ text: tr('botDefaults.required') });
1017
- return;
1018
- }
1019
- const nextAutoWorktree = mode === 'default' && autoWorktree;
1020
- setBusy(true);
1021
- try {
1022
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(bot.larkAppId)}/working-dir-mode`, {
1023
- mode,
1024
- workingDir: dir,
1025
- autoWorktree: nextAutoWorktree,
1026
- });
1027
- if (res.ok && res.body.ok) {
1028
- const resolvedNote = res.body.resolvedPath ? ` → ${res.body.resolvedPath}` : '';
1029
- setStatus({ text: `✓ ${tr('botDefaults.workingDirSaved')}${resolvedNote}`, ok: true });
1030
- patchBot(bot.larkAppId, {
1031
- defaultOncall: res.body.defaultOncall ?? bot.defaultOncall,
1032
- defaultWorkingDir: res.body.defaultWorkingDir ?? null,
1033
- defaultWorkingDirAutoWorktree: res.body.defaultWorkingDirAutoWorktree === true,
1034
- });
1035
- }
1036
- else {
1037
- setStatus({ text: `✗ ${responseErrorText(res)}` });
1038
- }
1039
- }
1040
- catch (e) {
1041
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
1042
- }
1043
- finally {
1044
- setBusy(false);
1045
- }
1046
- }
1047
- const modeOptions = [
1048
- { value: 'off', label: tr('botDefaults.workingDirModeOff') },
1049
- { value: 'default', label: tr('botDefaults.workingDirModeDefault') },
1050
- { value: 'oncall', label: tr('botDefaults.workingDirModeOncall') },
1051
- ];
1052
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionWorkingDir') }), _jsx("div", { className: "bd-row", children: _jsxs("div", { className: "bd-field", children: [_jsx(FieldTitle, { help: tr('botDefaults.workingDirModeHelp'), children: tr('botDefaults.workingDirMode') }), _jsx(DropdownField, { dataInput: "workingDirMode", ariaLabel: tr('botDefaults.workingDirMode'), value: mode, disabled: busy, options: modeOptions, onChange: next => setMode(next) })] }) }), _jsx("div", { className: "bd-row", "data-wd-dir-row": true, hidden: mode === 'off', children: _jsxs("label", { children: [_jsx("span", { children: tr('botDefaults.workingDirField') }), _jsx("input", { type: "text", "data-input": "workingDir", placeholder: "e.g. /root/iserver/botmux", value: workingDir, disabled: busy, onChange: event => setWorkingDir(event.currentTarget.value) })] }) }), _jsxs("label", { className: "toggle-row", "data-wd-worktree-row": true, hidden: mode !== 'default', children: [_jsx("input", { type: "checkbox", "data-input": "autoWorktree", checked: autoWorktree, disabled: busy, onChange: event => setAutoWorktree(event.currentTarget.checked) }), _jsx("span", { className: "switch", "aria-hidden": "true" }), _jsx("span", { className: "toggle-tx", children: _jsx("strong", { children: _jsx(FieldTitle, { help: tr('botDefaults.autoWorktreeHelp'), children: tr('botDefaults.autoWorktree') }) }) })] }), _jsxs("div", { className: "actions", children: [_jsx("button", { type: "button", className: "primary", "data-action": "save-working-dir", disabled: busy, onClick: () => void save(), children: tr('botDefaults.save') }), _jsx(StatusSpan, { status: status, attr: { 'data-status': '' } })] }), _jsx(AutoStartControls, { bot: bot, putCardPref: props.putCardPref })] }));
1053
- }
1054
- function workingDirState(bot) {
1055
- const def = bot.defaultOncall ?? { enabled: false, workingDir: '' };
1056
- const mode = def.enabled ? 'oncall' : (bot.defaultWorkingDir ? 'default' : 'off');
1057
- return { mode, workingDir: bot.defaultWorkingDir || def.workingDir || '' };
1058
- }
1059
- function AutoStartControls(props) {
1060
- const tr = useT();
1061
- const { bot, putCardPref } = props;
1062
- const [onJoin, setOnJoin] = useState(bot.autoStartOnGroupJoin === true);
1063
- const [onTopic, setOnTopic] = useState(bot.autoStartOnNewTopic === true);
1064
- const [prompt, setPrompt] = useState(typeof bot.autoStartOnGroupJoinPrompt === 'string' ? bot.autoStartOnGroupJoinPrompt : '');
1065
- const [status, setStatus] = useState(null);
1066
- const [busy, setBusy] = useState(null);
1067
- useEffect(() => {
1068
- setOnJoin(bot.autoStartOnGroupJoin === true);
1069
- setOnTopic(bot.autoStartOnNewTopic === true);
1070
- setPrompt(typeof bot.autoStartOnGroupJoinPrompt === 'string' ? bot.autoStartOnGroupJoinPrompt : '');
1071
- }, [bot.autoStartOnGroupJoin, bot.autoStartOnGroupJoinPrompt, bot.autoStartOnNewTopic]);
1072
- async function savePatch(patch, key) {
1073
- setBusy(key);
1074
- setStatus(null);
1075
- try {
1076
- const res = await putCardPref(patch);
1077
- setStatus(res.ok ? { text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true } : { text: `✗ ${responseErrorText(res)}` });
1078
- }
1079
- catch (e) {
1080
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
1081
- }
1082
- finally {
1083
- setBusy(null);
1084
- }
1085
- }
1086
- return (_jsxs("div", { className: "bd-subsection", children: [_jsx("h4", { className: "bd-subsection-title", children: tr('botDefaults.sectionAutoStart') }), _jsx(ToggleRow, { checked: onJoin, disabled: busy === 'join', dataAction: "toggle-auto-join", title: tr('botDefaults.autoStartJoin'), help: tr('botDefaults.autoStartJoinHelp'), onChange: checked => {
1087
- setOnJoin(checked);
1088
- void savePatch({ autoStartOnGroupJoin: checked }, 'join');
1089
- } }), _jsx("div", { className: "bd-row", children: _jsxs("label", { children: [_jsx("span", { children: tr('botDefaults.autoStartJoinPrompt') }), _jsx("textarea", { "data-input": "autoJoinPrompt", rows: 3, placeholder: tr('botDefaults.autoStartJoinPromptPlaceholder'), value: prompt, onChange: event => setPrompt(event.currentTarget.value) })] }) }), _jsx(ToggleRow, { checked: onTopic, disabled: busy === 'topic', dataAction: "toggle-auto-topic", title: tr('botDefaults.autoStartTopic'), help: tr('botDefaults.autoStartTopicHelp'), onChange: checked => {
1090
- setOnTopic(checked);
1091
- void savePatch({ autoStartOnNewTopic: checked }, 'topic');
1092
- } }), _jsxs("div", { className: "actions", children: [_jsx("button", { type: "button", className: "primary", "data-action": "save-auto-join-prompt", disabled: busy === 'prompt', onClick: () => void savePatch({ autoStartOnGroupJoinPrompt: prompt }, 'prompt'), children: tr('botDefaults.autoStartJoinPromptSave') }), _jsx(StatusSpan, { status: status, attr: { 'data-auto-start-status': '' } })] })] }));
1093
- }
1094
- function SandboxSection(props) {
1095
- const tr = useT();
1096
- const { bot, patchBot } = props;
1097
- const [enabled, setEnabled] = useState(bot.sandbox === true);
1098
- const [status, setStatus] = useState(null);
1099
- const [busy, setBusy] = useState(false);
1100
- useEffect(() => setEnabled(bot.sandbox === true), [bot.sandbox]);
1101
- async function toggle(next) {
1102
- setEnabled(next);
1103
- setStatus(null);
1104
- setBusy(true);
1105
- try {
1106
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(bot.larkAppId)}/sandbox`, { enabled: next });
1107
- if (res.ok && res.body.ok) {
1108
- setStatus({ text: `✓ ${tr('botDefaults.sandboxSaved')}`, ok: true });
1109
- patchBot(bot.larkAppId, { sandbox: res.body.sandbox === true });
1110
- }
1111
- else {
1112
- setStatus({ text: `✗ ${responseErrorText(res)}` });
1113
- setEnabled(!next);
1114
- }
1115
- }
1116
- catch (e) {
1117
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
1118
- setEnabled(!next);
1119
- }
1120
- finally {
1121
- setBusy(false);
1122
- }
1123
- }
1124
- // The unified fs-policy always provides deny-by-default file read/write
1125
- // isolation. This capability line is narrower: whether the CLI's global data
1126
- // root can additionally be redirected into this bot's private BOT_HOME
1127
- // (claude/codex, no wrapper), keeping CLI credentials/config/history separate
1128
- // from sibling bots. Keep that distinction explicit in the UI copy.
1129
- const readIsoSupported = bot.readIsolationSupported === true;
1130
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionSandbox') }), _jsx(ToggleRow, { checked: enabled, disabled: busy, dataAction: "toggle-sandbox", title: tr('botDefaults.sandboxToggle'), help: tr('botDefaults.sandboxHelp'), onChange: checked => void toggle(checked) }), _jsx("p", { className: "bd-section-note", "data-read-iso-capability": readIsoSupported ? 'yes' : 'no', children: readIsoSupported ? `+ ${tr('botDefaults.sandboxReadIsoOn')}` : tr('botDefaults.sandboxReadIsoOff') }), _jsx("div", { className: "actions", children: _jsx(StatusSpan, { status: status, attr: { 'data-sandbox-status': '' } }) })] }));
1131
- }
1132
- /** Restrictiveness ranking — mirrors fs-policy.ts RESTRICTIVENESS so a same-path
1133
- * cross-tier conflict resolves the SAME way the sandbox will (deny > ro > rw). */
1134
- const SBX_RESTRICTIVENESS = { readWrite: 0, readOnly: 1, deny: 2 };
1135
- /** Effective access for `path` under the three tiers: DEEPEST (longest-prefix)
1136
- * matching rule wins; at equal depth (same path across tiers) the MORE
1137
- * RESTRICTIVE tier wins — mirrors fs-policy.ts accessForPath + mergeFsRules so
1138
- * the UI's live labels + path tester agree with what the sandbox enforces.
1139
- * `home` expands a leading `~` the same way the worker does before matching, so
1140
- * `~`-relative entries line up with absolute tree nodes. */
1141
- export function effectiveAccess(tiers, path, home) {
1142
- const expand = (p) => (p === '~' || p.startsWith('~/')) ? home.replace(/\/+$/, '') + p.slice(1) : p;
1143
- const norm = (p) => expand(p).replace(/\/+$/, '') || '/';
1144
- const target = norm(path);
1145
- const covers = (parent, child) => {
1146
- const a = norm(parent), b = norm(child);
1147
- return a === b || b.startsWith(a === '/' ? '/' : a + '/');
1148
- };
1149
- const depth = (p) => norm(p) === '/' ? 0 : norm(p).split('/').filter(Boolean).length;
1150
- let best;
1151
- const consider = (access, rule) => {
1152
- if (!covers(rule, target))
1153
- return;
1154
- const d = depth(rule);
1155
- if (!best || d > best.ruleDepth
1156
- || (d === best.ruleDepth && SBX_RESTRICTIVENESS[access] > SBX_RESTRICTIVENESS[best.access])) {
1157
- best = { access, ruleDepth: d, rule };
1158
- }
1159
- };
1160
- for (const p of tiers.readWrite)
1161
- consider('readWrite', p);
1162
- for (const p of tiers.readOnly)
1163
- consider('readOnly', p);
1164
- for (const p of tiers.deny)
1165
- consider('deny', p);
1166
- return best ? { access: best.access, rule: best.rule } : { access: 'none' };
1167
- }
1168
- function emptyTiers() { return { readWrite: [], readOnly: [], deny: [] }; }
1169
- function normTiers(t) {
1170
- if (!t)
1171
- return emptyTiers();
1172
- return { readWrite: [...(t.readWrite ?? [])], readOnly: [...(t.readOnly ?? [])], deny: [...(t.deny ?? [])] };
1173
- }
1174
- function tiersEqual(a, b) {
1175
- const k = (x) => [...x].sort().join('\n');
1176
- return k(a.readWrite) === k(b.readWrite) && k(a.readOnly) === k(b.readOnly) && k(a.deny) === k(b.deny);
1177
- }
1178
- /** Serialize tiers to the copy-paste text form (one path per line, tier-tagged). */
1179
- function tiersToText(t) {
1180
- const lines = [];
1181
- for (const p of t.readWrite)
1182
- lines.push(`rw ${p}`);
1183
- for (const p of t.readOnly)
1184
- lines.push(`ro ${p}`);
1185
- for (const p of t.deny)
1186
- lines.push(`deny ${p}`);
1187
- return lines.join('\n');
1188
- }
1189
- /** Parse the copy-paste text form back into tiers. Tolerates `rw`/`readWrite`,
1190
- * `ro`/`readOnly`, `deny`/`-`; blank lines and `#` comments are ignored. */
1191
- function textToTiers(text) {
1192
- const t = emptyTiers();
1193
- for (const raw of text.split('\n')) {
1194
- const line = raw.trim();
1195
- if (!line || line.startsWith('#'))
1196
- continue;
1197
- const m = /^(\S+)\s+(.+)$/.exec(line);
1198
- if (!m)
1199
- continue;
1200
- const tag = m[1].toLowerCase();
1201
- const path = m[2].trim();
1202
- if (tag === 'rw' || tag === 'readwrite' || tag === 'rw:')
1203
- t.readWrite.push(path);
1204
- else if (tag === 'ro' || tag === 'readonly' || tag === 'ro:')
1205
- t.readOnly.push(path);
1206
- else if (tag === 'deny' || tag === '-' || tag === 'deny:')
1207
- t.deny.push(path);
1208
- }
1209
- return t;
1210
- }
1211
- function SandboxPathsSection(props) {
1212
- const tr = useT();
1213
- const { bot, patchBot } = props;
1214
- const [tiers, setTiers] = useState(() => normTiers(bot.sandboxPaths));
1215
- const [text, setText] = useState(() => tiersToText(normTiers(bot.sandboxPaths)));
1216
- const [textMode, setTextMode] = useState(false);
1217
- const [status, setStatus] = useState(null);
1218
- const [busy, setBusy] = useState(false);
1219
- const [testPath, setTestPath] = useState('');
1220
- // Lazy directory tree: path → child dir list (undefined = not yet loaded).
1221
- const [children, setChildren] = useState({});
1222
- const [expanded, setExpanded] = useState(new Set());
1223
- const [roots, setRoots] = useState([]);
1224
- // Canonical $HOME (first fs-list root) — used to expand `~` in tiers/tester
1225
- // the SAME way the worker does, so `~`-relative entries match absolute tree
1226
- // nodes and effective-access labels are accurate.
1227
- const [homeRoot, setHomeRoot] = useState('~');
1228
- const saved = useMemo(() => normTiers(bot.sandboxPaths), [bot.sandboxPaths]);
1229
- useEffect(() => { setTiers(normTiers(bot.sandboxPaths)); setText(tiersToText(normTiers(bot.sandboxPaths))); }, [bot.sandboxPaths]);
1230
- const dirty = !tiersEqual(tiers, saved);
1231
- const loadDir = useCallback(async (path) => {
1232
- try {
1233
- const q = path ? `?path=${encodeURIComponent(path)}` : '';
1234
- const r = await fetch(`/api/fs/list${q}`);
1235
- const j = await r.json();
1236
- if (!j.ok)
1237
- return;
1238
- if (!path) {
1239
- setRoots(j.entries.map((e) => ({ name: e.name, path: e.path })));
1240
- // Backend returns canonical $HOME explicitly (realpath'd) so `~` expansion
1241
- // here matches the realpath'd child nodes + the worker's sandbox binds.
1242
- if (typeof j.home === 'string' && j.home.startsWith('/'))
1243
- setHomeRoot(j.home);
1244
- }
1245
- else
1246
- setChildren(prev => ({ ...prev, [path]: j.entries.map((e) => ({ name: e.name, path: e.path })) }));
1247
- }
1248
- catch { /* listing is best-effort; manual/text entry still works */ }
1249
- }, []);
1250
- useEffect(() => { if (!textMode && roots.length === 0)
1251
- void loadDir(''); }, [textMode, roots.length, loadDir]);
1252
- // The tier a path is EXPLICITLY set to (undefined = inherits from ancestor).
1253
- const explicitTier = useCallback((path) => {
1254
- const n = path.replace(/\/+$/, '') || '/';
1255
- if (tiers.readWrite.some(p => (p.replace(/\/+$/, '') || '/') === n))
1256
- return 'readWrite';
1257
- if (tiers.readOnly.some(p => (p.replace(/\/+$/, '') || '/') === n))
1258
- return 'readOnly';
1259
- if (tiers.deny.some(p => (p.replace(/\/+$/, '') || '/') === n))
1260
- return 'deny';
1261
- return undefined;
1262
- }, [tiers]);
1263
- // Cycle a node: inherit → readWrite → readOnly → deny → inherit.
1264
- const cycleNode = useCallback((path) => {
1265
- setStatus(null);
1266
- const n = path.replace(/\/+$/, '') || '/';
1267
- const cur = explicitTier(path);
1268
- const next = cur === undefined ? 'readWrite' : cur === 'readWrite' ? 'readOnly' : cur === 'readOnly' ? 'deny' : undefined;
1269
- setTiers(prev => {
1270
- const strip = (arr) => arr.filter(p => (p.replace(/\/+$/, '') || '/') !== n);
1271
- const t = { readWrite: strip(prev.readWrite), readOnly: strip(prev.readOnly), deny: strip(prev.deny) };
1272
- if (next)
1273
- t[next].push(path);
1274
- setText(tiersToText(t));
1275
- return t;
1276
- });
1277
- }, [explicitTier]);
1278
- function syncFromText(next) {
1279
- setText(next);
1280
- setTiers(textToTiers(next));
1281
- setStatus(null);
1282
- }
1283
- async function save() {
1284
- setBusy(true);
1285
- setStatus(null);
1286
- try {
1287
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(bot.larkAppId)}/sandbox-paths`, tiers);
1288
- if (res.ok && res.body.ok) {
1289
- setStatus({ text: `✓ ${tr('botDefaults.sbxPathsSaved')}`, ok: true });
1290
- patchBot(bot.larkAppId, { sandboxPaths: res.body.sandboxPaths ?? { readWrite: [], readOnly: [], deny: [] } });
1291
- }
1292
- else {
1293
- setStatus({ text: `✗ ${responseErrorText(res)}` });
1294
- }
1295
- }
1296
- catch (e) {
1297
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
1298
- }
1299
- finally {
1300
- setBusy(false);
1301
- }
1302
- }
1303
- const tierBadge = (a) => a === 'readWrite' ? tr('botDefaults.sbxRw')
1304
- : a === 'readOnly' ? tr('botDefaults.sbxRo')
1305
- : a === 'deny' ? tr('botDefaults.sbxDeny')
1306
- : tr('botDefaults.sbxNone');
1307
- function TreeNode(props) {
1308
- const { name, path, depth } = props;
1309
- const isOpen = expanded.has(path);
1310
- const explicit = explicitTier(path);
1311
- const eff = effectiveAccess(tiers, path, homeRoot);
1312
- const kids = children[path];
1313
- return (_jsxs("div", { className: "bd-sbx-node", children: [_jsxs("div", { className: "bd-sbx-row", style: { paddingLeft: depth * 16 }, children: [_jsx("span", { className: "bd-sbx-twisty", onClick: () => {
1314
- setExpanded(prev => { const s = new Set(prev); s.has(path) ? s.delete(path) : s.add(path); return s; });
1315
- if (!kids)
1316
- void loadDir(path);
1317
- }, children: isOpen ? '▾' : '▸' }), _jsx("span", { className: "bd-sbx-name", title: path, children: name }), _jsx("button", { type: "button", className: `bd-sbx-state bd-sbx-state-${explicit ?? 'inherit'}`, "data-action": "cycle-sandbox-path", "data-path": path, title: explicit ? undefined : `${tr('botDefaults.sbxInherit')}: ${tierBadge(eff.access)}`, onClick: () => cycleNode(path), children: explicit ? tierBadge(explicit) : `↳ ${tierBadge(eff.access)}` })] }), isOpen && (_jsxs("div", { className: "bd-sbx-kids", children: [kids?.map(c => _jsx(TreeNode, { name: c.name, path: c.path, depth: depth + 1 }, c.path)), kids && kids.length === 0 && (_jsx("div", { className: "bd-sbx-empty", style: { paddingLeft: (depth + 1) * 16 + 20 }, children: tr('botDefaults.sbxNoSubdirs') }))] }))] }));
1318
- }
1319
- const testResult = testPath.trim() ? effectiveAccess(tiers, testPath.trim(), homeRoot) : null;
1320
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionSandboxPaths') }), _jsx("p", { className: "bd-section-note", children: tr('botDefaults.sbxPathsHelp') }), _jsx("div", { className: "actions", style: { gap: 8, flexWrap: 'wrap' }, children: _jsx("button", { type: "button", className: "bd-btn", onClick: () => setTextMode(m => !m), children: textMode ? tr('botDefaults.sbxPathsTreeMode') : tr('botDefaults.sbxPathsTextMode') }) }), textMode ? (_jsx("textarea", { className: "bd-sbx-text", "data-field": "sandbox-paths-text", rows: 8, value: text, spellCheck: false, placeholder: 'rw ~/my-data\nro ~/reference-repos\ndeny ~/my-data/secrets', onChange: e => syncFromText(e.target.value) })) : (_jsx("div", { className: "bd-sbx-tree", "data-field": "sandbox-paths-tree", children: roots.map(r => _jsx(TreeNode, { name: r.name, path: r.path, depth: 0 }, r.path)) })), _jsxs("div", { className: "bd-sbx-tester", children: [_jsx("input", { className: "bd-sbx-test-input", "data-field": "sandbox-path-test", placeholder: tr('botDefaults.sbxTestPlaceholder'), value: testPath, onChange: e => setTestPath(e.target.value) }), testResult && (_jsxs("span", { className: `bd-sbx-test-out bd-sbx-state-${testResult.access}`, "data-test-access": testResult.access, children: [tierBadge(testResult.access), testResult.rule ? ` ← ${testResult.rule}` : ''] }))] }), _jsxs("div", { className: "actions", children: [_jsx("button", { type: "button", className: "bd-btn bd-btn-primary", "data-action": "save-sandbox-paths", disabled: busy || !dirty, onClick: () => void save(), children: tr('botDefaults.sbxPathsSave') }), _jsx(StatusSpan, { status: status, attr: { 'data-sandbox-paths-status': '' } })] })] }));
1321
- }
1322
- const BACKEND_TYPE_OPTIONS = [
1323
- { value: '', labelKey: 'botDefaults.backendAuto' },
1324
- { value: 'tmux', labelKey: 'botDefaults.backendTmux' },
1325
- { value: 'herdr', labelKey: 'botDefaults.backendHerdr' },
1326
- { value: 'zellij', labelKey: 'botDefaults.backendZellij' },
1327
- { value: 'zmx', labelKey: 'botDefaults.backendZmx' },
1328
- { value: 'pty', labelKey: 'botDefaults.backendPty' },
1329
- ];
1330
- function BackendTypeSection(props) {
1331
- const tr = useT();
1332
- const { bot, patchBot } = props;
1333
- const [value, setValue] = useState(typeof bot.backendType === 'string' ? bot.backendType : '');
1334
- const [status, setStatus] = useState(null);
1335
- const [busy, setBusy] = useState(false);
1336
- useEffect(() => setValue(typeof bot.backendType === 'string' ? bot.backendType : ''), [bot.backendType]);
1337
- const options = useMemo(() => BACKEND_TYPE_OPTIONS.map(o => ({ value: o.value, label: tr(o.labelKey) })), [tr]);
1338
- async function save(next) {
1339
- const prev = value;
1340
- setValue(next);
1341
- setStatus(null);
1342
- setBusy(true);
1343
- try {
1344
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(bot.larkAppId)}/backend-type`, { backendType: next });
1345
- if (res.ok && res.body.ok) {
1346
- setStatus({ text: `✓ ${tr('botDefaults.backendSaved')}`, ok: true });
1347
- patchBot(bot.larkAppId, { backendType: typeof res.body.backendType === 'string' ? res.body.backendType : null });
1348
- }
1349
- else {
1350
- setStatus({ text: `✗ ${responseErrorText(res)}` });
1351
- setValue(prev); // revert optimistic selection
1352
- }
1353
- }
1354
- catch (e) {
1355
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
1356
- setValue(prev);
1357
- }
1358
- finally {
1359
- setBusy(false);
1360
- }
1361
- }
1362
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionBackend') }), _jsxs("div", { className: "bd-row", children: [_jsxs("div", { className: "bd-field", children: [_jsx(FieldTitle, { help: tr('botDefaults.backendHelp'), children: tr('botDefaults.backendLabel') }), _jsx(DropdownField, { dataInput: "backendType", ariaLabel: tr('botDefaults.backendLabel'), value: value, disabled: busy, options: options, onChange: next => void save(next) })] }), _jsx("div", { className: "actions", children: _jsx(StatusSpan, { status: status, attr: { 'data-backend-status': '' } }) })] })] }));
1363
- }
1364
- function RoleSection(props) {
1365
- const tr = useT();
1366
- const { bot, patchBot } = props;
1367
- const [loaded, setLoaded] = useState(typeof bot.teamRole === 'string');
1368
- const [role, setRole] = useState(typeof bot.teamRole === 'string' ? bot.teamRole : '');
1369
- const [injectMode, setInjectMode] = useState('every');
1370
- const [status, setStatus] = useState(null);
1371
- const [busy, setBusy] = useState(false);
1372
- useEffect(() => {
1373
- let active = true;
1374
- const roleUrl = `/api/team/local-bots/${encodeURIComponent(bot.larkAppId)}/role`;
1375
- if (typeof bot.teamRole === 'string') {
1376
- // Already resolved (incl. right after our own save, which patchBot's teamRole
1377
- // re-fires this effect) — sync the field but DON'T clear status, or the freshly
1378
- // set "✓ 已保存/已删除" toast gets wiped a frame later.
1379
- setLoaded(true);
1380
- setRole(bot.teamRole);
1381
- return () => { active = false; };
1382
- }
1383
- setStatus(null);
1384
- setLoaded(false);
1385
- setRole('');
1386
- void (async () => {
1387
- try {
1388
- const r = await fetch(roleUrl);
1389
- const body = await r.json().catch(() => ({}));
1390
- if (!active)
1391
- return;
1392
- if (r.ok && body.ok) {
1393
- const next = body.role ?? '';
1394
- setRole(next);
1395
- setInjectMode(body.injectMode === 'once' ? 'once' : 'every');
1396
- setLoaded(true);
1397
- patchBot(bot.larkAppId, { teamRole: next });
1398
- }
1399
- else {
1400
- setStatus({ text: `✗ ${tr('botDefaults.roleLoadErr')}: ${body.error ?? r.status}` });
1401
- }
1402
- }
1403
- catch (e) {
1404
- if (active)
1405
- setStatus({ text: `✗ ${tr('botDefaults.roleLoadErr')}: ${caughtErrorText(e)}` });
1406
- }
1407
- })();
1408
- return () => { active = false; };
1409
- }, [bot.larkAppId, bot.teamRole, patchBot, tr]);
1410
- // injectMode isn't cached on the bot row, so when the team role is already
1411
- // resolved (cache hit above skips the GET) fetch just the mode once per bot.
1412
- useEffect(() => {
1413
- let active = true;
1414
- if (typeof bot.teamRole !== 'string')
1415
- return () => { active = false; };
1416
- void (async () => {
1417
- try {
1418
- const r = await fetch(`/api/team/local-bots/${encodeURIComponent(bot.larkAppId)}/role`);
1419
- const body = await r.json().catch(() => ({}));
1420
- if (active && r.ok && body.ok)
1421
- setInjectMode(body.injectMode === 'once' ? 'once' : 'every');
1422
- }
1423
- catch { /* keep default 'every' */ }
1424
- })();
1425
- return () => { active = false; };
1426
- }, [bot.larkAppId]);
1427
- async function putRole(nextRole, deleted, mode = injectMode) {
1428
- if (!loaded)
1429
- return;
1430
- setStatus(null);
1431
- setBusy(true);
1432
- try {
1433
- const res = await sendJson('PUT', `/api/team/local-bots/${encodeURIComponent(bot.larkAppId)}/role`, { role: nextRole, injectMode: mode });
1434
- if (res.ok && res.body.ok) {
1435
- const stored = nextRole.trim();
1436
- setRole(stored);
1437
- if (res.body.injectMode === 'once' || res.body.injectMode === 'every')
1438
- setInjectMode(res.body.injectMode);
1439
- patchBot(bot.larkAppId, { teamRole: stored });
1440
- setStatus({ text: `✓ ${deleted ? tr('botDefaults.roleDeleted') : tr('botDefaults.roleSaved')}`, ok: true });
1441
- }
1442
- else {
1443
- setStatus({ text: `✗ ${responseErrorText(res)}` });
1444
- }
1445
- }
1446
- catch (e) {
1447
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
1448
- }
1449
- finally {
1450
- setBusy(false);
1451
- }
1452
- }
1453
- const injectOptions = [
1454
- { value: 'every', label: tr('roles.injectModeEvery') },
1455
- { value: 'once', label: tr('roles.injectModeOnce') },
1456
- ];
1457
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: _jsx(FieldTitle, { help: tr('botDefaults.roleHelp'), children: tr('botDefaults.sectionRole') }) }), _jsx("textarea", { "data-input": "teamRole", rows: 6, placeholder: tr('botDefaults.rolePlaceholder'), disabled: !loaded || busy, value: role, onChange: event => setRole(event.currentTarget.value) }), _jsxs("div", { className: "bd-role-inject", children: [_jsx("span", { className: "bd-subsection-title", children: _jsx(FieldTitle, { help: tr('roles.injectModeHint'), children: tr('roles.injectModeLabel') }) }), _jsx(DropdownMenu, { id: `bd-role-inject-${bot.larkAppId}`, className: "bd-role-inject-menu", ariaLabel: tr('roles.injectModeLabel'), disabled: !loaded || busy, label: dropdownLabel(injectOptions, injectMode), value: injectMode, options: injectOptions, onChange: mode => { const next = mode === 'once' ? 'once' : 'every'; setInjectMode(next); void putRole(role, role.trim() === '', next); } })] }), _jsxs("div", { className: "actions", children: [_jsx("button", { type: "button", className: "primary", "data-action": "save-role", disabled: !loaded || busy, onClick: () => void putRole(role, role.trim() === ''), children: tr('botDefaults.roleSave') }), _jsx(StatusSpan, { status: status, attr: { 'data-role-status': '' } })] }), _jsx(ProfileRoles, { appId: bot.larkAppId })] }));
1458
- }
1459
- function ProfileRoles(props) {
1460
- const tr = useT();
1461
- const [state, setState] = useState({ loaded: false, loading: true, items: [] });
1462
- useEffect(() => {
1463
- let active = true;
1464
- setState({ loaded: false, loading: true, items: [] });
1465
- void (async () => {
1466
- try {
1467
- const r = await fetch('/api/role-profiles');
1468
- const body = await r.json().catch(() => ({}));
1469
- if (!active)
1470
- return;
1471
- if (!r.ok)
1472
- throw new Error(body?.error ?? String(r.status));
1473
- const profiles = Array.isArray(body.profiles) ? body.profiles : [];
1474
- const items = profiles
1475
- .filter((profile) => (profile.botEntries ?? []).some((entry) => entry?.larkAppId === props.appId && entry?.hasEntry))
1476
- .map((profile) => ({ profileId: String(profile.profileId) }));
1477
- setState({
1478
- loaded: true,
1479
- loading: false,
1480
- items,
1481
- });
1482
- }
1483
- catch (e) {
1484
- if (active)
1485
- setState({ loaded: true, loading: false, error: caughtErrorText(e), items: [] });
1486
- }
1487
- })();
1488
- return () => { active = false; };
1489
- }, [props.appId]);
1490
- async function loadDetail(profileId) {
1491
- const item = state.items.find(entry => entry.profileId === profileId);
1492
- if (!item || item.loaded || item.loading)
1493
- return;
1494
- setState(current => ({
1495
- ...current,
1496
- items: current.items.map(entry => entry.profileId === profileId ? { ...entry, loading: true } : entry),
1497
- }));
1498
- try {
1499
- const r = await fetch(`/api/role-profiles/${encodeURIComponent(profileId)}/${encodeURIComponent(props.appId)}`);
1500
- const body = await r.json().catch(() => ({}));
1501
- if (!r.ok)
1502
- throw new Error(body?.error ?? String(r.status));
1503
- setState(current => ({
1504
- ...current,
1505
- items: current.items.map(entry => entry.profileId === profileId
1506
- ? { ...entry, loading: false, loaded: true, content: body?.hasEntry ? String(body.content ?? '') : '' }
1507
- : entry),
1508
- }));
1509
- }
1510
- catch (e) {
1511
- setState(current => ({
1512
- ...current,
1513
- items: current.items.map(entry => entry.profileId === profileId ? { ...entry, loading: false, error: caughtErrorText(e) } : entry),
1514
- }));
1515
- }
1516
- }
1517
- let body;
1518
- if (state.loading)
1519
- body = _jsx(LoadingState, { label: tr('common.loading'), compact: true });
1520
- else if (state.error)
1521
- body = _jsx("p", { className: "hint-warn-inline", children: tr('botDefaults.profileRolesLoadFailed', { error: state.error }) });
1522
- else if (state.items.length === 0)
1523
- body = _jsx("p", { className: "empty", children: tr('botDefaults.profileRolesEmpty') });
1524
- else {
1525
- body = state.items.map(item => (_jsxs("details", { className: "bd-profile-role-entry", "data-profile-id": item.profileId, onToggle: event => {
1526
- if (event.currentTarget.open)
1527
- void loadDetail(item.profileId);
1528
- }, children: [_jsx("summary", { children: _jsx("span", { className: "bd-profile-role-id", children: item.profileId }) }), _jsx("div", { className: "bd-profile-role-content", "data-profile-role-body": item.profileId, children: item.loading ? _jsx(LoadingState, { label: tr('common.loading'), compact: true }) : item.error ? (_jsx("p", { className: "hint-warn-inline", children: tr('botDefaults.profileRoleDetailLoadFailed', { error: item.error }) })) : item.loaded ? (_jsx("pre", { children: item.content ?? '' })) : (_jsx("p", { className: "empty", children: tr('botDefaults.profileRoleClickToLoad') })) })] }, item.profileId)));
1529
- }
1530
- return (_jsxs("div", { className: "bd-profile-roles", "data-profile-roles": true, children: [_jsx("h4", { className: "bd-subsection-title", children: _jsx(FieldTitle, { help: tr('botDefaults.profileRolesHelp'), children: tr('botDefaults.profileRoles') }) }), _jsx("div", { className: "bd-profile-role-list", "data-profile-role-list": true, children: body })] }));
1531
- }
1532
- export function CardBehaviorSection(props) {
1533
- const tr = useT();
1534
- const { bot, putCardPref } = props;
1535
- const [usageDisplay, setUsageDisplay] = useState(bot.usageDisplay ?? 'streaming');
1536
- const [disableStreaming, setDisableStreaming] = useState(bot.disableStreamingCard === true);
1537
- const [silentReactions, setSilentReactions] = useState(bot.silentTurnReactions === true);
1538
- const [writableLink, setWritableLink] = useState(bot.writableTerminalLinkInCard === true);
1539
- const [privateCard, setPrivateCard] = useState(bot.privateCard === true);
1540
- const [status, setStatus] = useState(null);
1541
- const [busy, setBusy] = useState(null);
1542
- useEffect(() => {
1543
- setUsageDisplay(bot.usageDisplay ?? 'streaming');
1544
- setDisableStreaming(bot.disableStreamingCard === true);
1545
- setSilentReactions(bot.silentTurnReactions === true);
1546
- setWritableLink(bot.writableTerminalLinkInCard === true);
1547
- setPrivateCard(bot.privateCard === true);
1548
- }, [bot.disableStreamingCard, bot.privateCard, bot.usageDisplay, bot.silentTurnReactions, bot.writableTerminalLinkInCard]);
1549
- async function savePatch(patch, key, rollback) {
1550
- setBusy(key);
1551
- setStatus(null);
1552
- try {
1553
- const res = await putCardPref(patch);
1554
- if (res.ok) {
1555
- setStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
1556
- }
1557
- else {
1558
- rollback?.();
1559
- setStatus({ text: `✗ ${responseErrorText(res)}` });
1560
- }
1561
- }
1562
- catch (e) {
1563
- rollback?.();
1564
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
1565
- }
1566
- finally {
1567
- setBusy(null);
1568
- }
1569
- }
1570
- const usageDisplayOptions = [
1571
- { value: 'streaming', label: tr('botDefaults.usageDisplayStreaming') },
1572
- { value: 'footer', label: tr('botDefaults.usageDisplayFooter') },
1573
- { value: 'off', label: tr('botDefaults.usageDisplayOff') },
1574
- ];
1575
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionCard') }), bot.usageSupported === true && (_jsx("div", { className: "bd-row", children: _jsxs("div", { className: "bd-field", children: [_jsx(FieldTitle, { help: tr('botDefaults.usageDisplayHelp'), children: tr('botDefaults.usageDisplay') }), _jsx(DropdownField, { dataInput: "usageDisplay", ariaLabel: tr('botDefaults.usageDisplay'), value: usageDisplay, disabled: busy === 'usage', options: usageDisplayOptions, onChange: next => {
1576
- const previous = usageDisplay;
1577
- setUsageDisplay(next);
1578
- void savePatch({ usageDisplay: next }, 'usage', () => setUsageDisplay(previous));
1579
- } })] }) })), _jsxs("div", { className: "bd-toggle-grid bd-card-behavior-grid", children: [_jsx(ToggleRow, { checked: disableStreaming, disabled: busy === 'streaming', dataAction: "toggle-disable-streaming", title: tr('botDefaults.disableStreaming'), help: tr('botDefaults.disableStreamingHelp'), onChange: checked => {
1580
- setDisableStreaming(checked);
1581
- void savePatch({ disableStreamingCard: checked }, 'streaming');
1582
- } }), _jsx(ToggleRow, { checked: silentReactions, disabled: !disableStreaming || busy === 'silent', dataAction: "toggle-silent-reactions", title: tr('botDefaults.silentTurnReactions'), help: tr('botDefaults.silentTurnReactionsHelp'), onChange: checked => {
1583
- setSilentReactions(checked);
1584
- void savePatch({ silentTurnReactions: checked }, 'silent');
1585
- } }), _jsx(ToggleRow, { checked: writableLink, disabled: disableStreaming || busy === 'writable', dataAction: "toggle-writable-link", title: tr('botDefaults.writableLink'), help: tr('botDefaults.writableLinkHelp'), onChange: checked => {
1586
- setWritableLink(checked);
1587
- void savePatch({ writableTerminalLinkInCard: checked }, 'writable');
1588
- } }), _jsx(ToggleRow, { checked: privateCard, disabled: busy === 'private', dataAction: "toggle-private-card", title: tr('botDefaults.privateCard'), help: tr('botDefaults.privateCardHelp'), onChange: checked => {
1589
- setPrivateCard(checked);
1590
- void savePatch({ privateCard: checked }, 'private');
1591
- } })] }), _jsxs("div", { className: "actions", children: [_jsx("small", { "data-card-pref-moot": true, className: "hint-warn-inline", hidden: !disableStreaming, children: tr('botDefaults.writableLinkMoot') }), _jsx(StatusSpan, { status: status, attr: { 'data-card-pref-status': '' } })] })] }));
1592
- }
1593
- export function CodexAppDisplaySection(props) {
1594
- const tr = useT();
1595
- const [cleanInput, setCleanInput] = useState(props.bot.codexAppCleanInput === true);
1596
- const [status, setStatus] = useState(null);
1597
- const [busy, setBusy] = useState(false);
1598
- useEffect(() => setCleanInput(props.bot.codexAppCleanInput === true), [props.bot.codexAppCleanInput]);
1599
- async function save(checked) {
1600
- const previous = cleanInput;
1601
- setCleanInput(checked);
1602
- setBusy(true);
1603
- setStatus(null);
1604
- try {
1605
- const res = await props.putCardPref({ codexAppCleanInput: checked });
1606
- if (res.ok) {
1607
- setStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
1608
- }
1609
- else {
1610
- setCleanInput(previous);
1611
- setStatus({ text: `✗ ${responseErrorText(res)}` });
1612
- }
1613
- }
1614
- catch (e) {
1615
- setCleanInput(previous);
1616
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
1617
- }
1618
- finally {
1619
- setBusy(false);
1620
- }
1621
- }
1622
- return (_jsxs("section", { className: "bd-section", "data-codex-app-display": true, children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionCodexAppDisplay') }), _jsx(ToggleRow, { checked: cleanInput, disabled: busy, dataAction: "toggle-codex-app-clean-input", title: tr('botDefaults.codexAppCleanInput'), help: tr('botDefaults.codexAppCleanInputHelp'), onChange: checked => void save(checked) }), _jsx("small", { className: "bd-section-note", children: tr('botDefaults.codexAppCleanInputCompat') }), _jsx("div", { className: "actions", children: _jsx(StatusSpan, { status: status, attr: { 'data-codex-app-clean-input-status': '' } }) })] }));
1623
- }
1624
- function CrossBotSection(props) {
1625
- const tr = useT();
1626
- const [sameDir, setSameDir] = useState(props.bot.botToBotSameDir !== false);
1627
- const [status, setStatus] = useState(null);
1628
- const [busy, setBusy] = useState(false);
1629
- useEffect(() => setSameDir(props.bot.botToBotSameDir !== false), [props.bot.botToBotSameDir]);
1630
- async function save(next) {
1631
- setSameDir(next);
1632
- setBusy(true);
1633
- setStatus(null);
1634
- try {
1635
- const res = await props.putCardPref({ botToBotSameDir: next });
1636
- setStatus(res.ok ? { text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true } : { text: `✗ ${responseErrorText(res)}` });
1637
- }
1638
- catch (e) {
1639
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
1640
- }
1641
- finally {
1642
- setBusy(false);
1643
- }
1644
- }
1645
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionCrossBot') }), _jsx(ToggleRow, { checked: sameDir, disabled: busy, dataAction: "toggle-cross-bot-samedir", title: tr('botDefaults.botToBotSameDir'), help: tr('botDefaults.botToBotSameDirHelp'), onChange: checked => void save(checked) }), _jsx("div", { className: "actions", children: _jsx(StatusSpan, { status: status, attr: { 'data-crossbot-status': '' } }) })] }));
1646
- }
1647
- function SummaryTriggerSection(props) {
1648
- const tr = useT();
1649
- const initial = summaryRange(props.bot);
1650
- const [limit, setLimit] = useState(String(initial.limit));
1651
- const [sinceHours, setSinceHours] = useState(String(initial.sinceHours));
1652
- const [memoryOn, setMemoryOn] = useState(props.bot.summaryMemory === true);
1653
- const [memoryPath, setMemoryPath] = useState(summaryMemoryPath(props.bot));
1654
- const [status, setStatus] = useState(null);
1655
- const [memoryStatus, setMemoryStatus] = useState(null);
1656
- const [busy, setBusy] = useState(false);
1657
- const [memoryBusy, setMemoryBusy] = useState(false);
1658
- useEffect(() => {
1659
- const next = summaryRange(props.bot);
1660
- setLimit(String(next.limit));
1661
- setSinceHours(String(next.sinceHours));
1662
- setMemoryOn(props.bot.summaryMemory === true);
1663
- setMemoryPath(summaryMemoryPath(props.bot));
1664
- }, [props.bot.summaryRange?.limit, props.bot.summaryRange?.sinceHours, props.bot.summaryMemory, props.bot.summaryMemoryPath]);
1665
- async function save() {
1666
- setStatus(null);
1667
- const nextLimit = nonNegativeInteger(limit, 50);
1668
- const nextSinceHours = nonNegativeInteger(sinceHours, 24);
1669
- if (nextLimit == null || nextSinceHours == null) {
1670
- setStatus({ text: `✗ ${tr('botDefaults.summaryNumberInvalid')}` });
1671
- return;
1672
- }
1673
- setBusy(true);
1674
- try {
1675
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(props.bot.larkAppId)}/summary-range`, {
1676
- limit: nextLimit,
1677
- sinceHours: nextSinceHours,
1678
- });
1679
- if (res.ok && res.body.ok) {
1680
- const next = res.body.summaryRange ?? { limit: nextLimit, sinceHours: nextSinceHours };
1681
- const normalized = summaryRange({ ...props.bot, summaryRange: next });
1682
- setLimit(String(normalized.limit));
1683
- setSinceHours(String(normalized.sinceHours));
1684
- props.patchBot(props.bot.larkAppId, { summaryRange: next });
1685
- setStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
1686
- }
1687
- else {
1688
- setStatus({ text: `✗ ${responseErrorText(res)}` });
1689
- }
1690
- }
1691
- catch (e) {
1692
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
1693
- }
1694
- finally {
1695
- setBusy(false);
1696
- }
1697
- }
1698
- async function saveMemory(next, nextPath = memoryPath) {
1699
- const prev = memoryOn;
1700
- const prevPath = memoryPath;
1701
- const normalizedPath = normalizeSummaryMemoryPath(nextPath);
1702
- setMemoryOn(next);
1703
- setMemoryPath(normalizedPath);
1704
- setMemoryStatus(null);
1705
- setMemoryBusy(true);
1706
- try {
1707
- const res = await props.putCardPref({ summaryMemory: next, summaryMemoryPath: normalizedPath });
1708
- if (res.ok && res.body.ok) {
1709
- const saved = res.body.summaryMemory === true;
1710
- const savedPath = summaryMemoryPath({ ...props.bot, summaryMemoryPath: res.body.summaryMemoryPath });
1711
- setMemoryOn(saved);
1712
- setMemoryPath(savedPath);
1713
- props.patchBot(props.bot.larkAppId, { summaryMemory: saved, summaryMemoryPath: savedPath });
1714
- setMemoryStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
1715
- }
1716
- else {
1717
- setMemoryOn(prev);
1718
- setMemoryPath(prevPath);
1719
- setMemoryStatus({ text: `✗ ${responseErrorText(res)}` });
1720
- }
1721
- }
1722
- catch (e) {
1723
- setMemoryOn(prev);
1724
- setMemoryPath(prevPath);
1725
- setMemoryStatus({ text: `✗ ${caughtErrorText(e)}` });
1726
- }
1727
- finally {
1728
- setMemoryBusy(false);
1729
- }
1730
- }
1731
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: _jsx(FieldTitle, { help: tr('botDefaults.summaryLimitHelp'), children: tr('botDefaults.sectionSummaryTrigger') }) }), _jsxs("div", { className: "bd-row bd-summary-limits", children: [_jsxs("label", { children: [_jsx("span", { children: tr('botDefaults.summaryLimit') }), _jsx("input", { type: "number", min: 0, step: 1, "data-input": "summaryLimit", value: limit, disabled: busy, onChange: event => setLimit(event.currentTarget.value) })] }), _jsxs("label", { children: [_jsx("span", { children: tr('botDefaults.summarySinceHours') }), _jsx("input", { type: "number", min: 0, step: 1, "data-input": "summarySinceHours", value: sinceHours, disabled: busy, onChange: event => setSinceHours(event.currentTarget.value) })] })] }), _jsxs("div", { className: "actions", children: [_jsx("button", { type: "button", className: "primary", "data-action": "save-summary-trigger", disabled: busy, onClick: () => void save(), children: tr('botDefaults.summarySave') }), _jsx(StatusSpan, { status: status, attr: { 'data-summary-trigger-status': '' } })] }), _jsx(ToggleRow, { checked: memoryOn, disabled: memoryBusy, title: tr('botDefaults.summaryMemory'), help: tr('botDefaults.summaryMemoryHelp'), onChange: checked => void saveMemory(checked) }), _jsx("div", { className: "bd-row bd-summary-limits", children: _jsxs("label", { children: [_jsx("span", { children: tr('botDefaults.summaryMemoryPath') }), _jsx("input", { type: "text", "data-input": "summaryMemoryPath", value: memoryPath, disabled: memoryBusy, onChange: event => setMemoryPath(event.currentTarget.value) })] }) }), _jsx("div", { className: "actions", children: _jsx("button", { type: "button", className: "primary", "data-action": "save-summary-memory-path", disabled: memoryBusy, onClick: () => void saveMemory(memoryOn, memoryPath), children: tr('botDefaults.summaryMemoryPathSave') }) }), _jsx("div", { className: "actions", children: _jsx(StatusSpan, { status: memoryStatus, attr: { 'data-summary-memory-status': '' } }) })] }));
1732
- }
1733
- function normalizeSummaryMemoryPath(raw) {
1734
- const value = raw.trim();
1735
- return value || 'summary.md';
1736
- }
1737
- function summaryMemoryPath(bot) {
1738
- return normalizeSummaryMemoryPath(typeof bot.summaryMemoryPath === 'string' ? bot.summaryMemoryPath : '');
1739
- }
1740
- function summaryRange(bot) {
1741
- const range = bot.summaryRange ?? { limit: 50, sinceHours: 24 };
1742
- return {
1743
- limit: Number.isInteger(range.limit) && Number(range.limit) >= 0 ? Number(range.limit) : 50,
1744
- sinceHours: Number.isInteger(range.sinceHours) && Number(range.sinceHours) >= 0 ? Number(range.sinceHours) : 24,
1745
- };
1746
- }
1747
- function SessionModeSection(props) {
1748
- const tr = useT();
1749
- const [p2p, setP2p] = useState(props.bot.p2pMode === 'thread' ? 'thread' : 'chat');
1750
- const [regular, setRegular] = useState(regularGroupMode(props.bot));
1751
- const [mention, setMention] = useState(mentionMode(props.bot));
1752
- const [docMode, setDocMode] = useState(props.bot.docSubscribeDefaultMode === 'all' ? 'all' : 'mention-only');
1753
- const [busy, setBusy] = useState(null);
1754
- const [p2pStatus, setP2pStatus] = useState(null);
1755
- const [regularStatus, setRegularStatus] = useState(null);
1756
- const [mentionStatus, setMentionStatus] = useState(null);
1757
- const [docStatus, setDocStatus] = useState(null);
1758
- useEffect(() => {
1759
- setP2p(props.bot.p2pMode === 'thread' ? 'thread' : 'chat');
1760
- setRegular(regularGroupMode(props.bot));
1761
- setMention(mentionMode(props.bot));
1762
- setDocMode(props.bot.docSubscribeDefaultMode === 'all' ? 'all' : 'mention-only');
1763
- }, [
1764
- props.bot.docSubscribeDefaultMode,
1765
- props.bot.p2pMode,
1766
- props.bot.regularGroupMentionMode,
1767
- props.bot.regularGroupReplyMode,
1768
- ]);
1769
- async function saveP2p(next) {
1770
- const mode = next === 'chat' ? 'chat' : 'thread';
1771
- setP2p(mode);
1772
- setBusy('p2p');
1773
- setP2pStatus(null);
1774
- try {
1775
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(props.bot.larkAppId)}/p2p-mode`, { p2pMode: mode });
1776
- if (res.ok && res.body.ok) {
1777
- props.patchBot(props.bot.larkAppId, { p2pMode: res.body.p2pMode === 'thread' ? 'thread' : 'chat' });
1778
- setP2pStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
1779
- }
1780
- else {
1781
- setP2pStatus({ text: `✗ ${responseErrorText(res)}` });
1782
- }
1783
- }
1784
- catch (e) {
1785
- setP2pStatus({ text: `✗ ${caughtErrorText(e)}` });
1786
- }
1787
- finally {
1788
- setBusy(null);
1789
- }
1790
- }
1791
- async function saveCardMode(key, patch, setStatus) {
1792
- setBusy(key);
1793
- setStatus(null);
1794
- try {
1795
- const res = await props.putCardPref(patch);
1796
- setStatus(res.ok ? { text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true } : { text: `✗ ${responseErrorText(res)}` });
1797
- }
1798
- catch (e) {
1799
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
1800
- }
1801
- finally {
1802
- setBusy(null);
1803
- }
1804
- }
1805
- const p2pOptions = [
1806
- { value: 'thread', label: tr('botDefaults.p2pThread') },
1807
- { value: 'chat', label: tr('botDefaults.p2pChat') },
1808
- ];
1809
- const regularOptions = [
1810
- { value: 'chat', label: tr('botDefaults.regularGroupModeChat') },
1811
- { value: 'chat-topic', label: tr('botDefaults.regularGroupModeChatTopic') },
1812
- { value: 'new-topic', label: tr('botDefaults.regularGroupModeNewTopic') },
1813
- { value: 'shared', label: tr('botDefaults.regularGroupModeShared') },
1814
- ];
1815
- const mentionOptions = [
1816
- { value: 'always', label: tr('botDefaults.mentionModeAlways') },
1817
- { value: 'topic', label: tr('botDefaults.mentionModeTopic') },
1818
- { value: 'never', label: tr('botDefaults.mentionModeNever') },
1819
- { value: 'ambient', label: tr('botDefaults.mentionModeAmbient') },
1820
- ];
1821
- const docOptions = [
1822
- { value: 'mention-only', label: tr('botDefaults.docSubscribeModeMention') },
1823
- { value: 'all', label: tr('botDefaults.docSubscribeModeAll') },
1824
- ];
1825
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionSessionMode') }), _jsxs("div", { className: "bd-row", children: [_jsxs("div", { className: "bd-field", children: [_jsx(FieldTitle, { help: tr('botDefaults.p2pHelp'), children: tr('botDefaults.p2pMode') }), _jsx(DropdownField, { dataInput: "p2pMode", ariaLabel: tr('botDefaults.p2pMode'), value: p2p, disabled: busy === 'p2p', options: p2pOptions, onChange: next => void saveP2p(next) })] }), _jsx("div", { className: "actions", children: _jsx(StatusSpan, { status: p2pStatus, attr: { 'data-p2p-status': '' } }) })] }), _jsxs("div", { className: "bd-row", children: [_jsxs("div", { className: "bd-field", children: [_jsx(FieldTitle, { help: tr('botDefaults.regularGroupModeHelp'), children: tr('botDefaults.regularGroupMode') }), _jsx(DropdownField, { dataInput: "regularGroupMode", ariaLabel: tr('botDefaults.regularGroupMode'), value: regular, disabled: busy === 'regular', options: regularOptions, onChange: next => {
1826
- setRegular(next);
1827
- void saveCardMode('regular', { regularGroupReplyMode: next }, setRegularStatus);
1828
- } })] }), _jsx("div", { className: "actions", children: _jsx(StatusSpan, { status: regularStatus, attr: { 'data-regular-group-status': '' } }) })] }), _jsxs("div", { className: "bd-row", children: [_jsxs("div", { className: "bd-field", children: [_jsx(FieldTitle, { help: tr('botDefaults.mentionModeHelp'), children: tr('botDefaults.mentionMode') }), _jsx(DropdownField, { dataInput: "regularGroupMentionMode", ariaLabel: tr('botDefaults.mentionMode'), value: mention, disabled: busy === 'mention', options: mentionOptions, onChange: next => {
1829
- setMention(next);
1830
- void saveCardMode('mention', { regularGroupMentionMode: next }, setMentionStatus);
1831
- } })] }), _jsx("div", { className: "actions", children: _jsx(StatusSpan, { status: mentionStatus, attr: { 'data-mention-mode-status': '' } }) })] }), _jsxs("div", { className: "bd-row", children: [_jsxs("div", { className: "bd-field", children: [_jsx(FieldTitle, { help: tr('botDefaults.docSubscribeModeHelp'), children: tr('botDefaults.docSubscribeMode') }), _jsx(DropdownField, { dataInput: "docSubscribeDefaultMode", ariaLabel: tr('botDefaults.docSubscribeMode'), value: docMode, disabled: busy === 'doc', options: docOptions, onChange: next => {
1832
- setDocMode(next);
1833
- void saveCardMode('doc', { docSubscribeDefaultMode: next }, setDocStatus);
1834
- } })] }), _jsx("div", { className: "actions", children: _jsx(StatusSpan, { status: docStatus, attr: { 'data-doc-subscribe-mode-status': '' } }) })] })] }));
1835
- }
1836
- function SubstituteModeSection(props) {
1837
- const tr = useT();
1838
- const initial = props.bot.substituteMode ?? null;
1839
- const [enabled, setEnabled] = useState(initial?.enabled === true);
1840
- function substituteReasonText(reason) {
1841
- switch (reason) {
1842
- case 'cross_app_open_id': return tr('botDefaults.substituteReasonCrossAppOpenId');
1843
- case 'not_visible': return tr('botDefaults.substituteReasonNotVisible');
1844
- case 'resolve_failed': return tr('botDefaults.substituteReasonResolveFailed');
1845
- case 'unresolvable': return tr('botDefaults.substituteReasonUnresolvable');
1846
- default: return tr('botDefaults.substituteUnresolved');
1847
- }
1848
- }
1849
- const [disclosure, setDisclosure] = useState(initial?.disclosure === 'none' ? 'none' : 'prefix');
1850
- const [replyMode, setReplyMode] = useState(initial?.replyMode === 'quote' ? 'quote' : 'thread');
1851
- const [controlCard, setControlCard] = useState(initial?.disableControlCard !== true);
1852
- const [chatsText, setChatsText] = useState(() => formatSubstituteChats(initial?.chats));
1853
- const [excludedChatsText, setExcludedChatsText] = useState(() => formatSubstituteChats(initial?.excludedChats));
1854
- // 话题群相关开关缺省开:只有显式 false 才是关(与 normalize 语义一致)。
1855
- const [topicGroups, setTopicGroups] = useState(initial?.topicGroups !== false);
1856
- const [topicActiveSessionTrigger, setTopicActiveSessionTrigger] = useState(initial?.topicActiveSessionTrigger !== false);
1857
- const [status, setStatus] = useState(null);
1858
- const [busy, setBusy] = useState(false);
1859
- const targetSequence = useRef(0);
1860
- const skipModeSync = useRef(false);
1861
- function makeTargetDraft(target) {
1862
- const idField = substituteTargetIdField(target);
1863
- return {
1864
- key: ++targetSequence.current,
1865
- idField,
1866
- idValue: target?.[idField] ?? '',
1867
- name: target?.name ?? '',
1868
- persisted: target ? { ...target } : {},
1869
- originalIdField: target ? idField : undefined,
1870
- resolution: target?.name || target?.avatarUrl
1871
- ? { ok: true, name: target.name, avatarUrl: target.avatarUrl }
1872
- : undefined,
1873
- };
1874
- }
1875
- // Monotonic per-row resolve epoch: two quick blurs create two in-flight
1876
- // requests; only the latest one may apply, or a slow stale response would
1877
- // overwrite the fresh result (last-completion-wins race).
1878
- const resolveEpochs = useRef(new Map());
1879
- async function resolveTargetRow(key) {
1880
- const epoch = (resolveEpochs.current.get(key) ?? 0) + 1;
1881
- resolveEpochs.current.set(key, epoch);
1882
- const isCurrent = () => resolveEpochs.current.get(key) === epoch;
1883
- setTargetRows(rows => rows.map(row => row.key === key ? { ...row, resolving: true } : row));
1884
- try {
1885
- const row = targetRows.find(r => r.key === key);
1886
- if (!row)
1887
- return;
1888
- const idValue = row.idValue.trim();
1889
- if (!idValue) {
1890
- setTargetRows(rows => rows.map(r => r.key === key ? { ...r, resolving: false, resolution: undefined } : r));
1891
- return;
1892
- }
1893
- const target = { [row.idField]: idValue };
1894
- if (row.name.trim())
1895
- target.name = row.name.trim();
1896
- const res = await resolveSubstituteTarget(props.bot.larkAppId, target);
1897
- if (!isCurrent())
1898
- return;
1899
- setTargetRows(rows => rows.map(r => {
1900
- if (r.key !== key)
1901
- return r;
1902
- if (!res.ok)
1903
- return { ...r, resolving: false, resolution: { ok: false } };
1904
- const entry = res.resolution;
1905
- if (entry?.ok === true) {
1906
- // userId passthrough: nothing was verified (no openId / profile) —
1907
- // keep the editable name input instead of showing a fake chip.
1908
- if (!entry.openId)
1909
- return { ...r, resolving: false, resolution: undefined };
1910
- const persisted = { ...r.persisted };
1911
- persisted.openId = entry.openId;
1912
- if (entry.name)
1913
- persisted.name = entry.name;
1914
- if (entry.avatarUrl)
1915
- persisted.avatarUrl = entry.avatarUrl;
1916
- return {
1917
- ...r,
1918
- name: entry.name ?? r.name,
1919
- persisted,
1920
- resolving: false,
1921
- resolution: { ok: true, name: entry.name, avatarUrl: entry.avatarUrl },
1922
- };
1923
- }
1924
- return {
1925
- ...r,
1926
- resolving: false,
1927
- resolution: { ok: false, reason: entry?.reason },
1928
- };
1929
- }));
1930
- }
1931
- catch {
1932
- if (!isCurrent())
1933
- return;
1934
- setTargetRows(rows => rows.map(r => r.key === key ? { ...r, resolving: false, resolution: { ok: false } } : r));
1935
- }
1936
- }
1937
- const [targetRows, setTargetRows] = useState(() => {
1938
- const targets = initial?.targets ?? [];
1939
- return targets.length ? targets.map(target => makeTargetDraft(target)) : [makeTargetDraft()];
1940
- });
1941
- useEffect(() => {
1942
- if (skipModeSync.current) {
1943
- skipModeSync.current = false;
1944
- return;
1945
- }
1946
- const next = props.bot.substituteMode ?? null;
1947
- setEnabled(next?.enabled === true);
1948
- setDisclosure(next?.disclosure === 'none' ? 'none' : 'prefix');
1949
- setReplyMode(next?.replyMode === 'quote' ? 'quote' : 'thread');
1950
- setControlCard(next?.disableControlCard !== true);
1951
- setChatsText(formatSubstituteChats(next?.chats));
1952
- setExcludedChatsText(formatSubstituteChats(next?.excludedChats));
1953
- setTopicGroups(next?.topicGroups !== false);
1954
- setTopicActiveSessionTrigger(next?.topicActiveSessionTrigger !== false);
1955
- const targets = next?.targets ?? [];
1956
- setTargetRows(targets.length ? targets.map(target => makeTargetDraft(target)) : [makeTargetDraft()]);
1957
- }, [props.bot.larkAppId, props.bot.substituteMode]);
1958
- async function save(body) {
1959
- setBusy(true);
1960
- setStatus(null);
1961
- try {
1962
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(props.bot.larkAppId)}/substitute-mode`, body);
1963
- if (res.ok && res.body.ok) {
1964
- const next = res.body.substituteMode && typeof res.body.substituteMode === 'object'
1965
- ? res.body.substituteMode
1966
- : null;
1967
- const resolution = Array.isArray(res.body?.resolution)
1968
- ? res.body.resolution
1969
- : [];
1970
- const unresolved = resolution
1971
- .filter(entry => entry?.ok === false)
1972
- .map(entry => String(entry.input ?? '').trim())
1973
- .filter(Boolean);
1974
- setEnabled(next?.enabled === true);
1975
- setDisclosure(next?.disclosure === 'none' ? 'none' : 'prefix');
1976
- setReplyMode(next?.replyMode === 'quote' ? 'quote' : 'thread');
1977
- setControlCard(next?.disableControlCard !== true);
1978
- setChatsText(formatSubstituteChats(next?.chats));
1979
- setExcludedChatsText(formatSubstituteChats(next?.excludedChats));
1980
- setTopicGroups(next?.topicGroups !== false);
1981
- setTopicActiveSessionTrigger(next?.topicActiveSessionTrigger !== false);
1982
- if (resolution.length) {
1983
- skipModeSync.current = true;
1984
- setTargetRows(rows => {
1985
- const pending = [...resolution];
1986
- return rows.map(row => {
1987
- const input = row.idValue.trim();
1988
- const index = pending.findIndex(entry => String(entry.input ?? '').trim() === input);
1989
- if (index < 0)
1990
- return row;
1991
- const entry = pending.splice(index, 1)[0];
1992
- if (entry?.ok === true) {
1993
- const persisted = { ...row.persisted };
1994
- if (entry.openId)
1995
- persisted.openId = entry.openId;
1996
- if (row.idField === 'email')
1997
- persisted.email = input;
1998
- if (entry.name)
1999
- persisted.name = entry.name;
2000
- if (entry.avatarUrl)
2001
- persisted.avatarUrl = entry.avatarUrl;
2002
- return {
2003
- ...row,
2004
- name: entry.name ?? row.name,
2005
- persisted,
2006
- resolution: { ok: true, name: entry.name, avatarUrl: entry.avatarUrl },
2007
- };
2008
- }
2009
- return {
2010
- ...row,
2011
- resolution: { ok: false, reason: entry?.reason },
2012
- };
2013
- });
2014
- });
2015
- }
2016
- else {
2017
- const targets = next?.targets ?? [];
2018
- setTargetRows(targets.length ? targets.map(target => makeTargetDraft(target)) : [makeTargetDraft()]);
2019
- }
2020
- props.patchBot(props.bot.larkAppId, { substituteMode: next });
2021
- setStatus(unresolved.length
2022
- ? { text: `✗ ${tr('botDefaults.substituteTargetsInvalid')}: ${unresolved.join(', ')}` }
2023
- : { text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
2024
- }
2025
- else {
2026
- const unresolved = Array.isArray(res.body?.resolution)
2027
- ? res.body.resolution
2028
- .filter((entry) => entry?.ok === false)
2029
- .map((entry) => String(entry.input ?? '').trim())
2030
- .filter(Boolean)
2031
- : [];
2032
- setStatus({ text: unresolved.length
2033
- ? `✗ ${tr('botDefaults.substituteTargetsInvalid')}: ${unresolved.join(', ')}`
2034
- : `✗ ${responseErrorText(res)}` });
2035
- }
2036
- }
2037
- catch (error) {
2038
- setStatus({ text: `✗ ${caughtErrorText(error)}` });
2039
- }
2040
- finally {
2041
- setBusy(false);
2042
- }
2043
- }
2044
- function saveCurrent() {
2045
- const targets = [];
2046
- let invalid = false;
2047
- for (const row of targetRows) {
2048
- const target = buildSubstituteTarget(row);
2049
- if (!target) {
2050
- invalid ||= Boolean(row.name.trim());
2051
- continue;
2052
- }
2053
- targets.push(target);
2054
- }
2055
- if (invalid || (enabled && targets.length === 0)) {
2056
- setStatus({ text: `✗ ${tr('botDefaults.substituteTargetsInvalid')}` });
2057
- return;
2058
- }
2059
- void save({ enabled, targets, disclosure, chats: parseSubstituteChats(chatsText), excludedChats: parseSubstituteChats(excludedChatsText), replyMode, disableControlCard: !controlCard, topicGroups, topicActiveSessionTrigger });
2060
- }
2061
- const disclosureOptions = [
2062
- { value: 'prefix', label: tr('botDefaults.substituteDisclosurePrefix') },
2063
- { value: 'none', label: tr('botDefaults.substituteDisclosureNone') },
2064
- ];
2065
- const replyModeOptions = [
2066
- { value: 'thread', label: tr('botDefaults.substituteReplyModeThread') },
2067
- { value: 'quote', label: tr('botDefaults.substituteReplyModeQuote') },
2068
- ];
2069
- return (_jsxs("section", { className: "bd-section bd-substitute-section", children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionSubstitute') }), _jsx(ToggleRow, { checked: enabled, disabled: busy, dataAction: "toggle-substitute-mode", title: tr('botDefaults.substituteEnabled'), help: tr('botDefaults.substituteHelp'), onChange: setEnabled }), _jsx(ToggleRow, { checked: topicGroups, disabled: busy, dataAction: "toggle-substitute-topic-groups", title: tr('botDefaults.substituteTopicGroups'), help: tr('botDefaults.substituteTopicGroupsHelp'), onChange: setTopicGroups }), _jsx(ToggleRow, { checked: topicActiveSessionTrigger, disabled: busy || !topicGroups, dataAction: "toggle-substitute-topic-active", title: tr('botDefaults.substituteTopicActive'), help: tr('botDefaults.substituteTopicActiveHelp'), onChange: setTopicActiveSessionTrigger }), _jsx("div", { className: "bd-row", children: _jsxs("div", { className: "bd-field", children: [_jsx(FieldTitle, { children: tr('botDefaults.substituteDisclosure') }), _jsx(DropdownField, { dataInput: "substituteDisclosure", ariaLabel: tr('botDefaults.substituteDisclosure'), value: disclosure, disabled: busy, options: disclosureOptions, onChange: value => setDisclosure(value) })] }) }), _jsx("div", { className: "bd-row", children: _jsxs("div", { className: "bd-field", children: [_jsx(FieldTitle, { help: tr('botDefaults.substituteReplyModeHelp'), children: tr('botDefaults.substituteReplyMode') }), _jsx(DropdownField, { dataInput: "substituteReplyMode", ariaLabel: tr('botDefaults.substituteReplyMode'), value: replyMode, disabled: busy, options: replyModeOptions, onChange: value => setReplyMode(value) })] }) }), _jsx(ToggleRow, { checked: controlCard, disabled: busy, dataAction: "toggle-substitute-control-card", title: tr('botDefaults.substituteControlCard'), help: tr('botDefaults.substituteControlCardHelp'), onChange: setControlCard }), _jsx("div", { className: "bd-row", children: _jsxs("label", { children: [_jsx(FieldTitle, { help: tr('botDefaults.substituteChatsHelp'), children: tr('botDefaults.substituteChats') }), _jsx("textarea", { "data-input": "substituteChats", rows: 3, placeholder: tr('botDefaults.substituteChatsPlaceholder'), value: chatsText, disabled: busy, onChange: event => setChatsText(event.currentTarget.value) })] }) }), _jsx("div", { className: "bd-row", children: _jsxs("label", { children: [_jsx(FieldTitle, { help: tr('botDefaults.substituteExcludedChatsHelp'), children: tr('botDefaults.substituteExcludedChats') }), _jsx("textarea", { "data-input": "substituteExcludedChats", rows: 3, placeholder: tr('botDefaults.substituteExcludedChatsPlaceholder'), value: excludedChatsText, disabled: busy, onChange: event => setExcludedChatsText(event.currentTarget.value) })] }) }), _jsxs("div", { className: "bd-row bd-substitute-targets", children: [_jsx(FieldTitle, { help: tr('botDefaults.substituteTargetsHelp'), children: tr('botDefaults.substituteTargets') }), _jsxs("div", { className: "bd-substitute-target-list", "data-input": "substituteTargets", children: [targetRows.map((target, index) => (_jsxs("div", { className: "bd-substitute-target-row", children: [_jsx(DropdownField, { dataInput: `substituteTargetType-${target.key}`, className: "bd-substitute-target-type", ariaLabel: `${tr('botDefaults.substituteTargetType')} ${index + 1}`, value: target.idField, disabled: busy, options: substituteTargetIdFields.map(value => ({
2070
- value,
2071
- label: tr(`botDefaults.substituteTarget${value[0].toUpperCase()}${value.slice(1)}`),
2072
- })), onChange: idField => {
2073
- setTargetRows(rows => rows.map(row => row.key === target.key
2074
- ? { ...row, idField, idValue: row.persisted[idField] ?? '', resolution: undefined }
2075
- : row));
2076
- } }), _jsx("input", { className: "bd-substitute-target-id", type: "text", "data-input": `substituteTargetId-${target.key}`, "aria-label": `${tr('botDefaults.substituteTargetType')} ${index + 1}`, placeholder: tr('botDefaults.substituteTargetIdPlaceholder'), value: target.idValue, disabled: busy, onChange: event => {
2077
- const idValue = event.currentTarget.value;
2078
- setTargetRows(rows => rows.map(row => row.key === target.key ? { ...row, idValue, resolution: undefined } : row));
2079
- }, onBlur: () => {
2080
- if (target.idValue.trim())
2081
- void resolveTargetRow(target.key);
2082
- } }), _jsx("div", { className: "bd-substitute-target-name", children: target.resolving ? (_jsx("span", { className: "bd-substitute-target-resolving", children: tr('botDefaults.substituteResolving') })) : target.resolution?.ok === true && (target.name || target.resolution.avatarUrl) ? (_jsxs(_Fragment, { children: [target.resolution.avatarUrl ? (_jsx(Html, { html: botAvatarHtml({ name: target.resolution.name, avatarUrl: target.resolution.avatarUrl, size: 'sm' }) })) : null, _jsx("span", { className: "bd-substitute-target-name-chip", "data-chip": `substituteTargetName-${target.key}`, "aria-label": `${tr('botDefaults.substituteTargetName')} ${index + 1}`, children: target.name })] })) : target.resolution?.ok === false ? (_jsx("span", { className: "bd-substitute-target-resolution-badge", children: substituteReasonText(target.resolution.reason) })) : (_jsx("input", { type: "text", "data-input": `substituteTargetName-${target.key}`, "aria-label": `${tr('botDefaults.substituteTargetName')} ${index + 1}`, placeholder: tr('botDefaults.substituteTargetNamePlaceholder'), value: target.name, disabled: busy, onChange: event => {
2083
- const name = event.currentTarget.value;
2084
- setTargetRows(rows => rows.map(row => row.key === target.key ? { ...row, name } : row));
2085
- } })) }), _jsx("button", { type: "button", className: "bd-substitute-target-remove", "data-action": "remove-substitute-target", title: tr('botDefaults.substituteTargetRemove'), "aria-label": tr('botDefaults.substituteTargetRemove'), disabled: busy, onClick: () => {
2086
- setTargetRows(rows => {
2087
- const remaining = rows.filter(row => row.key !== target.key);
2088
- return remaining.length ? remaining : [makeTargetDraft()];
2089
- });
2090
- }, children: _jsx("span", { "aria-hidden": "true", children: "\u00D7" }) })] }, target.key))), _jsx("button", { type: "button", className: "bd-substitute-target-add", "data-action": "add-substitute-target", title: tr('botDefaults.substituteTargetAdd'), "aria-label": tr('botDefaults.substituteTargetAdd'), disabled: busy, onClick: () => setTargetRows(rows => [...rows, makeTargetDraft()]), children: _jsx("span", { "aria-hidden": "true", children: "+" }) })] })] }), _jsxs("div", { className: "actions", children: [_jsx("button", { type: "button", className: "primary", "data-action": "save-substitute-mode", disabled: busy, onClick: saveCurrent, children: tr('botDefaults.substituteSave') }), _jsx("button", { type: "button", "data-action": "off-substitute-mode", disabled: busy, onClick: () => void save({ enabled: false, targets: [] }), children: tr('botDefaults.substituteOff') }), _jsx(StatusSpan, { status: status, attr: { 'data-substitute-status': '' } })] })] }));
2091
- }
2092
- function regularGroupMode(bot) {
2093
- return bot.regularGroupReplyMode === 'chat' || bot.regularGroupReplyMode === 'new-topic' || bot.regularGroupReplyMode === 'shared'
2094
- ? bot.regularGroupReplyMode
2095
- : 'chat-topic';
2096
- }
2097
- function mentionMode(bot) {
2098
- return bot.regularGroupMentionMode === 'topic' || bot.regularGroupMentionMode === 'never' || bot.regularGroupMentionMode === 'ambient'
2099
- ? bot.regularGroupMentionMode
2100
- : 'always';
2101
- }
2102
- function SessionCapSection(props) {
2103
- const tr = useT();
2104
- const initial = typeof props.bot.maxLiveWorkers === 'number' ? props.bot.maxLiveWorkers : null;
2105
- const logical = Number.isFinite(props.bot.logicalSessionCount) ? Number(props.bot.logicalSessionCount) : 0;
2106
- const resident = Number.isFinite(props.bot.residentSessionCount) ? Number(props.bot.residentSessionCount) : 0;
2107
- const dormant = Number.isFinite(props.bot.dormantSessionCount) ? Number(props.bot.dormantSessionCount) : 0;
2108
- const [cap, setCap] = useState(initial);
2109
- const effectiveCap = cap ?? 30;
2110
- const [input, setInput] = useState(initial == null ? '' : String(initial));
2111
- const [status, setStatus] = useState(null);
2112
- const [busy, setBusy] = useState(false);
2113
- useEffect(() => {
2114
- const next = typeof props.bot.maxLiveWorkers === 'number' ? props.bot.maxLiveWorkers : null;
2115
- setCap(next);
2116
- setInput(next == null ? '' : String(next));
2117
- }, [props.bot.maxLiveWorkers]);
2118
- async function save(value) {
2119
- setStatus(null);
2120
- setBusy(true);
2121
- try {
2122
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(props.bot.larkAppId)}/max-live-workers`, { maxLiveWorkers: value });
2123
- if (res.ok && res.body.ok) {
2124
- const next = typeof res.body.maxLiveWorkers === 'number' ? res.body.maxLiveWorkers : null;
2125
- setCap(next);
2126
- setInput(next == null ? '' : String(next));
2127
- props.patchBot(props.bot.larkAppId, { maxLiveWorkers: next });
2128
- setStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
2129
- }
2130
- else {
2131
- setStatus({ text: `✗ ${responseErrorText(res)}` });
2132
- }
2133
- }
2134
- catch (e) {
2135
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
2136
- }
2137
- finally {
2138
- setBusy(false);
2139
- }
2140
- }
2141
- function saveInput() {
2142
- const parsed = positiveIntegerOrNull(input);
2143
- if (parsed === 'invalid') {
2144
- setStatus({ text: `✗ ${tr('botDefaults.maxLiveWorkersInvalid')}` });
2145
- return;
2146
- }
2147
- void save(parsed);
2148
- }
2149
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionSessionCap') }), _jsxs("div", { className: "bd-row bd-quota", children: [_jsxs("label", { children: [_jsx(FieldTitle, { help: tr('botDefaults.maxLiveWorkersHelp'), children: tr('botDefaults.maxLiveWorkers') }), _jsx("input", { type: "number", min: 1, step: 1, "data-input": "maxLiveWorkers", placeholder: tr('botDefaults.maxLiveWorkersPlaceholder'), value: input, disabled: busy, onChange: event => setInput(event.currentTarget.value) })] }), _jsx("small", { "data-session-cap-state": true, children: sessionCapStateLabel(cap, tr) }), _jsx("small", { className: "bd-help bd-session-residency", children: tr('botDefaults.maxLiveWorkersUsage', {
2150
- resident,
2151
- cap: effectiveCap,
2152
- dormant,
2153
- logical,
2154
- }) })] }), _jsxs("div", { className: "actions", children: [_jsx("button", { type: "button", className: "primary", "data-action": "save-session-cap", disabled: busy, onClick: saveInput, children: tr('botDefaults.maxLiveWorkersSave') }), _jsx("button", { type: "button", "data-action": "off-session-cap", disabled: busy, onClick: () => { setInput(''); void save(null); }, children: tr('botDefaults.maxLiveWorkersOff') }), _jsx(StatusSpan, { status: status, attr: { 'data-session-cap-status': '' } })] })] }));
2155
- }
2156
- function StartupCommandsSection(props) {
2157
- const tr = useT();
2158
- const [value, setValue] = useState(typeof props.bot.startupCommands === 'string' ? props.bot.startupCommands : '');
2159
- const [status, setStatus] = useState(null);
2160
- const [busy, setBusy] = useState(false);
2161
- useEffect(() => setValue(typeof props.bot.startupCommands === 'string' ? props.bot.startupCommands : ''), [props.bot.startupCommands]);
2162
- async function save() {
2163
- setStatus(null);
2164
- setBusy(true);
2165
- try {
2166
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(props.bot.larkAppId)}/startup-commands`, { startupCommands: value });
2167
- if (res.ok && res.body.ok) {
2168
- const next = typeof res.body.startupCommands === 'string' ? res.body.startupCommands : '';
2169
- setValue(next);
2170
- props.patchBot(props.bot.larkAppId, { startupCommands: next });
2171
- setStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
2172
- }
2173
- else {
2174
- setStatus({ text: `✗ ${responseErrorText(res)}` });
2175
- }
2176
- }
2177
- catch (e) {
2178
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
2179
- }
2180
- finally {
2181
- setBusy(false);
2182
- }
2183
- }
2184
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: _jsx(FieldTitle, { help: tr('botDefaults.startupCommandsHelp'), children: tr('botDefaults.sectionStartupCommands') }) }), _jsx("textarea", { "data-input": "startupCommands", rows: 3, placeholder: tr('botDefaults.startupCommandsPlaceholder'), value: value, disabled: busy, onChange: event => setValue(event.currentTarget.value) }), _jsxs("div", { className: "actions", children: [_jsx("button", { type: "button", className: "primary", "data-action": "save-startup-commands", disabled: busy, onClick: () => void save(), children: tr('botDefaults.startupCommandsSave') }), _jsx(StatusSpan, { status: status, attr: { 'data-startup-commands-status': '' } })] })] }));
2185
- }
2186
- // Slash 命令权限:把 /botconfig 的 customPassthroughCommands(透传给 CLI)与
2187
- // canTalkDaemonCommands(daemon 命令降到 canTalk)搬到 Dashboard 可视化编辑。
2188
- // 两者都是 stringList immediate 字段,走各自的 PUT 代理路由,空串=清除回默认。
2189
- function SlashCommandPermissionsSection(props) {
2190
- const tr = useT();
2191
- const [passthrough, setPassthrough] = useState(typeof props.bot.customPassthroughCommands === 'string' ? props.bot.customPassthroughCommands : '');
2192
- const [canTalk, setCanTalk] = useState(typeof props.bot.canTalkDaemonCommands === 'string' ? props.bot.canTalkDaemonCommands : '');
2193
- const [status, setStatus] = useState(null);
2194
- const [busy, setBusy] = useState(null);
2195
- useEffect(() => {
2196
- setPassthrough(typeof props.bot.customPassthroughCommands === 'string' ? props.bot.customPassthroughCommands : '');
2197
- }, [props.bot.customPassthroughCommands]);
2198
- // 分开两个 effect:只让「被保存的那个字段」的 prop 变化重置对应输入框,否则保存
2199
- // 一个字段触发 patchBot 重渲染会连带把另一个字段的未保存草稿一并清空。
2200
- useEffect(() => {
2201
- setCanTalk(typeof props.bot.canTalkDaemonCommands === 'string' ? props.bot.canTalkDaemonCommands : '');
2202
- }, [props.bot.canTalkDaemonCommands]);
2203
- async function savePassthrough() {
2204
- setStatus(null);
2205
- setBusy('passthrough');
2206
- try {
2207
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(props.bot.larkAppId)}/custom-passthrough`, { customPassthroughCommands: passthrough });
2208
- if (res.ok && res.body.ok) {
2209
- const next = typeof res.body.customPassthroughCommands === 'string' ? res.body.customPassthroughCommands : '';
2210
- setPassthrough(next);
2211
- props.patchBot(props.bot.larkAppId, { customPassthroughCommands: next });
2212
- setStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
2213
- }
2214
- else {
2215
- setStatus({ text: `✗ ${responseErrorText(res)}` });
2216
- }
2217
- }
2218
- catch (e) {
2219
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
2220
- }
2221
- finally {
2222
- setBusy(null);
2223
- }
2224
- }
2225
- async function saveCanTalk() {
2226
- setStatus(null);
2227
- setBusy('cantalk');
2228
- try {
2229
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(props.bot.larkAppId)}/cantalk-daemon-commands`, { canTalkDaemonCommands: canTalk });
2230
- if (res.ok && res.body.ok) {
2231
- const next = typeof res.body.canTalkDaemonCommands === 'string' ? res.body.canTalkDaemonCommands : '';
2232
- setCanTalk(next);
2233
- props.patchBot(props.bot.larkAppId, { canTalkDaemonCommands: next });
2234
- setStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
2235
- }
2236
- else {
2237
- setStatus({ text: `✗ ${responseErrorText(res)}` });
2238
- }
2239
- }
2240
- catch (e) {
2241
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
2242
- }
2243
- finally {
2244
- setBusy(null);
2245
- }
2246
- }
2247
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: _jsx(FieldTitle, { help: tr('botDefaults.sectionSlashCommandsHelp'), children: tr('botDefaults.sectionSlashCommands') }) }), _jsxs("div", { className: "bd-subsection", children: [_jsx("h4", { className: "bd-subsection-title", children: _jsx(FieldTitle, { help: tr('botDefaults.customPassthroughHelp'), children: tr('botDefaults.customPassthrough') }) }), _jsx("textarea", { "data-input": "customPassthroughCommands", rows: 2, placeholder: tr('botDefaults.customPassthroughPlaceholder'), value: passthrough, disabled: busy === 'passthrough', onChange: event => setPassthrough(event.currentTarget.value) }), _jsx("div", { className: "actions", children: _jsx("button", { type: "button", className: "primary", "data-action": "save-custom-passthrough", disabled: busy === 'passthrough', onClick: () => void savePassthrough(), children: tr('botDefaults.customPassthroughSave') }) })] }), _jsxs("div", { className: "bd-subsection", children: [_jsx("h4", { className: "bd-subsection-title", children: _jsx(FieldTitle, { help: tr('botDefaults.canTalkDaemonHelp'), children: tr('botDefaults.canTalkDaemon') }) }), _jsx("textarea", { "data-input": "canTalkDaemonCommands", rows: 2, placeholder: tr('botDefaults.canTalkDaemonPlaceholder'), value: canTalk, disabled: busy === 'cantalk', onChange: event => setCanTalk(event.currentTarget.value) }), _jsx("div", { className: "actions", children: _jsx("button", { type: "button", className: "primary", "data-action": "save-cantalk-daemon", disabled: busy === 'cantalk', onClick: () => void saveCanTalk(), children: tr('botDefaults.canTalkDaemonSave') }) })] }), _jsx(StatusSpan, { status: status, attr: { 'data-slash-commands-status': '' } })] }));
2248
- }
2249
- function LaunchShellSection(props) {
2250
- const tr = useT();
2251
- const [value, setValue] = useState(typeof props.bot.launchShell === 'string' ? props.bot.launchShell : '');
2252
- const [status, setStatus] = useState(null);
2253
- const [busy, setBusy] = useState(false);
2254
- useEffect(() => setValue(typeof props.bot.launchShell === 'string' ? props.bot.launchShell : ''), [props.bot.launchShell]);
2255
- async function save() {
2256
- setStatus(null);
2257
- setBusy(true);
2258
- try {
2259
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(props.bot.larkAppId)}/launch-shell`, { launchShell: value });
2260
- if (res.ok && res.body.ok) {
2261
- const next = typeof res.body.launchShell === 'string' ? res.body.launchShell : '';
2262
- setValue(next);
2263
- props.patchBot(props.bot.larkAppId, { launchShell: next });
2264
- setStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
2265
- }
2266
- else {
2267
- setStatus({ text: `✗ ${responseErrorText(res)}` });
2268
- }
2269
- }
2270
- catch (e) {
2271
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
2272
- }
2273
- finally {
2274
- setBusy(false);
2275
- }
2276
- }
2277
- return (_jsxs("div", { className: "bd-subsection", children: [_jsx("h4", { className: "bd-subsection-title", children: _jsx(FieldTitle, { help: tr('botDefaults.launchShellHelp'), children: tr('botDefaults.sectionLaunchShell') }) }), _jsx("input", { type: "text", "data-input": "launchShell", placeholder: tr('botDefaults.launchShellPlaceholder'), value: value, disabled: busy, onChange: event => setValue(event.currentTarget.value) }), _jsxs("div", { className: "actions", children: [_jsx("button", { type: "button", className: "primary", "data-action": "save-launch-shell", disabled: busy, onClick: () => void save(), children: tr('botDefaults.launchShellSave') }), _jsx(StatusSpan, { status: status, attr: { 'data-launch-shell-status': '' } })] })] }));
2278
- }
2279
- function EnvSection(props) {
2280
- const tr = useT();
2281
- const [value, setValue] = useState(typeof props.bot.env === 'string' ? props.bot.env : '');
2282
- const [status, setStatus] = useState(null);
2283
- const [busy, setBusy] = useState(false);
2284
- useEffect(() => setValue(typeof props.bot.env === 'string' ? props.bot.env : ''), [props.bot.env]);
2285
- async function save() {
2286
- setStatus(null);
2287
- setBusy(true);
2288
- try {
2289
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(props.bot.larkAppId)}/env`, { env: value });
2290
- if (res.ok && res.body.ok) {
2291
- const next = typeof res.body.env === 'string' ? res.body.env : '';
2292
- setValue(next);
2293
- props.patchBot(props.bot.larkAppId, { env: next });
2294
- setStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
2295
- }
2296
- else {
2297
- setStatus({ text: `✗ ${responseErrorText(res)}` });
2298
- }
2299
- }
2300
- catch (e) {
2301
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
2302
- }
2303
- finally {
2304
- setBusy(false);
2305
- }
2306
- }
2307
- return (_jsxs("div", { className: "bd-subsection", children: [_jsx("h4", { className: "bd-subsection-title", children: _jsx(FieldTitle, { help: tr('botDefaults.envHelp'), children: tr('botDefaults.sectionEnv') }) }), _jsx("textarea", { "data-input": "env", rows: 5, placeholder: tr('botDefaults.envPlaceholder'), value: value, disabled: busy, onChange: event => setValue(event.currentTarget.value) }), _jsxs("div", { className: "actions", children: [_jsx("button", { type: "button", className: "primary", "data-action": "save-env", disabled: busy, onClick: () => void save(), children: tr('botDefaults.envSave') }), _jsx(StatusSpan, { status: status, attr: { 'data-env-status': '' } })] })] }));
2308
- }
2309
- /** riff UI 建议主动选择的模型(服务端另有隐藏降级备胎,不在此列)。 */
2310
- const RIFF_MODEL_SUGGESTIONS = ['gpt-5.5', 'gpt-5.6-sol', 'gpt-5.6-terra', 'gpt-5.6-luna', 'gpt-5.4', 'gpt-5.4-pro'];
2311
- /** codex 思考等级档位(与 riff 服务端对齐);'' = 跟随 riff 默认(medium)。 */
2312
- const RIFF_REASONING_EFFORT_OPTIONS = ['', 'low', 'medium', 'high', 'xhigh'];
2313
- /** riff task-execute 的 sandboxCluster;缺省行为与服务端一致,回落 BOE。 */
2314
- const RIFF_SANDBOX_CLUSTER_OPTIONS = ['boe', 'cn'];
2315
- function RiffSection(props) {
2316
- const tr = useT();
2317
- const riff = props.bot.riff && typeof props.bot.riff === 'object' ? props.bot.riff : {};
2318
- const [baseUrl, setBaseUrl] = useState(typeof riff.baseUrl === 'string' ? riff.baseUrl : '');
2319
- const [sandboxCluster, setSandboxCluster] = useState(riff.sandboxCluster === 'cn' ? 'cn' : 'boe');
2320
- const [model, setModel] = useState(typeof riff.model === 'string' ? riff.model : '');
2321
- const [reasoningEffort, setReasoningEffort] = useState(typeof riff.reasoningEffort === 'string' ? riff.reasoningEffort : '');
2322
- const [jwtEnv, setJwtEnv] = useState(typeof riff.jwtEnv === 'string' ? riff.jwtEnv : '');
2323
- const [systemPrompt, setSystemPrompt] = useState(typeof riff.systemPrompt === 'string' ? riff.systemPrompt : '');
2324
- const [setupCommands, setSetupCommands] = useState(Array.isArray(riff.setupCommands) ? riff.setupCommands.join('\n') : '');
2325
- const [status, setStatus] = useState(null);
2326
- const [busy, setBusy] = useState(false);
2327
- useEffect(() => {
2328
- const r = props.bot.riff && typeof props.bot.riff === 'object' ? props.bot.riff : {};
2329
- setBaseUrl(typeof r.baseUrl === 'string' ? r.baseUrl : '');
2330
- setSandboxCluster(r.sandboxCluster === 'cn' ? 'cn' : 'boe');
2331
- setModel(typeof r.model === 'string' ? r.model : '');
2332
- setReasoningEffort(typeof r.reasoningEffort === 'string' ? r.reasoningEffort : '');
2333
- setJwtEnv(typeof r.jwtEnv === 'string' ? r.jwtEnv : '');
2334
- setSystemPrompt(typeof r.systemPrompt === 'string' ? r.systemPrompt : '');
2335
- setSetupCommands(Array.isArray(r.setupCommands) ? r.setupCommands.join('\n') : '');
2336
- }, [props.bot.riff]);
2337
- async function save() {
2338
- setStatus(null);
2339
- setBusy(true);
2340
- try {
2341
- const config = {};
2342
- if (baseUrl.trim())
2343
- config.baseUrl = baseUrl.trim();
2344
- config.sandboxCluster = sandboxCluster;
2345
- if (model.trim())
2346
- config.model = model.trim();
2347
- if (reasoningEffort)
2348
- config.reasoningEffort = reasoningEffort;
2349
- if (jwtEnv.trim())
2350
- config.jwtEnv = jwtEnv.trim();
2351
- if (systemPrompt.trim())
2352
- config.systemPrompt = systemPrompt.trim();
2353
- if (setupCommands.trim()) {
2354
- config.setupCommands = setupCommands.split('\n').map(s => s.trim()).filter(Boolean);
2355
- }
2356
- const json = Object.keys(config).length ? JSON.stringify(config) : '';
2357
- // Save order matters: riff config FIRST, agent switch AFTER. PUT /agent
2358
- // flips cliId/backendType AND closes CLI-mismatched sessions immediately,
2359
- // so doing it first would leave a half-configured riff bot (and killed
2360
- // sessions) when the /riff write fails. A saved-but-unused riff config
2361
- // from the reverse failure mode is harmless.
2362
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(props.bot.larkAppId)}/riff`, { riff: json });
2363
- if (res.ok && res.body.ok) {
2364
- const next = typeof res.body.riff === 'string' && res.body.riff ? JSON.parse(res.body.riff) : null;
2365
- props.patchBot(props.bot.larkAppId, { riff: next });
2366
- if (props.persistCliSelection && !(await props.persistCliSelection())) {
2367
- setStatus({ text: `✗ ${tr('botDefaults.riffCliPersistFailed')}` });
2368
- return;
2369
- }
2370
- setStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
2371
- }
2372
- else {
2373
- setStatus({ text: `✗ ${responseErrorText(res)}` });
2374
- }
2375
- }
2376
- catch (e) {
2377
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
2378
- }
2379
- finally {
2380
- setBusy(false);
2381
- }
2382
- }
2383
- return (_jsxs("div", { className: "bd-subsection", children: [_jsx("h4", { className: "bd-subsection-title", children: _jsx(FieldTitle, { help: tr('botDefaults.riffHelp'), children: tr('botDefaults.sectionRiff') }) }), _jsx("div", { className: "bd-row", children: _jsxs("label", { children: [_jsx("span", { children: tr('botDefaults.riffBaseUrl') }), _jsx("input", { type: "text", "data-input": "riff-base-url", placeholder: tr('botDefaults.riffBaseUrlPlaceholder'), value: baseUrl, disabled: busy, onChange: e => setBaseUrl(e.currentTarget.value) })] }) }), _jsx("div", { className: "bd-row", children: _jsxs("div", { className: "bd-field", children: [_jsx("span", { children: _jsx(FieldTitle, { help: tr('botDefaults.riffSandboxClusterHelp'), children: tr('botDefaults.riffSandboxCluster') }) }), _jsx(DropdownField, { dataInput: "riff-sandbox-cluster", ariaLabel: tr('botDefaults.riffSandboxCluster'), value: sandboxCluster, disabled: busy, options: RIFF_SANDBOX_CLUSTER_OPTIONS.map(value => ({ value, label: value.toUpperCase() })), onChange: next => setSandboxCluster(next) })] }) }), _jsx("div", { className: "bd-row", children: _jsxs("label", { children: [_jsx("span", { children: _jsx(FieldTitle, { help: tr('botDefaults.riffModelHelp'), children: tr('botDefaults.riffModel') }) }), _jsx("input", { type: "text", "data-input": "riff-model", list: `riff-model-suggestions-${props.bot.larkAppId}`, placeholder: tr('botDefaults.riffModelPlaceholder'), value: model, disabled: busy, onChange: e => setModel(e.currentTarget.value) }), _jsx("datalist", { id: `riff-model-suggestions-${props.bot.larkAppId}`, children: RIFF_MODEL_SUGGESTIONS.map(item => _jsx("option", { value: item }, item)) })] }) }), _jsx("div", { className: "bd-row", children: _jsxs("div", { className: "bd-field", children: [_jsx("span", { children: _jsx(FieldTitle, { help: tr('botDefaults.riffReasoningEffortHelp'), children: tr('botDefaults.riffReasoningEffort') }) }), _jsx(DropdownField, { dataInput: "riff-reasoning-effort", ariaLabel: tr('botDefaults.riffReasoningEffort'), value: reasoningEffort, disabled: busy, options: RIFF_REASONING_EFFORT_OPTIONS.map(v => ({ value: v, label: v === '' ? tr('botDefaults.riffReasoningEffortDefault') : v })), onChange: next => setReasoningEffort(next) })] }) }), _jsx("div", { className: "bd-row", children: _jsxs("label", { children: [_jsx("span", { children: _jsx(FieldTitle, { help: tr('botDefaults.riffJwtEnvHelp'), children: tr('botDefaults.riffJwtEnv') }) }), _jsx("input", { type: "text", "data-input": "riff-jwt-env", placeholder: tr('botDefaults.riffJwtEnvPlaceholder'), value: jwtEnv, disabled: busy, onChange: e => setJwtEnv(e.currentTarget.value) })] }) }), _jsx("div", { className: "bd-row", children: _jsxs("label", { children: [_jsx("span", { children: tr('botDefaults.riffSystemPrompt') }), _jsx("textarea", { "data-input": "riff-system-prompt", placeholder: tr('botDefaults.riffSystemPromptPlaceholder'), value: systemPrompt, disabled: busy, onChange: e => setSystemPrompt(e.currentTarget.value), rows: 4 })] }) }), _jsx("div", { className: "bd-row", children: _jsxs("label", { children: [_jsx("span", { children: tr('botDefaults.riffSetupCommands') }), _jsx("textarea", { "data-input": "riff-setup-commands", placeholder: tr('botDefaults.riffSetupCommandsPlaceholder'), value: setupCommands, disabled: busy, onChange: e => setSetupCommands(e.currentTarget.value), rows: 3 })] }) }), _jsxs("div", { className: "actions", children: [_jsx("button", { type: "button", className: "primary", "data-action": "save-riff", disabled: busy, onClick: () => void save(), children: tr('botDefaults.riffSave') }), _jsx(StatusSpan, { status: status, attr: { 'data-riff-status': '' } })] })] }));
2384
- }
2385
- function BrandSection(props) {
2386
- const tr = useT();
2387
- const initial = props.bot.brandLabel ?? null;
2388
- const [brand, setBrand] = useState(initial);
2389
- const [input, setInput] = useState(initial ?? '');
2390
- const [status, setStatus] = useState(null);
2391
- const [busy, setBusy] = useState(false);
2392
- useEffect(() => {
2393
- const next = props.bot.brandLabel ?? null;
2394
- setBrand(next);
2395
- setInput(next ?? '');
2396
- }, [props.bot.brandLabel]);
2397
- async function save(nextBrand) {
2398
- setStatus(null);
2399
- setBusy(true);
2400
- try {
2401
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(props.bot.larkAppId)}/brand-label`, { brandLabel: nextBrand });
2402
- if (res.ok && res.body.ok) {
2403
- const next = res.body.brandLabel ?? null;
2404
- setBrand(next);
2405
- setInput(next ?? '');
2406
- props.patchBot(props.bot.larkAppId, { brandLabel: next });
2407
- setStatus({ text: '✓', ok: true });
2408
- }
2409
- else {
2410
- setStatus({ text: `✗ ${responseErrorText(res)}` });
2411
- }
2412
- }
2413
- catch (e) {
2414
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
2415
- }
2416
- finally {
2417
- setBusy(false);
2418
- }
2419
- }
2420
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionBrand') }), _jsxs("div", { className: "bd-row bd-brand", children: [_jsxs("label", { children: [_jsx(FieldTitle, { help: tr('botDefaults.brandLabelHelp'), children: tr('botDefaults.brandLabel') }), _jsx("input", { type: "text", "data-input": "brandLabel", placeholder: tr('botDefaults.brandLabelPlaceholder'), value: input, disabled: busy, onChange: event => setInput(event.currentTarget.value) })] }), _jsx("small", { "data-brand-state": true, children: brandStateLabel(brand, tr) })] }), _jsxs("div", { className: "actions", children: [_jsx("button", { type: "button", className: "primary", "data-action": "save-brand", disabled: busy, onClick: () => void save(input), children: tr('botDefaults.brandSave') }), _jsx("button", { type: "button", "data-action": "reset-brand", disabled: busy, onClick: () => void save(null), children: tr('botDefaults.brandReset') }), _jsx(StatusSpan, { status: status, attr: { 'data-brand-status': '' } })] })] }));
2421
- }
2422
- function GrantSection(props) {
2423
- const tr = useT();
2424
- const [autoCard, setAutoCard] = useState(props.bot.autoGrantRequestCards !== false);
2425
- const [restrict, setRestrict] = useState(props.bot.restrictGrantCommands === true);
2426
- const [quota, setQuota] = useState(typeof props.bot.messageQuotaDefaultLimit === 'number' ? props.bot.messageQuotaDefaultLimit : null);
2427
- const [quotaInput, setQuotaInput] = useState(typeof props.bot.messageQuotaDefaultLimit === 'number' ? String(props.bot.messageQuotaDefaultLimit) : '');
2428
- const [status, setStatus] = useState(null);
2429
- const [busy, setBusy] = useState(null);
2430
- useEffect(() => {
2431
- setAutoCard(props.bot.autoGrantRequestCards !== false);
2432
- setRestrict(props.bot.restrictGrantCommands === true);
2433
- const next = typeof props.bot.messageQuotaDefaultLimit === 'number' ? props.bot.messageQuotaDefaultLimit : null;
2434
- setQuota(next);
2435
- setQuotaInput(next == null ? '' : String(next));
2436
- }, [props.bot.autoGrantRequestCards, props.bot.messageQuotaDefaultLimit, props.bot.restrictGrantCommands]);
2437
- async function savePatch(patch, key) {
2438
- setBusy(key);
2439
- setStatus(null);
2440
- try {
2441
- const res = await sendJson('PUT', `/api/bots/${encodeURIComponent(props.bot.larkAppId)}/grant-prefs`, patch);
2442
- if (res.ok && res.body.ok) {
2443
- const nextQuota = typeof res.body.messageQuotaDefaultLimit === 'number' ? res.body.messageQuotaDefaultLimit : null;
2444
- setAutoCard(res.body.autoGrantRequestCards !== false);
2445
- setRestrict(res.body.restrictGrantCommands === true);
2446
- setQuota(nextQuota);
2447
- if ('messageQuotaDefaultLimit' in patch)
2448
- setQuotaInput(nextQuota == null ? '' : String(nextQuota));
2449
- props.patchBot(props.bot.larkAppId, {
2450
- autoGrantRequestCards: res.body.autoGrantRequestCards !== false,
2451
- restrictGrantCommands: res.body.restrictGrantCommands === true,
2452
- messageQuotaDefaultLimit: nextQuota,
2453
- });
2454
- setStatus({ text: `✓ ${tr('botDefaults.cardPrefSaved')}`, ok: true });
2455
- }
2456
- else {
2457
- setStatus({ text: `✗ ${responseErrorText(res)}` });
2458
- }
2459
- }
2460
- catch (e) {
2461
- setStatus({ text: `✗ ${caughtErrorText(e)}` });
2462
- }
2463
- finally {
2464
- setBusy(null);
2465
- }
2466
- }
2467
- function saveQuota() {
2468
- const parsed = positiveIntegerOrNull(quotaInput);
2469
- if (parsed === 'invalid') {
2470
- setStatus({ text: `✗ ${tr('botDefaults.quotaInvalid')}` });
2471
- return;
2472
- }
2473
- void savePatch({ messageQuotaDefaultLimit: parsed }, 'quota');
2474
- }
2475
- return (_jsxs("section", { className: "bd-section", children: [_jsx("h3", { className: "bd-section-title", children: tr('botDefaults.sectionGrant') }), _jsxs("div", { className: "bd-toggle-grid bd-grant-toggle-grid", children: [_jsx(ToggleRow, { checked: autoCard, disabled: busy === 'autoGrant', dataAction: "toggle-auto-grant-card", title: tr('botDefaults.autoGrantCard'), help: tr('botDefaults.autoGrantCardHelp'), onChange: checked => {
2476
- setAutoCard(checked);
2477
- void savePatch({ autoGrantRequestCards: checked }, 'autoGrant');
2478
- } }), _jsx(ToggleRow, { checked: restrict, disabled: busy === 'restrict', dataAction: "toggle-restrict-grant", title: tr('botDefaults.restrictGrant'), help: tr('botDefaults.restrictGrantHelp'), onChange: checked => {
2479
- setRestrict(checked);
2480
- void savePatch({ restrictGrantCommands: checked }, 'restrict');
2481
- } })] }), _jsxs("div", { className: "bd-row bd-quota", children: [_jsxs("label", { children: [_jsx(FieldTitle, { help: tr('botDefaults.quotaHelp'), children: tr('botDefaults.quotaDefault') }), _jsx("input", { type: "number", min: 1, step: 1, "data-input": "quotaLimit", placeholder: tr('botDefaults.quotaPlaceholder'), value: quotaInput, disabled: busy === 'quota', onChange: event => setQuotaInput(event.currentTarget.value) })] }), _jsx("small", { "data-quota-state": true, children: quotaStateLabel(quota, tr) })] }), _jsxs("div", { className: "actions", children: [_jsx("button", { type: "button", className: "primary", "data-action": "save-quota", disabled: busy === 'quota', onClick: saveQuota, children: tr('botDefaults.quotaSave') }), _jsx(StatusSpan, { status: status, attr: { 'data-grant-status': '' } })] })] }));
2482
- }
2483
- export function renderBotDefaultsPage(root) {
2484
- return mountReactPage(root, _jsx(BotDefaultsPage, {}));
2485
- }
2486
- //# sourceMappingURL=bot-defaults-page.js.map