botmux 3.13.0 → 3.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (541) hide show
  1. package/README.en.md +1 -1
  2. package/README.md +25 -1
  3. package/dist/.runtime-build-id +1 -1
  4. package/dist/adapters/adopt-route.d.ts +58 -0
  5. package/dist/adapters/adopt-route.d.ts.map +1 -1
  6. package/dist/adapters/adopt-route.js +136 -0
  7. package/dist/adapters/adopt-route.js.map +1 -1
  8. package/dist/adapters/backend/capabilities.js +1 -1
  9. package/dist/adapters/backend/capabilities.js.map +1 -1
  10. package/dist/adapters/backend/herdr-backend.d.ts +1 -1
  11. package/dist/adapters/backend/herdr-backend.d.ts.map +1 -1
  12. package/dist/adapters/backend/herdr-backend.js +2 -1
  13. package/dist/adapters/backend/herdr-backend.js.map +1 -1
  14. package/dist/adapters/backend/riff-backend.d.ts +97 -0
  15. package/dist/adapters/backend/riff-backend.d.ts.map +1 -1
  16. package/dist/adapters/backend/riff-backend.js +380 -66
  17. package/dist/adapters/backend/riff-backend.js.map +1 -1
  18. package/dist/adapters/backend/sandbox.d.ts +8 -0
  19. package/dist/adapters/backend/sandbox.d.ts.map +1 -1
  20. package/dist/adapters/backend/sandbox.js +16 -2
  21. package/dist/adapters/backend/sandbox.js.map +1 -1
  22. package/dist/adapters/backend/tmux-backend.d.ts +12 -13
  23. package/dist/adapters/backend/tmux-backend.d.ts.map +1 -1
  24. package/dist/adapters/backend/tmux-backend.js +113 -53
  25. package/dist/adapters/backend/tmux-backend.js.map +1 -1
  26. package/dist/adapters/backend/tmux-pipe-backend.d.ts +34 -3
  27. package/dist/adapters/backend/tmux-pipe-backend.d.ts.map +1 -1
  28. package/dist/adapters/backend/tmux-pipe-backend.js +72 -9
  29. package/dist/adapters/backend/tmux-pipe-backend.js.map +1 -1
  30. package/dist/adapters/backend/types.d.ts +7 -0
  31. package/dist/adapters/backend/types.d.ts.map +1 -1
  32. package/dist/adapters/backend/types.js.map +1 -1
  33. package/dist/adapters/backend/zellij-backend.d.ts +2 -3
  34. package/dist/adapters/backend/zellij-backend.d.ts.map +1 -1
  35. package/dist/adapters/backend/zellij-backend.js +6 -13
  36. package/dist/adapters/backend/zellij-backend.js.map +1 -1
  37. package/dist/adapters/backend/zellij-observe-backend.d.ts +2 -1
  38. package/dist/adapters/backend/zellij-observe-backend.d.ts.map +1 -1
  39. package/dist/adapters/backend/zellij-observe-backend.js +6 -3
  40. package/dist/adapters/backend/zellij-observe-backend.js.map +1 -1
  41. package/dist/adapters/backend/zmx-backend.d.ts.map +1 -1
  42. package/dist/adapters/backend/zmx-backend.js +40 -18
  43. package/dist/adapters/backend/zmx-backend.js.map +1 -1
  44. package/dist/adapters/cli/claude-code.d.ts.map +1 -1
  45. package/dist/adapters/cli/claude-code.js +12 -1
  46. package/dist/adapters/cli/claude-code.js.map +1 -1
  47. package/dist/adapters/cli/codex.d.ts.map +1 -1
  48. package/dist/adapters/cli/codex.js +3 -2
  49. package/dist/adapters/cli/codex.js.map +1 -1
  50. package/dist/adapters/cli/cursor.d.ts.map +1 -1
  51. package/dist/adapters/cli/cursor.js +13 -1
  52. package/dist/adapters/cli/cursor.js.map +1 -1
  53. package/dist/adapters/cli/dsh.d.ts +4 -0
  54. package/dist/adapters/cli/dsh.d.ts.map +1 -0
  55. package/dist/adapters/cli/dsh.js +100 -0
  56. package/dist/adapters/cli/dsh.js.map +1 -0
  57. package/dist/adapters/cli/fs-policy.d.ts.map +1 -1
  58. package/dist/adapters/cli/fs-policy.js +5 -0
  59. package/dist/adapters/cli/fs-policy.js.map +1 -1
  60. package/dist/adapters/cli/opencode.d.ts +52 -1
  61. package/dist/adapters/cli/opencode.d.ts.map +1 -1
  62. package/dist/adapters/cli/opencode.js +117 -76
  63. package/dist/adapters/cli/opencode.js.map +1 -1
  64. package/dist/adapters/cli/opencode2.d.ts +4 -0
  65. package/dist/adapters/cli/opencode2.d.ts.map +1 -0
  66. package/dist/adapters/cli/opencode2.js +137 -0
  67. package/dist/adapters/cli/opencode2.js.map +1 -0
  68. package/dist/adapters/cli/pi.d.ts +14 -1
  69. package/dist/adapters/cli/pi.d.ts.map +1 -1
  70. package/dist/adapters/cli/pi.js +21 -1
  71. package/dist/adapters/cli/pi.js.map +1 -1
  72. package/dist/adapters/cli/read-isolation.d.ts +1 -1
  73. package/dist/adapters/cli/read-isolation.d.ts.map +1 -1
  74. package/dist/adapters/cli/read-isolation.js +5 -2
  75. package/dist/adapters/cli/read-isolation.js.map +1 -1
  76. package/dist/adapters/cli/registry.d.ts +7 -1
  77. package/dist/adapters/cli/registry.d.ts.map +1 -1
  78. package/dist/adapters/cli/registry.js +19 -6
  79. package/dist/adapters/cli/registry.js.map +1 -1
  80. package/dist/adapters/cli/shared-hints.d.ts.map +1 -1
  81. package/dist/adapters/cli/shared-hints.js +41 -23
  82. package/dist/adapters/cli/shared-hints.js.map +1 -1
  83. package/dist/adapters/cli/types.d.ts +28 -3
  84. package/dist/adapters/cli/types.d.ts.map +1 -1
  85. package/dist/adapters/hook-command.d.ts +8 -0
  86. package/dist/adapters/hook-command.d.ts.map +1 -1
  87. package/dist/adapters/hook-command.js +11 -0
  88. package/dist/adapters/hook-command.js.map +1 -1
  89. package/dist/adapters/hook-installer.d.ts +16 -1
  90. package/dist/adapters/hook-installer.d.ts.map +1 -1
  91. package/dist/adapters/hook-installer.js +232 -2
  92. package/dist/adapters/hook-installer.js.map +1 -1
  93. package/dist/bot-registry.d.ts +138 -8
  94. package/dist/bot-registry.d.ts.map +1 -1
  95. package/dist/bot-registry.js +76 -4
  96. package/dist/bot-registry.js.map +1 -1
  97. package/dist/cli/pm2-start-transaction.d.ts +14 -0
  98. package/dist/cli/pm2-start-transaction.d.ts.map +1 -1
  99. package/dist/cli/pm2-start-transaction.js +25 -9
  100. package/dist/cli/pm2-start-transaction.js.map +1 -1
  101. package/dist/cli/restart-failure-notification.d.ts +54 -0
  102. package/dist/cli/restart-failure-notification.d.ts.map +1 -0
  103. package/dist/cli/restart-failure-notification.js +142 -0
  104. package/dist/cli/restart-failure-notification.js.map +1 -0
  105. package/dist/cli/restart-failure-owner.d.ts +20 -0
  106. package/dist/cli/restart-failure-owner.d.ts.map +1 -0
  107. package/dist/cli/restart-failure-owner.js +27 -0
  108. package/dist/cli/restart-failure-owner.js.map +1 -0
  109. package/dist/cli/restart-shutdown-preflight.d.ts +24 -0
  110. package/dist/cli/restart-shutdown-preflight.d.ts.map +1 -0
  111. package/dist/cli/restart-shutdown-preflight.js +105 -0
  112. package/dist/cli/restart-shutdown-preflight.js.map +1 -0
  113. package/dist/cli/send-dispatch.d.ts +26 -0
  114. package/dist/cli/send-dispatch.d.ts.map +1 -1
  115. package/dist/cli/send-dispatch.js +30 -0
  116. package/dist/cli/send-dispatch.js.map +1 -1
  117. package/dist/cli.d.ts +4 -1
  118. package/dist/cli.d.ts.map +1 -1
  119. package/dist/cli.js +673 -402
  120. package/dist/cli.js.map +1 -1
  121. package/dist/codex-app-runner.js +38 -15
  122. package/dist/codex-app-runner.js.map +1 -1
  123. package/dist/codex-rpc-lifecycle.d.ts +14 -2
  124. package/dist/codex-rpc-lifecycle.d.ts.map +1 -1
  125. package/dist/codex-rpc-lifecycle.js +13 -3
  126. package/dist/codex-rpc-lifecycle.js.map +1 -1
  127. package/dist/core/ask-broker.d.ts +3 -0
  128. package/dist/core/ask-broker.d.ts.map +1 -1
  129. package/dist/core/ask-broker.js +29 -7
  130. package/dist/core/ask-broker.js.map +1 -1
  131. package/dist/core/ask-hook/registry.d.ts.map +1 -1
  132. package/dist/core/ask-hook/registry.js +4 -0
  133. package/dist/core/ask-hook/registry.js.map +1 -1
  134. package/dist/core/ask-types.d.ts +5 -1
  135. package/dist/core/ask-types.d.ts.map +1 -1
  136. package/dist/core/ask-types.js.map +1 -1
  137. package/dist/core/browser-restart.d.ts +112 -0
  138. package/dist/core/browser-restart.d.ts.map +1 -0
  139. package/dist/core/browser-restart.js +233 -0
  140. package/dist/core/browser-restart.js.map +1 -0
  141. package/dist/core/command-discovery.d.ts.map +1 -1
  142. package/dist/core/command-discovery.js +4 -1
  143. package/dist/core/command-discovery.js.map +1 -1
  144. package/dist/core/command-handler.d.ts +19 -11
  145. package/dist/core/command-handler.d.ts.map +1 -1
  146. package/dist/core/command-handler.js +237 -43
  147. package/dist/core/command-handler.js.map +1 -1
  148. package/dist/core/current-turn-provenance.d.ts.map +1 -1
  149. package/dist/core/current-turn-provenance.js +7 -27
  150. package/dist/core/current-turn-provenance.js.map +1 -1
  151. package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
  152. package/dist/core/dashboard-ipc-server.js +359 -11
  153. package/dist/core/dashboard-ipc-server.js.map +1 -1
  154. package/dist/core/dispatch-registry.d.ts.map +1 -1
  155. package/dist/core/dispatch-registry.js +6 -0
  156. package/dist/core/dispatch-registry.js.map +1 -1
  157. package/dist/core/dispatch-report-binding.d.ts +31 -0
  158. package/dist/core/dispatch-report-binding.d.ts.map +1 -0
  159. package/dist/core/dispatch-report-binding.js +88 -0
  160. package/dist/core/dispatch-report-binding.js.map +1 -0
  161. package/dist/core/doc-comment-prompt.d.ts +2 -0
  162. package/dist/core/doc-comment-prompt.d.ts.map +1 -1
  163. package/dist/core/doc-comment-prompt.js +6 -0
  164. package/dist/core/doc-comment-prompt.js.map +1 -1
  165. package/dist/core/host-overload-alert.d.ts +25 -1
  166. package/dist/core/host-overload-alert.d.ts.map +1 -1
  167. package/dist/core/host-overload-alert.js +69 -8
  168. package/dist/core/host-overload-alert.js.map +1 -1
  169. package/dist/core/local-terminal-opener.js +1 -1
  170. package/dist/core/local-terminal-opener.js.map +1 -1
  171. package/dist/core/managed-origin-capability.d.ts +7 -6
  172. package/dist/core/managed-origin-capability.d.ts.map +1 -1
  173. package/dist/core/managed-origin-capability.js +32 -1
  174. package/dist/core/managed-origin-capability.js.map +1 -1
  175. package/dist/core/passthrough-commands.d.ts.map +1 -1
  176. package/dist/core/passthrough-commands.js +3 -2
  177. package/dist/core/passthrough-commands.js.map +1 -1
  178. package/dist/core/plugins/materializer.d.ts.map +1 -1
  179. package/dist/core/plugins/materializer.js +1 -0
  180. package/dist/core/plugins/materializer.js.map +1 -1
  181. package/dist/core/producer-quiescence.d.ts +70 -0
  182. package/dist/core/producer-quiescence.d.ts.map +1 -0
  183. package/dist/core/producer-quiescence.js +90 -0
  184. package/dist/core/producer-quiescence.js.map +1 -0
  185. package/dist/core/raw-command-write-options.d.ts +10 -0
  186. package/dist/core/raw-command-write-options.d.ts.map +1 -0
  187. package/dist/core/raw-command-write-options.js +23 -0
  188. package/dist/core/raw-command-write-options.js.map +1 -0
  189. package/dist/core/raw-command-writer.d.ts +4 -0
  190. package/dist/core/raw-command-writer.d.ts.map +1 -1
  191. package/dist/core/raw-command-writer.js +15 -6
  192. package/dist/core/raw-command-writer.js.map +1 -1
  193. package/dist/core/reply-target.d.ts +11 -0
  194. package/dist/core/reply-target.d.ts.map +1 -1
  195. package/dist/core/reply-target.js +22 -7
  196. package/dist/core/reply-target.js.map +1 -1
  197. package/dist/core/report-session-relay.d.ts +53 -0
  198. package/dist/core/report-session-relay.d.ts.map +1 -0
  199. package/dist/core/report-session-relay.js +116 -0
  200. package/dist/core/report-session-relay.js.map +1 -0
  201. package/dist/core/session-discovery.d.ts +5 -0
  202. package/dist/core/session-discovery.d.ts.map +1 -1
  203. package/dist/core/session-discovery.js +13 -0
  204. package/dist/core/session-discovery.js.map +1 -1
  205. package/dist/core/session-group-birth.d.ts +7 -0
  206. package/dist/core/session-group-birth.d.ts.map +1 -0
  207. package/dist/core/session-group-birth.js +145 -0
  208. package/dist/core/session-group-birth.js.map +1 -0
  209. package/dist/core/session-manager.d.ts +16 -21
  210. package/dist/core/session-manager.d.ts.map +1 -1
  211. package/dist/core/session-manager.js +140 -21
  212. package/dist/core/session-manager.js.map +1 -1
  213. package/dist/core/skills/frontmatter.d.ts.map +1 -1
  214. package/dist/core/skills/frontmatter.js +6 -1
  215. package/dist/core/skills/frontmatter.js.map +1 -1
  216. package/dist/core/trigger-session.d.ts.map +1 -1
  217. package/dist/core/trigger-session.js +18 -3
  218. package/dist/core/trigger-session.js.map +1 -1
  219. package/dist/core/types.d.ts +18 -0
  220. package/dist/core/types.d.ts.map +1 -1
  221. package/dist/core/types.js.map +1 -1
  222. package/dist/core/worker-pool.d.ts +63 -11
  223. package/dist/core/worker-pool.d.ts.map +1 -1
  224. package/dist/core/worker-pool.js +262 -21
  225. package/dist/core/worker-pool.js.map +1 -1
  226. package/dist/daemon.d.ts +33 -0
  227. package/dist/daemon.d.ts.map +1 -1
  228. package/dist/daemon.js +904 -147
  229. package/dist/daemon.js.map +1 -1
  230. package/dist/dashboard/auth.d.ts +20 -0
  231. package/dist/dashboard/auth.d.ts.map +1 -1
  232. package/dist/dashboard/auth.js +86 -1
  233. package/dist/dashboard/auth.js.map +1 -1
  234. package/dist/dashboard/bot-payload.d.ts +9 -0
  235. package/dist/dashboard/bot-payload.d.ts.map +1 -1
  236. package/dist/dashboard/bot-payload.js +5 -1
  237. package/dist/dashboard/bot-payload.js.map +1 -1
  238. package/dist/dashboard/federation-spoke-api.d.ts.map +1 -1
  239. package/dist/dashboard/federation-spoke-api.js +27 -3
  240. package/dist/dashboard/federation-spoke-api.js.map +1 -1
  241. package/dist/dashboard/feedback-analytics-api.d.ts +6 -0
  242. package/dist/dashboard/feedback-analytics-api.d.ts.map +1 -0
  243. package/dist/dashboard/feedback-analytics-api.js +39 -0
  244. package/dist/dashboard/feedback-analytics-api.js.map +1 -0
  245. package/dist/dashboard/session-action-timeout.d.ts +3 -0
  246. package/dist/dashboard/session-action-timeout.d.ts.map +1 -0
  247. package/dist/dashboard/session-action-timeout.js +12 -0
  248. package/dist/dashboard/session-action-timeout.js.map +1 -0
  249. package/dist/dashboard/vc-consumer-profiles-api.d.ts +9 -3
  250. package/dist/dashboard/vc-consumer-profiles-api.d.ts.map +1 -1
  251. package/dist/dashboard/vc-consumer-profiles-api.js +2 -1
  252. package/dist/dashboard/vc-consumer-profiles-api.js.map +1 -1
  253. package/dist/dashboard/web/app.d.ts.map +1 -1
  254. package/dist/dashboard/web/app.js +48 -5
  255. package/dist/dashboard/web/app.js.map +1 -1
  256. package/dist/dashboard/web/bot-defaults-page.d.ts +11 -0
  257. package/dist/dashboard/web/bot-defaults-page.d.ts.map +1 -1
  258. package/dist/dashboard/web/bot-defaults-page.js +368 -36
  259. package/dist/dashboard/web/bot-defaults-page.js.map +1 -1
  260. package/dist/dashboard/web/bot-defaults.d.ts +8 -0
  261. package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
  262. package/dist/dashboard/web/bot-defaults.js.map +1 -1
  263. package/dist/dashboard/web/dashboard-routes.d.ts.map +1 -1
  264. package/dist/dashboard/web/dashboard-routes.js +1 -0
  265. package/dist/dashboard/web/dashboard-routes.js.map +1 -1
  266. package/dist/dashboard/web/feedback-page.d.ts +3 -0
  267. package/dist/dashboard/web/feedback-page.d.ts.map +1 -0
  268. package/dist/dashboard/web/feedback-page.js +34 -0
  269. package/dist/dashboard/web/feedback-page.js.map +1 -0
  270. package/dist/dashboard/web/groups-page.d.ts.map +1 -1
  271. package/dist/dashboard/web/groups-page.js +7 -2
  272. package/dist/dashboard/web/groups-page.js.map +1 -1
  273. package/dist/dashboard/web/i18n.d.ts.map +1 -1
  274. package/dist/dashboard/web/i18n.js +122 -22
  275. package/dist/dashboard/web/i18n.js.map +1 -1
  276. package/dist/dashboard/web/skills-page.d.ts.map +1 -1
  277. package/dist/dashboard/web/skills-page.js +4 -2
  278. package/dist/dashboard/web/skills-page.js.map +1 -1
  279. package/dist/dashboard/web/team-federation-page.d.ts.map +1 -1
  280. package/dist/dashboard/web/team-federation-page.js +26 -2
  281. package/dist/dashboard/web/team-federation-page.js.map +1 -1
  282. package/dist/dashboard/web/team-federation.d.ts +19 -0
  283. package/dist/dashboard/web/team-federation.d.ts.map +1 -1
  284. package/dist/dashboard/web/team-federation.js +3 -0
  285. package/dist/dashboard/web/team-federation.js.map +1 -1
  286. package/dist/dashboard/web/update-action.d.ts +8 -0
  287. package/dist/dashboard/web/update-action.d.ts.map +1 -1
  288. package/dist/dashboard/web/update-action.js +10 -0
  289. package/dist/dashboard/web/update-action.js.map +1 -1
  290. package/dist/dashboard/web/vc-consumer-profiles-section.d.ts.map +1 -1
  291. package/dist/dashboard/web/vc-consumer-profiles-section.js +58 -9
  292. package/dist/dashboard/web/vc-consumer-profiles-section.js.map +1 -1
  293. package/dist/dashboard-web/app.js +1 -1
  294. package/dist/dashboard-web/chunks/bot-defaults-page-65SMZ4QY.js +10 -0
  295. package/dist/dashboard-web/chunks/chunk-G5XGBCM6.js +1 -0
  296. package/dist/dashboard-web/chunks/chunk-IKN6WURK.js +1 -0
  297. package/dist/dashboard-web/chunks/{chunk-6JTZJRQJ.js → chunk-VMWNR3SV.js} +15 -15
  298. package/dist/dashboard-web/chunks/{chunk-CU4SUKK3.js → chunk-Z7B3E3US.js} +1 -1
  299. package/dist/dashboard-web/chunks/{chunk-5QJB24I2.js → chunk-Z7DO42GJ.js} +1 -1
  300. package/dist/dashboard-web/chunks/connectors-page-CPH6VVFY.js +1 -0
  301. package/dist/dashboard-web/chunks/feedback-page-J2FKQ3LK.js +1 -0
  302. package/dist/dashboard-web/chunks/groups-page-VDOOLS4M.js +8 -0
  303. package/dist/dashboard-web/chunks/{insights-page-EVGGJI5L.js → insights-page-A2LWTKJD.js} +1 -1
  304. package/dist/dashboard-web/chunks/{monitor-room-HRGR2ENP.js → monitor-room-2YR752E3.js} +1 -1
  305. package/dist/dashboard-web/chunks/monitoring-page-BGYSKZGM.js +2 -0
  306. package/dist/dashboard-web/chunks/office-page-ZZHTEAE4.js +1 -0
  307. package/dist/dashboard-web/chunks/overview-page-7NYPKQSB.js +1 -0
  308. package/dist/dashboard-web/chunks/roles-page-YUC4YLJG.js +1 -0
  309. package/dist/dashboard-web/chunks/schedules-page-2L2NKTDJ.js +1 -0
  310. package/dist/dashboard-web/chunks/{sessions-page-DXBCDWCS.js → sessions-page-DYZZMKFL.js} +1 -1
  311. package/dist/dashboard-web/chunks/settings-page-LIULUSMH.js +2 -0
  312. package/dist/dashboard-web/chunks/{skills-page-2QAVB2SA.js → skills-page-DQPBBI3T.js} +2 -2
  313. package/dist/dashboard-web/chunks/team-federation-page-LQKLDV4K.js +1 -0
  314. package/dist/dashboard-web/chunks/{v3-page-AY35LKCX.js → v3-page-RVKQIMAP.js} +1 -1
  315. package/dist/dashboard-web/chunks/whiteboards-page-S5K55HRZ.js +1 -0
  316. package/dist/dashboard-web/style.css +35 -0
  317. package/dist/dashboard.js +210 -13
  318. package/dist/dashboard.js.map +1 -1
  319. package/dist/desktop/shared/shell-path-probes.d.ts +1 -1
  320. package/dist/desktop/shared/shell-path-probes.js +2 -2
  321. package/dist/desktop/shared/shell-path-probes.js.map +1 -1
  322. package/dist/dsh-runner.d.ts +3 -0
  323. package/dist/dsh-runner.d.ts.map +1 -0
  324. package/dist/dsh-runner.js +673 -0
  325. package/dist/dsh-runner.js.map +1 -0
  326. package/dist/global-config.d.ts +24 -0
  327. package/dist/global-config.d.ts.map +1 -1
  328. package/dist/global-config.js +35 -0
  329. package/dist/global-config.js.map +1 -1
  330. package/dist/i18n/en.d.ts.map +1 -1
  331. package/dist/i18n/en.js +39 -31
  332. package/dist/i18n/en.js.map +1 -1
  333. package/dist/i18n/zh.d.ts.map +1 -1
  334. package/dist/i18n/zh.js +39 -31
  335. package/dist/i18n/zh.js.map +1 -1
  336. package/dist/im/lark/ask-card.d.ts +3 -1
  337. package/dist/im/lark/ask-card.d.ts.map +1 -1
  338. package/dist/im/lark/ask-card.js +61 -5
  339. package/dist/im/lark/ask-card.js.map +1 -1
  340. package/dist/im/lark/card-builder.d.ts.map +1 -1
  341. package/dist/im/lark/card-builder.js +13 -6
  342. package/dist/im/lark/card-builder.js.map +1 -1
  343. package/dist/im/lark/card-handler.d.ts +2 -1
  344. package/dist/im/lark/card-handler.d.ts.map +1 -1
  345. package/dist/im/lark/card-handler.js +145 -5
  346. package/dist/im/lark/card-handler.js.map +1 -1
  347. package/dist/im/lark/event-dispatcher.d.ts +18 -0
  348. package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
  349. package/dist/im/lark/event-dispatcher.js +41 -28
  350. package/dist/im/lark/event-dispatcher.js.map +1 -1
  351. package/dist/im/lark/md-card.d.ts +18 -0
  352. package/dist/im/lark/md-card.d.ts.map +1 -1
  353. package/dist/im/lark/md-card.js +21 -0
  354. package/dist/im/lark/md-card.js.map +1 -1
  355. package/dist/im/lark/relay-target-routing.d.ts.map +1 -1
  356. package/dist/im/lark/relay-target-routing.js +3 -2
  357. package/dist/im/lark/relay-target-routing.js.map +1 -1
  358. package/dist/im/lark/reply-mode-command.d.ts.map +1 -1
  359. package/dist/im/lark/reply-mode-command.js +19 -8
  360. package/dist/im/lark/reply-mode-command.js.map +1 -1
  361. package/dist/im/lark/skill-feedback-card.d.ts +15 -0
  362. package/dist/im/lark/skill-feedback-card.d.ts.map +1 -0
  363. package/dist/im/lark/skill-feedback-card.js +149 -0
  364. package/dist/im/lark/skill-feedback-card.js.map +1 -0
  365. package/dist/services/bot-config-store.d.ts +10 -1
  366. package/dist/services/bot-config-store.d.ts.map +1 -1
  367. package/dist/services/bot-config-store.js +103 -3
  368. package/dist/services/bot-config-store.js.map +1 -1
  369. package/dist/services/bridge-fallback-gate.d.ts +29 -7
  370. package/dist/services/bridge-fallback-gate.d.ts.map +1 -1
  371. package/dist/services/bridge-fallback-gate.js +58 -16
  372. package/dist/services/bridge-fallback-gate.js.map +1 -1
  373. package/dist/services/codex-reasoning-effort.d.ts +9 -0
  374. package/dist/services/codex-reasoning-effort.d.ts.map +1 -0
  375. package/dist/services/codex-reasoning-effort.js +23 -0
  376. package/dist/services/codex-reasoning-effort.js.map +1 -0
  377. package/dist/services/codex-service-tier.d.ts +1 -1
  378. package/dist/services/codex-service-tier.d.ts.map +1 -1
  379. package/dist/services/codex-transcript.d.ts +9 -0
  380. package/dist/services/codex-transcript.d.ts.map +1 -1
  381. package/dist/services/codex-transcript.js +13 -6
  382. package/dist/services/codex-transcript.js.map +1 -1
  383. package/dist/services/feed-group-tagger.d.ts +15 -0
  384. package/dist/services/feed-group-tagger.d.ts.map +1 -0
  385. package/dist/services/feed-group-tagger.js +348 -0
  386. package/dist/services/feed-group-tagger.js.map +1 -0
  387. package/dist/services/feedback-analytics.d.ts +82 -0
  388. package/dist/services/feedback-analytics.d.ts.map +1 -0
  389. package/dist/services/feedback-analytics.js +95 -0
  390. package/dist/services/feedback-analytics.js.map +1 -0
  391. package/dist/services/feedback-outbox.d.ts +24 -0
  392. package/dist/services/feedback-outbox.d.ts.map +1 -0
  393. package/dist/services/feedback-outbox.js +12 -0
  394. package/dist/services/feedback-outbox.js.map +1 -0
  395. package/dist/services/feedback-policy-resolver.d.ts +56 -0
  396. package/dist/services/feedback-policy-resolver.d.ts.map +1 -0
  397. package/dist/services/feedback-policy-resolver.js +156 -0
  398. package/dist/services/feedback-policy-resolver.js.map +1 -0
  399. package/dist/services/feedback-policy.d.ts +41 -0
  400. package/dist/services/feedback-policy.d.ts.map +1 -0
  401. package/dist/services/feedback-policy.js +102 -0
  402. package/dist/services/feedback-policy.js.map +1 -0
  403. package/dist/services/feedback-webhook-dispatcher.d.ts +76 -0
  404. package/dist/services/feedback-webhook-dispatcher.d.ts.map +1 -0
  405. package/dist/services/feedback-webhook-dispatcher.js +237 -0
  406. package/dist/services/feedback-webhook-dispatcher.js.map +1 -0
  407. package/dist/services/grant-prefs-store.d.ts +3 -0
  408. package/dist/services/grant-prefs-store.d.ts.map +1 -1
  409. package/dist/services/grant-prefs-store.js +30 -1
  410. package/dist/services/grant-prefs-store.js.map +1 -1
  411. package/dist/services/groups-store.d.ts +14 -0
  412. package/dist/services/groups-store.d.ts.map +1 -1
  413. package/dist/services/groups-store.js +23 -0
  414. package/dist/services/groups-store.js.map +1 -1
  415. package/dist/services/local-cli-opener.d.ts +1 -1
  416. package/dist/services/local-cli-opener.d.ts.map +1 -1
  417. package/dist/services/local-cli-opener.js +2 -0
  418. package/dist/services/local-cli-opener.js.map +1 -1
  419. package/dist/services/peer-cross-ref-store.d.ts +8 -0
  420. package/dist/services/peer-cross-ref-store.d.ts.map +1 -0
  421. package/dist/services/peer-cross-ref-store.js +95 -0
  422. package/dist/services/peer-cross-ref-store.js.map +1 -0
  423. package/dist/services/pi-transcript.d.ts.map +1 -1
  424. package/dist/services/pi-transcript.js +10 -6
  425. package/dist/services/pi-transcript.js.map +1 -1
  426. package/dist/services/prompt-context-store.d.ts +29 -0
  427. package/dist/services/prompt-context-store.d.ts.map +1 -0
  428. package/dist/services/prompt-context-store.js +205 -0
  429. package/dist/services/prompt-context-store.js.map +1 -0
  430. package/dist/services/session-group-avatar.d.ts +6 -0
  431. package/dist/services/session-group-avatar.d.ts.map +1 -0
  432. package/dist/services/session-group-avatar.js +96 -0
  433. package/dist/services/session-group-avatar.js.map +1 -0
  434. package/dist/services/session-group-title.d.ts +47 -0
  435. package/dist/services/session-group-title.d.ts.map +1 -0
  436. package/dist/services/session-group-title.js +226 -0
  437. package/dist/services/session-group-title.js.map +1 -0
  438. package/dist/services/session-groups-store.d.ts +30 -0
  439. package/dist/services/session-groups-store.d.ts.map +1 -0
  440. package/dist/services/session-groups-store.js +132 -0
  441. package/dist/services/session-groups-store.js.map +1 -0
  442. package/dist/services/session-store.d.ts +58 -0
  443. package/dist/services/session-store.d.ts.map +1 -1
  444. package/dist/services/session-store.js +174 -0
  445. package/dist/services/session-store.js.map +1 -1
  446. package/dist/services/skill-feedback-store.d.ts +252 -0
  447. package/dist/services/skill-feedback-store.d.ts.map +1 -0
  448. package/dist/services/skill-feedback-store.js +795 -0
  449. package/dist/services/skill-feedback-store.js.map +1 -0
  450. package/dist/services/skill-registry-store.d.ts +23 -0
  451. package/dist/services/skill-registry-store.d.ts.map +1 -1
  452. package/dist/services/skill-registry-store.js +93 -7
  453. package/dist/services/skill-registry-store.js.map +1 -1
  454. package/dist/services/structured-bridge-clis.d.ts +13 -4
  455. package/dist/services/structured-bridge-clis.d.ts.map +1 -1
  456. package/dist/services/structured-bridge-clis.js +13 -3
  457. package/dist/services/structured-bridge-clis.js.map +1 -1
  458. package/dist/services/team-store.d.ts +4 -0
  459. package/dist/services/team-store.d.ts.map +1 -1
  460. package/dist/services/team-store.js +16 -0
  461. package/dist/services/team-store.js.map +1 -1
  462. package/dist/services/traex-transcript.d.ts +32 -4
  463. package/dist/services/traex-transcript.d.ts.map +1 -1
  464. package/dist/services/traex-transcript.js +116 -8
  465. package/dist/services/traex-transcript.js.map +1 -1
  466. package/dist/services/trigger-types.d.ts +1 -1
  467. package/dist/services/trigger-types.d.ts.map +1 -1
  468. package/dist/services/trigger-types.js +2 -2
  469. package/dist/services/trigger-types.js.map +1 -1
  470. package/dist/services/turn-completion-events.d.ts +57 -0
  471. package/dist/services/turn-completion-events.d.ts.map +1 -0
  472. package/dist/services/turn-completion-events.js +179 -0
  473. package/dist/services/turn-completion-events.js.map +1 -0
  474. package/dist/services/vc-meeting-consumer-isolation.d.ts +21 -12
  475. package/dist/services/vc-meeting-consumer-isolation.d.ts.map +1 -1
  476. package/dist/services/vc-meeting-consumer-isolation.js +25 -19
  477. package/dist/services/vc-meeting-consumer-isolation.js.map +1 -1
  478. package/dist/services/vc-meeting-consumer-profile-bootstrap.d.ts +8 -2
  479. package/dist/services/vc-meeting-consumer-profile-bootstrap.d.ts.map +1 -1
  480. package/dist/services/vc-meeting-consumer-profile-bootstrap.js +18 -10
  481. package/dist/services/vc-meeting-consumer-profile-bootstrap.js.map +1 -1
  482. package/dist/setup/bot-config-editor.d.ts.map +1 -1
  483. package/dist/setup/bot-config-editor.js +6 -0
  484. package/dist/setup/bot-config-editor.js.map +1 -1
  485. package/dist/setup/cli-availability.d.ts +2 -1
  486. package/dist/setup/cli-availability.d.ts.map +1 -1
  487. package/dist/setup/cli-availability.js +2 -1
  488. package/dist/setup/cli-availability.js.map +1 -1
  489. package/dist/setup/cli-selection.d.ts +8 -0
  490. package/dist/setup/cli-selection.d.ts.map +1 -1
  491. package/dist/setup/cli-selection.js +31 -0
  492. package/dist/setup/cli-selection.js.map +1 -1
  493. package/dist/setup/ensure-fonts.d.ts +5 -0
  494. package/dist/setup/ensure-fonts.d.ts.map +1 -1
  495. package/dist/setup/ensure-fonts.js +26 -1
  496. package/dist/setup/ensure-fonts.js.map +1 -1
  497. package/dist/setup/lark-scopes.json +3 -1
  498. package/dist/setup/open-platform-automation.d.ts +1 -1
  499. package/dist/setup/open-platform-automation.d.ts.map +1 -1
  500. package/dist/setup/open-platform-automation.js +15 -3
  501. package/dist/setup/open-platform-automation.js.map +1 -1
  502. package/dist/skills/definitions.d.ts +1 -1
  503. package/dist/skills/definitions.d.ts.map +1 -1
  504. package/dist/skills/definitions.js +9 -2
  505. package/dist/skills/definitions.js.map +1 -1
  506. package/dist/types.d.ts +11 -4
  507. package/dist/types.d.ts.map +1 -1
  508. package/dist/utils/bot-routing.d.ts +1 -1
  509. package/dist/utils/bot-routing.d.ts.map +1 -1
  510. package/dist/utils/bot-routing.js.map +1 -1
  511. package/dist/utils/user-token.d.ts +38 -0
  512. package/dist/utils/user-token.d.ts.map +1 -1
  513. package/dist/utils/user-token.js +76 -1
  514. package/dist/utils/user-token.js.map +1 -1
  515. package/dist/utils/web-terminal-scroll.d.ts +27 -0
  516. package/dist/utils/web-terminal-scroll.d.ts.map +1 -0
  517. package/dist/utils/web-terminal-scroll.js +60 -0
  518. package/dist/utils/web-terminal-scroll.js.map +1 -0
  519. package/dist/vc-agent/polling-source.d.ts +70 -0
  520. package/dist/vc-agent/polling-source.d.ts.map +1 -1
  521. package/dist/vc-agent/polling-source.js +115 -0
  522. package/dist/vc-agent/polling-source.js.map +1 -1
  523. package/dist/worker.js +469 -86
  524. package/dist/worker.js.map +1 -1
  525. package/dist/workflows/definition.d.ts +22 -22
  526. package/dist/workflows/events/payloads.d.ts +8 -8
  527. package/dist/workflows/events/schema.d.ts +20 -20
  528. package/dist/workflows/migration/v2-run-archive-schema.d.ts +20 -20
  529. package/package.json +5 -1
  530. package/dist/dashboard-web/chunks/bot-defaults-page-NQJFJ45Z.js +0 -10
  531. package/dist/dashboard-web/chunks/chunk-KEEYQ3WF.js +0 -1
  532. package/dist/dashboard-web/chunks/connectors-page-HADHZXXZ.js +0 -1
  533. package/dist/dashboard-web/chunks/groups-page-5TYF46RS.js +0 -8
  534. package/dist/dashboard-web/chunks/monitoring-page-LBU7TTTW.js +0 -2
  535. package/dist/dashboard-web/chunks/office-page-DF6RRBMN.js +0 -1
  536. package/dist/dashboard-web/chunks/overview-page-ZB6QH2EX.js +0 -1
  537. package/dist/dashboard-web/chunks/roles-page-ZBZGHIIF.js +0 -1
  538. package/dist/dashboard-web/chunks/schedules-page-NQVQC3QY.js +0 -1
  539. package/dist/dashboard-web/chunks/settings-page-E7NN4NVQ.js +0 -2
  540. package/dist/dashboard-web/chunks/team-federation-page-VGWL53AE.js +0 -1
  541. package/dist/dashboard-web/chunks/whiteboards-page-BNWUU4KG.js +0 -1
@@ -1,13 +1,13 @@
1
- var R=class{sessions=new Map;schedules=new Map;online=!0;scheduleTimeZone="";version=0;snapshot={sessions:this.sessions,schedules:this.schedules,online:this.online,version:this.version,scheduleTimeZone:this.scheduleTimeZone};listeners=new Set;botsListeners=new Set;setScheduleTimeZone(e){typeof e=="string"&&e&&this.scheduleTimeZone!==e&&(this.scheduleTimeZone=e,this.emit())}replaceSnapshot(e,s,o){this.sessions.clear();for(let i of e)this.sessions.set(i.sessionId,i);this.schedules.clear();for(let i of s)this.schedules.set(i.id,i);o&&(this.scheduleTimeZone=o),this.emit()}applySse(e,s){if(e==="session.spawned")this.sessions.set(s.session.sessionId,s.session);else if(e==="session.update"){let o=this.sessions.get(s.sessionId);o&&this.sessions.set(s.sessionId,{...o,...s.patch})}else if(e==="session.exited"){let o=this.sessions.get(s.sessionId);o&&this.sessions.set(s.sessionId,{...o,status:"closed"})}else if(e==="schedule.created")this.schedules.set(s.schedule.id,s.schedule);else if(e==="schedule.updated"){let o=this.schedules.get(s.id);o&&this.schedules.set(s.id,{...o,...s.patch})}else if(e==="schedule.deleted")this.schedules.delete(s.id);else if(e==="schedule.timezone")typeof s?.timezone=="string"&&s.timezone&&(this.scheduleTimeZone=s.timezone);else if(e==="bots.changed"){for(let o of this.botsListeners)o();return}else return;this.emit()}onBotsChanged(e){return this.botsListeners.add(e),()=>this.botsListeners.delete(e)}setOnline(e){this.online!==e&&(this.online=e,this.emit())}on(e){return this.listeners.add(e),()=>this.listeners.delete(e)}getSnapshot(){return this.snapshot}emit(){this.version+=1,this.snapshot={sessions:this.sessions,schedules:this.schedules,online:this.online,version:this.version,scheduleTimeZone:this.scheduleTimeZone};for(let e of this.listeners)e()}},b=new R;async function Ve(){let t=[],e=!1,s=new EventSource("/events"),o=["session.spawned","session.update","session.exited","schedule.created","schedule.updated","schedule.deleted","schedule.fired","schedule.timezone","bots.changed","heartbeat"];for(let r of o)s.addEventListener(r,l=>{try{let c=JSON.parse(l.data),u=c.body??c;e?b.applySse(r,u):t.push({type:r,body:u})}catch{}});let i=null,n=0,a=0,d=()=>(n+=1,i||(i=(async()=>{for(;a<n;){let r=n;e=!1;try{let[l,c]=await Promise.all([fetch("/api/sessions").then(u=>u.json()),fetch("/api/schedules").then(u=>u.json())]);b.replaceSnapshot(l.sessions??[],c.schedules??[],typeof c.timezone=="string"?c.timezone:void 0),a=r}finally{e=!0;for(let l of t.splice(0))b.applySse(l.type,l.body)}}})().finally(()=>{i=null}),i));s.onerror=()=>b.setOnline(!1),s.onopen=()=>{b.setOnline(!0),d().catch(()=>{})},await d()}var me={chats:[],bots:[]},W=me,H=0,f=null,be=0,G=0;function fe(t){return{chats:Array.isArray(t?.chats)?t.chats:[],bots:Array.isArray(t?.bots)?t.bots:[]}}function ke(t){W=t,H=Date.now()}async function j(t={}){let e=t.cacheMs??3e3,s=Date.now();if(!t.force&&H>0&&s-H<=e)return W;if(!t.force&&f)return f;let o=++be;G=o;let i=(async()=>{let n=await fetch(t.force?"/api/groups?refresh=1":"/api/groups"),a=await n.json().catch(()=>({}));if(!n.ok)throw new Error(`HTTP ${n.status}`);let d=fe(a);return o===G&&ke(d),d})();return t.force?i:(f=i.finally(()=>{f=null}),f)}var I="botmux.dashboard.locale",ve={"app.name":"botmux","app.subtitle":"\u98DE\u4E66 AI CLI \u63A7\u5236\u53F0","nav.docs":"\u6587\u6863","time.secondsAgo":"{value} \u79D2\u524D","time.minutesAgo":"{value} \u5206\u949F\u524D","time.hoursAgo":"{value} \u5C0F\u65F6\u524D","nav.overview":"\u5DE5\u4F5C\u53F0","nav.monitoring":"\u76D1\u63A7\u770B\u677F","nav.sessions":"\u4F1A\u8BDD\u63A7\u5236","nav.groups":"\u7FA4\u7EC4\u7BA1\u7406","nav.schedules":"\u5B9A\u65F6\u4EFB\u52A1","nav.settings":"\u5168\u5C40\u8BBE\u7F6E","nav.botDefaults":"Bot \u914D\u7F6E","nav.skills":"Skill \u7BA1\u7406","nav.whiteboards":"\u767D\u677F","nav.team":"\u56E2\u961F\u534F\u4F5C","nav.connectors":"Webhook","nav.webhookLogs":"\u8C03\u7528\u65E5\u5FD7","nav.office":"\u529E\u516C\u5BA4","nav.createSession":"\u521B\u5EFA\u4F1A\u8BDD","nav.createBot":"\u521B\u5EFA\u673A\u5668\u4EBA","status.live":"\u5B9E\u65F6\u94FE\u63A5","status.disconnected":"\u94FE\u63A5\u65AD\u5F00","status.system":"\u7CFB\u7EDF","status.light":"\u6D45\u8272","status.dark":"\u6697\u9ED1","status.language":"\u8BED\u8A00","status.theme":"\u4E3B\u9898","theme.base":"\u57FA\u7840","theme.skins":"\u4E3B\u9898\u76AE\u80A4","skin.cyber":"2077","skin.fallout":"Fallout","botOnboarding.add":"\u6DFB\u52A0\u673A\u5668\u4EBA","botOnboarding.title":"\u6DFB\u52A0\u673A\u5668\u4EBA","botOnboarding.intro":"\u8BBE\u7F6E\u5B83\u5982\u4F55\u5DE5\u4F5C\u3002\u9996\u6B21\u626B\u7801\u767B\u5F55\u540E\uFF0C\u540E\u7EED\u53EF\u590D\u7528\u5F53\u524D\u8D26\u53F7\u514D\u626B\u7801\u6DFB\u52A0\u3002","botOnboarding.sessionChecking":"\u6B63\u5728\u68C0\u67E5\u98DE\u4E66\u767B\u5F55\u72B6\u6001\u2026","botOnboarding.sessionReady":"\u5C06\u4F7F\u7528 {user} \xB7 {tenant}","botOnboarding.switchAccount":"\u66F4\u6362\u8D26\u53F7","botOnboarding.reuseCurrentAccount":"\u7EE7\u7EED\u4F7F\u7528\u5F53\u524D\u8D26\u53F7","botOnboarding.sessionSwitching":"\u5C06\u91CD\u65B0\u626B\u7801\u9009\u62E9\u8D26\u53F7","botOnboarding.sessionSwitchingHint":"\u65B0\u767B\u5F55\u6210\u529F\u540E\u4F1A\u8986\u76D6\u672C\u673A\u7F13\u5B58\u3002","botOnboarding.sessionScanRequired":"\u9700\u8981\u626B\u7801\u767B\u5F55","botOnboarding.sessionScanRequiredHint":"\u9996\u6B21\u6DFB\u52A0\u6216\u767B\u5F55\u6001\u8FC7\u671F\u65F6\u626B\u7801\uFF1B\u767B\u5F55\u6001\u4FDD\u5B58\u5728\u672C\u673A\uFF0C\u540E\u7EED\u6709\u6548\u671F\u5185\u514D\u626B\u3002","botOnboarding.confirmReuse":"\u786E\u8BA4\u8D26\u53F7\u5E76\u514D\u626B\u7801\u6DFB\u52A0","botOnboarding.appNameLabel":"\u673A\u5668\u4EBA\u540D\u79F0\uFF08\u53EF\u9009\uFF09","botOnboarding.appNamePlaceholder":"\u4F8B\u5982\uFF1A\u7814\u53D1\u52A9\u624B","botOnboarding.appNameHint":"\u7559\u7A7A\u5C06\u4F7F\u7528 {name}","botOnboarding.cliLabel":"AI CLI","botOnboarding.cliMissingOption":"{label}\uFF08\u672A\u5B89\u88C5\uFF1A{command}\uFF09","botOnboarding.cliMissingHint":"\u5F53\u524D\u673A\u5668\u627E\u4E0D\u5230 {command}\uFF0C\u8BF7\u5148\u5B89\u88C5\u6216\u4FEE\u6B63 daemon \u7684 PATH\uFF1B\u672A\u5C31\u7EEA\u524D\u4E0D\u80FD\u521B\u5EFA Bot\u3002","botOnboarding.dirModeLabel":"\u65B0\u8BDD\u9898\u4ECE\u54EA\u91CC\u5F00\u59CB","botOnboarding.dirModeFixed":"\u56FA\u5B9A\u76EE\u5F55\uFF08\u63A8\u8350\uFF09","botOnboarding.dirModeCard":"\u6BCF\u6B21\u9009\u62E9\u4ED3\u5E93","botOnboarding.dirLabelFixed":"\u9ED8\u8BA4\u5DE5\u4F5C\u76EE\u5F55","botOnboarding.dirLabelCard":"\u4ED3\u5E93\u626B\u63CF\u6839\u76EE\u5F55","botOnboarding.dirPlaceholderFixed":"\u9ED8\u8BA4 ~\uFF08\u5BB6\u76EE\u5F55\uFF09\uFF0C\u9700\u4E3A daemon \u4E3B\u673A\u4E0A\u5DF2\u5B58\u5728\u7684\u76EE\u5F55","botOnboarding.dirPlaceholderCard":"\u5982 ~/projects\uFF0C\u5361\u7247\u5217\u51FA\u5176\u4E0B\u7684 git \u4ED3\u5E93\uFF1B\u9700\u5728 daemon \u4E3B\u673A\u4E0A\u5B58\u5728","botOnboarding.modelLabel":"\u6A21\u578B\uFF08\u53EF\u9009\uFF09","botOnboarding.modelPlaceholder":"\u7559\u7A7A\u4F7F\u7528\u8BE5 CLI \u7684\u9ED8\u8BA4\u6A21\u578B","botOnboarding.modelTtadkPlaceholder":"ttadk \u7F51\u5173\u6A21\u578B\uFF0C\u9ED8\u8BA4 {model}\uFF0C\u53EF\u6539\uFF08\u968F\u65F6\u5728\u6B64\u8C03\u6574\uFF09","botOnboarding.modelTtadkCocoPlaceholder":"CoCo \u65E0\u9700\u6307\u5B9A\u6A21\u578B","botOnboarding.startScan":"\u626B\u7801\u5E76\u6DFB\u52A0","botOnboarding.cancel":"\u53D6\u6D88","botOnboarding.starting":"\u6B63\u5728\u51C6\u5907\u5B89\u5168\u767B\u5F55\u2026","botOnboarding.waiting":"\u4F7F\u7528\u98DE\u4E66\u626B\u7801\u3002\u4E00\u6B21\u626B\u7801\u5373\u53EF\u521B\u5EFA\u5E76\u914D\u7F6E\u300C{name}\u300D\u3002","botOnboarding.waitingCompat":"\u4F7F\u7528\u98DE\u4E66\u626B\u7801\u8FDB\u5165\u517C\u5BB9\u6A21\u5F0F\uFF1B\u6B64\u8DEF\u5F84\u53EF\u80FD\u9700\u8981\u989D\u5916\u626B\u7801\uFF0C\u5E94\u7528\u540D\u79F0\u7531\u5E73\u53F0\u51B3\u5B9A\u3002","botOnboarding.verifying":"\u5E94\u7528\u5DF2\u521B\u5EFA\uFF0C\u6B63\u5728\u786E\u8BA4\u8D26\u53F7\u2026","botOnboarding.configuringPermissions":"\u6B63\u5728\u914D\u7F6E\u6743\u9650\u4E0E\u4E8B\u4EF6\u5E76\u53D1\u5E03\u673A\u5668\u4EBA\u2026","botOnboarding.platformScanHint":"\u517C\u5BB9\u6A21\u5F0F\u9700\u8981\u989D\u5916\u767B\u5F55\u5F00\u653E\u5E73\u53F0\uFF1B\u626B\u7801\u540E\u4F1A\u7EE7\u7EED\u914D\u7F6E\u3002","botOnboarding.platformQrAlt":"\u5F00\u653E\u5E73\u53F0\u767B\u5F55\u4E8C\u7EF4\u7801","botOnboarding.completed":"\u300C{name}\u300D\u5DF2\u53EF\u4F7F\u7528","botOnboarding.botFallback":"\u673A\u5668\u4EBA","botOnboarding.permissionOk":"\u5DF2\u81EA\u52A8\u5BFC\u5165 {count} \u9879\u6743\u9650\u3002","botOnboarding.permissionSkipped":"\uFF08\u8DF3\u8FC7 {count} \u9879\u5F53\u524D\u79DF\u6237\u76EE\u5F55\u4E2D\u6CA1\u6709\u7684\u6743\u9650\uFF09","botOnboarding.permissionVersion":"\u5DF2\u63D0\u4EA4\u53D1\u5E03\u7248\u672C {version}\u3002","botOnboarding.permissionManual":"\u6743\u9650\u672A\u80FD\u81EA\u52A8\u914D\u7F6E\uFF0C\u8BF7\u624B\u52A8\u5B8C\u6210\u4EE5\u4E0B\u6B65\u9AA4\uFF1A","botOnboarding.metaDir":"\u76EE\u5F55","botOnboarding.createFailedTitle":"\u6682\u65F6\u65E0\u6CD5\u521B\u5EFA\u5E94\u7528","botOnboarding.createFailedDescription":"\u8868\u5355\u5185\u5BB9\u5DF2\u4FDD\u7559\u3002\u53EF\u4EE5\u91CD\u8BD5\uFF0C\u6216\u660E\u786E\u9009\u62E9\u517C\u5BB9\u6A21\u5F0F\u3002","botOnboarding.qrExpiredTitle":"\u4E8C\u7EF4\u7801\u5DF2\u8FC7\u671F","botOnboarding.qrExpiredDescription":"\u8868\u5355\u5185\u5BB9\u5DF2\u4FDD\u7559\uFF0C\u8BF7\u751F\u6210\u65B0\u4E8C\u7EF4\u7801\u3002","botOnboarding.authIncompleteTitle":"\u672A\u5B8C\u6210\u6388\u6743","botOnboarding.authIncompleteDescription":"\u6CA1\u6709\u521B\u5EFA\u5E94\u7528\uFF0C\u53EF\u4EE5\u91CD\u65B0\u626B\u7801\u3002","botOnboarding.partialFailureTitle":"\u5E94\u7528\u5DF2\u521B\u5EFA\uFF0C\u4F46\u914D\u7F6E\u5C1A\u672A\u5B8C\u6210","botOnboarding.partialFailureDescription":"\u5DF2\u4FDD\u7559 App ID\uFF0C\u7CFB\u7EDF\u4E0D\u4F1A\u518D\u6B21\u521B\u5EFA\u5E94\u7528\u3002\u8BF7\u6309\u6280\u672F\u8BE6\u60C5\u4E2D\u7684\u7EE7\u7EED\u547D\u4EE4\u6062\u590D\u3002","botOnboarding.technicalDetails":"\u6280\u672F\u8BE6\u60C5","botOnboarding.retry":"\u91CD\u8BD5","botOnboarding.generateQr":"\u751F\u6210\u65B0\u4E8C\u7EF4\u7801","botOnboarding.scanAgain":"\u91CD\u65B0\u626B\u7801","botOnboarding.compatibilityMode":"\u4F7F\u7528\u517C\u5BB9\u6A21\u5F0F","botOnboarding.compatibilityConfirm":"\u517C\u5BB9\u6A21\u5F0F\u53EF\u80FD\u9700\u8981\u989D\u5916\u626B\u7801\uFF0C\u4E14\u65E0\u6CD5\u5E94\u7528\u81EA\u5B9A\u4E49\u673A\u5668\u4EBA\u540D\u79F0\u3002\u662F\u5426\u7EE7\u7EED\uFF1F","botOnboarding.openLink":"\u6253\u4E0D\u5F00\u626B\u7801\uFF1F\u5728\u6D4F\u89C8\u5668\u4E2D\u6253\u5F00","botOnboarding.close":"\u5173\u95ED","botOnboarding.restartHint":"\u5DF2\u5199\u5165 bots.json\u3002\u81EA\u52A8\u4E0A\u7EBF\u672A\u6210\u529F\uFF0C\u6267\u884C botmux restart \u540E\u65B0\u673A\u5668\u4EBA\u751F\u6548\u3002","botOnboarding.liveOk":"\u673A\u5668\u4EBA\u5DF2\u81EA\u52A8\u4E0A\u7EBF\uFF0C\u65E0\u9700\u91CD\u542F\uFF0C\u76F4\u63A5\u5728\u98DE\u4E66\u91CC @ \u5B83\u5373\u53EF\u4F7F\u7528\u3002","botOnboarding.needsOwnerTitle":"\u8FD8\u5DEE\u4E00\u6B65\uFF1A\u786E\u8BA4\u7BA1\u7406\u5458","botOnboarding.needsOwnerDescription":"\u65E0\u6CD5\u4ECE\u626B\u7801\u8D26\u53F7\u786E\u8BA4\u7BA1\u7406\u5458\u8EAB\u4EFD\u3002\u586B\u5199\u4F01\u4E1A\u90AE\u7BB1\u6216\u624B\u673A\u53F7\u540E\u5373\u53EF\u5B8C\u6210\uFF1B\u786E\u8BA4\u524D\u673A\u5668\u4EBA\u4E0D\u4F1A\u542F\u52A8\u3002","botOnboarding.ownerLabel":"\u7BA1\u7406\u5458\u90AE\u7BB1\u6216\u624B\u673A\u53F7","botOnboarding.ownerPlaceholder":"name@company.com \u6216 13011112222","botOnboarding.ownerUseId":"\u4F7F\u7528 ID","botOnboarding.ownerIdLabel":"union_id / open_id","botOnboarding.ownerIdPlaceholder":"on_xxx \u6216 ou_xxx","botOnboarding.ownerSubmit":"\u786E\u8BA4\u5E76\u5B8C\u6210","botOnboarding.ownerEmpty":"\u8BF7\u586B\u5199\u7BA1\u7406\u5458\u90AE\u7BB1\u3001\u624B\u673A\u53F7\u6216 ID\u3002","botOnboarding.ownerInvalid":"\u7BA1\u7406\u5458\u8EAB\u4EFD\u6821\u9A8C\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u540E\u91CD\u8BD5\u3002","botOnboarding.qrAlt":"\u98DE\u4E66\u626B\u7801\u6DFB\u52A0\u673A\u5668\u4EBA\u4E8C\u7EF4\u7801","overview.title":"\u5DE5\u4F5C\u53F0","overview.team":"AI \u56E2\u961F","overview.teamHint":"\u6BCF\u4F4D\u6570\u5B57\u5458\u5DE5\u7684\u5B9E\u65F6\u72B6\u6001","overview.attention":"\u9700\u8981\u4F60\u5904\u7406","overview.activeSessions":"\u6D3B\u8DC3\u4F1A\u8BDD","overview.sessionOverview":"\u4F1A\u8BDD\u6982\u89C8","overview.viewAll":"\u67E5\u770B\u5168\u90E8 \u2192","overview.viewAllPlain":"\u67E5\u770B\u5168\u90E8","overview.sort":"\u6392\u5E8F","overview.sortByTime":"\u6309\u65F6\u95F4","overview.sortAttentionFirst":"\u9700\u8981\u4F60\u5904\u7406\u4F18\u5148","overview.botIdle":"\u5F85\u547D\u4E2D\uFF0C\u968F\u65F6\u53EF\u63A5\u65B0\u4EFB\u52A1","overview.botOffline":"\u79BB\u7EBF \u2014 daemon \u672A\u4E0A\u7EBF","overview.botBusy":"\u6267\u884C\u4E2D \xB7 {count} \u4F1A\u8BDD","overview.botNeedsYou":"\u7B49\u4F60\u56DE\u590D","overview.botReady":"\u5C31\u7EEA","overview.botOff":"\u79BB\u7EBF","overview.botConsole":"\u98DE\u4E66\u540E\u53F0","overview.sessionsCount":"{count} \u4F1A\u8BDD","overview.lastActive":"{time}\u524D\u6D3B\u8DC3","overview.teamCount":"{count} \u4F4D","overview.teamExpand":"\u5C55\u5F00\u5168\u90E8","overview.teamCollapse":"\u6536\u8D77","strip.pending":"{count} \u4EF6\u5F85\u5904\u7406","strip.longestCompact":"\u6700\u4E45 {time} \xB7 {bot} \xB7 {reason}","strip.handle":"\u7ACB\u5373\u5904\u7406","overview.openSessions":"\u6D3B\u8DC3\u4F1A\u8BDD","overview.workingSessions":"\u5DE5\u4F5C\u4E2D","overview.idleSessions":"\u7A7A\u95F2\u4E2D","overview.onlineBots":"\u5728\u7EBF Bot","overview.schedules":"\u5B9A\u65F6\u4EFB\u52A1","overview.groups":"\u7FA4\u804A\u8986\u76D6","overview.enabledSchedules":"\u5DF2\u542F\u7528","overview.total":"\u603B\u8BA1","overview.active":"\u6D3B\u8DC3","overview.daemonRegistry":"daemon \u6CE8\u518C\u8868","overview.chatMatrix":"\u7FA4\u804A\u77E9\u9635","overview.recentSessions":"\u6700\u8FD1\u4F1A\u8BDD","overview.nextSchedules":"\u5B9A\u65F6\u4EFB\u52A1","overview.noSessions":"\u6682\u65E0\u4F1A\u8BDD\u3002","overview.noSchedules":"\u6682\u65E0\u5B9A\u65F6\u4EFB\u52A1\u3002","monitoring.eyebrow":"\u8FD0\u884C\u8D44\u6E90","monitoring.title":"\u76D1\u63A7\u770B\u677F","monitoring.subtitle":"\u5B9E\u65F6\u67E5\u770B\u5BBF\u4E3B\u673A\u3001botmux\u3001\u673A\u5668\u4EBA\u548C\u4F1A\u8BDD\u7684 CPU \u4E0E\u5185\u5B58\u538B\u529B\u3002","monitoring.runtimeTitle":"\u76D1\u63A7\u770B\u677F","monitoring.runtimeSubtitle":"\u5B9E\u65F6\u67E5\u770B botmux \u7684\u8FD0\u884C\u5065\u5EB7\u3001\u8D44\u6E90\u538B\u529B\u548C\u4F1A\u8BDD\u538B\u529B\u3002","monitoring.runtimeHealth":"\u8FD0\u884C\u5065\u5EB7","monitoring.runtimeHealthHint":"\u786E\u8BA4\u6570\u636E\u662F\u5426\u65B0\u9C9C\u3001daemon \u662F\u5426\u5728\u7EBF\u3001\u4F1A\u8BDD\u662F\u5426\u5806\u79EF\u3002","monitoring.resourcePressure":"\u8D44\u6E90\u538B\u529B","monitoring.resourcePressureHint":"\u673A\u5668\u8D44\u6E90\u53EA\u4FDD\u5B58\u5728\u5185\u5B58\u8D8B\u52BF\u4E2D\uFF0C\u91CD\u542F\u540E\u6E05\u7A7A\u3002","monitoring.sessionPressure":"\u4F1A\u8BDD\u538B\u529B","monitoring.sessionPressureHint":"\u5B9A\u4F4D\u957F\u65F6\u95F4\u8FD0\u884C\u3001\u7B49\u5F85\u5904\u7406\u548C\u672A\u5173\u8054\u8FDB\u7A0B\u7684 live \u4F1A\u8BDD\u3002","monitoring.botRuntime":"Bot \u8FD0\u884C","monitoring.botRuntimeHint":"\u6309 bot \u805A\u5408 daemon \u72B6\u6001\u3001\u4F1A\u8BDD\u538B\u529B\u548C\u8D44\u6E90\u5360\u7528\u3002","monitoring.sampleHealth":"\u91C7\u6837\u72B6\u6001","monitoring.sampleAge":"\u6570\u636E\u5E74\u9F84","monitoring.sample.fresh":"\u65B0\u9C9C","monitoring.sample.stale":"\u8FC7\u671F","monitoring.sample.unsupported":"\u4E0D\u652F\u6301","monitoring.sample.unknown":"\u672A\u77E5","monitoring.health.ok":"\u5065\u5EB7","monitoring.health.warn":"\u8B66\u60D5","monitoring.health.danger":"\u9AD8\u538B","monitoring.health.unknown":"\u672A\u77E5","monitoring.daemonHealth":"Daemon \u5728\u7EBF","monitoring.sessionHealth":"\u4F1A\u8BDD\u5065\u5EB7","monitoring.offline":"\u79BB\u7EBF","monitoring.working":"\u5DE5\u4F5C\u4E2D","monitoring.starting":"\u542F\u52A8\u4E2D","monitoring.waiting":"\u7B49\u5F85\u4E2D","monitoring.idle":"\u7A7A\u95F2","monitoring.unknown":"\u672A\u77E5","monitoring.statusDistribution":"\u72B6\u6001\u5206\u5E03","monitoring.longestRunning":"\u6700\u957F\u8FD0\u884C","monitoring.longestWaiting":"\u6700\u957F\u7B49\u5F85","monitoring.unattributedSessions":"\u672A\u5173\u8054\u8FDB\u7A0B","monitoring.unattributedHint":"\u8FD9\u4E9B live \u4F1A\u8BDD\u5F53\u524D\u6CA1\u6709\u53EF\u9760 PID \u5173\u8054\uFF0C\u65E0\u6CD5\u8BA1\u7B97\u4F1A\u8BDD\u7EA7\u8D44\u6E90\u3002","monitoring.unsupported":"\u5F53\u524D\u5E73\u53F0\u6682\u4E0D\u652F\u6301\u8D44\u6E90\u91C7\u6837\u3002","monitoring.unsupportedKicker":"Linux / macOS only","monitoring.unsupportedTitle":"\u8D44\u6E90\u91C7\u6837\u4EC5\u652F\u6301 Linux / macOS","monitoring.unsupportedHint":"\u5F53\u524D\u5E73\u53F0\u65E2\u6CA1\u6709\u53EF\u8BFB\u7684 /proc \u6570\u636E\uFF0C\u4E5F\u6CA1\u6709 macOS \u7684 ps/vm_stat \u91C7\u6837\u901A\u9053\uFF1B\u8FD0\u884C\u5065\u5EB7\u4ECD\u53EF\u7EE7\u7EED\u67E5\u770B\u3002","monitoring.unsupportedRuntimeOk":"\u8FD0\u884C\u5065\u5EB7\u53EF\u7528","monitoring.unsupportedResourceOnly":"CPU / Memory / RSS \u6682\u505C","monitoring.hostCpu":"CPU","monitoring.hostMemory":"Memory","monitoring.botmuxRss":"Botmux \u5185\u5B58","monitoring.botmuxSelf":"\u672C\u4F53","monitoring.botmuxDaemon":"\u5B88\u62A4","monitoring.botmuxWorker":"worker","monitoring.botmuxCli":"\u5916\u90E8 CLI","monitoring.rssHelpLabel":"\u5185\u5B58\u53E3\u5F84\u8BF4\u660E","monitoring.rssHelp":`\u5185\u5B58\u7528 PSS\uFF08Proportional Set Size\uFF09\uFF1A\u5171\u4EAB\u5185\u5B58\u9875\u6309\u5171\u4EAB\u5B83\u7684\u8FDB\u7A0B\u6570\u5206\u644A\uFF0C\u6240\u4EE5\u591A\u8FDB\u7A0B\u76F8\u52A0\u4E0D\u4F1A\u50CF RSS \u90A3\u6837\u628A\u5171\u4EAB\u7684 Node \u8FD0\u884C\u65F6/\u5E93\u91CD\u590D\u8BA1\u6570\uFF08\u8BFB\u4E0D\u5230 smaps_rollup \u65F6\u56DE\u9000 RSS\uFF09\uFF1BmacOS \u4E0A\u7528\u7B49\u4EF7\u8BED\u4E49\u7684 phys_footprint\uFF08\u5373\u6D3B\u52A8\u76D1\u89C6\u5668\u7684\u300C\u5185\u5B58\u300D\uFF0C\u8BFB\u4E0D\u5230\u65F6\u56DE\u9000 RSS\uFF09\u3002
1
+ var ge={chats:[],bots:[]},_=ge,T=0,h=null,pe=0,E=0;function he(e){return{chats:Array.isArray(e?.chats)?e.chats:[],bots:Array.isArray(e?.bots)?e.bots:[]}}function me(e){_=e,T=Date.now()}async function F(e={}){let t=e.cacheMs??3e3,s=Date.now();if(!e.force&&T>0&&s-T<=t)return _;if(!e.force&&h)return h;let o=++pe;E=o;let n=(async()=>{let i=await fetch(e.force?"/api/groups?refresh=1":"/api/groups"),a=await i.json().catch(()=>({}));if(!i.ok)throw new Error(`HTTP ${i.status}`);let l=he(a);return o===E&&me(l),l})();return e.force?n:(h=n.finally(()=>{h=null}),h)}var x="botmux.dashboard.locale",be={"app.name":"botmux","app.subtitle":"\u98DE\u4E66 AI CLI \u63A7\u5236\u53F0","nav.docs":"\u6587\u6863","time.secondsAgo":"{value} \u79D2\u524D","time.minutesAgo":"{value} \u5206\u949F\u524D","time.hoursAgo":"{value} \u5C0F\u65F6\u524D","nav.overview":"\u5DE5\u4F5C\u53F0","nav.monitoring":"\u76D1\u63A7\u770B\u677F","nav.sessions":"\u4F1A\u8BDD\u63A7\u5236","nav.groups":"\u7FA4\u7EC4\u7BA1\u7406","nav.schedules":"\u5B9A\u65F6\u4EFB\u52A1","nav.settings":"\u5168\u5C40\u8BBE\u7F6E","nav.botDefaults":"Bot \u914D\u7F6E","nav.skills":"Skill \u7BA1\u7406","nav.whiteboards":"\u767D\u677F","nav.team":"\u56E2\u961F\u534F\u4F5C","nav.connectors":"Webhook","nav.webhookLogs":"\u8C03\u7528\u65E5\u5FD7","nav.feedback":"\u53CD\u9988\u5206\u6790","feedback.title":"\u53CD\u9988\u5206\u6790","feedback.subtitle":"\u67E5\u770B\u5DF2\u6295\u9012\u56DE\u7B54\u7684\u8986\u76D6\u7387\u3001\u6700\u65B0\u8BC4\u4EF7\u3001\u5931\u8D25\u548C\u8131\u654F\u660E\u7EC6\u3002","feedback.delivered":"\u5DF2\u6295\u9012","feedback.rated":"\u5DF2\u8BC4\u4EF7\u56DE\u7B54","feedback.coverage":"\u8BC4\u4EF7\u8986\u76D6\u7387","feedback.positiveRate":"\u6B63\u5411\u7387","feedback.deliveryFailures":"\u6295\u9012\u5931\u8D25","feedback.outboxFailures":"Webhook \u5931\u8D25","feedback.trend":"\u8BED\u4E49\u8D8B\u52BF","feedback.reasons":"\u8D1F\u5411\u539F\u56E0","feedback.deliveries":"\u8131\u654F\u6295\u9012\u660E\u7EC6","feedback.loadMore":"\u52A0\u8F7D\u66F4\u591A","nav.office":"\u529E\u516C\u5BA4","nav.createSession":"\u521B\u5EFA\u4F1A\u8BDD","nav.createBot":"\u521B\u5EFA\u673A\u5668\u4EBA","status.live":"\u5B9E\u65F6\u94FE\u63A5","status.disconnected":"\u94FE\u63A5\u65AD\u5F00","status.system":"\u7CFB\u7EDF","status.light":"\u6D45\u8272","status.dark":"\u6697\u9ED1","status.language":"\u8BED\u8A00","status.theme":"\u4E3B\u9898","theme.base":"\u57FA\u7840","theme.skins":"\u4E3B\u9898\u76AE\u80A4","skin.cyber":"2077","skin.fallout":"Fallout","botOnboarding.add":"\u6DFB\u52A0\u673A\u5668\u4EBA","botOnboarding.title":"\u6DFB\u52A0\u673A\u5668\u4EBA","botOnboarding.intro":"\u8BBE\u7F6E\u5B83\u5982\u4F55\u5DE5\u4F5C\u3002\u9996\u6B21\u626B\u7801\u767B\u5F55\u540E\uFF0C\u540E\u7EED\u53EF\u590D\u7528\u5F53\u524D\u8D26\u53F7\u514D\u626B\u7801\u6DFB\u52A0\u3002","botOnboarding.sessionChecking":"\u6B63\u5728\u68C0\u67E5\u98DE\u4E66\u767B\u5F55\u72B6\u6001\u2026","botOnboarding.sessionReady":"\u5C06\u4F7F\u7528 {user} \xB7 {tenant}","botOnboarding.switchAccount":"\u66F4\u6362\u8D26\u53F7","botOnboarding.reuseCurrentAccount":"\u7EE7\u7EED\u4F7F\u7528\u5F53\u524D\u8D26\u53F7","botOnboarding.sessionSwitching":"\u5C06\u91CD\u65B0\u626B\u7801\u9009\u62E9\u8D26\u53F7","botOnboarding.sessionSwitchingHint":"\u65B0\u767B\u5F55\u6210\u529F\u540E\u4F1A\u8986\u76D6\u672C\u673A\u7F13\u5B58\u3002","botOnboarding.sessionScanRequired":"\u9700\u8981\u626B\u7801\u767B\u5F55","botOnboarding.sessionScanRequiredHint":"\u9996\u6B21\u6DFB\u52A0\u6216\u767B\u5F55\u6001\u8FC7\u671F\u65F6\u626B\u7801\uFF1B\u767B\u5F55\u6001\u4FDD\u5B58\u5728\u672C\u673A\uFF0C\u540E\u7EED\u6709\u6548\u671F\u5185\u514D\u626B\u3002","botOnboarding.confirmReuse":"\u786E\u8BA4\u8D26\u53F7\u5E76\u514D\u626B\u7801\u6DFB\u52A0","botOnboarding.appNameLabel":"\u673A\u5668\u4EBA\u540D\u79F0\uFF08\u53EF\u9009\uFF09","botOnboarding.appNamePlaceholder":"\u4F8B\u5982\uFF1A\u7814\u53D1\u52A9\u624B","botOnboarding.appNameHint":"\u7559\u7A7A\u5C06\u4F7F\u7528 {name}","botOnboarding.cliLabel":"AI CLI","botOnboarding.cliMissingOption":"{label}\uFF08\u672A\u5B89\u88C5\uFF1A{command}\uFF09","botOnboarding.cliMissingHint":"\u5F53\u524D\u673A\u5668\u627E\u4E0D\u5230 {command}\uFF0C\u8BF7\u5148\u5B89\u88C5\u6216\u4FEE\u6B63 daemon \u7684 PATH\uFF1B\u672A\u5C31\u7EEA\u524D\u4E0D\u80FD\u521B\u5EFA Bot\u3002","botOnboarding.dirModeLabel":"\u65B0\u8BDD\u9898\u4ECE\u54EA\u91CC\u5F00\u59CB","botOnboarding.dirModeFixed":"\u56FA\u5B9A\u76EE\u5F55\uFF08\u63A8\u8350\uFF09","botOnboarding.dirModeCard":"\u6BCF\u6B21\u9009\u62E9\u4ED3\u5E93","botOnboarding.dirLabelFixed":"\u9ED8\u8BA4\u5DE5\u4F5C\u76EE\u5F55","botOnboarding.dirLabelCard":"\u4ED3\u5E93\u626B\u63CF\u6839\u76EE\u5F55","botOnboarding.dirPlaceholderFixed":"\u9ED8\u8BA4 ~\uFF08\u5BB6\u76EE\u5F55\uFF09\uFF0C\u9700\u4E3A daemon \u4E3B\u673A\u4E0A\u5DF2\u5B58\u5728\u7684\u76EE\u5F55","botOnboarding.dirPlaceholderCard":"\u5982 ~/projects\uFF0C\u5361\u7247\u5217\u51FA\u5176\u4E0B\u7684 git \u4ED3\u5E93\uFF1B\u9700\u5728 daemon \u4E3B\u673A\u4E0A\u5B58\u5728","botOnboarding.modelLabel":"\u6A21\u578B\uFF08\u53EF\u9009\uFF09","botOnboarding.modelPlaceholder":"\u7559\u7A7A\u4F7F\u7528\u8BE5 CLI \u7684\u9ED8\u8BA4\u6A21\u578B","botOnboarding.modelTtadkPlaceholder":"ttadk \u7F51\u5173\u6A21\u578B\uFF0C\u9ED8\u8BA4 {model}\uFF0C\u53EF\u6539\uFF08\u968F\u65F6\u5728\u6B64\u8C03\u6574\uFF09","botOnboarding.modelTtadkCocoPlaceholder":"CoCo \u65E0\u9700\u6307\u5B9A\u6A21\u578B","botOnboarding.startScan":"\u626B\u7801\u5E76\u6DFB\u52A0","botOnboarding.cancel":"\u53D6\u6D88","botOnboarding.starting":"\u6B63\u5728\u51C6\u5907\u5B89\u5168\u767B\u5F55\u2026","botOnboarding.waiting":"\u4F7F\u7528\u98DE\u4E66\u626B\u7801\u3002\u4E00\u6B21\u626B\u7801\u5373\u53EF\u521B\u5EFA\u5E76\u914D\u7F6E\u300C{name}\u300D\u3002","botOnboarding.waitingCompat":"\u4F7F\u7528\u98DE\u4E66\u626B\u7801\u8FDB\u5165\u517C\u5BB9\u6A21\u5F0F\uFF1B\u6B64\u8DEF\u5F84\u53EF\u80FD\u9700\u8981\u989D\u5916\u626B\u7801\uFF0C\u5E94\u7528\u540D\u79F0\u7531\u5E73\u53F0\u51B3\u5B9A\u3002","botOnboarding.verifying":"\u5E94\u7528\u5DF2\u521B\u5EFA\uFF0C\u6B63\u5728\u786E\u8BA4\u8D26\u53F7\u2026","botOnboarding.configuringPermissions":"\u6B63\u5728\u914D\u7F6E\u6743\u9650\u4E0E\u4E8B\u4EF6\u5E76\u53D1\u5E03\u673A\u5668\u4EBA\u2026","botOnboarding.platformScanHint":"\u517C\u5BB9\u6A21\u5F0F\u9700\u8981\u989D\u5916\u767B\u5F55\u5F00\u653E\u5E73\u53F0\uFF1B\u626B\u7801\u540E\u4F1A\u7EE7\u7EED\u914D\u7F6E\u3002","botOnboarding.platformQrAlt":"\u5F00\u653E\u5E73\u53F0\u767B\u5F55\u4E8C\u7EF4\u7801","botOnboarding.completed":"\u300C{name}\u300D\u5DF2\u53EF\u4F7F\u7528","botOnboarding.botFallback":"\u673A\u5668\u4EBA","botOnboarding.permissionOk":"\u5DF2\u81EA\u52A8\u5BFC\u5165 {count} \u9879\u6743\u9650\u3002","botOnboarding.permissionSkipped":"\uFF08\u8DF3\u8FC7 {count} \u9879\u5F53\u524D\u79DF\u6237\u76EE\u5F55\u4E2D\u6CA1\u6709\u7684\u6743\u9650\uFF09","botOnboarding.permissionVersion":"\u5DF2\u63D0\u4EA4\u53D1\u5E03\u7248\u672C {version}\u3002","botOnboarding.permissionManual":"\u6743\u9650\u672A\u80FD\u81EA\u52A8\u914D\u7F6E\uFF0C\u8BF7\u624B\u52A8\u5B8C\u6210\u4EE5\u4E0B\u6B65\u9AA4\uFF1A","botOnboarding.metaDir":"\u76EE\u5F55","botOnboarding.createFailedTitle":"\u6682\u65F6\u65E0\u6CD5\u521B\u5EFA\u5E94\u7528","botOnboarding.createFailedDescription":"\u8868\u5355\u5185\u5BB9\u5DF2\u4FDD\u7559\u3002\u53EF\u4EE5\u91CD\u8BD5\uFF0C\u6216\u660E\u786E\u9009\u62E9\u517C\u5BB9\u6A21\u5F0F\u3002","botOnboarding.qrExpiredTitle":"\u4E8C\u7EF4\u7801\u5DF2\u8FC7\u671F","botOnboarding.qrExpiredDescription":"\u8868\u5355\u5185\u5BB9\u5DF2\u4FDD\u7559\uFF0C\u8BF7\u751F\u6210\u65B0\u4E8C\u7EF4\u7801\u3002","botOnboarding.authIncompleteTitle":"\u672A\u5B8C\u6210\u6388\u6743","botOnboarding.authIncompleteDescription":"\u6CA1\u6709\u521B\u5EFA\u5E94\u7528\uFF0C\u53EF\u4EE5\u91CD\u65B0\u626B\u7801\u3002","botOnboarding.partialFailureTitle":"\u5E94\u7528\u5DF2\u521B\u5EFA\uFF0C\u4F46\u914D\u7F6E\u5C1A\u672A\u5B8C\u6210","botOnboarding.partialFailureDescription":"\u5DF2\u4FDD\u7559 App ID\uFF0C\u7CFB\u7EDF\u4E0D\u4F1A\u518D\u6B21\u521B\u5EFA\u5E94\u7528\u3002\u8BF7\u6309\u6280\u672F\u8BE6\u60C5\u4E2D\u7684\u7EE7\u7EED\u547D\u4EE4\u6062\u590D\u3002","botOnboarding.technicalDetails":"\u6280\u672F\u8BE6\u60C5","botOnboarding.retry":"\u91CD\u8BD5","botOnboarding.generateQr":"\u751F\u6210\u65B0\u4E8C\u7EF4\u7801","botOnboarding.scanAgain":"\u91CD\u65B0\u626B\u7801","botOnboarding.compatibilityMode":"\u4F7F\u7528\u517C\u5BB9\u6A21\u5F0F","botOnboarding.compatibilityConfirm":"\u517C\u5BB9\u6A21\u5F0F\u53EF\u80FD\u9700\u8981\u989D\u5916\u626B\u7801\uFF0C\u4E14\u65E0\u6CD5\u5E94\u7528\u81EA\u5B9A\u4E49\u673A\u5668\u4EBA\u540D\u79F0\u3002\u662F\u5426\u7EE7\u7EED\uFF1F","botOnboarding.openLink":"\u6253\u4E0D\u5F00\u626B\u7801\uFF1F\u5728\u6D4F\u89C8\u5668\u4E2D\u6253\u5F00","botOnboarding.close":"\u5173\u95ED","botOnboarding.restartHint":"\u5DF2\u5199\u5165 bots.json\u3002\u81EA\u52A8\u4E0A\u7EBF\u672A\u6210\u529F\uFF0C\u6267\u884C botmux restart \u540E\u65B0\u673A\u5668\u4EBA\u751F\u6548\u3002","botOnboarding.liveOk":"\u673A\u5668\u4EBA\u5DF2\u81EA\u52A8\u4E0A\u7EBF\uFF0C\u65E0\u9700\u91CD\u542F\uFF0C\u76F4\u63A5\u5728\u98DE\u4E66\u91CC @ \u5B83\u5373\u53EF\u4F7F\u7528\u3002","botOnboarding.needsOwnerTitle":"\u8FD8\u5DEE\u4E00\u6B65\uFF1A\u786E\u8BA4\u7BA1\u7406\u5458","botOnboarding.needsOwnerDescription":"\u65E0\u6CD5\u4ECE\u626B\u7801\u8D26\u53F7\u786E\u8BA4\u7BA1\u7406\u5458\u8EAB\u4EFD\u3002\u586B\u5199\u4F01\u4E1A\u90AE\u7BB1\u6216\u624B\u673A\u53F7\u540E\u5373\u53EF\u5B8C\u6210\uFF1B\u786E\u8BA4\u524D\u673A\u5668\u4EBA\u4E0D\u4F1A\u542F\u52A8\u3002","botOnboarding.ownerLabel":"\u7BA1\u7406\u5458\u90AE\u7BB1\u6216\u624B\u673A\u53F7","botOnboarding.ownerPlaceholder":"name@company.com \u6216 13011112222","botOnboarding.ownerUseId":"\u4F7F\u7528 ID","botOnboarding.ownerIdLabel":"union_id / open_id","botOnboarding.ownerIdPlaceholder":"on_xxx \u6216 ou_xxx","botOnboarding.ownerSubmit":"\u786E\u8BA4\u5E76\u5B8C\u6210","botOnboarding.ownerEmpty":"\u8BF7\u586B\u5199\u7BA1\u7406\u5458\u90AE\u7BB1\u3001\u624B\u673A\u53F7\u6216 ID\u3002","botOnboarding.ownerInvalid":"\u7BA1\u7406\u5458\u8EAB\u4EFD\u6821\u9A8C\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u540E\u91CD\u8BD5\u3002","botOnboarding.qrAlt":"\u98DE\u4E66\u626B\u7801\u6DFB\u52A0\u673A\u5668\u4EBA\u4E8C\u7EF4\u7801","overview.title":"\u5DE5\u4F5C\u53F0","overview.team":"AI \u56E2\u961F","overview.teamHint":"\u6BCF\u4F4D\u6570\u5B57\u5458\u5DE5\u7684\u5B9E\u65F6\u72B6\u6001","overview.attention":"\u9700\u8981\u4F60\u5904\u7406","overview.activeSessions":"\u6D3B\u8DC3\u4F1A\u8BDD","overview.sessionOverview":"\u4F1A\u8BDD\u6982\u89C8","overview.viewAll":"\u67E5\u770B\u5168\u90E8 \u2192","overview.viewAllPlain":"\u67E5\u770B\u5168\u90E8","overview.sort":"\u6392\u5E8F","overview.sortByTime":"\u6309\u65F6\u95F4","overview.sortAttentionFirst":"\u9700\u8981\u4F60\u5904\u7406\u4F18\u5148","overview.botIdle":"\u5F85\u547D\u4E2D\uFF0C\u968F\u65F6\u53EF\u63A5\u65B0\u4EFB\u52A1","overview.botOffline":"\u79BB\u7EBF \u2014 daemon \u672A\u4E0A\u7EBF","overview.botBusy":"\u6267\u884C\u4E2D \xB7 {count} \u4F1A\u8BDD","overview.botNeedsYou":"\u7B49\u4F60\u56DE\u590D","overview.botReady":"\u5C31\u7EEA","overview.botOff":"\u79BB\u7EBF","overview.botConsole":"\u98DE\u4E66\u540E\u53F0","overview.sessionsCount":"{count} \u4F1A\u8BDD","overview.lastActive":"{time}\u524D\u6D3B\u8DC3","overview.teamCount":"{count} \u4F4D","overview.teamExpand":"\u5C55\u5F00\u5168\u90E8","overview.teamCollapse":"\u6536\u8D77","strip.pending":"{count} \u4EF6\u5F85\u5904\u7406","strip.longestCompact":"\u6700\u4E45 {time} \xB7 {bot} \xB7 {reason}","strip.handle":"\u7ACB\u5373\u5904\u7406","overview.openSessions":"\u6D3B\u8DC3\u4F1A\u8BDD","overview.workingSessions":"\u5DE5\u4F5C\u4E2D","overview.idleSessions":"\u7A7A\u95F2\u4E2D","overview.onlineBots":"\u5728\u7EBF Bot","overview.schedules":"\u5B9A\u65F6\u4EFB\u52A1","overview.groups":"\u7FA4\u804A\u8986\u76D6","overview.enabledSchedules":"\u5DF2\u542F\u7528","overview.total":"\u603B\u8BA1","overview.active":"\u6D3B\u8DC3","overview.daemonRegistry":"daemon \u6CE8\u518C\u8868","overview.chatMatrix":"\u7FA4\u804A\u77E9\u9635","overview.recentSessions":"\u6700\u8FD1\u4F1A\u8BDD","overview.nextSchedules":"\u5B9A\u65F6\u4EFB\u52A1","overview.noSessions":"\u6682\u65E0\u4F1A\u8BDD\u3002","overview.noSchedules":"\u6682\u65E0\u5B9A\u65F6\u4EFB\u52A1\u3002","monitoring.eyebrow":"\u8FD0\u884C\u8D44\u6E90","monitoring.title":"\u76D1\u63A7\u770B\u677F","monitoring.subtitle":"\u5B9E\u65F6\u67E5\u770B\u5BBF\u4E3B\u673A\u3001botmux\u3001\u673A\u5668\u4EBA\u548C\u4F1A\u8BDD\u7684 CPU \u4E0E\u5185\u5B58\u538B\u529B\u3002","monitoring.runtimeTitle":"\u76D1\u63A7\u770B\u677F","monitoring.runtimeSubtitle":"\u5B9E\u65F6\u67E5\u770B botmux \u7684\u8FD0\u884C\u5065\u5EB7\u3001\u8D44\u6E90\u538B\u529B\u548C\u4F1A\u8BDD\u538B\u529B\u3002","monitoring.runtimeHealth":"\u8FD0\u884C\u5065\u5EB7","monitoring.runtimeHealthHint":"\u786E\u8BA4\u6570\u636E\u662F\u5426\u65B0\u9C9C\u3001daemon \u662F\u5426\u5728\u7EBF\u3001\u4F1A\u8BDD\u662F\u5426\u5806\u79EF\u3002","monitoring.resourcePressure":"\u8D44\u6E90\u538B\u529B","monitoring.resourcePressureHint":"\u673A\u5668\u8D44\u6E90\u53EA\u4FDD\u5B58\u5728\u5185\u5B58\u8D8B\u52BF\u4E2D\uFF0C\u91CD\u542F\u540E\u6E05\u7A7A\u3002","monitoring.sessionPressure":"\u4F1A\u8BDD\u538B\u529B","monitoring.sessionPressureHint":"\u5B9A\u4F4D\u957F\u65F6\u95F4\u8FD0\u884C\u3001\u7B49\u5F85\u5904\u7406\u548C\u672A\u5173\u8054\u8FDB\u7A0B\u7684 live \u4F1A\u8BDD\u3002","monitoring.botRuntime":"Bot \u8FD0\u884C","monitoring.botRuntimeHint":"\u6309 bot \u805A\u5408 daemon \u72B6\u6001\u3001\u4F1A\u8BDD\u538B\u529B\u548C\u8D44\u6E90\u5360\u7528\u3002","monitoring.sampleHealth":"\u91C7\u6837\u72B6\u6001","monitoring.sampleAge":"\u6570\u636E\u5E74\u9F84","monitoring.sample.fresh":"\u65B0\u9C9C","monitoring.sample.stale":"\u8FC7\u671F","monitoring.sample.unsupported":"\u4E0D\u652F\u6301","monitoring.sample.unknown":"\u672A\u77E5","monitoring.health.ok":"\u5065\u5EB7","monitoring.health.warn":"\u8B66\u60D5","monitoring.health.danger":"\u9AD8\u538B","monitoring.health.unknown":"\u672A\u77E5","monitoring.daemonHealth":"Daemon \u5728\u7EBF","monitoring.sessionHealth":"\u4F1A\u8BDD\u5065\u5EB7","monitoring.offline":"\u79BB\u7EBF","monitoring.working":"\u5DE5\u4F5C\u4E2D","monitoring.starting":"\u542F\u52A8\u4E2D","monitoring.waiting":"\u7B49\u5F85\u4E2D","monitoring.idle":"\u7A7A\u95F2","monitoring.unknown":"\u672A\u77E5","monitoring.statusDistribution":"\u72B6\u6001\u5206\u5E03","monitoring.longestRunning":"\u6700\u957F\u8FD0\u884C","monitoring.longestWaiting":"\u6700\u957F\u7B49\u5F85","monitoring.unattributedSessions":"\u672A\u5173\u8054\u8FDB\u7A0B","monitoring.unattributedHint":"\u8FD9\u4E9B live \u4F1A\u8BDD\u5F53\u524D\u6CA1\u6709\u53EF\u9760 PID \u5173\u8054\uFF0C\u65E0\u6CD5\u8BA1\u7B97\u4F1A\u8BDD\u7EA7\u8D44\u6E90\u3002","monitoring.unsupported":"\u5F53\u524D\u5E73\u53F0\u6682\u4E0D\u652F\u6301\u8D44\u6E90\u91C7\u6837\u3002","monitoring.unsupportedKicker":"Linux / macOS only","monitoring.unsupportedTitle":"\u8D44\u6E90\u91C7\u6837\u4EC5\u652F\u6301 Linux / macOS","monitoring.unsupportedHint":"\u5F53\u524D\u5E73\u53F0\u65E2\u6CA1\u6709\u53EF\u8BFB\u7684 /proc \u6570\u636E\uFF0C\u4E5F\u6CA1\u6709 macOS \u7684 ps/vm_stat \u91C7\u6837\u901A\u9053\uFF1B\u8FD0\u884C\u5065\u5EB7\u4ECD\u53EF\u7EE7\u7EED\u67E5\u770B\u3002","monitoring.unsupportedRuntimeOk":"\u8FD0\u884C\u5065\u5EB7\u53EF\u7528","monitoring.unsupportedResourceOnly":"CPU / Memory / RSS \u6682\u505C","monitoring.hostCpu":"CPU","monitoring.hostMemory":"Memory","monitoring.botmuxRss":"Botmux \u5185\u5B58","monitoring.botmuxSelf":"\u672C\u4F53","monitoring.botmuxDaemon":"\u5B88\u62A4","monitoring.botmuxWorker":"worker","monitoring.botmuxCli":"\u5916\u90E8 CLI","monitoring.rssHelpLabel":"\u5185\u5B58\u53E3\u5F84\u8BF4\u660E","monitoring.rssHelp":`\u5185\u5B58\u7528 PSS\uFF08Proportional Set Size\uFF09\uFF1A\u5171\u4EAB\u5185\u5B58\u9875\u6309\u5171\u4EAB\u5B83\u7684\u8FDB\u7A0B\u6570\u5206\u644A\uFF0C\u6240\u4EE5\u591A\u8FDB\u7A0B\u76F8\u52A0\u4E0D\u4F1A\u50CF RSS \u90A3\u6837\u628A\u5171\u4EAB\u7684 Node \u8FD0\u884C\u65F6/\u5E93\u91CD\u590D\u8BA1\u6570\uFF08\u8BFB\u4E0D\u5230 smaps_rollup \u65F6\u56DE\u9000 RSS\uFF09\uFF1BmacOS \u4E0A\u7528\u7B49\u4EF7\u8BED\u4E49\u7684 phys_footprint\uFF08\u5373\u6D3B\u52A8\u76D1\u89C6\u5668\u7684\u300C\u5185\u5B58\u300D\uFF0C\u8BFB\u4E0D\u5230\u65F6\u56DE\u9000 RSS\uFF09\u3002
2
2
  \u8FD9\u662F\u300CBotmux \u5168\u5BB6\u6876\u300D\u603B\u548C\uFF0C\u62C6\u5206\uFF1A\u672C\u4F53 = \u5B88\u62A4\u8FDB\u7A0B + \u5404\u4F1A\u8BDD\u7684 botmux worker\uFF08\u81EA\u6709\u4EE3\u7801\uFF09\uFF1B\u5916\u90E8 CLI = Claude/Codex \u7B49 CLI \u53CA\u5176\u5DE5\u5177\u5B50\u8FDB\u7A0B\uFF0C\u901A\u5E38\u5360\u5927\u5934\u3002
3
3
  \u9002\u5408\u5224\u65AD\u5185\u5B58\u70ED\u70B9\u3001\u6301\u7EED\u4E0A\u6DA8\u8D8B\u52BF\u548C\u5F02\u5E38\u5360\u7528\u3002`,"monitoring.trackedSessions":"\u8D8B\u52BF\u4F1A\u8BDD","monitoring.currentSessions":"\u5F53\u524D\u4F1A\u8BDD","monitoring.memoryOnly":"\u8D8B\u52BF\u4EC5\u4FDD\u5B58\u5728\u5185\u5B58\u4E2D\uFF0C\u91CD\u542F\u540E\u6E05\u7A7A","monitoring.trends":"\u8D8B\u52BF","monitoring.trendsHint":"Host \u4E0E Botmux \u805A\u5408\u4FDD\u7559 24h\uFF1B\u4F1A\u8BDD\u5386\u53F2\u53EA\u4FDD\u7559 Top \u96C6\u5408\u3002","monitoring.trendHostCpu":"Host CPU","monitoring.trendHostMemory":"Host Memory","monitoring.trendBotmuxCpu":"Botmux CPU","monitoring.chartNow":"now","monitoring.chartNoData":"no data","monitoring.chartMinutesAgo":"{value} \u5206\u949F\u524D","monitoring.chartHoursAgo":"{value} \u5C0F\u65F6\u524D","monitoring.chartDaysAgo":"{value} \u5929\u524D","monitoring.bots":"\u673A\u5668\u4EBA","monitoring.botsHint":"\u805A\u5408\u5305\u542B daemon \u81EA\u8EAB\u4E0E\u8BE5 bot \u7684\u5168\u90E8\u5F53\u524D\u4F1A\u8BDD\u3002","monitoring.sessions":"\u4F1A\u8BDD","monitoring.sessionsHint":"\u6240\u6709 live \u4F1A\u8BDD\u90FD\u6709\u5F53\u524D\u503C\uFF0C\u53EA\u6709 Top \u4F1A\u8BDD\u4FDD\u7559\u5386\u53F2\u66F2\u7EBF\u3002","monitoring.trackedSessionTrends":"Top \u4F1A\u8BDD\u8D8B\u52BF","monitoring.trackedSessionHint":"\u8FD9\u662F\u5386\u53F2\u4FDD\u7559\u96C6\u5408\uFF0C\u4E0D\u4EE3\u8868\u5168\u91CF\u4F1A\u8BDD\u8303\u56F4\u3002","monitoring.modalClose":"\u5173\u95ED","monitoring.noTrackedHistory":"\u6682\u65E0 Top \u4F1A\u8BDD\u5386\u53F2\u3002","monitoring.noHotSession":"\u6682\u65E0\u70ED\u70B9\u4F1A\u8BDD","monitoring.hottest":"\u70ED\u70B9","monitoring.sort":"\u6392\u5E8F","monitoring.sort.cpu":"CPU","monitoring.sort.rss":"RSS","monitoring.sort.growth":"\u589E\u957F","monitoring.sort.bot":"Bot","monitoring.sort.status":"\u72B6\u6001","monitoring.bot":"Bot","monitoring.cpu":"CPU","monitoring.rss":"RSS","monitoring.growth":"\u589E\u957F","monitoring.daemon":"Daemon","monitoring.sessionsCount":"\u4F1A\u8BDD\u6570","monitoring.session":"\u4F1A\u8BDD","monitoring.confidence":"\u5F52\u56E0","monitoring.rank":"\u5165\u9009\u539F\u56E0","sessions.title":"\u4F1A\u8BDD\u63A7\u5236","sessions.search":"\u641C\u7D22\u7FA4\u804A / \u5DE5\u4F5C\u76EE\u5F55 / \u6807\u9898 / ID","sessions.anyStatus":"\u5168\u90E8\u72B6\u6001","sessions.adoptAny":"\u6765\u6E90\uFF1A\u5168\u90E8","sessions.adoptYes":"\u6765\u6E90\uFF1A\u5916\u90E8\u63A5\u5165 (/adopt)","sessions.adoptNo":"\u6765\u6E90\uFF1A\u98DE\u4E66\u539F\u751F","sessions.chatAny":"\u6240\u5728\u804A\u5929\uFF1A\u5168\u90E8","sessions.chatSearch":"\u641C\u7D22\u804A\u5929\u2026","sessions.chatNoMatch":"\u65E0\u5339\u914D\u7684\u804A\u5929","sessions.cliSearch":"\u641C\u7D22 CLI\u2026","sessions.cliSelectAll":"\u5168\u9009","sessions.cliClear":"\u6E05\u7A7A","sessions.cliNoMatch":"\u65E0\u5339\u914D\u7684 CLI","sessions.multiBotTopics":"\u591A Bot \u8BDD\u9898","sessions.botTriggeredTopics":"Bot \u5524\u9192\u8BDD\u9898\uFF08\u63A8\u65AD\uFF09","sessions.showUnknownChats":"\u663E\u793A\u672A\u77E5\u804A\u5929","sessions.activeOnly":"\u4EC5\u6D3B\u8DC3","sessions.runtime.logical":"\u53EF\u7EE7\u7EED\u4F1A\u8BDD","sessions.runtime.resident":"\u5E38\u9A7B\u4F1A\u8BDD","sessions.runtime.dormant":"\u4F11\u7720\u4F1A\u8BDD","sessions.monitorRoom":"\u76D1\u63A7\u5BA4","sessions.addToMonitorRoom":"\u6DFB\u52A0\u5230\u76D1\u63A7\u5BA4","sessions.monitorRoomAdded":"\u5DF2\u6DFB\u52A0 {added} \u4E2A\uFF0C\u603B\u8BA1 {total} \u4E2A","sessions.closeSelected":"\u5173\u95ED\u9009\u4E2D","sessions.clearSelection":"\u53D6\u6D88\u9009\u62E9","sessions.selectedCount":"\u5DF2\u9009 {count} \u4E2A\u4F1A\u8BDD","sessions.idleCleanupOlderThan":"\u7A7A\u95F2\u8D85\u8FC7","sessions.idleCleanupThreshold":"\u7A7A\u95F2\u6E05\u7406\u9608\u503C","sessions.idleCleanupRun":"\u6E05\u7406\u7A7A\u95F2","sessions.idleCleanupCount":"\u53EF\u6E05\u7406 {count} \u4E2A","sessions.idleCleanupCancel":"\u53D6\u6D88","sessions.idleCleanupApply":"\u786E\u5B9A","sessions.idleCleanupRunning":"\u6E05\u7406\u4E2D\u2026","sessions.idleCleanupDone":"\u5DF2\u5173\u95ED {closed} \u4E2A\uFF0C\u5931\u8D25 {failed} \u4E2A","sessions.idleCleanupFailed":"\u6E05\u7406\u5931\u8D25","sessions.lock":"\u9501\u5B9A\u4F1A\u8BDD","sessions.unlock":"\u89E3\u9501\u4F1A\u8BDD","sessions.locked":"\u9501\u5B9A","sessions.lockSelected":"\u9501\u5B9A\u9009\u4E2D","sessions.unlockSelected":"\u89E3\u9501\u9009\u4E2D","sessions.lockFailed":"\u9501\u5B9A\u72B6\u6001\u66F4\u65B0\u5931\u8D25","sessions.columnsReset":"\u91CD\u7F6E","sessions.columnsMenu":"\u663E\u793A\u5217","sessions.columns":"\u5217","sessions.bot":"bot","sessions.cli":"CLI","sessions.chat":"\u7FA4\u804A","sessions.location":"\u6240\u5728\u804A\u5929","sessions.groupChat":"\u7FA4\u804A","sessions.directChat":"\u5355\u804A","sessions.chatUnknown":"\u672A\u77E5\u804A\u5929","sessions.openChat":"\u6253\u5F00\u7FA4\u804A","sessions.status":"\u72B6\u6001","sessions.status.starting":"\u542F\u52A8\u4E2D","sessions.status.working":"\u5DE5\u4F5C\u4E2D","sessions.status.idle":"\u7A7A\u95F2","sessions.status.dormant":"\u4F11\u7720","sessions.status.analyzing":"\u5206\u6790\u4E2D","sessions.status.stalled":"\u957F\u65F6\u95F4\u65E0\u8FDB\u5C55","sessions.status.active":"\u6D3B\u52A8\u4E2D","sessions.status.limited":"\u9650\u989D\u5DF2\u8FBE","sessions.status.closed":"\u5DF2\u5173\u95ED","sessions.status.unknown":"\u672A\u77E5","sessions.tokenIn":"Token In","sessions.tokenOut":"Token Out","sessions.titleCol":"\u6807\u9898","sessions.workingDir":"\u5DE5\u4F5C\u76EE\u5F55","sessions.created":"\u521B\u5EFA","sessions.last":"\u6700\u8FD1","sessions.preview.latestExchange":"\u6700\u8FD1\u95EE\u7B54","sessions.preview.showFull":"\u67E5\u770B\u5B8C\u6574\u95EE\u7B54","sessions.adopt":"\u63A5\u5165","sessions.actions":"\u64CD\u4F5C","sessions.details":"\u8BE6\u60C5","sessions.copy":"\u590D\u5236","sessions.copied":"\u5DF2\u590D\u5236","sessions.locate":"\u5B9A\u4F4D\u8BDD\u9898","sessions.locating":"\u53D1\u9001\u4E2D...","sessions.cooldown":"\u51B7\u5374 {seconds}s","sessions.openTerminal":"\u7EC8\u7AEF","sessions.openReadonlyTerminal":"\u6253\u5F00\u53EA\u8BFB\u7EC8\u7AEF","sessions.openWritableTerminal":"\u6253\u5F00\u53EF\u64CD\u4F5C Web \u7EC8\u7AEF","sessions.writeLink":"\u64CD\u4F5C\u94FE\u63A5","sessions.writeLinkHint":"\u83B7\u53D6\u53EF\u64CD\u4F5C\u7EC8\u7AEF\u94FE\u63A5\uFF08\u5E26\u5199\u6743\u9650 token\uFF0C\u65B0\u6807\u7B7E\u6253\u5F00\uFF09","sessions.writeLinkFail":"\u83B7\u53D6\u64CD\u4F5C\u94FE\u63A5\u5931\u8D25","sessions.copyCommand":"\u590D\u5236\u590D\u73B0\u547D\u4EE4","sessions.copyCommandHint":"\u590D\u5236\u8BE5\u4F1A\u8BDD\u51B7\u542F\u52A8\u7684\u8FD1\u4F3C\u590D\u73B0\u547D\u4EE4\uFF08bin+\u53C2\u6570+\u5173\u952Eenv\uFF0C\u7701\u7565\u6C99\u7BB1\u5305\u88C5\uFF09\uFF0C\u7C98\u5230\u8C03\u8BD5\u7EC8\u7AEF\u6539\u53C2\u6570\u590D\u73B0\u3002\u542B token/\u51ED\u8BC1\uFF0C\u6CE8\u610F\u4FDD\u5BC6","sessions.copyCommandDone":"\u5DF2\u590D\u5236","sessions.copyCommandFail":"\u83B7\u53D6\u590D\u73B0\u547D\u4EE4\u5931\u8D25","sessions.debugTerminal":"\u8C03\u8BD5\u7EC8\u7AEF","sessions.debugTerminalHint":"\u6253\u5F00\u4E00\u4E2A\u4E0D\u7ED1\u8BDD\u9898\u7684\u4E34\u65F6\u7EC8\u7AEF\uFF0C\u7C98\u8D34\u590D\u73B0\u547D\u4EE4\u6392\u67E5\u95EE\u9898\uFF08\u4EC5\u7BA1\u7406\u5458\uFF09","sessions.debugTerminalPrompt":"\u8C03\u8BD5\u7EC8\u7AEF\u7684\u5DE5\u4F5C\u76EE\u5F55\uFF08\u7559\u7A7A\u5219\u7528\u4F1A\u8BDD\u9ED8\u8BA4\u76EE\u5F55\uFF09\uFF1A","sessions.debugTerminalFail":"\u6253\u5F00\u8C03\u8BD5\u7EC8\u7AEF\u5931\u8D25","sessions.close":"\u5173\u95ED\u4F1A\u8BDD","sessions.restart":"\u91CD\u542F CLI","sessions.restartConfirmIntro":"\u51C6\u5907\u91CD\u542F\u5F53\u524D CLI\u3002","sessions.restartConfirmStatus":"\u5F53\u524D\u72B6\u6001","sessions.restartConfirmCli":"CLI","sessions.restartConfirmQuestion":"\u786E\u8BA4\u91CD\u542F\u8FD9\u4E2A CLI\uFF1F","sessions.restartFailed":"\u91CD\u542F\u5931\u8D25","sessions.resume":"\u6062\u590D\u4F1A\u8BDD","sessions.dismiss":"\u5173\u95ED","sessions.closeConfirm":"\u5173\u95ED\u8FD9\u4E2A\u4F1A\u8BDD\uFF1F","sessions.resumeFailed":"\u6062\u590D\u5931\u8D25","sessions.insight":"\u6D1E\u5BDF","sessions.insightLoading":"\u5206\u6790\u4E2D\u2026","sessions.insightUnavailable":"\u65E0\u6CD5\u5206\u6790","sessions.insightEmpty":"\u672C\u4F1A\u8BDD\u8FD8\u6CA1\u6709\u53EF\u5206\u6790\u7684\u5DE5\u5177 span\u3002","sessions.insightMetrics":"span {total} \xB7 \u5931\u8D25 {failed} \xB7 \u6162 {slow} \xB7 \u8BFB\u6539\u6BD4 {rw} \xB7 \u538B\u7F29 {compactions}","sessions.insightSuggestions":"\u5EFA\u8BAE","sessions.insightSpans":"\u52A8\u4F5C span","sessions.insightCapped":"\u4EC5\u663E\u793A\u524D {shown}/{total} \u6761","sessions.insightAsOf":"\u622A\u81F3 {asOf}","sessions.insightPartial":"\uFF08\u53EF\u80FD\u4E0D\u542B\u8FDB\u884C\u4E2D\u7684\u6700\u65B0\u4E00\u8F6E\uFF09","monitorRoom.eyebrow":"\u76D1\u63A7\u5BA4","monitorRoom.title":"\u4F1A\u8BDD\u76D1\u63A7\u5BA4","monitorRoom.subtitle":"\u628A\u591A\u4E2A\u4F1A\u8BDD\u7684 Web Terminal \u653E\u5728\u540C\u4E00\u4E2A\u9875\u9762\u91CC\uFF0C\u9002\u5408\u957F\u65F6\u95F4\u89C2\u5BDF\u591A\u8DEF\u4EFB\u52A1\u8FDB\u5C55\u3002","monitorRoom.backToSessions":"\u8FD4\u56DE\u4F1A\u8BDD","monitorRoom.clear":"\u6E05\u7A7A","monitorRoom.clearConfirm":"\u6E05\u7A7A\u76D1\u63A7\u5BA4\u91CC\u7684\u6240\u6709\u4F1A\u8BDD\uFF1F","monitorRoom.summary":"\u5171 {count} \u4E2A\u4F1A\u8BDD\uFF0C{live} \u4E2A\u7EC8\u7AEF\u53EF\u7528","monitorRoom.autoActive":"\u7A7A\u5217\u8868\u663E\u793A\u6D3B\u8DC3\u4F1A\u8BDD","monitorRoom.autoActiveHelp":"\u9ED8\u8BA4\u5173\u95ED\uFF1B\u5F00\u542F\u540E\uFF0C\u5982\u679C\u6CA1\u6709\u624B\u52A8\u6DFB\u52A0\u4F1A\u8BDD\uFF0C\u76D1\u63A7\u5BA4\u4F1A\u81EA\u52A8\u663E\u793A\u4F1A\u8BDD\u9875\u201C\u4EC5\u6D3B\u8DC3\u201D\u7B5B\u9009\u5F97\u5230\u7684\u6240\u6709\u4F1A\u8BDD\u3002","monitorRoom.autoSummary":"\u672A\u624B\u52A8\u6DFB\u52A0\u4F1A\u8BDD\uFF0C\u81EA\u52A8\u663E\u793A {count} \u4E2A\u6D3B\u8DC3\u4F1A\u8BDD\uFF0C{live} \u4E2A\u7EC8\u7AEF\u53EF\u7528","monitorRoom.emptySummary":"\u76D1\u63A7\u5BA4\u4E3A\u7A7A","monitorRoom.emptyTitle":"\u8FD8\u6CA1\u6709\u6DFB\u52A0\u4F1A\u8BDD","monitorRoom.emptyHelp":"\u56DE\u5230\u4F1A\u8BDD\u9875\uFF0C\u9009\u4E2D\u4F1A\u8BDD\u540E\u70B9\u51FB\u201C\u6DFB\u52A0\u5230\u76D1\u63A7\u5BA4\u201D\u3002","monitorRoom.autoEmptyTitle":"\u6682\u65E0\u6D3B\u8DC3\u4F1A\u8BDD","monitorRoom.autoEmptyHelp":"\u81EA\u52A8\u663E\u793A\u5DF2\u5F00\u542F\uFF0C\u4F46\u5F53\u524D\u6CA1\u6709\u7B26\u5408\u201C\u4EC5\u6D3B\u8DC3\u201D\u6761\u4EF6\u7684\u4F1A\u8BDD\u3002","monitorRoom.openSessions":"\u6253\u5F00\u4F1A\u8BDD\u9875","monitorRoom.remove":"\u79FB\u9664","monitorRoom.openTerminal":"\u6253\u5F00\u5355\u72EC\u7EC8\u7AEF","monitorRoom.closePopover":"\u5173\u95ED\u6D6E\u5C42","monitorRoom.missing":"\u5F53\u524D\u5217\u8868\u4E2D\u4E0D\u5B58\u5728","monitorRoom.missingHelp":"\u8FD9\u4E2A\u4F1A\u8BDD\u53EF\u80FD\u5DF2\u7ECF\u88AB\u6E05\u7406\uFF0C\u6216\u5F53\u524D dashboard \u5FEB\u7167\u8FD8\u6CA1\u6709\u52A0\u8F7D\u5230\u5B83\u3002","monitorRoom.terminalUnavailable":"\u6682\u65E0\u53EF\u7528\u7EC8\u7AEF","monitorRoom.terminalUnavailableHelp":"\u4F1A\u8BDD\u53EF\u80FD\u5DF2\u5173\u95ED\u3001\u8FD8\u672A\u542F\u52A8 Web Terminal\uFF0C\u6216\u5F53\u524D\u8BBF\u95EE\u65B9\u5F0F\u4E0B\u6CA1\u6709\u53EF\u7528\u4EE3\u7406\u7AEF\u53E3\u3002","monitorRoom.updated":"\u66F4\u65B0 {time}","nav.insights":"\u6570\u636E\u6D1E\u5BDF","insights.title":"\u6570\u636E\u6D1E\u5BDF","insights.refresh":"\u5237\u65B0","insights.search":"\u641C\u7D22\u4F1A\u8BDD / bot / \u76EE\u5F55\u2026","insights.filter":"\u7B5B\u9009","insights.filterAll":"\u5168\u90E8","insights.filterAllSessions":"\u5168\u90E8\u4F1A\u8BDD","insights.filterAllCli":"\u5168\u90E8 CLI","insights.filterReview":"\u503C\u5F97\u590D\u76D8","insights.filterFailed":"\u6709\u5931\u8D25","insights.filterSlow":"\u6709\u6162 span","insights.loading":"\u5206\u6790\u4E2D\u2026","insights.loaded":"\u5DF2\u52A0\u8F7D {count} \u4E2A\u4F1A\u8BDD","insights.unavailable":"\u52A0\u8F7D\u5931\u8D25","insights.listCount":"\u663E\u793A {shown}/{total}","insights.tabOverview":"\u603B\u89C8","insights.tabSessions":"\u4F1A\u8BDD","insights.tabDist":"\u5206\u5E03","insights.tabHot":"\u70ED\u70B9","insights.projectAll":"\u5168\u90E8\u9879\u76EE","insights.timeAll":"\u5168\u90E8\u65F6\u95F4","insights.time1d":"\u8FD1 1 \u5929","insights.time7d":"\u8FD1 7 \u5929","insights.time30d":"\u8FD1 30 \u5929","insights.clear":"\u6E05\u9664","insights.emptyAnalyzableHint":"\u52FE\u9009\u300C\u542B\u672A\u5206\u6790\u300D\u53EF\u67E5\u770B\u5176\u4F59\u4F1A\u8BDD","insights.showAll":"\u542B\u672A\u5206\u6790","insights.distHint":"\u5F53\u524D\u7B5B\u9009\u4E0B\u5404\u4F1A\u8BDD\u7684\u6307\u6807\u5206\u5E03\u2014\u2014\u770B\u8D70\u52BF\u3001\u770B\u5178\u578B\u503C\u843D\u5728\u54EA\u3002","insights.distSpans":"\u6BCF\u4F1A\u8BDD span \u6570","insights.distFailed":"\u6BCF\u4F1A\u8BDD\u5931\u8D25\u6570","insights.distSlow":"\u6BCF\u4F1A\u8BDD\u6162 span","insights.distAgentTime":"agent \u5DE5\u4F5C\u65F6\u957F","insights.distRw":"\u8BFB\u6539\u6BD4","insights.distChurn":"\u4EE3\u7801\u6539\u52A8\u884C\u6570","insights.distTrend":"\u6309\u5929\u8D8B\u52BF\uFF08\u8FD1 4 \u5468\uFF09","insights.distTrendSub":"\u6BCF\u65E5\u4F1A\u8BDD\u6570","insights.distMedian":"\u4E2D\u4F4D {v}","insights.distEmpty":"\u5F53\u524D\u7B5B\u9009\u4E0B\u6CA1\u6709\u53EF\u5206\u6790\u7684\u4F1A\u8BDD\u3002","insights.disclosure":`\u53E3\u5F84\uFF1A\u8017\u65F6\u53EA\u7B97\u5DE5\u5177\u6267\u884C\u65F6\u95F4\uFF0C\u5DF2\u5254\u9664\u7B49\u7528\u6237\u56DE\u590D\uFF08\u95EE\u7B54/\u8BA1\u5212\u786E\u8BA4\uFF09\u7684\u6302\u673A\u65F6\u957F\uFF0C\u6545\u4E0D\u53CD\u6620\u5899\u949F\u65F6\u957F\uFF1B
4
4
  Codex \u4F1A\u8BDD\u7684\u300C\u8BFB\u300D\u591A\u8D70 shell\uFF08exec_command\uFF09\uFF0C\u4E0D\u8BA1\u5165\u300C\u8BFB\u300D\u76F8\uFF0C\u6545\u5176\u8BFB\u6539\u6BD4\u4F1A\u504F\u4F4E\u751A\u81F3\u4E3A 0\uFF1B
5
5
  \u4EE3\u7801\u6539\u52A8\u6309 patch \u89E3\u6790\uFF0C\u4EC5\u53D6\u6BCF\u4F1A\u8BDD\u6700\u6D3B\u8DC3\u7684\u82E5\u5E72\u6587\u4EF6\uFF0C\u4E0E Claude \u7684\u7ED3\u6784\u5316\u7EDF\u8BA1\u53E3\u5F84\u4E0D\u540C\u3002\u8DE8\u5DE5\u5177\u7684\u5206\u5E03\u4E0E\u6BD4\u503C\u4EC5\u4F9B\u53C2\u8003\uFF0C\u4E0D\u5B9C\u76F4\u63A5\u5BF9\u6BD4\u3002`,"insights.rwNote":"Codex \u8BFB\u591A\u8D70 shell\uFF0C\u672A\u8BA1\u5165\u8BFB\u76F8","insights.viewSessions":"\u6309\u4F1A\u8BDD\u67E5\u770B","insights.hotHint":"\u8DE8\u4F1A\u8BDD\u590D\u53D1\u4FE1\u53F7\u2014\u2014\u6700\u8BE5\u6536\u655B\u7684\u5730\u65B9\u3002","insights.hotToolFailures":"\u5DE5\u5177\u62A5\u9519\u70ED\u70B9","insights.hotSlowSessions":"\u6700\u6162\u7684\u4F1A\u8BDD","insights.hotProjects":"\u9879\u76EE\u5206\u5E03","insights.hotFiles":"\u6587\u4EF6\u590D\u53D1\u70ED\u70B9","insights.hotCommands":"\u547D\u4EE4\u590D\u53D1\u70ED\u70B9","insights.hotErrors":"\u62A5\u9519\u590D\u53D1\u70ED\u70B9","insights.hotComingSoon":"\u6587\u4EF6 / \u547D\u4EE4\u590D\u53D1\u70ED\u70B9\u5373\u5C06\u4E0A\u7EBF\uFF08\u9700\u7ED9\u5F15\u64CE\u52A0\u8DE8\u4F1A\u8BDD\u805A\u5408\uFF09\u3002","insights.hotSessionsCol":"\u4F1A\u8BDD","insights.hotFailsCol":"\u5931\u8D25","insights.hotSlowCol":"\u6162","insights.backToList":"\u8FD4\u56DE\u5217\u8868","insights.sortLabel":"\u6392\u5E8F","insights.sortRecent":"\u6700\u8FD1","insights.sortReview":"\u56DE\u770B\u5206","insights.sortSpans":"span \u6570","insights.sortFails":"\u5931\u8D25","insights.sortSlow":"\u6162","insights.sortAgent":"\u65F6\u957F","insights.layoutCard":"\u5361\u7247","insights.layoutTable":"\u8868\u683C","insights.colTitle":"\u4F1A\u8BDD","insights.colProject":"\u9879\u76EE","insights.colTime":"\u65F6\u95F4","insights.paletteOpen":"\u8DF3\u8F6C \u2318K","insights.palettePlaceholder":"\u8DF3\u8F6C\u5230 tab \u6216\u641C\u7D22\u4F1A\u8BDD\u2026","insights.paletteTabs":"\u89C6\u56FE","insights.paletteSessions":"\u4F1A\u8BDD","insights.paletteEmpty":"\u6CA1\u6709\u5339\u914D\u9879","insights.tabFlow":"\u884C\u4E3A\u6D41","insights.flowHint":"\u667A\u80FD\u4F53\u628A\u52A8\u4F5C\u4E0E\u65F6\u95F4\u82B1\u5728\u54EA\u4E9B\u6D3B\u52A8\u9636\u6BB5\uFF0C\u4EE5\u53CA\u5404\u4F1A\u8BDD\u7684\u8282\u594F\u5206\u5E03\u3002","insights.flowPipeline":"\u6D3B\u52A8\u9636\u6BB5\u6D41\u6C34\u7EBF","insights.flowPipeSub":"\u7814\u7A76 \u2192 \u4FEE\u6539 \u2192 \u8FD0\u884C \u2192 \u59D4\u6D3E \u2192 \u8BA8\u8BBA\uFF1B\u4E0A=\u52A8\u4F5C\u6570\uFF0C\u4E0B=\u8017\u65F6","insights.flowShares":"\u52A8\u4F5C\u5360\u6BD4 vs \u65F6\u95F4\u5360\u6BD4","insights.flowActShare":"\u52A8\u4F5C\u5360\u6BD4","insights.flowTimeShare":"\u65F6\u95F4\u5360\u6BD4","insights.flowRhythm":"\u5404\u4F1A\u8BDD\u8282\u594F\uFF08\u6309\u65F6\u957F\uFF09","insights.subagents":"\u5B50\u4EE3\u7406","insights.subagentsHint":"\u672C\u4F1A\u8BDD\u59D4\u6D3E\u51FA\u53BB\u7684\u5B50\u4EE3\u7406\uFF08Task/Agent\uFF09\uFF0C\u5404\u81EA\u505A\u4E86\u4EC0\u4E48\u3001\u8DD1\u4E86\u591A\u4E45\u3002","insights.readsShort":"\u8BFB","insights.editsShort":"\u6539","insights.durShort":"\u65F6\u957F","insights.empty":"\u6CA1\u6709\u5339\u914D\u7684\u4F1A\u8BDD\u3002","insights.selectSession":"\u4ECE\u5DE6\u4FA7\u9009\u4E00\u4E2A\u4F1A\u8BDD\uFF0C\u67E5\u770B\u52A8\u4F5C span \u4E0E\u5EFA\u8BAE\u3002","insights.detailLoading":"\u52A0\u8F7D\u4F1A\u8BDD\u8BE6\u60C5\u2026","insights.recommendations":"\u4F18\u5316\u5EFA\u8BAE","insights.recommendationsHint":"\u57FA\u4E8E\u89C4\u5219\u7684\u8DE8\u4F1A\u8BDD\u6C47\u603B\uFF0C\u6BCF\u6761\u53EF\u8FFD\u6EAF\u5230\u6307\u6807\u3002","insights.noRecommendations":"\u6682\u65E0\u5EFA\u8BAE\u3002","insights.seenInSessions":"\u51FA\u73B0\u5728 {count} \u4E2A\u4F1A\u8BDD","insights.toolFailures":"\u9AD8\u9891\u5DE5\u5177\u5931\u8D25","insights.toolFailuresHint":"\u6309\u5DE5\u5177\u6C47\u603B\u5931\u8D25 span\u3002","insights.noFailures":"\u6CA1\u6709\u5931\u8D25 span\u3002","insights.metricSessions":"\u4F1A\u8BDD","insights.metricAnalyzed":"\u5DF2\u5206\u6790 {count}","insights.metricSpans":"span","insights.metricSafe":"\u5DF2\u8131\u654F","insights.metricFailed":"\u5931\u8D25 span","insights.metricSlow":"\u6162 span","insights.metricRw":"\u8BFB\u6539\u6BD4","insights.metricCompactions":"\u538B\u7F29 {count}","insights.spansShort":"span ","insights.failedShort":"\u5931\u8D25 ","insights.slowShort":"\u6162 ","insights.rwShort":"\u8BFB\u6539 ","insights.unsupported":"\u8BE5 CLI \u6682\u4E0D\u652F\u6301","insights.noTranscript":"\u6682\u65E0 transcript","insights.parseError":"\u89E3\u6790\u5931\u8D25","insights.noSpans":"\u6682\u65E0\u53EF\u5206\u6790 span\u3002","insights.sevBad":"\u4E25\u91CD","insights.sevWarn":"\u6CE8\u610F","insights.sevInfo":"\u63D0\u793A","insights.phase.research":"\u7814\u7A76","insights.phase.edit":"\u4FEE\u6539","insights.phase.run":"\u8FD0\u884C","insights.phase.delegate":"\u59D4\u6D3E","insights.phase.discuss":"\u8BA8\u8BBA","insights.trace":"\u52A8\u4F5C span","insights.ledger":"\u9010\u8F6E\u5BF9\u8D26","insights.detailTabs":"\u89C2\u6D4B\u660E\u7EC6","insights.spanStatus":"\u72B6\u6001","insights.spanTool":"\u5DE5\u5177","insights.spanPhase":"\u9636\u6BB5","insights.spanDuration":"\u8017\u65F6","insights.spanTurn":"\u8F6E","insights.spanSummary":"\u6458\u8981","insights.ledgerMore":"\u5C55\u5F00\u53E6\u5916 {count} \u6761\u6458\u8981","insights.ledgerOmitted":"\u8FD8\u6709 {count} \u6761\u5DF2\u6298\u53E0","insights.ledgerNoContent":"\u672C\u8F6E\u6CA1\u6709\u53EF\u5C55\u793A\u7684\u8131\u654F\u6458\u8981\u3002","insights.diagShow":"\u67E5\u770B\u8BC1\u636E","insights.diagActive":"\u6B63\u5728\u67E5\u770B","insights.evMatched":"\u547D\u4E2D {count} \u6761\u8BC1\u636E","insights.evMatchedCapped":"\u547D\u4E2D {matched} \u6761\uFF0C\u663E\u793A\u524D {shown} \u6761","insights.evDefault":"\u91CD\u70B9 {shown} / \u5171 {total} \u6761","insights.evShowAll":"\u663E\u793A\u5168\u90E8 {count} \u6761","insights.evBackToEvidence":"\u53EA\u770B\u91CD\u70B9","insights.intent.run_script":"\u8FD0\u884C\u811A\u672C","insights.intent.test":"\u6D4B\u8BD5","insights.intent.typecheck":"\u7C7B\u578B\u68C0\u67E5","insights.intent.lint":"Lint","insights.intent.git":"Git","insights.intent.search":"\u641C\u7D22","insights.intent.read_file":"\u8BFB\u6587\u4EF6","insights.intent.edit_file":"\u6539\u6587\u4EF6","insights.intent.write_file":"\u5199\u6587\u4EF6","insights.intent.delegate":"\u59D4\u6D3E","insights.intent.unknown":"\u64CD\u4F5C","insights.result.ok":"\u6210\u529F","insights.result.tool_error":"\u5DE5\u5177\u62A5\u9519","insights.result.test_failed":"\u6D4B\u8BD5\u5931\u8D25","insights.result.typecheck_failed":"\u7C7B\u578B\u68C0\u67E5\u5931\u8D25","insights.result.lint_failed":"Lint \u5931\u8D25","insights.result.command_failed":"\u547D\u4EE4\u5931\u8D25","insights.result.timeout":"\u8D85\u65F6","insights.result.no_output":"\u65E0\u8F93\u51FA","insights.result.unknown":"\u672A\u77E5","insights.tag.failure":"\u5931\u8D25","insights.tag.slow":"\u6162","insights.tag.retry":"\u8FD4\u5DE5","insights.tag.read_write_imbalance":"\u8BFB\u6539\u5931\u8861","insights.tag.diagnostic":"\u8BCA\u65AD","insights.tag.normal":"\u6B63\u5E38","insights.turnHeadline.turn_has_failures":"\u672C\u8F6E {failures} \u6B21\u5931\u8D25","insights.turnHeadline.turn_has_slow_spans":"\u672C\u8F6E\u6709\u8017\u65F6\u504F\u957F\u7684\u64CD\u4F5C","insights.turnHeadline.turn_has_retries":"\u672C\u8F6E\u53CD\u590D\u91CD\u8BD5\u540C\u4E00\u64CD\u4F5C","insights.turnHeadline.turn_read_write_imbalance":"\u672C\u8F6E\u6539\u591A\u8BFB\u5C11\uFF08\u6539 {edits} / \u8BFB {reads}\uFF09","insights.evTimeline":"\u5168\u90E8 {count} \u6761 span \u65F6\u95F4\u7EBF","insights.evNoFlags":"\u6CA1\u6709\u88AB\u6807\u8BB0\u4E3A\u5931\u8D25 / \u6162 / \u8FD4\u5DE5\u7684 span","insights.turnAllNormal":"{count} \u4E2A\u8F6E\u6B21\u90FD\u6B63\u5E38\uFF0C\u6CA1\u6709\u503C\u5F97\u590D\u76D8\u7684","insights.turnEvidence":"\u67E5\u770B\u672C\u8F6E {count} \u6761\u8BC1\u636E","insights.turnHiddenNormal":"\u53E6\u6709 {count} \u4E2A\u6B63\u5E38\u8F6E\u6B21\uFF08\u5DF2\u9690\u85CF\uFF09","insights.mReads":"\u8BFB","insights.mEdits":"\u6539","insights.mRuns":"\u8DD1","insights.mFailures":"\u5931\u8D25","insights.mDur":"\u8017\u65F6","insights.turnHeadline.turn_normal":"\u6B63\u5E38","insights.rec.fix_repeated_tool_failures":"\u53CD\u590D\u5931\u8D25\u7684\u547D\u4EE4\u9700\u8981\u6536\u655B","insights.rec.split_slow_operation":"\u6162\u64CD\u4F5C\u62D6\u6162\u4E86\u6574\u4E2A\u4F1A\u8BDD","insights.rec.add_read_pass_before_edit":"\u6539\u4E4B\u524D\u8BFB\u5F97\u592A\u5C11","insights.rec.preserve_context_checkpoints":"\u4E0A\u4E0B\u6587\u88AB\u538B\u7F29\uFF0C\u6CE8\u610F\u7559\u5B58\u6863","insights.impact.impact_failed_spans":"{failedSpans} \u4E2A\u52A8\u4F5C\u5931\u8D25\uFF08\u6700\u591A\uFF1A{topTool} \xD7{topToolFailures}\uFF09","insights.impact.impact_slow_spans":"{slowSpansTotal} \u4E2A\u6162\u52A8\u4F5C\u62D6\u6162\u8FDB\u5EA6","insights.impact.impact_low_read_write_ratio":"\u6539\u4E86 {writeSpans} \u5904\uFF0C\u53EA\u8BFB\u4E86 {readSpans} \u5904","insights.impact.impact_context_compaction":"\u672C\u4F1A\u8BDD\u53D1\u751F {compactions} \u6B21\u4E0A\u4E0B\u6587\u538B\u7F29","insights.why.why_tool_failure_concentrated":"\u5931\u8D25\u96C6\u4E2D\u5728 {topTool}\uFF08\u5171 {topToolFailures} \u6B21\uFF09\uFF0C\u591A\u534A\u662F\u540C\u4E00\u7C7B\u95EE\u9898","insights.why.why_slow_span_dominates":"\u5C11\u6570\u8017\u65F6\u52A8\u4F5C\u5360\u4E86\u5927\u5934\uFF0C\u6700\u6162\u7684\u662F {slowestTool}","insights.why.why_edits_outpaced_reads":"\u8BFB\u5199\u6BD4 {readWriteRatio}\uFF0C\u6539\u5F97\u6BD4\u8BFB\u5F97\u591A\u5BB9\u6613\u8E29\u5751\u8FD4\u5DE5","insights.why.why_context_compaction_happened":"\u957F\u4F1A\u8BDD\u88AB\u538B\u7F29\uFF0C\u65E9\u671F\u7684\u51B3\u7B56/\u4E0A\u4E0B\u6587\u53EF\u80FD\u5DF2\u4E22\u5931","insights.action.inspect_failed_span_details":"\u9010\u4E2A\u770B\u5931\u8D25\u52A8\u4F5C\u7684\u8BE6\u60C5\uFF0C\u5B9A\u4F4D\u6839\u56E0","insights.action.add_preflight_or_timeout":"\u7ED9\u9AD8\u9891\u5931\u8D25\u7684\u547D\u4EE4\u52A0\u524D\u7F6E\u68C0\u67E5\u6216\u8D85\u65F6\u63A7\u5236","insights.action.narrow_or_split_slow_operation":"\u628A\u6162\u64CD\u4F5C\u6536\u7A84\u6216\u62C6\u5C0F\uFF08\u5982\u53EA\u8DD1\u5B9A\u5411\u7528\u4F8B\uFF09","insights.action.surface_timeout_or_progress":"\u66F4\u65E9\u66B4\u9732\u8D85\u65F6/\u8FDB\u5EA6\uFF0C\u522B\u8BA9\u5B83\u9ED8\u9ED8\u5361\u4F4F","insights.action.read_or_search_before_editing":"\u6539\u964C\u751F\u6587\u4EF6\u524D\u5148\u8BFB\u4E00\u904D\u6216\u641C\u4E00\u4E0B","insights.action.verify_assumptions_before_running":"\u52A8\u624B\u524D\u5148\u9A8C\u8BC1\u5047\u8BBE\uFF0C\u51CF\u5C11\u76F2\u6539","insights.action.write_checkpoints_for_long_tasks":"\u957F\u4EFB\u52A1\u628A\u51B3\u7B56\u548C\u68C0\u67E5\u70B9\u843D\u5230\u7B14\u8BB0\u91CC","insights.struct.shell":"shell \u547D\u4EE4","insights.struct.fileEdit":"\u6587\u4EF6\u7F16\u8F91","insights.struct.readSearch":"\u8BFB\u53D6/\u641C\u7D22","insights.struct.agentTask":"\u5B50 agent \u4EFB\u52A1","insights.struct.toolInput":"\u5DE5\u5177\u8F93\u5165","insights.struct.toolResult":"\u5DE5\u5177\u8F93\u51FA","insights.struct.toolError":"\u5DE5\u5177\u62A5\u9519","insights.struct.patchFailed":"\u8865\u4E01\u5931\u8D25","insights.struct.patchApplied":"\u8865\u4E01\u5DF2\u5E94\u7528","insights.struct.exit":"exit {code}","insights.spanAll":"\u5168\u90E8","insights.dDetail":"\u8BE6\u60C5","insights.dCollapse":"\u6536\u8D77","insights.dPhase":"\u9636\u6BB5","insights.dStart":"\u8D77\u59CB","insights.dDur":"\u8017\u65F6","insights.dIntent":"\u610F\u56FE","insights.dResult":"\u7ED3\u679C","insights.dIn":"\u8F93\u5165","insights.dOut":"\u8F93\u51FA","insights.dTags":"\u6807\u7B7E","insights.dTurnContext":"\u7B2C {turn} \u8F6E\u4E0A\u4E0B\u6587","insights.advice.failure":"\u{1F4A1} \u770B\u6E05\u62A5\u9519\u518D\u52A8\u624B\uFF0C\u522B\u76F2\u76EE\u91CD\u8BD5","insights.advice.retry":"\u{1F4A1} \u540C\u4E00\u6B65\u53CD\u590D\u91CD\u8BD5\u2014\u2014\u5148\u5B9A\u4F4D\u6839\u56E0\u518D\u7EE7\u7EED","insights.advice.read_write_imbalance":"\u{1F4A1} \u6539\u4E4B\u524D\u5148\u8BFB\u76F8\u5173\u6587\u4EF6\uFF0C\u51CF\u5C11\u8FD4\u5DE5","insights.advice.slow":"\u{1F4A1} \u6162\u64CD\u4F5C\uFF1A\u8003\u8651\u8DD1\u5B9A\u5411\u7528\u4F8B\u6216\u62C6\u5C0F","insights.turnPrompt":"\u7528\u6237","insights.turnExpand":"\u5C55\u5F00 {count} \u6B65","insights.turnCollapse":"\u6536\u8D77","insights.turnRail":"\u4F1A\u8BDD\u8F68\u8FF9","insights.gantt":"\u5DE5\u4F5C\u65F6\u5E8F","insights.ganttCaption":"{span} \u4E2A\u52A8\u4F5C \xB7 \u8DE8\u5EA6 {dur} \xB7 \u6D3B\u8DC3 {active}","insights.ctxCurve":"\u4E0A\u4E0B\u6587\u66F2\u7EBF","insights.ctxCaption":"\u6BCF\u8F6E\u5CF0\u503C in+cache \xB7 \u5CF0\u503C {peak} \xB7 {turns} \u8F6E","insights.ctxTurn":"\u8F6E {n}","insights.railSubagent":"\u5B50\u4EE3\u7406","insights.railSubagents":"{n} \u4E2A\u5B50\u4EE3\u7406","insights.turnPromptExpand":"\u5C55\u5F00","insights.turnPromptCollapse":"\u6536\u8D77","insights.turnPromptRaw":"\u539F\u6587","insights.turnPromptRendered":"\u6E32\u67D3","insights.srcMentions":"\u63D0\u5230","insights.senderHuman":"\u7528\u6237","insights.senderA2A":"A2A","insights.senderOther":"\u5176\u4ED6","insights.senderSystem":"\u7CFB\u7EDF","insights.turnPromptFull":"\u5168\u6587","insights.modalClose":"\u5173\u95ED","insights.promptTruncated":"\u5185\u5BB9\u8F83\u957F\uFF0C\u5DF2\u622A\u65AD","insights.replay":"\u5BF9\u8BDD\u56DE\u653E","insights.replayAgent":"agent \u64CD\u4F5C","insights.replaySearch":"\u641C\u7D22\u5BF9\u8BDD\u5185\u5BB9\u2026","insights.replayBy":"\u53D1\u8D77\u4EBA","insights.replayState":"\u72B6\u6001","insights.replayLoadMore":"\u52A0\u8F7D\u66F4\u591A\uFF08{shown}/{total}\uFF09","insights.replayAllLoaded":"\u5DF2\u5168\u90E8\u52A0\u8F7D\uFF08\u5171 {total} \u6761\uFF09","insights.replayEmpty":"\u6CA1\u6709\u5339\u914D\u7684\u6D88\u606F","insights.replayNoText":"\uFF08\u65E0\u6B63\u6587\uFF0C\u89C1\u64CD\u4F5C\uFF09","insights.replayOps":"{count} \u6B65\u64CD\u4F5C","insights.wsFiles":"\u6587\u4EF6\u6539\u52A8 \xB7 {n}","insights.wsCmds":"\u8DD1\u8FC7\u7684\u547D\u4EE4 \xB7 {n}","insights.wsReads":"\u8BFB {n}","insights.wsEdits":"\u6539 {n}","insights.wsFail":"\u5931\u8D25 {n}","insights.wsNoFiles":"\u65E0\u6587\u4EF6\u6539\u52A8","insights.wsNoCmds":"\u65E0\u547D\u4EE4\u8BB0\u5F55","insights.turnSummary":"\u5171 {total} \u8F6E \xB7 {flagged} \u8F6E\u9700\u5173\u6CE8","insights.dCommand":"\u547D\u4EE4","insights.dCmdOutput":"\u6267\u884C\u7ED3\u679C","insights.ledgerNormal":"\u6B63\u5E38\u6392\u5E8F","insights.ledgerGrouped":"\u6309\u5EFA\u8BAE\u5206\u7C7B","insights.ledgerOther":"\u5176\u4ED6\u8F6E\u6B21","insights.ledgerGroupCount":"{count} \u8F6E","insights.turnsCapped":"\u4EC5\u542B\u524D {shown}/{total} \u4E2A\u52A8\u4F5C\uFF0C\u65F6\u95F4\u7EBF\u53EF\u80FD\u4E0D\u5B8C\u6574","insights.suggestion.high_tool_failure.title":"\u5DE5\u5177\u5931\u8D25\u504F\u591A","insights.suggestion.high_tool_failure.action":"\u4F18\u5148\u770B\u5931\u8D25 span\uFF0C\u628A\u9AD8\u9891\u5931\u8D25\u547D\u4EE4\u505A\u524D\u7F6E\u68C0\u67E5\u6216\u8D85\u65F6\u63A7\u5236\u3002","insights.suggestion.tool_failure_present.title":"\u5B58\u5728\u5DE5\u5177\u8C03\u7528\u5931\u8D25","insights.suggestion.tool_failure_present.action":"\u91CD\u590D\u6267\u884C\u5DE5\u4F5C\u6D41\u524D\uFF0C\u5148\u590D\u76D8\u5931\u8D25 span\u3002","insights.suggestion.slow_span.title":"\u6162\u52A8\u4F5C\u4E3B\u5BFC\u4F1A\u8BDD","insights.suggestion.slow_span.action":"\u62C6\u5206\u6216\u9650\u5236\u6162\u64CD\u4F5C\uFF0C\u5E76\u66F4\u65E9\u66B4\u9732\u8D85\u65F6\u3001\u8FDB\u5EA6\u53CD\u9988\u3002","insights.suggestion.low_read_write_ratio.title":"\u4FEE\u6539\u591A\u4E8E\u9605\u8BFB","insights.suggestion.low_read_write_ratio.action":"\u6539\u964C\u751F\u6587\u4EF6\u524D\u5148\u8865\u4E00\u6B21\u8BFB\u53D6\u6216\u641C\u7D22\u3002","insights.suggestion.context_compaction.title":"\u53D1\u751F\u4E0A\u4E0B\u6587\u538B\u7F29","insights.suggestion.context_compaction.action":"\u957F\u4EFB\u52A1\u5EFA\u8BAE\u628A\u51B3\u7B56\u548C\u68C0\u67E5\u70B9\u843D\u5230\u6301\u4E45\u7B14\u8BB0\u6216\u62C6\u6210\u66F4\u5C0F\u5B50\u4EFB\u52A1\u3002","insights.suggestion.no_major_friction.title":"\u672A\u53D1\u73B0\u660E\u663E\u6469\u64E6","insights.suggestion.no_major_friction.action":"\u53EF\u7528\u52A8\u4F5C\u65F6\u95F4\u7EBF\u505A\u62BD\u67E5\uFF0C\u6216\u4E0E\u66F4\u6162\u7684\u4F1A\u8BDD\u5BF9\u6BD4\u3002","insights.evidence.failedSpans":"{count} \u4E2A\u5931\u8D25 span","insights.evidence.toolFailedTimes":"{tool} \u5931\u8D25 {count} \u6B21","insights.evidence.multipleToolsFailed":"\u591A\u4E2A\u5DE5\u5177\u53D1\u751F\u5931\u8D25","insights.evidence.toolRanSeconds":"{tool} \u8FD0\u884C {seconds}s","insights.evidence.readWriteRatio":"\u8BFB\u6539\u6BD4 {ratio}","insights.evidence.compactions":"\u4E0A\u4E0B\u6587\u538B\u7F29 {count} \u6B21","insights.evidence.spansAnalyzed":"\u5DF2\u5206\u6790 {count} \u4E2A span","connectors.createTitle":"\u65B0\u5EFA Webhook","connectors.editTitle":"\u7F16\u8F91 Webhook","connectors.fName":"\u540D\u79F0","connectors.fNamePh":"\u5982\uFF1A\u7EBF\u4E0A\u544A\u8B66","connectors.fBot":"\u89E6\u53D1\u7684\u673A\u5668\u4EBA","connectors.fKind":"\u89E6\u53D1\u65B9\u5F0F","connectors.kindTurn":"\u5355\u8F6E\u5BF9\u8BDD\uFF08\u8BA9\u673A\u5668\u4EBA\u56DE\u5E94\u4E00\u6B21\uFF09","connectors.kindWorkflow":"\u5DE5\u4F5C\u6D41","connectors.kindWorkflowRetiring":"\u5DE5\u4F5C\u6D41 \u2014 Legacy v2\uFF08\u9000\u5F79\u4E2D\uFF0C\u4E0D\u53EF\u65B0\u5EFA\uFF09","connectors.fWf":"\u5DE5\u4F5C\u6D41 ID","connectors.fMode":"\u6295\u9012\u5230\u54EA\u4E2A\u7FA4","connectors.modeDynamic":"\u7531\u8BF7\u6C42\u6307\u5B9A\uFF08\u7FA4\u968F\u8BF7\u6C42\u4F20\u5165\uFF09","connectors.modeFixed":"\u56FA\u5B9A\u7FA4","connectors.modeNewGroup":"\u6BCF\u6B21\u65B0\u5EFA\u7FA4","connectors.fFixedChat":"\u6295\u9012\u5230\u7684\u7FA4","connectors.fChatManualPh":"\u624B\u52A8\u586B\u7FA4 ID\uFF1Aoc_\u2026","connectors.chatManualLink":"\u627E\u4E0D\u5230\u7FA4\uFF1F\u624B\u52A8\u586B ID \u2192","connectors.chatListLink":"\u4ECE\u7FA4\u5217\u8868\u9009\u62E9 \u2190","connectors.fAllow":"\u5141\u8BB8\u7684\u7FA4","connectors.allowAll":"\u5168\u90E8\u7FA4","connectors.allowAllHint":"\u4E0D\u9650\u5236\u8BF7\u6C42\u53EF\u6295\u9012\u7684\u7FA4","connectors.groupPickerPlaceholder":"\u641C\u7D22\u5E76\u9009\u62E9\u7FA4","connectors.groupSearchPlaceholder":"\u641C\u7D22\u7FA4\u540D\u79F0\u6216\u7FA4 ID","connectors.groupNoMatches":"\u6CA1\u6709\u627E\u5230\u5339\u914D\u7684\u7FA4","connectors.groupSelectedCount":"\u5DF2\u9009\u62E9 {count} \u4E2A\u7FA4","connectors.optional":"\uFF08\u53EF\u9009\uFF09","connectors.allowHint":"\u9650\u5236\u52A8\u6001\u8BF7\u6C42\u53EF\u6295\u9012\u7684\u7FA4\uFF1B\u9009\u62E9\u300C\u5168\u90E8\u7FA4\u300D\u8868\u793A\u4E0D\u9650\u5236\u3002","connectors.dynamicHint":'<b>\u52A8\u6001\u6A21\u5F0F</b>\uFF1A\u7FA4 ID \u968F\u6BCF\u6B21\u8BF7\u6C42\u4F20\u5165\uFF0C\u4E09\u9009\u4E00 \u2014\u2014 \u67E5\u8BE2\u53C2\u6570 <code>?chatId=&lt;\u7FA4ID&gt;</code> \xB7 \u8BF7\u6C42\u5934 <code>x-botmux-chat-id: &lt;\u7FA4ID&gt;</code> \xB7 \u8BF7\u6C42\u4F53 <code>{"chatId":"&lt;\u7FA4ID&gt;"}</code>\u3002<br>\u60F3"\u4E00\u4E2A URL \u76F4\u63A5\u89E6\u53D1\u3001\u4E0D\u5E26\u53C2\u6570"\uFF0C\u8BF7\u6539\u9009\u300C\u56FA\u5B9A\u7FA4\u300D\u3002',"connectors.fDedup":"\u53BB\u91CD\u5B57\u6BB5","connectors.fDedupPh":"\u5982 alert.id\uFF08\u4ECE\u4E8B\u4EF6 body \u53D6\u503C\uFF09","connectors.dedupHint":"\u4ECE\u8BF7\u6C42 JSON \u4E2D\u8BFB\u53D6\u4E1A\u52A1\u552F\u4E00\u952E\uFF0C\u652F\u6301 alert.id \u6216 $.alert.id\u3002","connectors.newGroupStrategy":"\u5EFA\u7FA4\u7B56\u7565","connectors.newGroupFresh":"\u6BCF\u6B21\u8C03\u7528\u90FD\u65B0\u5EFA\u7FA4","connectors.newGroupFreshHint":"\u9002\u5408\u5F7C\u6B64\u72EC\u7ACB\u3001\u65E0\u9700\u6301\u7EED\u8DDF\u8FDB\u7684\u4E8B\u4EF6\u3002","connectors.newGroupReuse":"\u76F8\u540C\u4E8B\u4EF6\u590D\u7528\u4E00\u4E2A\u7FA4","connectors.newGroupReuseHint":"\u6309\u4E1A\u52A1\u552F\u4E00\u952E\u805A\u5408\u540E\u7EED\u8C03\u7528\uFF0C\u4FBF\u4E8E\u6301\u7EED\u8DDF\u8FDB\u3002","connectors.newGroupNotice":"\u6B64\u6A21\u5F0F\u4F1A\u81EA\u52A8\u521B\u5EFA\u65B0\u7FA4\u5E76\u9080\u8BF7\u6240\u9009\u673A\u5668\u4EBA\uFF0C\u65E0\u9700\u9009\u62E9\u73B0\u6709\u7FA4\u3002","connectors.fInstruction":"\u5904\u7406\u6307\u4EE4","connectors.fInstructionPh":"\u4E8B\u4EF6\u89E6\u53D1\u540E\u7684\u5904\u7406\u76EE\u6807\u3002\u7559\u7A7A\u65F6\u4EC5\u628A\u539F\u59CB\u4E8B\u4EF6\u4EA4\u7ED9\u6A21\u578B\u3002","connectors.topicMessage":"\u89E6\u53D1\u63D0\u793A","connectors.topicMessageHint":"Webhook \u521B\u5EFA\u65B0\u8BDD\u9898\u65F6\u663E\u793A\u7684\u8D77\u59CB\u6D88\u606F\u3002\u53EA\u5F71\u54CD\u8FD9\u6761\u63D0\u793A\uFF0C\u4E0D\u5F71\u54CD\u673A\u5668\u4EBA\u540E\u7EED\u56DE\u590D\u3002","connectors.topicMessageDefault":"\u4F7F\u7528\u9ED8\u8BA4\u6587\u6848","connectors.topicMessageDefaultHint":"\u81EA\u52A8\u5E26\u4E0A Webhook \u540D\u79F0\uFF0C\u4FDD\u6301\u73B0\u6709\u4F53\u9A8C\u3002","connectors.topicMessageCustom":"\u81EA\u5B9A\u4E49\u6587\u6848","connectors.topicMessageCustomHint":"\u7528\u81EA\u5DF1\u7684\u63D0\u793A\u8BF4\u660E\u8FD9\u6B21\u89E6\u53D1\u6765\u81EA\u54EA\u91CC\u3002","connectors.topicMessageTemplate":"\u53EF\u4FE1\u6A21\u677F","connectors.topicMessageTemplateHint":"\u4ECE Webhook \u6570\u636E\u63D0\u53D6\u4EFB\u52A1\u4FE1\u606F\uFF0C\u5E76\u5B89\u5168\u5730\u5C55\u793A\u8D1F\u8D23\u4EBA\u3002","connectors.topicMessageNone":"\u4E0D\u53D1\u9001\u63D0\u793A","connectors.topicMessageNoneHint":"\u9759\u9ED8\u542F\u52A8\uFF0C\u4E0D\u53D1\u9001\u8BDD\u9898\u8D77\u59CB\u6D88\u606F\u3002","connectors.topicMessageCustomPh":"\u5982\uFF1ACI \u6784\u5EFA\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u53D1\u5E03\u6D41\u6C34\u7EBF","connectors.topicMessageCustomHelp":"\u53EF\u4F7F\u7528 {source} \u4EE3\u5165 Webhook \u540D\u79F0\u3002","connectors.topicMessageTemplatePh":"\u5982\uFF1AMeego\u542F\u52A8\u5F00\u53D1\uFF1A{{title}} {{mention owner}}\u8D1F\u8D23\u4EBA","connectors.topicMessageTemplateHelp":"\u4F7F\u7528 {{\u5B57\u6BB5}} \u63D2\u5165\u6587\u672C\uFF0C\u4F7F\u7528 {{mention \u5B57\u6BB5}} \u751F\u6210\u98DE\u4E66 @\u3002{{source}} \u8868\u793A Webhook \u540D\u79F0\u3002","connectors.topicMessageExtractors":"\u5B57\u6BB5\u63D0\u53D6\u5668 JSON","connectors.topicMessageExtractorsPh":`{
6
6
  "title": { "path": "$.issue.title", "kind": "text" }
7
- }`,"connectors.topicMessageExtractorsHelp":"\u6BCF\u4E2A\u5B57\u6BB5\u914D\u7F6E\u53D7\u9650 JSON \u8DEF\u5F84\u548C text/mention \u7C7B\u578B\uFF1Bmention \u53EF\u989D\u5916\u914D\u7F6E identityPath \u4E0E namePath\u3002","connectors.topicMessagePreview":"\u9884\u89C8\uFF1A\u5916\u90E8\u4E8B\u4EF6\u89E6\u53D1\uFF1A{source}","connectors.topicMessageNonePreview":"\u4E0D\u4F1A\u53D1\u9001\u89E6\u53D1\u63D0\u793A\uFF1B\u673A\u5668\u4EBA\u540E\u7EED\u8F93\u51FA\u4ECD\u4F1A\u6B63\u5E38\u53D1\u9001\u3002","connectors.topicMessageSourceFallback":"Webhook \u540D\u79F0","connectors.topicMessageListDefault":"\u89E6\u53D1\u63D0\u793A\uFF1A\u9ED8\u8BA4\u6587\u6848","connectors.topicMessageListCustom":"\u89E6\u53D1\u63D0\u793A\uFF1A{text}","connectors.topicMessageListNone":"\u89E6\u53D1\u63D0\u793A\uFF1A\u4E0D\u53D1\u9001","connectors.fVerify":"\u6821\u9A8C\u65B9\u5F0F","connectors.verifyToken":"\u4EE4\u724C\uFF08\u7B80\u5355\uFF1A\u5BC6\u94A5\u653E\u8FDB URL\uFF0C\u4E00\u6761 curl \u5C31\u80FD\u89E6\u53D1\uFF09","connectors.verifyHmac":"HMAC \u7B7E\u540D\uFF08\u9AD8\u7EA7\uFF1A\u66F4\u5B89\u5168\uFF0C\u9700\u81EA\u884C\u5BF9\u8BF7\u6C42\u7B7E\u540D\uFF09","connectors.fSecret":"\u5BC6\u94A5 / \u4EE4\u724C","connectors.fSecretPh":"\u7559\u7A7A\u81EA\u52A8\u751F\u6210\uFF08\u53EA\u663E\u793A\u4E00\u6B21\uFF09","connectors.fSecretEditPh":"\u7559\u7A7A\u4FDD\u6301\u5F53\u524D\u5BC6\u94A5\uFF1B\u586B\u5199\u540E\u7ACB\u5373\u66FF\u6362","connectors.cancel":"\u53D6\u6D88","connectors.close":"\u5173\u95ED","connectors.btnCreate":"\u521B\u5EFA","connectors.loading":"\u52A0\u8F7D\u4E2D\u2026","connectors.noBotGroups":"\uFF08\u8BE5\u673A\u5668\u4EBA\u6682\u65E0\u53EF\u89C1\u7FA4\uFF0C\u70B9\u53F3\u4FA7\u624B\u52A8\u586B ID\uFF09","connectors.modeLabelFixed":"\u56FA\u5B9A\u7FA4","connectors.modeLabelNewGroup":"\u6BCF\u6B21\u65B0\u5EFA\u7FA4","connectors.modeLabelDynamic":"\u8BF7\u6C42\u6307\u5B9A\u7FA4","connectors.kindLabelWorkflow":"\u5DE5\u4F5C\u6D41 \xB7 Legacy v2\uFF08\u9000\u5F79\u4E2D\uFF09","connectors.kindLabelTurn":"\u5355\u8F6E","connectors.empty":"\u8FD8\u6CA1\u6709 Webhook\uFF0C\u70B9\u51FB\u53F3\u4E0A\u89D2\u65B0\u5EFA\u4E00\u4E2A","connectors.enabled":"\u5DF2\u542F\u7528","connectors.disabled":"\u5DF2\u505C\u7528","connectors.badgeToken":"\u4EE4\u724C","connectors.badgeSign":"\u7B7E\u540D","connectors.dest":"\u6295\u9012\u300C{name}\u300D","connectors.btnDisable":"\u505C\u7528","connectors.btnEnable":"\u542F\u7528","connectors.btnEdit":"\u7F16\u8F91","connectors.btnSave":"\u4FDD\u5B58","connectors.btnCancel":"\u53D6\u6D88","connectors.btnDel":"\u5220\u9664","connectors.webhookUrl":"Webhook URL\uFF1A","connectors.copy":"\u590D\u5236","connectors.copied":"\u5DF2\u590D\u5236","connectors.tokenHint":"\u4EE4\u724C\u6A21\u5F0F\uFF1A\u8C03\u7528\u65F6\u5728 URL \u672B\u5C3E\u8FFD\u52A0 <code>/&lt;\u4EE4\u724C&gt;</code>\uFF08\u4EE4\u724C\u4EC5\u521B\u5EFA/\u8F6E\u6362\u65F6\u663E\u793A\u4E00\u6B21\uFF09\u3002","connectors.legacyWorkflowNote":"Legacy v2\uFF08\u9000\u5F79\u4E2D\uFF09\uFF1A\u4EC5\u5141\u8BB8\u7EF4\u62A4\u5DF2\u6709\u914D\u7F6E\uFF0C\u4E0D\u80FD\u65B0\u5EFA\u6216\u66F4\u6539\u76EE\u6807\u3002","connectors.dynamicReqHint":'\u52A8\u6001\u6A21\u5F0F\uFF1A\u8BF7\u6C42\u9700\u5E26\u76EE\u6807\u7FA4 \u2014\u2014 <code>?chatId=&lt;\u7FA4ID&gt;</code> \u6216\u5934 <code>x-botmux-chat-id</code> \u6216 body <code>{"chatId":"\u2026"}</code>\u3002',"connectors.instructionPrefix":"\u5904\u7406\u6307\u4EE4\uFF1A","connectors.delConfirm":"\u5220\u9664\u8FD9\u4E2A Webhook\uFF1F\u5B83\u7684 URL \u4F1A\u7ACB\u5373\u5931\u6548\u3002","connectors.errName":"\u8BF7\u586B\u540D\u79F0","connectors.errBot":"\u8BF7\u9009\u673A\u5668\u4EBA","connectors.errWf":"\u8BF7\u586B\u5DE5\u4F5C\u6D41 ID","connectors.errLegacyWorkflowRetired":"Legacy v2 \u5DE5\u4F5C\u6D41\u8FDE\u63A5\u5668\u6B63\u5728\u9000\u5F79\uFF0C\u4E0D\u80FD\u65B0\u5EFA\u3002\u8BF7\u4F7F\u7528 v3 Saved Workflow \u5165\u53E3\u3002","connectors.errChat":"\u8BF7\u9009\u62E9\uFF08\u6216\u624B\u52A8\u586B\uFF09\u6295\u9012\u7684\u7FA4","connectors.errDedup":"\u8BF7\u586B\u5199\u7528\u4E8E\u590D\u7528\u7FA4\u7684\u4E1A\u52A1\u552F\u4E00\u952E","connectors.errTopicMessage":"\u8BF7\u586B\u5199\u81EA\u5B9A\u4E49\u89E6\u53D1\u63D0\u793A","connectors.errTopicExtractors":"\u5B57\u6BB5\u63D0\u53D6\u5668\u5FC5\u987B\u662F\u5408\u6CD5\u7684 JSON","connectors.creating":"\u521B\u5EFA\u4E2D\u2026","connectors.saving":"\u4FDD\u5B58\u4E2D\u2026","connectors.updated":"\u5DF2\u4FDD\u5B58\u5168\u90E8\u914D\u7F6E","connectors.enabling":"\u542F\u7528\u4E2D\u2026","connectors.disabling":"\u505C\u7528\u4E2D\u2026","connectors.deleting":"\u5220\u9664\u4E2D\u2026","connectors.usageDynamicLede":"\u52A8\u6001\u6A21\u5F0F\uFF1AURL \u5DF2\u542B\u4EE4\u724C\uFF0C\u8C03\u7528\u65F6\u518D\u5E26\u4E0A\u76EE\u6807\u7FA4 ID{gn}\uFF1A","connectors.usageDynamicNote":'\u7FA4\u4E5F\u53EF\u653E\u8BF7\u6C42\u5934 <code>x-botmux-chat-id</code> \u6216 body <code>{"chatId":"\u2026"}</code>\u3002\u26A0\uFE0F URL \u5373\u51ED\u8BC1\uFF0C\u52FF\u6CC4\u6F0F\u3002',"connectors.usageTokenLede":"\u6B64 URL \u5DF2\u542B\u4EE4\u724C\u3001\u4E14\u56FA\u5B9A\u6295\u9012\u5230\u6240\u9009\u7FA4\uFF0C\u76F4\u63A5 POST \u5373\u53EF\u89E6\u53D1\uFF1A","connectors.usageTokenNote":"\u26A0\uFE0F URL \u5373\u51ED\u8BC1\uFF0C\u8BF7\u52FF\u516C\u5F00\u6CC4\u6F0F\uFF1B\u53EF\u5728\u4E0B\u65B9\u5217\u8868\u5220\u9664\u6216\u8F6E\u6362\u3002","connectors.usageHmac":"\u5916\u90E8\u7CFB\u7EDF\u9700\u5BF9 <code>timestamp.body</code> \u505A HMAC-SHA256 \u7B7E\u540D\uFF0C\u5E76\u5E26\u4E0A <code>x-botmux-timestamp</code> / <code>x-botmux-nonce</code> / <code>x-botmux-signature</code> \u5934\u8C03\u7528","connectors.usageHmacDynamic":"\uFF0C\u540C\u65F6\u6309\u4E0A\u9762\u65B9\u5F0F\u5E26\u76EE\u6807\u7FA4 ID","connectors.createdPrefix":"\u5DF2\u521B\u5EFA\u300C{name}\u300D","connectors.rotatedPrefix":"\u5DF2\u66F4\u65B0\u300C{name}\u300D\uFF0C\u65B0\u5BC6\u94A5/\u4EE4\u724C","connectors.createdDest":"\u6295\u9012\u5230\u300C{name}\u300D","connectors.tokenLabel":"\u8BBF\u95EE\u4EE4\u724C","connectors.signLabel":"\u7B7E\u540D\u5BC6\u94A5","connectors.secretOnce":"\uFF08\u53EA\u663E\u793A\u8FD9\u4E00\u6B21\uFF0C\u8BF7\u4FDD\u5B58\uFF09\uFF1A","connectors.createFailed":"\u521B\u5EFA\u5931\u8D25\uFF1A{error}","connectors.saveFailed":"\u4FDD\u5B58\u5931\u8D25\uFF1A{error}","connectors.toggleFailed":"\u72B6\u6001\u66F4\u65B0\u5931\u8D25\uFF1A{error}","connectors.deleteFailed":"\u5220\u9664\u5931\u8D25\uFF1A{error}","connectors.noOnlineBots":"\uFF08\u6CA1\u6709\u5728\u7EBF\u673A\u5668\u4EBA\uFF09","connectors.storePayload":"\u8BB0\u5F55\u8BF7\u6C42\u53C2\u6570","connectors.storePayloadHint":"\u4FDD\u5B58\u8131\u654F\u540E\u7684 JSON \u8BF7\u6C42\u4F53\u548C\u8BF7\u6C42\u5934\uFF0C\u9ED8\u8BA4\u4FDD\u7559 14 \u5929\uFF1B\u53EF\u968F\u65F6\u5728\u5217\u8868\u5173\u95ED\u3002","connectors.suppressFinalOutput":"\u4E0D\u53D1\u9001\u6700\u7EC8\u7ED3\u679C\u901A\u77E5","connectors.suppressFinalOutputHint":"\u89E6\u53D1\u540E\u673A\u5668\u4EBA\u5904\u7406\u5B8C\u4E0D\u518D\u5355\u72EC\u8865\u53D1\u300C\u5B8C\u6210/\u603B\u7ED3\u300D\u90A3\u6761\u6D88\u606F\uFF1B\u5B9E\u65F6\u72B6\u6001\u5361\u548C\u5904\u7406\u8FC7\u7A0B\u4E2D\u4E3B\u52A8 botmux send \u7684\u5185\u5BB9\u4ECD\u4F1A\u7167\u5E38\u53D1\u51FA\u3002\u9002\u7528\u4E8E\u673A\u5668\u4EBA\u5DF2\u628A\u7ED3\u679C\u53D1\u5230\u8BDD\u9898\u3001\u4E0D\u60F3\u518D\u6536\u5230\u4E00\u6761\u515C\u5E95\u603B\u7ED3\u7684\u573A\u666F\u3002","connectors.payloadLogged":"\u53C2\u6570\u7559\u5B58 {days} \u5929","connectors.metadataOnly":"\u4EC5\u8BB0\u5F55\u8C03\u7528\u5143\u6570\u636E","connectors.btnDisablePayloadLog":"\u505C\u6B62\u7559\u5B58\u53C2\u6570","connectors.btnEnablePayloadLog":"\u7559\u5B58\u8BF7\u6C42\u53C2\u6570","connectors.tabWebhooks":"Webhook \u5217\u8868","connectors.tabLogs":"\u8C03\u7528\u65E5\u5FD7","webhookLogs.subtitle":"\u96C6\u4E2D\u5BA1\u9605\u6BCF\u6B21\u8C03\u7528\u7684\u7ED3\u679C\u3001\u8017\u65F6\u3001\u8BF7\u6C42\u53C2\u6570\u4E0E\u5B9E\u9645\u6295\u9012\u76EE\u6807\u3002","webhookLogs.autoRefresh":"15 \u79D2\u81EA\u52A8\u5237\u65B0","webhookLogs.manage":"\u7BA1\u7406 Webhook","webhookLogs.summary":"\u8C03\u7528\u6982\u89C8","webhookLogs.total":"\u8C03\u7528\u603B\u6570","webhookLogs.filteredRange":"\u5F53\u524D\u7B5B\u9009\u8303\u56F4","webhookLogs.successRate":"\u6210\u529F\u7387","webhookLogs.calls":"\u6B21\u6210\u529F\u8C03\u7528","webhookLogs.failures":"\u5931\u8D25\u8C03\u7528","webhookLogs.needsReview":"\u9700\u8981\u4F18\u5148\u5BA1\u9605","webhookLogs.noFailures":"\u5F53\u524D\u8303\u56F4\u65E0\u5931\u8D25","webhookLogs.p95":"P95 \u8017\u65F6","webhookLogs.average":"\u5E73\u5747","webhookLogs.allConnectors":"\u5168\u90E8 Webhook","webhookLogs.allStatuses":"\u5168\u90E8\u7ED3\u679C","webhookLogs.success":"\u6210\u529F","webhookLogs.failed":"\u5931\u8D25","webhookLogs.last24h":"\u6700\u8FD1 24 \u5C0F\u65F6","webhookLogs.last7d":"\u6700\u8FD1 7 \u5929","webhookLogs.last30d":"\u6700\u8FD1 30 \u5929","webhookLogs.allTime":"\u5168\u90E8\u65F6\u95F4","webhookLogs.search":"\u641C\u7D22\u8C03\u7528\u8BB0\u5F55","webhookLogs.searchPlaceholder":"\u641C\u7D22 Trigger ID\u3001\u7FA4 ID\u3001\u9519\u8BEF\u6216\u53C2\u6570\u2026","webhookLogs.connector":"Webhook","webhookLogs.status":"\u8C03\u7528\u7ED3\u679C","webhookLogs.timeRange":"\u65F6\u95F4\u8303\u56F4","webhookLogs.refresh":"\u5237\u65B0","webhookLogs.loadFailed":"\u8C03\u7528\u65E5\u5FD7\u52A0\u8F7D\u5931\u8D25","webhookLogs.records":"\u8C03\u7528\u8BB0\u5F55","webhookLogs.matching":"{count} \u6761\u5339\u914D","webhookLogs.loading":"\u6B63\u5728\u52A0\u8F7D\u8C03\u7528\u65E5\u5FD7\u2026","webhookLogs.empty":"\u6682\u65E0\u8C03\u7528\u8BB0\u5F55","webhookLogs.emptyHint":"\u8C03\u7528\u4EFB\u610F Webhook \u540E\uFF0C\u8BB0\u5F55\u4F1A\u81EA\u52A8\u51FA\u73B0\u5728\u8FD9\u91CC\u3002","webhookLogs.unknownConnector":"\u672A\u77E5 Webhook","webhookLogs.loadMore":"\u52A0\u8F7D\u66F4\u591A","webhookLogs.selectRecord":"\u9009\u62E9\u4E00\u6761\u8BB0\u5F55\u67E5\u770B\u8BF7\u6C42\u8BE6\u60C5","webhookLogs.copyJson":"\u590D\u5236\u5B8C\u6574 JSON","webhookLogs.copied":"\u5DF2\u590D\u5236","webhookLogs.failureReason":"\u5931\u8D25\u539F\u56E0","webhookLogs.overview":"\u8C03\u7528\u6982\u51B5","webhookLogs.httpStatus":"HTTP \u72B6\u6001","webhookLogs.duration":"\u5904\u7406\u8017\u65F6","webhookLogs.action":"\u5904\u7406\u7ED3\u679C","webhookLogs.bodySize":"\u8BF7\u6C42\u4F53\u5927\u5C0F","webhookLogs.remoteAddress":"\u6765\u6E90\u5730\u5740","webhookLogs.target":"\u6295\u9012\u76EE\u6807","webhookLogs.queryParams":"\u67E5\u8BE2\u53C2\u6570","webhookLogs.headers":"\u8BF7\u6C42\u5934","webhookLogs.redacted":"\u654F\u611F\u503C\u5DF2\u8131\u654F","webhookLogs.headersNotStored":"\u6B64 Webhook \u672A\u5F00\u542F\u8BF7\u6C42\u5934\u7559\u5B58\u3002","webhookLogs.payload":"\u8BF7\u6C42\u4F53","webhookLogs.payloadDisabled":"\u6B64 Webhook \u672A\u5F00\u542F\u8BF7\u6C42\u4F53\u7559\u5B58\uFF1B\u8C03\u7528\u5143\u6570\u636E\u4ECD\u5DF2\u5B8C\u6574\u8BB0\u5F55\u3002","webhookLogs.payloadTooLarge":"\u8BF7\u6C42\u4F53\u8D85\u8FC7 128 KB\uFF0C\u4E3A\u907F\u514D\u65E5\u5FD7\u81A8\u80C0\u672A\u7559\u5B58\u5185\u5BB9\u3002","webhookLogs.payloadUnavailable":"\u672C\u6B21\u8C03\u7528\u6CA1\u6709\u53EF\u7559\u5B58\u7684 JSON \u8BF7\u6C42\u4F53\u3002","webhookLogs.routeTarget":"\u8DEF\u7531\u53C2\u6570","webhookLogs.none":"\u65E0","team.navHome":"\u6211\u7684\u56E2\u961F","team.navManage":"\u56E2\u961F\u7BA1\u7406","team.eyebrow":"\u56E2\u961F\u534F\u4F5C","team.homeTitle":"\u56E2\u961F\u534F\u4F5C","team.localDeployTitle":"\u5F53\u524D\u90E8\u7F72","team.myIdentity":"\u6211\u7684\u98DE\u4E66\u8EAB\u4EFD\uFF1A","team.unbound":"\u672A\u7ED1\u5B9A","team.bindBtn":"\u7ED1\u5B9A","team.bindHint":"\uFF08\u7528\u673A\u5668\u4EBA\u51ED\u8BC1\u81EA\u52A8\u8BC6\u522B\u4F60\uFF1B\u7ED1\u5B9A\u540E\u62C9\u7FA4\u4F1A\u628A\u4F60\u62C9\u8FDB\u7FA4\u3001\u673A\u5668\u4EBA\u4E5F\u5F52\u5230\u4F60\u540D\u4E0B\uFF09","team.myTeams":"\u6211\u7684\u56E2\u961F","team.searchPh":"\u641C\u7D22 \u540D\u79F0/\u80FD\u529B/CLI\u2026","team.allCli":"\u5168\u90E8 CLI","team.hasCap":"\u6709\u80FD\u529B\u6807\u7B7E","team.hasRole":"\u6709\u9ED8\u8BA4\u89D2\u8272","team.teamsHint":"\u6BCF\u4E2A\u56E2\u961F\u91CC\u52FE\u9009\u673A\u5668\u4EBA\u5373\u53EF\u5355\u72EC\u62C9\u7FA4\uFF08\u81EA\u52A8\u5E26\u4E0A\u5404\u81EA\u8D1F\u8D23\u4EBA\uFF09\u3002\u8981\u65B0\u5EFA\u56E2\u961F / \u751F\u6210\u9080\u8BF7\u7801 / \u52A0\u5165\u522B\u4EBA\u7684\u56E2\u961F\uFF0C\u53BB\u300C\u56E2\u961F\u7BA1\u7406\u300D\u3002","team.loading":"\u52A0\u8F7D\u4E2D\u2026","team.roleModalTitle":"\u9ED8\u8BA4\u89D2\u8272","team.roleModalHint":"\u8BE5\u673A\u5668\u4EBA\u7684\u9ED8\u8BA4\u4EBA\u8BBE\uFF08\u8DE8\u7FA4\u751F\u6548\uFF09\uFF0C\u6B64\u5904\u53EA\u8BFB\u3002\u5982\u9700\u4FEE\u6539\uFF0C\u8BF7\u5230\u300CBot \u914D\u7F6E\u300D\u9875\u3002","team.close":"\u5173\u95ED","team.tagLocal":"\u5F53\u524D\u90E8\u7F72","team.tagRemoteStale":"\u8FDC\u7AEF\xB7\u79BB\u7EBF\uFF1F","team.tagRemote":"\u8FDC\u7AEF","team.removeMember":"\u79FB\u9664","team.depTag":"\uFF08{tag}\uFF09","team.depCount":"{count} \u4E2A","team.depSelected":"\uFF0C\u5DF2\u9009 {n}","team.capLabel":"\u80FD\u529B\u6807\u7B7E","team.capPh":"\u80FD\u529B\u6807\u7B7E\u2026","team.viewRole":"\u67E5\u770B","team.hasRoleShort":"\u6709\u89D2\u8272","team.noMatch":"\u6CA1\u6709\u7B26\u5408\u6761\u4EF6\u7684\u673A\u5668\u4EBA\u3002","team.gnameLabel":"\u7FA4\u540D","team.gnamePlaceholder":"\u5982\uFF1A\u8DE8\u56E2\u961F\u6392\u969C","team.gnamePh":"\u7FA4\u540D\uFF08\u5982\uFF1A\u8DE8\u56E2\u961F\u6392\u969C\uFF09","team.pullGroupBtn":"\u628A\u52FE\u9009\u7684\u673A\u5668\u4EBA\u62C9\u4E00\u4E2A\u7FA4","team.pullGroupHint":"\u52FE\u9009\u673A\u5668\u4EBA \u2192 \u62C9\u5230\u4E00\u4E2A\u98DE\u4E66\u7FA4\uFF08\u81EA\u52A8\u542B owner\uFF09","team.noTeams":"\u8FD8\u6CA1\u6709\u56E2\u961F\u3002\u53BB\u300C\u56E2\u961F\u7BA1\u7406\u300D\u751F\u6210\u9080\u8BF7\u7801\u8BA9\u522B\u4EBA\u52A0\u5165\u4F60\uFF0C\u6216\u52A0\u5165\u522B\u4EBA\u7684\u56E2\u961F\u3002","team.connected":"\u5DF2\u8FDE\u63A5","team.connectFail":"\u8FDE\u63A5\u5931\u8D25\uFF1A{error}","team.iHost":"\u6211\u6258\u7BA1","team.teamMeta":"{deps} \u4E2A\u90E8\u7F72 \xB7 {bots} \u4E2A\u673A\u5668\u4EBA","team.rosterFail":"\u65E0\u6CD5\u83B7\u53D6\u8BE5\u56E2\u961F\u82B1\u540D\u518C\u3002","team.acrossTeams":"\uFF08\u8DE8 {n} \u4E2A\u56E2\u961F\uFF0C\u53BB\u91CD\uFF09","team.botsWord":"\u4E2A\u673A\u5668\u4EBA","team.groupCreated":"\u7FA4\u5DF2\u521B\u5EFA","team.delegatedBy":"\uFF08\u7531\u300C{name}\u300D\u5EFA\u7FA4\uFF09","team.openInLark":"\u5728\u98DE\u4E66\u6253\u5F00","team.invalidBots":"\u672A\u52A0\u5165\u7684\u673A\u5668\u4EBA\uFF1A{ids}","team.invalidOwners":"{n} \u4E2A owner \u672A\u80FD\u62C9\u8FDB","team.missingIdentity":"\u4F60\u672A\u7ED1\u5B9A\u98DE\u4E66\u8EAB\u4EFD\uFF0C\u6CA1\u628A\u4F60\u81EA\u5DF1\u62C9\u8FDB\u7FA4\uFF08\u53BB\u300C\u6211\u7684\u56E2\u961F\u300D\u7ED1\u5B9A\uFF09","team.skippedNoOwner":"{n} \u4E2A\u673A\u5668\u4EBA\u56E0\u8D1F\u8D23\u4EBA\u672A\u7ED1\u5B9A\u8EAB\u4EFD\u88AB\u8DF3\u8FC7\uFF08\u672A\u52A0\u5165\u7FA4\uFF09","team.errNoLocalBot":"\u8BF7\u81F3\u5C11\u52FE\u9009\u4E00\u4E2A\u4F60\u81EA\u5DF1\uFF08\u5F53\u524D\u90E8\u7F72\uFF09\u7684\u5728\u7EBF\u673A\u5668\u4EBA\u2014\u2014\u7FA4\u8981\u7531\u5B83\u521B\u5EFA\u5E76\u628A\u4F60\uFF08\u53D1\u8D77\u4EBA\uFF09\u62C9\u8FDB\u7FA4\u3002","team.errAllSkipped":"\u6240\u9009\u673A\u5668\u4EBA\u7684\u8D1F\u8D23\u4EBA\u90FD\u6CA1\u7ED1\u5B9A\u8EAB\u4EFD\uFF0C\u65E0\u6CD5\u62C9\u7FA4\uFF08\u673A\u5668\u4EBA\u4E0D\u80FD\u8FDB\u4E00\u4E2A owner \u4E0D\u5728\u7684\u7FA4\uFF09\u3002\u8BF7\u8BA9\u5BF9\u5E94\u90E8\u7F72\u5148\u7ED1\u5B9A\u8EAB\u4EFD\u3002","team.errNoCreator":"\u6CA1\u6709\u53EF\u7528\u7684\u5EFA\u7FA4\u53D1\u8D77\u65B9\uFF08\u76F8\u5173\u90E8\u7F72\u90FD\u6CA1\u6709\u5728\u7EBF\u673A\u5668\u4EBA\uFF0C\u6216\u4E0D\u53EF\u8FBE\uFF09","team.errDelegationTimeout":"\u59D4\u6258\u5BF9\u65B9\u90E8\u7F72\u5EFA\u7FA4\u8D85\u65F6\uFF08\u53EF\u80FD\u5DF2\u5EFA\uFF0C\u53BB\u98DE\u4E66\u786E\u8BA4\uFF0C\u52FF\u91CD\u590D\u70B9\uFF09","team.errGroupCreate":"\u5EFA\u7FA4\u5931\u8D25\uFF1A{error}","team.roleModalTitleName":"\u9ED8\u8BA4\u89D2\u8272 \xB7 {name}","team.bound":"\u5DF2\u7ED1\u5B9A","team.myHostedTeam":"\u6211\u6258\u7BA1\u7684\u56E2\u961F","team.remoteTeamLabel":"{name} \u7684\u56E2\u961F","team.manageTitle":"\u56E2\u961F\u7BA1\u7406","team.hostedTitle":"\u6211\u6258\u7BA1\u7684\u56E2\u961F","team.newTeamPh":"\u65B0\u56E2\u961F\u540D\u79F0","team.createTeamBtn":"\u521B\u5EFA\u56E2\u961F","team.joinTitle":"\u52A0\u5165\u522B\u4EBA\u7684\u56E2\u961F","team.hubPh":"Hub \u5730\u5740\uFF0C\u5982 http://10.0.0.5:7891","team.codePh":"\u9080\u8BF7\u7801","team.joinBtn":"\u52A0\u5165","team.noTeamsShort":"\u8FD8\u6CA1\u6709\u56E2\u961F\u3002","team.default":"\u9ED8\u8BA4","team.manageMetaDeps":"{count} \u4E2A\u90E8\u7F72","team.manageMetaRemote":"\uFF08\u542B {r} \u8FDC\u7AEF\uFF09","team.manageMetaBots":"{count} \u4E2A\u673A\u5668\u4EBA","team.genInvite":"\u751F\u6210\u9080\u8BF7\u7801","team.delBtn":"\u5220\u9664","team.generating":"\u751F\u6210\u4E2D\u2026","team.inviteResultLede":"\u628A\u4E0B\u9762\u4E24\u9879\u53D1\u7ED9\u522B\u7684\u90E8\u7F72\u7684\u4EBA\uFF0824 \u5C0F\u65F6\u5185\u3001\u5355\u6B21\u6709\u6548\uFF09\uFF1A","team.inviteHub":"Hub \u5730\u5740\uFF1A","team.inviteCode":"\u9080\u8BF7\u7801\uFF1A","team.genFail":"\u751F\u6210\u5931\u8D25\u3002","team.delConfirm":"\u5220\u9664\u56E2\u961F\u300C{name}\u300D\uFF1F\u5DF2\u52A0\u5165\u5B83\u7684\u90E8\u7F72\u4F1A\u88AB\u79FB\u9664\uFF08\u4E0D\u5F71\u54CD\u4ED6\u4EEC\u81EA\u5DF1\u7684\u90E8\u7F72\uFF09\u3002","team.errName":"\u8BF7\u586B\u56E2\u961F\u540D\u79F0","team.creating":"\u521B\u5EFA\u4E2D\u2026","team.created":"\u5DF2\u521B\u5EFA","team.createFail":"\u521B\u5EFA\u5931\u8D25\uFF1A{error}","team.errHubCode":"\u8BF7\u586B Hub \u5730\u5740\u548C\u9080\u8BF7\u7801\u3002","team.joining":"\u52A0\u5165\u4E2D\u2026","team.joined":"\u5DF2\u52A0\u5165\u300C{name}\u300D\uFF0C\u53BB\u300C\u6211\u7684\u56E2\u961F\u300D\u67E5\u770B\u3002","team.joinErrSelf":"\u8FD9\u662F\u4F60\u81EA\u5DF1\u7684\u90E8\u7F72\uFF0C\u4E0D\u80FD\u52A0\u5165\u81EA\u5DF1\uFF08\u9080\u8BF7\u7801\u8981\u53D1\u7ED9\u522B\u7684\u90E8\u7F72\u7684\u4EBA\u7528\uFF09","team.joinErrAlready":"\u4F60\u7684\u90E8\u7F72\u5DF2\u7ECF\u52A0\u5165\u8FC7\u8FD9\u4E2A\u56E2\u961F\u4E86","team.joinErrUnreachable":"\u8FDE\u4E0D\u4E0A\u5BF9\u65B9 Hub\uFF08\u68C0\u67E5\u5730\u5740/\u7F51\u7EDC\uFF09","team.joinErrTimeout":"\u5BF9\u65B9 Hub \u54CD\u5E94\u8D85\u65F6","team.joinErrGeneric":"\u52A0\u5165\u5931\u8D25\uFF1A{error}","team.identifying":"\u8BC6\u522B\u4E2D\u2026","team.bound2":"\u5DF2\u7ED1\u5B9A\uFF1A{name}","team.multiCandidate":"\u8BC6\u522B\u5230\u591A\u4E2A\u5019\u9009\uFF0C\u70B9\u4F60\u81EA\u5DF1\uFF1A","team.binding":"\u7ED1\u5B9A\u4E2D\u2026","team.bindFail":"\u7ED1\u5B9A\u5931\u8D25\uFF1A{error}","team.noCandidates":"\u6CA1\u8BC6\u522B\u5230\u8EAB\u4EFD\uFF1A\u8BF7\u786E\u8BA4\u673A\u5668\u4EBA\u914D\u7F6E\u4E86 allowedUsers\uFF08\u5141\u8BB8\u4F7F\u7528\u8005\uFF09\uFF0C\u4E14\u673A\u5668\u4EBA\u6709\u901A\u8BAF\u5F55\u6743\u9650\u3002","team.removeMemberConfirm":"\u628A\u300C{name}\u300D\u79FB\u51FA\u8FD9\u4E2A\u56E2\u961F\uFF1F\u5B83\u7684\u673A\u5668\u4EBA\u5C06\u4ECE\u672C\u56E2\u961F\u82B1\u540D\u518C\u6D88\u5931\uFF08\u4E0D\u5F71\u54CD\u5BF9\u65B9\u81EA\u5DF1\u7684\u90E8\u7F72\uFF09\u3002","team.creatingGroup":"\u5EFA\u7FA4\u4E2D\u2026","team.defaultGroupName":"\u534F\u4F5C\u7FA4","team.errPickBot":"\u8BF7\u5148\u52FE\u9009\u81F3\u5C11\u4E00\u4E2A\u673A\u5668\u4EBA","sessions.closeBulkConfirm":"\u5173\u95ED\u9009\u4E2D\u7684 {count} \u4E2A\u4F1A\u8BDD\uFF1F","sessions.empty":"\u6CA1\u6709\u7B26\u5408\u6761\u4EF6\u7684\u4F1A\u8BDD\u3002","sessions.viewMode":"\u4F1A\u8BDD\u89C6\u56FE","sessions.viewKanban":"\u770B\u677F","sessions.viewBoard":"\u72B6\u6001\u677F","sessions.viewTopics":"\u8BDD\u9898","sessions.viewTable":"\u8868\u683C","sessions.topic.summary":"\u8BDD\u9898\u805A\u5408\u6458\u8981","sessions.topic.untitled":"\u672A\u547D\u540D\u8BDD\u9898","sessions.topic.wholeChat":"\u6574\u7FA4\u4F1A\u8BDD","sessions.topic.singleSession":"\u5355\u4F1A\u8BDD","sessions.topic.collaboration":"\u591A Bot \u534F\u4F5C","sessions.topic.sessions":"{count} \u4E2A\u4F1A\u8BDD","sessions.topic.bots":"{count} \u4E2A Bot","sessions.topic.active":"{count} \u6D3B\u8DC3","sessions.topic.closed":"{count} \u5DF2\u5173\u95ED","sessions.topic.botInputs":"{count} \u4E2A\u4F1A\u8BDD\u6700\u8FD1\u7531 Bot \u5524\u9192\uFF08\u63A8\u65AD\uFF09","sessions.topic.inferredHint":"\u4F9D\u636E\u6700\u8FD1\u4E00\u8F6E\u8F93\u5165\u53D1\u9001\u8005\u5224\u65AD\uFF1B\u540E\u7EED\u6D88\u606F\u4F1A\u8986\u76D6\u8BE5\u7EBF\u7D22\uFF0C\u4E0D\u4EE3\u8868\u5B8C\u6574\u56E0\u679C\u94FE","sessions.topic.empty":"\u6682\u65E0\u5339\u914D\u7684\u8BDD\u9898\u4F1A\u8BDD","sessions.selectSession":"\u9009\u62E9\u4F1A\u8BDD","sessions.board.needsYou":"\u9700\u8981\u4F60","sessions.board.needsYouHint":"\u7B49\u5F85\u4ED3\u5E93\u3001TUI \u9009\u62E9\u3001\u989D\u5EA6\u5904\u7406\u6216\u65E0\u8FDB\u5C55\u68C0\u67E5","sessions.board.working":"\u8FDB\u884C\u4E2D","sessions.board.workingHint":"\u6B63\u5728\u542F\u52A8\u3001\u8F93\u51FA\u3001\u5206\u6790\u6216\u6267\u884C\u5DE5\u5177","sessions.board.todo":"\u5F85\u529E","sessions.board.todoHint":"\u673A\u5668\u7A7A\u95F2\u4F46\u8FD8\u6709\u672A\u5B8C\u6210\u7684 TODO","sessions.board.todoBadge":"TODO {done}/{total}","sessions.board.todoBadgeTitle":"\u8FD8\u6709 {remaining} \u9879 TODO \u672A\u5B8C\u6210\uFF08\u5171 {total} \u9879\uFF0C\u5DF2\u5B8C\u6210 {done} \u9879\uFF09","sessions.board.todoClickHint":"\u70B9\u51FB\u56FA\u5B9A\u4EE5\u590D\u5236","sessions.board.todoCopy":"\u590D\u5236\u6E05\u5355","sessions.board.todoCopied":"\u5DF2\u590D\u5236 \u2713","sessions.board.todoActive":"\u6B63\u5728\u505A","sessions.board.idle":"\u7A7A\u95F2","sessions.board.idleHint":"\u53EF\u7EE7\u7EED\u5BF9\u8BDD\u6216\u63A5\u65B0\u4EFB\u52A1","sessions.board.emptyColumn":"\u6682\u65E0\u4F1A\u8BDD","sessions.board.signalRepo":"\u5F85\u9009\u4ED3\u5E93","sessions.board.signalPrompt":"\u7B49\u5F85 TUI \u9009\u62E9","sessions.board.signalLimited":"\u989D\u5EA6\u53D7\u9650","sessions.board.signalStalled":"\u957F\u65F6\u95F4\u65E0\u8FDB\u5C55","sessions.board.signalAgent":"\u9700\u8981\u4EBA\u5DE5\u4ECB\u5165","sessions.board.waiting":"\u7B49\u5F85","sessions.board.dragHint":"\u62D6\u52A8\u5217\u5934\u8C03\u6574\u5217\u987A\u5E8F","sessions.board.moveLeft":"\u5DE6\u79FB\u6B64\u5217","sessions.board.moveRight":"\u53F3\u79FB\u6B64\u5217","sessions.kanban.backlog":"\u5F85\u529E\u6C60","sessions.kanban.todo":"\u5F85\u529E","sessions.kanban.inProgress":"\u8FDB\u884C\u4E2D","sessions.kanban.inReview":"\u9700\u8981\u4F60","sessions.kanban.done":"\u5DF2\u5B8C\u6210","sessions.kanban.updated":"\u66F4\u65B0\u4E8E {time}","sessions.kanban.moreHidden":"\u8FD8\u6709 {count} \u4E2A\u672A\u663E\u793A","sessions.create.button":"\u521B\u5EFA\u4F1A\u8BDD","sessions.create.title":"\u521B\u5EFA\u4F1A\u8BDD","sessions.create.content":"\u5185\u5BB9","sessions.create.contentPlaceholder":"\u63CF\u8FF0\u8981\u505A\u7684\u4E8B\uFF1B\u8F93\u5165 @ \u7ED9\u6307\u5B9A\u673A\u5668\u4EBA\u6D3E\u6D3B\uFF0C\u4E5F\u53EF\u76F4\u63A5\u7C98\u8D34\u622A\u56FE","sessions.create.contentHelp":"\u8F93\u5165 @ \u53EF\u641C\u7D22\u673A\u5668\u4EBA\uFF08\u9009\u4E2D\u540E\u4F1A\u81EA\u52A8\u52A0\u5165\u65B0\u7FA4\uFF09\u3002\u7C98\u8D34\u56FE\u7247\u65F6\u4F1A\u5728\u5F53\u524D\u5149\u6807\u5904\u63D2\u5165\u56FE\u7247\u6807\u8BB0\u3002Lead \u5206\u914D\u6A21\u5F0F\u4E0B\uFF0C\u6B63\u6587\u5373\u4F7F @\u4E86 sub\uFF0C\u4E5F\u53EA\u4F1A\u5148\u542F\u52A8 Lead\uFF0C\u7531 Lead \u518D\u51B3\u5B9A\u4F55\u65F6\u6D3E\u53D1\u3002\u652F\u6301 PNG/JPEG/GIF/WebP\u3002","sessions.create.mentionBots":"\u9009\u62E9\u8981 @ \u7684\u673A\u5668\u4EBA","sessions.create.pastedImages":"\u5DF2\u7C98\u8D34\u56FE\u7247","sessions.create.imageMarker":"\u56FE\u7247 {n}","sessions.create.removeImage":"\u79FB\u9664\u56FE\u7247 {name}","sessions.create.imageUnsupported":"\u4EC5\u652F\u6301\u7C98\u8D34 PNG\u3001JPEG\u3001GIF \u6216 WebP \u56FE\u7247","sessions.create.imageCountLimit":"\u4E00\u6B21\u6700\u591A\u7C98\u8D34 {n} \u5F20\u56FE\u7247","sessions.create.imageSizeLimit":"\u5355\u5F20\u56FE\u7247\u4E0D\u80FD\u8D85\u8FC7 10 MB","sessions.create.imageTotalLimit":"\u56FE\u7247\u603B\u5927\u5C0F\u4E0D\u80FD\u8D85\u8FC7 25 MB","sessions.create.imageReadFailed":"\u8BFB\u53D6\u7C98\u8D34\u56FE\u7247\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5","sessions.create.bots":"\u673A\u5668\u4EBA\uFF08\u62C9\u8FDB\u65B0\u7FA4\uFF09","sessions.create.noBots":"\u6CA1\u6709\u5728\u7EBF\u7684\u673A\u5668\u4EBA\u53EF\u9009","sessions.create.noBotMatch":"\u6CA1\u6709\u5339\u914D\u7684\u673A\u5668\u4EBA","sessions.create.mode":"\u534F\u4F5C\u6A21\u5F0F","sessions.create.modeAll":"\u4E00\u8D77\u5F00\u5DE5","sessions.create.modeLead":"\u53EA\u53D1 Lead\uFF0C\u7531 Lead \u5206\u914D\uFF08\u63A8\u8350\uFF09","sessions.create.modeHelp":"\u4E00\u8D77\u5F00\u5DE5\uFF1A\u6BCF\u4E2A\u88AB\u9009\u673A\u5668\u4EBA\u5404\u8D77\u4E00\u6761\u4F1A\u8BDD\u3001\u62FF\u540C\u4E00\u4EFD\u5185\u5BB9\u3002Lead \u5206\u914D\uFF1A\u53EA\u8D77 lead\uFF0C\u7531\u5B83\u5728\u7FA4\u91CC @ \u62C9\u8D77\u5176\u5B83\u673A\u5668\u4EBA\u5E72\u6D3B\u3002","sessions.create.lead":"Lead \u673A\u5668\u4EBA","sessions.create.leadHelp":"\u5185\u5BB9\u4F1A\u53D1\u7ED9 lead\uFF0C\u7531\u5B83\u51B3\u5B9A\u4F55\u65F6\u62C9\u8D77\u54EA\u4E2A sub bot\u3002","sessions.create.leadPickFirst":"\u8BF7\u5148\u5728\u4E0A\u65B9\u52FE\u9009\u673A\u5668\u4EBA","sessions.create.column":"\u5165\u5217","sessions.create.columnInProgress":"\u76F4\u63A5\u8FDB\u884C\u4E2D","sessions.create.columnBacklog":"\u5F85\u529E\u6C60","sessions.create.columnHelp":"\u76F4\u63A5\u8FDB\u884C\u4E2D\uFF1A\u5EFA\u5B8C\u7FA4\u7ACB\u523B\u5F00\u8DD1\u3002\u5F85\u529E\u6C60\uFF1A\u5148\u5EFA\u7FA4+\u62C9\u673A\u5668\u4EBA\u4F46\u4E0D\u8D77 CLI\uFF0C\u4E4B\u540E\u62D6\u5230\u300C\u8FDB\u884C\u4E2D\u300D\u6216\u70B9\u300C\u5F00\u59CB\u300D\u518D\u53D1\u7ED9\u673A\u5668\u4EBA\u3002","sessions.create.advanced":"\u66F4\u591A\u9009\u9879","sessions.create.optionalConfig":"\u53EF\u9009\u914D\u7F6E","sessions.create.groupName":"\u7FA4\u540D\u79F0","sessions.create.groupNamePlaceholder":"\u7559\u7A7A\u5219\u53D6\u5185\u5BB9\u9996\u884C","sessions.create.workingDir":"\u5DE5\u4F5C\u76EE\u5F55","sessions.create.workingDirHelp":"\u53EF\u9009\u3002\u586B\u4E86\u5219\u628A\u65B0\u7FA4\u7ED1\u5B9A\u5230\u8BE5\u76EE\u5F55\uFF08\u6240\u6709\u673A\u5668\u4EBA\u90FD\u5728\u6B64\u76EE\u5F55\u5DE5\u4F5C\uFF09\u3002\u7559\u7A7A\u5219\u673A\u5668\u4EBA\u5728\u7FA4\u91CC\u5F39 /repo \u5361\u7247\u8BA9\u4F60\u9009\u4ED3\u5E93\uFF08\u652F\u6301\u65B0\u5EFA worktree\uFF09\u3002","sessions.create.submit":"\u521B\u5EFA","sessions.create.submitting":"\u521B\u5EFA\u4E2D\u2026","sessions.create.cancel":"\u53D6\u6D88","sessions.create.start":"\u5F00\u59CB","sessions.create.errContent":"\u8BF7\u586B\u5199\u5185\u5BB9","sessions.create.errNoBot":"\u8BF7\u81F3\u5C11\u9009\u62E9\u4E00\u4E2A\u673A\u5668\u4EBA","sessions.create.errLead":"Lead \u5FC5\u987B\u662F\u5DF2\u52FE\u9009\u7684\u673A\u5668\u4EBA\u4E4B\u4E00","sessions.create.failed":"\u521B\u5EFA\u5931\u8D25","sessions.create.startFailed":"\u5F00\u59CB\u5931\u8D25","sessions.create.doneTitle":"\u5DF2\u521B\u5EFA","sessions.create.doneInProgress":"\u5DF2\u5EFA\u7FA4\u5E76\u62C9\u8D77\u4F1A\u8BDD","sessions.create.doneBacklog":"\u5DF2\u5EFA\u7FA4\uFF0C\u4F1A\u8BDD\u5DF2\u5165\u5F85\u529E\u6C60","sessions.create.partialFail":"\u6709 {n} \u4E2A\u673A\u5668\u4EBA\u672A\u80FD\u62C9\u8D77\uFF0C\u53EF\u7A0D\u540E\u5728\u7FA4\u91CC @ \u91CD\u8BD5","sessions.create.openChat":"\u6253\u5F00\u98DE\u4E66\u7FA4","sessions.create.close":"\u5173\u95ED","sessions.create.keepOpen":"\u8FDE\u7EED\u521B\u5EFA","sessions.create.keepOpenHelp":"\u6253\u5F00\u540E\uFF1A\u521B\u5EFA\u6210\u529F\u4E0D\u5173\u95ED\u5F39\u7A97\uFF0C\u4FDD\u7559\u673A\u5668\u4EBA\u52FE\u9009\u4E0E\u914D\u7F6E\uFF0C\u6E05\u7A7A\u5185\u5BB9\u4FBF\u4E8E\u8FDE\u7EED\u521B\u5EFA","sessions.kanban.openTab":"\u65B0\u6807\u7B7E\u9875\u6253\u5F00","sessions.kanban.openFeishu":"\u6253\u5F00\u98DE\u4E66","sessions.kanban.terminalLoading":"\u6B63\u5728\u6253\u5F00\u7EC8\u7AEF\u2026","sessions.kanban.rename":"\u91CD\u547D\u540D\uFF08\u53CC\u51FB\u6807\u9898\u4E5F\u53EF\uFF09","sessions.kanban.renameFail":"\u91CD\u547D\u540D\u5931\u8D25","sessions.kanban.moveFail":"\u79FB\u52A8\u5931\u8D25","sessions.kanban.groupBy":"\u5206\u7EC4\u7EF4\u5EA6","sessions.kanban.groupFlow":"\u5DE5\u4F5C\u6D41","sessions.kanban.groupTeam":"\u56E2\u961F","sessions.kanban.groupBot":"\u673A\u5668\u4EBA","sessions.kanban.teamLoading":"\u6B63\u5728\u52A0\u8F7D\u56E2\u961F\u2026","sessions.kanban.noTeam":"\u6682\u65E0\u56E2\u961F","sessions.kanban.teamScope":"{chats} \u4E2A\u534F\u4F5C\u7FA4 \xB7 {sessions} \u4E2A\u4F1A\u8BDD","sessions.kanban.remoteHint":"\u6765\u81EA {name} \u90E8\u7F72\u7684\u4F1A\u8BDD\uFF08\u5FEB\u7167\uFF0C\u7EC8\u7AEF/\u5386\u53F2\u5728\u5BF9\u65B9\u673A\u5668\u4E0A\uFF09","sessions.kanban.clusterDragHint":"\u62D6\u52A8\u6807\u9898\u6574\u7EC4\u79FB\u52A8","sessions.kanban.clusterExpand":"\u5C55\u5F00\u7FA4\u7EC4\u4F1A\u8BDD","sessions.kanban.clusterCollapse":"\u6298\u53E0\u7FA4\u7EC4\u4F1A\u8BDD","sessions.history.title":"\u4F1A\u8BDD\u5386\u53F2","sessions.history.loading":"\u6B63\u5728\u62C9\u53D6\u98DE\u4E66\u6D88\u606F\u2026","sessions.history.fail":"\u5386\u53F2\u62C9\u53D6\u5931\u8D25","sessions.history.empty":"\u6CA1\u6709\u6D88\u606F","sessions.history.user":"\u7528\u6237","sessions.history.bot":"\u673A\u5668\u4EBA","sessions.history.system":"\u7CFB\u7EDF\u6D88\u606F","sessions.history.owner":"\u521B\u5EFA\u8005","sessions.history.staleHint":"dashboard \u6216 daemon \u8FDB\u7A0B\u53EF\u80FD\u8FD8\u5728\u8DD1\u65E7\u7248\u672C\uFF0Cbotmux restart \u540E\u91CD\u8BD5","groups.title":"\u7FA4\u7EC4\u7BA1\u7406","groups.matrixTitle":"\u7FA4\u7EC4\u77E9\u9635","groups.search":"\u641C\u7D22\u7FA4\u540D / ID / owner","groups.missingOnly":"\u4EC5\u7F3A bot","groups.refresh":"\u5237\u65B0","groups.create":"\u65B0\u5EFA\u7FA4\u804A","groups.chat":"\u7FA4\u804A","groups.actions":"\u64CD\u4F5C","groups.addBots":"\u6DFB\u52A0 bot","groups.saveAsProfile":"\u4FDD\u5B58Profile","groups.manage":"\u7BA1\u7406","groups.empty":"\u6CA1\u6709\u7B26\u5408\u6761\u4EF6\u7684\u7FA4\u804A\u3002","groups.paginationLabel":"\u7FA4\u7EC4\u5217\u8868\u5206\u9875","groups.pageStatus":"\u663E\u793A {from}-{to}/{total} \xB7 \u7B2C {page}/{pages} \u9875","groups.prevPage":"\u4E0A\u4E00\u9875","groups.nextPage":"\u4E0B\u4E00\u9875","groups.botCoverage":"\u673A\u5668\u4EBA\u8986\u76D6","groups.memberSummary":"\u5DF2\u5165\u7FA4 {count}/{total}","groups.botStatusIn":"\u5DF2\u5165\u7FA4","groups.botStatusOut":"\u7F3A\u5931","groups.botStatusError":"\u5F02\u5E38","groups.botStatusUnknown":"\u672A\u77E5","groups.profileStatusFull":"\u5B8C\u6574\u5339\u914D {name}\uFF08{matched}/{total}\uFF09","groups.profileStatusFullChat":"\u672C\u7FA4 Role \u5B8C\u6574\u5339\u914D {name}\uFF08{matched}/{total}\uFF09","groups.profileStatusPartial":"\u90E8\u5206\u5339\u914D {name}\uFF08{matched}/{total}\uFF09","groups.profileStatusUnmatched":"\u672A\u5339\u914D\u4EFB\u4F55 Profile","groups.saveProfileTitle":"\u4FDD\u5B58\u4E3A Profile","groups.saveProfileIntro":"\u5C06\u300C{name}\u300D\u91CC\u7684 {count} \u4E2A\u7FA4\u5185 bot \u914D\u7F6E\u4FDD\u5B58\u4E3A profile \u5FEB\u7167\u3002","groups.saveProfileScope":"\u4FDD\u5B58\u8303\u56F4","groups.saveProfileScopeHelp":"\u7FA4\u5185 bot \u914D\u7F6E\u5FEB\u7167","groups.saveProfileBotCount":"\u7FA4\u5185 bot","groups.saveProfileLoadFailed":"\u8BFB\u53D6\u5931\u8D25","groups.saveProfileStatus.entry":"\u751F\u6210 entry","groups.saveProfileStatus.error":"\u8BFB\u53D6\u5931\u8D25","groups.saveProfileMode":"\u4FDD\u5B58\u65B9\u5F0F","groups.saveProfileNew":"\u65B0\u5EFA Profile","groups.saveProfileNewHelp":"\u9ED8\u8BA4\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684\u5FEB\u7167\uFF1B\u5982\u679C id \u5DF2\u5B58\u5728\uFF0C\u4F1A\u8986\u76D6\u540C bot entry\u3002","groups.saveProfileOverwrite":"\u8986\u76D6\u5DF2\u6709 Profile","groups.saveProfileOverwriteHelp":"\u4ECE\u5217\u8868\u4E2D\u9009\u62E9\u4E00\u4E2A\u5DF2\u6709 profile\uFF0C\u8986\u76D6\u5176\u4E2D\u540C bot \u7684 entry\u3002","groups.saveProfileExistingMeta":"{count} \u4E2A entry","groups.saveProfileIdLabel":"Profile id","groups.saveProfileExistingLabel":"\u5DF2\u6709 Profile","groups.saveProfileExistingEmpty":"\u6682\u65E0\u5DF2\u6709 Profile","groups.saveProfileTarget":"\u76EE\u6807 Profile","groups.saveProfileTargetNew":"\u5C06\u65B0\u5EFA\u6216\u66F4\u65B0\u8FD9\u4E2A Profile \u7684\u7FA4\u5185 bot \u5FEB\u7167","groups.saveProfileTargetOverwrite":"\u5C06\u8986\u76D6\u5DF2\u6709 Profile \u4E2D\u8FD9\u4E9B bot \u7684 entry","groups.saveProfileEntrySummary":"\u5C06\u4E3A {count} \u4E2A\u7FA4\u5185 bot \u751F\u6210 profile entry\u3002","groups.saveProfileEntrySummaryWithEmpty":"\u5C06\u4E3A {count} \u4E2A\u7FA4\u5185 bot \u751F\u6210 profile entry\uFF1B\u5176\u4E2D {emptyCount} \u4E2A\u5F53\u524D\u672A\u8BFB\u5230 role \u5185\u5BB9\uFF0C\u4F1A\u4FDD\u5B58\u4E3A\u7A7A entry\u3002","groups.saveProfileFailedLoadSummary":"\u6709 {count} \u4E2A bot \u914D\u7F6E\u8BFB\u53D6\u5931\u8D25\uFF0C\u6682\u4E0D\u4FDD\u5B58\uFF0C\u907F\u514D\u751F\u6210\u4E0D\u5B8C\u6574\u5FEB\u7167\u3002","groups.saveProfileSubmit":"\u4FDD\u5B58 Profile","groups.saveProfileOverwriteSubmit":"\u8986\u76D6\u4FDD\u5B58","groups.saveProfileInvalid":"Profile id \u53EA\u80FD\u5305\u542B\u5B57\u6BCD\u3001\u6570\u5B57\u3001\u70B9\u3001\u4E0B\u5212\u7EBF\u3001\u77ED\u6A2A\u7EBF\uFF0C\u6700\u957F 64\uFF0C\u4E14\u4E0D\u80FD\u662F . \u6216 ..","groups.saveProfileNoRoles":"\u8FD9\u4E2A\u7FA4\u91CC\u6CA1\u6709\u53EF\u4FDD\u5B58\u7684 bot \u914D\u7F6E\u3002","groups.saveProfilePreparing":"\u8BFB\u53D6\u914D\u7F6E\u2026","groups.saveProfileSaving":"\u4FDD\u5B58\u4E2D\u2026","groups.saveProfileDone":"\u5DF2\u4FDD\u5B58 {count} \u4E2A entry \u5230 {name}","groups.saveProfileFailed":"\u53EA\u4FDD\u5B58\u4E86 {saved}/{total} \u4E2A entry\uFF0C\u8BF7\u68C0\u67E5\u79BB\u7EBF bot \u6216\u6743\u9650\u3002","groups.createTitle":"\u65B0\u5EFA\u7FA4\u804A","groups.createHelp":"\u9009\u62E9\u8981\u9080\u8BF7\u7684 bot\u3002dashboard \u4F1A\u81EA\u52A8\u9009\u62E9\u5728\u7EBF daemon \u4F5C\u4E3A\u521B\u5EFA\u8005\u3002","groups.name":"\u7FA4\u540D","groups.namePlaceholder":"\u4F8B\u5982 AI ChangeLog","groups.bindDir":"\u7ED1\u5B9A\u76EE\u5F55","groups.bindDirHelp":"\u65B0\u8BDD\u9898\u76F4\u63A5\u7528\u8BE5\u76EE\u5F55\u542F\u52A8 CLI\uFF0C\u8DF3\u8FC7 repo \u9009\u62E9\u3002","groups.roleProfile":"Profile","groups.roleProfileNone":"\u4E0D\u4F7F\u7528","groups.roleProfileHelp":"\u521B\u5EFA\u540E\u5728\u65B0\u7FA4\u91CC\u53D1\u9001 profile apply bootstrap \u547D\u4EE4\u3002","groups.roleProfileBootstrapSent":"Profile\uFF1A{name}\uFF1Bbootstrap \u6D88\u606F\u5DF2\u53D1\u9001\uFF1A{messageId}","groups.roleProfileBootstrapDone":"Profile\uFF1A{name}\uFF1Bbootstrap \u5DF2\u5B8C\u6210\uFF0C\u65E0\u9700\u53D1\u9001 peer bootstrap \u6D88\u606F\u3002","groups.roleProfileBootstrapFailed":"Profile\uFF1A{name}\uFF1Bbootstrap \u5931\u8D25\uFF1A{reason}","groups.botPicker":"Bot","botPicker.searchPlaceholder":"\u641C\u7D22\u673A\u5668\u4EBA\u2026","botPicker.noMatch":"\u6CA1\u6709\u5339\u914D\u7684\u673A\u5668\u4EBA","botPicker.empty":"\u6682\u65E0\u53EF\u9009\u673A\u5668\u4EBA","botPicker.selectedCount":"\u5DF2\u9009 {n} \u4E2A\u673A\u5668\u4EBA","groups.createSubmit":"\u521B\u5EFA\u7FA4\u804A","groups.createSubmitting":"\u521B\u5EFA\u4E2D\u2026","groups.cancel":"\u53D6\u6D88","groups.successTitle":"\u7FA4\u521B\u5EFA\u6210\u529F","groups.openGroup":"\u6253\u5F00\u65B0\u7FA4","groups.manageTitle":"\u7BA1\u7406 {name}","groups.owner":"\u7FA4\u4E3B","groups.oncall":"Oncall \u6A21\u5F0F","groups.oncallHelp":"\u5F00\u542F\u540E\uFF0C\u7FA4\u5185\u6210\u5458\u53EF @ \u673A\u5668\u4EBA\uFF1B\u52FE\u9009\u7684 bot \u5728\u672C\u7FA4\u7684\u65B0\u8BDD\u9898\u76F4\u63A5\u4F7F\u7528\u5176\u7ED1\u5B9A\u76EE\u5F55\uFF08\u7ED1\u5B9A\u6309 bot \u8BA1\uFF0C\u53EA\u5F71\u54CD\u52FE\u9009\u7684 bot\uFF09\u3002","groups.leaveTitle":"\u9009\u62E9\u673A\u5668\u4EBA\u9000\u51FA\u7FA4\u804A","groups.leaveSelected":"\u9009\u4E2D\u673A\u5668\u4EBA\u9000\u51FA\u7FA4\u804A","groups.disband":"\u89E3\u6563\u7FA4\u804A","groups.dangerHint":"\u89E3\u6563\u4EC5\u5F53\u5728\u7FA4\u673A\u5668\u4EBA\u662F\u7FA4\u4E3B\u65F6\u624D\u4F1A\u6210\u529F\uFF0C\u5426\u5219\u5EFA\u8BAE\u4F7F\u7528\u9000\u51FA\u7FA4\u804A\u3002","groups.save":"\u4FDD\u5B58","groups.needWorkingDir":"\u8BF7\u586B\u5DE5\u4F5C\u76EE\u5F55","groups.noBotsOnline":"\u6CA1\u6709\u5728\u7EBF bot\u3002\u8BF7\u5148\u91CD\u542F daemon\u3002","schedules.title":"\u5B9A\u65F6\u4EFB\u52A1","schedules.search":"\u641C\u7D22\u540D\u79F0 / prompt / \u5DE5\u4F5C\u76EE\u5F55","schedules.anyKind":"\u5168\u90E8\u7C7B\u578B","schedules.enabledOnly":"\u4EC5\u542F\u7528","schedules.name":"\u540D\u79F0","schedules.bot":"bot","schedules.schedule":"\u89C4\u5219","schedules.next":"\u4E0B\u6B21","schedules.last":"\u4E0A\u6B21","schedules.repeat":"\u91CD\u590D","schedules.enabled":"\u542F\u7528","schedules.paused":"\u6682\u505C","schedules.actions":"\u64CD\u4F5C","schedules.runNow":"\u7ACB\u5373\u8FD0\u884C","schedules.running":"\u8FD0\u884C\u4E2D","schedules.runDone":"\u5DF2\u8FD0\u884C","schedules.saving":"\u4FDD\u5B58\u4E2D","schedules.saved":"\u5DF2\u4FDD\u5B58","schedules.failed":"\u5931\u8D25","schedules.error":"\u9519\u8BEF","schedules.errorUnknown":"\u672A\u77E5\u9519\u8BEF","schedules.pause":"\u6682\u505C","schedules.resume":"\u6062\u590D","schedules.delivery":"\u6267\u884C\u4F4D\u7F6E","schedules.deliveryTopLevel":"\u7FA4\u6D88\u606F\u9876\u5C42","schedules.deliveryThread":"\u8BDD\u9898\u4E0B\u6267\u884C","schedules.deliveryOrigin":"\u539F\u8BDD\u9898","schedules.deliveryNewTopic":"\u6BCF\u6B21\u65B0\u8BDD\u9898","schedules.deliveryLocal":"\u4EC5\u8BB0\u5F55","schedules.silent":"\u9759\u9ED8","schedules.useNewTopic":"\u6539\u4E3A\u6BCF\u6B21\u65B0\u8BDD\u9898","schedules.useOrigin":"\u6539\u4E3A\u539F\u8BDD\u9898","schedules.empty":"\u6682\u65E0\u5B9A\u65F6\u4EFB\u52A1\u3002","schedules.create":"\u65B0\u5EFA\u5B9A\u65F6\u4EFB\u52A1","schedules.edit":"\u7F16\u8F91","schedules.delete":"\u5220\u9664","schedules.deleteConfirm":"\u786E\u8BA4\u5220\u9664\u8BE5\u5B9A\u65F6\u4EFB\u52A1\uFF1F","schedules.form.name":"\u540D\u79F0","schedules.form.schedule":"\u8C03\u5EA6\u89C4\u5219","schedules.form.scheduleHelp":"\u5982\u300C\u6BCF\u65E59:00\u300D\u300C\u6BCF30\u5206\u949F\u300D\u6216 cron \u8868\u8FBE\u5F0F\u300C0 9 * * *\u300D","schedules.form.prompt":"\u6267\u884C\u5185\u5BB9","schedules.form.promptHelp":"\u5230\u70B9\u65F6\u4F1A\u88AB\u6267\u884C\u7684 prompt\uFF0C\u5C31\u50CF\u7528\u6237\u5728\u8BDD\u9898\u91CC\u53D1\u9001\u8FD9\u6BB5\u5185\u5BB9","schedules.form.deliver":"\u6267\u884C\u4F4D\u7F6E","schedules.form.deliveryManagedHelp":"\u9009\u62E9\u4EFB\u52A1\u5728\u7FA4\u9876\u5C42\u6216\u6307\u5B9A\u8BDD\u9898\u4E0B\u6267\u884C","schedules.form.localHelp":"\u4EC5\u8BB0\u5F55\u4EFB\u52A1\u7531 CLI \u7BA1\u7406\uFF0C\u7F16\u8F91\u5176\u5B83\u5B57\u6BB5\u4E0D\u4F1A\u6539\u53D8\u6295\u9012\u65B9\u5F0F","schedules.form.topLevelHelp":"\u5148\u6295\u9012\u5230\u7FA4\u6D88\u606F\u9876\u5C42\uFF1B\u540E\u7EED\u662F\u5426\u5F62\u6210\u65B0\u8BDD\u9898\u7531\u6267\u884C Bot \u7684\u666E\u901A\u7FA4\u4F1A\u8BDD\u6A21\u5F0F\u51B3\u5B9A","schedules.form.topicHelp":"\u56FA\u5B9A\u5728\u6307\u5B9A\u8BDD\u9898\u4E0B\u6267\u884C\uFF0C\u4E0D\u53D7\u666E\u901A\u7FA4\u9876\u5C42\u4F1A\u8BDD\u6A21\u5F0F\u5F71\u54CD","schedules.form.newTopicHelp":"\u6BCF\u6B21\u89E6\u53D1\u90FD\u521B\u5EFA\u4E00\u4E2A\u5168\u65B0\u7684\u8BDD\u9898\u548C\u72EC\u7ACB\u4F1A\u8BDD\uFF0C\u4E0D\u53D7\u666E\u901A\u7FA4\u4F1A\u8BDD\u6A21\u5F0F\u5F71\u54CD","schedules.form.topicRoot":"\u76EE\u6807\u8BDD\u9898\u6839\u6D88\u606F ID","schedules.form.topicRootHelp":"\u98DE\u4E66\u8BDD\u9898\u6839\u6D88\u606F\u7684 message_id\uFF0C\u901A\u5E38\u4EE5 om_ \u5F00\u5934\uFF1B\u4ECE\u8BDD\u9898\u5185\u521B\u5EFA\u7684\u4EFB\u52A1\u4F1A\u81EA\u52A8\u5E26\u5165","schedules.form.topicTitle":"\u65B0\u8BDD\u9898\u6807\u9898\uFF08\u53EF\u9009\uFF09","schedules.form.topicTitlePlaceholder":"\u9ED8\u8BA4\u4F7F\u7528\u4EFB\u52A1\u5F00\u59CB\u63D0\u793A","schedules.form.topicTitleHelp":"\u4F5C\u4E3A\u6BCF\u6B21\u65B0\u8BDD\u9898\u7684\u9996\u6761\u6D88\u606F\uFF0C\u548C Webhook \u7684\u81EA\u5B9A\u4E49\u89E6\u53D1\u63D0\u793A\u4E00\u81F4\u3002","schedules.form.silent":"\u9759\u9ED8\u6267\u884C","schedules.form.silentHelp":"\u4E0D\u53D1\u5F00\u59CB\u63D0\u793A\u3001\u4E0D\u53D1\u6D41\u5361\u7247\uFF1B\u4EC5\u5F53\u6EE1\u8DB3 prompt \u4E2D\u7684\u62A5\u8B66\u6761\u4EF6\u65F6\u624D botmux send","schedules.form.bot":"\u6267\u884C\u673A\u5668\u4EBA","schedules.form.chat":"\u76EE\u6807\u7FA4\u804A","schedules.form.save":"\u4FDD\u5B58","schedules.form.cancel":"\u53D6\u6D88","schedules.form.create":"\u521B\u5EFA","schedules.form.silentNewTopicConflict":"\u9759\u9ED8\u65F6\u5C06\u5EF6\u8FDF\u521B\u5EFA\u8BDD\u9898\uFF1A\u65E0\u901A\u77E5\u5219\u81EA\u52A8\u5173\u95ED\u9690\u85CF\u4F1A\u8BDD\uFF0C\u9996\u6B21 botmux send \u624D\u521B\u5EFA\u65B0\u8BDD\u9898\u3002","settings.title":"\u5168\u5C40\u8BBE\u7F6E","settings.loading":"\u6B63\u5728\u52A0\u8F7D\u8BBE\u7F6E\u2026","settings.loadFailed":"\u8BBE\u7F6E\u52A0\u8F7D\u5931\u8D25","settings.readOnlyVisitor":"\u5F53\u524D\u662F\u53EA\u8BFB\u8BBF\u95EE\uFF0C\u4FEE\u6539\u8BBE\u7F6E\u9700\u8981\u6388\u6743\u94FE\u63A5\uFF08\u8FD0\u884C botmux dashboard \u83B7\u53D6\uFF09","settings.moduleGeneral":"\u901A\u7528\u8BBE\u7F6E","settings.moduleGeneralHelp":"\u7BA1\u7406\u8BBF\u95EE\u65B9\u5F0F\u3001\u98DE\u4E66\u5361\u7247\u3001\u5B9E\u9A8C\u80FD\u529B\u548C\u4EFB\u52A1\u884C\u4E3A\u3002","settings.moduleMeeting":"\u4F1A\u8BAE Agent","settings.moduleMeetingHelp":"\u96C6\u4E2D\u914D\u7F6E\u4F1A\u8BAE\u76D1\u542C\u3001\u89D2\u8272\u9884\u8BBE\u548C\u5B98\u65B9\u89D2\u8272\u6A21\u677F\u3002","settings.moduleSystem":"\u7CFB\u7EDF\u4E0E\u7EF4\u62A4","settings.moduleSystemHelp":"\u7BA1\u7406\u81EA\u52A8\u66F4\u65B0\u3001\u91CD\u542F\u4E0E\u8FD0\u884C\u7248\u672C\u3002","settings.sectionAccess":"\u8BBF\u95EE\u6743\u9650","settings.publicReadOnly":"\u5141\u8BB8\u65E0 token \u53EA\u8BFB\u8BBF\u95EE dashboard","settings.publicReadOnlyHelp":"\u5141\u8BB8\u65E0 token \u67E5\u770B\u660E\u786E\u5217\u5165\u767D\u540D\u5355\u7684\u53EA\u8BFB\u6570\u636E\uFF1BWorkflow \u8BE6\u60C5\u3001\u539F\u59CB\u65E5\u5FD7\u548C\u6240\u6709\u5199\u64CD\u4F5C\u59CB\u7EC8\u9700\u8981 token\u3002","settings.remoteAccess":"\u8FDC\u7A0B\u8BBF\u95EE\u7EC8\u7AEF","settings.remoteAccessHelp":"\u9ED8\u8BA4\u5173\u95ED\u3002\u4F1A\u8BDD\u7EC8\u7AEF\u3001\u98DE\u4E66\u5361\u7247\u7EC8\u7AEF\u5165\u53E3\u548C webhook \u4F7F\u7528\u4E2D\u5FC3\u5316\u5E73\u53F0\u94FE\u63A5\uFF1B\u5173\u95ED\u5219\u4F7F\u7528\u672C\u5730\u94FE\u63A5\u3002","settings.sectionCards":"\u98DE\u4E66\u5361\u7247","settings.openTerminalInFeishu":"\u6D41\u5F0F\u5361\u7247 Web \u7EC8\u7AEF\u6309\u94AE\u5728\u98DE\u4E66\u4FA7\u680F\u6253\u5F00","settings.openTerminalInFeishuHelp":"\u9ED8\u8BA4\u5173\u95ED\u3002\u5C06 Web Terminal \u94FE\u63A5\u5305\u88C5\u4E3A\u98DE\u4E66\u4FA7\u680F\u6253\u5F00\uFF1B\u5199\u6743\u9650\u4ECD\u7531\u7EC8\u7AEF token \u63A7\u5236\u3002","settings.enableLocalCliOpen":"\u542F\u7528\u672C\u673A CLI \u76F4\u5F00","settings.enableLocalCliOpenHelp":"\u9ED8\u8BA4\u5173\u95ED\uFF0C\u4EC5 daemon \u8FD0\u884C\u5728 macOS \u65F6\u751F\u6548\u3002\u9644\u52A0\u6A21\u5F0F\u652F\u6301\u5F53\u524D tmux / Herdr / ZMX \u4F1A\u8BDD\u5E76\u8FDB\u5165\u540C\u4E00\u4E2A CLI\uFF1BZMX \u672C\u5730 attach \u4F7F\u7528\u539F\u751F\u7EC8\u7AEF\uFF0C\u98DE\u4E66\u4FA7\u4ECD\u4E3A\u7EAF\u6587\u672C\u6D41\u3002resume \u6A21\u5F0F\u4F1A\u53E6\u8D77 CLI resume \u8FDB\u7A0B\uFF0C\u53EF\u80FD\u4F7F\u98DE\u4E66\u4FA7\u4E0D\u518D\u8DDF\u968F\u8BE5\u4F1A\u8BDD\u3002","settings.localCliOpenMode":"\u672C\u673A CLI \u6253\u5F00\u6A21\u5F0F","settings.localCliOpenModeHelp":"\u9ED8\u8BA4\u9644\u52A0\u5F53\u524D\u4F1A\u8BDD\uFF1Amanaged tmux / Herdr / ZMX \u8D70\u7CBE\u786E attach\uFF0Cadopt \u4F1A\u8BDD\u53EA\u5728\u5DF2\u6709\u53EF\u9760\u76EE\u6807\u65F6\u9644\u52A0\uFF1BZMX \u7684\u539F\u751F attach \u4E0D\u4EE3\u8868 botmux \u63D0\u4F9B Web TUI\u3002direct resume \u9002\u5408\u660E\u786E\u63A5\u53D7\u98DE\u4E66\u8FDE\u7EED\u6027\u98CE\u9669\u7684\u672C\u673A\u8C03\u8BD5\u3002","settings.localCliOpenModeAttach":"\u9644\u52A0\u5F53\u524D\u4F1A\u8BDD\uFF08\u63A8\u8350\uFF09","settings.localCliOpenModeResume":"\u53E6\u8D77 CLI resume","settings.sectionExperimental":"\u5B9E\u9A8C\u6027\u914D\u7F6E","settings.sectionHostOverloadAlert":"\u673A\u5668\u8FC7\u8F7D\u544A\u8B66","settings.chatBotDiscovery":"\u7FA4\u5185\u673A\u5668\u4EBA\u53D1\u73B0\uFF08\u98DE\u4E66 /members/bots\uFF09","settings.chatBotDiscoveryHelp":"\u9ED8\u8BA4\u5F00\u542F\u3002\u5B9E\u65F6\u8BFB\u53D6\u7FA4\u5185\u673A\u5668\u4EBA\u6210\u5458\uFF0C\u63D0\u9AD8\u591A bot \u4E92\u76F8 @ \u7684\u51C6\u786E\u6027\u3002\u63A5\u53E3\u4E0D\u53EF\u7528\u65F6\u4F1A\u56DE\u9000\u65E7\u903B\u8F91\uFF1B\u4EC5\u5728\u6210\u5458\u8BC6\u522B\u5F02\u5E38\u65F6\u5173\u95ED\u3002","settings.herdrTraexPlugin":"TraeX herdr \u63D2\u4EF6\u81EA\u52A8\u5B89\u88C5\uFF08opt-in\uFF09","settings.herdrTraexPluginHelp":"\u9ED8\u8BA4\u5173\u95ED\u3002\u9700 herdr \u2265 0.7.0\u3002\u5F00\u542F\u540E\u586B\u5199\u53EF\u4FE1 source \u4E0E\u53EF\u9009 ref\uFF0C\u518D\u70B9\u51FB\u201D\u4FDD\u5B58\u5E76\u5B89\u88C5\u201D\uFF1B\u5B89\u88C5\u6210\u529F\u540E\u6267\u884C action \u5199\u5165 ~/.trae hooks\u3002\u8BF7\u53EA\u4F7F\u7528\u4F60\u4FE1\u4EFB\u7684\u6765\u6E90\uFF0C\u5E76\u4F18\u5148\u9489 commit SHA\u3002","settings.herdrTraexPluginSource":"\u63D2\u4EF6 source","settings.herdrTraexPluginSourcePlaceholder":"owner/repo[/subdir]\uFF08\u4E0D\u63D0\u4F9B\u9ED8\u8BA4\u6E90\uFF09","settings.herdrTraexPluginSourceHelp":"\u4F5C\u4E3A\u72EC\u7ACB argv \u4F20\u7ED9 `herdr plugin install <source>`\uFF1B\u4E0D\u8981\u628A ref \u5199\u6210 #tag\u3002botmux \u4E0D\u9ED8\u8BA4\u6267\u884C\u4EFB\u4F55\u7B2C\u4E09\u65B9\u4ED3\u5E93\u3002","settings.herdrTraexPluginSourceRequired":"\u5DF2\u5F00\u542F\u4F46\u672A\u586B\u5199 plugin source\uFF1B\u4E0D\u4F1A\u5B89\u88C5\u3002","settings.herdrTraexPluginRef":"\u63D2\u4EF6 ref\uFF08\u53EF\u9009\uFF09","settings.herdrTraexPluginRefPlaceholder":"\u5EFA\u8BAE\u586B\u5199\u5DF2\u5BA1\u6838\u7684 commit SHA","settings.herdrTraexPluginRefHelp":"\u4F5C\u4E3A `--ref <ref>` \u72EC\u7ACB\u53C2\u6570\u4F20\u7ED9 herdr\uFF1B\u53EF\u586B tag\u3001branch \u6216 commit SHA\uFF0C\u63A8\u8350\u9489 SHA \u9632\u6B62\u6765\u6E90\u6F02\u79FB\u3002","settings.herdrTraexPluginSave":"\u4FDD\u5B58\u5E76\u5B89\u88C5","settings.herdrTraexPluginRecommended":"\u4F5C\u8005\u63A8\u8350\u6765\u6E90\uFF08\u7B2C\u4E09\u65B9\uFF0C\u8BF7\u81EA\u884C\u786E\u8BA4\u4FE1\u4EFB\u540E\u4F7F\u7528\uFF09\uFF1A","settings.herdrTraexInstalled":"\u2713 TraeX herdr \u63D2\u4EF6\u5DF2\u5B89\u88C5\u5E76\u5199\u5165 ~/.trae hooks","settings.herdrTraexAlreadyInstalled":"\u2713 TraeX herdr \u63D2\u4EF6\u5DF2\u5B89\u88C5\uFF08\u8DF3\u8FC7\u91CD\u590D\u5B89\u88C5\uFF09","settings.herdrTraexInstallFailed":"TraeX herdr \u63D2\u4EF6\u5B89\u88C5\u5931\u8D25","settings.herdrTraexInstallStepInstall":"\u5B89\u88C5","settings.herdrTraexInstallStepAction":"\u5199\u5165 hooks","settings.herdrTraexUnsupported":"\u5F53\u524D herdr \u4E0D\u652F\u6301\u63D2\u4EF6\uFF1B\u9700 \u2265 0.7.0\uFF0C\u8BF7\u5148\u8FD0\u884C herdr update","settings.codexRpcInput":"Codex \u5BB6\u65CF RPC \u8F93\u5165\u6A21\u5F0F","settings.codexRpcInputHelp":"\u5B9E\u9A8C\u6027\uFF0C\u9ED8\u8BA4\u5173\u95ED\u3002\u5BF9 codex / traex \u673A\u5668\u4EBA\uFF08\u4EC5 tmux \u540E\u7AEF\uFF09\uFF0C\u7528\u6237\u6D88\u606F\u7ECF app-server JSON-RPC \u901A\u9053\u6CE8\u5165\uFF0C\u7ED5\u5F00 codex \u7EC8\u7AEF\u7C98\u8D34\u4E22\u6D88\u606F\u7684\u95EE\u9898\uFF08pane \u4ECD\u8DD1\u771F\u5B9E --remote TUI \u6E32\u67D3\uFF09\u3002sandbox/\u9694\u79BB/\u5BA1\u6279\u95E8\u63A7/wrapper/\u5E26\u542F\u52A8\u547D\u4EE4\u7684\u4F1A\u8BDD\u81EA\u52A8\u56DE\u9000\u4F20\u7EDF\u7C98\u8D34\u3002","settings.bypassCodexHookTrust":"\u81EA\u52A8\u4FE1\u4EFB Codex Hook","settings.bypassCodexHookTrustHelp":"\u9ED8\u8BA4\u5F00\u542F\u3002Codex 0.14x \u4F1A\u5F39\u4EA4\u4E92\u5F0F hook \u4FE1\u4EFB\u95E8\uFF08Press t to trust\uFF09\uFF1Bbotmux \u6BCF\u6B21\u5347\u7EA7\u91CD\u5199\u81EA\u88C5 hook \u4F1A\u8BA9 hash \u53D8\u5316\u3001\u95E8\u91CD\u65B0\u5F39\u51FA\uFF0C\u6258\u7BA1\u4F1A\u8BDD\u6CA1\u4EBA\u80FD\u6309 t \u2192 \u9996\u6761\u6D88\u606F\u5361\u6B7B\u3002\u5F00\u542F\u540E\u5BF9 codex / traex \u666E\u901A TUI \u4F20 --dangerously-bypass-hook-trust\u3002\u6CE8\u610F\uFF1A\u8BE5 flag \u4FE1\u4EFB codex \u89C1\u5230\u7684\u6240\u6709 hook \u6765\u6E90\uFF08\u542B\u9879\u76EE .codex/hooks.json \u4E0E\u5DF2\u542F\u7528\u63D2\u4EF6\uFF09\uFF0C\u4E0D\u53EA botmux \u81EA\u88C5\u7684\uFF1B\u4E0D\u60F3\u81EA\u52A8\u4FE1\u4EFB\u7B2C\u4E09\u65B9\u9879\u76EE/\u63D2\u4EF6 hook \u53EF\u5173\u95ED\u3002\u53D7\u9650\u673A\u5668\u4EBA\uFF08\u5173\u7ED5\u8FC7\uFF09\u59CB\u7EC8\u4E0D\u53D7\u5F71\u54CD\u3002\u4E0B\u6B21\u4F1A\u8BDD\u751F\u6548\uFF0C\u4E0D\u5F71\u54CD\u5DF2\u5B58\u6D3B\u7684 pane\u3002","settings.codexNotifier":"Codex \u4EFB\u52A1\u5B8C\u6210\u901A\u77E5","settings.codexNotifierHelp":"\u5B9E\u9A8C\u6027\uFF0C\u9ED8\u8BA4\u5173\u95ED\u3002\u72EC\u7ACB Codex App/CLI \u4EFB\u52A1\u5B8C\u6210\u540E\uFF0C\u7531\u6240\u9009 Bot \u5411\u5176\u9996\u4F4D\u53EF\u6295\u9012\u7BA1\u7406\u5458\u53D1\u9001\u98DE\u4E66\u79C1\u804A\uFF1B\u652F\u6301\u4ECE\u5B8C\u6210\u5361\u7EE7\u7EED\u5904\u7406\uFF0C\u6216\u8BF7\u6C42\u672C\u673A\u6253\u5F00\u539F Codex App \u4F1A\u8BDD\u3002","settings.codexNotifierEnablePending":"\u5B8C\u6210\u4E0B\u9762\u7684\u914D\u7F6E\u540E\u5C06\u81EA\u52A8\u5F00\u542F\u901A\u77E5\u3002","settings.codexNotifierTarget":"\u901A\u77E5 Bot","settings.codexNotifierTargetHelp":"\u9009\u62E9\u7528\u4E8E\u53D1\u9001\u79C1\u804A\u5B8C\u6210\u5361\u5E76\u63A5\u7BA1\u540E\u7EED\u4F1A\u8BDD\u7684 Codex / Codex App Bot\u3002","settings.codexNotifierTargetPlaceholder":"\u8BF7\u5148\u9009\u62E9\u901A\u77E5 Bot","settings.codexNotifierRecipient":"\u63A5\u6536\u4EBA\uFF1A{recipient}\uFF08\u8BE5 Bot \u7684\u9996\u4F4D\u7BA1\u7406\u5458\uFF09","settings.codexNotifierRecipientMissing":"\u6240\u9009 Bot \u672A\u914D\u7F6E\u7BA1\u7406\u5458\uFF0C\u4E0D\u80FD\u53D1\u9001\u79C1\u804A\u5B8C\u6210\u6D88\u606F\u3002","settings.codexNotifierRecipientUnverified":"\u76EE\u6807 Bot \u5C1A\u672A\u628A\u9996\u4F4D\u53EF\u6295\u9012\u7BA1\u7406\u5458\u89E3\u6790\u4E3A\u98DE\u4E66 open_id\uFF0C\u8BF7\u68C0\u67E5\u7BA1\u7406\u5458\u914D\u7F6E\u6216\u7B49\u5F85 Bot \u5B8C\u6210\u542F\u52A8\u3002","settings.codexNotifierNotifyWhen":"\u901A\u77E5\u65F6\u673A","settings.codexNotifierNotifyWhenHelp":"\u201C\u4EC5\u9501\u5C4F\u65F6\u201D\u53EA\u5728\u5F53\u524D Mac \u5904\u4E8E\u9501\u5C4F\u72B6\u6001\u65F6\u53D1\u9001\u98DE\u4E66\u6D88\u606F\uFF1B\u201C\u59CB\u7EC8\u901A\u77E5\u201D\u4F1A\u5728\u6BCF\u6B21\u4EFB\u52A1\u5B8C\u6210\u540E\u53D1\u9001\u98DE\u4E66\u6D88\u606F\u3002","settings.codexNotifierLockedOnly":"\u4EC5\u9501\u5C4F\u65F6\uFF08\u63A8\u8350\uFF09","settings.codexNotifierAlways":"\u59CB\u7EC8\u901A\u77E5","settings.codexNotifierTargetRequired":"\u8BF7\u5148\u9009\u62E9\u901A\u77E5 Bot\uFF0C\u518D\u5F00\u542F\u6B64\u80FD\u529B\u3002","settings.codexNotifierTargetOffline":"\u76EE\u6807 Bot \u5F53\u524D\u4E0D\u5728\u7EBF\uFF0C\u6062\u590D\u540E\u624D\u80FD\u5F00\u542F\u901A\u77E5\u3002","settings.codexNotifierUnsupported":"\u5F53\u524D\u7CFB\u7EDF\u4E0D\u652F\u6301\u53EF\u9760\u7684\u9501\u5C4F\u63A2\u6D4B\uFF1B\u53EF\u9009\u62E9\u201C\u59CB\u7EC8\u901A\u77E5\u201D\u3002","settings.codexNotifierHookPending":"Hook \u5C1A\u672A\u5C31\u7EEA\uFF0C\u8BF7\u4FDD\u5B58\u6216\u91CD\u542F BotMux \u540E\u91CD\u8BD5\u3002","settings.codexNotifierDaemonOffline":"\u76EE\u6807 Bot \u5F53\u524D\u4E0D\u5728\u7EBF\uFF1B\u4E8B\u4EF6\u4F1A\u4FDD\u7559\u5728\u672C\u5730\uFF0CBot \u6062\u590D\u540E\u91CD\u8BD5\u3002","settings.codexNotifierPending":"\u5F53\u524D\u6709 {count} \u6761\u5B8C\u6210\u6D88\u606F\u7B49\u5F85\u6295\u9012\u3002","settings.codexNotifierWorkerPending":"Hook \u5DF2\u5B89\u88C5\uFF0C\u4F46\u901A\u77E5 worker \u5C1A\u672A\u8FD0\u884C\u6216\u5FC3\u8DF3\u5DF2\u8FC7\u671F\u3002","settings.codexNotifierLastError":"\u6700\u8FD1\u4E00\u6B21\u6295\u9012\u5931\u8D25\uFF1A{error}","settings.hostOverloadAlert":"\u542F\u7528\u8FC7\u8F7D\u544A\u8B66","settings.hostOverloadAlertHelp":"\u5F00\u542F\u540E\uFF0C\u6240\u9009\u300C\u901A\u77E5 Bot\u300D\u7684 daemon \u4F1A\u6BCF 30 \u79D2\u68C0\u67E5\u6574\u673A\u8D1F\u8F7D/\u5185\u5B58\uFF0C\u8D8A\u8FC7\u8FC7\u8F7D\u7EBF\u65F6\u7ED9\u8BE5 Bot \u7684\u7BA1\u7406\u5458\u53D1\u4E00\u6761\u98DE\u4E66\u79C1\u4FE1\u63D0\u9192\u3001\u6062\u590D\u540E\u518D\u53D1\u4E00\u6761\u3002\u673A\u5668\u8FC7\u8F7D\u4F1A\u5BFC\u81F4\u4F1A\u8BDD\u51B7\u542F\u52A8\u8D85\u65F6\u5047\u6B7B\uFF0C\u8FD9\u4E2A\u63D0\u9192\u80FD\u8BA9\u4F60\u53CA\u65F6\u6E05\u7406\u4F1A\u8BDD\u6216\u8C03\u4F4E\u5E38\u9A7B\u4E0A\u9650\u3002\u6574\u673A\u53EA\u9700\u4E00\u4E2A\u901A\u77E5 Bot\uFF1B\u9ED8\u8BA4\u5173\u95ED\u3002","settings.hostOverloadAlertTarget":"\u901A\u77E5 Bot","settings.hostOverloadAlertTargetHelp":"\u9009\u62E9\u7528\u4E8E\u53D1\u9001\u8FC7\u8F7D\u544A\u8B66\u79C1\u4FE1\u7684 Bot\uFF08\u4EFB\u610F\u80FD\u53D1\u98DE\u4E66\u6D88\u606F\u3001\u4E14\u80FD\u89E3\u6790\u5230\u7BA1\u7406\u5458\u7684\u975E apiOnly Bot \u5747\u53EF\uFF09\u3002\u8BE5 Bot \u81EA\u5DF1\u7684 daemon \u8D1F\u8D23\u91C7\u6837\u4E0E\u53D1\u9001\u3002","settings.hostOverloadAlertTargetPlaceholder":"\u8BF7\u5148\u9009\u62E9\u901A\u77E5 Bot","settings.hostOverloadAlertRecipient":"\u63A5\u6536\u4EBA\uFF1A{recipient}\uFF08\u8BE5 Bot \u7684\u9996\u4F4D\u7BA1\u7406\u5458\uFF09","settings.hostOverloadAlertRecipientMissing":"\u6240\u9009 Bot \u672A\u914D\u7F6E\u7BA1\u7406\u5458\uFF0C\u4E0D\u80FD\u53D1\u9001\u8FC7\u8F7D\u544A\u8B66\u79C1\u4FE1\u3002","settings.hostOverloadAlertRecipientUnverified":"\u76EE\u6807 Bot \u5C1A\u672A\u628A\u9996\u4F4D\u7BA1\u7406\u5458\u89E3\u6790\u4E3A\u98DE\u4E66 open_id\uFF0C\u8BF7\u68C0\u67E5\u7BA1\u7406\u5458\u914D\u7F6E\u6216\u7B49\u5F85 Bot \u542F\u52A8\u5B8C\u6210\u3002","settings.hostOverloadAlertTargetRequired":"\u8BF7\u5148\u9009\u62E9\u4E00\u4E2A\u901A\u77E5 Bot \u518D\u5F00\u542F\u3002","settings.hostOverloadAlertTargetOffline":"\u76EE\u6807 Bot \u7684 daemon \u5F53\u524D\u4E0D\u5728\u7EBF\uFF0C\u8FC7\u8F7D\u544A\u8B66\u65E0\u6CD5\u6295\u9012\u3002","settings.hostOverloadAlertEnterLoad":"\u8D1F\u8F7D\u8FDB\u5165\u9608\u503C\uFF08load15 / \u6838\u6570\uFF09","settings.hostOverloadAlertEnterLoadHelp":"\u5F53 15 \u5206\u949F\u5E73\u5747\u8D1F\u8F7D > \u903B\u8F91\u6838\u6570 \xD7 \u6B64\u503C\u65F6\u5224\u5B9A\u4E3A\u8FC7\u8F7D\u3002\u9ED8\u8BA4 1.5\u3002\u6062\u590D\u7EBF\u56FA\u5B9A\u4E3A\u5185\u7F6E\u9ED8\u8BA4\uFF08\u6838\u6570 \xD7 1.0\uFF09\uFF1B\u82E5\u4F60\u628A\u8FDB\u5165\u7EBF\u8BBE\u5F97\u6BD4\u5B83\u8FD8\u4F4E\uFF0C\u6062\u590D\u7EBF\u4F1A\u81EA\u52A8\u538B\u5230\u8FDB\u5165\u7EBF\u7684 95%\uFF0C\u4EE5\u4FDD\u8BC1\u300C\u4F4E\u4E8E\u8FDB\u5165\u7EBF\u624D\u7B97\u6062\u590D\u300D\u4E0D\u6296\u52A8\u3002","settings.hostOverloadAlertEnterMem":"\u5185\u5B58\u8FDB\u5165\u9608\u503C\uFF08%\uFF09","settings.hostOverloadAlertEnterMemHelp":"\u5F53\u5DF2\u7528\u5185\u5B58\u5360\u6BD4 \u2265 \u6B64\u767E\u5206\u6BD4\u65F6\u5224\u5B9A\u4E3A\u8FC7\u8F7D\u3002\u9ED8\u8BA4 92\u3002\u6062\u590D\u7EBF\u56FA\u5B9A\u4E3A\u5185\u7F6E\u9ED8\u8BA4\uFF0885%\uFF09\uFF1B\u540C\u6837\u5728\u4F60\u628A\u8FDB\u5165\u7EBF\u8BBE\u5F97\u66F4\u4F4E\u65F6,\u81EA\u52A8\u538B\u5230\u8FDB\u5165\u7EBF\u7684 95%\u3002","settings.noVisibleOutputHint":"\u201C\u65E0\u53EF\u89C1\u8F93\u51FA\u201D\u9632\u91CD\u53D1\u63D0\u793A","settings.noVisibleOutputHintHelp":"\u5B9E\u9A8C\u6027\uFF0C\u9ED8\u8BA4\u5173\u95ED\u3002\u5728 botmux \u8DEF\u7531\u63D0\u793A\u91CC\u52A0\u4E00\u6BB5\u7EA0\u504F\uFF1A\u544A\u8BC9\u6A21\u578B botmux send \u6210\u529F\u5373\u5DF2\u9001\u8FBE\u3001\u672C\u8F6E\u65E0\u53EF\u89C1\u6587\u672C\u5730\u7ED3\u675F\u662F\u6B63\u5E38\u7684\u3001\u770B\u5230\u300C\u65E0\u53EF\u89C1\u8F93\u51FA\u8BF7\u7EE7\u7EED\u300D\u662F\u5E95\u5C42 CLI\uFF08Claude Code \u22652.1.212\uFF09\u7684\u8BEF\u5224\u4E0D\u8981\u91CD\u53D1\u3002\u4E3B\u8981\u7528\u4E8E Claude Code \u9A71\u52A8\u975E Claude \u540E\u7AEF\u6A21\u578B\u65F6\uFF08\u6613\u628A thinking-only nudge \u8BEF\u8BFB\u4E3A\u53D1\u9001\u5931\u8D25\u800C\u91CD\u590D\u56DE\u590D\uFF09\uFF1B\u5BF9\u7EAF Claude \u573A\u666F\u65E0\u5BB3\u4F46\u901A\u5E38\u65E0\u9700\u5F00\u542F\u3002\u5F00\u5173\u7FFB\u52A8\u4E0B\u4E00\u4E2A\u4F1A\u8BDD\u5373\u751F\u6548\uFF0C\u65E0\u9700\u91CD\u542F\u3002","settings.sectionVcMeetingAgent":"\u4F1A\u8BAE\u76D1\u542C","settings.vcMeetingAgent":"\u5141\u8BB8\u672C\u673A\u4F7F\u7528\u4F1A\u8BAE\u76D1\u542C\u80FD\u529B","settings.vcMeetingAgentHelp":"\u9ED8\u8BA4\u5F00\u542F\u3002\u63A7\u5236\u672C\u673A bot \u662F\u5426\u63A5\u6536\u65B0\u7684\u4F1A\u8BAE\u76D1\u542C\u4E8B\u4EF6\u3002\u5173\u95ED\u540E\u4E0D\u518D\u6062\u590D\u76D1\u542C\uFF1B\u5DF2\u8FDB\u884C\u4E2D\u7684\u4F1A\u8BAE\u901A\u5E38\u81EA\u7136\u7ED3\u675F\u3002","settings.vcMeetingListenerBot":"\u4F1A\u8BAE\u4E8B\u4EF6\u63A5\u6536 Bot","settings.vcMeetingListenerBotAuto":"\u6309 bot \u81EA\u8EAB\u914D\u7F6E","settings.vcMeetingListenerBotHelp":"\u6307\u5B9A\u63A5\u6536\u4F1A\u8BAE\u4E8B\u4EF6\u7684 Bot\u3002\u4FDD\u5B58\u65F6\u6821\u9A8C lark-cli profile \u4E0E\u4F1A\u8BAE\u6743\u9650\uFF0C\u6821\u9A8C\u901A\u8FC7\u540E\u542F\u7528\u76D1\u542C\u3002","settings.vcMeetingListenerBotDisabled":"\u4FDD\u5B58\u540E\u81EA\u52A8\u542F\u7528","settings.vcMeetingListenerBotNoProfile":"\u9700\u5148\u914D\u7F6E profile","settings.larkCliReady":"lark-cli {version} \xB7 \u7248\u672C\u7B26\u5408\u8981\u6C42","settings.larkCliOutdated":"lark-cli {version} \u7248\u672C\u8FC7\u4F4E\uFF0CVC bot \u5165\u4F1A\u9700\u8981 \u2265 {minimum}","settings.larkCliMissing":"\u672A\u68C0\u6D4B\u5230 lark-cli\uFF0CVC bot \u5165\u4F1A\u524D\u9700\u5B89\u88C5","settings.feishuLoginRequired":"\u9700\u8981\u98DE\u4E66\u5F00\u653E\u5E73\u53F0\u767B\u5F55\u624D\u80FD\u81EA\u52A8\u914D\u7F6E VC \u6743\u9650\uFF0C\u8BF7\u626B\u7801\u3002","settings.feishuLoginQrAlt":"\u98DE\u4E66\u5F00\u653E\u5E73\u53F0\u767B\u5F55\u4E8C\u7EF4\u7801","settings.feishuLoginClose":"\u5173\u95ED\u767B\u5F55\u4E8C\u7EF4\u7801","settings.vcProfiles.title":"\u4F1A\u8BAE\u89D2\u8272\u9884\u8BBE","settings.vcProfiles.help":"\u4E3A\u4F1A\u8BAE agent \u5B9A\u4E49\u53EF\u590D\u7528\u7684\u89D2\u8272\uFF1A\u804C\u8D23\u8BF4\u660E\u3001\u4E8B\u4EF6\u8FC7\u6EE4\u3001\u8F93\u51FA\u65B9\u5F0F\u4E0E\u6743\u9650\u6A21\u677F\u3002\u5DF2\u6FC0\u6D3B\u6210\u5458\u6CBF\u7528\u6FC0\u6D3B\u65F6\u51BB\u7ED3\u7684\u7248\u672C\uFF1B\u79FB\u9664\u540E\u91CD\u65B0\u52A0\u5165\u624D\u53D6\u65B0\u7248\u3002","settings.vcProfiles.listenerOwner":"\u914D\u7F6E\u6240\u5C5E Listener","settings.vcProfiles.configuringBot":"\u6B63\u5728\u914D\u7F6E\uFF1A{bot}","settings.vcProfiles.migrationOffer":"\u68C0\u6D4B\u5230\u65E7\u7248\u751F\u6210\u7684\u4F1A\u8BAE\u7EAA\u8981\u9884\u8BBE\u3002\u53EF\u5347\u7EA7\u4E3A\u5168\u80FD\u529B\u9ED8\u8BA4\u89D2\u8272\uFF1A\u76D1\u542C\u7FA4\u56DE\u590D\u53EF\u76F4\u63A5\u53D1\u9001\uFF1B\u4F1A\u4E2D\u6587\u5B57\u548C\u8BED\u97F3\u5FC5\u987B\u7ECF\u8FC7\u53D7\u7BA1\u8F93\u51FA\u95F8\u95E8\uFF0C\u6587\u672C\u9ED8\u8BA4\u5BA1\u6279\uFF0C\u8BED\u97F3\u8FD8\u9700 Listener \u8BED\u97F3\u8BBE\u65BD\u5DF2\u542F\u7528\u3002","settings.vcProfiles.migrationEnable":"\u5347\u7EA7\u5E76\u542F\u7528\u5168\u80FD\u529B\u9ED8\u8BA4\u7EAA\u8981\uFF08\u4FDD\u5B58\u540E\u751F\u6548\uFF09","settings.vcProfiles.noEligibleDefaultAgent":"\u6682\u65F6\u65E0\u6CD5\u751F\u6210\u9ED8\u8BA4\u89D2\u8272\uFF1A\u8BF7\u81F3\u5C11\u4E3A\u4E00\u4E2A\u652F\u6301\u53EF\u9760\u56DE\u6267\u7684\u89D2\u8272\u6267\u884C Bot \u914D\u7F6E\u9ED8\u8BA4\u5DE5\u4F5C\u76EE\u5F55\u3002","settings.vcProfiles.legacyCatalog":"\u68C0\u6D4B\u5230\u65E7\u7248\u6216\u672A\u5B8C\u6210\u7684\u4F1A\u8BAE Agent \u914D\u7F6E\uFF1B\u4FDD\u5B58\u89D2\u8272\u9884\u8BBE\u540E\u5C06\u5207\u6362\u5230\u591A\u89D2\u8272\u6A21\u5F0F\u3002","settings.vcProfiles.templates.title":"\u89D2\u8272\u6A21\u677F\u5E93","settings.vcProfiles.templates.builtinBadge":"\u5185\u7F6E","settings.vcProfiles.templates.help":"\u4ECE\u6A21\u677F\u5F00\u59CB\uFF0C\u518D\u6309\u4F60\u7684\u573A\u666F\u4FEE\u6539 Agent\u3001\u804C\u8D23\u3001\u8FC7\u6EE4\u548C\u8F93\u51FA\u65B9\u5F0F\u3002\u5E94\u7528\u6A21\u677F\u53EA\u4F1A\u521B\u5EFA\u4E00\u4EFD\u53EF\u7F16\u8F91\u526F\u672C\uFF0C\u4E0D\u4F1A\u4E0E\u6A21\u677F\u6301\u7EED\u7ED1\u5B9A\u3002","settings.vcProfiles.templates.use":"\u4F7F\u7528\u6B64\u6A21\u677F","settings.vcProfiles.list.title":"\u6211\u7684\u9884\u8BBE","settings.vcProfiles.list.help":"\u4F60\u7EF4\u62A4\u7684\u4F1A\u8BAE\u89D2\u8272\u3002\u70B9\u51FB\u5361\u7247\u67E5\u770B\u548C\u7F16\u8F91\u8BE6\u60C5\uFF1B\u52FE\u9009\u9ED8\u8BA4\u540E\uFF0C\u672A\u64CD\u4F5C\u98DE\u4E66\u9009\u62E9\u5361\u65F6\u4F1A\u81EA\u52A8\u542F\u7528\u3002","settings.vcProfiles.list.empty":"\u8FD8\u6CA1\u6709\u89D2\u8272\u9884\u8BBE\u3002\u53EF\u4EE5\u65B0\u5EFA\u7A7A\u767D\u9884\u8BBE\uFF0C\u6216\u4ECE\u4E0B\u65B9\u5B98\u65B9\u6A21\u677F\u5F00\u59CB\u3002","settings.vcProfiles.setDefault":"\u8BBE\u4E3A\u9ED8\u8BA4","settings.vcProfiles.viewDetails":"\u67E5\u770B\u8BE6\u60C5","settings.vcProfiles.newBadge":"\u672A\u4FDD\u5B58","settings.vcProfiles.untitled":"\u672A\u547D\u540D\u9884\u8BBE","settings.vcProfiles.noInstructions":"\u5C1A\u672A\u586B\u5199\u804C\u8D23\u8BF4\u660E","settings.vcProfiles.close":"\u5173\u95ED","settings.vcProfiles.done":"\u5B8C\u6210\u7F16\u8F91","settings.vcProfiles.needAuth":"\u4F1A\u8BAE\u89D2\u8272\u9884\u8BBE\u9700\u8981\u6388\u6743\u8BBF\u95EE\u540E\u7F16\u8F91\u3002","settings.vcProfiles.discardConfirm":"\u6709\u672A\u4FDD\u5B58\u7684\u4FEE\u6539\uFF0C\u5207\u6362\u540E\u5C06\u4E22\u5F03\u3002\u786E\u8BA4\u5207\u6362\uFF1F","settings.vcProfiles.loading":"\u52A0\u8F7D\u4E2D\u2026","settings.vcProfiles.loadFailed":"\u52A0\u8F7D\u5931\u8D25","settings.vcProfiles.botNotInConfig":"\u8BE5 bot \u4E0D\u5728 bots.json \u914D\u7F6E\u4E2D","settings.vcProfiles.conflict":"\u914D\u7F6E\u5DF2\u88AB\u5176\u5B83\u7AEF\u4FEE\u6539\uFF1B\u8BF7\u5237\u65B0\u540E\u91CD\u65B0\u7F16\u8F91\uFF0C\u907F\u514D\u8986\u76D6\u4ED6\u4EBA\u6539\u52A8\u3002","settings.vcProfiles.reload":"\u5237\u65B0","settings.vcProfiles.validationFailed":"\u6821\u9A8C\u672A\u901A\u8FC7\uFF0C\u8BF7\u68C0\u67E5\u5404\u5B57\u6BB5","settings.vcProfiles.freezeNotice":"\u4FEE\u6539\u9884\u8BBE\u4E0D\u5F71\u54CD\u8FD0\u884C\u4E2D\u7684\u4F1A\u8BAE\uFF1A\u89D2\u8272\u52A0\u5165\u4F1A\u8BAE\u65F6\u51BB\u7ED3\u5F53\u65F6\u7248\u672C\uFF0C\u79FB\u9664\u540E\u91CD\u65B0\u52A0\u5165\u624D\u4F7F\u7528\u65B0\u7248\uFF08\u4ECE\u5F53\u524D\u65F6\u523B\u5F00\u59CB\uFF0C\u4E0D\u56DE\u653E\u5386\u53F2\uFF09\u3002","settings.vcProfiles.fieldId":"ID\uFF08\u4FDD\u5B58\u540E\u4E0D\u53EF\u6539\uFF09","settings.vcProfiles.idHelp":`\u7A33\u5B9A\u7684\u673A\u5668\u6807\u8BC6\uFF0C\u8FD0\u884C\u4E2D\u7684\u5F15\u7528\u4E0E\u6062\u590D\u8BB0\u5F55\u90FD\u4F9D\u8D56\u5B83\uFF0C\u4FDD\u5B58\u540E\u4E0D\u53EF\u4FEE\u6539\u3002
7
+ }`,"connectors.topicMessageExtractorsHelp":"\u6BCF\u4E2A\u5B57\u6BB5\u914D\u7F6E\u53D7\u9650 JSON \u8DEF\u5F84\u548C text/mention \u7C7B\u578B\uFF1Bmention \u53EF\u989D\u5916\u914D\u7F6E identityPath \u4E0E namePath\u3002","connectors.topicMessagePreview":"\u9884\u89C8\uFF1A\u5916\u90E8\u4E8B\u4EF6\u89E6\u53D1\uFF1A{source}","connectors.topicMessageNonePreview":"\u4E0D\u4F1A\u53D1\u9001\u89E6\u53D1\u63D0\u793A\uFF1B\u673A\u5668\u4EBA\u540E\u7EED\u8F93\u51FA\u4ECD\u4F1A\u6B63\u5E38\u53D1\u9001\u3002","connectors.topicMessageSourceFallback":"Webhook \u540D\u79F0","connectors.topicMessageListDefault":"\u89E6\u53D1\u63D0\u793A\uFF1A\u9ED8\u8BA4\u6587\u6848","connectors.topicMessageListCustom":"\u89E6\u53D1\u63D0\u793A\uFF1A{text}","connectors.topicMessageListNone":"\u89E6\u53D1\u63D0\u793A\uFF1A\u4E0D\u53D1\u9001","connectors.fVerify":"\u6821\u9A8C\u65B9\u5F0F","connectors.verifyToken":"\u4EE4\u724C\uFF08\u7B80\u5355\uFF1A\u5BC6\u94A5\u653E\u8FDB URL\uFF0C\u4E00\u6761 curl \u5C31\u80FD\u89E6\u53D1\uFF09","connectors.verifyHmac":"HMAC \u7B7E\u540D\uFF08\u9AD8\u7EA7\uFF1A\u66F4\u5B89\u5168\uFF0C\u9700\u81EA\u884C\u5BF9\u8BF7\u6C42\u7B7E\u540D\uFF09","connectors.fSecret":"\u5BC6\u94A5 / \u4EE4\u724C","connectors.fSecretPh":"\u7559\u7A7A\u81EA\u52A8\u751F\u6210\uFF08\u53EA\u663E\u793A\u4E00\u6B21\uFF09","connectors.fSecretEditPh":"\u7559\u7A7A\u4FDD\u6301\u5F53\u524D\u5BC6\u94A5\uFF1B\u586B\u5199\u540E\u7ACB\u5373\u66FF\u6362","connectors.cancel":"\u53D6\u6D88","connectors.close":"\u5173\u95ED","connectors.btnCreate":"\u521B\u5EFA","connectors.loading":"\u52A0\u8F7D\u4E2D\u2026","connectors.noBotGroups":"\uFF08\u8BE5\u673A\u5668\u4EBA\u6682\u65E0\u53EF\u89C1\u7FA4\uFF0C\u70B9\u53F3\u4FA7\u624B\u52A8\u586B ID\uFF09","connectors.modeLabelFixed":"\u56FA\u5B9A\u7FA4","connectors.modeLabelNewGroup":"\u6BCF\u6B21\u65B0\u5EFA\u7FA4","connectors.modeLabelDynamic":"\u8BF7\u6C42\u6307\u5B9A\u7FA4","connectors.kindLabelWorkflow":"\u5DE5\u4F5C\u6D41 \xB7 Legacy v2\uFF08\u9000\u5F79\u4E2D\uFF09","connectors.kindLabelTurn":"\u5355\u8F6E","connectors.empty":"\u8FD8\u6CA1\u6709 Webhook\uFF0C\u70B9\u51FB\u53F3\u4E0A\u89D2\u65B0\u5EFA\u4E00\u4E2A","connectors.enabled":"\u5DF2\u542F\u7528","connectors.disabled":"\u5DF2\u505C\u7528","connectors.badgeToken":"\u4EE4\u724C","connectors.badgeSign":"\u7B7E\u540D","connectors.dest":"\u6295\u9012\u300C{name}\u300D","connectors.btnDisable":"\u505C\u7528","connectors.btnEnable":"\u542F\u7528","connectors.btnEdit":"\u7F16\u8F91","connectors.btnSave":"\u4FDD\u5B58","connectors.btnCancel":"\u53D6\u6D88","connectors.btnDel":"\u5220\u9664","connectors.webhookUrl":"Webhook URL\uFF1A","connectors.copy":"\u590D\u5236","connectors.copied":"\u5DF2\u590D\u5236","connectors.tokenHint":"\u4EE4\u724C\u6A21\u5F0F\uFF1A\u8C03\u7528\u65F6\u5728 URL \u672B\u5C3E\u8FFD\u52A0 <code>/&lt;\u4EE4\u724C&gt;</code>\uFF08\u4EE4\u724C\u4EC5\u521B\u5EFA/\u8F6E\u6362\u65F6\u663E\u793A\u4E00\u6B21\uFF09\u3002","connectors.legacyWorkflowNote":"Legacy v2\uFF08\u9000\u5F79\u4E2D\uFF09\uFF1A\u4EC5\u5141\u8BB8\u7EF4\u62A4\u5DF2\u6709\u914D\u7F6E\uFF0C\u4E0D\u80FD\u65B0\u5EFA\u6216\u66F4\u6539\u76EE\u6807\u3002","connectors.dynamicReqHint":'\u52A8\u6001\u6A21\u5F0F\uFF1A\u8BF7\u6C42\u9700\u5E26\u76EE\u6807\u7FA4 \u2014\u2014 <code>?chatId=&lt;\u7FA4ID&gt;</code> \u6216\u5934 <code>x-botmux-chat-id</code> \u6216 body <code>{"chatId":"\u2026"}</code>\u3002',"connectors.instructionPrefix":"\u5904\u7406\u6307\u4EE4\uFF1A","connectors.delConfirm":"\u5220\u9664\u8FD9\u4E2A Webhook\uFF1F\u5B83\u7684 URL \u4F1A\u7ACB\u5373\u5931\u6548\u3002","connectors.errName":"\u8BF7\u586B\u540D\u79F0","connectors.errBot":"\u8BF7\u9009\u673A\u5668\u4EBA","connectors.errWf":"\u8BF7\u586B\u5DE5\u4F5C\u6D41 ID","connectors.errLegacyWorkflowRetired":"Legacy v2 \u5DE5\u4F5C\u6D41\u8FDE\u63A5\u5668\u6B63\u5728\u9000\u5F79\uFF0C\u4E0D\u80FD\u65B0\u5EFA\u3002\u8BF7\u4F7F\u7528 v3 Saved Workflow \u5165\u53E3\u3002","connectors.errChat":"\u8BF7\u9009\u62E9\uFF08\u6216\u624B\u52A8\u586B\uFF09\u6295\u9012\u7684\u7FA4","connectors.errDedup":"\u8BF7\u586B\u5199\u7528\u4E8E\u590D\u7528\u7FA4\u7684\u4E1A\u52A1\u552F\u4E00\u952E","connectors.errTopicMessage":"\u8BF7\u586B\u5199\u81EA\u5B9A\u4E49\u89E6\u53D1\u63D0\u793A","connectors.errTopicExtractors":"\u5B57\u6BB5\u63D0\u53D6\u5668\u5FC5\u987B\u662F\u5408\u6CD5\u7684 JSON","connectors.creating":"\u521B\u5EFA\u4E2D\u2026","connectors.saving":"\u4FDD\u5B58\u4E2D\u2026","connectors.updated":"\u5DF2\u4FDD\u5B58\u5168\u90E8\u914D\u7F6E","connectors.enabling":"\u542F\u7528\u4E2D\u2026","connectors.disabling":"\u505C\u7528\u4E2D\u2026","connectors.deleting":"\u5220\u9664\u4E2D\u2026","connectors.usageDynamicLede":"\u52A8\u6001\u6A21\u5F0F\uFF1AURL \u5DF2\u542B\u4EE4\u724C\uFF0C\u8C03\u7528\u65F6\u518D\u5E26\u4E0A\u76EE\u6807\u7FA4 ID{gn}\uFF1A","connectors.usageDynamicNote":'\u7FA4\u4E5F\u53EF\u653E\u8BF7\u6C42\u5934 <code>x-botmux-chat-id</code> \u6216 body <code>{"chatId":"\u2026"}</code>\u3002\u26A0\uFE0F URL \u5373\u51ED\u8BC1\uFF0C\u52FF\u6CC4\u6F0F\u3002',"connectors.usageTokenLede":"\u6B64 URL \u5DF2\u542B\u4EE4\u724C\u3001\u4E14\u56FA\u5B9A\u6295\u9012\u5230\u6240\u9009\u7FA4\uFF0C\u76F4\u63A5 POST \u5373\u53EF\u89E6\u53D1\uFF1A","connectors.usageTokenNote":"\u26A0\uFE0F URL \u5373\u51ED\u8BC1\uFF0C\u8BF7\u52FF\u516C\u5F00\u6CC4\u6F0F\uFF1B\u53EF\u5728\u4E0B\u65B9\u5217\u8868\u5220\u9664\u6216\u8F6E\u6362\u3002","connectors.usageHmac":"\u5916\u90E8\u7CFB\u7EDF\u9700\u5BF9 <code>timestamp.body</code> \u505A HMAC-SHA256 \u7B7E\u540D\uFF0C\u5E76\u5E26\u4E0A <code>x-botmux-timestamp</code> / <code>x-botmux-nonce</code> / <code>x-botmux-signature</code> \u5934\u8C03\u7528","connectors.usageHmacDynamic":"\uFF0C\u540C\u65F6\u6309\u4E0A\u9762\u65B9\u5F0F\u5E26\u76EE\u6807\u7FA4 ID","connectors.createdPrefix":"\u5DF2\u521B\u5EFA\u300C{name}\u300D","connectors.rotatedPrefix":"\u5DF2\u66F4\u65B0\u300C{name}\u300D\uFF0C\u65B0\u5BC6\u94A5/\u4EE4\u724C","connectors.createdDest":"\u6295\u9012\u5230\u300C{name}\u300D","connectors.tokenLabel":"\u8BBF\u95EE\u4EE4\u724C","connectors.signLabel":"\u7B7E\u540D\u5BC6\u94A5","connectors.secretOnce":"\uFF08\u53EA\u663E\u793A\u8FD9\u4E00\u6B21\uFF0C\u8BF7\u4FDD\u5B58\uFF09\uFF1A","connectors.createFailed":"\u521B\u5EFA\u5931\u8D25\uFF1A{error}","connectors.saveFailed":"\u4FDD\u5B58\u5931\u8D25\uFF1A{error}","connectors.toggleFailed":"\u72B6\u6001\u66F4\u65B0\u5931\u8D25\uFF1A{error}","connectors.deleteFailed":"\u5220\u9664\u5931\u8D25\uFF1A{error}","connectors.noOnlineBots":"\uFF08\u6CA1\u6709\u5728\u7EBF\u673A\u5668\u4EBA\uFF09","connectors.storePayload":"\u8BB0\u5F55\u8BF7\u6C42\u53C2\u6570","connectors.storePayloadHint":"\u4FDD\u5B58\u8131\u654F\u540E\u7684 JSON \u8BF7\u6C42\u4F53\u548C\u8BF7\u6C42\u5934\uFF0C\u9ED8\u8BA4\u4FDD\u7559 14 \u5929\uFF1B\u53EF\u968F\u65F6\u5728\u5217\u8868\u5173\u95ED\u3002","connectors.suppressFinalOutput":"\u4E0D\u53D1\u9001\u6700\u7EC8\u7ED3\u679C\u901A\u77E5","connectors.suppressFinalOutputHint":"\u89E6\u53D1\u540E\u673A\u5668\u4EBA\u5904\u7406\u5B8C\u4E0D\u518D\u5355\u72EC\u8865\u53D1\u300C\u5B8C\u6210/\u603B\u7ED3\u300D\u90A3\u6761\u6D88\u606F\uFF1B\u5B9E\u65F6\u72B6\u6001\u5361\u548C\u5904\u7406\u8FC7\u7A0B\u4E2D\u4E3B\u52A8 botmux send \u7684\u5185\u5BB9\u4ECD\u4F1A\u7167\u5E38\u53D1\u51FA\u3002\u9002\u7528\u4E8E\u673A\u5668\u4EBA\u5DF2\u628A\u7ED3\u679C\u53D1\u5230\u8BDD\u9898\u3001\u4E0D\u60F3\u518D\u6536\u5230\u4E00\u6761\u515C\u5E95\u603B\u7ED3\u7684\u573A\u666F\u3002","connectors.payloadLogged":"\u53C2\u6570\u7559\u5B58 {days} \u5929","connectors.metadataOnly":"\u4EC5\u8BB0\u5F55\u8C03\u7528\u5143\u6570\u636E","connectors.btnDisablePayloadLog":"\u505C\u6B62\u7559\u5B58\u53C2\u6570","connectors.btnEnablePayloadLog":"\u7559\u5B58\u8BF7\u6C42\u53C2\u6570","connectors.tabWebhooks":"Webhook \u5217\u8868","connectors.tabLogs":"\u8C03\u7528\u65E5\u5FD7","webhookLogs.subtitle":"\u96C6\u4E2D\u5BA1\u9605\u6BCF\u6B21\u8C03\u7528\u7684\u7ED3\u679C\u3001\u8017\u65F6\u3001\u8BF7\u6C42\u53C2\u6570\u4E0E\u5B9E\u9645\u6295\u9012\u76EE\u6807\u3002","webhookLogs.autoRefresh":"15 \u79D2\u81EA\u52A8\u5237\u65B0","webhookLogs.manage":"\u7BA1\u7406 Webhook","webhookLogs.summary":"\u8C03\u7528\u6982\u89C8","webhookLogs.total":"\u8C03\u7528\u603B\u6570","webhookLogs.filteredRange":"\u5F53\u524D\u7B5B\u9009\u8303\u56F4","webhookLogs.successRate":"\u6210\u529F\u7387","webhookLogs.calls":"\u6B21\u6210\u529F\u8C03\u7528","webhookLogs.failures":"\u5931\u8D25\u8C03\u7528","webhookLogs.needsReview":"\u9700\u8981\u4F18\u5148\u5BA1\u9605","webhookLogs.noFailures":"\u5F53\u524D\u8303\u56F4\u65E0\u5931\u8D25","webhookLogs.p95":"P95 \u8017\u65F6","webhookLogs.average":"\u5E73\u5747","webhookLogs.allConnectors":"\u5168\u90E8 Webhook","webhookLogs.allStatuses":"\u5168\u90E8\u7ED3\u679C","webhookLogs.success":"\u6210\u529F","webhookLogs.failed":"\u5931\u8D25","webhookLogs.last24h":"\u6700\u8FD1 24 \u5C0F\u65F6","webhookLogs.last7d":"\u6700\u8FD1 7 \u5929","webhookLogs.last30d":"\u6700\u8FD1 30 \u5929","webhookLogs.allTime":"\u5168\u90E8\u65F6\u95F4","webhookLogs.search":"\u641C\u7D22\u8C03\u7528\u8BB0\u5F55","webhookLogs.searchPlaceholder":"\u641C\u7D22 Trigger ID\u3001\u7FA4 ID\u3001\u9519\u8BEF\u6216\u53C2\u6570\u2026","webhookLogs.connector":"Webhook","webhookLogs.status":"\u8C03\u7528\u7ED3\u679C","webhookLogs.timeRange":"\u65F6\u95F4\u8303\u56F4","webhookLogs.refresh":"\u5237\u65B0","webhookLogs.loadFailed":"\u8C03\u7528\u65E5\u5FD7\u52A0\u8F7D\u5931\u8D25","webhookLogs.records":"\u8C03\u7528\u8BB0\u5F55","webhookLogs.matching":"{count} \u6761\u5339\u914D","webhookLogs.loading":"\u6B63\u5728\u52A0\u8F7D\u8C03\u7528\u65E5\u5FD7\u2026","webhookLogs.empty":"\u6682\u65E0\u8C03\u7528\u8BB0\u5F55","webhookLogs.emptyHint":"\u8C03\u7528\u4EFB\u610F Webhook \u540E\uFF0C\u8BB0\u5F55\u4F1A\u81EA\u52A8\u51FA\u73B0\u5728\u8FD9\u91CC\u3002","webhookLogs.unknownConnector":"\u672A\u77E5 Webhook","webhookLogs.loadMore":"\u52A0\u8F7D\u66F4\u591A","webhookLogs.selectRecord":"\u9009\u62E9\u4E00\u6761\u8BB0\u5F55\u67E5\u770B\u8BF7\u6C42\u8BE6\u60C5","webhookLogs.copyJson":"\u590D\u5236\u5B8C\u6574 JSON","webhookLogs.copied":"\u5DF2\u590D\u5236","webhookLogs.failureReason":"\u5931\u8D25\u539F\u56E0","webhookLogs.overview":"\u8C03\u7528\u6982\u51B5","webhookLogs.httpStatus":"HTTP \u72B6\u6001","webhookLogs.duration":"\u5904\u7406\u8017\u65F6","webhookLogs.action":"\u5904\u7406\u7ED3\u679C","webhookLogs.bodySize":"\u8BF7\u6C42\u4F53\u5927\u5C0F","webhookLogs.remoteAddress":"\u6765\u6E90\u5730\u5740","webhookLogs.target":"\u6295\u9012\u76EE\u6807","webhookLogs.queryParams":"\u67E5\u8BE2\u53C2\u6570","webhookLogs.headers":"\u8BF7\u6C42\u5934","webhookLogs.redacted":"\u654F\u611F\u503C\u5DF2\u8131\u654F","webhookLogs.headersNotStored":"\u6B64 Webhook \u672A\u5F00\u542F\u8BF7\u6C42\u5934\u7559\u5B58\u3002","webhookLogs.payload":"\u8BF7\u6C42\u4F53","webhookLogs.payloadDisabled":"\u6B64 Webhook \u672A\u5F00\u542F\u8BF7\u6C42\u4F53\u7559\u5B58\uFF1B\u8C03\u7528\u5143\u6570\u636E\u4ECD\u5DF2\u5B8C\u6574\u8BB0\u5F55\u3002","webhookLogs.payloadTooLarge":"\u8BF7\u6C42\u4F53\u8D85\u8FC7 128 KB\uFF0C\u4E3A\u907F\u514D\u65E5\u5FD7\u81A8\u80C0\u672A\u7559\u5B58\u5185\u5BB9\u3002","webhookLogs.payloadUnavailable":"\u672C\u6B21\u8C03\u7528\u6CA1\u6709\u53EF\u7559\u5B58\u7684 JSON \u8BF7\u6C42\u4F53\u3002","webhookLogs.routeTarget":"\u8DEF\u7531\u53C2\u6570","webhookLogs.none":"\u65E0","team.navHome":"\u6211\u7684\u56E2\u961F","team.navManage":"\u56E2\u961F\u7BA1\u7406","team.eyebrow":"\u56E2\u961F\u534F\u4F5C","team.homeTitle":"\u56E2\u961F\u534F\u4F5C","team.localDeployTitle":"\u5F53\u524D\u90E8\u7F72","team.myIdentity":"\u6211\u7684\u98DE\u4E66\u8EAB\u4EFD\uFF1A","team.unbound":"\u672A\u7ED1\u5B9A","team.bindBtn":"\u7ED1\u5B9A","team.bindHint":"\uFF08\u7528\u673A\u5668\u4EBA\u51ED\u8BC1\u81EA\u52A8\u8BC6\u522B\u4F60\uFF1B\u7ED1\u5B9A\u540E\u62C9\u7FA4\u4F1A\u628A\u4F60\u62C9\u8FDB\u7FA4\u3001\u673A\u5668\u4EBA\u4E5F\u5F52\u5230\u4F60\u540D\u4E0B\uFF09","team.myTeams":"\u6211\u7684\u56E2\u961F","team.searchPh":"\u641C\u7D22 \u540D\u79F0/\u80FD\u529B/CLI\u2026","team.allCli":"\u5168\u90E8 CLI","team.hasCap":"\u6709\u80FD\u529B\u6807\u7B7E","team.hasRole":"\u6709\u9ED8\u8BA4\u89D2\u8272","team.teamsHint":"\u6BCF\u4E2A\u56E2\u961F\u91CC\u52FE\u9009\u673A\u5668\u4EBA\u5373\u53EF\u5355\u72EC\u62C9\u7FA4\uFF08\u81EA\u52A8\u5E26\u4E0A\u5404\u81EA\u8D1F\u8D23\u4EBA\uFF09\u3002\u8981\u65B0\u5EFA\u56E2\u961F / \u751F\u6210\u9080\u8BF7\u7801 / \u52A0\u5165\u522B\u4EBA\u7684\u56E2\u961F\uFF0C\u53BB\u300C\u56E2\u961F\u7BA1\u7406\u300D\u3002","team.loading":"\u52A0\u8F7D\u4E2D\u2026","team.roleModalTitle":"\u9ED8\u8BA4\u89D2\u8272","team.roleModalHint":"\u8BE5\u673A\u5668\u4EBA\u7684\u9ED8\u8BA4\u4EBA\u8BBE\uFF08\u8DE8\u7FA4\u751F\u6548\uFF09\uFF0C\u6B64\u5904\u53EA\u8BFB\u3002\u5982\u9700\u4FEE\u6539\uFF0C\u8BF7\u5230\u300CBot \u914D\u7F6E\u300D\u9875\u3002","team.close":"\u5173\u95ED","team.tagLocal":"\u5F53\u524D\u90E8\u7F72","team.tagRemoteStale":"\u8FDC\u7AEF\xB7\u79BB\u7EBF\uFF1F","team.tagRemote":"\u8FDC\u7AEF","team.removeMember":"\u79FB\u9664","team.depTag":"\uFF08{tag}\uFF09","team.depCount":"{count} \u4E2A","team.depSelected":"\uFF0C\u5DF2\u9009 {n}","team.capLabel":"\u80FD\u529B\u6807\u7B7E","team.capPh":"\u80FD\u529B\u6807\u7B7E\u2026","team.viewRole":"\u67E5\u770B","team.hasRoleShort":"\u6709\u89D2\u8272","team.noMatch":"\u6CA1\u6709\u7B26\u5408\u6761\u4EF6\u7684\u673A\u5668\u4EBA\u3002","team.gnameLabel":"\u7FA4\u540D","team.gnamePlaceholder":"\u5982\uFF1A\u8DE8\u56E2\u961F\u6392\u969C","team.gnamePh":"\u7FA4\u540D\uFF08\u5982\uFF1A\u8DE8\u56E2\u961F\u6392\u969C\uFF09","team.pullGroupBtn":"\u628A\u52FE\u9009\u7684\u673A\u5668\u4EBA\u62C9\u4E00\u4E2A\u7FA4","team.pullGroupHint":"\u52FE\u9009\u673A\u5668\u4EBA \u2192 \u62C9\u5230\u4E00\u4E2A\u98DE\u4E66\u7FA4\uFF08\u81EA\u52A8\u542B owner\uFF09","team.noTeams":"\u8FD8\u6CA1\u6709\u56E2\u961F\u3002\u53BB\u300C\u56E2\u961F\u7BA1\u7406\u300D\u751F\u6210\u9080\u8BF7\u7801\u8BA9\u522B\u4EBA\u52A0\u5165\u4F60\uFF0C\u6216\u52A0\u5165\u522B\u4EBA\u7684\u56E2\u961F\u3002","team.connected":"\u5DF2\u8FDE\u63A5","team.connectFail":"\u8FDE\u63A5\u5931\u8D25\uFF1A{error}","team.iHost":"\u6211\u6258\u7BA1","team.teamMeta":"{deps} \u4E2A\u90E8\u7F72 \xB7 {bots} \u4E2A\u673A\u5668\u4EBA","team.rosterFail":"\u65E0\u6CD5\u83B7\u53D6\u8BE5\u56E2\u961F\u82B1\u540D\u518C\u3002","team.acrossTeams":"\uFF08\u8DE8 {n} \u4E2A\u56E2\u961F\uFF0C\u53BB\u91CD\uFF09","team.botsWord":"\u4E2A\u673A\u5668\u4EBA","team.groupCreated":"\u7FA4\u5DF2\u521B\u5EFA","team.delegatedBy":"\uFF08\u7531\u300C{name}\u300D\u5EFA\u7FA4\uFF09","team.openInLark":"\u5728\u98DE\u4E66\u6253\u5F00","team.invalidBots":"\u672A\u52A0\u5165\u7684\u673A\u5668\u4EBA\uFF1A{ids}","team.invalidOwners":"{n} \u4E2A owner \u672A\u80FD\u62C9\u8FDB","team.missingIdentity":"\u4F60\u672A\u7ED1\u5B9A\u98DE\u4E66\u8EAB\u4EFD\uFF0C\u6CA1\u628A\u4F60\u81EA\u5DF1\u62C9\u8FDB\u7FA4\uFF08\u53BB\u300C\u6211\u7684\u56E2\u961F\u300D\u7ED1\u5B9A\uFF09","team.skippedNoOwner":"{n} \u4E2A\u673A\u5668\u4EBA\u56E0\u8D1F\u8D23\u4EBA\u672A\u7ED1\u5B9A\u8EAB\u4EFD\u88AB\u8DF3\u8FC7\uFF08\u672A\u52A0\u5165\u7FA4\uFF09","team.errNoLocalBot":"\u8BF7\u81F3\u5C11\u52FE\u9009\u4E00\u4E2A\u4F60\u81EA\u5DF1\uFF08\u5F53\u524D\u90E8\u7F72\uFF09\u7684\u5728\u7EBF\u673A\u5668\u4EBA\u2014\u2014\u7FA4\u8981\u7531\u5B83\u521B\u5EFA\u5E76\u628A\u4F60\uFF08\u53D1\u8D77\u4EBA\uFF09\u62C9\u8FDB\u7FA4\u3002","team.errAllSkipped":"\u6240\u9009\u673A\u5668\u4EBA\u7684\u8D1F\u8D23\u4EBA\u90FD\u6CA1\u7ED1\u5B9A\u8EAB\u4EFD\uFF0C\u65E0\u6CD5\u62C9\u7FA4\uFF08\u673A\u5668\u4EBA\u4E0D\u80FD\u8FDB\u4E00\u4E2A owner \u4E0D\u5728\u7684\u7FA4\uFF09\u3002\u8BF7\u8BA9\u5BF9\u5E94\u90E8\u7F72\u5148\u7ED1\u5B9A\u8EAB\u4EFD\u3002","team.errNoCreator":"\u6CA1\u6709\u53EF\u7528\u7684\u5EFA\u7FA4\u53D1\u8D77\u65B9\uFF08\u76F8\u5173\u90E8\u7F72\u90FD\u6CA1\u6709\u5728\u7EBF\u673A\u5668\u4EBA\uFF0C\u6216\u4E0D\u53EF\u8FBE\uFF09","team.errDelegationTimeout":"\u59D4\u6258\u5BF9\u65B9\u90E8\u7F72\u5EFA\u7FA4\u8D85\u65F6\uFF08\u53EF\u80FD\u5DF2\u5EFA\uFF0C\u53BB\u98DE\u4E66\u786E\u8BA4\uFF0C\u52FF\u91CD\u590D\u70B9\uFF09","team.errGroupCreate":"\u5EFA\u7FA4\u5931\u8D25\uFF1A{error}","team.roleModalTitleName":"\u9ED8\u8BA4\u89D2\u8272 \xB7 {name}","team.bound":"\u5DF2\u7ED1\u5B9A","team.myHostedTeam":"\u6211\u6258\u7BA1\u7684\u56E2\u961F","team.remoteTeamLabel":"{name} \u7684\u56E2\u961F","team.manageTitle":"\u56E2\u961F\u7BA1\u7406","team.hostedTitle":"\u6211\u6258\u7BA1\u7684\u56E2\u961F","team.newTeamPh":"\u65B0\u56E2\u961F\u540D\u79F0","team.createTeamBtn":"\u521B\u5EFA\u56E2\u961F","team.joinTitle":"\u52A0\u5165\u522B\u4EBA\u7684\u56E2\u961F","team.hubPh":"Hub \u5730\u5740\uFF0C\u5982 http://10.0.0.5:7891","team.codePh":"\u9080\u8BF7\u7801","team.joinBtn":"\u52A0\u5165","team.noTeamsShort":"\u8FD8\u6CA1\u6709\u56E2\u961F\u3002","team.default":"\u9ED8\u8BA4","team.manageMetaDeps":"{count} \u4E2A\u90E8\u7F72","team.manageMetaRemote":"\uFF08\u542B {r} \u8FDC\u7AEF\uFF09","team.manageMetaBots":"{count} \u4E2A\u673A\u5668\u4EBA","team.genInvite":"\u751F\u6210\u9080\u8BF7\u7801","team.delBtn":"\u5220\u9664","team.generating":"\u751F\u6210\u4E2D\u2026","team.inviteResultLede":"\u628A\u4E0B\u9762\u4E24\u9879\u53D1\u7ED9\u522B\u7684\u90E8\u7F72\u7684\u4EBA\uFF0824 \u5C0F\u65F6\u5185\u3001\u5355\u6B21\u6709\u6548\uFF09\uFF1A","team.inviteHub":"Hub \u5730\u5740\uFF1A","team.inviteCode":"\u9080\u8BF7\u7801\uFF1A","team.genFail":"\u751F\u6210\u5931\u8D25\u3002","team.delConfirm":"\u5220\u9664\u56E2\u961F\u300C{name}\u300D\uFF1F\u5DF2\u52A0\u5165\u5B83\u7684\u90E8\u7F72\u4F1A\u88AB\u79FB\u9664\uFF08\u4E0D\u5F71\u54CD\u4ED6\u4EEC\u81EA\u5DF1\u7684\u90E8\u7F72\uFF09\u3002","team.errName":"\u8BF7\u586B\u56E2\u961F\u540D\u79F0","team.creating":"\u521B\u5EFA\u4E2D\u2026","team.created":"\u5DF2\u521B\u5EFA","team.createFail":"\u521B\u5EFA\u5931\u8D25\uFF1A{error}","team.errHubCode":"\u8BF7\u586B Hub \u5730\u5740\u548C\u9080\u8BF7\u7801\u3002","team.joining":"\u52A0\u5165\u4E2D\u2026","team.joined":"\u5DF2\u52A0\u5165\u300C{name}\u300D\uFF0C\u53BB\u300C\u6211\u7684\u56E2\u961F\u300D\u67E5\u770B\u3002","team.joinErrSelf":"\u8FD9\u662F\u4F60\u81EA\u5DF1\u7684\u90E8\u7F72\uFF0C\u4E0D\u80FD\u52A0\u5165\u81EA\u5DF1\uFF08\u9080\u8BF7\u7801\u8981\u53D1\u7ED9\u522B\u7684\u90E8\u7F72\u7684\u4EBA\u7528\uFF09","team.joinErrAlready":"\u4F60\u7684\u90E8\u7F72\u5DF2\u7ECF\u52A0\u5165\u8FC7\u8FD9\u4E2A\u56E2\u961F\u4E86","team.joinErrUnreachable":"\u8FDE\u4E0D\u4E0A\u5BF9\u65B9 Hub\uFF08\u68C0\u67E5\u5730\u5740/\u7F51\u7EDC\uFF09","team.joinErrTimeout":"\u5BF9\u65B9 Hub \u54CD\u5E94\u8D85\u65F6","team.joinErrGeneric":"\u52A0\u5165\u5931\u8D25\uFF1A{error}","team.identifying":"\u8BC6\u522B\u4E2D\u2026","team.bound2":"\u5DF2\u7ED1\u5B9A\uFF1A{name}","team.multiCandidate":"\u8BC6\u522B\u5230\u591A\u4E2A\u5019\u9009\uFF0C\u70B9\u4F60\u81EA\u5DF1\uFF1A","team.binding":"\u7ED1\u5B9A\u4E2D\u2026","team.bindFail":"\u7ED1\u5B9A\u5931\u8D25\uFF1A{error}","team.noCandidates":"\u6CA1\u8BC6\u522B\u5230\u8EAB\u4EFD\uFF1A\u8BF7\u786E\u8BA4\u673A\u5668\u4EBA\u914D\u7F6E\u4E86 allowedUsers\uFF08\u5141\u8BB8\u4F7F\u7528\u8005\uFF09\uFF0C\u4E14\u673A\u5668\u4EBA\u6709\u901A\u8BAF\u5F55\u6743\u9650\u3002","team.removeMemberConfirm":"\u628A\u300C{name}\u300D\u79FB\u51FA\u8FD9\u4E2A\u56E2\u961F\uFF1F\u5B83\u7684\u673A\u5668\u4EBA\u5C06\u4ECE\u672C\u56E2\u961F\u82B1\u540D\u518C\u6D88\u5931\uFF08\u4E0D\u5F71\u54CD\u5BF9\u65B9\u81EA\u5DF1\u7684\u90E8\u7F72\uFF09\u3002","team.creatingGroup":"\u5EFA\u7FA4\u4E2D\u2026","team.defaultGroupName":"\u534F\u4F5C\u7FA4","team.errPickBot":"\u8BF7\u5148\u52FE\u9009\u81F3\u5C11\u4E00\u4E2A\u673A\u5668\u4EBA","sessions.closeBulkConfirm":"\u5173\u95ED\u9009\u4E2D\u7684 {count} \u4E2A\u4F1A\u8BDD\uFF1F","sessions.empty":"\u6CA1\u6709\u7B26\u5408\u6761\u4EF6\u7684\u4F1A\u8BDD\u3002","sessions.viewMode":"\u4F1A\u8BDD\u89C6\u56FE","sessions.viewKanban":"\u770B\u677F","sessions.viewBoard":"\u72B6\u6001\u677F","sessions.viewTopics":"\u8BDD\u9898","sessions.viewTable":"\u8868\u683C","sessions.topic.summary":"\u8BDD\u9898\u805A\u5408\u6458\u8981","sessions.topic.untitled":"\u672A\u547D\u540D\u8BDD\u9898","sessions.topic.wholeChat":"\u6574\u7FA4\u4F1A\u8BDD","sessions.topic.singleSession":"\u5355\u4F1A\u8BDD","sessions.topic.collaboration":"\u591A Bot \u534F\u4F5C","sessions.topic.sessions":"{count} \u4E2A\u4F1A\u8BDD","sessions.topic.bots":"{count} \u4E2A Bot","sessions.topic.active":"{count} \u6D3B\u8DC3","sessions.topic.closed":"{count} \u5DF2\u5173\u95ED","sessions.topic.botInputs":"{count} \u4E2A\u4F1A\u8BDD\u6700\u8FD1\u7531 Bot \u5524\u9192\uFF08\u63A8\u65AD\uFF09","sessions.topic.inferredHint":"\u4F9D\u636E\u6700\u8FD1\u4E00\u8F6E\u8F93\u5165\u53D1\u9001\u8005\u5224\u65AD\uFF1B\u540E\u7EED\u6D88\u606F\u4F1A\u8986\u76D6\u8BE5\u7EBF\u7D22\uFF0C\u4E0D\u4EE3\u8868\u5B8C\u6574\u56E0\u679C\u94FE","sessions.topic.empty":"\u6682\u65E0\u5339\u914D\u7684\u8BDD\u9898\u4F1A\u8BDD","sessions.selectSession":"\u9009\u62E9\u4F1A\u8BDD","sessions.board.needsYou":"\u9700\u8981\u4F60","sessions.board.needsYouHint":"\u7B49\u5F85\u4ED3\u5E93\u3001TUI \u9009\u62E9\u3001\u989D\u5EA6\u5904\u7406\u6216\u65E0\u8FDB\u5C55\u68C0\u67E5","sessions.board.working":"\u8FDB\u884C\u4E2D","sessions.board.workingHint":"\u6B63\u5728\u542F\u52A8\u3001\u8F93\u51FA\u3001\u5206\u6790\u6216\u6267\u884C\u5DE5\u5177","sessions.board.todo":"\u5F85\u529E","sessions.board.todoHint":"\u673A\u5668\u7A7A\u95F2\u4F46\u8FD8\u6709\u672A\u5B8C\u6210\u7684 TODO","sessions.board.todoBadge":"TODO {done}/{total}","sessions.board.todoBadgeTitle":"\u8FD8\u6709 {remaining} \u9879 TODO \u672A\u5B8C\u6210\uFF08\u5171 {total} \u9879\uFF0C\u5DF2\u5B8C\u6210 {done} \u9879\uFF09","sessions.board.todoClickHint":"\u70B9\u51FB\u56FA\u5B9A\u4EE5\u590D\u5236","sessions.board.todoCopy":"\u590D\u5236\u6E05\u5355","sessions.board.todoCopied":"\u5DF2\u590D\u5236 \u2713","sessions.board.todoActive":"\u6B63\u5728\u505A","sessions.board.idle":"\u7A7A\u95F2","sessions.board.idleHint":"\u53EF\u7EE7\u7EED\u5BF9\u8BDD\u6216\u63A5\u65B0\u4EFB\u52A1","sessions.board.emptyColumn":"\u6682\u65E0\u4F1A\u8BDD","sessions.board.signalRepo":"\u5F85\u9009\u4ED3\u5E93","sessions.board.signalPrompt":"\u7B49\u5F85 TUI \u9009\u62E9","sessions.board.signalLimited":"\u989D\u5EA6\u53D7\u9650","sessions.board.signalStalled":"\u957F\u65F6\u95F4\u65E0\u8FDB\u5C55","sessions.board.signalAgent":"\u9700\u8981\u4EBA\u5DE5\u4ECB\u5165","sessions.board.waiting":"\u7B49\u5F85","sessions.board.dragHint":"\u62D6\u52A8\u5217\u5934\u8C03\u6574\u5217\u987A\u5E8F","sessions.board.moveLeft":"\u5DE6\u79FB\u6B64\u5217","sessions.board.moveRight":"\u53F3\u79FB\u6B64\u5217","sessions.kanban.backlog":"\u5F85\u529E\u6C60","sessions.kanban.todo":"\u5F85\u529E","sessions.kanban.inProgress":"\u8FDB\u884C\u4E2D","sessions.kanban.inReview":"\u9700\u8981\u4F60","sessions.kanban.done":"\u5DF2\u5B8C\u6210","sessions.kanban.updated":"\u66F4\u65B0\u4E8E {time}","sessions.kanban.moreHidden":"\u8FD8\u6709 {count} \u4E2A\u672A\u663E\u793A","sessions.create.button":"\u521B\u5EFA\u4F1A\u8BDD","sessions.create.title":"\u521B\u5EFA\u4F1A\u8BDD","sessions.create.content":"\u5185\u5BB9","sessions.create.contentPlaceholder":"\u63CF\u8FF0\u8981\u505A\u7684\u4E8B\uFF1B\u8F93\u5165 @ \u7ED9\u6307\u5B9A\u673A\u5668\u4EBA\u6D3E\u6D3B\uFF0C\u4E5F\u53EF\u76F4\u63A5\u7C98\u8D34\u622A\u56FE","sessions.create.contentHelp":"\u8F93\u5165 @ \u53EF\u641C\u7D22\u673A\u5668\u4EBA\uFF08\u9009\u4E2D\u540E\u4F1A\u81EA\u52A8\u52A0\u5165\u65B0\u7FA4\uFF09\u3002\u7C98\u8D34\u56FE\u7247\u65F6\u4F1A\u5728\u5F53\u524D\u5149\u6807\u5904\u63D2\u5165\u56FE\u7247\u6807\u8BB0\u3002Lead \u5206\u914D\u6A21\u5F0F\u4E0B\uFF0C\u6B63\u6587\u5373\u4F7F @\u4E86 sub\uFF0C\u4E5F\u53EA\u4F1A\u5148\u542F\u52A8 Lead\uFF0C\u7531 Lead \u518D\u51B3\u5B9A\u4F55\u65F6\u6D3E\u53D1\u3002\u652F\u6301 PNG/JPEG/GIF/WebP\u3002","sessions.create.mentionBots":"\u9009\u62E9\u8981 @ \u7684\u673A\u5668\u4EBA","sessions.create.pastedImages":"\u5DF2\u7C98\u8D34\u56FE\u7247","sessions.create.imageMarker":"\u56FE\u7247 {n}","sessions.create.removeImage":"\u79FB\u9664\u56FE\u7247 {name}","sessions.create.imageUnsupported":"\u4EC5\u652F\u6301\u7C98\u8D34 PNG\u3001JPEG\u3001GIF \u6216 WebP \u56FE\u7247","sessions.create.imageCountLimit":"\u4E00\u6B21\u6700\u591A\u7C98\u8D34 {n} \u5F20\u56FE\u7247","sessions.create.imageSizeLimit":"\u5355\u5F20\u56FE\u7247\u4E0D\u80FD\u8D85\u8FC7 10 MB","sessions.create.imageTotalLimit":"\u56FE\u7247\u603B\u5927\u5C0F\u4E0D\u80FD\u8D85\u8FC7 25 MB","sessions.create.imageReadFailed":"\u8BFB\u53D6\u7C98\u8D34\u56FE\u7247\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5","sessions.create.bots":"\u673A\u5668\u4EBA\uFF08\u62C9\u8FDB\u65B0\u7FA4\uFF09","sessions.create.noBots":"\u6CA1\u6709\u5728\u7EBF\u7684\u673A\u5668\u4EBA\u53EF\u9009","sessions.create.noBotMatch":"\u6CA1\u6709\u5339\u914D\u7684\u673A\u5668\u4EBA","sessions.create.mode":"\u534F\u4F5C\u6A21\u5F0F","sessions.create.modeAll":"\u4E00\u8D77\u5F00\u5DE5","sessions.create.modeLead":"\u53EA\u53D1 Lead\uFF0C\u7531 Lead \u5206\u914D\uFF08\u63A8\u8350\uFF09","sessions.create.modeHelp":"\u4E00\u8D77\u5F00\u5DE5\uFF1A\u6BCF\u4E2A\u88AB\u9009\u673A\u5668\u4EBA\u5404\u8D77\u4E00\u6761\u4F1A\u8BDD\u3001\u62FF\u540C\u4E00\u4EFD\u5185\u5BB9\u3002Lead \u5206\u914D\uFF1A\u53EA\u8D77 lead\uFF0C\u7531\u5B83\u5728\u7FA4\u91CC @ \u62C9\u8D77\u5176\u5B83\u673A\u5668\u4EBA\u5E72\u6D3B\u3002","sessions.create.lead":"Lead \u673A\u5668\u4EBA","sessions.create.leadHelp":"\u5185\u5BB9\u4F1A\u53D1\u7ED9 lead\uFF0C\u7531\u5B83\u51B3\u5B9A\u4F55\u65F6\u62C9\u8D77\u54EA\u4E2A sub bot\u3002","sessions.create.leadPickFirst":"\u8BF7\u5148\u5728\u4E0A\u65B9\u52FE\u9009\u673A\u5668\u4EBA","sessions.create.column":"\u5165\u5217","sessions.create.columnInProgress":"\u76F4\u63A5\u8FDB\u884C\u4E2D","sessions.create.columnBacklog":"\u5F85\u529E\u6C60","sessions.create.columnHelp":"\u76F4\u63A5\u8FDB\u884C\u4E2D\uFF1A\u5EFA\u5B8C\u7FA4\u7ACB\u523B\u5F00\u8DD1\u3002\u5F85\u529E\u6C60\uFF1A\u5148\u5EFA\u7FA4+\u62C9\u673A\u5668\u4EBA\u4F46\u4E0D\u8D77 CLI\uFF0C\u4E4B\u540E\u62D6\u5230\u300C\u8FDB\u884C\u4E2D\u300D\u6216\u70B9\u300C\u5F00\u59CB\u300D\u518D\u53D1\u7ED9\u673A\u5668\u4EBA\u3002","sessions.create.advanced":"\u66F4\u591A\u9009\u9879","sessions.create.optionalConfig":"\u53EF\u9009\u914D\u7F6E","sessions.create.groupName":"\u7FA4\u540D\u79F0","sessions.create.groupNamePlaceholder":"\u7559\u7A7A\u5219\u53D6\u5185\u5BB9\u9996\u884C","sessions.create.workingDir":"\u5DE5\u4F5C\u76EE\u5F55","sessions.create.workingDirHelp":"\u53EF\u9009\u3002\u586B\u4E86\u5219\u628A\u65B0\u7FA4\u7ED1\u5B9A\u5230\u8BE5\u76EE\u5F55\uFF08\u6240\u6709\u673A\u5668\u4EBA\u90FD\u5728\u6B64\u76EE\u5F55\u5DE5\u4F5C\uFF09\u3002\u7559\u7A7A\u5219\u673A\u5668\u4EBA\u5728\u7FA4\u91CC\u5F39 /repo \u5361\u7247\u8BA9\u4F60\u9009\u4ED3\u5E93\uFF08\u652F\u6301\u65B0\u5EFA worktree\uFF09\u3002","sessions.create.submit":"\u521B\u5EFA","sessions.create.submitting":"\u521B\u5EFA\u4E2D\u2026","sessions.create.cancel":"\u53D6\u6D88","sessions.create.start":"\u5F00\u59CB","sessions.create.errContent":"\u8BF7\u586B\u5199\u5185\u5BB9","sessions.create.errNoBot":"\u8BF7\u81F3\u5C11\u9009\u62E9\u4E00\u4E2A\u673A\u5668\u4EBA","sessions.create.errLead":"Lead \u5FC5\u987B\u662F\u5DF2\u52FE\u9009\u7684\u673A\u5668\u4EBA\u4E4B\u4E00","sessions.create.failed":"\u521B\u5EFA\u5931\u8D25","sessions.create.startFailed":"\u5F00\u59CB\u5931\u8D25","sessions.create.doneTitle":"\u5DF2\u521B\u5EFA","sessions.create.doneInProgress":"\u5DF2\u5EFA\u7FA4\u5E76\u62C9\u8D77\u4F1A\u8BDD","sessions.create.doneBacklog":"\u5DF2\u5EFA\u7FA4\uFF0C\u4F1A\u8BDD\u5DF2\u5165\u5F85\u529E\u6C60","sessions.create.partialFail":"\u6709 {n} \u4E2A\u673A\u5668\u4EBA\u672A\u80FD\u62C9\u8D77\uFF0C\u53EF\u7A0D\u540E\u5728\u7FA4\u91CC @ \u91CD\u8BD5","sessions.create.openChat":"\u6253\u5F00\u98DE\u4E66\u7FA4","sessions.create.close":"\u5173\u95ED","sessions.create.keepOpen":"\u8FDE\u7EED\u521B\u5EFA","sessions.create.keepOpenHelp":"\u6253\u5F00\u540E\uFF1A\u521B\u5EFA\u6210\u529F\u4E0D\u5173\u95ED\u5F39\u7A97\uFF0C\u4FDD\u7559\u673A\u5668\u4EBA\u52FE\u9009\u4E0E\u914D\u7F6E\uFF0C\u6E05\u7A7A\u5185\u5BB9\u4FBF\u4E8E\u8FDE\u7EED\u521B\u5EFA","sessions.kanban.openTab":"\u65B0\u6807\u7B7E\u9875\u6253\u5F00","sessions.kanban.openFeishu":"\u6253\u5F00\u98DE\u4E66","sessions.kanban.terminalLoading":"\u6B63\u5728\u6253\u5F00\u7EC8\u7AEF\u2026","sessions.kanban.rename":"\u91CD\u547D\u540D\uFF08\u53CC\u51FB\u6807\u9898\u4E5F\u53EF\uFF09","sessions.kanban.renameFail":"\u91CD\u547D\u540D\u5931\u8D25","sessions.kanban.moveFail":"\u79FB\u52A8\u5931\u8D25","sessions.kanban.groupBy":"\u5206\u7EC4\u7EF4\u5EA6","sessions.kanban.groupFlow":"\u5DE5\u4F5C\u6D41","sessions.kanban.groupTeam":"\u56E2\u961F","sessions.kanban.groupBot":"\u673A\u5668\u4EBA","sessions.kanban.teamLoading":"\u6B63\u5728\u52A0\u8F7D\u56E2\u961F\u2026","sessions.kanban.noTeam":"\u6682\u65E0\u56E2\u961F","sessions.kanban.teamScope":"{chats} \u4E2A\u534F\u4F5C\u7FA4 \xB7 {sessions} \u4E2A\u4F1A\u8BDD","sessions.kanban.remoteHint":"\u6765\u81EA {name} \u90E8\u7F72\u7684\u4F1A\u8BDD\uFF08\u5FEB\u7167\uFF0C\u7EC8\u7AEF/\u5386\u53F2\u5728\u5BF9\u65B9\u673A\u5668\u4E0A\uFF09","sessions.kanban.clusterDragHint":"\u62D6\u52A8\u6807\u9898\u6574\u7EC4\u79FB\u52A8","sessions.kanban.clusterExpand":"\u5C55\u5F00\u7FA4\u7EC4\u4F1A\u8BDD","sessions.kanban.clusterCollapse":"\u6298\u53E0\u7FA4\u7EC4\u4F1A\u8BDD","sessions.history.title":"\u4F1A\u8BDD\u5386\u53F2","sessions.history.loading":"\u6B63\u5728\u62C9\u53D6\u98DE\u4E66\u6D88\u606F\u2026","sessions.history.fail":"\u5386\u53F2\u62C9\u53D6\u5931\u8D25","sessions.history.empty":"\u6CA1\u6709\u6D88\u606F","sessions.history.user":"\u7528\u6237","sessions.history.bot":"\u673A\u5668\u4EBA","sessions.history.system":"\u7CFB\u7EDF\u6D88\u606F","sessions.history.owner":"\u521B\u5EFA\u8005","sessions.history.staleHint":"dashboard \u6216 daemon \u8FDB\u7A0B\u53EF\u80FD\u8FD8\u5728\u8DD1\u65E7\u7248\u672C\uFF0Cbotmux restart \u540E\u91CD\u8BD5","groups.title":"\u7FA4\u7EC4\u7BA1\u7406","groups.matrixTitle":"\u7FA4\u7EC4\u77E9\u9635","groups.search":"\u641C\u7D22\u7FA4\u540D / ID / owner","groups.missingOnly":"\u4EC5\u7F3A bot","groups.sessionSection":"\u4F1A\u8BDD\u7FA4","groups.sessionSectionHint":"\u7531 bot \u81EA\u52A8\u521B\u5EFA\u548C\u7BA1\u7406\uFF0C\u9ED8\u8BA4\u6536\u8D77","groups.refresh":"\u5237\u65B0","groups.create":"\u65B0\u5EFA\u7FA4\u804A","groups.chat":"\u7FA4\u804A","groups.actions":"\u64CD\u4F5C","groups.addBots":"\u6DFB\u52A0 bot","groups.saveAsProfile":"\u4FDD\u5B58Profile","groups.manage":"\u7BA1\u7406","groups.empty":"\u6CA1\u6709\u7B26\u5408\u6761\u4EF6\u7684\u7FA4\u804A\u3002","groups.paginationLabel":"\u7FA4\u7EC4\u5217\u8868\u5206\u9875","groups.pageStatus":"\u663E\u793A {from}-{to}/{total} \xB7 \u7B2C {page}/{pages} \u9875","groups.prevPage":"\u4E0A\u4E00\u9875","groups.nextPage":"\u4E0B\u4E00\u9875","groups.botCoverage":"\u673A\u5668\u4EBA\u8986\u76D6","groups.memberSummary":"\u5DF2\u5165\u7FA4 {count}/{total}","groups.botStatusIn":"\u5DF2\u5165\u7FA4","groups.botStatusOut":"\u7F3A\u5931","groups.botStatusError":"\u5F02\u5E38","groups.botStatusUnknown":"\u672A\u77E5","groups.profileStatusFull":"\u5B8C\u6574\u5339\u914D {name}\uFF08{matched}/{total}\uFF09","groups.profileStatusFullChat":"\u672C\u7FA4 Role \u5B8C\u6574\u5339\u914D {name}\uFF08{matched}/{total}\uFF09","groups.profileStatusPartial":"\u90E8\u5206\u5339\u914D {name}\uFF08{matched}/{total}\uFF09","groups.profileStatusUnmatched":"\u672A\u5339\u914D\u4EFB\u4F55 Profile","groups.saveProfileTitle":"\u4FDD\u5B58\u4E3A Profile","groups.saveProfileIntro":"\u5C06\u300C{name}\u300D\u91CC\u7684 {count} \u4E2A\u7FA4\u5185 bot \u914D\u7F6E\u4FDD\u5B58\u4E3A profile \u5FEB\u7167\u3002","groups.saveProfileScope":"\u4FDD\u5B58\u8303\u56F4","groups.saveProfileScopeHelp":"\u7FA4\u5185 bot \u914D\u7F6E\u5FEB\u7167","groups.saveProfileBotCount":"\u7FA4\u5185 bot","groups.saveProfileLoadFailed":"\u8BFB\u53D6\u5931\u8D25","groups.saveProfileStatus.entry":"\u751F\u6210 entry","groups.saveProfileStatus.error":"\u8BFB\u53D6\u5931\u8D25","groups.saveProfileMode":"\u4FDD\u5B58\u65B9\u5F0F","groups.saveProfileNew":"\u65B0\u5EFA Profile","groups.saveProfileNewHelp":"\u9ED8\u8BA4\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684\u5FEB\u7167\uFF1B\u5982\u679C id \u5DF2\u5B58\u5728\uFF0C\u4F1A\u8986\u76D6\u540C bot entry\u3002","groups.saveProfileOverwrite":"\u8986\u76D6\u5DF2\u6709 Profile","groups.saveProfileOverwriteHelp":"\u4ECE\u5217\u8868\u4E2D\u9009\u62E9\u4E00\u4E2A\u5DF2\u6709 profile\uFF0C\u8986\u76D6\u5176\u4E2D\u540C bot \u7684 entry\u3002","groups.saveProfileExistingMeta":"{count} \u4E2A entry","groups.saveProfileIdLabel":"Profile id","groups.saveProfileExistingLabel":"\u5DF2\u6709 Profile","groups.saveProfileExistingEmpty":"\u6682\u65E0\u5DF2\u6709 Profile","groups.saveProfileTarget":"\u76EE\u6807 Profile","groups.saveProfileTargetNew":"\u5C06\u65B0\u5EFA\u6216\u66F4\u65B0\u8FD9\u4E2A Profile \u7684\u7FA4\u5185 bot \u5FEB\u7167","groups.saveProfileTargetOverwrite":"\u5C06\u8986\u76D6\u5DF2\u6709 Profile \u4E2D\u8FD9\u4E9B bot \u7684 entry","groups.saveProfileEntrySummary":"\u5C06\u4E3A {count} \u4E2A\u7FA4\u5185 bot \u751F\u6210 profile entry\u3002","groups.saveProfileEntrySummaryWithEmpty":"\u5C06\u4E3A {count} \u4E2A\u7FA4\u5185 bot \u751F\u6210 profile entry\uFF1B\u5176\u4E2D {emptyCount} \u4E2A\u5F53\u524D\u672A\u8BFB\u5230 role \u5185\u5BB9\uFF0C\u4F1A\u4FDD\u5B58\u4E3A\u7A7A entry\u3002","groups.saveProfileFailedLoadSummary":"\u6709 {count} \u4E2A bot \u914D\u7F6E\u8BFB\u53D6\u5931\u8D25\uFF0C\u6682\u4E0D\u4FDD\u5B58\uFF0C\u907F\u514D\u751F\u6210\u4E0D\u5B8C\u6574\u5FEB\u7167\u3002","groups.saveProfileSubmit":"\u4FDD\u5B58 Profile","groups.saveProfileOverwriteSubmit":"\u8986\u76D6\u4FDD\u5B58","groups.saveProfileInvalid":"Profile id \u53EA\u80FD\u5305\u542B\u5B57\u6BCD\u3001\u6570\u5B57\u3001\u70B9\u3001\u4E0B\u5212\u7EBF\u3001\u77ED\u6A2A\u7EBF\uFF0C\u6700\u957F 64\uFF0C\u4E14\u4E0D\u80FD\u662F . \u6216 ..","groups.saveProfileNoRoles":"\u8FD9\u4E2A\u7FA4\u91CC\u6CA1\u6709\u53EF\u4FDD\u5B58\u7684 bot \u914D\u7F6E\u3002","groups.saveProfilePreparing":"\u8BFB\u53D6\u914D\u7F6E\u2026","groups.saveProfileSaving":"\u4FDD\u5B58\u4E2D\u2026","groups.saveProfileDone":"\u5DF2\u4FDD\u5B58 {count} \u4E2A entry \u5230 {name}","groups.saveProfileFailed":"\u53EA\u4FDD\u5B58\u4E86 {saved}/{total} \u4E2A entry\uFF0C\u8BF7\u68C0\u67E5\u79BB\u7EBF bot \u6216\u6743\u9650\u3002","groups.createTitle":"\u65B0\u5EFA\u7FA4\u804A","groups.createHelp":"\u9009\u62E9\u8981\u9080\u8BF7\u7684 bot\u3002dashboard \u4F1A\u81EA\u52A8\u9009\u62E9\u5728\u7EBF daemon \u4F5C\u4E3A\u521B\u5EFA\u8005\u3002","groups.name":"\u7FA4\u540D","groups.namePlaceholder":"\u4F8B\u5982 AI ChangeLog","groups.bindDir":"\u7ED1\u5B9A\u76EE\u5F55","groups.bindDirHelp":"\u65B0\u8BDD\u9898\u76F4\u63A5\u7528\u8BE5\u76EE\u5F55\u542F\u52A8 CLI\uFF0C\u8DF3\u8FC7 repo \u9009\u62E9\u3002","groups.roleProfile":"Profile","groups.roleProfileNone":"\u4E0D\u4F7F\u7528","groups.roleProfileHelp":"\u521B\u5EFA\u540E\u5728\u65B0\u7FA4\u91CC\u53D1\u9001 profile apply bootstrap \u547D\u4EE4\u3002","groups.roleProfileBootstrapSent":"Profile\uFF1A{name}\uFF1Bbootstrap \u6D88\u606F\u5DF2\u53D1\u9001\uFF1A{messageId}","groups.roleProfileBootstrapDone":"Profile\uFF1A{name}\uFF1Bbootstrap \u5DF2\u5B8C\u6210\uFF0C\u65E0\u9700\u53D1\u9001 peer bootstrap \u6D88\u606F\u3002","groups.roleProfileBootstrapFailed":"Profile\uFF1A{name}\uFF1Bbootstrap \u5931\u8D25\uFF1A{reason}","groups.botPicker":"Bot","botPicker.searchPlaceholder":"\u641C\u7D22\u673A\u5668\u4EBA\u2026","botPicker.noMatch":"\u6CA1\u6709\u5339\u914D\u7684\u673A\u5668\u4EBA","botPicker.empty":"\u6682\u65E0\u53EF\u9009\u673A\u5668\u4EBA","botPicker.selectedCount":"\u5DF2\u9009 {n} \u4E2A\u673A\u5668\u4EBA","groups.createSubmit":"\u521B\u5EFA\u7FA4\u804A","groups.createSubmitting":"\u521B\u5EFA\u4E2D\u2026","groups.cancel":"\u53D6\u6D88","groups.successTitle":"\u7FA4\u521B\u5EFA\u6210\u529F","groups.openGroup":"\u6253\u5F00\u65B0\u7FA4","groups.manageTitle":"\u7BA1\u7406 {name}","groups.owner":"\u7FA4\u4E3B","groups.oncall":"Oncall \u6A21\u5F0F","groups.oncallHelp":"\u5F00\u542F\u540E\uFF0C\u7FA4\u5185\u6210\u5458\u53EF @ \u673A\u5668\u4EBA\uFF1B\u52FE\u9009\u7684 bot \u5728\u672C\u7FA4\u7684\u65B0\u8BDD\u9898\u76F4\u63A5\u4F7F\u7528\u5176\u7ED1\u5B9A\u76EE\u5F55\uFF08\u7ED1\u5B9A\u6309 bot \u8BA1\uFF0C\u53EA\u5F71\u54CD\u52FE\u9009\u7684 bot\uFF09\u3002","groups.leaveTitle":"\u9009\u62E9\u673A\u5668\u4EBA\u9000\u51FA\u7FA4\u804A","groups.leaveSelected":"\u9009\u4E2D\u673A\u5668\u4EBA\u9000\u51FA\u7FA4\u804A","groups.disband":"\u89E3\u6563\u7FA4\u804A","groups.dangerHint":"\u89E3\u6563\u4EC5\u5F53\u5728\u7FA4\u673A\u5668\u4EBA\u662F\u7FA4\u4E3B\u65F6\u624D\u4F1A\u6210\u529F\uFF0C\u5426\u5219\u5EFA\u8BAE\u4F7F\u7528\u9000\u51FA\u7FA4\u804A\u3002","groups.save":"\u4FDD\u5B58","groups.needWorkingDir":"\u8BF7\u586B\u5DE5\u4F5C\u76EE\u5F55","groups.noBotsOnline":"\u6CA1\u6709\u5728\u7EBF bot\u3002\u8BF7\u5148\u91CD\u542F daemon\u3002","schedules.title":"\u5B9A\u65F6\u4EFB\u52A1","schedules.search":"\u641C\u7D22\u540D\u79F0 / prompt / \u5DE5\u4F5C\u76EE\u5F55","schedules.anyKind":"\u5168\u90E8\u7C7B\u578B","schedules.enabledOnly":"\u4EC5\u542F\u7528","schedules.name":"\u540D\u79F0","schedules.bot":"bot","schedules.schedule":"\u89C4\u5219","schedules.next":"\u4E0B\u6B21","schedules.last":"\u4E0A\u6B21","schedules.repeat":"\u91CD\u590D","schedules.enabled":"\u542F\u7528","schedules.paused":"\u6682\u505C","schedules.actions":"\u64CD\u4F5C","schedules.runNow":"\u7ACB\u5373\u8FD0\u884C","schedules.running":"\u8FD0\u884C\u4E2D","schedules.runDone":"\u5DF2\u8FD0\u884C","schedules.saving":"\u4FDD\u5B58\u4E2D","schedules.saved":"\u5DF2\u4FDD\u5B58","schedules.failed":"\u5931\u8D25","schedules.error":"\u9519\u8BEF","schedules.errorUnknown":"\u672A\u77E5\u9519\u8BEF","schedules.pause":"\u6682\u505C","schedules.resume":"\u6062\u590D","schedules.delivery":"\u6267\u884C\u4F4D\u7F6E","schedules.deliveryTopLevel":"\u7FA4\u6D88\u606F\u9876\u5C42","schedules.deliveryThread":"\u8BDD\u9898\u4E0B\u6267\u884C","schedules.deliveryOrigin":"\u539F\u8BDD\u9898","schedules.deliveryNewTopic":"\u6BCF\u6B21\u65B0\u8BDD\u9898","schedules.deliveryLocal":"\u4EC5\u8BB0\u5F55","schedules.silent":"\u9759\u9ED8","schedules.useNewTopic":"\u6539\u4E3A\u6BCF\u6B21\u65B0\u8BDD\u9898","schedules.useOrigin":"\u6539\u4E3A\u539F\u8BDD\u9898","schedules.empty":"\u6682\u65E0\u5B9A\u65F6\u4EFB\u52A1\u3002","schedules.create":"\u65B0\u5EFA\u5B9A\u65F6\u4EFB\u52A1","schedules.edit":"\u7F16\u8F91","schedules.delete":"\u5220\u9664","schedules.deleteConfirm":"\u786E\u8BA4\u5220\u9664\u8BE5\u5B9A\u65F6\u4EFB\u52A1\uFF1F","schedules.form.name":"\u540D\u79F0","schedules.form.schedule":"\u8C03\u5EA6\u89C4\u5219","schedules.form.scheduleHelp":"\u5982\u300C\u6BCF\u65E59:00\u300D\u300C\u6BCF30\u5206\u949F\u300D\u6216 cron \u8868\u8FBE\u5F0F\u300C0 9 * * *\u300D","schedules.form.prompt":"\u6267\u884C\u5185\u5BB9","schedules.form.promptHelp":"\u5230\u70B9\u65F6\u4F1A\u88AB\u6267\u884C\u7684 prompt\uFF0C\u5C31\u50CF\u7528\u6237\u5728\u8BDD\u9898\u91CC\u53D1\u9001\u8FD9\u6BB5\u5185\u5BB9","schedules.form.deliver":"\u6267\u884C\u4F4D\u7F6E","schedules.form.deliveryManagedHelp":"\u9009\u62E9\u4EFB\u52A1\u5728\u7FA4\u9876\u5C42\u6216\u6307\u5B9A\u8BDD\u9898\u4E0B\u6267\u884C","schedules.form.localHelp":"\u4EC5\u8BB0\u5F55\u4EFB\u52A1\u7531 CLI \u7BA1\u7406\uFF0C\u7F16\u8F91\u5176\u5B83\u5B57\u6BB5\u4E0D\u4F1A\u6539\u53D8\u6295\u9012\u65B9\u5F0F","schedules.form.topLevelHelp":"\u5148\u6295\u9012\u5230\u7FA4\u6D88\u606F\u9876\u5C42\uFF1B\u540E\u7EED\u662F\u5426\u5F62\u6210\u65B0\u8BDD\u9898\u7531\u6267\u884C Bot \u7684\u666E\u901A\u7FA4\u4F1A\u8BDD\u6A21\u5F0F\u51B3\u5B9A","schedules.form.topicHelp":"\u56FA\u5B9A\u5728\u6307\u5B9A\u8BDD\u9898\u4E0B\u6267\u884C\uFF0C\u4E0D\u53D7\u666E\u901A\u7FA4\u9876\u5C42\u4F1A\u8BDD\u6A21\u5F0F\u5F71\u54CD","schedules.form.newTopicHelp":"\u6BCF\u6B21\u89E6\u53D1\u90FD\u521B\u5EFA\u4E00\u4E2A\u5168\u65B0\u7684\u8BDD\u9898\u548C\u72EC\u7ACB\u4F1A\u8BDD\uFF0C\u4E0D\u53D7\u666E\u901A\u7FA4\u4F1A\u8BDD\u6A21\u5F0F\u5F71\u54CD","schedules.form.topicRoot":"\u76EE\u6807\u8BDD\u9898\u6839\u6D88\u606F ID","schedules.form.topicRootHelp":"\u98DE\u4E66\u8BDD\u9898\u6839\u6D88\u606F\u7684 message_id\uFF0C\u901A\u5E38\u4EE5 om_ \u5F00\u5934\uFF1B\u4ECE\u8BDD\u9898\u5185\u521B\u5EFA\u7684\u4EFB\u52A1\u4F1A\u81EA\u52A8\u5E26\u5165","schedules.form.topicTitle":"\u65B0\u8BDD\u9898\u6807\u9898\uFF08\u53EF\u9009\uFF09","schedules.form.topicTitlePlaceholder":"\u9ED8\u8BA4\u4F7F\u7528\u4EFB\u52A1\u5F00\u59CB\u63D0\u793A","schedules.form.topicTitleHelp":"\u4F5C\u4E3A\u6BCF\u6B21\u65B0\u8BDD\u9898\u7684\u9996\u6761\u6D88\u606F\uFF0C\u548C Webhook \u7684\u81EA\u5B9A\u4E49\u89E6\u53D1\u63D0\u793A\u4E00\u81F4\u3002","schedules.form.silent":"\u9759\u9ED8\u6267\u884C","schedules.form.silentHelp":"\u4E0D\u53D1\u5F00\u59CB\u63D0\u793A\u3001\u4E0D\u53D1\u6D41\u5361\u7247\uFF1B\u4EC5\u5F53\u6EE1\u8DB3 prompt \u4E2D\u7684\u62A5\u8B66\u6761\u4EF6\u65F6\u624D botmux send","schedules.form.bot":"\u6267\u884C\u673A\u5668\u4EBA","schedules.form.chat":"\u76EE\u6807\u7FA4\u804A","schedules.form.save":"\u4FDD\u5B58","schedules.form.cancel":"\u53D6\u6D88","schedules.form.create":"\u521B\u5EFA","schedules.form.silentNewTopicConflict":"\u9759\u9ED8\u65F6\u5C06\u5EF6\u8FDF\u521B\u5EFA\u8BDD\u9898\uFF1A\u65E0\u901A\u77E5\u5219\u81EA\u52A8\u5173\u95ED\u9690\u85CF\u4F1A\u8BDD\uFF0C\u9996\u6B21 botmux send \u624D\u521B\u5EFA\u65B0\u8BDD\u9898\u3002","settings.title":"\u5168\u5C40\u8BBE\u7F6E","settings.loading":"\u6B63\u5728\u52A0\u8F7D\u8BBE\u7F6E\u2026","settings.loadFailed":"\u8BBE\u7F6E\u52A0\u8F7D\u5931\u8D25","settings.readOnlyVisitor":"\u5F53\u524D\u662F\u53EA\u8BFB\u8BBF\u95EE\uFF0C\u4FEE\u6539\u8BBE\u7F6E\u9700\u8981\u6388\u6743\u94FE\u63A5\uFF08\u8FD0\u884C botmux dashboard \u83B7\u53D6\uFF09","settings.moduleGeneral":"\u901A\u7528\u8BBE\u7F6E","settings.moduleGeneralHelp":"\u7BA1\u7406\u8BBF\u95EE\u65B9\u5F0F\u3001\u98DE\u4E66\u5361\u7247\u3001\u5B9E\u9A8C\u80FD\u529B\u548C\u4EFB\u52A1\u884C\u4E3A\u3002","settings.moduleMeeting":"\u4F1A\u8BAE Agent","settings.moduleMeetingHelp":"\u96C6\u4E2D\u914D\u7F6E\u4F1A\u8BAE\u76D1\u542C\u3001\u89D2\u8272\u9884\u8BBE\u548C\u5B98\u65B9\u89D2\u8272\u6A21\u677F\u3002","settings.moduleSystem":"\u7CFB\u7EDF\u4E0E\u7EF4\u62A4","settings.moduleSystemHelp":"\u7BA1\u7406\u81EA\u52A8\u66F4\u65B0\u3001\u91CD\u542F\u4E0E\u8FD0\u884C\u7248\u672C\u3002","settings.sectionAccess":"\u8BBF\u95EE\u6743\u9650","settings.publicReadOnly":"\u5141\u8BB8\u65E0 token \u53EA\u8BFB\u8BBF\u95EE dashboard","settings.publicReadOnlyHelp":"\u5141\u8BB8\u65E0 token \u67E5\u770B\u660E\u786E\u5217\u5165\u767D\u540D\u5355\u7684\u53EA\u8BFB\u6570\u636E\uFF1BWorkflow \u8BE6\u60C5\u3001\u539F\u59CB\u65E5\u5FD7\u548C\u6240\u6709\u5199\u64CD\u4F5C\u59CB\u7EC8\u9700\u8981 token\u3002","settings.remoteAccess":"\u8FDC\u7A0B\u8BBF\u95EE\u7EC8\u7AEF","settings.remoteAccessHelp":"\u9ED8\u8BA4\u5173\u95ED\u3002\u4F1A\u8BDD\u7EC8\u7AEF\u3001\u98DE\u4E66\u5361\u7247\u7EC8\u7AEF\u5165\u53E3\u548C webhook \u4F7F\u7528\u4E2D\u5FC3\u5316\u5E73\u53F0\u94FE\u63A5\uFF1B\u5173\u95ED\u5219\u4F7F\u7528\u672C\u5730\u94FE\u63A5\u3002","settings.sectionCards":"\u98DE\u4E66\u5361\u7247","settings.openTerminalInFeishu":"\u6D41\u5F0F\u5361\u7247 Web \u7EC8\u7AEF\u6309\u94AE\u5728\u98DE\u4E66\u4FA7\u680F\u6253\u5F00","settings.openTerminalInFeishuHelp":"\u9ED8\u8BA4\u5173\u95ED\u3002\u5C06 Web Terminal \u94FE\u63A5\u5305\u88C5\u4E3A\u98DE\u4E66\u4FA7\u680F\u6253\u5F00\uFF1B\u5199\u6743\u9650\u4ECD\u7531\u7EC8\u7AEF token \u63A7\u5236\u3002","settings.enableLocalCliOpen":"\u542F\u7528\u672C\u673A CLI \u76F4\u5F00","settings.enableLocalCliOpenHelp":"\u9ED8\u8BA4\u5173\u95ED\uFF0C\u4EC5 daemon \u8FD0\u884C\u5728 macOS \u65F6\u751F\u6548\u3002\u9644\u52A0\u6A21\u5F0F\u652F\u6301\u5F53\u524D tmux / Herdr / ZMX \u4F1A\u8BDD\u5E76\u8FDB\u5165\u540C\u4E00\u4E2A CLI\uFF1BZMX \u672C\u5730 attach \u4F7F\u7528\u539F\u751F\u7EC8\u7AEF\uFF0C\u98DE\u4E66\u4FA7\u4ECD\u4E3A\u7EAF\u6587\u672C\u6D41\u3002resume \u6A21\u5F0F\u4F1A\u53E6\u8D77 CLI resume \u8FDB\u7A0B\uFF0C\u53EF\u80FD\u4F7F\u98DE\u4E66\u4FA7\u4E0D\u518D\u8DDF\u968F\u8BE5\u4F1A\u8BDD\u3002","settings.localCliOpenMode":"\u672C\u673A CLI \u6253\u5F00\u6A21\u5F0F","settings.localCliOpenModeHelp":"\u9ED8\u8BA4\u9644\u52A0\u5F53\u524D\u4F1A\u8BDD\uFF1Amanaged tmux / Herdr / ZMX \u8D70\u7CBE\u786E attach\uFF0Cadopt \u4F1A\u8BDD\u53EA\u5728\u5DF2\u6709\u53EF\u9760\u76EE\u6807\u65F6\u9644\u52A0\uFF1BZMX \u7684\u539F\u751F attach \u4E0D\u4EE3\u8868 botmux \u63D0\u4F9B Web TUI\u3002direct resume \u9002\u5408\u660E\u786E\u63A5\u53D7\u98DE\u4E66\u8FDE\u7EED\u6027\u98CE\u9669\u7684\u672C\u673A\u8C03\u8BD5\u3002","settings.localCliOpenModeAttach":"\u9644\u52A0\u5F53\u524D\u4F1A\u8BDD\uFF08\u63A8\u8350\uFF09","settings.localCliOpenModeResume":"\u53E6\u8D77 CLI resume","settings.sectionExperimental":"\u5B9E\u9A8C\u6027\u914D\u7F6E","settings.sectionHostOverloadAlert":"\u673A\u5668\u8FC7\u8F7D\u544A\u8B66","settings.chatBotDiscovery":"\u7FA4\u5185\u673A\u5668\u4EBA\u53D1\u73B0\uFF08\u98DE\u4E66 /members/bots\uFF09","settings.chatBotDiscoveryHelp":"\u9ED8\u8BA4\u5F00\u542F\u3002\u5B9E\u65F6\u8BFB\u53D6\u7FA4\u5185\u673A\u5668\u4EBA\u6210\u5458\uFF0C\u63D0\u9AD8\u591A bot \u4E92\u76F8 @ \u7684\u51C6\u786E\u6027\u3002\u63A5\u53E3\u4E0D\u53EF\u7528\u65F6\u4F1A\u56DE\u9000\u65E7\u903B\u8F91\uFF1B\u4EC5\u5728\u6210\u5458\u8BC6\u522B\u5F02\u5E38\u65F6\u5173\u95ED\u3002","settings.herdrTraexPlugin":"TraeX herdr \u63D2\u4EF6\u81EA\u52A8\u5B89\u88C5\uFF08opt-in\uFF09","settings.herdrTraexPluginHelp":"\u9ED8\u8BA4\u5173\u95ED\u3002\u9700 herdr \u2265 0.7.0\u3002\u5F00\u542F\u540E\u586B\u5199\u53EF\u4FE1 source \u4E0E\u53EF\u9009 ref\uFF0C\u518D\u70B9\u51FB\u201D\u4FDD\u5B58\u5E76\u5B89\u88C5\u201D\uFF1B\u5B89\u88C5\u6210\u529F\u540E\u6267\u884C action \u5199\u5165 ~/.trae hooks\u3002\u8BF7\u53EA\u4F7F\u7528\u4F60\u4FE1\u4EFB\u7684\u6765\u6E90\uFF0C\u5E76\u4F18\u5148\u9489 commit SHA\u3002","settings.herdrTraexPluginSource":"\u63D2\u4EF6 source","settings.herdrTraexPluginSourcePlaceholder":"owner/repo[/subdir]\uFF08\u4E0D\u63D0\u4F9B\u9ED8\u8BA4\u6E90\uFF09","settings.herdrTraexPluginSourceHelp":"\u4F5C\u4E3A\u72EC\u7ACB argv \u4F20\u7ED9 `herdr plugin install <source>`\uFF1B\u4E0D\u8981\u628A ref \u5199\u6210 #tag\u3002botmux \u4E0D\u9ED8\u8BA4\u6267\u884C\u4EFB\u4F55\u7B2C\u4E09\u65B9\u4ED3\u5E93\u3002","settings.herdrTraexPluginSourceRequired":"\u5DF2\u5F00\u542F\u4F46\u672A\u586B\u5199 plugin source\uFF1B\u4E0D\u4F1A\u5B89\u88C5\u3002","settings.herdrTraexPluginRef":"\u63D2\u4EF6 ref\uFF08\u53EF\u9009\uFF09","settings.herdrTraexPluginRefPlaceholder":"\u5EFA\u8BAE\u586B\u5199\u5DF2\u5BA1\u6838\u7684 commit SHA","settings.herdrTraexPluginRefHelp":"\u4F5C\u4E3A `--ref <ref>` \u72EC\u7ACB\u53C2\u6570\u4F20\u7ED9 herdr\uFF1B\u53EF\u586B tag\u3001branch \u6216 commit SHA\uFF0C\u63A8\u8350\u9489 SHA \u9632\u6B62\u6765\u6E90\u6F02\u79FB\u3002","settings.herdrTraexPluginSave":"\u4FDD\u5B58\u5E76\u5B89\u88C5","settings.herdrTraexPluginRecommended":"\u4F5C\u8005\u63A8\u8350\u6765\u6E90\uFF08\u7B2C\u4E09\u65B9\uFF0C\u8BF7\u81EA\u884C\u786E\u8BA4\u4FE1\u4EFB\u540E\u4F7F\u7528\uFF09\uFF1A","settings.herdrTraexInstalled":"\u2713 TraeX herdr \u63D2\u4EF6\u5DF2\u5B89\u88C5\u5E76\u5199\u5165 ~/.trae hooks","settings.herdrTraexAlreadyInstalled":"\u2713 TraeX herdr \u63D2\u4EF6\u5DF2\u5B89\u88C5\uFF08\u8DF3\u8FC7\u91CD\u590D\u5B89\u88C5\uFF09","settings.herdrTraexInstallFailed":"TraeX herdr \u63D2\u4EF6\u5B89\u88C5\u5931\u8D25","settings.herdrTraexInstallStepInstall":"\u5B89\u88C5","settings.herdrTraexInstallStepAction":"\u5199\u5165 hooks","settings.herdrTraexUnsupported":"\u5F53\u524D herdr \u4E0D\u652F\u6301\u63D2\u4EF6\uFF1B\u9700 \u2265 0.7.0\uFF0C\u8BF7\u5148\u8FD0\u884C herdr update","settings.codexRpcInput":"Codex \u5BB6\u65CF RPC \u8F93\u5165\u6A21\u5F0F","settings.codexRpcInputHelp":"\u5B9E\u9A8C\u6027\uFF0C\u9ED8\u8BA4\u5173\u95ED\u3002\u5BF9 codex / traex \u673A\u5668\u4EBA\uFF08\u4EC5 tmux \u540E\u7AEF\uFF09\uFF0C\u7528\u6237\u6D88\u606F\u7ECF app-server JSON-RPC \u901A\u9053\u6CE8\u5165\uFF0C\u7ED5\u5F00 codex \u7EC8\u7AEF\u7C98\u8D34\u4E22\u6D88\u606F\u7684\u95EE\u9898\uFF08pane \u4ECD\u8DD1\u771F\u5B9E --remote TUI \u6E32\u67D3\uFF09\u3002sandbox/\u9694\u79BB/\u5BA1\u6279\u95E8\u63A7/wrapper/\u5E26\u542F\u52A8\u547D\u4EE4\u7684\u4F1A\u8BDD\u81EA\u52A8\u56DE\u9000\u4F20\u7EDF\u7C98\u8D34\u3002","settings.bypassCodexHookTrust":"\u81EA\u52A8\u4FE1\u4EFB Codex Hook","settings.bypassCodexHookTrustHelp":"\u9ED8\u8BA4\u5F00\u542F\u3002Codex 0.14x \u4F1A\u5F39\u4EA4\u4E92\u5F0F hook \u4FE1\u4EFB\u95E8\uFF08Press t to trust\uFF09\uFF1Bbotmux \u6BCF\u6B21\u5347\u7EA7\u91CD\u5199\u81EA\u88C5 hook \u4F1A\u8BA9 hash \u53D8\u5316\u3001\u95E8\u91CD\u65B0\u5F39\u51FA\uFF0C\u6258\u7BA1\u4F1A\u8BDD\u6CA1\u4EBA\u80FD\u6309 t \u2192 \u9996\u6761\u6D88\u606F\u5361\u6B7B\u3002\u5F00\u542F\u540E\u5BF9 codex / traex \u666E\u901A TUI \u4F20 --dangerously-bypass-hook-trust\u3002\u6CE8\u610F\uFF1A\u8BE5 flag \u4FE1\u4EFB codex \u89C1\u5230\u7684\u6240\u6709 hook \u6765\u6E90\uFF08\u542B\u9879\u76EE .codex/hooks.json \u4E0E\u5DF2\u542F\u7528\u63D2\u4EF6\uFF09\uFF0C\u4E0D\u53EA botmux \u81EA\u88C5\u7684\uFF1B\u4E0D\u60F3\u81EA\u52A8\u4FE1\u4EFB\u7B2C\u4E09\u65B9\u9879\u76EE/\u63D2\u4EF6 hook \u53EF\u5173\u95ED\u3002\u53D7\u9650\u673A\u5668\u4EBA\uFF08\u5173\u7ED5\u8FC7\uFF09\u59CB\u7EC8\u4E0D\u53D7\u5F71\u54CD\u3002\u4E0B\u6B21\u4F1A\u8BDD\u751F\u6548\uFF0C\u4E0D\u5F71\u54CD\u5DF2\u5B58\u6D3B\u7684 pane\u3002","settings.codexNotifier":"Codex \u4EFB\u52A1\u5B8C\u6210\u901A\u77E5","settings.codexNotifierHelp":"\u5B9E\u9A8C\u6027\uFF0C\u9ED8\u8BA4\u5173\u95ED\u3002\u72EC\u7ACB Codex App/CLI \u4EFB\u52A1\u5B8C\u6210\u540E\uFF0C\u7531\u6240\u9009 Bot \u5411\u5176\u9996\u4F4D\u53EF\u6295\u9012\u7BA1\u7406\u5458\u53D1\u9001\u98DE\u4E66\u79C1\u804A\uFF1B\u652F\u6301\u4ECE\u5B8C\u6210\u5361\u7EE7\u7EED\u5904\u7406\uFF0C\u6216\u8BF7\u6C42\u672C\u673A\u6253\u5F00\u539F Codex App \u4F1A\u8BDD\u3002","settings.codexNotifierEnablePending":"\u5B8C\u6210\u4E0B\u9762\u7684\u914D\u7F6E\u540E\u5C06\u81EA\u52A8\u5F00\u542F\u901A\u77E5\u3002","settings.codexNotifierTarget":"\u901A\u77E5 Bot","settings.codexNotifierTargetHelp":"\u9009\u62E9\u7528\u4E8E\u53D1\u9001\u79C1\u804A\u5B8C\u6210\u5361\u5E76\u63A5\u7BA1\u540E\u7EED\u4F1A\u8BDD\u7684 Codex / Codex App Bot\u3002","settings.codexNotifierTargetPlaceholder":"\u8BF7\u5148\u9009\u62E9\u901A\u77E5 Bot","settings.codexNotifierRecipient":"\u63A5\u6536\u4EBA\uFF1A{recipient}\uFF08\u8BE5 Bot \u7684\u9996\u4F4D\u7BA1\u7406\u5458\uFF09","settings.codexNotifierRecipientMissing":"\u6240\u9009 Bot \u672A\u914D\u7F6E\u7BA1\u7406\u5458\uFF0C\u4E0D\u80FD\u53D1\u9001\u79C1\u804A\u5B8C\u6210\u6D88\u606F\u3002","settings.codexNotifierRecipientUnverified":"\u76EE\u6807 Bot \u5C1A\u672A\u628A\u9996\u4F4D\u53EF\u6295\u9012\u7BA1\u7406\u5458\u89E3\u6790\u4E3A\u98DE\u4E66 open_id\uFF0C\u8BF7\u68C0\u67E5\u7BA1\u7406\u5458\u914D\u7F6E\u6216\u7B49\u5F85 Bot \u5B8C\u6210\u542F\u52A8\u3002","settings.codexNotifierNotifyWhen":"\u901A\u77E5\u65F6\u673A","settings.codexNotifierNotifyWhenHelp":"\u201C\u4EC5\u9501\u5C4F\u65F6\u201D\u53EA\u5728\u5F53\u524D Mac \u5904\u4E8E\u9501\u5C4F\u72B6\u6001\u65F6\u53D1\u9001\u98DE\u4E66\u6D88\u606F\uFF1B\u201C\u59CB\u7EC8\u901A\u77E5\u201D\u4F1A\u5728\u6BCF\u6B21\u4EFB\u52A1\u5B8C\u6210\u540E\u53D1\u9001\u98DE\u4E66\u6D88\u606F\u3002","settings.codexNotifierLockedOnly":"\u4EC5\u9501\u5C4F\u65F6\uFF08\u63A8\u8350\uFF09","settings.codexNotifierAlways":"\u59CB\u7EC8\u901A\u77E5","settings.codexNotifierTargetRequired":"\u8BF7\u5148\u9009\u62E9\u901A\u77E5 Bot\uFF0C\u518D\u5F00\u542F\u6B64\u80FD\u529B\u3002","settings.codexNotifierTargetOffline":"\u76EE\u6807 Bot \u5F53\u524D\u4E0D\u5728\u7EBF\uFF0C\u6062\u590D\u540E\u624D\u80FD\u5F00\u542F\u901A\u77E5\u3002","settings.codexNotifierUnsupported":"\u5F53\u524D\u7CFB\u7EDF\u4E0D\u652F\u6301\u53EF\u9760\u7684\u9501\u5C4F\u63A2\u6D4B\uFF1B\u53EF\u9009\u62E9\u201C\u59CB\u7EC8\u901A\u77E5\u201D\u3002","settings.codexNotifierHookPending":"Hook \u5C1A\u672A\u5C31\u7EEA\uFF0C\u8BF7\u4FDD\u5B58\u6216\u91CD\u542F BotMux \u540E\u91CD\u8BD5\u3002","settings.codexNotifierDaemonOffline":"\u76EE\u6807 Bot \u5F53\u524D\u4E0D\u5728\u7EBF\uFF1B\u4E8B\u4EF6\u4F1A\u4FDD\u7559\u5728\u672C\u5730\uFF0CBot \u6062\u590D\u540E\u91CD\u8BD5\u3002","settings.codexNotifierPending":"\u5F53\u524D\u6709 {count} \u6761\u5B8C\u6210\u6D88\u606F\u7B49\u5F85\u6295\u9012\u3002","settings.codexNotifierWorkerPending":"Hook \u5DF2\u5B89\u88C5\uFF0C\u4F46\u901A\u77E5 worker \u5C1A\u672A\u8FD0\u884C\u6216\u5FC3\u8DF3\u5DF2\u8FC7\u671F\u3002","settings.codexNotifierLastError":"\u6700\u8FD1\u4E00\u6B21\u6295\u9012\u5931\u8D25\uFF1A{error}","settings.hostOverloadAlert":"\u542F\u7528\u8FC7\u8F7D\u544A\u8B66","settings.hostOverloadAlertHelp":"\u5F00\u542F\u540E\uFF0C\u6240\u9009\u300C\u901A\u77E5 Bot\u300D\u7684 daemon \u4F1A\u6BCF 30 \u79D2\u68C0\u67E5\u6574\u673A\u8D1F\u8F7D/\u5185\u5B58\uFF0C\u8D8A\u8FC7\u8FC7\u8F7D\u7EBF\u65F6\u7ED9\u8BE5 Bot \u7684\u7BA1\u7406\u5458\u53D1\u4E00\u6761\u98DE\u4E66\u79C1\u4FE1\u63D0\u9192\u3001\u6062\u590D\u540E\u518D\u53D1\u4E00\u6761\u3002\u673A\u5668\u8FC7\u8F7D\u4F1A\u5BFC\u81F4\u4F1A\u8BDD\u51B7\u542F\u52A8\u8D85\u65F6\u5047\u6B7B\uFF0C\u8FD9\u4E2A\u63D0\u9192\u80FD\u8BA9\u4F60\u53CA\u65F6\u6E05\u7406\u4F1A\u8BDD\u6216\u8C03\u4F4E\u5E38\u9A7B\u4E0A\u9650\u3002\u6574\u673A\u53EA\u9700\u4E00\u4E2A\u901A\u77E5 Bot\uFF1B\u9ED8\u8BA4\u5173\u95ED\u3002","settings.hostOverloadAlertTarget":"\u901A\u77E5 Bot","settings.hostOverloadAlertTargetHelp":"\u9009\u62E9\u7528\u4E8E\u53D1\u9001\u8FC7\u8F7D\u544A\u8B66\u79C1\u4FE1\u7684 Bot\uFF08\u4EFB\u610F\u80FD\u53D1\u98DE\u4E66\u6D88\u606F\u3001\u4E14\u80FD\u89E3\u6790\u5230\u7BA1\u7406\u5458\u7684\u975E apiOnly Bot \u5747\u53EF\uFF09\u3002\u8BE5 Bot \u81EA\u5DF1\u7684 daemon \u8D1F\u8D23\u91C7\u6837\u4E0E\u53D1\u9001\u3002","settings.hostOverloadAlertTargetPlaceholder":"\u8BF7\u5148\u9009\u62E9\u901A\u77E5 Bot","settings.hostOverloadAlertRecipient":"\u63A5\u6536\u4EBA\uFF1A{recipient}\uFF08\u8BE5 Bot \u7684\u9996\u4F4D\u7BA1\u7406\u5458\uFF09","settings.hostOverloadAlertRecipientMissing":"\u6240\u9009 Bot \u672A\u914D\u7F6E\u7BA1\u7406\u5458\uFF0C\u4E0D\u80FD\u53D1\u9001\u8FC7\u8F7D\u544A\u8B66\u79C1\u4FE1\u3002","settings.hostOverloadAlertRecipientUnverified":"\u76EE\u6807 Bot \u5C1A\u672A\u628A\u9996\u4F4D\u7BA1\u7406\u5458\u89E3\u6790\u4E3A\u98DE\u4E66 open_id\uFF0C\u8BF7\u68C0\u67E5\u7BA1\u7406\u5458\u914D\u7F6E\u6216\u7B49\u5F85 Bot \u542F\u52A8\u5B8C\u6210\u3002","settings.hostOverloadAlertTargetRequired":"\u8BF7\u5148\u9009\u62E9\u4E00\u4E2A\u901A\u77E5 Bot \u518D\u5F00\u542F\u3002","settings.hostOverloadAlertTargetOffline":"\u76EE\u6807 Bot \u7684 daemon \u5F53\u524D\u4E0D\u5728\u7EBF\uFF0C\u8FC7\u8F7D\u544A\u8B66\u65E0\u6CD5\u6295\u9012\u3002","settings.hostOverloadAlertEnterLoad":"\u8D1F\u8F7D\u8FDB\u5165\u9608\u503C\uFF08load15 / \u6838\u6570\uFF09","settings.hostOverloadAlertEnterLoadHelp":"\u5F53 15 \u5206\u949F\u5E73\u5747\u8D1F\u8F7D > \u903B\u8F91\u6838\u6570 \xD7 \u6B64\u503C\u65F6\u5224\u5B9A\u4E3A\u8FC7\u8F7D\u3002\u9ED8\u8BA4 1.5\u3002\u6062\u590D\u7EBF\u56FA\u5B9A\u4E3A\u5185\u7F6E\u9ED8\u8BA4\uFF08\u6838\u6570 \xD7 1.0\uFF09\uFF1B\u82E5\u4F60\u628A\u8FDB\u5165\u7EBF\u8BBE\u5F97\u6BD4\u5B83\u8FD8\u4F4E\uFF0C\u6062\u590D\u7EBF\u4F1A\u81EA\u52A8\u538B\u5230\u8FDB\u5165\u7EBF\u7684 95%\uFF0C\u4EE5\u4FDD\u8BC1\u300C\u4F4E\u4E8E\u8FDB\u5165\u7EBF\u624D\u7B97\u6062\u590D\u300D\u4E0D\u6296\u52A8\u3002","settings.hostOverloadAlertEnterMem":"\u5185\u5B58\u8FDB\u5165\u9608\u503C\uFF08%\uFF09","settings.hostOverloadAlertEnterMemHelp":"\u5F53\u5DF2\u7528\u5185\u5B58\u5360\u6BD4 \u2265 \u6B64\u767E\u5206\u6BD4\u65F6\u5224\u5B9A\u4E3A\u8FC7\u8F7D\u3002\u9ED8\u8BA4 92\u3002\u6062\u590D\u7EBF\u56FA\u5B9A\u4E3A\u5185\u7F6E\u9ED8\u8BA4\uFF0885%\uFF09\uFF1B\u540C\u6837\u5728\u4F60\u628A\u8FDB\u5165\u7EBF\u8BBE\u5F97\u66F4\u4F4E\u65F6,\u81EA\u52A8\u538B\u5230\u8FDB\u5165\u7EBF\u7684 95%\u3002","settings.noVisibleOutputHint":"\u201C\u65E0\u53EF\u89C1\u8F93\u51FA\u201D\u9632\u91CD\u53D1\u63D0\u793A","settings.noVisibleOutputHintHelp":"\u5B9E\u9A8C\u6027\uFF0C\u9ED8\u8BA4\u5173\u95ED\u3002\u5728 botmux \u8DEF\u7531\u63D0\u793A\u91CC\u52A0\u4E00\u6BB5\u7EA0\u504F\uFF1A\u544A\u8BC9\u6A21\u578B botmux send \u6210\u529F\u5373\u5DF2\u9001\u8FBE\u3001\u672C\u8F6E\u65E0\u53EF\u89C1\u6587\u672C\u5730\u7ED3\u675F\u662F\u6B63\u5E38\u7684\u3001\u770B\u5230\u300C\u65E0\u53EF\u89C1\u8F93\u51FA\u8BF7\u7EE7\u7EED\u300D\u662F\u5E95\u5C42 CLI\uFF08Claude Code \u22652.1.212\uFF09\u7684\u8BEF\u5224\u4E0D\u8981\u91CD\u53D1\u3002\u4E3B\u8981\u7528\u4E8E Claude Code \u9A71\u52A8\u975E Claude \u540E\u7AEF\u6A21\u578B\u65F6\uFF08\u6613\u628A thinking-only nudge \u8BEF\u8BFB\u4E3A\u53D1\u9001\u5931\u8D25\u800C\u91CD\u590D\u56DE\u590D\uFF09\uFF1B\u5BF9\u7EAF Claude \u573A\u666F\u65E0\u5BB3\u4F46\u901A\u5E38\u65E0\u9700\u5F00\u542F\u3002\u5F00\u5173\u7FFB\u52A8\u4E0B\u4E00\u4E2A\u4F1A\u8BDD\u5373\u751F\u6548\uFF0C\u65E0\u9700\u91CD\u542F\u3002","settings.sectionVcMeetingAgent":"\u4F1A\u8BAE\u76D1\u542C","settings.vcMeetingAgent":"\u5141\u8BB8\u672C\u673A\u4F7F\u7528\u4F1A\u8BAE\u76D1\u542C\u80FD\u529B","settings.vcMeetingAgentHelp":"\u9ED8\u8BA4\u5F00\u542F\u3002\u63A7\u5236\u672C\u673A bot \u662F\u5426\u63A5\u6536\u65B0\u7684\u4F1A\u8BAE\u76D1\u542C\u4E8B\u4EF6\u3002\u5173\u95ED\u540E\u4E0D\u518D\u6062\u590D\u76D1\u542C\uFF1B\u5DF2\u8FDB\u884C\u4E2D\u7684\u4F1A\u8BAE\u901A\u5E38\u81EA\u7136\u7ED3\u675F\u3002","settings.vcMeetingListenerBot":"\u4F1A\u8BAE\u4E8B\u4EF6\u63A5\u6536 Bot","settings.vcMeetingListenerBotAuto":"\u6309 bot \u81EA\u8EAB\u914D\u7F6E","settings.vcMeetingListenerBotHelp":"\u6307\u5B9A\u63A5\u6536\u4F1A\u8BAE\u4E8B\u4EF6\u7684 Bot\u3002\u4FDD\u5B58\u65F6\u6821\u9A8C lark-cli profile \u4E0E\u4F1A\u8BAE\u6743\u9650\uFF0C\u6821\u9A8C\u901A\u8FC7\u540E\u542F\u7528\u76D1\u542C\u3002","settings.vcMeetingListenerBotDisabled":"\u4FDD\u5B58\u540E\u81EA\u52A8\u542F\u7528","settings.vcMeetingListenerBotNoProfile":"\u9700\u5148\u914D\u7F6E profile","settings.larkCliReady":"lark-cli {version} \xB7 \u7248\u672C\u7B26\u5408\u8981\u6C42","settings.larkCliOutdated":"lark-cli {version} \u7248\u672C\u8FC7\u4F4E\uFF0CVC bot \u5165\u4F1A\u9700\u8981 \u2265 {minimum}","settings.larkCliMissing":"\u672A\u68C0\u6D4B\u5230 lark-cli\uFF0CVC bot \u5165\u4F1A\u524D\u9700\u5B89\u88C5","settings.feishuLoginRequired":"\u9700\u8981\u98DE\u4E66\u5F00\u653E\u5E73\u53F0\u767B\u5F55\u624D\u80FD\u81EA\u52A8\u914D\u7F6E VC \u6743\u9650\uFF0C\u8BF7\u626B\u7801\u3002","settings.feishuLoginQrAlt":"\u98DE\u4E66\u5F00\u653E\u5E73\u53F0\u767B\u5F55\u4E8C\u7EF4\u7801","settings.feishuLoginClose":"\u5173\u95ED\u767B\u5F55\u4E8C\u7EF4\u7801","settings.vcProfiles.title":"\u4F1A\u8BAE\u89D2\u8272\u9884\u8BBE","settings.vcProfiles.help":"\u4E3A\u4F1A\u8BAE agent \u5B9A\u4E49\u53EF\u590D\u7528\u7684\u89D2\u8272\uFF1A\u804C\u8D23\u8BF4\u660E\u3001\u4E8B\u4EF6\u8FC7\u6EE4\u3001\u8F93\u51FA\u65B9\u5F0F\u4E0E\u6743\u9650\u6A21\u677F\u3002\u5DF2\u6FC0\u6D3B\u6210\u5458\u6CBF\u7528\u6FC0\u6D3B\u65F6\u51BB\u7ED3\u7684\u7248\u672C\uFF1B\u79FB\u9664\u540E\u91CD\u65B0\u52A0\u5165\u624D\u53D6\u65B0\u7248\u3002","settings.vcProfiles.listenerOwner":"\u914D\u7F6E\u6240\u5C5E Listener","settings.vcProfiles.configuringBot":"\u6B63\u5728\u914D\u7F6E\uFF1A{bot}","settings.vcProfiles.migrationOffer":"\u68C0\u6D4B\u5230\u65E7\u7248\u751F\u6210\u7684\u4F1A\u8BAE\u7EAA\u8981\u9884\u8BBE\u3002\u53EF\u5347\u7EA7\u4E3A\u5168\u80FD\u529B\u9ED8\u8BA4\u89D2\u8272\uFF1A\u76D1\u542C\u7FA4\u56DE\u590D\u53EF\u76F4\u63A5\u53D1\u9001\uFF1B\u4F1A\u4E2D\u6587\u5B57\u548C\u8BED\u97F3\u5FC5\u987B\u7ECF\u8FC7\u53D7\u7BA1\u8F93\u51FA\u95F8\u95E8\uFF0C\u6587\u672C\u9ED8\u8BA4\u5BA1\u6279\uFF0C\u8BED\u97F3\u8FD8\u9700 Listener \u8BED\u97F3\u8BBE\u65BD\u5DF2\u542F\u7528\u3002","settings.vcProfiles.migrationEnable":"\u5347\u7EA7\u5E76\u542F\u7528\u5168\u80FD\u529B\u9ED8\u8BA4\u7EAA\u8981\uFF08\u4FDD\u5B58\u540E\u751F\u6548\uFF09","settings.vcProfiles.noEligibleDefaultAgent":"\u6682\u65F6\u65E0\u6CD5\u751F\u6210\u9ED8\u8BA4\u89D2\u8272\uFF1A\u8BF7\u81F3\u5C11\u4E3A\u4E00\u4E2A\u652F\u6301\u53EF\u9760\u56DE\u6267\u7684\u89D2\u8272\u6267\u884C Bot \u914D\u7F6E\u9ED8\u8BA4\u5DE5\u4F5C\u76EE\u5F55\u3002","settings.vcProfiles.legacyCatalog":"\u68C0\u6D4B\u5230\u65E7\u7248\u6216\u672A\u5B8C\u6210\u7684\u4F1A\u8BAE Agent \u914D\u7F6E\uFF1B\u4FDD\u5B58\u89D2\u8272\u9884\u8BBE\u540E\u5C06\u5207\u6362\u5230\u591A\u89D2\u8272\u6A21\u5F0F\u3002","settings.vcProfiles.templates.title":"\u89D2\u8272\u6A21\u677F\u5E93","settings.vcProfiles.templates.builtinBadge":"\u5185\u7F6E","settings.vcProfiles.templates.help":"\u4ECE\u6A21\u677F\u5F00\u59CB\uFF0C\u518D\u6309\u4F60\u7684\u573A\u666F\u4FEE\u6539 Agent\u3001\u804C\u8D23\u3001\u8FC7\u6EE4\u548C\u8F93\u51FA\u65B9\u5F0F\u3002\u5E94\u7528\u6A21\u677F\u53EA\u4F1A\u521B\u5EFA\u4E00\u4EFD\u53EF\u7F16\u8F91\u526F\u672C\uFF0C\u4E0D\u4F1A\u4E0E\u6A21\u677F\u6301\u7EED\u7ED1\u5B9A\u3002","settings.vcProfiles.templates.use":"\u4F7F\u7528\u6B64\u6A21\u677F","settings.vcProfiles.list.title":"\u6211\u7684\u9884\u8BBE","settings.vcProfiles.list.help":"\u4F60\u7EF4\u62A4\u7684\u4F1A\u8BAE\u89D2\u8272\u3002\u70B9\u51FB\u5361\u7247\u67E5\u770B\u548C\u7F16\u8F91\u8BE6\u60C5\uFF1B\u52FE\u9009\u9ED8\u8BA4\u540E\uFF0C\u672A\u64CD\u4F5C\u98DE\u4E66\u9009\u62E9\u5361\u65F6\u4F1A\u81EA\u52A8\u542F\u7528\u3002","settings.vcProfiles.list.empty":"\u8FD8\u6CA1\u6709\u89D2\u8272\u9884\u8BBE\u3002\u53EF\u4EE5\u65B0\u5EFA\u7A7A\u767D\u9884\u8BBE\uFF0C\u6216\u4ECE\u4E0B\u65B9\u5B98\u65B9\u6A21\u677F\u5F00\u59CB\u3002","settings.vcProfiles.setDefault":"\u8BBE\u4E3A\u9ED8\u8BA4","settings.vcProfiles.viewDetails":"\u67E5\u770B\u8BE6\u60C5","settings.vcProfiles.newBadge":"\u672A\u4FDD\u5B58","settings.vcProfiles.untitled":"\u672A\u547D\u540D\u9884\u8BBE","settings.vcProfiles.noInstructions":"\u5C1A\u672A\u586B\u5199\u804C\u8D23\u8BF4\u660E","settings.vcProfiles.close":"\u5173\u95ED","settings.vcProfiles.done":"\u5B8C\u6210\u7F16\u8F91","settings.vcProfiles.needAuth":"\u4F1A\u8BAE\u89D2\u8272\u9884\u8BBE\u9700\u8981\u6388\u6743\u8BBF\u95EE\u540E\u7F16\u8F91\u3002","settings.vcProfiles.discardConfirm":"\u6709\u672A\u4FDD\u5B58\u7684\u4FEE\u6539\uFF0C\u5207\u6362\u540E\u5C06\u4E22\u5F03\u3002\u786E\u8BA4\u5207\u6362\uFF1F","settings.vcProfiles.loading":"\u52A0\u8F7D\u4E2D\u2026","settings.vcProfiles.loadFailed":"\u52A0\u8F7D\u5931\u8D25","settings.vcProfiles.botNotInConfig":"\u8BE5 bot \u4E0D\u5728 bots.json \u914D\u7F6E\u4E2D","settings.vcProfiles.conflict":"\u914D\u7F6E\u5DF2\u88AB\u5176\u5B83\u7AEF\u4FEE\u6539\uFF1B\u8BF7\u5237\u65B0\u540E\u91CD\u65B0\u7F16\u8F91\uFF0C\u907F\u514D\u8986\u76D6\u4ED6\u4EBA\u6539\u52A8\u3002","settings.vcProfiles.reload":"\u5237\u65B0","settings.vcProfiles.validationFailed":"\u6821\u9A8C\u672A\u901A\u8FC7\uFF0C\u8BF7\u68C0\u67E5\u5404\u5B57\u6BB5","settings.vcProfiles.freezeNotice":"\u4FEE\u6539\u9884\u8BBE\u4E0D\u5F71\u54CD\u8FD0\u884C\u4E2D\u7684\u4F1A\u8BAE\uFF1A\u89D2\u8272\u52A0\u5165\u4F1A\u8BAE\u65F6\u51BB\u7ED3\u5F53\u65F6\u7248\u672C\uFF0C\u79FB\u9664\u540E\u91CD\u65B0\u52A0\u5165\u624D\u4F7F\u7528\u65B0\u7248\uFF08\u4ECE\u5F53\u524D\u65F6\u523B\u5F00\u59CB\uFF0C\u4E0D\u56DE\u653E\u5386\u53F2\uFF09\u3002","settings.vcProfiles.fieldId":"ID\uFF08\u4FDD\u5B58\u540E\u4E0D\u53EF\u6539\uFF09","settings.vcProfiles.idHelp":`\u7A33\u5B9A\u7684\u673A\u5668\u6807\u8BC6\uFF0C\u8FD0\u884C\u4E2D\u7684\u5F15\u7528\u4E0E\u6062\u590D\u8BB0\u5F55\u90FD\u4F9D\u8D56\u5B83\uFF0C\u4FDD\u5B58\u540E\u4E0D\u53EF\u4FEE\u6539\u3002
8
8
  1\u201364 \u5B57\u7B26\uFF0C\u4EE5\u5B57\u6BCD\u6216\u6570\u5B57\u5F00\u5934\uFF0C\u53EF\u542B\u5B57\u6BCD\u3001\u6570\u5B57\u3001. _ -\uFF0C\u4F8B\u5982 minutes\u3001risk-watch\u3002`,"settings.vcProfiles.idInvalid":"\u9700\u4EE5\u5B57\u6BCD\u6216\u6570\u5B57\u5F00\u5934\uFF0C\u53EF\u542B\u5B57\u6BCD\u3001\u6570\u5B57\u3001. _ -\uFF0C\u6700\u957F 64 \u5B57\u7B26","settings.vcProfiles.fieldLabel":"\u540D\u79F0","settings.vcProfiles.labelHelp":"\u4EC5\u7528\u4E8E\u5C55\u793A\u7684\u540D\u79F0\uFF0C\u53EF\u968F\u65F6\u4FEE\u6539\uFF0C\u4F8B\u5982\u300C\u4F1A\u8BAE\u7EAA\u8981\u5458\u300D\u3002","settings.vcProfiles.fieldAgent":"\u89D2\u8272\u6267\u884C Bot","settings.vcProfiles.agentHelp":`\u6307\u5B9A\u7531\u54EA\u4E2A Bot \u6267\u884C\u8BE5\u89D2\u8272\u3002
9
9
  \u544A\u8B66\u542B\u4E49\u2014\u2014\u79BB\u7EBF\uFF1A\u8BE5 Bot \u5F53\u524D\u6CA1\u6709\u5728\u7EBF daemon\uFF1B\u672A\u8BBE\u9ED8\u8BA4\u76EE\u5F55\uFF1A\u521B\u5EFA\u4F1A\u8BAE\u4F1A\u8BDD\u65F6\u53EF\u80FD\u6CA1\u6709\u5408\u9002\u7684\u5DE5\u4F5C\u76EE\u5F55\uFF1B\u4E0D\u652F\u6301\u53EF\u9760\u56DE\u6267\uFF1A\u80FD\u8FD0\u884C\uFF0C\u4F46\u5F02\u5E38\u6062\u590D\u65F6\u4F1A\u4FDD\u5B88\u91CD\u653E\u3002
10
- \u540C\u4E00\u573A\u4F1A\u8BAE\u4E2D\uFF0C\u4E00\u4E2A\u89D2\u8272\u6267\u884C Bot \u6700\u591A\u627F\u62C5\u4E00\u4E2A\u89D2\u8272\u3002`,"settings.vcProfiles.agentOffline":"\u79BB\u7EBF","settings.vcProfiles.agentNoWorkingDir":"\u672A\u8BBE\u9ED8\u8BA4\u76EE\u5F55","settings.vcProfiles.agentNoReliableTerminal":"CLI \u4E0D\u652F\u6301\u53EF\u9760\u56DE\u6267","settings.vcProfiles.agentNoManagedIsolation":"\u672A\u542F\u7528\u5B89\u5168\u6267\u884C\u9694\u79BB","settings.vcProfiles.fieldResponseMode":"\u8F93\u51FA\u65B9\u5F0F","settings.vcProfiles.responseModeHelp":`\u9759\u9ED8\uFF1A\u540E\u53F0\u5206\u6790\uFF0C\u4E0D\u81EA\u52A8\u5728\u76D1\u542C\u7FA4\u56DE\u5E16\uFF1B\u82E5\u6743\u9650\u6A21\u677F\u5141\u8BB8\uFF0C\u4ECD\u53EF\u7533\u8BF7\u4F1A\u4E2D\u53D1\u8A00\uFF0C\u7528\u6237\u663E\u5F0F\u63D0\u95EE\u65F6\u4E5F\u4F1A\u56DE\u590D\u3002
10
+ \u540C\u4E00\u573A\u4F1A\u8BAE\u4E2D\uFF0C\u4E00\u4E2A\u89D2\u8272\u6267\u884C Bot \u6700\u591A\u627F\u62C5\u4E00\u4E2A\u89D2\u8272\u3002`,"settings.vcProfiles.agentOffline":"\u79BB\u7EBF","settings.vcProfiles.agentNoWorkingDir":"\u672A\u8BBE\u9ED8\u8BA4\u76EE\u5F55","settings.vcProfiles.agentNoReliableTerminal":"CLI \u4E0D\u652F\u6301\u53EF\u9760\u56DE\u6267","settings.vcProfiles.agentNoManagedIsolation":"\u5DF2\u5F00\u6C99\u76D2\u4F46\u5F53\u524D\u5E73\u53F0/\u540E\u7AEF\u65E0\u6CD5\u63D0\u4F9B\u9694\u79BB","settings.vcProfiles.agentUnsandboxedRisk":"\u672A\u5F00\u6C99\u76D2\uFF1A\u4F1A\u8BAE\u4E3A\u4E0D\u53EF\u4FE1\u8F93\u5165\uFF0Cbot \u51ED\u8BC1\u66B4\u9732\uFF08\u53EF\u5728 Bot \u8BBE\u7F6E\u5F00\u542F\u6C99\u76D2\u9694\u79BB\uFF09","settings.vcProfiles.fieldResponseMode":"\u8F93\u51FA\u65B9\u5F0F","settings.vcProfiles.responseModeHelp":`\u9759\u9ED8\uFF1A\u540E\u53F0\u5206\u6790\uFF0C\u4E0D\u81EA\u52A8\u5728\u76D1\u542C\u7FA4\u56DE\u5E16\uFF1B\u82E5\u6743\u9650\u6A21\u677F\u5141\u8BB8\uFF0C\u4ECD\u53EF\u7533\u8BF7\u4F1A\u4E2D\u53D1\u8A00\uFF0C\u7528\u6237\u663E\u5F0F\u63D0\u95EE\u65F6\u4E5F\u4F1A\u56DE\u590D\u3002
11
11
  \u56DE\u590D\u76D1\u542C\u7FA4\uFF1A\u628A\u5206\u6790\u7ED3\u679C\u81EA\u52A8\u53D1\u5230\u4F1A\u8BAE\u76D1\u542C\u8BDD\u9898\uFF1B\u540C\u4E00\u573A\u4F1A\u8BAE\u6700\u591A\u4E00\u4E2A\u89D2\u8272\u81EA\u52A8\u56DE\u5E16\uFF0C\u907F\u514D\u5237\u5C4F\u3002`,"settings.vcProfiles.responseSilent":"\u9759\u9ED8\uFF08\u4E0D\u81EA\u52A8\u56DE\u5E16\uFF09","settings.vcProfiles.responseListener":"\u56DE\u590D\u76D1\u542C\u7FA4","settings.vcProfiles.fieldListenerPlacement":"\u7FA4\u5185\u5448\u73B0","settings.vcProfiles.listenerPlacementHelp":"\u4EC5\u63A7\u5236\u81EA\u52A8\u8F93\u51FA\u5728\u76D1\u542C\u7FA4\u4E2D\u7684\u627F\u8F7D\u5F62\u5F0F\uFF0C\u4E0D\u6539\u53D8\u9759\u9ED8/\u81EA\u52A8\u8F93\u51FA\u6743\u9650\u3002\u8DDF\u968F\u7FA4\u804A\u6A21\u5F0F\u4FDD\u6301\u5386\u53F2\u884C\u4E3A\uFF1B\u76F4\u63A5\u53D1\u7FA4\u6D88\u606F\u59CB\u7EC8\u53D1\u9001\u5230\u7FA4\u9876\u5C42\uFF1B\u805A\u5408\u5230\u4F1A\u8BAE\u8BDD\u9898\u65F6\uFF0C\u9996\u6761\u8F93\u51FA\u6210\u4E3A\u8BDD\u9898\u6839\uFF0C\u540E\u7EED\u8F93\u51FA\u6301\u7EED\u56DE\u590D\u540C\u4E00\u8BDD\u9898\u3002","settings.vcProfiles.listenerPlacement.auto":"\u8DDF\u968F\u7FA4\u804A\u6A21\u5F0F","settings.vcProfiles.listenerPlacement.chat":"\u76F4\u63A5\u53D1\u7FA4\u6D88\u606F","settings.vcProfiles.listenerPlacement.topic":"\u805A\u5408\u5230\u4F1A\u8BAE\u8BDD\u9898","settings.vcProfiles.fieldPreset":"\u6743\u9650\u6A21\u677F","settings.vcProfiles.presetHelp":`\u53EA\u5206\u6790\uFF1A\u53EA\u8BFB\u4F1A\u8BAE\u4FE1\u606F\u3002
12
12
  \u6587\u672C/\u8BED\u97F3\u53D1\u8A00\uFF1A\u53EF\u7533\u8BF7\u5BF9\u5E94\u7684\u4F1A\u4E2D\u8F93\u51FA\uFF0C\u4ECD\u9700\u7ECF daemon \u6743\u9650\u4E0E\u5BA1\u6279\u95F8\u95E8\uFF0C\u4E0D\u662F\u76F4\u63A5\u53D1\u9001\uFF1B\u540C\u4E00\u573A\u4F1A\u8BAE\u6BCF\u79CD\u8F93\u51FA\u53EA\u80FD\u6709\u4E00\u4E2A\u8D1F\u8D23\u89D2\u8272\u3002
13
13
  \u81EA\u5B9A\u4E49\uFF1A\u4EC5\u6CBF\u7528\u8BE5 ID \u5DF2\u4FDD\u5B58\u7684\u5E95\u5C42 policy\uFF0C\u4E0D\u80FD\u5728\u6D4F\u89C8\u5668\u91CC\u6784\u9020\u65B0\u6743\u9650\u3002`,"settings.vcProfiles.preset.observe_only":"\u53EA\u5206\u6790","settings.vcProfiles.preset.meeting_text":"\u4F1A\u4E2D\u6587\u672C\u53D1\u8A00\uFF08\u9700\u5BA1\u6279\uFF09","settings.vcProfiles.preset.meeting_voice":"\u4F1A\u4E2D\u8BED\u97F3\u53D1\u8A00\uFF08\u9700\u5BA1\u6279\uFF09","settings.vcProfiles.preset.meeting_text_voice":"\u4F1A\u4E2D\u6587\u672C+\u8BED\u97F3\u53D1\u8A00\uFF08\u9700\u5BA1\u6279\uFF09","settings.vcProfiles.preset.custom":"\u81EA\u5B9A\u4E49\uFF08\u6CBF\u7528\u5DF2\u4FDD\u5B58 policy\uFF09","settings.vcProfiles.fieldInstructions":"\u804C\u8D23\u8BF4\u660E","settings.vcProfiles.instructionsHelp":`\u5EFA\u8BAE\u5199\u6E05\uFF1A\u8981\u7EF4\u62A4\u4EC0\u4E48\u4EA7\u7269\u3001\u4EC0\u4E48\u7B97\u51B3\u7B56/\u98CE\u9669/\u5F85\u529E\u3001\u8F93\u51FA\u683C\u5F0F\u3001\u5B57\u5E55\u4FEE\u8BA2\u65F6\u5982\u4F55\u66F4\u65B0\u65E7\u6761\u76EE\u3001\u4F55\u65F6\u63D0\u9192\u6216\u7533\u8BF7\u53D1\u8A00\u3001\u7981\u6B62\u4E8B\u9879\u3002
@@ -15,26 +15,26 @@ Codex \u4F1A\u8BDD\u7684\u300C\u8BFB\u300D\u591A\u8D70 shell\uFF08exec_command\u
15
15
  \u4E00\u4E2A\u90FD\u4E0D\u52FE\u8868\u793A\u63A5\u6536\u5168\u90E8\u4E8B\u4EF6\u3002`,"settings.vcProfiles.activityAllHint":"\u4E0D\u52FE\u9009 = \u63A5\u6536\u5168\u90E8\u4E8B\u4EF6","settings.vcProfiles.activity.transcript_received":"\u5B57\u5E55","settings.vcProfiles.activity.chat_received":"\u4F1A\u4E2D\u804A\u5929","settings.vcProfiles.activity.participant_joined":"\u5165\u4F1A","settings.vcProfiles.activity.participant_left":"\u79BB\u4F1A","settings.vcProfiles.activity.magic_share_started":"\u5F00\u59CB\u5171\u4EAB","settings.vcProfiles.activity.magic_share_ended":"\u7ED3\u675F\u5171\u4EAB","settings.vcProfiles.remove":"\u5220\u9664\u6B64\u9884\u8BBE","settings.vcProfiles.add":"+ \u65B0\u589E\u9884\u8BBE","settings.vcProfiles.defaultMode":"\u672A\u64CD\u4F5C\u9009\u62E9\u5361\u65F6","settings.vcProfiles.defaultModeHelp":"\u7528\u6237\u672A\u64CD\u4F5C\u9009\u62E9\u5361\u65F6\u91C7\u7528\u7684\u7EC4\u5408\u3002\u8BE5\u7EC4\u5408\u9700\u6EE1\u8DB3\uFF1AID \u4E0D\u91CD\u590D\u3001\u6BCF\u4E2A\u89D2\u8272\u6267\u884C Bot \u6700\u591A\u627F\u62C5\u4E00\u4E2A\u89D2\u8272\u3001\u6BCF\u79CD\u4F1A\u4E2D\u8F93\u51FA\u53EA\u6709\u4E00\u4E2A\u8D1F\u8D23\u89D2\u8272\u3001\u6700\u591A\u4E00\u4E2A\u89D2\u8272\u81EA\u52A8\u56DE\u5E16\uFF1B\u51B2\u7A81\u7EC4\u5408\u4F1A\u5728\u4F1A\u8BAE\u6FC0\u6D3B\u65F6\u88AB\u8FD0\u884C\u65F6\u88C1\u51B3\u62D2\u7EDD\u5E76\u56DE\u9000\u4E3A\u4EC5\u76D1\u542C\u3002","settings.vcProfiles.defaultModeListenOnly":"\u4EC5\u76D1\u542C","settings.vcProfiles.defaultModeAgents":"\u542F\u7528\u6240\u9009\u9884\u8BBE","settings.vcProfiles.defaultConsumers":"\u672A\u64CD\u4F5C\u65F6\u542F\u7528\u7684\u9884\u8BBE","settings.vcProfiles.save":"\u4FDD\u5B58\u9884\u8BBE","settings.vcProfiles.saving":"\u4FDD\u5B58\u4E2D\u2026","settings.vcProfiles.saved":"\u5DF2\u4FDD\u5B58","settings.vcProfiles.unsaved":"\u6709\u672A\u4FDD\u5B58\u7684\u4FEE\u6539","settings.sectionRepoPicker":"\u4ED3\u5E93\u9009\u62E9","settings.repoPickerMode":"\u4ED3\u5E93\u9009\u62E9\u5361\u6A21\u5F0F","settings.repoPickerModeAll":"\u4ED3\u5E93 + worktree","settings.repoPickerModeRepos":"\u4EC5\u4E3B\u4ED3\u5E93","settings.repoPickerModeHelp":"\u63A7\u5236\u4ED3\u5E93\u9009\u62E9\u5361\u662F\u5426\u5C55\u793A linked worktree\uFF1B\u663E\u5F0F /repo \u8DEF\u5F84\u4ECD\u53EF\u76F4\u8FBE worktree\u3002","settings.sectionWhiteboard":"\u672C\u5730\u767D\u677F","settings.whiteboardEnable":"\u542F\u7528\u9879\u76EE\u767D\u677F","settings.whiteboardEnableHelp":"\u9ED8\u8BA4\u5173\u95ED\u3002\u5F00\u542F\u767D\u677F\u80FD\u529B\uFF1B\u4E0D\u4F1A\u7ACB\u5373\u521B\u5EFA\u767D\u677F\uFF0C\u9996\u6B21\u6309\u7FA4\u548C\u9879\u76EE\u4F7F\u7528\u65F6\u518D\u521D\u59CB\u5316\u3002","settings.sectionGroupCreation":"\u7FA4\u804A\u521B\u5EFA","settings.groupNamePrefix":"/group \u9ED8\u8BA4\u7FA4\u540D\u524D\u7F00","settings.groupNamePrefixHelp":"\u4EC5\u4F5C\u7528\u4E8E\u98DE\u4E66\u659C\u6760\u547D\u4EE4 /group \u548C\u522B\u540D /g\uFF1B\u5176\u4ED6\u5EFA\u7FA4\u5165\u53E3\u4E0D\u53D7\u5F71\u54CD\u3002\u6E05\u7A7A\u5E76\u4FDD\u5B58\u5373\u53EF\u5173\u95ED\uFF0C\u8DE8\u8FDB\u7A0B\u6700\u591A\u7EA6 2 \u79D2\u751F\u6548\u3002","settings.groupNamePrefixPlaceholder":"\u4F8B\u5982\uFF1AAI\u8BA8\u8BBA\xB7","settings.groupNamePrefixPreview":"\u9884\u89C8\uFF1A{name}","settings.groupNamePrefixPreviewName":"\u793A\u4F8B\u7FA4\u540D","settings.groupNamePrefixDisabled":"\u5F53\u524D\u672A\u8BBE\u7F6E\u524D\u7F00\uFF1B/group \u5C06\u6CBF\u7528\u539F\u7FA4\u540D\u3002","settings.groupNamePrefixSave":"\u4FDD\u5B58\u524D\u7F00","settings.saving":"\u4FDD\u5B58\u4E2D\u2026","settings.saved":"\u5DF2\u4FDD\u5B58","settings.saveFailed":"\u4FDD\u5B58\u5931\u8D25","settings.saveReconciled":"\u8BF7\u6C42\u8FD4\u56DE\u5931\u8D25\uFF0C\u5DF2\u91CD\u65B0\u8BFB\u53D6\u670D\u52A1\u7AEF\u72B6\u6001","settings.sectionSchedule":"\u5B9A\u65F6\u4EFB\u52A1","settings.scheduleTimeZone":"\u65F6\u533A","settings.scheduleTimeZoneHost":"\u8DDF\u968F\u4E3B\u673A\uFF08{host}\uFF09","settings.scheduleTimeZoneHelp":"\u5B9A\u65F6\u4EFB\u52A1\u89E6\u53D1\u548C\u663E\u793A\u6240\u7528\u65F6\u533A\u3002\u7559\u7A7A\u8DDF\u968F\u4E3B\u673A\uFF08{host}\uFF09\uFF1B\u5F53\u524D\u751F\u6548\uFF1A{effective}\u3002","settings.sectionMaintenance":"\u81EA\u52A8\u7EF4\u62A4","settings.autoUpdate":"\u81EA\u52A8\u66F4\u65B0","settings.autoUpdateHelp":"\u9ED8\u8BA4\u5173\u95ED\u3002\u6309\u5F53\u524D\u5B89\u88C5\u65B9\u5F0F\uFF08npm / pnpm / Bun\uFF09\u66F4\u65B0\u5168\u5C40\u7248\u672C\uFF1B\u53EA\u66F4\u65B0\u5B89\u88C5\u5305\uFF0C\u4E0D\u81EA\u52A8\u91CD\u542F\u3002","settings.autoRestart":"\u81EA\u52A8\u91CD\u542F","settings.autoRestartHelp":"\u9ED8\u8BA4\u5173\u95ED\uFF0C\u9700\u5148\u5F00\u542F\u81EA\u52A8\u66F4\u65B0\u3002\u81EA\u52A8\u66F4\u65B0\u540E\u5728\u7A7A\u95F2\u65F6\u91CD\u542F\u4EE5\u751F\u6548\uFF1B\u6709\u8FDB\u884C\u4E2D\u4F1A\u8BDD\u5219\u5EF6\u540E\u5230\u4E0B\u6B21\u7A97\u53E3\u3002","settings.autoUpdateLocalDev":"\u5F53\u524D\u4E3A\u672C\u5730\u5F00\u53D1\u5B89\u88C5\uFF08\u4ECE\u6E90\u7801\u8FD0\u884C\uFF09\uFF0C\u81EA\u52A8\u66F4\u65B0\u4E0D\u53EF\u7528\u3002","settings.autoUpdateUnsupportedInstall":"\u5F53\u524D\u5B89\u88C5\u65B9\u5F0F\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u66F4\u65B0\uFF08\u76EE\u524D\u652F\u6301 npm / pnpm / Bun \u5168\u5C40\u5B89\u88C5\uFF09\u3002","settings.maintenanceTime":"\u65F6\u95F4","update.section":"\u7248\u672C\u4E0E\u66F4\u65B0","update.loginRequired":"\u767B\u5F55\u540E\u53EF\u68C0\u67E5\u7248\u672C\u3001\u6267\u884C\u66F4\u65B0\u6216\u91CD\u542F\u3002","update.loading":"\u68C0\u67E5\u4E2D\u2026","update.checkFailed":"\u68C0\u67E5\u5931\u8D25","update.current":"\u5F53\u524D\u7248\u672C","update.upToDate":"\u5DF2\u662F\u6700\u65B0\u7248\u672C","update.newAvailable":"\u53D1\u73B0\u65B0\u7248\u672C {version}","update.checkUnavailable":"\u65E0\u6CD5\u83B7\u53D6\u6700\u65B0\u7248\u672C\uFF08\u79BB\u7EBF\u6216\u53D7\u7F51\u7EDC\u9650\u5236\uFF09","update.nodeWarn":"\u5F53\u524D Node \u7248\u672C {version} \u8FC7\u4F4E\uFF0C\u66F4\u65B0\u8981\u6C42 \u2265 {required}\uFF0C\u8BF7\u5148\u5347\u7EA7 Node\u3002","update.localDev":"\u5F53\u524D\u4E3A\u672C\u5730\u5F00\u53D1\u5B89\u88C5\uFF08\u4ECE\u6E90\u7801\u8FD0\u884C\uFF09\uFF0C\u300C\u66F4\u65B0\u5230\u6700\u65B0\u7248\u300D\u4E0D\u53EF\u7528\uFF1B\u8BF7\u7528 git pull + \u6784\u5EFA\u540E\u91CD\u542F\u3002","update.multiInstallWarn":"\u68C0\u6D4B\u5230\u591A\u4E2A botmux \u5B89\u88C5\uFF1B\u672C\u6B21\u53EA\u66F4\u65B0\u5F53\u524D\u8FD0\u884C\u5B89\u88C5\u6240\u5C5E\u7684\u5305\u7BA1\u7406\u5668\u4F4D\u7F6E\uFF1A","update.kindNpm":"npm \u5168\u5C40","update.kindPnpm":"pnpm \u5168\u5C40","update.kindYarn":"Yarn \u5168\u5C40\uFF08\u6682\u4E0D\u652F\u6301\u66F4\u65B0\uFF09","update.kindBun":"Bun \u5168\u5C40","update.kindSource":"\u6E90\u7801 checkout","update.kindUnknown":"\u672A\u77E5","update.btnCheck":"\u68C0\u67E5\u66F4\u65B0","update.btnChangelog":"\u67E5\u770B\u66F4\u65B0\u5185\u5BB9","update.btnChangelogHide":"\u6536\u8D77\u66F4\u65B0\u5185\u5BB9","update.btnUpdate":"\u66F4\u65B0\u5230\u6700\u65B0\u7248","update.btnRestart":"\u91CD\u542F botmux","update.topbarAction":"\u5347\u7EA7\u5E76\u91CD\u542F","update.topbarReview":"\u67E5\u770B\u66F4\u65B0\u65B9\u5F0F","update.topbarWorking":"\u5904\u7406\u4E2D\u2026","update.topbarRetry":"\u91CD\u8BD5","update.topbarLater":"\u7A0D\u540E","update.topbarClose":"\u5173\u95ED","update.topbarRefresh":"\u5237\u65B0\u7248\u672C","update.topbarRefreshing":"\u6B63\u5728\u5237\u65B0\u7248\u672C\u2026","update.topbarRefreshFailed":"\u5237\u65B0\u7248\u672C\u5931\u8D25\uFF0C\u5DF2\u4FDD\u7559\u4E0A\u6B21\u68C0\u67E5\u7ED3\u679C\u3002","update.rollbackTitle":"\u7248\u672C\u56DE\u9000","update.rollbackHint":"\u9009\u62E9\u8981\u56DE\u9000\u5230\u7684\u7248\u672C\uFF08\u8FD1 3 \u4E2A\u6B63\u5F0F\u7248\uFF09","update.rollbackLoading":"\u6B63\u5728\u52A0\u8F7D\u53EF\u56DE\u9000\u7248\u672C\u2026","update.rollbackEmpty":"\u6682\u65E0\u53EF\u56DE\u9000\u7684\u6B63\u5F0F\u7248\u672C\u3002","update.rollbackLoadFailed":"\u7248\u672C\u5217\u8868\u5237\u65B0\u5931\u8D25\uFF0C\u5DF2\u4FDD\u7559\u4E0A\u6B21\u7ED3\u679C\u3002","update.rollbackRetry":"\u91CD\u8BD5","update.rollbackSelect":"\u8BF7\u9009\u62E9\u56DE\u9000\u7248\u672C","update.rollbackAction":"\u56DE\u9000\u5230 v{version}","update.rollbackRisk":"\u56DE\u9000\u5C06\u4E0B\u8F7D\u5E76\u5B89\u88C5 v{version}\uFF0C\u66FF\u6362\u5F53\u524D\u7A0B\u5E8F\uFF0C\u5B8C\u6210\u540E\u4F1A\u81EA\u52A8\u91CD\u542F\u3002\u65E7\u7248\u672C\u53EF\u80FD\u4E0D\u5305\u542B\u6B64\u7248\u672C\u5165\u53E3\uFF1B\u53EF\u8FD0\u884C botmux upgrade && botmux restart \u6062\u590D\u6700\u65B0\u7248\u3002\u82E5\u5DF2\u5F00\u542F\u81EA\u52A8\u66F4\u65B0\uFF0C\u540E\u7EED\u7EF4\u62A4\u4EFB\u52A1\u4ECD\u53EF\u80FD\u518D\u6B21\u5347\u7EA7\u3002","update.rollbackReleaseNotes":"\u67E5\u770B v{version} \u7684 GitHub \u53D1\u5E03\u8BF4\u660E \u2197","update.rollbackReleaseNotesA11y":"\u67E5\u770B v{version} \u7684 GitHub \u53D1\u5E03\u8BF4\u660E\uFF08\u5C06\u5728\u65B0\u6807\u7B7E\u9875\u6253\u5F00\uFF09","update.rollbackInstalling":"\u6B63\u5728\u56DE\u9000\u5230 v{version}\uFF0C\u8BF7\u7A0D\u5019\u2026","update.rollbackRestarting":"\u5DF2\u5B89\u88C5 v{version}\uFF0C\u6B63\u5728\u91CD\u542F Botmux\u2026","update.rollbackFailed":"\u56DE\u9000\u5931\u8D25\uFF1A{detail}","update.versionUpgradePrompt":"\u53EF\u5347\u7EA7\u5230 {version}\uFF0C\u5347\u7EA7\u5B8C\u6210\u540E\u4F1A\u81EA\u52A8\u91CD\u542F Botmux\u3002","update.changelogLoading":"\u52A0\u8F7D\u66F4\u65B0\u5185\u5BB9\u2026","update.changelogEmpty":"\u6CA1\u6709\u6BD4\u5F53\u524D\u7248\u672C\u66F4\u65B0\u7684\u53D1\u5E03\u8BF4\u660E\u3002","update.changelogFailed":"\u65E0\u6CD5\u52A0\u8F7D\u66F4\u65B0\u5185\u5BB9\uFF08\u79BB\u7EBF\u6216\u53D7\u7F51\u7EDC\u9650\u5236\uFF09\u3002","update.changelogRateLimited":"GitHub \u63A5\u53E3\u8BF7\u6C42\u8D85\u9650\uFF08\u672A\u767B\u5F55\u6BCF\u5C0F\u65F6\u6BCF IP 60 \u6B21\uFF0C\u5171\u4EAB\u7F51\u7EDC\u6613\u89E6\u53D1\uFF09\uFF0C\u6682\u65F6\u62FF\u4E0D\u5230\u66F4\u65B0\u5185\u5BB9\u3002","update.changelogViewOnGitHub":"\u524D\u5F80 GitHub Releases \u67E5\u770B","update.navBadgeTitle":"\u6709\u65B0\u7248\u672C {version}","update.navRuntimeBadgeTitle":"CLI \u8FD0\u884C\u65F6\u6709\u65B0\u7248\u672C {version}","update.runtimeTitle":"CLI \u8FD0\u884C\u65F6","update.runtimeAvailable":"{current} \u2192 {latest}","update.runtimeCommand":"\u5BBF\u4E3B\u5347\u7EA7\u547D\u4EE4","update.runtimeUnmanaged":"\u672A\u6258\u7BA1\u66F4\u65B0","update.runtimeHelp":"botmux \u6BCF\u5929\u5728\u5BBF\u4E3B\u53EA\u8BFB\u68C0\u67E5\u4E00\u6B21\uFF1B\u4EC5\u63D0\u9192\uFF0C\u4E0D\u4F1A\u81EA\u52A8\u5B89\u88C5\u3002","update.confirmMultiInstall":`\u68C0\u6D4B\u5230\u591A\u4E2A botmux \u5B89\u88C5\uFF1A
16
16
  {paths}
17
17
 
18
- \u53EA\u4F1A\u66F4\u65B0\u5F53\u524D\u8FD0\u884C\u7684\u5B89\u88C5\u4F4D\u7F6E\u3002\u4ECD\u8981\u7EE7\u7EED\uFF1F`,"update.confirmUpdate":"\u5C06\u8FD0\u884C {command}\uFF0C\u66F4\u65B0\u5230 {version}\u3002\u786E\u8BA4\u7EE7\u7EED\uFF1F","update.confirmUpdateNoVer":"\u5C06\u8FD0\u884C {command} \u66F4\u65B0\u5230\u6700\u65B0\u7248\u3002\u786E\u8BA4\u7EE7\u7EED\uFF1F","update.healthCheckFailed":"\u65E0\u6CD5\u786E\u8BA4\u5F53\u524D Dashboard \u5B9E\u4F8B\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u540E\u91CD\u8BD5\u3002","update.nodeTooOldAlert":"\u5F53\u524D Node \u7248\u672C {version} \u8FC7\u4F4E\uFF08\u8981\u6C42 \u2265 {required}\uFF09\uFF0C\u8BF7\u5148\u5347\u7EA7 Node \u518D\u66F4\u65B0\u3002","update.updating":"\u6B63\u5728\u66F4\u65B0\uFF08{command}\uFF09\uFF0C\u8BF7\u7A0D\u5019\u2026","update.unsupportedInstall":"\u5F53\u524D\u5B89\u88C5\u65B9\u5F0F\u65E0\u6CD5\u5B89\u5168\u81EA\u52A8\u66F4\u65B0\uFF1B\u76EE\u524D\u4EC5\u652F\u6301 npm / pnpm / Bun \u5168\u5C40\u5B89\u88C5\u3002\u8BF7\u4F7F\u7528\u539F\u5305\u7BA1\u7406\u5668\u624B\u52A8\u66F4\u65B0\u3002","update.updatedChanged":"\u5DF2\u66F4\u65B0 {old} \u2192 {new}\u3002","update.confirmRestart":"\u9700\u8981\u91CD\u542F botmux \u4EE5\u5E94\u7528\u65B0\u7248\u672C\u3002\u73B0\u5728\u91CD\u542F\uFF1F\uFF08\u6240\u6709\u4F1A\u8BDD\u4F1A\u51B7\u6062\u590D\uFF0C\u4EEA\u8868\u76D8\u4F1A\u77ED\u6682\u65AD\u5F00\u5E76\u81EA\u52A8\u91CD\u8FDE\uFF09","update.alreadyLatestRun":"\u5DF2\u662F\u6700\u65B0\u7248\u672C\uFF08{version}\uFF09\uFF0C\u65E0\u9700\u66F4\u65B0\u3002","update.updateFailed":"\u66F4\u65B0\u5931\u8D25\uFF1A{detail}","update.noRestartHint":"\u66F4\u65B0\u5B8C\u6210\u3002\u7A0D\u540E\u8BF7\u624B\u52A8\u91CD\u542F\uFF08botmux restart\uFF09\u4EE5\u5E94\u7528\u65B0\u7248\u672C\u3002","update.confirmPlainRestart":"\u91CD\u542F botmux\uFF1F\u6240\u6709\u4F1A\u8BDD\u4F1A\u51B7\u6062\u590D\uFF0C\u4EEA\u8868\u76D8\u4F1A\u77ED\u6682\u65AD\u5F00\u5E76\u81EA\u52A8\u91CD\u8FDE\u3002","update.restarting":"\u6B63\u5728\u91CD\u542F botmux\uFF0C\u7B49\u5F85\u91CD\u8FDE\u2026","update.restartSlow":"\u91CD\u542F\u8017\u65F6\u8F83\u957F\uFF0C\u8BF7\u7A0D\u540E\u624B\u52A8\u5237\u65B0\u9875\u9762\u3002","update.restartFailed":"\u91CD\u542F\u5931\u8D25\uFF1A{detail}","skills.title":"Skill \u7BA1\u7406","skills.installed":"\u5DF2\u5B89\u88C5 Skills","skills.installedHelp":"\u672C\u673A\u5DF2\u5B89\u88C5\u3001\u53EF\u4F9B Bot \u4F7F\u7528\u7684 Skills\u3002","skills.installedCount":"{count} \u4E2A","skills.metricInstalled":"\u5DF2\u5B89\u88C5 Skills","skills.metricPacks":"\u4E13\u9879\u5305","skills.metricBots":"\u5DF2\u914D\u7F6E Bot","skills.metricAttached":"\u7B56\u7565\u5F15\u7528","skills.issuesLabel":"\u914D\u7F6E\u5065\u5EB7","skills.issueDangling":"{count} \u4E2A Skill \u88AB\u5F15\u7528\u4F46\u672A\u5B89\u88C5","skills.issueUnassignedPacks":"{count} \u4E2A\u4E13\u9879\u5305\u672A\u5206\u914D Bot","skills.issueBotsMissing":"{count} \u4E2A Bot \u7F3A\u5931\u80FD\u529B","skills.issueNone":"\u2713 \u914D\u7F6E\u5065\u5EB7","skills.usedInPacks":"{count} \u5305","skills.usedByBots":"{count} Bot","skills.installTargetHint":"\u76EE\u6807\uFF1A\u5B89\u88C5 \u201C{skill}\u201D\uFF08\u53D1\u73B0\u5019\u9009\u540E\u5C06\u81EA\u52A8\u52FE\u9009\uFF0C\u4E0D\u4F1A\u81EA\u52A8\u5B89\u88C5\uFF09","skills.clearInstallTarget":"\u6E05\u9664\u76EE\u6807","skills.installTargetNotFound":"\u8BE5\u6765\u6E90\u4E2D\u672A\u627E\u5230\u76EE\u6807 Skill \u201C{skill}\u201D\uFF0C\u5DF2\u53D6\u6D88\u9ED8\u8BA4\u52FE\u9009","skills.installMissingHint":"\u524D\u5F80\u5B89\u88C5 \u201C{skill}\u201D","skills.packsLoadError":"\u4E13\u9879\u5305\u6570\u636E\u52A0\u8F7D\u5931\u8D25\uFF08\u5DF2\u4FDD\u7559\u4E0A\u6B21\u6570\u636E\uFF09\uFF1A{error}","skills.packsLoadErrorFirst":"\u4E13\u9879\u5305\u6570\u636E\u52A0\u8F7D\u5931\u8D25\uFF08\u5C1A\u672A\u6210\u529F\u52A0\u8F7D\u8FC7\uFF0C\u76F8\u5173\u5065\u5EB7\u72B6\u6001\u6309\u672A\u77E5\u5904\u7406\uFF09\uFF1A{error}","skills.libraryFilterActive":"\u7B5B\u9009 {count} \u9879","skills.clearFilter":"\u6E05\u9664\u7B5B\u9009","skills.missingFilteredTitle":"\u88AB\u5F15\u7528\u4F46\u672A\u5B89\u88C5\u7684 Skill","skills.installNow":"\u53BB\u5B89\u88C5","skills.usedInPacksUnknown":"? \u5305","skills.install":"\u5B89\u88C5 Skill","skills.installInfoLabel":"\u5B89\u88C5\u4F4D\u7F6E\u8BF4\u660E","skills.installInfo":"\u6CE8\u518C\u4FE1\u606F\u5199\u5165 ~/.botmux/skills/registry.json\uFF1B\u5B89\u88C5\u5185\u5BB9\u5B58\u653E\u5728 ~/.botmux/skills/store\u3002\u672C\u673A CLI Skill \u4EE5\u539F\u8DEF\u5F84\u5F15\u7528\uFF0C\u4E0D\u5199\u5165 CLI \u5168\u5C40\u76EE\u5F55\u3002","skills.source":"\u5BFC\u5165\u5730\u5740","skills.sourcePlaceholder":"\u7C98\u8D34 GitHub \u4ED3\u5E93 / Git URL / agentbuddy \u5B89\u88C5\u547D\u4EE4 / \u672C\u673A Skill \u76EE\u5F55","skills.sourceHelpOpen":"\u67E5\u770B\u652F\u6301\u7684\u5BFC\u5165\u6765\u6E90","skills.sourceHelpClose":"\u5173\u95ED\u5BFC\u5165\u6765\u6E90\u8BF4\u660E","skills.sourceHelpTitle":"\u652F\u6301\u7684\u5BFC\u5165\u6765\u6E90","skills.sourceHelpIntro":"\u76F4\u63A5\u7C98\u8D34\u6765\u6E90\uFF1B\u7CFB\u7EDF\u4F1A\u5148\u8BC6\u522B\u7C7B\u578B\uFF0C\u518D\u626B\u63CF\u53EF\u5B89\u88C5\u7684 Skill\u3002","skills.sourceHelpRemoteLabel":"GitHub / Git","skills.sourceHelpRemote":"\u652F\u6301 owner/repo\u3001GitHub \u6D4F\u89C8\u5668\u5730\u5740\u548C Git URL\uFF1B\u591A Skill \u4ED3\u5E93\u4F1A\u5728\u626B\u63CF\u540E\u8BA9\u4F60\u9009\u62E9\u3002","skills.sourceHelpRemoteExample":"owner/repo \xB7 https://github.com/owner/repo/tree/main","skills.sourceHelpLocalLabel":"\u672C\u673A CLI Skill \u76EE\u5F55","skills.sourceHelpLocal":"\u76F4\u63A5\u5F15\u7528\u539F\u5730\u5740\uFF0C\u4E0D\u590D\u5236\u5230 botmux store\u3002","skills.sourceHelpLocalExample":"/absolute/path/to/skill","skills.sourceHelpAgentbuddyLabel":"AgentBuddy","skills.sourceHelpAgentbuddy":"\u8BF7\u7C98\u8D34\u5B8C\u6574\u5B89\u88C5\u547D\u4EE4\uFF0C\u5546\u57CE URL \u672C\u8EAB\u4E0D\u80FD\u5B89\u88C5\uFF1B\u90E8\u7F72\u673A\u9700\u53EF\u8FD0\u884C Agentbuddy CLI\u3002","skills.sourceHelpAgentbuddyExample":'npm_config_registry="https://registry.example.com" npx -y agentbuddy@latest skill add skills.example.com/team/health',"skills.advancedOptions":"\u9AD8\u7EA7\u9009\u9879\uFF08\u4ED3\u5E93\u5185\u8DEF\u5F84 / Ref / \u626B\u63CF\u6DF1\u5EA6\uFF09","skills.sourceDetectedGithub":"\u5DF2\u8BC6\u522B\uFF1AGitHub \u4ED3\u5E93","skills.sourceDetectedGit":"\u5DF2\u8BC6\u522B\uFF1AGit \u8FDC\u7A0B\u4ED3\u5E93","skills.sourceDetectedAgentbuddy":"\u5DF2\u8BC6\u522B\uFF1AAgentbuddy \u5B89\u88C5\u547D\u4EE4","skills.sourceDetectedLocal":"\u5DF2\u8BC6\u522B\uFF1A\u90E8\u7F72\u673A\u672C\u5730\u8DEF\u5F84","skills.sourceDetectedUnknown":"\u6682\u65E0\u6CD5\u8BC6\u522B\u8BE5\u683C\u5F0F","skills.sourcePreflightAgentbuddy":"\u7C98\u8D34\u547D\u4EE4\u53EA\u7528\u4E8E\u63D0\u53D6\u5B89\u88C5\u76EE\u6807\uFF1B\u5B9E\u9645\u8FD0\u884C\u4F9D\u8D56\u90E8\u7F72\u673A\u5DF2\u914D\u7F6E Agentbuddy CLI \u4E14\u5DF2\u767B\u5F55\u3002","skills.sourcePreflightGit":"\u516C\u5F00\u4ED3\u5E93\u53EF\u76F4\u63A5\u626B\u63CF\uFF1B\u79C1\u6709\u4ED3\u5E93\u9700\u90E8\u7F72\u673A\u7684 GitHub Token\u3001gh \u767B\u5F55\u6216 SSH Key\u3002","skills.sourcePreflightLocal":"\u8BE5\u8DEF\u5F84\u5FC5\u987B\u5B58\u5728\u4E8E Botmux \u90E8\u7F72\u673A\uFF0C\u4E14\u8FDB\u7A0B\u5BF9 `SKILL.md` \u6709\u8BFB\u53D6\u6743\u9650\u3002","skills.sourcePreflightUnknown":"\u8BF7\u6539\u7528 GitHub/Git \u5730\u5740\u3001\u5B8C\u6574 Agentbuddy \u5B89\u88C5\u547D\u4EE4\u6216\u90E8\u7F72\u673A\u672C\u5730\u8DEF\u5F84\u3002","skills.installDiagnosticTitle":"\u5B89\u88C5\u5931\u8D25\u6392\u67E5","skills.installDiagnosticAgentbuddy":"\u68C0\u67E5\u90E8\u7F72\u673A\u662F\u5426\u53EF\u7528 Agentbuddy CLI\u3001\u662F\u5426\u5DF2\u767B\u5F55\uFF0C\u5E76\u786E\u8BA4\u7C98\u8D34\u7684\u662F\u5B8C\u6574 `skill add` / `collection add` \u547D\u4EE4\uFF0C\u800C\u4E0D\u662F\u5546\u57CE URL\u3002","skills.installDiagnosticGit":"\u68C0\u67E5\u4ED3\u5E93\u5730\u5740\u3001Ref \u548C\u4ED3\u5E93\u5185\u8DEF\u5F84\uFF1B\u79C1\u6709\u4ED3\u5E93\u8FD8\u9700\u786E\u8BA4\u90E8\u7F72\u673A Git \u51ED\u636E\u6709\u6548\u3002","skills.installDiagnosticLocal":"\u68C0\u67E5\u8DEF\u5F84\u662F\u5426\u4F4D\u4E8E\u90E8\u7F72\u673A\u3001\u76EE\u5F55\u5185\u662F\u5426\u6709\u53EF\u8BFB\u7684 `SKILL.md`\uFF0C\u4EE5\u53CA\u76EE\u5F55\u5C42\u7EA7\u662F\u5426\u8D85\u8FC7\u626B\u63CF\u6DF1\u5EA6\u3002","skills.installDiagnosticUnknown":"\u8BE5\u8F93\u5165\u4E0D\u662F\u53D7\u652F\u6301\u7684\u6765\u6E90\u683C\u5F0F\uFF1B\u8BF7\u6253\u5F00\u5BFC\u5165\u5730\u5740\u65C1\u7684\u6765\u6E90\u8BF4\u660E\u540E\u91CD\u8BD5\u3002","skills.agentbuddyNotFound":"\u90E8\u7F72\u673A\u672A\u627E\u5230 agentbuddy CLI\u3002\u8BF7\u5728\u90E8\u7F72\u673A\u5168\u5C40\u5B89\u88C5\uFF0C\u6216\u8BBE\u7F6E BOTMUX_AGENTBUDDY_CMD\u3002","skills.agentbuddyNeedsLogin":"\u90E8\u7F72\u673A agentbuddy \u672A\u767B\u5F55\u3002\u8BF7\u5728\u90E8\u7F72\u673A\u8FD0\u884C agentbuddy login \u540E\u91CD\u8BD5\u3002","skills.gitNeedsAuth":"GitHub \u79C1\u6709\u4ED3\u5E93\u9274\u6743\u5931\u8D25\u3002\u8BF7\u5728\u90E8\u7F72\u673A\u6267\u884C gh auth login\uFF0C\u6216\u5728 ~/.botmux/.env \u914D\u7F6E GITHUB_TOKEN / GH_TOKEN\uFF1B\u4E5F\u53EF\u4F7F\u7528 SSH Git URL \u590D\u7528\u4E3B\u673A SSH key\u3002","skills.agentbuddyCommandFailed":"agentbuddy \u5B89\u88C5\u5931\u8D25\uFF0C\u8BF7\u67E5\u770B\u90E8\u7F72\u673A\u65E5\u5FD7\u3002","skills.agentbuddyTelemetryFailed":"\u5185\u5D4C telemetry \u6E05\u7406\u5931\u8D25\uFF0C\u5DF2\u4E2D\u65AD\u5B89\u88C5\uFF08\u5982\u9700\u4FDD\u7559\u53EF\u8BBE BOTMUX_AGENTBUDDY_KEEP_TELEMETRY=1\uFF09\u3002","skills.agentbuddyNoSkill":"agentbuddy \u672A\u4EA7\u51FA\u4EFB\u4F55 Skill\uFF0C\u8BF7\u68C0\u67E5 identifier \u662F\u5426\u6B63\u786E\u3002","skills.agentbuddyInvalid":"agentbuddy identifier \u683C\u5F0F\u4E0D\u5408\u6CD5\u3002","skills.discover":"\u53D1\u73B0 Skill","skills.localDiscover":"\u6D4F\u89C8\u672C\u673A Skill","skills.localDiscoverTitle":"\u672C\u673A CLI Skill","skills.localDiscoverHelp":"\u626B\u63CF\u672C\u673A CLI \u5DF2\u5B89\u88C5\u7684 Skill\uFF0C\u5E76\u6CE8\u518C\u4E3A\u672C\u5730\u5F15\u7528\u3002","skills.scan":"\u626B\u63CF","skills.scanning":"\u6B63\u5728\u626B\u63CF","skills.scanFound":"\u53D1\u73B0 {count} \u4E2A Skill","skills.scanEmpty":"\u6CA1\u6709\u53D1\u73B0\u53EF\u5B89\u88C5\u7684 Skill\u3002","skills.sourceRequired":"\u8BF7\u5148\u586B\u5199\u5BFC\u5165\u5730\u5740\u3002","skills.advanced":"\u9AD8\u7EA7\u9009\u9879","skills.discoverTitle":"\u53D1\u73B0\u672C\u673A CLI Skill","skills.discoverHelp":"\u626B\u63CF\u5DF2\u914D\u7F6E bot \u7684 CLI Skill \u76EE\u5F55\uFF1B\u9009\u4E2D\u540E\u6CE8\u518C\u4E3A\u672C\u5730\u5F15\u7528\uFF0C\u4E0D\u590D\u5236\u6587\u4EF6\u3002","skills.discoverEmpty":"\u6CA1\u6709\u5728\u672C\u673A CLI skill \u76EE\u5F55\u4E2D\u53D1\u73B0\u53EF\u6CE8\u518C\u7684 Skill\u3002","skills.discoverGroupEmpty":"\u8FD9\u4E2A CLI \u76EE\u5F55\u4E0B\u6CA1\u6709\u53EF\u6CE8\u518C\u7684 Skill\u3002","skills.discoverRegistered":"\u5DF2\u6CE8\u518C","skills.discoverSelectAll":"\u5168\u9009\u672A\u6CE8\u518C","skills.discoverClearSelection":"\u53D6\u6D88\u5168\u9009","skills.discoverRegister":"\u6CE8\u518C\u9009\u4E2D","skills.discoverClose":"\u5173\u95ED","skills.discoverNothingSelected":"\u8BF7\u9009\u62E9\u81F3\u5C11\u4E00\u4E2A\u672A\u6CE8\u518C\u7684 Skill\u3002","skills.discoverRegisteringBatch":"\u6B63\u5728\u6279\u91CF\u6CE8\u518C {total} \u4E2A Skill","skills.sourceCodex":"\u672C\u673A Codex","skills.sourceClaude":"\u672C\u673A Claude","skills.sourceTrae":"\u672C\u673A Trae","skills.sourceCursor":"\u672C\u673A Cursor","skills.sourceGemini":"\u672C\u673A Gemini","skills.sourceOpenCode":"\u672C\u673A OpenCode","skills.sourceLocalLink":"\u672C\u673A\u5F15\u7528","skills.sourceBotmuxCopy":"botmux store","skills.path":"\u4ED3\u5E93\u5185\u8DEF\u5F84\uFF08\u53EF\u9009\uFF09","skills.pathPlaceholder":"\u7559\u7A7A\u5219\u626B\u63CF\u4ED3\u5E93\u6839\u76EE\u5F55\uFF1B\u4E5F\u53EF\u586B\u5199\u5355\u4E2A Skill \u76EE\u5F55","skills.pathHelpInline":"\u6574\u4ED3\u5E93\u5BFC\u5165\u65F6\u7559\u7A7A\uFF1B\u6307\u5B9A\u76EE\u5F55\u53EF\u8DF3\u8FC7\u626B\u63CF\uFF0C\u76F4\u63A5\u5B89\u88C5\u8BE5 Skill\u3002","skills.ref":"Ref\uFF08\u53EF\u9009\uFF09","skills.refPlaceholder":"\u7559\u7A7A\u5219\u4F7F\u7528 GitHub URL \u4E2D\u7684\u5206\u652F\u6216\u9ED8\u8BA4 HEAD","skills.refHelpInline":"\u652F\u6301\u5206\u652F\u3001Tag \u6216 commit\uFF1BGitHub tree/blob URL \u5DF2\u81EA\u5E26 Ref \u65F6\u53EF\u7559\u7A7A\u3002","skills.deepScan":"\u76F4\u63A5\u6DF1\u5EA6\u626B\u63CF","skills.deepScanHelp":"\u8DF3\u8FC7\u6D45\u626B\uFF0C\u9012\u5F52\u67E5\u627E\u6700\u591A 4 \u5C42\u76EE\u5F55\u3002\u5927\u578B\u4ED3\u5E93\u53EF\u80FD\u66F4\u6162\u3002","skills.autoDeepScanHint":"\u9ED8\u8BA4\u5148\u5FEB\u901F\u626B\u63CF\uFF1B\u6CA1\u6709\u7ED3\u679C\u65F6\u4F1A\u81EA\u52A8\u6DF1\u626B\u4E00\u6B21\u3002","skills.link":"\u672C\u5730\u94FE\u63A5\uFF08\u4E0D\u590D\u5236\uFF09","skills.installSubmit":"\u626B\u63CF\u5E76\u5B89\u88C5","skills.installSelected":"\u5B89\u88C5\u9009\u4E2D","skills.installSelectionTitle":"\u9009\u62E9\u8981\u5B89\u88C5\u7684 Skill","skills.installSelectionHelp":"\u53D1\u73B0 {count} \u4E2A Skill\uFF1B\u53D6\u6D88\u4E0D\u9700\u8981\u7684\u9879\u540E\u518D\u5B89\u88C5\u3002","skills.installSelectionCancel":"\u53D6\u6D88","skills.update":"\u66F4\u65B0","skills.remove":"\u5220\u9664","skills.select":"\u9009\u62E9","skills.searchLabel":"\u641C\u7D22\u5DF2\u5B89\u88C5\u7684 Skills","skills.searchPlaceholder":"\u641C\u7D22\u5DF2\u5B89\u88C5\u7684 Skills","skills.selectAll":"\u5168\u9009","skills.deselectAll":"\u53D6\u6D88\u5168\u9009","skills.all":"\u5168\u90E8","skills.noResults":"\u6CA1\u6709\u5339\u914D\u7684 Skill","skills.clearSearch":"\u6E05\u9664\u641C\u7D22","skills.resultCount":"{count} \u4E2A\u7ED3\u679C","skills.selectAllSkills":"\u5168\u9009\u5168\u90E8 {count} \u4E2A","skills.selectSearchResults":"\u5168\u9009 {count} \u4E2A\u641C\u7D22\u7ED3\u679C","skills.selectNamed":"\u9009\u62E9 {skill}","skills.selectedCount":"\u5DF2\u9009\u62E9 {count} \u4E2A","skills.selectedHidden":"\xB7 {count} \u4E2A\u4E0D\u5728\u5F53\u524D\u7ED3\u679C","skills.bulkActions":"\u5DF2\u5B89\u88C5 Skills \u6279\u91CF\u64CD\u4F5C","skills.removeSelected":"\u5220\u9664 {count} \u4E2A","skills.emptyTitle":"\u8FD8\u6CA1\u6709\u5B89\u88C5 Skill","skills.emptyHelp":"\u5B89\u88C5\u540E\uFF0C\u5B83\u4EEC\u4F1A\u51FA\u73B0\u5728\u8FD9\u91CC\u3002","skills.noResultsTitle":"\u6CA1\u6709\u627E\u5230\u201C{query}\u201D","skills.noResultsHelp":"\u8BF7\u5C1D\u8BD5\u5176\u4ED6\u5173\u952E\u8BCD\u3002","skills.removeOneTitle":"\u5220\u9664\u201C{skill}\u201D\uFF1F","skills.removeManyTitle":"\u5220\u9664 {count} \u4E2A Skills\uFF1F","skills.removeOnePermanentHelp":"\u8FD9\u4F1A\u4ECE\u5F53\u524D\u73AF\u5883\u79FB\u9664\u8BE5 Skill\uFF0C\u5E76\u5220\u9664 botmux store \u4E2D\u7684\u672C\u5730\u526F\u672C\u3002\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002","skills.removePermanentHelp":"\u8FD9\u4F1A\u4ECE\u5F53\u524D\u73AF\u5883\u79FB\u9664\u6240\u9009 Skill\uFF0C\u5E76\u5220\u9664 botmux store \u4E2D\u7684\u672C\u5730\u526F\u672C\u3002\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002","skills.removeMore":"\u4EE5\u53CA\u53E6\u5916 {count} \u4E2A","skills.removeInUseOneTitle":"\u4ECD\u8981\u5220\u9664\u201C{skill}\u201D\uFF1F","skills.removeInUseManyTitle":"\u4ECD\u8981\u5220\u9664 {count} \u4E2A Skills\uFF1F","skills.removeInUseOneHelp":"\u5B83\u6B63\u88AB {count} \u4E2A Bot \u5F15\u7528\u3002\u5220\u9664\u540E\uFF0C\u8FD9\u4E9B Bot \u5C06\u65E0\u6CD5\u7EE7\u7EED\u4F7F\u7528\u5B83\u3002\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002","skills.removeInUseManyHelp":"\u8FD9\u4E9B Skills \u6B63\u88AB {count} \u4E2A Bot \u5F15\u7528\u3002\u5220\u9664\u540E\uFF0C\u8FD9\u4E9B Bot \u5C06\u65E0\u6CD5\u7EE7\u7EED\u4F7F\u7528\u5B83\u4EEC\u3002\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002","skills.removeInUseOneHelpWithPacks":"\u5B83\u6B63\u88AB {botCount} \u4E2A Bot \u548C {packCount} \u4E2A Skill Pack \u5F15\u7528\u3002\u5220\u9664\u540E\u4F1A\u7559\u4E0B\u65E0\u6548\u5F15\u7528\u3002\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002","skills.removeInUseManyHelpWithPacks":"\u8FD9\u4E9B Skills \u6B63\u88AB {botCount} \u4E2A Bot \u548C {packCount} \u4E2A Skill Pack \u5F15\u7528\u3002\u5220\u9664\u540E\u4F1A\u7559\u4E0B\u65E0\u6548\u5F15\u7528\u3002\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002","skills.removeReferencesDetail":"\u53D7\u5F71\u54CD\u7684\u5F15\u7528","skills.removeOneConfirm":"\u5220\u9664 Skill","skills.removeAnyway":"\u4ECD\u8981\u5220\u9664","skills.removing":"\u6B63\u5728\u5220\u9664\u2026","skills.removingCount":"\u6B63\u5728\u5220\u9664 {count} \u4E2A Skills\u2026","skills.removedOne":"\u5DF2\u5220\u9664\u201C{skill}\u201D","skills.removedMany":"\u5DF2\u5220\u9664 {count} \u4E2A Skills","skills.removeFailed":"\u672A\u80FD\u5220\u9664\uFF0C\u8BF7\u91CD\u8BD5\uFF1A{detail}","skills.pageStatus":"{page} / {pages}","skills.prevPage":"\u4E0A\u4E00\u9875","skills.nextPage":"\u4E0B\u4E00\u9875","skills.empty":"\u6682\u65E0\u5DF2\u5B89\u88C5 skill\u3002\u53EF\u4EE5\u4ECE\u672C\u673A\u76EE\u5F55\u3001Git \u6216 GitHub \u5B89\u88C5\u3002","skills.apiUnavailable":"\u5F53\u524D Dashboard \u540E\u7AEF\u4E0D\u652F\u6301 Skill API\uFF0C\u901A\u5E38\u662F\u524D\u7AEF\u5DF2\u66F4\u65B0\u4F46 botmux \u8FDB\u7A0B\u672A\u91CD\u542F\u3002\u8BF7\u91CD\u542F botmux \u540E\u5237\u65B0\u9875\u9762\u3002","skills.globalDefaults":"\u5168\u5C40 Skill \u6CE8\u5165\u914D\u7F6E","skills.globalProject":"\u5DE5\u4F5C\u533A Skill","skills.globalProjectOff":"\u5FFD\u7565\u5DE5\u4F5C\u533A Skill","skills.globalProjectOffHelp":"\u4EC5\u8BFB\u53D6\u5168\u5C40 CLI Skill \u548C botmux Skill","skills.globalProjectAll":"\u8BFB\u53D6\u5DE5\u4F5C\u533A Skill","skills.globalProjectAllHelp":`\u8BFB\u53D6 .agents/skills \u4E0E
19
- .botmux/skills`,"skills.globalDelivery":"Skill \u6CE8\u5165\u65B9\u5F0F","skills.bots":"Bot Skill \u914D\u7F6E","skills.botsHelp":"\u4E3A\u6BCF\u4E2A bot \u8BBE\u7F6E\u4F18\u5148\u62AB\u9732\u7684 Skill\u3002","skills.bot":"Bot","skills.cli":"CLI","skills.injection":"\u6CE8\u5165\u65B9\u5F0F","skills.status":"\u72B6\u6001","skills.dragHint":"\u4ECE\u5DE6\u4FA7\u62D6\u5165\u5373\u53EF\u5206\u914D\uFF1B\u628A Bot \u4E2D\u7684\u82AF\u7247\u62D6\u56DE\u5DE6\u4FA7\u5373\u53EF\u53D6\u6D88","skills.dragToRemove":"\u62D6\u56DE\u5DE6\u4FA7\u53D6\u6D88\u6B64\u5206\u914D","skills.unassignDropTitle":"\u62D6\u5230\u8FD9\u91CC\u53D6\u6D88\u5206\u914D","skills.unassignDropHint":"\u53EA\u4F1A\u4ECE {bot} \u79FB\u9664\u5F53\u524D\u9879\uFF0C\u4E0D\u4F1A\u5220\u9664 Skill \u6216\u4E13\u9879\u5305","skills.alreadyAssigned":"{item} \u5DF2\u5728\u8BE5 Bot \u7684\u914D\u7F6E\u4E2D","skills.botCount":"{count} \u4E2A Bot","skills.skillCount":"{count} \u4E2A Skill","skills.attach":"\u52A0\u5165\u4F18\u5148\u62AB\u9732","skills.detach":"\u79FB\u9664","skills.detachNamed":"\u79FB\u9664 {skill}","skills.delivery":"\u6CE8\u5165\u65B9\u5F0F","skills.deliveryAuto":"\u81EA\u52A8","skills.deliveryAutoHelp":"\u4F18\u5148\u7528 CLI \u539F\u751F\u901A\u9053\uFF1B\u4E0D\u652F\u6301\u65F6\u81EA\u52A8\u6539\u7528\u63D0\u793A\u8BCD\u6CE8\u5165","skills.deliveryPrompt":"\u63D0\u793A\u8BCD","skills.deliveryPromptHelp":"\u628A Skill \u6E05\u5355\u5199\u5165\u4F1A\u8BDD\u63D0\u793A\u8BCD\uFF0C\u517C\u5BB9\u6240\u6709 CLI","skills.deliveryNative":"\u539F\u751F","skills.deliveryNativeHelp":"\u53EA\u4EA4\u7ED9 CLI \u81EA\u5DF1\u7684 Skill \u673A\u5236\uFF0C\u4E0D\u505A\u63D0\u793A\u8BCD\u515C\u5E95","skills.projectMode":"\u5DE5\u4F5C\u533A Skills","skills.projectDefault":"\u8DDF\u968F\u5168\u5C40","skills.projectDefaultHelp":"\u4F7F\u7528\u5DE6\u4FA7\u9879\u76EE Skill \u9ED8\u8BA4\u503C","skills.projectOff":"\u4E0D\u8BFB\u53D6","skills.projectOffHelp":"\u8FD9\u4E2A bot \u4E0D\u8BFB\u53D6\u5DE5\u4F5C\u533A skill","skills.projectAll":"\u8BFB\u53D6","skills.projectAllHelp":"\u8FD9\u4E2A bot \u52A0\u5165\u5DE5\u4F5C\u533A skill \u5019\u9009","skills.priority":"\u4F18\u5148 skills","skills.noPriority":"\u672A\u914D\u7F6E\uFF0C\u4FDD\u6301 CLI \u9ED8\u8BA4\u884C\u4E3A","skills.pickerPlaceholder":"\u9009\u62E9\u4F18\u5148 Skill","skills.pickerSelectedCount":"\u5DF2\u9009\u62E9 {count} \u4E2A Skill","skills.pickerTriggerHint":"\u70B9\u51FB\u641C\u7D22\u6216\u8C03\u6574\u591A\u9009","skills.pickerSearchPlaceholder":"\u641C\u7D22 Skill \u540D\u79F0\u6216\u63CF\u8FF0","skills.pickerSelectionMeta":"\u5DF2\u9009 {selected} / \u5171 {total}","skills.pickerClear":"\u6E05\u7A7A","skills.pickerNoResults":"\u6CA1\u6709\u5339\u914D\u7684 Skill","skills.saveSelection":"\u4FDD\u5B58\u9009\u62E9","skills.cancel":"\u53D6\u6D88","skills.saving":"\u4FDD\u5B58\u4E2D\u2026","skills.policySaved":"\u4F18\u5148 Skill \u5DF2\u4FDD\u5B58","skills.dangling":"\u672A\u5B89\u88C5","skills.removeInUse":'Skill "{skill}" \u4ECD\u88AB\u4EE5\u4E0B\u914D\u7F6E\u5F15\u7528\uFF1A{refs}\u3002\u5220\u9664\u53EA\u4F1A\u79FB\u9664 registry \u6587\u4EF6\uFF0C\u4E0D\u4F1A\u81EA\u52A8\u6E05\u7406\u5F15\u7528\u3002\u7EE7\u7EED\u5220\u9664\uFF1F',"skills.saved":"\u5DF2\u4FDD\u5B58","skills.failed":"\u5931\u8D25","skills.jobRunning":"\u5904\u7406\u4E2D...","skills.refresh":"\u5237\u65B0","skills.tabPacks":"\u4E13\u9879\u5305","skills.tabLibrary":"Skill \u5E93","skills.tabBots":"Bot \u5206\u914D","skills.tabDelivery":"\u6295\u9012\u8BBE\u7F6E","skills.packs":"\u4E13\u9879\u5305","skills.packCount":"{count} \u4E2A","skills.packsHelp":"\u628A\u4E00\u7EC4\u5DF2\u5B89\u88C5\u80FD\u529B\u547D\u540D\u4FDD\u5B58\uFF0C\u518D\u5206\u914D\u7ED9\u591A\u4E2A Bot\u3002","skills.packsEmpty":"\u8FD8\u6CA1\u6709\u4E13\u9879\u5305\u3002\u5148\u5B89\u88C5 Skill\uFF0C\u518D\u521B\u5EFA\u4E13\u9879\u5305\u3002","skills.packCreate":"\u65B0\u5EFA\u4E13\u9879\u5305","skills.packEdit":"\u7F16\u8F91\u4E13\u9879\u5305","skills.packId":"ID\uFF08slug\uFF0C\u521B\u5EFA\u540E\u4E0D\u53EF\u6539\uFF09","skills.packName":"\u540D\u79F0","skills.packDescription":"\u63CF\u8FF0","skills.packTags":"\u6807\u7B7E\uFF08\u9017\u53F7\u5206\u9694\uFF09","skills.packInclude":"\u5305\u542B\u7684 Skill","skills.packHealthComplete":"\u5B8C\u6574","skills.packHealthMissing":"\u7F3A\u5931 {count} \u9879","skills.packHealthUnassigned":"\u672A\u5206\u914D","skills.packRefCount":"{count} \u4E2A Bot","skills.packRefs":"\u5DF2\u5206\u914D Bot","skills.packMissing":"\u7F3A\u5931 Skill","skills.packIdPlaceholder":"my-pack-slug","skills.packTagsPlaceholder":"\u6807\u7B7E1, \u6807\u7B7E2","skills.packDeleted":"\u5DF2\u5220\u9664\u201C{name}\u201D","skills.packDeleteConfirmTitle":"\u5220\u9664\u4E13\u9879\u5305","skills.packDeleteConfirmBody":"\u4E13\u9879\u5305\u201C{name}\u201D\u4ECD\u88AB Bot \u5F15\u7528\u3002\u5F3A\u5236\u5220\u9664\u53EA\u4F1A\u5220\u9664\u4E13\u9879\u5305\uFF0C\u4E0D\u4F1A\u81EA\u52A8\u6E05\u7406\u8FD9\u4E9B Bot policy \u4E2D\u7684 pack: \u5F15\u7528\uFF0C\u4E5F\u4E0D\u4F1A\u5378\u8F7D\u6210\u5458 Skill\uFF1B\u5220\u9664\u540E\u8FD9\u4E9B\u5F15\u7528\u5C06\u663E\u793A\u4E3A\u7F3A\u5931\u3002","skills.packDeleteAffectedBots":"\u53D7\u5F71\u54CD\u7684 Bot","skills.packDeleteForceWarning":"\u6B64\u64CD\u4F5C\u4E0D\u53EF\u64A4\u9500\uFF0C\u53D7\u5F71\u54CD\u7684 Bot \u5C06\u5728\u65B0\u4F1A\u8BDD\u4E2D\u5931\u53BB\u8BE5\u5305\u63D0\u4F9B\u7684\u80FD\u529B\u3002","skills.installWizard":"\u5B89\u88C5\u5411\u5BFC","skills.wizSource":"\u9009\u62E9\u6765\u6E90","skills.wizDetails":"\u586B\u5199\u8BE6\u60C5","skills.wizInstall":"\u786E\u8BA4\u5B89\u88C5","skills.wizNext":"\u4E0B\u4E00\u6B65","skills.wizBack":"\u4E0A\u4E00\u6B65","skills.wizConfirm":"\u786E\u8BA4\u6765\u6E90\u548C\u9009\u9879\u540E\u70B9\u51FB\u5B89\u88C5\u3002","skills.botInjection":"Per-Bot \u6CE8\u5165\u5F00\u5173","skills.botInjectionHelp":"\u53EA\u5F71\u54CD codex/gemini \u7B49\u4F7F\u7528\u5168\u5C40 skills \u76EE\u5F55\u7684 CLI\u3002","skills.botInjectionNote":"\u6CE8\u610F\uFF1A\u8FD9\u662F per-bot \u5F00\u5173\uFF08global/prompt/off\uFF09\uFF0C\u4E0E\u4E0A\u65B9\u5168\u5C40\u300C\u6CE8\u5165\u65B9\u5F0F\u300D\uFF08auto/prompt/native\uFF09\u662F\u4E24\u5957\u72EC\u7ACB\u8BBE\u7F6E\uFF0C\u4E0D\u8981\u6DF7\u4E3A\u4E00\u8C08\u3002","skills.injectionGlobal":"\u5168\u5C40\u76EE\u5F55","skills.injectionGlobalHelp":"\u6295\u9012\u5230\u8BE5 CLI \u7684\u5168\u5C40 skills \u76EE\u5F55","skills.postInstallPackTitle":"\u4FDD\u5B58\u4E3A\u4E13\u9879\u5305","skills.postInstallPackHelp":"\u5DF2\u5B89\u88C5 {count} \u4E2A Skill\uFF0C\u53EF\u5C06\u672C\u6B21\u7ED3\u679C\u4FDD\u5B58\u4E3A\u4E00\u4E2A\u53EF\u590D\u7528\u7684\u4E13\u9879\u5305\u3002","skills.postInstallPackSkills":"\u672C\u6B21\u5B89\u88C5\u7684 Skill","skills.postInstallPackSkip":"\u6682\u4E0D\u521B\u5EFA","skills.postInstallPackCreate":"\u521B\u5EFA\u5E76\u67E5\u770B\u4E13\u9879\u5305","skills.injectionPrompt":"\u63D0\u793A\u8BCD","skills.injectionPromptHelp":"\u6CE8\u5165\u4F1A\u8BDD\u63D0\u793A\u8BCD\uFF0C\u4E0D\u5199\u5165\u5168\u5C40\u76EE\u5F55","skills.injectionOff":"\u5173\u95ED","skills.injectionOffHelp":"\u53EA\u7559\u63D0\u793A+botmux --help","skills.scopeGlobal":"\uFF08\u5168\u5C40\uFF09","skills.botEdit":"\u7F16\u8F91 Bot","skills.resolvedPreview":"\u5C55\u5F00\u9884\u89C8\uFF08\u53BB\u91CD\u540E\uFF09","skills.packChips":"\u4E13\u9879\u5305","skills.individualSkills":"\u5355\u72EC Skill","skills.finalCount":"\u6700\u7EC8\u80FD\u529B","skills.health":"\u72B6\u6001","skills.healthOk":"\u6B63\u5E38","skills.healthDefault":"\u9ED8\u8BA4","skills.healthMissing":"\u7F3A\u5931 {count} \u9879","skills.healthPackMissing":"\u4E13\u9879\u5305\u4E0D\u5B58\u5728","skills.healthUnknown":"\u672A\u77E5\uFF08\u4E13\u9879\u5305\u6570\u636E\u672A\u52A0\u8F7D\uFF09","skills.packsUnknown":"\u4E13\u9879\u5305\u6570\u636E\u6682\u4E0D\u53EF\u7528\uFF08\u63A5\u53E3\u52A0\u8F7D\u5931\u8D25\uFF09\uFF0C\u65E0\u6CD5\u5224\u65AD\u5065\u5EB7\u72B6\u6001","botDefaults.title":"Bot \u914D\u7F6E","botDefaults.openConsole":"\u98DE\u4E66\u540E\u53F0","botDefaults.metaOnline":"\u5728\u7EBF \xB7 daemon \u6B63\u5E38","botDefaults.search":"\u641C\u7D22 bot \u540D / app id","botDefaults.refresh":"\u5237\u65B0","botDefaults.rosterCount":"{count} \u4E2A\u673A\u5668\u4EBA","botDefaults.rosterFiltered":"\u5171 {total} \u4E2A","botDefaults.tabNavigation":"Bot \u914D\u7F6E\u5206\u7C7B","botDefaults.tabCommon":"\u5E38\u7528","botDefaults.tabSessions":"\u4F1A\u8BDD","botDefaults.tabSecurity":"\u6743\u9650\u4E0E\u5B89\u5168","botDefaults.tabCards":"\u6D88\u606F\u5361\u7247","botDefaults.tabAdvanced":"\u9AD8\u7EA7","botDefaults.tabHint":"\u5207\u6362\u5206\u7C7B\u4E0D\u4F1A\u4E22\u5931\u672A\u4FDD\u5B58\u8F93\u5165","botDefaults.sectionOncall":"\u65B0\u7FA4 Oncall","botDefaults.sectionBrand":"\u5361\u7247\u7B7E\u540D","botDefaults.renameTitle":"\u4FEE\u6539\u673A\u5668\u4EBA\u540D\u79F0","botDefaults.renameAction":"\u4FEE\u6539\u540D\u79F0","botDefaults.renameSave":"\u4FDD\u5B58","botDefaults.renameCancel":"\u53D6\u6D88","botDefaults.renameEmpty":"\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A","botDefaults.renaming":"\u6B63\u5728\u540C\u6B65\u5230\u98DE\u4E66\u5F00\u653E\u5E73\u53F0\uFF08\u6539\u540D\u5E76\u53D1\u5E03\u65B0\u7248\u672C\uFF0C\u7EA6 10 \u79D2\uFF09\u2026","botDefaults.renameOkFeishu":"\u5DF2\u4FEE\u6539\u98DE\u4E66\u5E94\u7528\u540D\uFF0C\u7FA4\u5185\u540D\u79F0\u5DF2\u751F\u6548","botDefaults.renameLocalOnly":"\u98DE\u4E66\u4FA7\u6539\u540D\u5931\u8D25\uFF08{reason}\uFF09\uFF0C\u5DF2\u4EC5\u66F4\u65B0 dashboard \u5C55\u793A\u540D","botDefaults.renameWarn.no_session":"\u670D\u52A1\u5668\u7F3A\u5C11\u98DE\u4E66 Web \u767B\u5F55\u6001\uFF0C\u8BF7\u5728\u670D\u52A1\u5668\u8FD0\u884C botmux setup \u91CD\u65B0\u626B\u7801","botDefaults.renameWarn.session_expired":"\u98DE\u4E66 Web \u767B\u5F55\u6001\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u5728\u670D\u52A1\u5668\u8FD0\u884C botmux setup \u91CD\u65B0\u626B\u7801","botDefaults.renameWarn.no_access":"\u5F53\u524D\u7F13\u5B58\u7684\u98DE\u4E66\u8D26\u53F7\u4E0D\u662F\u8BE5\u5E94\u7528\u7684\u534F\u4F5C\u8005","botDefaults.renameWarn.unsupported_brand":"\u56FD\u9645\u7248 Lark \u79DF\u6237\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u6539\u540D","botDefaults.renameFailed":"\u6539\u540D\u5931\u8D25\uFF1A{error}","botDefaults.avatarTitle":"\u4FEE\u6539\u673A\u5668\u4EBA\u5934\u50CF","botDefaults.avatarUploading":"\u6B63\u5728\u540C\u6B65\u5230\u98DE\u4E66\u5F00\u653E\u5E73\u53F0\uFF08\u4E0A\u4F20\u5934\u50CF\u5E76\u53D1\u5E03\u65B0\u7248\u672C\uFF0C\u7EA6 10 \u79D2\uFF09\u2026","botDefaults.avatarOkFeishu":"\u5DF2\u4FEE\u6539\u98DE\u4E66\u5E94\u7528\u5934\u50CF\uFF0C\u7FA4\u5185\u5934\u50CF\u5DF2\u751F\u6548","botDefaults.avatarFailed":"\u6539\u5934\u50CF\u5931\u8D25\uFF1A{error}","botDefaults.avatarBadImage":"\u65E0\u6CD5\u8BFB\u53D6\u8FD9\u5F20\u56FE\u7247\uFF0C\u6362\u4E00\u5F20 PNG / JPG \u518D\u8BD5","botDefaults.avatarWarn.no_session":"\u670D\u52A1\u5668\u7F3A\u5C11\u98DE\u4E66 Web \u767B\u5F55\u6001\uFF0C\u8BF7\u5728\u670D\u52A1\u5668\u8FD0\u884C botmux setup \u91CD\u65B0\u626B\u7801","botDefaults.avatarWarn.session_expired":"\u98DE\u4E66 Web \u767B\u5F55\u6001\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u5728\u670D\u52A1\u5668\u8FD0\u884C botmux setup \u91CD\u65B0\u626B\u7801","botDefaults.avatarWarn.no_access":"\u5F53\u524D\u7F13\u5B58\u7684\u98DE\u4E66\u8D26\u53F7\u4E0D\u662F\u8BE5\u5E94\u7528\u7684\u534F\u4F5C\u8005","botDefaults.avatarWarn.unsupported_brand":"\u56FD\u9645\u7248 Lark \u79DF\u6237\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u6539\u5934\u50CF","feishuLogin.entry":"\u626B\u7801\u767B\u5F55\u98DE\u4E66","feishuLogin.title":"\u626B\u7801\u5237\u65B0\u98DE\u4E66\u767B\u5F55\u6001","feishuLogin.starting":"\u6B63\u5728\u83B7\u53D6\u4E8C\u7EF4\u7801\u2026","feishuLogin.scanHint":"\u7528\u98DE\u4E66 App \u626B\u7801\u5E76\u786E\u8BA4\u767B\u5F55\uFF0C\u5373\u53EF\u6388\u6743\u6539\u540D\uFF08\u767B\u5F55\u6001\u4EC5\u5B58\u672C\u673A\uFF0C\u4E0E setup \u590D\u7528\uFF09","feishuLogin.success":"\u2713 \u767B\u5F55\u6210\u529F\uFF0C\u6B63\u5728\u4E3A\u4F60\u91CD\u8BD5\u6539\u540D\u2026","feishuLogin.failed":"\u767B\u5F55\u5931\u8D25\uFF1A{reason}","feishuLogin.retry":"\u91CD\u65B0\u83B7\u53D6\u4E8C\u7EF4\u7801","feishuLogin.close":"\u5173\u95ED","feishuLogin.qrAlt":"\u98DE\u4E66\u767B\u5F55\u4E8C\u7EF4\u7801","botDefaults.sectionAgent":"Agent \u914D\u7F6E","botDefaults.agentCli":"CLI","botDefaults.agentMissingOption":"{label}\uFF08\u672A\u5B89\u88C5\uFF1A{command}\uFF09","botDefaults.agentMissingHint":"\u5F53\u524D daemon PATH \u627E\u4E0D\u5230 {command}\uFF1B\u4FDD\u5B58\u540E\u65B0\u4F1A\u8BDD\u65E0\u6CD5\u542F\u52A8\uFF0C\u8BF7\u5148\u5B89\u88C5\u6216\u4FEE\u6B63\u8DEF\u5F84\u3002","botDefaults.agentModel":"\u6A21\u578B","botDefaults.agentModelPlaceholder":"\u7559\u7A7A\u4F7F\u7528\u8BE5 CLI \u9ED8\u8BA4\u6A21\u578B","botDefaults.agentHelp":"\u6A21\u578B\u4FEE\u6539\u53EA\u5F71\u54CD\u65B0\u4F1A\u8BDD\uFF1B\u5207\u6362 CLI\u3001Runtime \u6216 Wrapper \u4F1A\u7ACB\u5373\u5173\u95ED\u4ECD\u4F7F\u7528\u65E7\u542F\u52A8\u8EAB\u4EFD\u7684\u6D3B\u8DC3\u4F1A\u8BDD\uFF0C\u907F\u514D\u540E\u7EED\u6062\u590D\u5230\u9519\u8BEF\u7684 CLI\u3002","botDefaults.agentSave":"\u4FDD\u5B58 Agent \u914D\u7F6E","botDefaults.runtimeTitle":"Codex \u8FD0\u884C\u65F6","botDefaults.runtimeHelp":"\u9009\u62E9\u5B98\u65B9 Codex\uFF0C\u6216\u914D\u7F6E\u4E00\u4E2A\u4FDD\u6301 Codex \u547D\u4EE4\u884C\u3001resume \u548C\u8F93\u51FA\u534F\u8BAE\u517C\u5BB9\u7684\u81EA\u5B9A\u4E49\u53D1\u884C\u7248\u3002","botDefaults.runtimeOfficial":"Official Codex","botDefaults.runtimeCustom":"\u81EA\u5B9A\u4E49\u517C\u5BB9\u7248","botDefaults.runtimeOfficialNote":"\u4F7F\u7528 daemon PATH \u4E2D\u7684 codex\uFF0C\u5E76\u6309\u5B98\u65B9 Codex \u7684\u7248\u672C\u4E0E\u66F4\u65B0\u6765\u6E90\u68C0\u67E5\u3002","botDefaults.runtimeLegacyNote":"\u68C0\u6D4B\u5230\u65E7\u7248 CLI \u5165\u53E3\uFF08\u53EA\u8BFB\u517C\u5BB9\u6001\uFF09\u3002\u53EA\u4FEE\u6539\u6A21\u578B\u4F1A\u4FDD\u7559\u5B83\uFF1B\u9009\u62E9 Official Codex \u4F1A\u6E05\u9664\u65E7\u5165\u53E3\uFF0C\u9009\u62E9\u201C\u81EA\u5B9A\u4E49\u517C\u5BB9\u7248\u201D\u53EF\u8FC1\u79FB\u4E3A\u7ED3\u6784\u5316 Runtime\u3002","botDefaults.runtimeLegacyPath":"\u65E7\u7248 CLI \u5165\u53E3","botDefaults.runtimeCustomNote":"\u590D\u7528 Codex adapter\uFF1B\u81EA\u5B9A\u4E49\u7248\u672C\u3001\u53EF\u6267\u884C\u6587\u4EF6\u548C\u66F4\u65B0\u7B56\u7565\u5747\u72EC\u7ACB\u4E8E\u5B98\u65B9 Codex\u3002","botDefaults.runtimeId":"Runtime ID","botDefaults.runtimeIdHelp":"\u7A33\u5B9A\u4E14\u552F\u4E00\u7684\u53D1\u884C\u7248\u6807\u8BC6\uFF0C\u7528\u4E8E\u4F1A\u8BDD\u5FEB\u7167\u548C\u66F4\u65B0\u72B6\u6001\u5F52\u5C5E\uFF1B\u540E\u7EED\u4E0D\u8981\u968F\u5C55\u793A\u540D\u53D8\u66F4\u3002","botDefaults.runtimeDisplayName":"\u5C55\u793A\u540D\u79F0","botDefaults.runtimeDisplayNamePlaceholder":"\u7559\u7A7A\u4F7F\u7528 Runtime ID","botDefaults.runtimeExecutable":"\u53EF\u6267\u884C\u6587\u4EF6","botDefaults.runtimeExecutableHelp":"\u586B\u5199 daemon \u53EF\u6267\u884C\u7684\u5355\u4E2A\u547D\u4EE4\u540D\u6216\u7EDD\u5BF9\u8DEF\u5F84\uFF0C\u4E0D\u8981\u9644\u5E26\u53C2\u6570\u3002","botDefaults.runtimeUpdateProvider":"\u66F4\u65B0\u6765\u6E90","botDefaults.runtimeProviderAuto":"auto \u2014 \u81EA\u52A8\u63A2\u6D4B\u552F\u4E00 npm \u6765\u6E90","botDefaults.runtimeProviderSelf":"self \u2014 \u53EA\u4F7F\u7528 runtime doctor","botDefaults.runtimeProviderNpm":"npm \u2014 \u6307\u5B9A npm package","botDefaults.runtimeProviderNone":"none \u2014 \u4E0D\u68C0\u67E5\u66F4\u65B0","botDefaults.runtimePackageName":"npm package","botDefaults.runtimePackageHelp":"\u4F8B\u5982 @vendor/codex\uFF1B\u4EC5\u7528\u4E8E\u67E5\u8BE2\u8FD9\u4E2A\u53D1\u884C\u7248\u81EA\u5DF1\u7684 latest \u7248\u672C\u3002","botDefaults.runtimeRequired":"Runtime ID \u548C\u53EF\u6267\u884C\u6587\u4EF6\u4E0D\u80FD\u4E3A\u7A7A\u3002","botDefaults.runtimePackageRequired":"\u9009\u62E9 npm \u66F4\u65B0\u6765\u6E90\u65F6\u5FC5\u987B\u586B\u5199 package\u3002","botDefaults.runtimeProbeOk":"\u8FD0\u884C\u65F6\u63A2\u9488\u901A\u8FC7\uFF1Av{version} \xB7 \u66F4\u65B0\u6765\u6E90 {provider}","botDefaults.runtimeProbeMissing":"\u670D\u52A1\u5668\u672A\u8FD4\u56DE\u8FD0\u884C\u65F6\u63A2\u9488\u7ED3\u679C\uFF1B\u8BF7\u5237\u65B0\u540E\u786E\u8BA4\u914D\u7F6E\u662F\u5426\u751F\u6548\u3002","botDefaults.agentClosedCount":"\u5DF2\u5173\u95ED {count} \u4E2A\u4F7F\u7528\u65E7 CLI / Runtime / Wrapper \u7684\u6D3B\u8DC3\u4F1A\u8BDD","botDefaults.skillInjection":"botmux skills \u6CE8\u5165\u65B9\u5F0F","botDefaults.skillInjectionDynamic":"\u52A8\u6001\u6CE8\u5165\uFF08--plugin-dir\uFF0C\u9010\u4F1A\u8BDD\uFF09","botDefaults.skillInjectionDynamicUnsupported":"\u52A8\u6001\u6CE8\u5165\uFF08\u8BE5 CLI \u4E0D\u652F\u6301\uFF09","botDefaults.skillInjectionPrompt":"prompt \u2014 \u6CE8\u5165\u4F1A\u8BDD prompt\uFF0C\u4E0D\u843D\u5168\u5C40\u76D8","botDefaults.skillInjectionGlobal":"global \u2014 \u88C5\u8FDB CLI \u5168\u5C40 skills \u76EE\u5F55","botDefaults.skillInjectionOff":"off \u2014 \u53EA\u7ED9 botmux --help \u5F15\u5BFC","botDefaults.skillInjectionHelpDynamic":"\u8BE5 CLI \u652F\u6301 --plugin-dir \u52A8\u6001\u6CE8\u5165\u3002skills \u4EC5\u5F53\u524D\u4F1A\u8BDD\u53EF\u89C1\uFF0C\u4E0D\u5199\u5165\u5168\u5C40\u76EE\u5F55\uFF0C\u65E0\u9700\u989D\u5916\u914D\u7F6E\u3002","botDefaults.skillInjectionHelp":"\u9009\u62E9 botmux skills \u7684\u6CE8\u5165\u65B9\u5F0F\uFF1Aprompt \u4E3A\u9ED8\u8BA4\u65B9\u5F0F\uFF0C\u4F1A\u5728\u4F1A\u8BDD\u5F00\u59CB\u65F6\u5199\u5165\u63D0\u793A\u8BCD\u4E14\u4E0D\u6539\u5168\u5C40\u76EE\u5F55\uFF1Bglobal \u5B89\u88C5\u5230 CLI \u5168\u5C40 skills \u76EE\u5F55\uFF1Boff \u4EC5\u4FDD\u7559 botmux --help \u5F15\u5BFC\u3002\u6539\u52A8\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF0C\u5207\u6362 global \u9700\u91CD\u542F daemon\u3002","botDefaults.agentSaved":"\u5DF2\u4FDD\u5B58\uFF08\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF09","botDefaults.warning":"\u5F00\u542F\u540E\uFF0C\u6CA1\u6709 oncall binding \u7684\u7FA4\u4F1A\u5728\u4E0B\u6B21\u5F00\u65B0\u8BDD\u9898\u65F6\u81EA\u52A8\u7ED1\u5B9A\u5230\u8BE5\u76EE\u5F55\uFF1B\u624B\u52A8\u7ED1\u5B9A\u6216\u624B\u52A8\u89E3\u7ED1\u8FC7\u7684\u7FA4\u4E0D\u4F1A\u88AB\u8986\u76D6\u3002","botDefaults.empty":"\u6CA1\u6709\u5728\u7EBF bot\u3002\u5148 botmux restart \u8BA9 daemon \u4E0A\u7EBF\u3002","botDefaults.defaultOncall":"\u9ED8\u8BA4\u8FDB\u5165 oncall \u6A21\u5F0F","botDefaults.defaultOncallHelp":"\u6240\u6709\u672A\u7ED1\u5B9A\u7684\u7FA4\u4E0B\u6B21\u5F00\u8BDD\u9898\u81EA\u52A8\u7ED1\u5B9A","botDefaults.workingDir":"\u9ED8\u8BA4\u5DE5\u4F5C\u76EE\u5F55","botDefaults.lastEnabled":"\u4E0A\u6B21\u542F\u7528\u65F6\u95F4","botDefaults.autobound":"\u5DF2\u81EA\u52A8\u7ED1\u5B9A {count} \u4E2A\u7FA4","botDefaults.save":"\u4FDD\u5B58","botDefaults.required":"\u9009\u62E9\u300C\u4EC5\u9ED8\u8BA4\u76EE\u5F55\u300D\u6216\u300COncall \u6A21\u5F0F\u300D\u65F6\u5FC5\u987B\u586B\u5DE5\u4F5C\u76EE\u5F55","botDefaults.sectionWorkingDir":"\u9ED8\u8BA4\u5DE5\u4F5C\u76EE\u5F55","botDefaults.workingDirMode":"\u6A21\u5F0F","botDefaults.workingDirField":"\u76EE\u5F55","botDefaults.workingDirModeOff":"\u5173\u95ED\uFF08\u65B0\u4F1A\u8BDD\u5F39\u300C\u9009\u4ED3\u5E93\u300D\u5361\uFF09","botDefaults.workingDirModeDefault":"\u4EC5\u9ED8\u8BA4\u76EE\u5F55\uFF08\u4E0D\u6539\u6743\u9650\uFF09","botDefaults.workingDirModeOncall":"Oncall \u6A21\u5F0F\uFF08\u7FA4\u5185\u5F00\u653E\u5BF9\u8BDD\uFF09","botDefaults.workingDirModeHelp":"\u8BBE\u7F6E\u65B0\u4F1A\u8BDD\u542F\u52A8\u76EE\u5F55\uFF1A\u5173\u95ED=\u8D70\u4ED3\u5E93\u9009\u62E9\uFF1B\u4EC5\u9ED8\u8BA4\u76EE\u5F55=\u76F4\u63A5\u8FDB\u5165\u8BE5\u76EE\u5F55\u4E14\u4E0D\u6539\u53D8\u6743\u9650\uFF1BOncall=\u9ED8\u8BA4\u76EE\u5F55 + \u65B0\u666E\u901A\u7FA4\u81EA\u52A8\u5F00\u653E\u5BF9\u8BDD\u3002\u6539\u52A8\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\u3002","botDefaults.autoWorktree":"\u6BCF\u4E2A\u65B0\u4F1A\u8BDD\u81EA\u52A8\u521B\u5EFA worktree","botDefaults.autoWorktreeHelp":"\u4EC5\u7528\u4E8E\u300C\u4EC5\u9ED8\u8BA4\u76EE\u5F55\u300D\u3002\u65B0\u4F1A\u8BDD\u4F1A\u5728\u9ED8\u8BA4 git \u4ED3\u5E93\u4E2D\u521B\u5EFA\u72EC\u7ACB worktree\uFF0C\u907F\u514D\u5E76\u53D1\u4F1A\u8BDD\u4E92\u76F8\u5F71\u54CD\uFF1B\u5931\u8D25\u65F6\u56DE\u9000\u5230\u9ED8\u8BA4\u76EE\u5F55\u3002/close \u4E0D\u4F1A\u81EA\u52A8\u5220\u9664 worktree\u3002","botDefaults.workingDirSaved":"\u5DF2\u4FDD\u5B58\uFF08\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF09","botDefaults.brandLabel":"\u4E2A\u6027\u7B7E\u540D\uFF08\u5361\u7247\u9875\u811A\uFF09","botDefaults.brandLabelHelp":"\u8BBE\u7F6E\u8BE5 bot \u5361\u7247\u9875\u811A\u7B7E\u540D\u3002\u7559\u7A7A=\u4E0D\u663E\u793A\uFF1B\u586B\u5199=\u81EA\u5B9A\u4E49 Markdown\uFF1B\u6062\u590D\u9ED8\u8BA4=\u663E\u793A botmux\u3002\u652F\u6301\u53D8\u91CF\uFF1A{cwdName}=\u4F1A\u8BDD\u5F53\u524D\u76EE\u5F55\u663E\u793A\u540D\uFF08\u8BE5\u76EE\u5F55 .botmux-dir.json \u7684 name\uFF0C\u7F3A\u7701\u7528\u76EE\u5F55\u540D\uFF09\u3001{cwd}=\u5B8C\u6574\u8DEF\u5F84\u3001{cwdUrl}=\u8BE5\u76EE\u5F55 .botmux-dir.json \u7684 url\uFF1B\u7A7A\u94FE\u63A5\u81EA\u52A8\u964D\u7EA7\u4E3A\u7EAF\u6587\u672C\u3002\u4F8B\uFF1A[{cwdName}]({cwdUrl})","botDefaults.brandLabelPlaceholder":"\u9ED8\u8BA4\uFF1Abotmux\uFF08\u7559\u7A7A\u5219\u4E0D\u663E\u793A\uFF09","botDefaults.sectionSandbox":"\u6587\u4EF6\u6C99\u76D2\uFF08oncall\uFF09","botDefaults.sandboxToggle":"\u5F00\u542F\u6587\u4EF6\u6C99\u76D2","botDefaults.sandboxHelp":"\u5F00\u542F\u540E\uFF0C\u8BE5 bot \u7684\u6BCF\u4E2A\u4F1A\u8BDD\u90FD\u8DD1\u5728\u6C99\u76D2\u91CC\uFF1Aagent \u80FD\u5728\u9879\u76EE\u76EE\u5F55\u5185\u6B63\u5E38\u8BFB\u5199\u5E72\u6D3B\uFF0C\u4F46\u78B0\u4E0D\u5230\u9879\u76EE\u5916\u4F60\u78C1\u76D8\u4E0A\u7684\u771F\u5B9E\u6587\u4EF6\u3001\u5BC6\u94A5\u3001\u522B\u7684\u4F1A\u8BDD\u6570\u636E\u2014\u2014\u5BF9\u9879\u76EE\u5916\u7684\u5199\u5165\u4F1A\u88AB\u9694\u79BB/\u62E6\u622A\u3002\u9002\u5408\u628A\u673A\u5668\u4EBA\u5206\u4EAB\u7ED9\u534A\u53D7\u4FE1\u4EFB\u7684\u4EBA\uFF08oncall\uFF09\u3002Linux \u7528 bwrap\u3001macOS \u7528 Seatbelt\uFF0C\u4E24\u7AEF\u4FDD\u62A4\u6548\u679C\u4E00\u81F4\uFF1B\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\u3002","botDefaults.sandboxSaved":"\u5DF2\u4FDD\u5B58\uFF08\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF09","botDefaults.sandboxReadIsoOn":"\u589E\u5F3A CLI \u6570\u636E\u9694\u79BB\uFF1A\u8BE5 bot \u7684 CLI \u51ED\u8BC1\u3001\u914D\u7F6E\u4E0E\u4F1A\u8BDD\u6570\u636E\u4F1A\u91CD\u5B9A\u5411\u5230\u4E13\u5C5E\u76EE\u5F55\uFF0C\u4E0E\u5176\u5B83 bot \u5206\u5F00\uFF08claude-code / codex\uFF0C\u4E14\u672A\u914D wrapper \u7F51\u5173\uFF09\u3002","botDefaults.sandboxReadIsoOff":"\u57FA\u7840\u6587\u4EF6\u6C99\u76D2\u4ECD\u63D0\u4F9B deny-by-default \u7684\u8BFB\u5199\u9694\u79BB\uFF1B\u5F53\u524D CLI \u6216 wrapper \u914D\u7F6E\u4E0D\u652F\u6301\u5C06 CLI \u5168\u5C40\u6570\u636E\u91CD\u5B9A\u5411\u5230\u672C bot \u4E13\u5C5E\u76EE\u5F55\u3002","botDefaults.sectionSandboxPaths":"\u6C99\u76D2\u76EE\u5F55\u767D\u540D\u5355","botDefaults.sbxPathsHelp":"deny-by-default\uFF1A\u9ED8\u8BA4\u4EC0\u4E48\u90FD\u770B\u4E0D\u5230\uFF0C\u53EA\u6709\u4E0B\u9762\u663E\u5F0F\u653E\u884C\u7684\u76EE\u5F55\u624D\u53EF\u89C1\u3002\u6BCF\u4E2A\u76EE\u5F55\u4E09\u6001\u5FAA\u73AF\uFF1A\u7EE7\u627F\u7236\u7EA7 \u2192 \u53EF\u5199 \u2192 \u53EA\u8BFB \u2192 \u5C01\u7981\u3002\u6309\u6700\u957F\u524D\u7F00\u751F\u6548\uFF0C\u53EF\u4EFB\u610F\u5D4C\u5957\uFF08\u53EF\u5199\u76EE\u5F55\u91CC\u6316\u5C01\u7981\u6D1E\u3001\u6D1E\u91CC\u518D\u5F00\u53EF\u5199\u7A97\uFF09\u3002\u6539\u52A8\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\u3002","botDefaults.sbxPathsSaved":"\u5DF2\u4FDD\u5B58\uFF08\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF09","botDefaults.sbxPathsSave":"\u4FDD\u5B58\u7B56\u7565","botDefaults.sbxPathsTextMode":"\u5207\u5230\u6587\u672C\u6A21\u5F0F\uFF08\u53EF\u590D\u5236\u5206\u4EAB\uFF09","botDefaults.sbxPathsTreeMode":"\u5207\u56DE\u76EE\u5F55\u6811","botDefaults.sbxRw":"\u53EF\u5199","botDefaults.sbxRo":"\u53EA\u8BFB","botDefaults.sbxDeny":"\u5C01\u7981","botDefaults.sbxNone":"\u4E0D\u53EF\u89C1","botDefaults.sbxInherit":"\u7EE7\u627F","botDefaults.sbxNoSubdirs":"\uFF08\u65E0\u5B50\u76EE\u5F55\uFF09","botDefaults.sbxTestPlaceholder":"\u8F93\u5165\u8DEF\u5F84\u6D4B\u8BD5\u5B9E\u9645\u751F\u6548\u8BBF\u95EE\uFF0C\u5982 ~/my-data/secrets/x","botDefaults.sectionBackend":"\u4F1A\u8BDD\u540E\u7AEF","botDefaults.backendLabel":"\u540E\u7AEF\u7C7B\u578B","botDefaults.backendHelp":"\u8BE5 bot \u65B0\u4F1A\u8BDD\u4F7F\u7528\u7684\u4F1A\u8BDD\u540E\u7AEF\uFF1B\u6539\u52A8\u5B9E\u65F6\u751F\u6548\u4E8E\u65B0\u4F1A\u8BDD\uFF0C\u8FD0\u884C\u4E2D\u7684\u4F1A\u8BDD\u4ECD\u7528\u5176\u542F\u52A8\u65F6\u7684\u540E\u7AEF\u3001\u4E0D\u53D7\u5F71\u54CD\u3002tmux \u652F\u6301 adopt / Web \u7EC8\u7AEF\uFF1Bherdr \u6258\u7BA1\u6301\u4E45\u4F1A\u8BDD\uFF1Bzmx >= 0.7.0 \u4F7F\u7528 tail \u53D8\u5316\u4FE1\u53F7 + history \u6743\u5A01\u7EAF\u6587\u672C\u5C4F\u5E55 + send \u8F93\u5165\uFF08\u65E0 Web TUI\uFF09\uFF1Bzellij \u5B9E\u9A8C\u6027\uFF1Bpty \u6700\u8F7B\u91CF\u4F46\u4E0D\u8DE8 daemon \u91CD\u542F\u5B58\u6D3B\u3002\u201C\u81EA\u52A8\u201D\u8DDF\u968F\u5168\u5C40\u9ED8\u8BA4\u3002","botDefaults.backendAuto":"\u81EA\u52A8\uFF08\u8DDF\u968F\u5168\u5C40\u9ED8\u8BA4\uFF09","botDefaults.backendTmux":"tmux","botDefaults.backendHerdr":"herdr","botDefaults.backendZellij":"zellij","botDefaults.backendZmx":"zmx","botDefaults.backendPty":"pty","botDefaults.backendSaved":"\u5DF2\u4FDD\u5B58\uFF08\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF09","botDefaults.brandSave":"\u4FDD\u5B58\u7B7E\u540D","botDefaults.brandReset":"\u6062\u590D\u9ED8\u8BA4","botDefaults.brandStateDefault":"\u5F53\u524D\uFF1A\u9ED8\u8BA4 botmux","botDefaults.brandStateOff":"\u5F53\u524D\uFF1A\u5DF2\u5173\u95ED","botDefaults.brandStateCustom":"\u5F53\u524D\uFF1A\u81EA\u5B9A\u4E49","botDefaults.sectionCard":"\u4EFB\u52A1\u5361\u7247","botDefaults.cardFeedbackGroup":"\u4EFB\u52A1\u53CD\u9988","botDefaults.cardContentGroup":"\u5361\u7247\u5185\u5BB9","botDefaults.cardManualGroup":"\u624B\u52A8 /card","botDefaults.usageDisplay":"\u7528\u91CF\u663E\u793A\u4F4D\u7F6E","botDefaults.usageDisplayHelp":"\u9009\u62E9\u4E0A\u4E0B\u6587\u5360\u7528\u548C\u672C\u8F6E\u7528\u91CF\u7684\u663E\u793A\u4F4D\u7F6E\u3002\u4EFB\u52A1\u72B6\u6001\u5361\u7247\u5185\u4F1A\u663E\u793A\u5B8C\u6574\u7528\u91CF\uFF0C\u6700\u7EC8\u7ED3\u679C\u5E95\u90E8\u53EA\u663E\u793A\u4E0A\u4E0B\u6587\u5360\u7528\uFF1B\u4EC5\u5F71\u54CD\u5C55\u793A\uFF0C\u4E0D\u5F71\u54CD Usage Ledger \u7EDF\u8BA1\u3002","botDefaults.usageDisplayStreaming":"\u4EFB\u52A1\u72B6\u6001\u5361\u7247\u5185\uFF08\u9ED8\u8BA4\uFF09","botDefaults.usageDisplayFooter":"\u6700\u7EC8\u7ED3\u679C\u5E95\u90E8","botDefaults.usageDisplayOff":"\u4E0D\u663E\u793A","botDefaults.autoStreaming":"\u4EFB\u52A1\u6267\u884C\u65F6\u663E\u793A\u72B6\u6001\u5361\u7247","botDefaults.autoStreamingDescription":"\u9ED8\u8BA4\u5F00\u542F\uFF1B\u4EFB\u52A1\u8FDB\u884C\u4E2D\u6301\u7EED\u66F4\u65B0\u6267\u884C\u72B6\u6001\u3002","botDefaults.autoStreamingHelp":"\u5F00\u542F\u540E\uFF0C\u6BCF\u6B21\u4EFB\u52A1\u6267\u884C\u671F\u95F4\u90FD\u4F1A\u663E\u793A\u5E76\u6301\u7EED\u66F4\u65B0\u72B6\u6001\u5361\u7247\uFF1B\u5173\u95ED\u540E\u53EA\u53D1\u9001\u6700\u7EC8\u7ED3\u679C\u3002","botDefaults.silentTurnReactions":"\u65E0\u5361\u7247\u65F6\u663E\u793A\u5904\u7406\u72B6\u6001","botDefaults.silentTurnReactionsDescription":"\u5728\u539F\u6D88\u606F\u4E0A\u6807\u8BB0\u201C\u5DF2\u6536\u5230\u201D\u548C\u201C\u5DF2\u5B8C\u6210\u201D\u3002","botDefaults.silentTurnReactionsHelp":"\u5173\u95ED\u4EFB\u52A1\u72B6\u6001\u5361\u7247\u540E\uFF0C\u9ED8\u8BA4\u7528\u6D88\u606F\u8868\u60C5\u6807\u8BB0\u4EFB\u52A1\u5DF2\u6536\u5230\u548C\u5DF2\u5B8C\u6210\uFF1B\u5173\u95ED\u6B64\u9879\u540E\u4E0D\u518D\u6DFB\u52A0\u8FD9\u4E9B\u72B6\u6001\u6807\u8BB0\u3002","botDefaults.writableLink":"\u5728\u5361\u7247\u4E2D\u663E\u793A\u53EF\u64CD\u4F5C\u7EC8\u7AEF","botDefaults.writableLinkDescription":"\u7FA4\u6210\u5458\u53EF\u76F4\u63A5\u64CD\u4F5C\u7EC8\u7AEF\uFF0C\u4EC5\u5728\u53EF\u4FE1\u7FA4\u5F00\u542F\u3002","botDefaults.writableLinkHelp":"\u5BF9\u81EA\u52A8\u663E\u793A\u7684\u72B6\u6001\u5361\u7247\u548C\u516C\u5F00\u7684\u624B\u52A8 /card \u5361\u7247\u751F\u6548\u3002\u5F00\u542F\u540E\uFF0C\u770B\u5230\u5361\u7247\u7684\u7FA4\u6210\u5458\u53EF\u76F4\u63A5\u64CD\u4F5C\u7EC8\u7AEF\u3002","botDefaults.manualCardIntro":"\u5728\u6D3B\u8DC3\u4F1A\u8BDD\u4E2D\u53D1\u9001 /card\uFF0C\u53EF\u4E34\u65F6\u67E5\u770B\u5F53\u524D\u4EFB\u52A1\u3002","botDefaults.privateCard":"\u624B\u52A8 /card \u4EC5\u6388\u6743\u4EBA\u53EF\u89C1","botDefaults.privateCardDescription":"\u4EC5\u666E\u901A\u7FA4\u53EF\u7528\uFF1B\u53D1\u9001\u9759\u6001\u5FEB\u7167\uFF0C\u4E0D\u4F1A\u6301\u7EED\u66F4\u65B0\u3002","botDefaults.privateCardHelp":"\u5F00\u542F\u540E\uFF0C\u666E\u901A\u7FA4\u4E2D\u7684 /card \u53EA\u5411 owner / allowedUsers \u53D1\u9001\u9759\u6001\u5FEB\u7167\uFF1B\u8BDD\u9898\u7FA4\u548C\u5355\u804A\u4F1A\u63D0\u793A\u4E0D\u652F\u6301\uFF0C\u4E0D\u4F1A\u8F6C\u4E3A\u516C\u5F00\u5361\u7247\u3002","botDefaults.manualCardHint":"\u5DF2\u5173\u95ED\u4EFB\u52A1\u72B6\u6001\u5361\u7247\uFF1B\u9700\u8981\u67E5\u770B\u6267\u884C\u8FC7\u7A0B\u65F6\uFF0C\u4ECD\u53EF\u5728\u6D3B\u8DC3\u4F1A\u8BDD\u4E2D\u53D1\u9001 /card\u3002","botDefaults.sectionCodexAppDisplay":"Codex App \u5386\u53F2\u663E\u793A","botDefaults.codexAppCleanInput":"\u7EAF\u51C0\u663E\u793A User Message\uFF08\u5B9E\u9A8C\u6027\uFF09","botDefaults.codexAppCleanInputHelp":"\u53EA\u5F71\u54CD Codex App \u4ECE\u4E0B\u4E00 turn \u8D77\u5199\u5165\u7684 User Message \u548C\u5386\u53F2\u663E\u793A\uFF1ABotmux \u7684 XML\u3001\u8DEF\u7531\u4E0E\u7CFB\u7EDF\u4E0A\u4E0B\u6587\u4ECD\u4F1A\u4F20\u7ED9\u6A21\u578B\uFF0C\u4F46\u6539\u8D70\u9690\u85CF\u4E0A\u4E0B\u6587\uFF1B\u4E0D\u6539\u53D8\u98DE\u4E66\u5BF9\u8BDD\uFF0C\u4E5F\u4E0D\u6E05\u7406\u5DF2\u6709\u5386\u53F2\u3002","botDefaults.codexAppCleanInputCompat":"\u9ED8\u8BA4\u5173\u95ED\uFF0C\u4FDD\u6301\u539F\u6709\u517C\u5BB9\u884C\u4E3A\uFF1B\u5F00\u542F\u540E\u4ECE\u4E0B\u4E00 turn \u751F\u6548\u3002","botDefaults.sectionCrossBot":"\u8DE8 bot \u534F\u4F5C","botDefaults.botToBotSameDir":"bot@bot \u540C\u76EE\u5F55\u62C9\u8D77","botDefaults.botToBotSameDirHelp":"\u9ED8\u8BA4\u5F00\u542F\u3002\u5F53\u8BE5 bot \u88AB @ \u5230\u5DF2\u6709\u5176\u4ED6 bot \u5DE5\u4F5C\u7684\u7FA4/\u8BDD\u9898\u65F6\uFF0C\u590D\u7528\u5BF9\u65B9\u5DE5\u4F5C\u76EE\u5F55\u5E76\u8DF3\u8FC7\u4ED3\u5E93\u9009\u62E9\u3002\u5173\u95ED\u540E\u59CB\u7EC8\u4F7F\u7528\u672C bot \u81EA\u5DF1\u7684\u76EE\u5F55\u89C4\u5219\u3002","botDefaults.cardPrefSaved":"\u5DF2\u4FDD\u5B58","botDefaults.sectionSummaryTrigger":"/summary \u603B\u7ED3\u8303\u56F4","botDefaults.summaryLimit":"\u6700\u8FD1\u6D88\u606F\u6761\u6570","botDefaults.summarySinceHours":"\u6700\u8FD1\u5C0F\u65F6\u6570","botDefaults.summaryLimitHelp":"/summary \u8BFB\u53D6\u7684\u5386\u53F2\u8303\u56F4\u3002\u9ED8\u8BA4\u6700\u8FD1 50 \u6761\u6216 24 \u5C0F\u65F6\uFF1B\u4EFB\u4E00\u9879\u586B 0 \u8868\u793A\u4E0D\u9650\u5236\u3002\u8BDD\u9898\u7FA4\u59CB\u7EC8\u53EA\u8BFB\u5F53\u524D\u8BDD\u9898\u3002","botDefaults.summarySave":"\u4FDD\u5B58\u603B\u7ED3\u8303\u56F4","botDefaults.summaryNumberInvalid":"\u65F6\u957F\u548C\u6761\u6570\u5FC5\u987B\u662F 0 \u6216\u6B63\u6574\u6570","botDefaults.summaryMemory":"\u5F00\u542F\u8BB0\u5FC6","botDefaults.summaryMemoryHelp":"\u5F00\u542F\u540E\uFF0C/summary \u4F1A\u628A\u672C\u6B21\u603B\u7ED3\u6574\u7406\u6210\u4E2D\u6587\u95EE\u9898\u89E3\u51B3\u8BB0\u5F55\uFF0C\u8FFD\u52A0\u5230\u914D\u7F6E\u7684\u8BB0\u5FC6\u6587\u4EF6\u8DEF\u5F84\uFF0C\u5E76\u8981\u6C42\u53EA\u5199\u8FD9\u4E2A\u6587\u4EF6\u3001\u539F\u6837\u56DE\u4F20\u5199\u5165\u5185\u5BB9\uFF1B\u540E\u7EED\u95EE\u9898\u53EA\u5728\u5173\u952E\u6761\u4EF6\u5B8C\u5168\u4E00\u81F4\u65F6\u590D\u7528\u3002\u8DEF\u5F84\u652F\u6301\u76F8\u5BF9\u5F53\u524D\u9879\u76EE\u6839\u76EE\u5F55\u6216\u7EDD\u5BF9\u8DEF\u5F84\u3002","botDefaults.summaryMemoryPath":"\u8BB0\u5FC6\u6587\u4EF6\u8DEF\u5F84","botDefaults.summaryMemoryPathSave":"\u4FDD\u5B58\u8BB0\u5FC6\u8DEF\u5F84","botDefaults.sectionRole":"\u9ED8\u8BA4\u89D2\u8272","botDefaults.roleHelp":"\u8BE5 bot \u7684\u9ED8\u8BA4\u89D2\u8272\uFF0C\u4F1A\u6CE8\u5165\u5230\u6240\u6709\u4F1A\u8BDD\uFF1B\u5355\u4E2A\u7FA4\u53EF\u5728\u300C\u89D2\u8272\u7BA1\u7406\u300D\u8986\u76D6\u3002\u7559\u7A7A\u4FDD\u5B58\u5373\u5220\u9664\u3002","botDefaults.rolePlaceholder":"\u4F8B\u5982\uFF1A\u4F60\u662F\u540E\u7AEF\u6392\u969C\u52A9\u624B\uFF0C\u56DE\u7B54\u7B80\u6D01\u3001\u4F18\u5148\u7ED9\u53EF\u6267\u884C\u547D\u4EE4\u2026","botDefaults.roleSave":"\u4FDD\u5B58\u89D2\u8272","botDefaults.roleSaved":"\u5DF2\u4FDD\u5B58","botDefaults.roleDeleted":"\u5DF2\u5220\u9664","botDefaults.roleLoadErr":"\u89D2\u8272\u52A0\u8F7D\u5931\u8D25","botDefaults.profileRoles":"Profile \u89D2\u8272","botDefaults.profileRolesHelp":"\u5C55\u793A\u8BE5 bot \u5728\u5404 Profile \u4E2D\u7684\u89D2\u8272\u6761\u76EE\uFF1B\u5C55\u5F00\u540E\u52A0\u8F7D\u8BE6\u60C5\u3002","botDefaults.profileRolesEmpty":"\u8FD9\u4E2A bot \u6682\u65E0 Profile \u89D2\u8272\u3002","botDefaults.profileRolesLoadFailed":"Profile \u89D2\u8272\u52A0\u8F7D\u5931\u8D25\uFF1A{error}","botDefaults.profileRoleClickToLoad":"\u5C55\u5F00\u540E\u52A0\u8F7D\u89D2\u8272\u8BE6\u60C5\u3002","botDefaults.profileRoleDetailLoadFailed":"\u89D2\u8272\u8BE6\u60C5\u52A0\u8F7D\u5931\u8D25\uFF1A{error}","botDefaults.sectionAutoStart":"\u4E3B\u52A8\u5F00\u5DE5","botDefaults.autoStartJoin":"\u88AB\u62C9\u8FDB\u65B0\u7FA4\u81EA\u52A8\u5F00\u5DE5","botDefaults.autoStartJoinHelp":"\u673A\u5668\u4EBA\u88AB\u52A0\u5165\u65B0\u7FA4\u4E14\u7FA4\u5185\u6709\u6388\u6743\u7528\u6237\u65F6\uFF0C\u81EA\u52A8\u542F\u52A8\u4F1A\u8BDD\uFF0C\u65E0\u9700 @\u3002\u4F7F\u7528\u9ED8\u8BA4\u5DE5\u4F5C\u76EE\u5F55\uFF1B\u672A\u914D\u7F6E\u65F6\u5148\u5F39\u4ED3\u5E93\u9009\u62E9\u3002\u9700\u8981\u8BA2\u9605\u673A\u5668\u4EBA\u8FDB\u7FA4\u4E8B\u4EF6\u5E76\u5177\u5907\u7FA4\u6210\u5458\u8BFB\u53D6\u6743\u9650\u3002","botDefaults.autoStartJoinPrompt":"\u5165\u7FA4\u9996\u8F6E prompt\uFF08\u53EF\u9009\uFF09","botDefaults.autoStartJoinPromptPlaceholder":"\u586B\u4E86\uFF1D\u4F5C\u4E3A\u5165\u7FA4\u540E\u7684\u7B2C\u4E00\u6761\u4EFB\u52A1\uFF1B\u7559\u7A7A\uFF1D\u673A\u5668\u4EBA\u81EA\u5DF1\u770B\u7FA4\u91CC\u4FE1\u606F\u51B3\u5B9A\u505A\u4EC0\u4E48","botDefaults.autoStartJoinPromptSave":"\u4FDD\u5B58 prompt","botDefaults.autoStartTopic":"\u8BDD\u9898\u7FA4\u65B0\u8BDD\u9898\u81EA\u52A8\u5F00\u5DE5","botDefaults.autoStartTopicHelp":"\u8BDD\u9898\u7FA4\u4E2D\u65B0\u5EFA\u8BDD\u9898\u65F6\uFF0C\u81EA\u52A8\u63A5\u5165\u5E76\u5904\u7406\u9996\u6761\u6D88\u606F\uFF0C\u65E0\u9700 @\u3002\u4EC5\u5F71\u54CD\u8BDD\u9898\u7FA4\u3002\u4E5F\u8986\u76D6\u300C\u5176\u4ED6\u673A\u5668\u4EBA\u5F00\u7684\u65B0\u8BDD\u9898\u300D\u3002","botDefaults.sectionSessionMode":"\u4F1A\u8BDD\u6A21\u5F0F","botDefaults.p2pMode":"\u79C1\u804A\u4F1A\u8BDD\u6A21\u5F0F","botDefaults.p2pThread":"thread\uFF08\u6BCF\u6761 DM \u72EC\u7ACB\u4F1A\u8BDD\uFF09","botDefaults.p2pChat":"chat\uFF08\u6241\u5E73\u8FDE\u7EED\u5355\u804A\u4F1A\u8BDD\uFF0C\u9ED8\u8BA4\uFF09","botDefaults.p2pHelp":"\u79C1\u804A\u4F1A\u8BDD\u65B9\u5F0F\uFF1Achat\uFF08\u9ED8\u8BA4\uFF09=\u6574\u6BB5\u79C1\u804A\u5171\u4EAB\u4E00\u4E2A\u8FDE\u7EED\u4F1A\u8BDD\uFF1Bthread=\u6BCF\u6761\u9876\u5C42\u6D88\u606F\u72EC\u7ACB\u4F1A\u8BDD\u3002\u6539\u52A8\u7ACB\u5373\u751F\u6548\u3002","botDefaults.regularGroupMode":"\u666E\u901A\u7FA4\u4F1A\u8BDD\u6A21\u5F0F","botDefaults.regularGroupModeChat":"chat\uFF08\u6241\u5E73\u8FDE\u7EED\u5355\u804A\u4F1A\u8BDD\uFF09","botDefaults.regularGroupModeChatTopic":"chat-topic\uFF08\u9876\u5C42\u5E73\u94FA\u8FDE\u7EED\u4F1A\u8BDD\uFF0C\u539F\u751F\u8BDD\u9898\u5404\u81EA\u72EC\u7ACB\u4F1A\u8BDD\uFF0C\u9ED8\u8BA4\uFF09","botDefaults.regularGroupModeNewTopic":"new-topic\uFF08\u6BCF\u6761\u9876\u5C42 @ \u5404\u5F00\u72EC\u7ACB\u8BDD\u9898\u4E0E\u4F1A\u8BDD\uFF09","botDefaults.regularGroupModeShared":"shared\uFF08\u8BDD\u9898\u6A21\u5F0F\u4F46\u590D\u7528\u540C\u4E00\u4E2A session\uFF09","botDefaults.regularGroupModeHelp":"\u666E\u901A\u7FA4\u9876\u5C42 @ \u7684\u5F00\u4F1A\u8BDD\u65B9\u5F0F\uFF1Achat=\u6574\u7FA4\u8FDE\u7EED\u4F1A\u8BDD\uFF08\u539F\u751F\u8BDD\u9898\u4E5F\u5E76\u8FDB\u7FA4\u4F1A\u8BDD\uFF09\uFF1Bchat-topic=\u9876\u5C42\u8FDE\u7EED\u3001\u7FA4\u5185\u539F\u751F\u8BDD\u9898\u5404\u81EA\u72EC\u7ACB\u4F1A\u8BDD\uFF08\u9ED8\u8BA4\uFF09\uFF1Bnew-topic=\u6BCF\u6B21 @ \u65B0\u5EFA\u8BDD\u9898\u4E0E\u4F1A\u8BDD\uFF1Bshared=\u9876\u5C42\u8BDD\u9898\u5C55\u793A\u4F46\u5171\u4EAB\u4F1A\u8BDD\uFF08\u539F\u751F\u8BDD\u9898\u4E5F\u5E76\u8FDB\uFF09\u3002\u539F\u751F\u8BDD\u9898\u5728 chat-topic \u4E0E new-topic \u4E0B\u5404\u81EA\u72EC\u7ACB\u3001\u5728 chat / shared \u4E0B\u5E76\u8FDB\u7FA4\u4F1A\u8BDD\u3002\u53EF\u88AB\u7FA4\u7EA7 /reply-mode \u8986\u76D6\u3002","botDefaults.mentionMode":"\u7FA4\u804A @ \u7B56\u7565","botDefaults.mentionModeAlways":"\u90FD\u9700\u8981 @\uFF08\u9ED8\u8BA4\uFF09","botDefaults.mentionModeTopic":"\u4EC5\u8BDD\u9898\u5185\u4E0D\u9700\u8981 @","botDefaults.mentionModeNever":"\u6240\u6709\u6D88\u606F\u90FD\u4E0D\u9700\u8981 @","botDefaults.mentionModeAmbient":"\u90FD\u4E0D\u9700\u8981 @\uFF08\u4F46\u4F60 @ \u522B\u4EBA\u65F6\u8BA9\u4F4D\uFF09","botDefaults.mentionModeHelp":"\u63A7\u5236\u7FA4\u804A\u662F\u5426\u5FC5\u987B @ \u624D\u56DE\u590D\uFF1A\u9ED8\u8BA4\u90FD\u9700\u8981 @\uFF1B\u53EF\u5141\u8BB8\u5DF2\u63A5\u7BA1\u8BDD\u9898\u5185\u514D @\u3001\u5168\u7FA4\u514D @\uFF0C\u6216\u5728\u6D88\u606F @ \u5176\u4ED6\u4EBA\u65F6\u8BA9\u4F4D\u3002\u79C1\u804A\u59CB\u7EC8\u4E0D\u9700\u8981 @\u3002","botDefaults.docSubscribeMode":"\u6587\u6863\u8BA2\u9605\u89E6\u53D1\u8303\u56F4\uFF08\u9ED8\u8BA4\uFF09","botDefaults.docSubscribeModeMention":"\u4EC5\u8BC4\u8BBA @ \u6211\u624D\u89E6\u53D1","botDefaults.docSubscribeModeAll":"\u6240\u6709\u65B0\u8BC4\u8BBA\u90FD\u89E6\u53D1","botDefaults.docSubscribeModeHelp":"\u7528 /watch-comment \u76D1\u542C\u98DE\u4E66\u6587\u6863\u8BC4\u8BBA\u540E\uFF0C\u8BC4\u8BBA\u4F1A\u5582\u8FDB\u4F1A\u8BDD\u3001bot \u56DE\u590D\u53D1\u56DE\u8BC4\u8BBA\u4E32\u3002\u8FD9\u91CC\u8BBE\u65B0\u76D1\u542C\u7684\u9ED8\u8BA4\u89E6\u53D1\u8303\u56F4\uFF1A\u300C\u4EC5\u8BC4\u8BBA @ \u6211\u300D\u6700\u5B89\u5168\uFF08\u9632\u5237\u5C4F\uFF09\uFF1B\u300C\u6240\u6709\u65B0\u8BC4\u8BBA\u300D\u9002\u5408\u4E13\u7528\u6587\u6863\u3002","botDefaults.sectionSubstitute":"\u66FF\u8EAB\u6A21\u5F0F","botDefaults.substituteEnabled":"\u542F\u7528\u66FF\u8EAB\u89E6\u53D1","botDefaults.substituteHelp":"\u7FA4\u91CC @ \u5230\u914D\u7F6E\u7684\u66FF\u8EAB\u5BF9\u8C61\u65F6\uFF0C\u7531\u672C bot \u4EE3\u7B54\uFF1B\u53D1\u6D88\u606F\u7684\u4EBA\u4ECD\u9700\u5177\u5907 canTalk \u6743\u9650\u3002\u63A8\u8350\u4E0E\u300COncall \u6A21\u5F0F\u300D\u4E00\u8D77\u4F7F\u7528\uFF0C\u8BA9\u7FA4\u5185\u6210\u5458\u90FD\u80FD\u81EA\u7136 @ \u66FF\u8EAB\u89E6\u53D1\u4EE3\u7B54\u3002\u5355\u4E2A\u7FA4\u53EF\u7528 /substitute off \u4E34\u65F6\u5173\u95ED\u3002","botDefaults.substituteTopicGroups":"\u8BDD\u9898\u7FA4\u652F\u6301","botDefaults.substituteTopicGroupsHelp":"\u5F00\u542F\u540E\u8BDD\u9898\u7FA4\u91CC @ \u66FF\u8EAB\u5BF9\u8C61\u540C\u6837\u89E6\u53D1\u4EE3\u7B54\uFF1A\u66FF\u8EAB\u56DE\u5408\u8D70\u8BE5\u8BDD\u9898\u81EA\u5DF1\u7684\u4F1A\u8BDD\uFF08\u6CA1\u6709\u4F1A\u8BDD\u5C31\u65B0\u5F00\u4E00\u4E2A\uFF09\uFF0C\u56DE\u590D\u843D\u5728\u89E6\u53D1\u8BDD\u9898\u5185\u3002\u5173\u95ED\u5219\u4EC5\u666E\u901A\u7FA4\u751F\u6548\u3002","botDefaults.substituteTopicActive":"\u5DF2\u6709\u6D3B\u8DC3\u4F1A\u8BDD\u7684\u8BDD\u9898\u91CC\u4E5F\u89E6\u53D1","botDefaults.substituteTopicActiveHelp":"\u8BDD\u9898\u91CC\u5DF2\u6709\u672C bot \u7684\u5DE5\u4F5C\u4F1A\u8BDD\u65F6\uFF0C@ \u66FF\u8EAB\u5BF9\u8C61\u662F\u5426\u4ECD\u89E6\u53D1\u4EE3\u7B54\uFF08\u66FF\u8EAB\u56DE\u5408\u6CE8\u5165\u8BE5\u4F1A\u8BDD\uFF09\u3002\u5173\u95ED\u540E\u8FD9\u7C7B\u6D88\u606F\u4FDD\u6301\u539F\u8BA9\u8DEF\u884C\u4E3A\uFF1A@ \u4E86\u522B\u4EBA\u89C6\u4E3A\u8F6C\u4EA4\uFF0C\u672C bot \u6C89\u9ED8\u3002","botDefaults.substituteDisclosure":"\u62AB\u9732\u65B9\u5F0F","botDefaults.substituteDisclosurePrefix":"\u9ED8\u8BA4\u8BF4\u660E\u201C\u6211\u5148\u4EE3 TA \u56DE\u590D\u201D","botDefaults.substituteDisclosureNone":"\u4E0D\u989D\u5916\u8BF4\u660E","botDefaults.substituteReplyMode":"\u56DE\u590D\u65B9\u5F0F","botDefaults.substituteReplyModeThread":"\u8BDD\u9898\u56DE\u590D\uFF1A\u5728\u89E6\u53D1\u6D88\u606F\u4E0B\u521B\u5EFA Lark \u8BDD\u9898","botDefaults.substituteReplyModeQuote":"\u5F15\u7528\u56DE\u590D\uFF1A\u5F15\u7528\u89E6\u53D1\u6D88\u606F\uFF0C\u4E0D\u521B\u5EFA\u65B0\u8BDD\u9898","botDefaults.substituteReplyModeHelp":"\u666E\u901A\u7FA4\u5206\u8EAB\u89E6\u53D1\u540E\uFF0C\u8BDD\u9898\u56DE\u590D\u4F1A\u5728\u7FA4\u91CC\u65B0\u5EFA\u4E00\u6761\u53EF\u6298\u53E0\u7684\u8BDD\u9898\uFF1B\u5F15\u7528\u56DE\u590D\u76F4\u63A5\u5F15\u7528\u539F\u6D88\u606F\uFF0C\u4E0D\u5C55\u5F00\u65B0\u8BDD\u9898\u3002\u8BDD\u9898\u7FA4\u5206\u8EAB\u76F4\u63A5\u5728\u539F\u8BDD\u9898\u5185\u56DE\u590D\uFF0C\u4E0D\u53D7\u6B64\u9879\u5F71\u54CD\u3002","botDefaults.substituteControlCard":"\u53D1\u9001 owner \u63A7\u5236\u5361\u7247","botDefaults.substituteControlCardHelp":'\u666E\u901A\u7FA4\u7684\u5206\u8EAB\u4F1A\u8BDD\u542F\u52A8\u540E\uFF0C\u81EA\u52A8\u79C1\u4FE1\u7ED9 bot \u7684 owner / allowedUsers \u4E00\u5F20\u5305\u542B"\u6253\u5F00\u53EF\u64CD\u4F5C\u7EC8\u7AEF\u3001\u91CD\u542F\u3001\u5173\u95ED"\u6309\u94AE\u7684\u63A7\u5236\u5361\u7247\uFF08\u8BDD\u9898\u7FA4\u5206\u8EAB\u4F1A\u8BDD\u4FDD\u7559\u6B63\u5E38\u6D41\u5F0F\u5361\u7247\uFF0C\u4E0D\u53E6\u53D1\uFF09\u3002',"botDefaults.substituteChats":"\u751F\u6548\u7FA4\u804A","botDefaults.substituteChatsHelp":"\u7559\u7A7A\u8868\u793A\u6240\u6709\u7FA4\u804A\uFF08\u666E\u901A\u7FA4\u4E0E\u8BDD\u9898\u7FA4\uFF09\u90FD\u751F\u6548\uFF1B\u586B\u5199\u540E\u4EC5\u5728\u8FD9\u4E9B\u7FA4\u804A ID \u4E2D\u89E6\u53D1\u66FF\u8EAB\u3002\u6BCF\u884C\u4E00\u4E2A\uFF0C\u4E5F\u53EF\u7528\u9017\u53F7/\u5206\u53F7\u5206\u9694\u3002","botDefaults.substituteChatsPlaceholder":`oc_xxx
18
+ \u53EA\u4F1A\u66F4\u65B0\u5F53\u524D\u8FD0\u884C\u7684\u5B89\u88C5\u4F4D\u7F6E\u3002\u4ECD\u8981\u7EE7\u7EED\uFF1F`,"update.confirmUpdate":"\u5C06\u8FD0\u884C {command}\uFF0C\u66F4\u65B0\u5230 {version}\u3002\u786E\u8BA4\u7EE7\u7EED\uFF1F","update.confirmUpdateNoVer":"\u5C06\u8FD0\u884C {command} \u66F4\u65B0\u5230\u6700\u65B0\u7248\u3002\u786E\u8BA4\u7EE7\u7EED\uFF1F","update.healthCheckFailed":"\u65E0\u6CD5\u786E\u8BA4\u5F53\u524D Dashboard \u5B9E\u4F8B\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u540E\u91CD\u8BD5\u3002","update.nodeTooOldAlert":"\u5F53\u524D Node \u7248\u672C {version} \u8FC7\u4F4E\uFF08\u8981\u6C42 \u2265 {required}\uFF09\uFF0C\u8BF7\u5148\u5347\u7EA7 Node \u518D\u66F4\u65B0\u3002","update.updating":"\u6B63\u5728\u66F4\u65B0\uFF08{command}\uFF09\uFF0C\u8BF7\u7A0D\u5019\u2026","update.unsupportedInstall":"\u5F53\u524D\u5B89\u88C5\u65B9\u5F0F\u65E0\u6CD5\u5B89\u5168\u81EA\u52A8\u66F4\u65B0\uFF1B\u76EE\u524D\u4EC5\u652F\u6301 npm / pnpm / Bun \u5168\u5C40\u5B89\u88C5\u3002\u8BF7\u4F7F\u7528\u539F\u5305\u7BA1\u7406\u5668\u624B\u52A8\u66F4\u65B0\u3002","update.updatedChanged":"\u5DF2\u66F4\u65B0 {old} \u2192 {new}\u3002","update.confirmRestart":"\u9700\u8981\u91CD\u542F botmux \u4EE5\u5E94\u7528\u65B0\u7248\u672C\u3002\u73B0\u5728\u91CD\u542F\uFF1F\uFF08\u6240\u6709\u4F1A\u8BDD\u4F1A\u51B7\u6062\u590D\uFF0C\u4EEA\u8868\u76D8\u4F1A\u77ED\u6682\u65AD\u5F00\u5E76\u81EA\u52A8\u91CD\u8FDE\uFF09","update.alreadyLatestRun":"\u5DF2\u662F\u6700\u65B0\u7248\u672C\uFF08{version}\uFF09\uFF0C\u65E0\u9700\u66F4\u65B0\u3002","update.updateFailed":"\u66F4\u65B0\u5931\u8D25\uFF1A{detail}","update.noRestartHint":"\u66F4\u65B0\u5B8C\u6210\u3002\u7A0D\u540E\u8BF7\u624B\u52A8\u91CD\u542F\uFF08botmux restart\uFF09\u4EE5\u5E94\u7528\u65B0\u7248\u672C\u3002","update.confirmPlainRestart":"\u91CD\u542F botmux\uFF1F\u6240\u6709\u4F1A\u8BDD\u4F1A\u51B7\u6062\u590D\uFF0C\u4EEA\u8868\u76D8\u4F1A\u77ED\u6682\u65AD\u5F00\u5E76\u81EA\u52A8\u91CD\u8FDE\u3002","update.restarting":"\u6B63\u5728\u91CD\u542F botmux\uFF0C\u7B49\u5F85\u91CD\u8FDE\u2026","update.restartSlow":"\u91CD\u542F\u8017\u65F6\u8F83\u957F\uFF0C\u8BF7\u7A0D\u540E\u624B\u52A8\u5237\u65B0\u9875\u9762\u3002","update.restartFailed":"\u91CD\u542F\u5931\u8D25\uFF1A{detail}","update.bootstrapRequired":"\u65B0\u7248\u672C\u5DF2\u5B89\u88C5\uFF0C\u4F46\u5F53\u524D\u8FD0\u884C\u7684 daemon \u8FD8\u662F\u5347\u7EA7\u524D\u7684\u65E7\u8FDB\u7A0B\uFF0C\u7F3A\u5C11\u4FE1\u53F7\u81EA\u6108\u534F\u8BAE\uFF0C\u7F51\u9875\u65E0\u6CD5\u5B89\u5168\u91CD\u542F\u5B83\u4EEC\u3002\u8BF7\u5728\u7535\u8111\u524D\u7684\u7EC8\u7AEF\u91CC\uFF0C\u786E\u8BA4\u6240\u6709\u4F1A\u8BDD\u7A7A\u95F2\u540E\u8FD0\u884C\uFF1Abotmux restart --bootstrap-shutdown-protocol --yes \u5B8C\u6210\u8FD9\u4E00\u6B21\u6027\u5347\u7EA7\u3002","skills.title":"Skill \u7BA1\u7406","skills.installed":"\u5DF2\u5B89\u88C5 Skills","skills.installedHelp":"\u672C\u673A\u5DF2\u5B89\u88C5\u3001\u53EF\u4F9B Bot \u4F7F\u7528\u7684 Skills\u3002","skills.installedCount":"{count} \u4E2A","skills.metricInstalled":"\u5DF2\u5B89\u88C5 Skills","skills.metricPacks":"\u4E13\u9879\u5305","skills.metricBots":"\u5DF2\u914D\u7F6E Bot","skills.metricAttached":"\u7B56\u7565\u5F15\u7528","skills.issuesLabel":"\u914D\u7F6E\u5065\u5EB7","skills.issueDangling":"{count} \u4E2A Skill \u88AB\u5F15\u7528\u4F46\u672A\u5B89\u88C5","skills.issueUnassignedPacks":"{count} \u4E2A\u4E13\u9879\u5305\u672A\u5206\u914D Bot","skills.issueBotsMissing":"{count} \u4E2A Bot \u7F3A\u5931\u80FD\u529B","skills.issueNone":"\u2713 \u914D\u7F6E\u5065\u5EB7","skills.usedInPacks":"{count} \u5305","skills.usedByBots":"{count} Bot","skills.installTargetHint":"\u76EE\u6807\uFF1A\u5B89\u88C5 \u201C{skill}\u201D\uFF08\u53D1\u73B0\u5019\u9009\u540E\u5C06\u81EA\u52A8\u52FE\u9009\uFF0C\u4E0D\u4F1A\u81EA\u52A8\u5B89\u88C5\uFF09","skills.clearInstallTarget":"\u6E05\u9664\u76EE\u6807","skills.installTargetNotFound":"\u8BE5\u6765\u6E90\u4E2D\u672A\u627E\u5230\u76EE\u6807 Skill \u201C{skill}\u201D\uFF0C\u5DF2\u53D6\u6D88\u9ED8\u8BA4\u52FE\u9009","skills.installMissingHint":"\u524D\u5F80\u5B89\u88C5 \u201C{skill}\u201D","skills.packsLoadError":"\u4E13\u9879\u5305\u6570\u636E\u52A0\u8F7D\u5931\u8D25\uFF08\u5DF2\u4FDD\u7559\u4E0A\u6B21\u6570\u636E\uFF09\uFF1A{error}","skills.packsLoadErrorFirst":"\u4E13\u9879\u5305\u6570\u636E\u52A0\u8F7D\u5931\u8D25\uFF08\u5C1A\u672A\u6210\u529F\u52A0\u8F7D\u8FC7\uFF0C\u76F8\u5173\u5065\u5EB7\u72B6\u6001\u6309\u672A\u77E5\u5904\u7406\uFF09\uFF1A{error}","skills.libraryFilterActive":"\u7B5B\u9009 {count} \u9879","skills.clearFilter":"\u6E05\u9664\u7B5B\u9009","skills.missingFilteredTitle":"\u88AB\u5F15\u7528\u4F46\u672A\u5B89\u88C5\u7684 Skill","skills.installNow":"\u53BB\u5B89\u88C5","skills.usedInPacksUnknown":"? \u5305","skills.install":"\u5B89\u88C5 Skill","skills.installInfoLabel":"\u5B89\u88C5\u4F4D\u7F6E\u8BF4\u660E","skills.installInfo":"\u6CE8\u518C\u4FE1\u606F\u5199\u5165 ~/.botmux/skills/registry.json\uFF1B\u5B89\u88C5\u5185\u5BB9\u5B58\u653E\u5728 ~/.botmux/skills/store\u3002\u672C\u673A CLI Skill \u4EE5\u539F\u8DEF\u5F84\u5F15\u7528\uFF0C\u4E0D\u5199\u5165 CLI \u5168\u5C40\u76EE\u5F55\u3002","skills.source":"\u5BFC\u5165\u5730\u5740","skills.sourcePlaceholder":"\u7C98\u8D34 GitHub \u4ED3\u5E93 / Git URL / agentbuddy \u5B89\u88C5\u547D\u4EE4 / \u672C\u673A Skill \u76EE\u5F55","skills.sourceHelpOpen":"\u67E5\u770B\u652F\u6301\u7684\u5BFC\u5165\u6765\u6E90","skills.sourceHelpClose":"\u5173\u95ED\u5BFC\u5165\u6765\u6E90\u8BF4\u660E","skills.sourceHelpTitle":"\u652F\u6301\u7684\u5BFC\u5165\u6765\u6E90","skills.sourceHelpIntro":"\u76F4\u63A5\u7C98\u8D34\u6765\u6E90\uFF1B\u7CFB\u7EDF\u4F1A\u5148\u8BC6\u522B\u7C7B\u578B\uFF0C\u518D\u626B\u63CF\u53EF\u5B89\u88C5\u7684 Skill\u3002","skills.sourceHelpRemoteLabel":"GitHub / Git","skills.sourceHelpRemote":"\u652F\u6301 owner/repo\u3001GitHub \u6D4F\u89C8\u5668\u5730\u5740\u548C Git URL\uFF1B\u591A Skill \u4ED3\u5E93\u4F1A\u5728\u626B\u63CF\u540E\u8BA9\u4F60\u9009\u62E9\u3002","skills.sourceHelpRemoteExample":"owner/repo \xB7 https://github.com/owner/repo/tree/main","skills.sourceHelpLocalLabel":"\u672C\u673A CLI Skill \u76EE\u5F55","skills.sourceHelpLocal":"\u76F4\u63A5\u5F15\u7528\u539F\u5730\u5740\uFF0C\u4E0D\u590D\u5236\u5230 botmux store\u3002","skills.sourceHelpLocalExample":"/absolute/path/to/skill","skills.sourceHelpAgentbuddyLabel":"AgentBuddy","skills.sourceHelpAgentbuddy":"\u8BF7\u7C98\u8D34\u5B8C\u6574\u5B89\u88C5\u547D\u4EE4\uFF0C\u5546\u57CE URL \u672C\u8EAB\u4E0D\u80FD\u5B89\u88C5\uFF1B\u90E8\u7F72\u673A\u9700\u53EF\u8FD0\u884C Agentbuddy CLI\u3002","skills.sourceHelpAgentbuddyExample":'npm_config_registry="https://registry.example.com" npx -y agentbuddy@latest skill add skills.example.com/team/health',"skills.advancedOptions":"\u9AD8\u7EA7\u9009\u9879\uFF08\u4ED3\u5E93\u5185\u8DEF\u5F84 / Ref / \u626B\u63CF\u6DF1\u5EA6\uFF09","skills.sourceDetectedGithub":"\u5DF2\u8BC6\u522B\uFF1AGitHub \u4ED3\u5E93","skills.sourceDetectedGit":"\u5DF2\u8BC6\u522B\uFF1AGit \u8FDC\u7A0B\u4ED3\u5E93","skills.sourceDetectedAgentbuddy":"\u5DF2\u8BC6\u522B\uFF1AAgentbuddy \u5B89\u88C5\u547D\u4EE4","skills.sourceDetectedLocal":"\u5DF2\u8BC6\u522B\uFF1A\u90E8\u7F72\u673A\u672C\u5730\u8DEF\u5F84","skills.sourceDetectedUnknown":"\u6682\u65E0\u6CD5\u8BC6\u522B\u8BE5\u683C\u5F0F","skills.sourcePreflightAgentbuddy":"\u7C98\u8D34\u547D\u4EE4\u53EA\u7528\u4E8E\u63D0\u53D6\u5B89\u88C5\u76EE\u6807\uFF1B\u5B9E\u9645\u8FD0\u884C\u4F9D\u8D56\u90E8\u7F72\u673A\u5DF2\u914D\u7F6E Agentbuddy CLI \u4E14\u5DF2\u767B\u5F55\u3002","skills.sourcePreflightGit":"\u516C\u5F00\u4ED3\u5E93\u53EF\u76F4\u63A5\u626B\u63CF\uFF1B\u79C1\u6709\u4ED3\u5E93\u9700\u90E8\u7F72\u673A\u7684 GitHub Token\u3001gh \u767B\u5F55\u6216 SSH Key\u3002","skills.sourcePreflightLocal":"\u8BE5\u8DEF\u5F84\u5FC5\u987B\u5B58\u5728\u4E8E Botmux \u90E8\u7F72\u673A\uFF0C\u4E14\u8FDB\u7A0B\u5BF9 `SKILL.md` \u6709\u8BFB\u53D6\u6743\u9650\u3002","skills.sourcePreflightUnknown":"\u8BF7\u6539\u7528 GitHub/Git \u5730\u5740\u3001\u5B8C\u6574 Agentbuddy \u5B89\u88C5\u547D\u4EE4\u6216\u90E8\u7F72\u673A\u672C\u5730\u8DEF\u5F84\u3002","skills.installDiagnosticTitle":"\u5B89\u88C5\u5931\u8D25\u6392\u67E5","skills.installDiagnosticAgentbuddy":"\u68C0\u67E5\u90E8\u7F72\u673A\u662F\u5426\u53EF\u7528 Agentbuddy CLI\u3001\u662F\u5426\u5DF2\u767B\u5F55\uFF0C\u5E76\u786E\u8BA4\u7C98\u8D34\u7684\u662F\u5B8C\u6574 `skill add` / `collection add` \u547D\u4EE4\uFF0C\u800C\u4E0D\u662F\u5546\u57CE URL\u3002","skills.installDiagnosticGit":"\u68C0\u67E5\u4ED3\u5E93\u5730\u5740\u3001Ref \u548C\u4ED3\u5E93\u5185\u8DEF\u5F84\uFF1B\u79C1\u6709\u4ED3\u5E93\u8FD8\u9700\u786E\u8BA4\u90E8\u7F72\u673A Git \u51ED\u636E\u6709\u6548\u3002","skills.installDiagnosticLocal":"\u68C0\u67E5\u8DEF\u5F84\u662F\u5426\u4F4D\u4E8E\u90E8\u7F72\u673A\u3001\u76EE\u5F55\u5185\u662F\u5426\u6709\u53EF\u8BFB\u7684 `SKILL.md`\uFF0C\u4EE5\u53CA\u76EE\u5F55\u5C42\u7EA7\u662F\u5426\u8D85\u8FC7\u626B\u63CF\u6DF1\u5EA6\u3002","skills.installDiagnosticUnknown":"\u8BE5\u8F93\u5165\u4E0D\u662F\u53D7\u652F\u6301\u7684\u6765\u6E90\u683C\u5F0F\uFF1B\u8BF7\u6253\u5F00\u5BFC\u5165\u5730\u5740\u65C1\u7684\u6765\u6E90\u8BF4\u660E\u540E\u91CD\u8BD5\u3002","skills.agentbuddyNotFound":"\u90E8\u7F72\u673A\u672A\u627E\u5230 agentbuddy CLI\u3002\u8BF7\u5728\u90E8\u7F72\u673A\u5168\u5C40\u5B89\u88C5\uFF0C\u6216\u8BBE\u7F6E BOTMUX_AGENTBUDDY_CMD\u3002","skills.agentbuddyNeedsLogin":"\u90E8\u7F72\u673A agentbuddy \u672A\u767B\u5F55\u3002\u8BF7\u5728\u90E8\u7F72\u673A\u8FD0\u884C agentbuddy login \u540E\u91CD\u8BD5\u3002","skills.gitNeedsAuth":"GitHub \u79C1\u6709\u4ED3\u5E93\u9274\u6743\u5931\u8D25\u3002\u8BF7\u5728\u90E8\u7F72\u673A\u6267\u884C gh auth login\uFF0C\u6216\u5728 ~/.botmux/.env \u914D\u7F6E GITHUB_TOKEN / GH_TOKEN\uFF1B\u4E5F\u53EF\u4F7F\u7528 SSH Git URL \u590D\u7528\u4E3B\u673A SSH key\u3002","skills.agentbuddyCommandFailed":"agentbuddy \u5B89\u88C5\u5931\u8D25\uFF0C\u8BF7\u67E5\u770B\u90E8\u7F72\u673A\u65E5\u5FD7\u3002","skills.agentbuddyTelemetryFailed":"\u5185\u5D4C telemetry \u6E05\u7406\u5931\u8D25\uFF0C\u5DF2\u4E2D\u65AD\u5B89\u88C5\uFF08\u5982\u9700\u4FDD\u7559\u53EF\u8BBE BOTMUX_AGENTBUDDY_KEEP_TELEMETRY=1\uFF09\u3002","skills.agentbuddyNoSkill":"agentbuddy \u672A\u4EA7\u51FA\u4EFB\u4F55 Skill\uFF0C\u8BF7\u68C0\u67E5 identifier \u662F\u5426\u6B63\u786E\u3002","skills.agentbuddyInvalid":"agentbuddy identifier \u683C\u5F0F\u4E0D\u5408\u6CD5\u3002","skills.discover":"\u53D1\u73B0 Skill","skills.localDiscover":"\u6D4F\u89C8\u672C\u673A Skill","skills.localDiscoverTitle":"\u672C\u673A CLI Skill","skills.localDiscoverHelp":"\u626B\u63CF\u672C\u673A CLI \u5DF2\u5B89\u88C5\u7684 Skill\uFF0C\u5E76\u6CE8\u518C\u4E3A\u672C\u5730\u5F15\u7528\u3002","skills.scan":"\u626B\u63CF","skills.scanning":"\u6B63\u5728\u626B\u63CF","skills.scanFound":"\u53D1\u73B0 {count} \u4E2A Skill","skills.scanEmpty":"\u6CA1\u6709\u53D1\u73B0\u53EF\u5B89\u88C5\u7684 Skill\u3002","skills.sourceRequired":"\u8BF7\u5148\u586B\u5199\u5BFC\u5165\u5730\u5740\u3002","skills.advanced":"\u9AD8\u7EA7\u9009\u9879","skills.discoverTitle":"\u53D1\u73B0\u672C\u673A CLI Skill","skills.discoverHelp":"\u626B\u63CF\u5DF2\u914D\u7F6E bot \u7684 CLI Skill \u76EE\u5F55\uFF1B\u9009\u4E2D\u540E\u6CE8\u518C\u4E3A\u672C\u5730\u5F15\u7528\uFF0C\u4E0D\u590D\u5236\u6587\u4EF6\u3002","skills.discoverEmpty":"\u6CA1\u6709\u5728\u672C\u673A CLI skill \u76EE\u5F55\u4E2D\u53D1\u73B0\u53EF\u6CE8\u518C\u7684 Skill\u3002","skills.discoverGroupEmpty":"\u8FD9\u4E2A CLI \u76EE\u5F55\u4E0B\u6CA1\u6709\u53EF\u6CE8\u518C\u7684 Skill\u3002","skills.discoverRegistered":"\u5DF2\u6CE8\u518C","skills.discoverSelectAll":"\u5168\u9009\u672A\u6CE8\u518C","skills.discoverClearSelection":"\u53D6\u6D88\u5168\u9009","skills.discoverRegister":"\u6CE8\u518C\u9009\u4E2D","skills.discoverClose":"\u5173\u95ED","skills.discoverNothingSelected":"\u8BF7\u9009\u62E9\u81F3\u5C11\u4E00\u4E2A\u672A\u6CE8\u518C\u7684 Skill\u3002","skills.discoverRegisteringBatch":"\u6B63\u5728\u6279\u91CF\u6CE8\u518C {total} \u4E2A Skill","skills.sourceCodex":"\u672C\u673A Codex","skills.sourceClaude":"\u672C\u673A Claude","skills.sourceTrae":"\u672C\u673A Trae","skills.sourceCursor":"\u672C\u673A Cursor","skills.sourceGemini":"\u672C\u673A Gemini","skills.sourceOpenCode":"\u672C\u673A OpenCode","skills.sourceLocalLink":"\u672C\u673A\u5F15\u7528","skills.sourceBotmuxCopy":"botmux store","skills.path":"\u4ED3\u5E93\u5185\u8DEF\u5F84\uFF08\u53EF\u9009\uFF09","skills.pathPlaceholder":"\u7559\u7A7A\u5219\u626B\u63CF\u4ED3\u5E93\u6839\u76EE\u5F55\uFF1B\u4E5F\u53EF\u586B\u5199\u5355\u4E2A Skill \u76EE\u5F55","skills.pathHelpInline":"\u6574\u4ED3\u5E93\u5BFC\u5165\u65F6\u7559\u7A7A\uFF1B\u6307\u5B9A\u76EE\u5F55\u53EF\u8DF3\u8FC7\u626B\u63CF\uFF0C\u76F4\u63A5\u5B89\u88C5\u8BE5 Skill\u3002","skills.ref":"Ref\uFF08\u53EF\u9009\uFF09","skills.refPlaceholder":"\u7559\u7A7A\u5219\u4F7F\u7528 GitHub URL \u4E2D\u7684\u5206\u652F\u6216\u9ED8\u8BA4 HEAD","skills.refHelpInline":"\u652F\u6301\u5206\u652F\u3001Tag \u6216 commit\uFF1BGitHub tree/blob URL \u5DF2\u81EA\u5E26 Ref \u65F6\u53EF\u7559\u7A7A\u3002","skills.deepScan":"\u76F4\u63A5\u6DF1\u5EA6\u626B\u63CF","skills.deepScanHelp":"\u8DF3\u8FC7\u6D45\u626B\uFF0C\u9012\u5F52\u67E5\u627E\u6700\u591A 4 \u5C42\u76EE\u5F55\u3002\u5927\u578B\u4ED3\u5E93\u53EF\u80FD\u66F4\u6162\u3002","skills.autoDeepScanHint":"\u9ED8\u8BA4\u5148\u5FEB\u901F\u626B\u63CF\uFF1B\u6CA1\u6709\u7ED3\u679C\u65F6\u4F1A\u81EA\u52A8\u6DF1\u626B\u4E00\u6B21\u3002","skills.link":"\u672C\u5730\u94FE\u63A5\uFF08\u4E0D\u590D\u5236\uFF09","skills.installSubmit":"\u626B\u63CF\u5E76\u5B89\u88C5","skills.installSelected":"\u5B89\u88C5\u9009\u4E2D","skills.installSelectionTitle":"\u9009\u62E9\u8981\u5B89\u88C5\u7684 Skill","skills.installSelectionHelp":"\u53D1\u73B0 {count} \u4E2A Skill\uFF1B\u53D6\u6D88\u4E0D\u9700\u8981\u7684\u9879\u540E\u518D\u5B89\u88C5\u3002","skills.installSelectionCancel":"\u53D6\u6D88","skills.update":"\u66F4\u65B0","skills.remove":"\u5220\u9664","skills.select":"\u9009\u62E9","skills.searchLabel":"\u641C\u7D22\u5DF2\u5B89\u88C5\u7684 Skills","skills.searchPlaceholder":"\u641C\u7D22\u5DF2\u5B89\u88C5\u7684 Skills","skills.selectAll":"\u5168\u9009","skills.deselectAll":"\u53D6\u6D88\u5168\u9009","skills.all":"\u5168\u90E8","skills.noResults":"\u6CA1\u6709\u5339\u914D\u7684 Skill","skills.clearSearch":"\u6E05\u9664\u641C\u7D22","skills.resultCount":"{count} \u4E2A\u7ED3\u679C","skills.selectAllSkills":"\u5168\u9009\u5168\u90E8 {count} \u4E2A","skills.selectSearchResults":"\u5168\u9009 {count} \u4E2A\u641C\u7D22\u7ED3\u679C","skills.selectNamed":"\u9009\u62E9 {skill}","skills.selectedCount":"\u5DF2\u9009\u62E9 {count} \u4E2A","skills.selectedHidden":"\xB7 {count} \u4E2A\u4E0D\u5728\u5F53\u524D\u7ED3\u679C","skills.bulkActions":"\u5DF2\u5B89\u88C5 Skills \u6279\u91CF\u64CD\u4F5C","skills.removeSelected":"\u5220\u9664 {count} \u4E2A","skills.emptyTitle":"\u8FD8\u6CA1\u6709\u5B89\u88C5 Skill","skills.emptyHelp":"\u5B89\u88C5\u540E\uFF0C\u5B83\u4EEC\u4F1A\u51FA\u73B0\u5728\u8FD9\u91CC\u3002","skills.noResultsTitle":"\u6CA1\u6709\u627E\u5230\u201C{query}\u201D","skills.noResultsHelp":"\u8BF7\u5C1D\u8BD5\u5176\u4ED6\u5173\u952E\u8BCD\u3002","skills.removeOneTitle":"\u5220\u9664\u201C{skill}\u201D\uFF1F","skills.removeManyTitle":"\u5220\u9664 {count} \u4E2A Skills\uFF1F","skills.removeOnePermanentHelp":"\u8FD9\u4F1A\u4ECE\u5F53\u524D\u73AF\u5883\u79FB\u9664\u8BE5 Skill\uFF0C\u5E76\u5220\u9664 botmux store \u4E2D\u7684\u672C\u5730\u526F\u672C\u3002\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002","skills.removePermanentHelp":"\u8FD9\u4F1A\u4ECE\u5F53\u524D\u73AF\u5883\u79FB\u9664\u6240\u9009 Skill\uFF0C\u5E76\u5220\u9664 botmux store \u4E2D\u7684\u672C\u5730\u526F\u672C\u3002\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002","skills.removeMore":"\u4EE5\u53CA\u53E6\u5916 {count} \u4E2A","skills.removeInUseOneTitle":"\u4ECD\u8981\u5220\u9664\u201C{skill}\u201D\uFF1F","skills.removeInUseManyTitle":"\u4ECD\u8981\u5220\u9664 {count} \u4E2A Skills\uFF1F","skills.removeInUseOneHelp":"\u5B83\u6B63\u88AB {count} \u4E2A Bot \u5F15\u7528\u3002\u5220\u9664\u540E\uFF0C\u8FD9\u4E9B Bot \u5C06\u65E0\u6CD5\u7EE7\u7EED\u4F7F\u7528\u5B83\u3002\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002","skills.removeInUseManyHelp":"\u8FD9\u4E9B Skills \u6B63\u88AB {count} \u4E2A Bot \u5F15\u7528\u3002\u5220\u9664\u540E\uFF0C\u8FD9\u4E9B Bot \u5C06\u65E0\u6CD5\u7EE7\u7EED\u4F7F\u7528\u5B83\u4EEC\u3002\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002","skills.removeInUseOneHelpWithPacks":"\u5B83\u6B63\u88AB {botCount} \u4E2A Bot \u548C {packCount} \u4E2A Skill Pack \u5F15\u7528\u3002\u5220\u9664\u540E\u4F1A\u7559\u4E0B\u65E0\u6548\u5F15\u7528\u3002\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002","skills.removeInUseManyHelpWithPacks":"\u8FD9\u4E9B Skills \u6B63\u88AB {botCount} \u4E2A Bot \u548C {packCount} \u4E2A Skill Pack \u5F15\u7528\u3002\u5220\u9664\u540E\u4F1A\u7559\u4E0B\u65E0\u6548\u5F15\u7528\u3002\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002","skills.removeReferencesDetail":"\u53D7\u5F71\u54CD\u7684\u5F15\u7528","skills.removeOneConfirm":"\u5220\u9664 Skill","skills.removeAnyway":"\u4ECD\u8981\u5220\u9664","skills.removing":"\u6B63\u5728\u5220\u9664\u2026","skills.removingCount":"\u6B63\u5728\u5220\u9664 {count} \u4E2A Skills\u2026","skills.removedOne":"\u5DF2\u5220\u9664\u201C{skill}\u201D","skills.removedMany":"\u5DF2\u5220\u9664 {count} \u4E2A Skills","skills.removeFailed":"\u672A\u80FD\u5220\u9664\uFF0C\u8BF7\u91CD\u8BD5\uFF1A{detail}","skills.pageStatus":"{page} / {pages}","skills.prevPage":"\u4E0A\u4E00\u9875","skills.nextPage":"\u4E0B\u4E00\u9875","skills.empty":"\u6682\u65E0\u5DF2\u5B89\u88C5 skill\u3002\u53EF\u4EE5\u4ECE\u672C\u673A\u76EE\u5F55\u3001Git \u6216 GitHub \u5B89\u88C5\u3002","skills.apiUnavailable":"\u5F53\u524D Dashboard \u540E\u7AEF\u4E0D\u652F\u6301 Skill API\uFF0C\u901A\u5E38\u662F\u524D\u7AEF\u5DF2\u66F4\u65B0\u4F46 botmux \u8FDB\u7A0B\u672A\u91CD\u542F\u3002\u8BF7\u91CD\u542F botmux \u540E\u5237\u65B0\u9875\u9762\u3002","skills.globalDefaults":"\u5168\u5C40 Skill \u6CE8\u5165\u914D\u7F6E","skills.globalProject":"\u5DE5\u4F5C\u533A Skill","skills.globalProjectOff":"\u5FFD\u7565\u5DE5\u4F5C\u533A Skill","skills.globalProjectOffHelp":"\u4EC5\u8BFB\u53D6\u5168\u5C40 CLI Skill \u548C botmux Skill","skills.globalProjectAll":"\u8BFB\u53D6\u5DE5\u4F5C\u533A Skill","skills.globalProjectAllHelp":`\u8BFB\u53D6 .agents/skills \u4E0E
19
+ .botmux/skills`,"skills.globalDelivery":"Skill \u6CE8\u5165\u65B9\u5F0F","skills.bots":"Bot Skill \u914D\u7F6E","skills.botsHelp":"\u4E3A\u6BCF\u4E2A bot \u8BBE\u7F6E\u4F18\u5148\u62AB\u9732\u7684 Skill\u3002","skills.bot":"Bot","skills.cli":"CLI","skills.injection":"\u6CE8\u5165\u65B9\u5F0F","skills.status":"\u72B6\u6001","skills.dragHint":"\u4ECE\u5DE6\u4FA7\u62D6\u5165\u5373\u53EF\u5206\u914D\uFF1B\u628A Bot \u4E2D\u7684\u82AF\u7247\u62D6\u56DE\u5DE6\u4FA7\u5373\u53EF\u53D6\u6D88","skills.dragToRemove":"\u62D6\u56DE\u5DE6\u4FA7\u53D6\u6D88\u6B64\u5206\u914D","skills.unassignDropTitle":"\u62D6\u5230\u8FD9\u91CC\u53D6\u6D88\u5206\u914D","skills.unassignDropHint":"\u53EA\u4F1A\u4ECE {bot} \u79FB\u9664\u5F53\u524D\u9879\uFF0C\u4E0D\u4F1A\u5220\u9664 Skill \u6216\u4E13\u9879\u5305","skills.alreadyAssigned":"{item} \u5DF2\u5728\u8BE5 Bot \u7684\u914D\u7F6E\u4E2D","skills.botCount":"{count} \u4E2A Bot","skills.skillCount":"{count} \u4E2A Skill","skills.attach":"\u52A0\u5165\u4F18\u5148\u62AB\u9732","skills.detach":"\u79FB\u9664","skills.detachNamed":"\u79FB\u9664 {skill}","skills.delivery":"\u6CE8\u5165\u65B9\u5F0F","skills.deliveryAuto":"\u81EA\u52A8","skills.deliveryAutoHelp":"\u4F18\u5148\u7528 CLI \u539F\u751F\u901A\u9053\uFF1B\u4E0D\u652F\u6301\u65F6\u81EA\u52A8\u6539\u7528\u63D0\u793A\u8BCD\u6CE8\u5165","skills.deliveryPrompt":"\u63D0\u793A\u8BCD","skills.deliveryPromptHelp":"\u628A Skill \u6E05\u5355\u5199\u5165\u4F1A\u8BDD\u63D0\u793A\u8BCD\uFF0C\u517C\u5BB9\u6240\u6709 CLI","skills.deliveryNative":"\u539F\u751F","skills.deliveryNativeHelp":"\u53EA\u4EA4\u7ED9 CLI \u81EA\u5DF1\u7684 Skill \u673A\u5236\uFF0C\u4E0D\u505A\u63D0\u793A\u8BCD\u515C\u5E95","skills.projectMode":"\u5DE5\u4F5C\u533A Skills","skills.projectDefault":"\u8DDF\u968F\u5168\u5C40","skills.projectDefaultHelp":"\u4F7F\u7528\u5DE6\u4FA7\u9879\u76EE Skill \u9ED8\u8BA4\u503C","skills.projectOff":"\u4E0D\u8BFB\u53D6","skills.projectOffHelp":"\u8FD9\u4E2A bot \u4E0D\u8BFB\u53D6\u5DE5\u4F5C\u533A skill","skills.projectAll":"\u8BFB\u53D6","skills.projectAllHelp":"\u8FD9\u4E2A bot \u52A0\u5165\u5DE5\u4F5C\u533A skill \u5019\u9009","skills.priority":"\u4F18\u5148 skills","skills.noPriority":"\u672A\u914D\u7F6E\uFF0C\u4FDD\u6301 CLI \u9ED8\u8BA4\u884C\u4E3A","skills.pickerPlaceholder":"\u9009\u62E9\u4F18\u5148 Skill","skills.pickerSelectedCount":"\u5DF2\u9009\u62E9 {count} \u4E2A Skill","skills.pickerTriggerHint":"\u70B9\u51FB\u641C\u7D22\u6216\u8C03\u6574\u591A\u9009","skills.pickerSearchPlaceholder":"\u641C\u7D22 Skill \u540D\u79F0\u6216\u63CF\u8FF0","skills.pickerSelectionMeta":"\u5DF2\u9009 {selected} / \u5171 {total}","skills.pickerClear":"\u6E05\u7A7A","skills.pickerNoResults":"\u6CA1\u6709\u5339\u914D\u7684 Skill","skills.saveSelection":"\u4FDD\u5B58\u9009\u62E9","skills.cancel":"\u53D6\u6D88","skills.saving":"\u4FDD\u5B58\u4E2D\u2026","skills.policySaved":"\u4F18\u5148 Skill \u5DF2\u4FDD\u5B58","skills.dangling":"\u672A\u5B89\u88C5","skills.removeInUse":'Skill "{skill}" \u4ECD\u88AB\u4EE5\u4E0B\u914D\u7F6E\u5F15\u7528\uFF1A{refs}\u3002\u5220\u9664\u53EA\u4F1A\u79FB\u9664 registry \u6587\u4EF6\uFF0C\u4E0D\u4F1A\u81EA\u52A8\u6E05\u7406\u5F15\u7528\u3002\u7EE7\u7EED\u5220\u9664\uFF1F',"skills.saved":"\u5DF2\u4FDD\u5B58","skills.failed":"\u5931\u8D25","skills.jobRunning":"\u5904\u7406\u4E2D...","skills.refresh":"\u5237\u65B0","skills.tabPacks":"\u4E13\u9879\u5305","skills.tabLibrary":"Skill \u5E93","skills.tabBots":"Bot \u5206\u914D","skills.tabDelivery":"\u6295\u9012\u8BBE\u7F6E","skills.packs":"\u4E13\u9879\u5305","skills.packCount":"{count} \u4E2A","skills.packsHelp":"\u628A\u4E00\u7EC4\u5DF2\u5B89\u88C5\u80FD\u529B\u547D\u540D\u4FDD\u5B58\uFF0C\u518D\u5206\u914D\u7ED9\u591A\u4E2A Bot\u3002","skills.packsEmpty":"\u8FD8\u6CA1\u6709\u4E13\u9879\u5305\u3002\u5148\u5B89\u88C5 Skill\uFF0C\u518D\u521B\u5EFA\u4E13\u9879\u5305\u3002","skills.packCreate":"\u65B0\u5EFA\u4E13\u9879\u5305","skills.packEdit":"\u7F16\u8F91\u4E13\u9879\u5305","skills.packId":"ID\uFF08slug\uFF0C\u521B\u5EFA\u540E\u4E0D\u53EF\u6539\uFF09","skills.packName":"\u540D\u79F0","skills.packDescription":"\u63CF\u8FF0","skills.packTags":"\u6807\u7B7E\uFF08\u9017\u53F7\u5206\u9694\uFF09","skills.packInclude":"\u5305\u542B\u7684 Skill","skills.packHealthComplete":"\u5B8C\u6574","skills.packHealthMissing":"\u7F3A\u5931 {count} \u9879","skills.packHealthUnassigned":"\u672A\u5206\u914D","skills.packRefCount":"{count} \u4E2A Bot","skills.packRefs":"\u5DF2\u5206\u914D Bot","skills.packMissing":"\u7F3A\u5931 Skill","skills.packIdPlaceholder":"my-pack-slug","skills.packTagsPlaceholder":"\u6807\u7B7E1, \u6807\u7B7E2","skills.packDeleted":"\u5DF2\u5220\u9664\u201C{name}\u201D","skills.packDeleteConfirmTitle":"\u5220\u9664\u4E13\u9879\u5305","skills.packDeleteConfirmBody":"\u4E13\u9879\u5305\u201C{name}\u201D\u4ECD\u88AB Bot \u5F15\u7528\u3002\u5F3A\u5236\u5220\u9664\u53EA\u4F1A\u5220\u9664\u4E13\u9879\u5305\uFF0C\u4E0D\u4F1A\u81EA\u52A8\u6E05\u7406\u8FD9\u4E9B Bot policy \u4E2D\u7684 pack: \u5F15\u7528\uFF0C\u4E5F\u4E0D\u4F1A\u5378\u8F7D\u6210\u5458 Skill\uFF1B\u5220\u9664\u540E\u8FD9\u4E9B\u5F15\u7528\u5C06\u663E\u793A\u4E3A\u7F3A\u5931\u3002","skills.packDeleteAffectedBots":"\u53D7\u5F71\u54CD\u7684 Bot","skills.packDeleteForceWarning":"\u6B64\u64CD\u4F5C\u4E0D\u53EF\u64A4\u9500\uFF0C\u53D7\u5F71\u54CD\u7684 Bot \u5C06\u5728\u65B0\u4F1A\u8BDD\u4E2D\u5931\u53BB\u8BE5\u5305\u63D0\u4F9B\u7684\u80FD\u529B\u3002","skills.installWizard":"\u5B89\u88C5\u5411\u5BFC","skills.wizSource":"\u9009\u62E9\u6765\u6E90","skills.wizDetails":"\u586B\u5199\u8BE6\u60C5","skills.wizInstall":"\u786E\u8BA4\u5B89\u88C5","skills.wizNext":"\u4E0B\u4E00\u6B65","skills.wizBack":"\u4E0A\u4E00\u6B65","skills.wizConfirm":"\u786E\u8BA4\u6765\u6E90\u548C\u9009\u9879\u540E\u70B9\u51FB\u5B89\u88C5\u3002","skills.botInjection":"Per-Bot \u6CE8\u5165\u5F00\u5173","skills.botInjectionHelp":"\u53EA\u5F71\u54CD codex/gemini \u7B49\u4F7F\u7528\u5168\u5C40 skills \u76EE\u5F55\u7684 CLI\u3002","skills.botInjectionNote":"\u6CE8\u610F\uFF1A\u8FD9\u662F per-bot \u5F00\u5173\uFF08global/prompt/off\uFF09\uFF0C\u4E0E\u4E0A\u65B9\u5168\u5C40\u300C\u6CE8\u5165\u65B9\u5F0F\u300D\uFF08auto/prompt/native\uFF09\u662F\u4E24\u5957\u72EC\u7ACB\u8BBE\u7F6E\uFF0C\u4E0D\u8981\u6DF7\u4E3A\u4E00\u8C08\u3002","skills.injectionGlobal":"\u5168\u5C40\u76EE\u5F55","skills.injectionGlobalHelp":"\u6295\u9012\u5230\u8BE5 CLI \u7684\u5168\u5C40 skills \u76EE\u5F55","skills.postInstallPackTitle":"\u4FDD\u5B58\u4E3A\u4E13\u9879\u5305","skills.postInstallPackHelp":"\u5DF2\u5B89\u88C5 {count} \u4E2A Skill\uFF0C\u53EF\u5C06\u672C\u6B21\u7ED3\u679C\u4FDD\u5B58\u4E3A\u4E00\u4E2A\u53EF\u590D\u7528\u7684\u4E13\u9879\u5305\u3002","skills.postInstallPackSkills":"\u672C\u6B21\u5B89\u88C5\u7684 Skill","skills.postInstallPackSkip":"\u6682\u4E0D\u521B\u5EFA","skills.postInstallPackCreate":"\u521B\u5EFA\u5E76\u67E5\u770B\u4E13\u9879\u5305","skills.injectionPrompt":"\u63D0\u793A\u8BCD","skills.injectionPromptHelp":"\u6CE8\u5165\u4F1A\u8BDD\u63D0\u793A\u8BCD\uFF0C\u4E0D\u5199\u5165\u5168\u5C40\u76EE\u5F55","skills.injectionOff":"\u5173\u95ED","skills.injectionOffHelp":"\u53EA\u7559\u63D0\u793A+botmux --help","skills.scopeGlobal":"\uFF08\u5168\u5C40\uFF09","skills.botEdit":"\u7F16\u8F91 Bot","skills.resolvedPreview":"\u5C55\u5F00\u9884\u89C8\uFF08\u53BB\u91CD\u540E\uFF09","skills.packChips":"\u4E13\u9879\u5305","skills.individualSkills":"\u5355\u72EC Skill","skills.finalCount":"\u6700\u7EC8\u80FD\u529B","skills.health":"\u72B6\u6001","skills.healthOk":"\u6B63\u5E38","skills.healthDefault":"\u9ED8\u8BA4","skills.healthMissing":"\u7F3A\u5931 {count} \u9879","skills.healthPackMissing":"\u4E13\u9879\u5305\u4E0D\u5B58\u5728","skills.healthUnknown":"\u672A\u77E5\uFF08\u4E13\u9879\u5305\u6570\u636E\u672A\u52A0\u8F7D\uFF09","skills.packsUnknown":"\u4E13\u9879\u5305\u6570\u636E\u6682\u4E0D\u53EF\u7528\uFF08\u63A5\u53E3\u52A0\u8F7D\u5931\u8D25\uFF09\uFF0C\u65E0\u6CD5\u5224\u65AD\u5065\u5EB7\u72B6\u6001","botDefaults.title":"Bot \u914D\u7F6E","botDefaults.openConsole":"\u98DE\u4E66\u540E\u53F0","botDefaults.metaOnline":"\u5728\u7EBF \xB7 daemon \u6B63\u5E38","botDefaults.search":"\u641C\u7D22 bot \u540D / app id","botDefaults.refresh":"\u5237\u65B0","botDefaults.rosterCount":"{count} \u4E2A\u673A\u5668\u4EBA","botDefaults.rosterFiltered":"\u5171 {total} \u4E2A","botDefaults.tabNavigation":"Bot \u914D\u7F6E\u5206\u7C7B","botDefaults.tabCommon":"\u5E38\u7528","botDefaults.tabSessions":"\u4F1A\u8BDD","botDefaults.tabSecurity":"\u6743\u9650\u4E0E\u5B89\u5168","botDefaults.tabCards":"\u6D88\u606F\u5361\u7247","botDefaults.tabAdvanced":"\u9AD8\u7EA7","botDefaults.tabHint":"\u5207\u6362\u5206\u7C7B\u4E0D\u4F1A\u4E22\u5931\u672A\u4FDD\u5B58\u8F93\u5165","botDefaults.sectionOncall":"\u65B0\u7FA4 Oncall","botDefaults.sectionBrand":"\u5361\u7247\u7B7E\u540D","botDefaults.renameTitle":"\u4FEE\u6539\u673A\u5668\u4EBA\u540D\u79F0","botDefaults.renameAction":"\u4FEE\u6539\u540D\u79F0","botDefaults.renameSave":"\u4FDD\u5B58","botDefaults.renameCancel":"\u53D6\u6D88","botDefaults.renameEmpty":"\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A","botDefaults.renaming":"\u6B63\u5728\u540C\u6B65\u5230\u98DE\u4E66\u5F00\u653E\u5E73\u53F0\uFF08\u6539\u540D\u5E76\u53D1\u5E03\u65B0\u7248\u672C\uFF0C\u7EA6 10 \u79D2\uFF09\u2026","botDefaults.renameOkFeishu":"\u5DF2\u4FEE\u6539\u98DE\u4E66\u5E94\u7528\u540D\uFF0C\u7FA4\u5185\u540D\u79F0\u5DF2\u751F\u6548","botDefaults.renameLocalOnly":"\u98DE\u4E66\u4FA7\u6539\u540D\u5931\u8D25\uFF08{reason}\uFF09\uFF0C\u5DF2\u4EC5\u66F4\u65B0 dashboard \u5C55\u793A\u540D","botDefaults.renameWarn.no_session":"\u670D\u52A1\u5668\u7F3A\u5C11\u98DE\u4E66 Web \u767B\u5F55\u6001\uFF0C\u8BF7\u5728\u670D\u52A1\u5668\u8FD0\u884C botmux setup \u91CD\u65B0\u626B\u7801","botDefaults.renameWarn.session_expired":"\u98DE\u4E66 Web \u767B\u5F55\u6001\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u5728\u670D\u52A1\u5668\u8FD0\u884C botmux setup \u91CD\u65B0\u626B\u7801","botDefaults.renameWarn.no_access":"\u5F53\u524D\u7F13\u5B58\u7684\u98DE\u4E66\u8D26\u53F7\u4E0D\u662F\u8BE5\u5E94\u7528\u7684\u534F\u4F5C\u8005","botDefaults.renameWarn.unsupported_brand":"\u56FD\u9645\u7248 Lark \u79DF\u6237\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u6539\u540D","botDefaults.renameFailed":"\u6539\u540D\u5931\u8D25\uFF1A{error}","botDefaults.avatarTitle":"\u4FEE\u6539\u673A\u5668\u4EBA\u5934\u50CF","botDefaults.avatarUploading":"\u6B63\u5728\u540C\u6B65\u5230\u98DE\u4E66\u5F00\u653E\u5E73\u53F0\uFF08\u4E0A\u4F20\u5934\u50CF\u5E76\u53D1\u5E03\u65B0\u7248\u672C\uFF0C\u7EA6 10 \u79D2\uFF09\u2026","botDefaults.avatarOkFeishu":"\u5DF2\u4FEE\u6539\u98DE\u4E66\u5E94\u7528\u5934\u50CF\uFF0C\u7FA4\u5185\u5934\u50CF\u5DF2\u751F\u6548","botDefaults.avatarFailed":"\u6539\u5934\u50CF\u5931\u8D25\uFF1A{error}","botDefaults.avatarBadImage":"\u65E0\u6CD5\u8BFB\u53D6\u8FD9\u5F20\u56FE\u7247\uFF0C\u6362\u4E00\u5F20 PNG / JPG \u518D\u8BD5","botDefaults.avatarWarn.no_session":"\u670D\u52A1\u5668\u7F3A\u5C11\u98DE\u4E66 Web \u767B\u5F55\u6001\uFF0C\u8BF7\u5728\u670D\u52A1\u5668\u8FD0\u884C botmux setup \u91CD\u65B0\u626B\u7801","botDefaults.avatarWarn.session_expired":"\u98DE\u4E66 Web \u767B\u5F55\u6001\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u5728\u670D\u52A1\u5668\u8FD0\u884C botmux setup \u91CD\u65B0\u626B\u7801","botDefaults.avatarWarn.no_access":"\u5F53\u524D\u7F13\u5B58\u7684\u98DE\u4E66\u8D26\u53F7\u4E0D\u662F\u8BE5\u5E94\u7528\u7684\u534F\u4F5C\u8005","botDefaults.avatarWarn.unsupported_brand":"\u56FD\u9645\u7248 Lark \u79DF\u6237\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u6539\u5934\u50CF","feishuLogin.entry":"\u626B\u7801\u767B\u5F55\u98DE\u4E66","feishuLogin.title":"\u626B\u7801\u5237\u65B0\u98DE\u4E66\u767B\u5F55\u6001","feishuLogin.starting":"\u6B63\u5728\u83B7\u53D6\u4E8C\u7EF4\u7801\u2026","feishuLogin.scanHint":"\u7528\u98DE\u4E66 App \u626B\u7801\u5E76\u786E\u8BA4\u767B\u5F55\uFF0C\u5373\u53EF\u6388\u6743\u6539\u540D\uFF08\u767B\u5F55\u6001\u4EC5\u5B58\u672C\u673A\uFF0C\u4E0E setup \u590D\u7528\uFF09","feishuLogin.success":"\u2713 \u767B\u5F55\u6210\u529F\uFF0C\u6B63\u5728\u4E3A\u4F60\u91CD\u8BD5\u6539\u540D\u2026","feishuLogin.failed":"\u767B\u5F55\u5931\u8D25\uFF1A{reason}","feishuLogin.retry":"\u91CD\u65B0\u83B7\u53D6\u4E8C\u7EF4\u7801","feishuLogin.close":"\u5173\u95ED","feishuLogin.qrAlt":"\u98DE\u4E66\u767B\u5F55\u4E8C\u7EF4\u7801","botDefaults.sectionAgent":"Agent \u914D\u7F6E","botDefaults.agentCli":"CLI","botDefaults.agentMissingOption":"{label}\uFF08\u672A\u5B89\u88C5\uFF1A{command}\uFF09","botDefaults.agentMissingHint":"\u5F53\u524D daemon PATH \u627E\u4E0D\u5230 {command}\uFF1B\u4FDD\u5B58\u540E\u65B0\u4F1A\u8BDD\u65E0\u6CD5\u542F\u52A8\uFF0C\u8BF7\u5148\u5B89\u88C5\u6216\u4FEE\u6B63\u8DEF\u5F84\u3002","botDefaults.agentModel":"\u6A21\u578B","botDefaults.agentModelPlaceholder":"\u7559\u7A7A\u4F7F\u7528\u8BE5 CLI \u9ED8\u8BA4\u6A21\u578B","botDefaults.agentHelp":"\u6A21\u578B\u4FEE\u6539\u53EA\u5F71\u54CD\u65B0\u4F1A\u8BDD\uFF1B\u5207\u6362 CLI\u3001Runtime \u6216 Wrapper \u4F1A\u7ACB\u5373\u5173\u95ED\u4ECD\u4F7F\u7528\u65E7\u542F\u52A8\u8EAB\u4EFD\u7684\u6D3B\u8DC3\u4F1A\u8BDD\uFF0C\u907F\u514D\u540E\u7EED\u6062\u590D\u5230\u9519\u8BEF\u7684 CLI\u3002","botDefaults.agentReasoningEffort":"\u601D\u8003\u5F3A\u5EA6","botDefaults.agentReasoningEffortHelp":"Codex \u65B0\u4F1A\u8BDD\u9ED8\u8BA4\u4F7F\u7528\u7684\u601D\u8003\u5F3A\u5EA6\u3002\u4FDD\u5B58\u540E\u4E0D\u4F1A\u6539\u53D8\u5DF2\u7ECF\u521B\u5EFA\u7684\u4F1A\u8BDD\u3002","botDefaults.agentTurnTimeout":"\u5355\u8F6E\u8D85\u65F6\uFF08\u5206\u949F\uFF09","botDefaults.agentTurnTimeoutHelp":"\u4EC5 dsh CLI \u751F\u6548\uFF1Arunner \u7B49\u5F85\u5355\u8F6E\u5BF9\u8BDD\u7ED3\u675F\u7684\u4E0A\u9650\uFF1B\u8D85\u65F6\u4F1A\u4E2D\u6B62\u672C\u8F6E\u5E76\u62A5\u9519\u3002\u7559\u7A7A\u4F7F\u7528\u9ED8\u8BA4 10 \u5206\u949F\u3002\u5DE5\u5177\u94FE\u957F\u6216\u6A21\u578B\u504F\u6162\u65F6\u53EF\u8C03\u5927\uFF08\u5982 30\uFF09\u3002\u4FDD\u5B58\u540E\u5728\u4E0B\u4E00\u6B21\u4F1A\u8BDD\u62C9\u8D77\u65F6\u751F\u6548\u3002","botDefaults.agentTurnTimeoutPlaceholder":"\u7559\u7A7A = \u9ED8\u8BA4 10 \u5206\u949F","botDefaults.agentTurnTimeoutInvalid":"\u8BF7\u8F93\u5165\u6B63\u6570\u5206\u949F\uFF1B\u7559\u7A7A\u8868\u793A\u7528\u9ED8\u8BA4 10 \u5206\u949F\u3002\u8D85\u65F6\u4E0A\u9650\u7EA6 35791 \u5206\u949F\u3002","botDefaults.agentReasoningEffortDefault":"\u8DDF\u968F Codex \u9ED8\u8BA4\u503C","botDefaults.agentReasoningEffortLow":"Low","botDefaults.agentReasoningEffortMedium":"Medium","botDefaults.agentReasoningEffortHigh":"High","botDefaults.agentReasoningEffortXhigh":"Extra high","botDefaults.agentReasoningEffortMax":"Max","botDefaults.agentReasoningEffortUltra":"Ultra","botDefaults.agentSave":"\u4FDD\u5B58 Agent \u914D\u7F6E","botDefaults.runtimeTitle":"Codex \u8FD0\u884C\u65F6","botDefaults.runtimeHelp":"\u9009\u62E9\u5B98\u65B9 Codex\uFF0C\u6216\u914D\u7F6E\u4E00\u4E2A\u4FDD\u6301 Codex \u547D\u4EE4\u884C\u3001resume \u548C\u8F93\u51FA\u534F\u8BAE\u517C\u5BB9\u7684\u81EA\u5B9A\u4E49\u53D1\u884C\u7248\u3002","botDefaults.runtimeOfficial":"Official Codex","botDefaults.runtimeCustom":"\u81EA\u5B9A\u4E49\u517C\u5BB9\u7248","botDefaults.runtimeOfficialNote":"\u4F7F\u7528 daemon PATH \u4E2D\u7684 codex\uFF0C\u5E76\u6309\u5B98\u65B9 Codex \u7684\u7248\u672C\u4E0E\u66F4\u65B0\u6765\u6E90\u68C0\u67E5\u3002","botDefaults.runtimeLegacyNote":"\u68C0\u6D4B\u5230\u65E7\u7248 CLI \u5165\u53E3\uFF08\u53EA\u8BFB\u517C\u5BB9\u6001\uFF09\u3002\u53EA\u4FEE\u6539\u6A21\u578B\u4F1A\u4FDD\u7559\u5B83\uFF1B\u9009\u62E9 Official Codex \u4F1A\u6E05\u9664\u65E7\u5165\u53E3\uFF0C\u9009\u62E9\u201C\u81EA\u5B9A\u4E49\u517C\u5BB9\u7248\u201D\u53EF\u8FC1\u79FB\u4E3A\u7ED3\u6784\u5316 Runtime\u3002","botDefaults.runtimeLegacyPath":"\u65E7\u7248 CLI \u5165\u53E3","botDefaults.runtimeCustomNote":"\u590D\u7528 Codex adapter\uFF1B\u81EA\u5B9A\u4E49\u7248\u672C\u3001\u53EF\u6267\u884C\u6587\u4EF6\u548C\u66F4\u65B0\u7B56\u7565\u5747\u72EC\u7ACB\u4E8E\u5B98\u65B9 Codex\u3002","botDefaults.runtimeId":"Runtime ID","botDefaults.runtimeIdHelp":"\u7A33\u5B9A\u4E14\u552F\u4E00\u7684\u53D1\u884C\u7248\u6807\u8BC6\uFF0C\u7528\u4E8E\u4F1A\u8BDD\u5FEB\u7167\u548C\u66F4\u65B0\u72B6\u6001\u5F52\u5C5E\uFF1B\u540E\u7EED\u4E0D\u8981\u968F\u5C55\u793A\u540D\u53D8\u66F4\u3002","botDefaults.runtimeDisplayName":"\u5C55\u793A\u540D\u79F0","botDefaults.runtimeDisplayNamePlaceholder":"\u7559\u7A7A\u4F7F\u7528 Runtime ID","botDefaults.runtimeExecutable":"\u53EF\u6267\u884C\u6587\u4EF6","botDefaults.runtimeExecutableHelp":"\u586B\u5199 daemon \u53EF\u6267\u884C\u7684\u5355\u4E2A\u547D\u4EE4\u540D\u6216\u7EDD\u5BF9\u8DEF\u5F84\uFF0C\u4E0D\u8981\u9644\u5E26\u53C2\u6570\u3002","botDefaults.runtimeUpdateProvider":"\u66F4\u65B0\u6765\u6E90","botDefaults.runtimeProviderAuto":"auto \u2014 \u81EA\u52A8\u63A2\u6D4B\u552F\u4E00 npm \u6765\u6E90","botDefaults.runtimeProviderSelf":"self \u2014 \u53EA\u4F7F\u7528 runtime doctor","botDefaults.runtimeProviderNpm":"npm \u2014 \u6307\u5B9A npm package","botDefaults.runtimeProviderNone":"none \u2014 \u4E0D\u68C0\u67E5\u66F4\u65B0","botDefaults.runtimePackageName":"npm package","botDefaults.runtimePackageHelp":"\u4F8B\u5982 @vendor/codex\uFF1B\u4EC5\u7528\u4E8E\u67E5\u8BE2\u8FD9\u4E2A\u53D1\u884C\u7248\u81EA\u5DF1\u7684 latest \u7248\u672C\u3002","botDefaults.runtimeRequired":"Runtime ID \u548C\u53EF\u6267\u884C\u6587\u4EF6\u4E0D\u80FD\u4E3A\u7A7A\u3002","botDefaults.runtimePackageRequired":"\u9009\u62E9 npm \u66F4\u65B0\u6765\u6E90\u65F6\u5FC5\u987B\u586B\u5199 package\u3002","botDefaults.runtimeProbeOk":"\u8FD0\u884C\u65F6\u63A2\u9488\u901A\u8FC7\uFF1Av{version} \xB7 \u66F4\u65B0\u6765\u6E90 {provider}","botDefaults.runtimeProbeMissing":"\u670D\u52A1\u5668\u672A\u8FD4\u56DE\u8FD0\u884C\u65F6\u63A2\u9488\u7ED3\u679C\uFF1B\u8BF7\u5237\u65B0\u540E\u786E\u8BA4\u914D\u7F6E\u662F\u5426\u751F\u6548\u3002","botDefaults.agentClosedCount":"\u5DF2\u5173\u95ED {count} \u4E2A\u4F7F\u7528\u65E7 CLI / Runtime / Wrapper \u7684\u6D3B\u8DC3\u4F1A\u8BDD","botDefaults.skillInjection":"botmux skills \u6CE8\u5165\u65B9\u5F0F","botDefaults.skillInjectionDynamic":"\u52A8\u6001\u6CE8\u5165\uFF08--plugin-dir\uFF0C\u9010\u4F1A\u8BDD\uFF09","botDefaults.skillInjectionDynamicUnsupported":"\u52A8\u6001\u6CE8\u5165\uFF08\u8BE5 CLI \u4E0D\u652F\u6301\uFF09","botDefaults.skillInjectionPrompt":"prompt \u2014 \u6CE8\u5165\u4F1A\u8BDD prompt\uFF0C\u4E0D\u843D\u5168\u5C40\u76D8","botDefaults.skillInjectionGlobal":"global \u2014 \u88C5\u8FDB CLI \u5168\u5C40 skills \u76EE\u5F55","botDefaults.skillInjectionOff":"off \u2014 \u53EA\u7ED9 botmux --help \u5F15\u5BFC","botDefaults.skillInjectionHelpDynamic":"\u8BE5 CLI \u652F\u6301 --plugin-dir \u52A8\u6001\u6CE8\u5165\u3002skills \u4EC5\u5F53\u524D\u4F1A\u8BDD\u53EF\u89C1\uFF0C\u4E0D\u5199\u5165\u5168\u5C40\u76EE\u5F55\uFF0C\u65E0\u9700\u989D\u5916\u914D\u7F6E\u3002","botDefaults.skillInjectionHelp":"\u9009\u62E9 botmux skills \u7684\u6CE8\u5165\u65B9\u5F0F\uFF1Aprompt \u4E3A\u9ED8\u8BA4\u65B9\u5F0F\uFF0C\u4F1A\u5728\u4F1A\u8BDD\u5F00\u59CB\u65F6\u5199\u5165\u63D0\u793A\u8BCD\u4E14\u4E0D\u6539\u5168\u5C40\u76EE\u5F55\uFF1Bglobal \u5B89\u88C5\u5230 CLI \u5168\u5C40 skills \u76EE\u5F55\uFF1Boff \u4EC5\u4FDD\u7559 botmux --help \u5F15\u5BFC\u3002\u6539\u52A8\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF0C\u5207\u6362 global \u9700\u91CD\u542F daemon\u3002","botDefaults.agentSaved":"\u5DF2\u4FDD\u5B58\uFF08\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF09","botDefaults.warning":"\u5F00\u542F\u540E\uFF0C\u6CA1\u6709 oncall binding \u7684\u7FA4\u4F1A\u5728\u4E0B\u6B21\u5F00\u65B0\u8BDD\u9898\u65F6\u81EA\u52A8\u7ED1\u5B9A\u5230\u8BE5\u76EE\u5F55\uFF1B\u624B\u52A8\u7ED1\u5B9A\u6216\u624B\u52A8\u89E3\u7ED1\u8FC7\u7684\u7FA4\u4E0D\u4F1A\u88AB\u8986\u76D6\u3002","botDefaults.empty":"\u6CA1\u6709\u5728\u7EBF bot\u3002\u5148 botmux restart \u8BA9 daemon \u4E0A\u7EBF\u3002","botDefaults.defaultOncall":"\u9ED8\u8BA4\u8FDB\u5165 oncall \u6A21\u5F0F","botDefaults.defaultOncallHelp":"\u6240\u6709\u672A\u7ED1\u5B9A\u7684\u7FA4\u4E0B\u6B21\u5F00\u8BDD\u9898\u81EA\u52A8\u7ED1\u5B9A","botDefaults.workingDir":"\u9ED8\u8BA4\u5DE5\u4F5C\u76EE\u5F55","botDefaults.lastEnabled":"\u4E0A\u6B21\u542F\u7528\u65F6\u95F4","botDefaults.autobound":"\u5DF2\u81EA\u52A8\u7ED1\u5B9A {count} \u4E2A\u7FA4","botDefaults.save":"\u4FDD\u5B58","botDefaults.required":"\u9009\u62E9\u300C\u4EC5\u9ED8\u8BA4\u76EE\u5F55\u300D\u6216\u300COncall \u6A21\u5F0F\u300D\u65F6\u5FC5\u987B\u586B\u5DE5\u4F5C\u76EE\u5F55","botDefaults.sectionWorkingDir":"\u9ED8\u8BA4\u5DE5\u4F5C\u76EE\u5F55","botDefaults.workingDirMode":"\u6A21\u5F0F","botDefaults.workingDirField":"\u76EE\u5F55","botDefaults.workingDirModeOff":"\u5173\u95ED\uFF08\u65B0\u4F1A\u8BDD\u5F39\u300C\u9009\u4ED3\u5E93\u300D\u5361\uFF09","botDefaults.workingDirModeDefault":"\u4EC5\u9ED8\u8BA4\u76EE\u5F55\uFF08\u4E0D\u6539\u6743\u9650\uFF09","botDefaults.workingDirModeOncall":"Oncall \u6A21\u5F0F\uFF08\u7FA4\u5185\u5F00\u653E\u5BF9\u8BDD\uFF09","botDefaults.workingDirModeHelp":"\u8BBE\u7F6E\u65B0\u4F1A\u8BDD\u542F\u52A8\u76EE\u5F55\uFF1A\u5173\u95ED=\u8D70\u4ED3\u5E93\u9009\u62E9\uFF1B\u4EC5\u9ED8\u8BA4\u76EE\u5F55=\u76F4\u63A5\u8FDB\u5165\u8BE5\u76EE\u5F55\u4E14\u4E0D\u6539\u53D8\u6743\u9650\uFF1BOncall=\u9ED8\u8BA4\u76EE\u5F55 + \u65B0\u666E\u901A\u7FA4\u81EA\u52A8\u5F00\u653E\u5BF9\u8BDD\u3002\u6539\u52A8\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\u3002","botDefaults.autoWorktree":"\u6BCF\u4E2A\u65B0\u4F1A\u8BDD\u81EA\u52A8\u521B\u5EFA worktree","botDefaults.autoWorktreeHelp":"\u4EC5\u7528\u4E8E\u300C\u4EC5\u9ED8\u8BA4\u76EE\u5F55\u300D\u3002\u65B0\u4F1A\u8BDD\u4F1A\u5728\u9ED8\u8BA4 git \u4ED3\u5E93\u4E2D\u521B\u5EFA\u72EC\u7ACB worktree\uFF0C\u907F\u514D\u5E76\u53D1\u4F1A\u8BDD\u4E92\u76F8\u5F71\u54CD\uFF1B\u5931\u8D25\u65F6\u56DE\u9000\u5230\u9ED8\u8BA4\u76EE\u5F55\u3002/close \u4E0D\u4F1A\u81EA\u52A8\u5220\u9664 worktree\u3002","botDefaults.workingDirSaved":"\u5DF2\u4FDD\u5B58\uFF08\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF09","botDefaults.brandLabel":"\u4E2A\u6027\u7B7E\u540D\uFF08\u5361\u7247\u9875\u811A\uFF09","botDefaults.brandLabelHelp":"\u8BBE\u7F6E\u8BE5 bot \u5361\u7247\u9875\u811A\u7B7E\u540D\u3002\u7559\u7A7A=\u4E0D\u663E\u793A\uFF1B\u586B\u5199=\u81EA\u5B9A\u4E49 Markdown\uFF1B\u6062\u590D\u9ED8\u8BA4=\u663E\u793A botmux\u3002\u652F\u6301\u53D8\u91CF\uFF1A{cwdName}=\u4F1A\u8BDD\u5F53\u524D\u76EE\u5F55\u663E\u793A\u540D\uFF08\u8BE5\u76EE\u5F55 .botmux-dir.json \u7684 name\uFF0C\u7F3A\u7701\u7528\u76EE\u5F55\u540D\uFF09\u3001{cwd}=\u5B8C\u6574\u8DEF\u5F84\u3001{cwdUrl}=\u8BE5\u76EE\u5F55 .botmux-dir.json \u7684 url\uFF1B\u7A7A\u94FE\u63A5\u81EA\u52A8\u964D\u7EA7\u4E3A\u7EAF\u6587\u672C\u3002\u4F8B\uFF1A[{cwdName}]({cwdUrl})","botDefaults.brandLabelPlaceholder":"\u9ED8\u8BA4\uFF1Abotmux\uFF08\u7559\u7A7A\u5219\u4E0D\u663E\u793A\uFF09","botDefaults.sectionSandbox":"\u6587\u4EF6\u6C99\u76D2\uFF08oncall\uFF09","botDefaults.sandboxToggle":"\u5F00\u542F\u6587\u4EF6\u6C99\u76D2","botDefaults.sandboxHelp":"\u5F00\u542F\u540E\uFF0C\u8BE5 bot \u7684\u6BCF\u4E2A\u4F1A\u8BDD\u90FD\u8DD1\u5728\u6C99\u76D2\u91CC\uFF1Aagent \u80FD\u5728\u9879\u76EE\u76EE\u5F55\u5185\u6B63\u5E38\u8BFB\u5199\u5E72\u6D3B\uFF0C\u4F46\u78B0\u4E0D\u5230\u9879\u76EE\u5916\u4F60\u78C1\u76D8\u4E0A\u7684\u771F\u5B9E\u6587\u4EF6\u3001\u5BC6\u94A5\u3001\u522B\u7684\u4F1A\u8BDD\u6570\u636E\u2014\u2014\u5BF9\u9879\u76EE\u5916\u7684\u5199\u5165\u4F1A\u88AB\u9694\u79BB/\u62E6\u622A\u3002\u9002\u5408\u628A\u673A\u5668\u4EBA\u5206\u4EAB\u7ED9\u534A\u53D7\u4FE1\u4EFB\u7684\u4EBA\uFF08oncall\uFF09\u3002Linux \u7528 bwrap\u3001macOS \u7528 Seatbelt\uFF0C\u4E24\u7AEF\u4FDD\u62A4\u6548\u679C\u4E00\u81F4\uFF1B\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\u3002","botDefaults.sandboxSaved":"\u5DF2\u4FDD\u5B58\uFF08\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF09","botDefaults.sandboxReadIsoOn":"\u589E\u5F3A CLI \u6570\u636E\u9694\u79BB\uFF1A\u8BE5 bot \u7684 CLI \u51ED\u8BC1\u3001\u914D\u7F6E\u4E0E\u4F1A\u8BDD\u6570\u636E\u4F1A\u91CD\u5B9A\u5411\u5230\u4E13\u5C5E\u76EE\u5F55\uFF0C\u4E0E\u5176\u5B83 bot \u5206\u5F00\uFF08claude-code / codex\uFF0C\u4E14\u672A\u914D wrapper \u7F51\u5173\uFF09\u3002","botDefaults.sandboxReadIsoOff":"\u57FA\u7840\u6587\u4EF6\u6C99\u76D2\u4ECD\u63D0\u4F9B deny-by-default \u7684\u8BFB\u5199\u9694\u79BB\uFF1B\u5F53\u524D CLI \u6216 wrapper \u914D\u7F6E\u4E0D\u652F\u6301\u5C06 CLI \u5168\u5C40\u6570\u636E\u91CD\u5B9A\u5411\u5230\u672C bot \u4E13\u5C5E\u76EE\u5F55\u3002","botDefaults.sectionSandboxPaths":"\u6C99\u76D2\u76EE\u5F55\u767D\u540D\u5355","botDefaults.sbxPathsHelp":"deny-by-default\uFF1A\u9ED8\u8BA4\u4EC0\u4E48\u90FD\u770B\u4E0D\u5230\uFF0C\u53EA\u6709\u4E0B\u9762\u663E\u5F0F\u653E\u884C\u7684\u76EE\u5F55\u624D\u53EF\u89C1\u3002\u6BCF\u4E2A\u76EE\u5F55\u4E09\u6001\u5FAA\u73AF\uFF1A\u7EE7\u627F\u7236\u7EA7 \u2192 \u53EF\u5199 \u2192 \u53EA\u8BFB \u2192 \u5C01\u7981\u3002\u6309\u6700\u957F\u524D\u7F00\u751F\u6548\uFF0C\u53EF\u4EFB\u610F\u5D4C\u5957\uFF08\u53EF\u5199\u76EE\u5F55\u91CC\u6316\u5C01\u7981\u6D1E\u3001\u6D1E\u91CC\u518D\u5F00\u53EF\u5199\u7A97\uFF09\u3002\u6539\u52A8\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\u3002","botDefaults.sbxPathsSaved":"\u5DF2\u4FDD\u5B58\uFF08\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF09","botDefaults.sbxPathsSave":"\u4FDD\u5B58\u7B56\u7565","botDefaults.sbxPathsTextMode":"\u5207\u5230\u6587\u672C\u6A21\u5F0F\uFF08\u53EF\u590D\u5236\u5206\u4EAB\uFF09","botDefaults.sbxPathsTreeMode":"\u5207\u56DE\u76EE\u5F55\u6811","botDefaults.sbxRw":"\u53EF\u5199","botDefaults.sbxRo":"\u53EA\u8BFB","botDefaults.sbxDeny":"\u5C01\u7981","botDefaults.sbxNone":"\u4E0D\u53EF\u89C1","botDefaults.sbxInherit":"\u7EE7\u627F","botDefaults.sbxNoSubdirs":"\uFF08\u65E0\u5B50\u76EE\u5F55\uFF09","botDefaults.sbxTestPlaceholder":"\u8F93\u5165\u8DEF\u5F84\u6D4B\u8BD5\u5B9E\u9645\u751F\u6548\u8BBF\u95EE\uFF0C\u5982 ~/my-data/secrets/x","botDefaults.sectionBackend":"\u4F1A\u8BDD\u540E\u7AEF","botDefaults.backendLabel":"\u540E\u7AEF\u7C7B\u578B","botDefaults.backendHelp":"\u8BE5 bot \u65B0\u4F1A\u8BDD\u4F7F\u7528\u7684\u4F1A\u8BDD\u540E\u7AEF\uFF1B\u6539\u52A8\u5B9E\u65F6\u751F\u6548\u4E8E\u65B0\u4F1A\u8BDD\uFF0C\u8FD0\u884C\u4E2D\u7684\u4F1A\u8BDD\u4ECD\u7528\u5176\u542F\u52A8\u65F6\u7684\u540E\u7AEF\u3001\u4E0D\u53D7\u5F71\u54CD\u3002tmux \u652F\u6301 adopt / Web \u7EC8\u7AEF\uFF1Bherdr \u6258\u7BA1\u6301\u4E45\u4F1A\u8BDD\uFF1Bzmx >= 0.7.0 \u4F7F\u7528 tail \u53D8\u5316\u4FE1\u53F7 + history \u6743\u5A01\u7EAF\u6587\u672C\u5C4F\u5E55 + send \u8F93\u5165\uFF08\u65E0 Web TUI\uFF09\uFF1Bzellij \u5B9E\u9A8C\u6027\uFF1Bpty \u6700\u8F7B\u91CF\u4F46\u4E0D\u8DE8 daemon \u91CD\u542F\u5B58\u6D3B\u3002\u201C\u81EA\u52A8\u201D\u8DDF\u968F\u5168\u5C40\u9ED8\u8BA4\u3002","botDefaults.backendAuto":"\u81EA\u52A8\uFF08\u8DDF\u968F\u5168\u5C40\u9ED8\u8BA4\uFF09","botDefaults.backendTmux":"tmux","botDefaults.backendHerdr":"herdr","botDefaults.backendZellij":"zellij","botDefaults.backendZmx":"zmx","botDefaults.backendPty":"pty","botDefaults.backendSaved":"\u5DF2\u4FDD\u5B58\uFF08\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF09","botDefaults.brandSave":"\u4FDD\u5B58\u7B7E\u540D","botDefaults.brandReset":"\u6062\u590D\u9ED8\u8BA4","botDefaults.brandStateDefault":"\u5F53\u524D\uFF1A\u9ED8\u8BA4 botmux","botDefaults.brandStateOff":"\u5F53\u524D\uFF1A\u5DF2\u5173\u95ED","botDefaults.brandStateCustom":"\u5F53\u524D\uFF1A\u81EA\u5B9A\u4E49","botDefaults.sectionCard":"\u4EFB\u52A1\u5361\u7247","botDefaults.cardFeedbackGroup":"\u4EFB\u52A1\u53CD\u9988","botDefaults.cardContentGroup":"\u5361\u7247\u5185\u5BB9","botDefaults.cardManualGroup":"\u624B\u52A8 /card","botDefaults.usageDisplay":"\u7528\u91CF\u663E\u793A\u4F4D\u7F6E","botDefaults.usageDisplayHelp":"\u9009\u62E9\u4E0A\u4E0B\u6587\u5360\u7528\u548C\u672C\u8F6E\u7528\u91CF\u7684\u663E\u793A\u4F4D\u7F6E\u3002\u4EFB\u52A1\u72B6\u6001\u5361\u7247\u5185\u4F1A\u663E\u793A\u5B8C\u6574\u7528\u91CF\uFF0C\u6700\u7EC8\u7ED3\u679C\u5E95\u90E8\u53EA\u663E\u793A\u4E0A\u4E0B\u6587\u5360\u7528\uFF1B\u4EC5\u5F71\u54CD\u5C55\u793A\uFF0C\u4E0D\u5F71\u54CD Usage Ledger \u7EDF\u8BA1\u3002","botDefaults.usageDisplayStreaming":"\u4EFB\u52A1\u72B6\u6001\u5361\u7247\u5185\uFF08\u9ED8\u8BA4\uFF09","botDefaults.usageDisplayFooter":"\u6700\u7EC8\u7ED3\u679C\u5E95\u90E8","botDefaults.usageDisplayOff":"\u4E0D\u663E\u793A","botDefaults.autoStreaming":"\u4EFB\u52A1\u6267\u884C\u65F6\u663E\u793A\u72B6\u6001\u5361\u7247","botDefaults.autoStreamingDescription":"\u9ED8\u8BA4\u5F00\u542F\uFF1B\u4EFB\u52A1\u8FDB\u884C\u4E2D\u6301\u7EED\u66F4\u65B0\u6267\u884C\u72B6\u6001\u3002","botDefaults.autoStreamingHelp":"\u5F00\u542F\u540E\uFF0C\u6BCF\u6B21\u4EFB\u52A1\u6267\u884C\u671F\u95F4\u90FD\u4F1A\u663E\u793A\u5E76\u6301\u7EED\u66F4\u65B0\u72B6\u6001\u5361\u7247\uFF1B\u5173\u95ED\u540E\u53EA\u53D1\u9001\u6700\u7EC8\u7ED3\u679C\u3002","botDefaults.silentTurnReactions":"\u65E0\u5361\u7247\u65F6\u663E\u793A\u5904\u7406\u72B6\u6001","botDefaults.silentTurnReactionsDescription":"\u5728\u539F\u6D88\u606F\u4E0A\u6807\u8BB0\u201C\u5DF2\u6536\u5230\u201D\u548C\u201C\u5DF2\u5B8C\u6210\u201D\u3002","botDefaults.silentTurnReactionsHelp":"\u5173\u95ED\u4EFB\u52A1\u72B6\u6001\u5361\u7247\u540E\uFF0C\u9ED8\u8BA4\u7528\u6D88\u606F\u8868\u60C5\u6807\u8BB0\u4EFB\u52A1\u5DF2\u6536\u5230\u548C\u5DF2\u5B8C\u6210\uFF1B\u5173\u95ED\u6B64\u9879\u540E\u4E0D\u518D\u6DFB\u52A0\u8FD9\u4E9B\u72B6\u6001\u6807\u8BB0\u3002","botDefaults.writableLink":"\u5728\u5361\u7247\u4E2D\u663E\u793A\u53EF\u64CD\u4F5C\u7EC8\u7AEF","botDefaults.writableLinkDescription":"\u7FA4\u6210\u5458\u53EF\u76F4\u63A5\u64CD\u4F5C\u7EC8\u7AEF\uFF0C\u4EC5\u5728\u53EF\u4FE1\u7FA4\u5F00\u542F\u3002","botDefaults.writableLinkHelp":"\u5BF9\u81EA\u52A8\u663E\u793A\u7684\u72B6\u6001\u5361\u7247\u548C\u516C\u5F00\u7684\u624B\u52A8 /card \u5361\u7247\u751F\u6548\u3002\u5F00\u542F\u540E\uFF0C\u770B\u5230\u5361\u7247\u7684\u7FA4\u6210\u5458\u53EF\u76F4\u63A5\u64CD\u4F5C\u7EC8\u7AEF\u3002","botDefaults.manualCardIntro":"\u5728\u6D3B\u8DC3\u4F1A\u8BDD\u4E2D\u53D1\u9001 /card\uFF0C\u53EF\u4E34\u65F6\u67E5\u770B\u5F53\u524D\u4EFB\u52A1\u3002","botDefaults.privateCard":"\u624B\u52A8 /card \u4EC5\u6388\u6743\u4EBA\u53EF\u89C1","botDefaults.privateCardDescription":"\u4EC5\u666E\u901A\u7FA4\u53EF\u7528\uFF1B\u53D1\u9001\u9759\u6001\u5FEB\u7167\uFF0C\u4E0D\u4F1A\u6301\u7EED\u66F4\u65B0\u3002","botDefaults.privateCardHelp":"\u5F00\u542F\u540E\uFF0C\u666E\u901A\u7FA4\u4E2D\u7684 /card \u53EA\u5411 owner / allowedUsers \u53D1\u9001\u9759\u6001\u5FEB\u7167\uFF1B\u8BDD\u9898\u7FA4\u548C\u5355\u804A\u4F1A\u63D0\u793A\u4E0D\u652F\u6301\uFF0C\u4E0D\u4F1A\u8F6C\u4E3A\u516C\u5F00\u5361\u7247\u3002","botDefaults.manualCardHint":"\u5DF2\u5173\u95ED\u4EFB\u52A1\u72B6\u6001\u5361\u7247\uFF1B\u9700\u8981\u67E5\u770B\u6267\u884C\u8FC7\u7A0B\u65F6\uFF0C\u4ECD\u53EF\u5728\u6D3B\u8DC3\u4F1A\u8BDD\u4E2D\u53D1\u9001 /card\u3002","botDefaults.sectionCodexAppDisplay":"Codex App \u5386\u53F2\u663E\u793A","botDefaults.codexAppCleanInput":"\u7EAF\u51C0\u663E\u793A User Message\uFF08\u5B9E\u9A8C\u6027\uFF09","botDefaults.codexAppCleanInputHelp":"\u53EA\u5F71\u54CD Codex App \u4ECE\u4E0B\u4E00 turn \u8D77\u5199\u5165\u7684 User Message \u548C\u5386\u53F2\u663E\u793A\uFF1ABotmux \u7684 XML\u3001\u8DEF\u7531\u4E0E\u7CFB\u7EDF\u4E0A\u4E0B\u6587\u4ECD\u4F1A\u4F20\u7ED9\u6A21\u578B\uFF0C\u4F46\u6539\u8D70\u9690\u85CF\u4E0A\u4E0B\u6587\uFF1B\u4E0D\u6539\u53D8\u98DE\u4E66\u5BF9\u8BDD\uFF0C\u4E5F\u4E0D\u6E05\u7406\u5DF2\u6709\u5386\u53F2\u3002","botDefaults.codexAppCleanInputCompat":"\u9ED8\u8BA4\u5173\u95ED\uFF0C\u4FDD\u6301\u539F\u6709\u517C\u5BB9\u884C\u4E3A\uFF1B\u5F00\u542F\u540E\u4ECE\u4E0B\u4E00 turn \u751F\u6548\u3002","botDefaults.envelopeInjection":"\u4E0A\u4E0B\u6587\u6CE8\u5165","botDefaults.envelopeInjectionAuto":"Hook \u6CE8\u5165\u6BCF\u8F6E\u4E0A\u4E0B\u6587\uFF08\u5B9E\u9A8C\u6027\uFF09","botDefaults.envelopeInjectionHelp":"\u5F00\u542F\u540E\uFF0C\u64CD\u4F5C\u63D0\u9192\u4E0E\u767D\u677F\u4E0D\u518D\u5199\u8FDB\u8F93\u5165\u6846\u6587\u672C\uFF0C\u6539\u7531 Claude Code \u7684 UserPromptSubmit hook \u4EE5\u7CFB\u7EDF\u63D0\u9192\u6CE8\u5165\uFF1B\u8F93\u5165\u6846\u53EA\u663E\u793A\u6D88\u606F\u672C\u8EAB\u3002\u4EC5\u652F\u6301 claude-code\uFF0C\u5176\u5B83 CLI \u81EA\u52A8\u4FDD\u6301\u5185\u8054\u3002","botDefaults.envelopeInjectionNote":"\u9ED8\u8BA4\u5173\u95ED\uFF0C\u4FDD\u6301\u5185\u8054\u884C\u4E3A\uFF1B\u5F00\u542F\u540E\u4ECE\u4E0B\u4E00\u6761\u56DE\u590D\u751F\u6548\uFF0C\u53EF\u968F\u65F6\u5207\u56DE\u3002","botDefaults.sectionCrossBot":"\u8DE8 bot \u534F\u4F5C","botDefaults.botToBotSameDir":"bot@bot \u540C\u76EE\u5F55\u62C9\u8D77","botDefaults.botToBotSameDirHelp":"\u9ED8\u8BA4\u5F00\u542F\u3002\u5F53\u8BE5 bot \u88AB @ \u5230\u5DF2\u6709\u5176\u4ED6 bot \u5DE5\u4F5C\u7684\u7FA4/\u8BDD\u9898\u65F6\uFF0C\u590D\u7528\u5BF9\u65B9\u5DE5\u4F5C\u76EE\u5F55\u5E76\u8DF3\u8FC7\u4ED3\u5E93\u9009\u62E9\u3002\u5173\u95ED\u540E\u59CB\u7EC8\u4F7F\u7528\u672C bot \u81EA\u5DF1\u7684\u76EE\u5F55\u89C4\u5219\u3002","botDefaults.cardPrefSaved":"\u5DF2\u4FDD\u5B58","botDefaults.sectionSummaryTrigger":"/summary \u603B\u7ED3\u8303\u56F4","botDefaults.summaryLimit":"\u6700\u8FD1\u6D88\u606F\u6761\u6570","botDefaults.summarySinceHours":"\u6700\u8FD1\u5C0F\u65F6\u6570","botDefaults.summaryLimitHelp":"/summary \u8BFB\u53D6\u7684\u5386\u53F2\u8303\u56F4\u3002\u9ED8\u8BA4\u6700\u8FD1 50 \u6761\u6216 24 \u5C0F\u65F6\uFF1B\u4EFB\u4E00\u9879\u586B 0 \u8868\u793A\u4E0D\u9650\u5236\u3002\u8BDD\u9898\u7FA4\u59CB\u7EC8\u53EA\u8BFB\u5F53\u524D\u8BDD\u9898\u3002","botDefaults.summarySave":"\u4FDD\u5B58\u603B\u7ED3\u8303\u56F4","botDefaults.summaryNumberInvalid":"\u65F6\u957F\u548C\u6761\u6570\u5FC5\u987B\u662F 0 \u6216\u6B63\u6574\u6570","botDefaults.summaryMemory":"\u5F00\u542F\u8BB0\u5FC6","botDefaults.summaryMemoryHelp":"\u5F00\u542F\u540E\uFF0C/summary \u4F1A\u628A\u672C\u6B21\u603B\u7ED3\u6574\u7406\u6210\u4E2D\u6587\u95EE\u9898\u89E3\u51B3\u8BB0\u5F55\uFF0C\u8FFD\u52A0\u5230\u914D\u7F6E\u7684\u8BB0\u5FC6\u6587\u4EF6\u8DEF\u5F84\uFF0C\u5E76\u8981\u6C42\u53EA\u5199\u8FD9\u4E2A\u6587\u4EF6\u3001\u539F\u6837\u56DE\u4F20\u5199\u5165\u5185\u5BB9\uFF1B\u540E\u7EED\u95EE\u9898\u53EA\u5728\u5173\u952E\u6761\u4EF6\u5B8C\u5168\u4E00\u81F4\u65F6\u590D\u7528\u3002\u8DEF\u5F84\u652F\u6301\u76F8\u5BF9\u5F53\u524D\u9879\u76EE\u6839\u76EE\u5F55\u6216\u7EDD\u5BF9\u8DEF\u5F84\u3002","botDefaults.summaryMemoryPath":"\u8BB0\u5FC6\u6587\u4EF6\u8DEF\u5F84","botDefaults.summaryMemoryPathSave":"\u4FDD\u5B58\u8BB0\u5FC6\u8DEF\u5F84","botDefaults.sectionRole":"\u9ED8\u8BA4\u89D2\u8272","botDefaults.roleHelp":"\u8BE5 bot \u7684\u9ED8\u8BA4\u89D2\u8272\uFF0C\u4F1A\u6CE8\u5165\u5230\u6240\u6709\u4F1A\u8BDD\uFF1B\u5355\u4E2A\u7FA4\u53EF\u5728\u300C\u89D2\u8272\u7BA1\u7406\u300D\u8986\u76D6\u3002\u7559\u7A7A\u4FDD\u5B58\u5373\u5220\u9664\u3002","botDefaults.rolePlaceholder":"\u4F8B\u5982\uFF1A\u4F60\u662F\u540E\u7AEF\u6392\u969C\u52A9\u624B\uFF0C\u56DE\u7B54\u7B80\u6D01\u3001\u4F18\u5148\u7ED9\u53EF\u6267\u884C\u547D\u4EE4\u2026","botDefaults.roleSave":"\u4FDD\u5B58\u89D2\u8272","botDefaults.roleSaved":"\u5DF2\u4FDD\u5B58","botDefaults.roleDeleted":"\u5DF2\u5220\u9664","botDefaults.roleLoadErr":"\u89D2\u8272\u52A0\u8F7D\u5931\u8D25","botDefaults.profileRoles":"Profile \u89D2\u8272","botDefaults.profileRolesHelp":"\u5C55\u793A\u8BE5 bot \u5728\u5404 Profile \u4E2D\u7684\u89D2\u8272\u6761\u76EE\uFF1B\u5C55\u5F00\u540E\u52A0\u8F7D\u8BE6\u60C5\u3002","botDefaults.profileRolesEmpty":"\u8FD9\u4E2A bot \u6682\u65E0 Profile \u89D2\u8272\u3002","botDefaults.profileRolesLoadFailed":"Profile \u89D2\u8272\u52A0\u8F7D\u5931\u8D25\uFF1A{error}","botDefaults.profileRoleClickToLoad":"\u5C55\u5F00\u540E\u52A0\u8F7D\u89D2\u8272\u8BE6\u60C5\u3002","botDefaults.profileRoleDetailLoadFailed":"\u89D2\u8272\u8BE6\u60C5\u52A0\u8F7D\u5931\u8D25\uFF1A{error}","botDefaults.sectionAutoStart":"\u4E3B\u52A8\u5F00\u5DE5","botDefaults.autoStartJoin":"\u88AB\u62C9\u8FDB\u65B0\u7FA4\u81EA\u52A8\u5F00\u5DE5","botDefaults.autoStartJoinHelp":"\u673A\u5668\u4EBA\u88AB\u52A0\u5165\u65B0\u7FA4\u4E14\u7FA4\u5185\u6709\u6388\u6743\u7528\u6237\u65F6\uFF0C\u81EA\u52A8\u542F\u52A8\u4F1A\u8BDD\uFF0C\u65E0\u9700 @\u3002\u4F7F\u7528\u9ED8\u8BA4\u5DE5\u4F5C\u76EE\u5F55\uFF1B\u672A\u914D\u7F6E\u65F6\u5148\u5F39\u4ED3\u5E93\u9009\u62E9\u3002\u9700\u8981\u8BA2\u9605\u673A\u5668\u4EBA\u8FDB\u7FA4\u4E8B\u4EF6\u5E76\u5177\u5907\u7FA4\u6210\u5458\u8BFB\u53D6\u6743\u9650\u3002","botDefaults.autoStartJoinPrompt":"\u5165\u7FA4\u9996\u8F6E prompt\uFF08\u53EF\u9009\uFF09","botDefaults.autoStartJoinPromptPlaceholder":"\u586B\u4E86\uFF1D\u4F5C\u4E3A\u5165\u7FA4\u540E\u7684\u7B2C\u4E00\u6761\u4EFB\u52A1\uFF1B\u7559\u7A7A\uFF1D\u673A\u5668\u4EBA\u81EA\u5DF1\u770B\u7FA4\u91CC\u4FE1\u606F\u51B3\u5B9A\u505A\u4EC0\u4E48","botDefaults.autoStartJoinPromptSave":"\u4FDD\u5B58 prompt","botDefaults.autoStartTopic":"\u8BDD\u9898\u7FA4\u65B0\u8BDD\u9898\u81EA\u52A8\u5F00\u5DE5","botDefaults.autoStartTopicHelp":"\u8BDD\u9898\u7FA4\u4E2D\u65B0\u5EFA\u8BDD\u9898\u65F6\uFF0C\u81EA\u52A8\u63A5\u5165\u5E76\u5904\u7406\u9996\u6761\u6D88\u606F\uFF0C\u65E0\u9700 @\u3002\u4EC5\u5F71\u54CD\u8BDD\u9898\u7FA4\u3002\u4E5F\u8986\u76D6\u300C\u5176\u4ED6\u673A\u5668\u4EBA\u5F00\u7684\u65B0\u8BDD\u9898\u300D\u3002","botDefaults.sectionSessionMode":"\u4F1A\u8BDD\u6A21\u5F0F","botDefaults.p2pMode":"\u79C1\u804A\u4F1A\u8BDD\u6A21\u5F0F","botDefaults.p2pThread":"thread\uFF08\u6BCF\u6761 DM \u72EC\u7ACB\u4F1A\u8BDD\uFF09","botDefaults.p2pChat":"chat\uFF08\u6241\u5E73\u8FDE\u7EED\u5355\u804A\u4F1A\u8BDD\uFF0C\u9ED8\u8BA4\uFF09","botDefaults.p2pGroup":"group\uFF08\u6BCF\u6761 DM \u81EA\u52A8\u5EFA\u4E13\u5C5E\u4F1A\u8BDD\u7FA4\uFF09","botDefaults.sgTag":"\u4F1A\u8BDD\u7FA4\u6807\u7B7E","botDefaults.sgTagHelp":"\u4F1A\u8BDD\u7FA4\u7684\u6807\u7B7E\u65B9\u5F0F\uFF1Afeed-group=\u4F60\u4FA7\u8FB9\u680F\u7684\u6D88\u606F\u5206\u7EC4\uFF08\u9ED8\u8BA4\uFF1B\u4E2A\u4EBA\u6570\u636E\uFF0C\u9700\u4E00\u6B21\u6388\u6743\uFF0Ctoken \u81EA\u52A8\u7EED\u671F\uFF0C\u4EFB\u4F55\u79DF\u6237\u53EF\u7528\uFF09\uFF1Bchat-tag=\u4F01\u4E1A\u7FA4\u6807\u7B7E\uFF0C\u5E94\u7528\u79DF\u6237\u8EAB\u4EFD\u76F4\u63A5\u6253\uFF08\u65E0\u9700\u4F60\u6388\u6743\uFF0C\u9700\u5E94\u7528\u5177\u5907 im:tag \u6743\u9650\uFF0C\u90E8\u5206\u79DF\u6237\u6743\u9650\u76EE\u5F55\u65E0\u8BE5\u6743\u9650\uFF09\uFF1Boff=\u4E0D\u6253\u6807\u7B7E\u3002","botDefaults.sgTagModeChatTag":"chat-tag\uFF08\u4F01\u4E1A\u7FA4\u6807\u7B7E\uFF0C\u514D\u6388\u6743\uFF09","botDefaults.sgTagModeFeedGroup":"feed-group\uFF08\u4FA7\u8FB9\u680F\u5206\u7EC4\uFF0C\u9700\u6388\u6743\uFF0C\u9ED8\u8BA4\uFF09","botDefaults.sgTagModeOff":"off\uFF08\u4E0D\u6253\u6807\u7B7E\uFF09","botDefaults.sgTagChatTagNote":"\u5E94\u7528\u79DF\u6237\u8EAB\u4EFD\u6253\u6807\uFF0C\u65E0\u9700\u7528\u6237\u6388\u6743","botDefaults.sgTagAuthorized":"\u5DF2\u6388\u6743\uFF0C\u5EFA\u7FA4\u81EA\u52A8\u8FDB\u5206\u7EC4","botDefaults.sgTagUnauthorized":"\u672A\u6388\u6743\uFF08\u5EFA\u7FA4\u4E0D\u8FDB\u5206\u7EC4\uFF0C\u4EC5\u5934\u50CF\u6807\u8BC6\uFF09","botDefaults.sgTagAuthStart":"\u4E00\u952E\u6388\u6743","botDefaults.sgTagAuthWaiting":"\u7B49\u5F85\u6388\u6743\u5B8C\u6210\u2026","botDefaults.sgTagAuthTimeout":"\u7B49\u5F85\u8D85\u65F6\uFF1A\u82E5\u5DF2\u5728\u65B0\u9875\u9762\u5B8C\u6210\u6388\u6743\uFF0C\u5237\u65B0\u672C\u9875\u5373\u53EF\uFF1B\u5426\u5219\u8BF7\u91CD\u8BD5","botDefaults.p2pHelp":"\u79C1\u804A\u4F1A\u8BDD\u65B9\u5F0F\uFF1Achat\uFF08\u9ED8\u8BA4\uFF09=\u6574\u6BB5\u79C1\u804A\u5171\u4EAB\u4E00\u4E2A\u8FDE\u7EED\u4F1A\u8BDD\uFF1Bthread=\u6BCF\u6761\u9876\u5C42\u6D88\u606F\u72EC\u7ACB\u4F1A\u8BDD\uFF1Bgroup=\u6BCF\u6761\u9876\u5C42\u6D88\u606F\u81EA\u52A8\u521B\u5EFA\u4E00\u4E2A\u300C\u4F60+bot\u300D\u4E13\u5C5E\u4F1A\u8BDD\u7FA4\u5E76\u628A\u4F1A\u8BDD\u843D\u5728\u7FA4\u91CC\uFF08\u7FA4\u540D AI \u81EA\u52A8\u603B\u7ED3\u3001\u56DE\u7FA4\u7EED\u804A\u81EA\u52A8\u6062\u590D\u4E0A\u4E0B\u6587\uFF09\u3002\u6539\u52A8\u7ACB\u5373\u751F\u6548\u3002","botDefaults.regularGroupMode":"\u666E\u901A\u7FA4\u4F1A\u8BDD\u6A21\u5F0F","botDefaults.regularGroupModeChat":"chat\uFF08\u6241\u5E73\u8FDE\u7EED\u5355\u804A\u4F1A\u8BDD\uFF09","botDefaults.regularGroupModeChatTopic":"chat-topic\uFF08\u9876\u5C42\u5E73\u94FA\u8FDE\u7EED\u4F1A\u8BDD\uFF0C\u539F\u751F\u8BDD\u9898\u5404\u81EA\u72EC\u7ACB\u4F1A\u8BDD\uFF0C\u9ED8\u8BA4\uFF09","botDefaults.regularGroupModeNewTopic":"new-topic\uFF08\u6BCF\u6761\u9876\u5C42 @ \u5404\u5F00\u72EC\u7ACB\u8BDD\u9898\u4E0E\u4F1A\u8BDD\uFF09","botDefaults.regularGroupModeShared":"shared\uFF08\u8BDD\u9898\u6A21\u5F0F\u4F46\u590D\u7528\u540C\u4E00\u4E2A session\uFF09","botDefaults.regularGroupModeHelp":"\u666E\u901A\u7FA4\u9876\u5C42 @ \u7684\u5F00\u4F1A\u8BDD\u65B9\u5F0F\uFF1Achat=\u6574\u7FA4\u8FDE\u7EED\u4F1A\u8BDD\uFF08\u539F\u751F\u8BDD\u9898\u4E5F\u5E76\u8FDB\u7FA4\u4F1A\u8BDD\uFF09\uFF1Bchat-topic=\u9876\u5C42\u8FDE\u7EED\u3001\u7FA4\u5185\u539F\u751F\u8BDD\u9898\u5404\u81EA\u72EC\u7ACB\u4F1A\u8BDD\uFF08\u9ED8\u8BA4\uFF09\uFF1Bnew-topic=\u6BCF\u6B21 @ \u65B0\u5EFA\u8BDD\u9898\u4E0E\u4F1A\u8BDD\uFF1Bshared=\u9876\u5C42\u8BDD\u9898\u5C55\u793A\u4F46\u5171\u4EAB\u4F1A\u8BDD\uFF08\u539F\u751F\u8BDD\u9898\u4E5F\u5E76\u8FDB\uFF09\u3002\u539F\u751F\u8BDD\u9898\u5728 chat-topic \u4E0E new-topic \u4E0B\u5404\u81EA\u72EC\u7ACB\u3001\u5728 chat / shared \u4E0B\u5E76\u8FDB\u7FA4\u4F1A\u8BDD\u3002\u53EF\u88AB\u7FA4\u7EA7 /reply-mode \u8986\u76D6\u3002","botDefaults.mentionMode":"\u7FA4\u804A @ \u7B56\u7565","botDefaults.mentionModeAlways":"\u90FD\u9700\u8981 @\uFF08\u9ED8\u8BA4\uFF09","botDefaults.mentionModeTopic":"\u4EC5\u8BDD\u9898\u5185\u4E0D\u9700\u8981 @","botDefaults.mentionModeNever":"\u6240\u6709\u6D88\u606F\u90FD\u4E0D\u9700\u8981 @","botDefaults.mentionModeAmbient":"\u90FD\u4E0D\u9700\u8981 @\uFF08\u4F46\u4F60 @ \u522B\u4EBA\u65F6\u8BA9\u4F4D\uFF09","botDefaults.mentionModeHelp":"\u63A7\u5236\u7FA4\u804A\u662F\u5426\u5FC5\u987B @ \u624D\u56DE\u590D\uFF1A\u9ED8\u8BA4\u90FD\u9700\u8981 @\uFF1B\u53EF\u5141\u8BB8\u5DF2\u63A5\u7BA1\u8BDD\u9898\u5185\u514D @\u3001\u5168\u7FA4\u514D @\uFF0C\u6216\u5728\u6D88\u606F @ \u5176\u4ED6\u4EBA\u65F6\u8BA9\u4F4D\u3002\u79C1\u804A\u59CB\u7EC8\u4E0D\u9700\u8981 @\u3002","botDefaults.docSubscribeMode":"\u6587\u6863\u8BA2\u9605\u89E6\u53D1\u8303\u56F4\uFF08\u9ED8\u8BA4\uFF09","botDefaults.docSubscribeModeMention":"\u4EC5\u8BC4\u8BBA @ \u6211\u624D\u89E6\u53D1","botDefaults.docSubscribeModeAll":"\u6240\u6709\u65B0\u8BC4\u8BBA\u90FD\u89E6\u53D1","botDefaults.docSubscribeModeHelp":"\u7528 /watch-comment \u76D1\u542C\u98DE\u4E66\u6587\u6863\u8BC4\u8BBA\u540E\uFF0C\u8BC4\u8BBA\u4F1A\u5582\u8FDB\u4F1A\u8BDD\u3001bot \u56DE\u590D\u53D1\u56DE\u8BC4\u8BBA\u4E32\u3002\u8FD9\u91CC\u8BBE\u65B0\u76D1\u542C\u7684\u9ED8\u8BA4\u89E6\u53D1\u8303\u56F4\uFF1A\u300C\u4EC5\u8BC4\u8BBA @ \u6211\u300D\u6700\u5B89\u5168\uFF08\u9632\u5237\u5C4F\uFF09\uFF1B\u300C\u6240\u6709\u65B0\u8BC4\u8BBA\u300D\u9002\u5408\u4E13\u7528\u6587\u6863\u3002","botDefaults.sectionSubstitute":"\u66FF\u8EAB\u6A21\u5F0F","botDefaults.substituteEnabled":"\u542F\u7528\u66FF\u8EAB\u89E6\u53D1","botDefaults.substituteHelp":"\u7FA4\u91CC @ \u5230\u914D\u7F6E\u7684\u66FF\u8EAB\u5BF9\u8C61\u65F6\uFF0C\u7531\u672C bot \u4EE3\u7B54\uFF1B\u53D1\u6D88\u606F\u7684\u4EBA\u4ECD\u9700\u5177\u5907 canTalk \u6743\u9650\u3002\u63A8\u8350\u4E0E\u300COncall \u6A21\u5F0F\u300D\u4E00\u8D77\u4F7F\u7528\uFF0C\u8BA9\u7FA4\u5185\u6210\u5458\u90FD\u80FD\u81EA\u7136 @ \u66FF\u8EAB\u89E6\u53D1\u4EE3\u7B54\u3002\u5355\u4E2A\u7FA4\u53EF\u7528 /substitute off \u4E34\u65F6\u5173\u95ED\u3002","botDefaults.substituteTopicGroups":"\u8BDD\u9898\u7FA4\u652F\u6301","botDefaults.substituteTopicGroupsHelp":"\u5F00\u542F\u540E\u8BDD\u9898\u7FA4\u91CC @ \u66FF\u8EAB\u5BF9\u8C61\u540C\u6837\u89E6\u53D1\u4EE3\u7B54\uFF1A\u66FF\u8EAB\u56DE\u5408\u8D70\u8BE5\u8BDD\u9898\u81EA\u5DF1\u7684\u4F1A\u8BDD\uFF08\u6CA1\u6709\u4F1A\u8BDD\u5C31\u65B0\u5F00\u4E00\u4E2A\uFF09\uFF0C\u56DE\u590D\u843D\u5728\u89E6\u53D1\u8BDD\u9898\u5185\u3002\u5173\u95ED\u5219\u4EC5\u666E\u901A\u7FA4\u751F\u6548\u3002","botDefaults.substituteTopicActive":"\u5DF2\u6709\u6D3B\u8DC3\u4F1A\u8BDD\u7684\u8BDD\u9898\u91CC\u4E5F\u89E6\u53D1","botDefaults.substituteTopicActiveHelp":"\u8BDD\u9898\u91CC\u5DF2\u6709\u672C bot \u7684\u5DE5\u4F5C\u4F1A\u8BDD\u65F6\uFF0C@ \u66FF\u8EAB\u5BF9\u8C61\u662F\u5426\u4ECD\u89E6\u53D1\u4EE3\u7B54\uFF08\u66FF\u8EAB\u56DE\u5408\u6CE8\u5165\u8BE5\u4F1A\u8BDD\uFF09\u3002\u5173\u95ED\u540E\u8FD9\u7C7B\u6D88\u606F\u4FDD\u6301\u539F\u8BA9\u8DEF\u884C\u4E3A\uFF1A@ \u4E86\u522B\u4EBA\u89C6\u4E3A\u8F6C\u4EA4\uFF0C\u672C bot \u6C89\u9ED8\u3002","botDefaults.substituteDisclosure":"\u62AB\u9732\u65B9\u5F0F","botDefaults.substituteDisclosurePrefix":"\u9ED8\u8BA4\u8BF4\u660E\u201C\u6211\u5148\u4EE3 TA \u56DE\u590D\u201D","botDefaults.substituteDisclosureNone":"\u4E0D\u989D\u5916\u8BF4\u660E","botDefaults.substituteReplyMode":"\u56DE\u590D\u65B9\u5F0F","botDefaults.substituteReplyModeThread":"\u8BDD\u9898\u56DE\u590D\uFF1A\u5728\u89E6\u53D1\u6D88\u606F\u4E0B\u521B\u5EFA Lark \u8BDD\u9898","botDefaults.substituteReplyModeQuote":"\u5F15\u7528\u56DE\u590D\uFF1A\u5F15\u7528\u89E6\u53D1\u6D88\u606F\uFF0C\u4E0D\u521B\u5EFA\u65B0\u8BDD\u9898","botDefaults.substituteReplyModeHelp":"\u666E\u901A\u7FA4\u5206\u8EAB\u89E6\u53D1\u540E\uFF0C\u8BDD\u9898\u56DE\u590D\u4F1A\u5728\u7FA4\u91CC\u65B0\u5EFA\u4E00\u6761\u53EF\u6298\u53E0\u7684\u8BDD\u9898\uFF1B\u5F15\u7528\u56DE\u590D\u76F4\u63A5\u5F15\u7528\u539F\u6D88\u606F\uFF0C\u4E0D\u5C55\u5F00\u65B0\u8BDD\u9898\u3002\u8BDD\u9898\u7FA4\u5206\u8EAB\u76F4\u63A5\u5728\u539F\u8BDD\u9898\u5185\u56DE\u590D\uFF0C\u4E0D\u53D7\u6B64\u9879\u5F71\u54CD\u3002","botDefaults.substituteControlCard":"\u53D1\u9001 owner \u63A7\u5236\u5361\u7247","botDefaults.substituteControlCardHelp":'\u666E\u901A\u7FA4\u7684\u5206\u8EAB\u4F1A\u8BDD\u542F\u52A8\u540E\uFF0C\u81EA\u52A8\u79C1\u4FE1\u7ED9 bot \u7684 owner / allowedUsers \u4E00\u5F20\u5305\u542B"\u6253\u5F00\u53EF\u64CD\u4F5C\u7EC8\u7AEF\u3001\u91CD\u542F\u3001\u5173\u95ED"\u6309\u94AE\u7684\u63A7\u5236\u5361\u7247\uFF08\u8BDD\u9898\u7FA4\u5206\u8EAB\u4F1A\u8BDD\u4FDD\u7559\u6B63\u5E38\u6D41\u5F0F\u5361\u7247\uFF0C\u4E0D\u53E6\u53D1\uFF09\u3002',"botDefaults.substituteChats":"\u751F\u6548\u7FA4\u804A","botDefaults.substituteChatsHelp":"\u7559\u7A7A\u8868\u793A\u6240\u6709\u7FA4\u804A\uFF08\u666E\u901A\u7FA4\u4E0E\u8BDD\u9898\u7FA4\uFF09\u90FD\u751F\u6548\uFF1B\u586B\u5199\u540E\u4EC5\u5728\u8FD9\u4E9B\u7FA4\u804A ID \u4E2D\u89E6\u53D1\u66FF\u8EAB\u3002\u6BCF\u884C\u4E00\u4E2A\uFF0C\u4E5F\u53EF\u7528\u9017\u53F7/\u5206\u53F7\u5206\u9694\u3002","botDefaults.substituteChatsPlaceholder":`oc_xxx
20
20
  oc_yyy`,"botDefaults.substituteExcludedChats":"\u9ED1\u540D\u5355\u7FA4\u804A","botDefaults.substituteExcludedChatsHelp":"\u5217\u51FA\u7684\u7FA4\u804A\u91CC\u66FF\u8EAB\u6C38\u4E0D\u89E6\u53D1\uFF08\u4EE3\u7B54\u88AB\u786C\u5173\u95ED\uFF0C\u7FA4\u5185 /substitute on \u4E5F\u65E0\u6CD5\u5F00\u542F\uFF09\uFF0C\u666E\u901A\u7FA4\u4E0E\u8BDD\u9898\u7FA4\u4E00\u89C6\u540C\u4EC1\uFF1B\u76F4\u63A5 @\u673A\u5668\u4EBA \u4ECD\u7167\u5E38\u56DE\u7B54\u3002\u4F18\u5148\u7EA7\u9AD8\u4E8E\u300C\u751F\u6548\u7FA4\u804A\u300D\u767D\u540D\u5355\u2014\u2014\u540C\u65F6\u51FA\u73B0\u5728\u4E24\u5904\u7684\u7FA4\u4EE5\u9ED1\u540D\u5355\u4E3A\u51C6\uFF08\u4E0D\u4EE3\u7B54\uFF09\u3002\u6BCF\u884C\u4E00\u4E2A\uFF0C\u4E5F\u53EF\u7528\u9017\u53F7/\u5206\u53F7\u5206\u9694\u3002","botDefaults.substituteExcludedChatsPlaceholder":`oc_xxx
21
21
  oc_yyy`,"botDefaults.substituteTargetsPlaceholder":`zhangsan@bytedance.com
22
- ou_xxxx\uFF08\u4E5F\u53EF\u76F4\u63A5\u586B open_id / union_id\uFF09`,"botDefaults.substituteTargets":"\u66FF\u8EAB\u5BF9\u8C61","botDefaults.substituteTargetsHelp":"\u6BCF\u9879\u5BF9\u5E94\u4E00\u4E2A\u66FF\u8EAB\u5BF9\u8C61\u3002\u53EF\u76F4\u63A5\u586B\u90AE\u7BB1\uFF08\u4FDD\u5B58\u65F6\u81EA\u52A8\u89E3\u6790\u4E3A Open ID\uFF09\uFF0C\u4E5F\u53EF\u9009\u62E9 Open ID\u3001User ID \u6216 Union ID\uFF1B\u89E3\u6790\u5931\u8D25\u7684\u90AE\u7BB1\u4F1A\u6807\u7EA2\u3002","botDefaults.substituteTargetType":"\u6807\u8BC6\u7C7B\u578B","botDefaults.substituteTargetEmail":"\u90AE\u7BB1","botDefaults.substituteTargetOpenId":"Open ID","botDefaults.substituteTargetUserId":"User ID","botDefaults.substituteTargetUnionId":"Union ID","botDefaults.substituteTargetIdPlaceholder":"\u8F93\u5165\u98DE\u4E66\u7528\u6237\u6807\u8BC6\u6216\u90AE\u7BB1","botDefaults.substituteTargetName":"\u663E\u793A\u540D\u79F0","botDefaults.substituteTargetNamePlaceholder":"\u663E\u793A\u540D\u79F0\uFF08\u53EF\u9009\uFF09","botDefaults.substituteTargetAdd":"\u6DFB\u52A0\u66FF\u8EAB\u5BF9\u8C61","botDefaults.substituteTargetRemove":"\u5220\u9664\u66FF\u8EAB\u5BF9\u8C61","botDefaults.substituteTargetsInvalid":"\u542F\u7528\u524D\u81F3\u5C11\u586B\u5199\u4E00\u4E2A\u6709\u6548\u7684\u66FF\u8EAB\u5BF9\u8C61\uFF1B\u90AE\u7BB1\u9700\u80FD\u89E3\u6790\u4E3A Open ID","botDefaults.substituteTargetsRequired":"\u5F00\u542F\u66FF\u8EAB\u89E6\u53D1\u81F3\u5C11\u9700\u8981\u4E00\u4E2A\u80FD\u89E3\u6790\u6210 open_id \u7684\u5BF9\u8C61","botDefaults.substituteResolving":"\u89E3\u6790\u4E2D\u2026","botDefaults.substituteUnresolved":"\u672A\u89E3\u6790","botDefaults.substituteReasonCrossAppOpenId":"\u8BE5 Open ID \u5C5E\u4E8E\u5176\u4ED6\u5E94\u7528\uFF0C\u8BF7\u6539\u7528\u90AE\u7BB1\u6216 Union ID","botDefaults.substituteReasonNotVisible":"\u8BE5\u7528\u6237\u4E0D\u5728\u5E94\u7528\u901A\u8BAF\u5F55\u53EF\u89C1\u8303\u56F4\uFF0C\u8BF7\u8C03\u6574\u5E94\u7528\u53EF\u89C1\u6027\u6216\u6539\u7528\u90AE\u7BB1","botDefaults.substituteReasonResolveFailed":"\u89E3\u6790\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u6216\u901A\u8BAF\u5F55\u6743\u9650","botDefaults.substituteReasonUnresolvable":"\u65E0\u6CD5\u89E3\u6790\u8BE5\u6807\u8BC6\uFF0C\u8BF7\u68C0\u67E5\u62FC\u5199\u6216\u6539\u7528\u90AE\u7BB1","botDefaults.substituteSave":"\u4FDD\u5B58\u66FF\u8EAB\u6A21\u5F0F","botDefaults.substituteOff":"\u5173\u95ED\u5168\u5C40\u66FF\u8EAB\u914D\u7F6E","botDefaults.sectionGrant":"\u6388\u6743\u4E0E\u989D\u5EA6","botDefaults.autoGrantCard":"\u672A\u6388\u6743 @ \u81EA\u52A8\u5F39\u6388\u6743\u5361","botDefaults.autoGrantCardHelp":"\u672A\u6388\u6743\u7528\u6237\u6216\u5916\u90E8 bot \u660E\u786E @ \u65F6\uFF0C\u81EA\u52A8\u5411 owner \u53D1\u9001 /grant \u7533\u8BF7\u5361\u3002\u5173\u95ED\u540E\u4ECD\u62E6\u622A\uFF0C\u4F46\u4E0D\u63D0\u793A\u3002","botDefaults.restrictGrant":"\u9650\u5236\u88AB\u6388\u6743\u4EBA\u53EA\u80FD\u7EAF\u5BF9\u8BDD","botDefaults.restrictGrantHelp":"\u9650\u5236 /grant \u7528\u6237\u53EA\u80FD\u666E\u901A\u5BF9\u8BDD\uFF0C\u7981\u6B62 botmux \u547D\u4EE4\u3001\u900F\u4F20\u547D\u4EE4\u3001CLI \u539F\u751F\u547D\u4EE4\u548C\u5DE5\u4F5C\u6D41\u76F8\u5173\u547D\u4EE4\uFF1Bowner \u4E0D\u53D7\u5F71\u54CD\u3002","botDefaults.grantDurationDefault":"\u9ED8\u8BA4\u6388\u6743\u65F6\u957F","botDefaults.grantDurationHelp":"\u53EA\u5F71\u54CD\u4E4B\u540E\u751F\u6210\u7684\u6388\u6743\u5361\uFF1B\u6BCF\u5F20\u5361\u4ECD\u53EF\u4E34\u65F6\u6539\u4E3A\u5176\u4ED6\u65F6\u957F\u6216\u6C38\u4E45\uFF0C\u5DF2\u6709\u6388\u6743\u548C\u5DF2\u53D1\u51FA\u7684\u5361\u7247\u4E0D\u53D8\u3002","botDefaults.grantDuration1Hour":"1 \u5C0F\u65F6\uFF08\u9ED8\u8BA4\uFF09","botDefaults.grantDuration1HourValue":"1 \u5C0F\u65F6","botDefaults.grantDuration8Hours":"8 \u5C0F\u65F6","botDefaults.grantDuration1Day":"1 \u5929","botDefaults.grantDuration7Days":"7 \u5929","botDefaults.grantDurationInvalid":"\u8BF7\u9009\u62E9\u6709\u6548\u7684\u6388\u6743\u65F6\u957F","botDefaults.quotaDefault":"\u9ED8\u8BA4\u6D88\u606F\u989D\u5EA6","botDefaults.quotaPlaceholder":"\u7559\u7A7A\uFF1D\u6388\u6743\u5361\u6BCF\u4EBA 3 \u6761","botDefaults.quotaHelp":"\u7559\u7A7A\u65F6\uFF0C\u6388\u6743\u5361\u9ED8\u8BA4\u6BCF\u4EBA 3 \u6761\uFF0COncall \u4E0D\u9650\uFF1B\u586B\u5199\u540E\u6388\u6743\u5361\u548C Oncall \u4F7F\u7528\u540C\u4E00\u989D\u5EA6\u3002\u5DF2\u6709\u6388\u6743\u548C\u663E\u5F0F /grant @\u7528\u6237 N \u4E0D\u53D7\u5F71\u54CD\u3002","botDefaults.quotaInvalid":"\u8BF7\u8F93\u5165 1\u20131000 \u7684\u6574\u6570","botDefaults.grantDefaultsCurrentBuiltIn":"\u5F53\u524D\uFF1A{duration} \xB7 \u6388\u6743\u5361\u6BCF\u4EBA {count} \u6761\uFF1BOncall \u4E0D\u9650","botDefaults.grantDefaultsCurrentCustom":"\u5F53\u524D\uFF1A{duration} \xB7 \u6BCF\u4EBA {count} \u6761\uFF08\u6388\u6743\u5361\u4E0E Oncall\uFF09","botDefaults.grantDefaultsCurrentLegacy":"\u5F53\u524D\u517C\u5BB9\u65E7\u914D\u7F6E\uFF1A{duration} \xB7 \u6388\u6743\u5361 {cardCount} \u6761\uFF1BOncall {oncallCount} \u6761","botDefaults.grantDefaultsSave":"\u4FDD\u5B58\u9ED8\u8BA4\u9650\u5236","botDefaults.grantDefaultsSaving":"\u4FDD\u5B58\u4E2D\u2026","botDefaults.sectionSessionCap":"\u4F1A\u8BDD\u5E38\u9A7B\u4E0A\u9650","botDefaults.maxLiveWorkers":"\u6700\u5927\u5E38\u9A7B\u4F1A\u8BDD\u6570","botDefaults.maxLiveWorkersPlaceholder":"\u7559\u7A7A\uFF1D\u9ED8\u8BA4 30","botDefaults.maxLiveWorkersUsage":"\u5E38\u9A7B {resident}/{cap} \xB7 \u4F11\u7720 {dormant} \xB7 \u603B\u4F1A\u8BDD {logical}","botDefaults.maxLiveWorkersHelp":"\u672C Bot \u540C\u65F6\u5E38\u9A7B\u5185\u5B58\u7684\u4F1A\u8BDD\u6570\u4E0A\u9650\u3002\u8D85\u8FC7\u540E\u6700\u4E45\u672A\u7528\u7684\u4F1A\u8BDD\u81EA\u52A8\u4F11\u7720\uFF1A\u5176\u540E\u53F0\u8FDB\u7A0B\u548C CLI \u4E00\u8D77\u9000\u51FA\u3001\u56DE\u6536\u5185\u5B58\uFF0C\u4F46\u8BDD\u9898\u4ECD\u53EF\u7EE7\u7EED\uFF1B\u4E0B\u6761\u6D88\u606F\u4F1A\u4ECE\u78C1\u76D8\u8BB0\u5F55\u51B7\u6062\u590D\u4E0A\u4E0B\u6587\uFF08\u901A\u5E38\u51E0\u79D2\uFF09\u3002\u7559\u7A7A\uFF1D\u9ED8\u8BA4 30\uFF1B\u586B\u6570\u5B57\uFF1D\u672C Bot \u81EA\u5B9A\u4E49\u3002\u6CE8\u610F\uFF1A\u6B63\u5728\u51FA\u7B54\u6848\u7684\u4F1A\u8BDD\u4E0D\u4F1A\u88AB\u6253\u65AD\uFF1B\u53EA\u6709\u53EF\u6062\u590D\u7684\u4F1A\u8BDD\u4F1A\u81EA\u52A8\u4F11\u7720\uFF0C\u63A5\u5165\u5916\u90E8\u7EC8\u7AEF\u6216\u4E0D\u53EF\u6062\u590D\u7684\u4F1A\u8BDD\u4E0D\u53D7\u5F71\u54CD\u3002","botDefaults.maxLiveWorkersSave":"\u4FDD\u5B58\u4E0A\u9650","botDefaults.maxLiveWorkersOff":"\u6062\u590D\u9ED8\u8BA4","botDefaults.maxLiveWorkersInvalid":"\u4E0A\u9650\u5FC5\u987B\u662F\u6B63\u6574\u6570","botDefaults.maxLiveWorkersStateDefault":"\u5F53\u524D\uFF1A\u9ED8\u8BA4\u5E38\u9A7B 30 \u4E2A\u4F1A\u8BDD","botDefaults.maxLiveWorkersStateOn":"\u5F53\u524D\uFF1A\u6700\u591A\u5E38\u9A7B {count} \u4E2A\u4F1A\u8BDD","botDefaults.overloadAlert":"\u673A\u5668\u8FC7\u8F7D\u544A\u8B66","botDefaults.overloadAlertHelp":"\u5F00\u542F\u540E\uFF0C\u672C Bot \u7684 daemon \u4F1A\u6BCF 30 \u79D2\u68C0\u67E5\u6574\u673A\u8D1F\u8F7D/\u5185\u5B58\uFF0C\u8D8A\u8FC7\u8FC7\u8F7D\u7EBF\uFF08\u9ED8\u8BA4 load15 > \u6838\u6570\xD71.5 \u6216\u5185\u5B58\u226592%\uFF09\u65F6\u7ED9\u672C Bot \u7684\u7BA1\u7406\u5458\u53D1\u4E00\u6761\u98DE\u4E66\u79C1\u4FE1\u63D0\u9192\uFF0C\u6062\u590D\u540E\u518D\u53D1\u4E00\u6761\u3002\u673A\u5668\u8FC7\u8F7D\u4F1A\u5BFC\u81F4 botmux \u4F1A\u8BDD\u51B7\u542F\u52A8\u8D85\u65F6\u5047\u6B7B\uFF0C\u8FD9\u4E2A\u63D0\u9192\u80FD\u8BA9\u4F60\u53CA\u65F6\u6E05\u7406\u4F1A\u8BDD\u6216\u8C03\u4F4E\u5E38\u9A7B\u4E0A\u9650\u3002\u8D1F\u8F7D\u662F\u6574\u673A\u6307\u6807\uFF0C\u6307\u5B9A\u4E00\u4E2A Bot \u5F00\u542F\u5373\u53EF\uFF1B\u591A\u4E2A Bot \u540C\u65F6\u5F00\u4E5F\u4F1A\u81EA\u52A8\u53BB\u91CD\u3001\u6574\u673A\u6BCF\u6B21\u8FC7\u8F7D\u53EA\u53D1\u4E00\u6B21\u3002\u9ED8\u8BA4\u5173\u95ED\u3002","botDefaults.sectionRuntimeEnv":"\u542F\u52A8\u73AF\u5883","botDefaults.sectionStartupCommands":"\u542F\u52A8\u547D\u4EE4","botDefaults.startupCommandsHelp":"\u65B0\u4F1A\u8BDD\u542F\u52A8\u540E\u3001\u9996\u6761\u6D88\u606F\u524D\u81EA\u52A8\u53D1\u9001\u7684 CLI \u547D\u4EE4\u3002\u652F\u6301\u9017\u53F7\u6216\u6362\u884C\u5206\u9694\uFF1B\u6BCF\u6B21\u65B0\u4F1A\u8BDD\u548C\u6062\u590D\u90FD\u4F1A\u91CD\u653E\u3002\u4EC5\u539F\u751F CLI \u4F1A\u8BDD\u751F\u6548\u3002","botDefaults.startupCommandsPlaceholder":"\u6BCF\u884C\u4E00\u6761\uFF0C\u5982 /effort ultracode","botDefaults.startupCommandsSave":"\u4FDD\u5B58\u542F\u52A8\u547D\u4EE4","botDefaults.sectionSlashCommands":"Slash \u547D\u4EE4\u6743\u9650","botDefaults.sectionSlashCommandsHelp":"\u63A7\u5236\u54EA\u4E9B slash \u547D\u4EE4\u900F\u4F20\u7ED9\u5E95\u5C42 CLI\uFF0C\u4EE5\u53CA\u54EA\u4E9B daemon \u547D\u4EE4\u5BF9\u300C\u80FD\u5BF9\u8BDD\u300D\u7684\u4EBA\u653E\u884C\u3002\u6539\u52A8\u7ACB\u5373\u751F\u6548\u3002","botDefaults.customPassthrough":"\u989D\u5916\u900F\u4F20\u547D\u4EE4","botDefaults.customPassthroughHelp":"\u5728\u5185\u7F6E\u767D\u540D\u5355\u4E4B\u5916\uFF0C\u989D\u5916\u653E\u884C\u900F\u4F20\u7ED9\u5E95\u5C42 CLI \u7684 slash \u547D\u4EE4\uFF08daemon \u4E0D\u5904\u7406\uFF0C\u539F\u6837\u8F6C\u53D1\uFF09\u3002\u9017\u53F7\u6216\u7A7A\u683C\u5206\u9694\uFF0C\u5982 /goal /export\u3002\u4F1A daemon \u547D\u4EE4\u51B2\u7A81\u7684\u6761\u76EE\u88AB\u5FFD\u7565\u3002\u7559\u7A7A\uFF1D\u4EC5\u5185\u7F6E\u767D\u540D\u5355\u3002","botDefaults.customPassthroughPlaceholder":"\u5982 /goal /export","botDefaults.customPassthroughSave":"\u4FDD\u5B58\u900F\u4F20\u547D\u4EE4","botDefaults.canTalkDaemon":"canTalk \u53EF\u7528\u7684 daemon \u547D\u4EE4","botDefaults.canTalkDaemonHelp":"\u628A\u5217\u51FA\u7684 daemon \u547D\u4EE4\u6743\u9650\u4ECE canOperate\uFF08\u4EC5\u7BA1\u7406\u5458\uFF09\u964D\u5230 canTalk\uFF08\u5BF9\u8BDD\u653E\u884C\u5373\u53EF\u7528\uFF0C\u5982 oncall \u7FA4\u6210\u5458\u3001\u88AB\u6388\u6743\u4EBA\u3001\u79C1\u804A\u7528\u6237\uFF09\u3002\u9017\u53F7\u6216\u7A7A\u683C\u5206\u9694\uFF0C\u53EA\u8BA4 daemon \u547D\u4EE4\uFF08\u900F\u4F20/\u62FC\u9519\u6761\u76EE\u88AB\u5FFD\u7565\uFF09\u3002\u26A0\uFE0F /cd /restart /rename \u7B49\u4F1A\u6539\u53D8\u72B6\u6001\uFF0C\u964D\u7EA7\u987B\u8C28\u614E\uFF1B\u5EFA\u8BAE\u53EA\u653E /status /help \u8FD9\u7C7B\u4F4E\u5371\u547D\u4EE4\u3002\u7559\u7A7A\uFF1D\u5168\u90E8\u4EC5\u7BA1\u7406\u5458\u3002","botDefaults.canTalkDaemonPlaceholder":"\u5982 /status /help","botDefaults.canTalkDaemonSave":"\u4FDD\u5B58\u964D\u6743\u540D\u5355","botDefaults.sectionLaunchShell":"\u542F\u52A8 Shell","botDefaults.launchShellHelp":"\u6307\u5B9A\u542F\u52A8 CLI \u7684 shell\uFF08\u5982 zsh \u6216 /usr/bin/zsh\uFF09\uFF0C\u8986\u76D6 daemon \u7684 $SHELL\u3002\u7528\u4E8E\u7ED5\u8FC7\u767B\u5F55 shell rc \u4E2D\u7684\u8DF3\u8F6C\u95EE\u9898\uFF1BPATH \u7B49\u4ECD\u9700\u5728\u6240\u9009 shell \u914D\u7F6E\u4E2D\u53EF\u7528\u3002\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\u3002","botDefaults.launchShellPlaceholder":"\u5982 zsh \u6216 /usr/bin/zsh\uFF1B\u7559\u7A7A\uFF1D\u7528 $SHELL","botDefaults.launchShellSave":"\u4FDD\u5B58\u542F\u52A8 Shell","botDefaults.sectionEnv":"\u73AF\u5883\u53D8\u91CF","botDefaults.envHelp":"\u4EE5 JSON \u4E3A\u8BE5 bot \u7684 CLI \u8FDB\u7A0B\u6CE8\u5165\u73AF\u5883\u53D8\u91CF\u3002\u652F\u6301\u5B57\u7B26\u4E32/\u6570\u5B57/\u5E03\u5C14\uFF1BBOTMUX_\u3001LARK_APP_ \u7B49\u4FDD\u7559\u952E\u4F1A\u88AB\u5FFD\u7565\u3002\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF0C\u660E\u6587\u5B58\u50A8\u5728 bots.json\u3002","botDefaults.envPlaceholder":`{
22
+ ou_xxxx\uFF08\u4E5F\u53EF\u76F4\u63A5\u586B open_id / union_id\uFF09`,"botDefaults.substituteTargets":"\u66FF\u8EAB\u5BF9\u8C61","botDefaults.substituteTargetsHelp":"\u6BCF\u9879\u5BF9\u5E94\u4E00\u4E2A\u66FF\u8EAB\u5BF9\u8C61\u3002\u53EF\u76F4\u63A5\u586B\u90AE\u7BB1\uFF08\u4FDD\u5B58\u65F6\u81EA\u52A8\u89E3\u6790\u4E3A Open ID\uFF09\uFF0C\u4E5F\u53EF\u9009\u62E9 Open ID\u3001User ID \u6216 Union ID\uFF1B\u89E3\u6790\u5931\u8D25\u7684\u90AE\u7BB1\u4F1A\u6807\u7EA2\u3002","botDefaults.substituteTargetType":"\u6807\u8BC6\u7C7B\u578B","botDefaults.substituteTargetEmail":"\u90AE\u7BB1","botDefaults.substituteTargetOpenId":"Open ID","botDefaults.substituteTargetUserId":"User ID","botDefaults.substituteTargetUnionId":"Union ID","botDefaults.substituteTargetIdPlaceholder":"\u8F93\u5165\u98DE\u4E66\u7528\u6237\u6807\u8BC6\u6216\u90AE\u7BB1","botDefaults.substituteTargetName":"\u663E\u793A\u540D\u79F0","botDefaults.substituteTargetNamePlaceholder":"\u663E\u793A\u540D\u79F0\uFF08\u53EF\u9009\uFF09","botDefaults.substituteTargetAdd":"\u6DFB\u52A0\u66FF\u8EAB\u5BF9\u8C61","botDefaults.substituteTargetRemove":"\u5220\u9664\u66FF\u8EAB\u5BF9\u8C61","botDefaults.substituteTargetsInvalid":"\u542F\u7528\u524D\u81F3\u5C11\u586B\u5199\u4E00\u4E2A\u6709\u6548\u7684\u66FF\u8EAB\u5BF9\u8C61\uFF1B\u90AE\u7BB1\u9700\u80FD\u89E3\u6790\u4E3A Open ID","botDefaults.substituteTargetsRequired":"\u5F00\u542F\u66FF\u8EAB\u89E6\u53D1\u81F3\u5C11\u9700\u8981\u4E00\u4E2A\u80FD\u89E3\u6790\u6210 open_id \u7684\u5BF9\u8C61","botDefaults.substituteResolving":"\u89E3\u6790\u4E2D\u2026","botDefaults.substituteUnresolved":"\u672A\u89E3\u6790","botDefaults.substituteReasonCrossAppOpenId":"\u8BE5 Open ID \u5C5E\u4E8E\u5176\u4ED6\u5E94\u7528\uFF0C\u8BF7\u6539\u7528\u90AE\u7BB1\u6216 Union ID","botDefaults.substituteReasonNotVisible":"\u8BE5\u7528\u6237\u4E0D\u5728\u5E94\u7528\u901A\u8BAF\u5F55\u53EF\u89C1\u8303\u56F4\uFF0C\u8BF7\u8C03\u6574\u5E94\u7528\u53EF\u89C1\u6027\u6216\u6539\u7528\u90AE\u7BB1","botDefaults.substituteReasonResolveFailed":"\u89E3\u6790\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u6216\u901A\u8BAF\u5F55\u6743\u9650","botDefaults.substituteReasonUnresolvable":"\u65E0\u6CD5\u89E3\u6790\u8BE5\u6807\u8BC6\uFF0C\u8BF7\u68C0\u67E5\u62FC\u5199\u6216\u6539\u7528\u90AE\u7BB1","botDefaults.substituteSave":"\u4FDD\u5B58\u66FF\u8EAB\u6A21\u5F0F","botDefaults.substituteOff":"\u5173\u95ED\u5168\u5C40\u66FF\u8EAB\u914D\u7F6E","botDefaults.sectionGrant":"\u6388\u6743\u4E0E\u989D\u5EA6","botDefaults.autoGrantCard":"\u672A\u6388\u6743 @ \u81EA\u52A8\u5F39\u6388\u6743\u5361","botDefaults.autoGrantCardHelp":"\u672A\u6388\u6743\u7528\u6237\u6216\u5916\u90E8 bot \u660E\u786E @ \u65F6\uFF0C\u81EA\u52A8\u5411 owner \u53D1\u9001 /grant \u7533\u8BF7\u5361\u3002\u5173\u95ED\u540E\u4ECD\u62E6\u622A\uFF0C\u4F46\u4E0D\u63D0\u793A\u3002","botDefaults.restrictGrant":"\u9650\u5236\u88AB\u6388\u6743\u4EBA\u53EA\u80FD\u7EAF\u5BF9\u8BDD","botDefaults.restrictGrantHelp":"\u9650\u5236 /grant \u7528\u6237\u53EA\u80FD\u666E\u901A\u5BF9\u8BDD\uFF0C\u7981\u6B62 botmux \u547D\u4EE4\u3001\u900F\u4F20\u547D\u4EE4\u3001CLI \u539F\u751F\u547D\u4EE4\u548C\u5DE5\u4F5C\u6D41\u76F8\u5173\u547D\u4EE4\uFF1Bowner \u4E0D\u53D7\u5F71\u54CD\u3002","botDefaults.p2pOpen":"\u79C1\u804A\u5BF9\u8BDD\u5168\u5F00","botDefaults.p2pOpenHelp":"\u4EFB\u4F55\u80FD\u770B\u5230\u672C bot \u7684\u4EBA\u90FD\u53EF\u4EE5\u79C1\u804A\u5B83\uFF0C\u65E0\u9700\u9010\u4E2A /grant\u2014\u2014\u8C01\u80FD\u770B\u5230\u7531\u98DE\u4E66\u5E94\u7528\u300C\u53EF\u7528\u8303\u56F4\u300D\u63A7\u5236\u3002\u53EA\u653E\u884C\u5BF9\u8BDD\uFF1A\u7BA1\u7406\u64CD\u4F5C\u9ED8\u8BA4\u4ECD\u53EA\u8BA4\u7BA1\u7406\u5458\u540D\u5355\uFF08\u4F8B\u5916\uFF1A\u88AB\u300CSlash \u547D\u4EE4\u6743\u9650\u300D\u663E\u5F0F\u964D\u7EA7\u5230\u300C\u80FD\u5BF9\u8BDD\u5373\u53EF\u7528\u300D\u7684 daemon \u547D\u4EE4\uFF0C\u79C1\u804A\u8005\u4E5F\u80FD\u6267\u884C\uFF09\u3002\u5F00\u4E4B\u524D\u5148\u786E\u8BA4 allowedUsers \u975E\u7A7A\u3002\u4E0D\u5F71\u54CD\u7FA4\u804A\u3002","botDefaults.grantDurationDefault":"\u9ED8\u8BA4\u6388\u6743\u65F6\u957F","botDefaults.grantDurationHelp":"\u9009\u62E9\u540E\u81EA\u52A8\u4FDD\u5B58\uFF1B\u9009\u62E9 1 \u5C0F\u65F6\uFF08\u9ED8\u8BA4\uFF09\u4F1A\u6062\u590D\u5185\u7F6E\u65F6\u957F\u3002\u53EA\u5F71\u54CD\u4E4B\u540E\u751F\u6210\u7684\u6388\u6743\u5361\uFF1B\u6BCF\u5F20\u5361\u4ECD\u53EF\u4E34\u65F6\u6539\u4E3A\u5176\u4ED6\u65F6\u957F\u6216\u6C38\u4E45\uFF0C\u5DF2\u6709\u6388\u6743\u548C\u5DF2\u53D1\u51FA\u7684\u5361\u7247\u4E0D\u53D8\u3002","botDefaults.grantDuration1Hour":"1 \u5C0F\u65F6\uFF08\u9ED8\u8BA4\uFF09","botDefaults.grantDuration1HourValue":"1 \u5C0F\u65F6","botDefaults.grantDuration8Hours":"8 \u5C0F\u65F6","botDefaults.grantDuration1Day":"1 \u5929","botDefaults.grantDuration7Days":"7 \u5929","botDefaults.grantDurationInvalid":"\u8BF7\u9009\u62E9\u6709\u6548\u7684\u6388\u6743\u65F6\u957F","botDefaults.quotaDefault":"\u6D88\u606F\u989D\u5EA6\u8986\u76D6","botDefaults.quotaPlaceholder":"\u7559\u7A7A\uFF1D\u5185\u7F6E\u9ED8\u8BA4\uFF1A\u6388\u6743\u5361\u6BCF\u4EBA {count} \u6761","botDefaults.quotaHelpBuiltIn":"\u5F53\u524D\u4F7F\u7528\u5185\u7F6E\u9ED8\u8BA4\uFF1A\u6388\u6743\u5361\u6BCF\u4EBA {count} \u6761\uFF0COncall \u4E0D\u9650\u3002\u586B\u5199\u6570\u5B57\u5E76\u79BB\u5F00\u8F93\u5165\u6846\u540E\u81EA\u52A8\u4FDD\u5B58\uFF0C\u6388\u6743\u5361\u548C Oncall \u5C06\u4F7F\u7528\u540C\u4E00\u989D\u5EA6\uFF1B\u5DF2\u6709\u6388\u6743\u548C\u663E\u5F0F /grant @\u7528\u6237 N \u4E0D\u53D7\u5F71\u54CD\u3002","botDefaults.quotaHelpCustom":"\u5F53\u524D\u4F7F\u7528\u81EA\u5B9A\u4E49\u989D\u5EA6\uFF1A\u6388\u6743\u5361\u548C Oncall \u6BCF\u4EBA {count} \u6761\u3002\u6E05\u7A7A\u8F93\u5165\u6846\u5E76\u79BB\u5F00\u540E\uFF0C\u6388\u6743\u5361\u6062\u590D\u6BCF\u4EBA {defaultCount} \u6761\u3001Oncall \u6062\u590D\u4E0D\u9650\uFF1B\u5DF2\u6709\u6388\u6743\u548C\u663E\u5F0F /grant @\u7528\u6237 N \u4E0D\u53D7\u5F71\u54CD\u3002","botDefaults.quotaHelpLegacy":"\u5F53\u524D\u4F7F\u7528\u517C\u5BB9\u65E7\u914D\u7F6E\uFF1A\u6388\u6743\u5361\u6BCF\u4EBA {cardCount} \u6761\uFF0COncall \u6BCF\u4EBA {oncallCount} \u6761\u3002\u6E05\u7A7A\u8F93\u5165\u6846\u5E76\u79BB\u5F00\u540E\uFF0C\u6388\u6743\u5361\u6062\u590D\u6BCF\u4EBA {defaultCount} \u6761\u3001Oncall \u6062\u590D\u4E0D\u9650\uFF1B\u5DF2\u6709\u6388\u6743\u548C\u663E\u5F0F /grant @\u7528\u6237 N \u4E0D\u53D7\u5F71\u54CD\u3002","botDefaults.quotaInvalid":"\u8BF7\u8F93\u5165 1\u20131000 \u7684\u6574\u6570","botDefaults.grantDefaultsCurrentBuiltIn":"\u5F53\u524D\u5185\u7F6E\u9ED8\u8BA4\uFF1A{duration} \xB7 \u6388\u6743\u5361\u6BCF\u4EBA {count} \u6761\uFF1BOncall \u4E0D\u9650","botDefaults.grantDefaultsCurrentCustomBuiltInQuota":"\u5F53\u524D\u81EA\u5B9A\u4E49\uFF1A{duration} \xB7 \u6D88\u606F\u989D\u5EA6\u4E3A\u5185\u7F6E\u9ED8\u8BA4\uFF08\u6388\u6743\u5361\u6BCF\u4EBA {count} \u6761\uFF1BOncall \u4E0D\u9650\uFF09","botDefaults.grantDefaultsCurrentCustom":"\u5F53\u524D\u81EA\u5B9A\u4E49\uFF1A{duration} \xB7 \u6BCF\u4EBA {count} \u6761\uFF08\u6388\u6743\u5361\u4E0E Oncall\uFF09","botDefaults.grantDefaultsCurrentLegacy":"\u5F53\u524D\u517C\u5BB9\u65E7\u914D\u7F6E\uFF1A{duration} \xB7 \u6388\u6743\u5361 {cardCount} \u6761\uFF1BOncall {oncallCount} \u6761","botDefaults.grantDefaultsSaving":"\u4FDD\u5B58\u4E2D\u2026","botDefaults.sectionSessionCap":"\u4F1A\u8BDD\u5E38\u9A7B\u4E0A\u9650","botDefaults.maxLiveWorkers":"\u6700\u5927\u5E38\u9A7B\u4F1A\u8BDD\u6570","botDefaults.maxLiveWorkersPlaceholder":"\u7559\u7A7A\uFF1D\u9ED8\u8BA4 30","botDefaults.maxLiveWorkersUsage":"\u5E38\u9A7B {resident}/{cap} \xB7 \u4F11\u7720 {dormant} \xB7 \u603B\u4F1A\u8BDD {logical}","botDefaults.maxLiveWorkersHelp":"\u672C Bot \u540C\u65F6\u5E38\u9A7B\u5185\u5B58\u7684\u4F1A\u8BDD\u6570\u4E0A\u9650\u3002\u8D85\u8FC7\u540E\u6700\u4E45\u672A\u7528\u7684\u4F1A\u8BDD\u81EA\u52A8\u4F11\u7720\uFF1A\u5176\u540E\u53F0\u8FDB\u7A0B\u548C CLI \u4E00\u8D77\u9000\u51FA\u3001\u56DE\u6536\u5185\u5B58\uFF0C\u4F46\u8BDD\u9898\u4ECD\u53EF\u7EE7\u7EED\uFF1B\u4E0B\u6761\u6D88\u606F\u4F1A\u4ECE\u78C1\u76D8\u8BB0\u5F55\u51B7\u6062\u590D\u4E0A\u4E0B\u6587\uFF08\u901A\u5E38\u51E0\u79D2\uFF09\u3002\u7559\u7A7A\uFF1D\u9ED8\u8BA4 30\uFF1B\u586B\u6570\u5B57\uFF1D\u672C Bot \u81EA\u5B9A\u4E49\u3002\u6CE8\u610F\uFF1A\u6B63\u5728\u51FA\u7B54\u6848\u7684\u4F1A\u8BDD\u4E0D\u4F1A\u88AB\u6253\u65AD\uFF1B\u53EA\u6709\u53EF\u6062\u590D\u7684\u4F1A\u8BDD\u4F1A\u81EA\u52A8\u4F11\u7720\uFF0C\u63A5\u5165\u5916\u90E8\u7EC8\u7AEF\u6216\u4E0D\u53EF\u6062\u590D\u7684\u4F1A\u8BDD\u4E0D\u53D7\u5F71\u54CD\u3002","botDefaults.maxLiveWorkersSave":"\u4FDD\u5B58\u4E0A\u9650","botDefaults.maxLiveWorkersOff":"\u6062\u590D\u9ED8\u8BA4","botDefaults.maxLiveWorkersInvalid":"\u4E0A\u9650\u5FC5\u987B\u662F\u6B63\u6574\u6570","botDefaults.maxLiveWorkersStateDefault":"\u5F53\u524D\uFF1A\u9ED8\u8BA4\u5E38\u9A7B 30 \u4E2A\u4F1A\u8BDD","botDefaults.maxLiveWorkersStateOn":"\u5F53\u524D\uFF1A\u6700\u591A\u5E38\u9A7B {count} \u4E2A\u4F1A\u8BDD","botDefaults.overloadAlert":"\u673A\u5668\u8FC7\u8F7D\u544A\u8B66","botDefaults.overloadAlertHelp":"\u5F00\u542F\u540E\uFF0C\u672C Bot \u7684 daemon \u4F1A\u6BCF 30 \u79D2\u68C0\u67E5\u6574\u673A\u8D1F\u8F7D/\u5185\u5B58\uFF0C\u8D8A\u8FC7\u8FC7\u8F7D\u7EBF\uFF08\u9ED8\u8BA4 load15 > \u6838\u6570\xD71.5 \u6216\u5185\u5B58\u226592%\uFF09\u65F6\u7ED9\u672C Bot \u7684\u7BA1\u7406\u5458\u53D1\u4E00\u6761\u98DE\u4E66\u79C1\u4FE1\u63D0\u9192\uFF0C\u6062\u590D\u540E\u518D\u53D1\u4E00\u6761\u3002\u673A\u5668\u8FC7\u8F7D\u4F1A\u5BFC\u81F4 botmux \u4F1A\u8BDD\u51B7\u542F\u52A8\u8D85\u65F6\u5047\u6B7B\uFF0C\u8FD9\u4E2A\u63D0\u9192\u80FD\u8BA9\u4F60\u53CA\u65F6\u6E05\u7406\u4F1A\u8BDD\u6216\u8C03\u4F4E\u5E38\u9A7B\u4E0A\u9650\u3002\u8D1F\u8F7D\u662F\u6574\u673A\u6307\u6807\uFF0C\u6307\u5B9A\u4E00\u4E2A Bot \u5F00\u542F\u5373\u53EF\uFF1B\u591A\u4E2A Bot \u540C\u65F6\u5F00\u4E5F\u4F1A\u81EA\u52A8\u53BB\u91CD\u3001\u6574\u673A\u6BCF\u6B21\u8FC7\u8F7D\u53EA\u53D1\u4E00\u6B21\u3002\u9ED8\u8BA4\u5173\u95ED\u3002","botDefaults.sectionRuntimeEnv":"\u542F\u52A8\u73AF\u5883","botDefaults.sectionStartupCommands":"\u542F\u52A8\u547D\u4EE4","botDefaults.startupCommandsHelp":"\u65B0\u4F1A\u8BDD\u542F\u52A8\u540E\u3001\u9996\u6761\u6D88\u606F\u524D\u81EA\u52A8\u53D1\u9001\u7684 CLI \u547D\u4EE4\u3002\u652F\u6301\u9017\u53F7\u6216\u6362\u884C\u5206\u9694\uFF1B\u6BCF\u6B21\u65B0\u4F1A\u8BDD\u548C\u6062\u590D\u90FD\u4F1A\u91CD\u653E\u3002\u4EC5\u539F\u751F CLI \u4F1A\u8BDD\u751F\u6548\u3002","botDefaults.startupCommandsPlaceholder":"\u6BCF\u884C\u4E00\u6761\uFF0C\u5982 /effort ultracode","botDefaults.startupCommandsSave":"\u4FDD\u5B58\u542F\u52A8\u547D\u4EE4","botDefaults.sectionSlashCommands":"Slash \u547D\u4EE4\u6743\u9650","botDefaults.sectionSlashCommandsHelp":"\u63A7\u5236\u54EA\u4E9B slash \u547D\u4EE4\u900F\u4F20\u7ED9\u5E95\u5C42 CLI\uFF0C\u4EE5\u53CA\u54EA\u4E9B daemon \u547D\u4EE4\u5BF9\u300C\u80FD\u5BF9\u8BDD\u300D\u7684\u4EBA\u653E\u884C\u3002\u6539\u52A8\u7ACB\u5373\u751F\u6548\u3002","botDefaults.customPassthrough":"\u989D\u5916\u900F\u4F20\u547D\u4EE4","botDefaults.customPassthroughHelp":"\u5728\u5185\u7F6E\u767D\u540D\u5355\u4E4B\u5916\uFF0C\u989D\u5916\u653E\u884C\u900F\u4F20\u7ED9\u5E95\u5C42 CLI \u7684 slash \u547D\u4EE4\uFF08daemon \u4E0D\u5904\u7406\uFF0C\u539F\u6837\u8F6C\u53D1\uFF09\u3002\u9017\u53F7\u6216\u7A7A\u683C\u5206\u9694\uFF0C\u5982 /goal /export\u3002\u4F1A daemon \u547D\u4EE4\u51B2\u7A81\u7684\u6761\u76EE\u88AB\u5FFD\u7565\u3002\u7559\u7A7A\uFF1D\u4EC5\u5185\u7F6E\u767D\u540D\u5355\u3002","botDefaults.customPassthroughPlaceholder":"\u5982 /goal /export","botDefaults.customPassthroughSave":"\u4FDD\u5B58\u900F\u4F20\u547D\u4EE4","botDefaults.canTalkDaemon":"canTalk \u53EF\u7528\u7684 daemon \u547D\u4EE4","botDefaults.canTalkDaemonHelp":"\u628A\u5217\u51FA\u7684 daemon \u547D\u4EE4\u6743\u9650\u4ECE canOperate\uFF08\u4EC5\u7BA1\u7406\u5458\uFF09\u964D\u5230 canTalk\uFF08\u5BF9\u8BDD\u653E\u884C\u5373\u53EF\u7528\uFF0C\u5982 oncall \u7FA4\u6210\u5458\u3001\u88AB\u6388\u6743\u4EBA\u3001\u79C1\u804A\u7528\u6237\uFF09\u3002\u9017\u53F7\u6216\u7A7A\u683C\u5206\u9694\uFF0C\u53EA\u8BA4 daemon \u547D\u4EE4\uFF08\u900F\u4F20/\u62FC\u9519\u6761\u76EE\u88AB\u5FFD\u7565\uFF09\u3002\u26A0\uFE0F /cd /restart /rename \u7B49\u4F1A\u6539\u53D8\u72B6\u6001\uFF0C\u964D\u7EA7\u987B\u8C28\u614E\uFF1B\u5EFA\u8BAE\u53EA\u653E /status /help \u8FD9\u7C7B\u4F4E\u5371\u547D\u4EE4\u3002\u7559\u7A7A\uFF1D\u5168\u90E8\u4EC5\u7BA1\u7406\u5458\u3002","botDefaults.canTalkDaemonPlaceholder":"\u5982 /status /help","botDefaults.canTalkDaemonSave":"\u4FDD\u5B58\u964D\u6743\u540D\u5355","botDefaults.sectionLaunchShell":"\u542F\u52A8 Shell","botDefaults.launchShellHelp":"\u6307\u5B9A\u542F\u52A8 CLI \u7684 shell\uFF08\u5982 zsh / bash / fish \u6216 /usr/bin/zsh\uFF09\uFF0C\u8986\u76D6 daemon \u7684 $SHELL\u3002\u7528\u4E8E\u7ED5\u8FC7\u767B\u5F55 shell rc \u4E2D\u7684\u8DF3\u8F6C\u95EE\u9898\uFF1BPATH \u7B49\u4ECD\u9700\u5728\u6240\u9009 shell \u914D\u7F6E\u4E2D\u53EF\u7528\uFF08fish \u7528\u6237\u5199\u5728 ~/.config/fish/config.fish\uFF09\u3002\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\u3002","botDefaults.launchShellPlaceholder":"\u5982 zsh \u6216 /usr/bin/zsh\uFF1B\u7559\u7A7A\uFF1D\u7528 $SHELL","botDefaults.launchShellSave":"\u4FDD\u5B58\u542F\u52A8 Shell","botDefaults.sectionEnv":"\u73AF\u5883\u53D8\u91CF","botDefaults.envHelp":"\u4EE5 JSON \u4E3A\u8BE5 bot \u7684 CLI \u8FDB\u7A0B\u6CE8\u5165\u73AF\u5883\u53D8\u91CF\u3002\u652F\u6301\u5B57\u7B26\u4E32/\u6570\u5B57/\u5E03\u5C14\uFF1BBOTMUX_\u3001LARK_APP_ \u7B49\u4FDD\u7559\u952E\u4F1A\u88AB\u5FFD\u7565\u3002\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\uFF0C\u660E\u6587\u5B58\u50A8\u5728 bots.json\u3002","botDefaults.envPlaceholder":`{
23
23
  "ANTHROPIC_BASE_URL": "https://api.z.ai/api/anthropic",
24
24
  "ANTHROPIC_AUTH_TOKEN": "\u4F60\u7684 GLM Coding Plan key"
25
- }`,"botDefaults.envSave":"\u4FDD\u5B58\u73AF\u5883\u53D8\u91CF","botDefaults.sectionRiff":"Riff \u540E\u7AEF\u914D\u7F6E","botDefaults.riffHelp":"\u914D\u7F6E riff \u670D\u52A1\u7684\u8FDE\u63A5\u53C2\u6570\uFF0C\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\u3002agent \u56FA\u5B9A\u4E3A codex\uFF08riff \u670D\u52A1\u7AEF\u5DF2\u4E0B\u7EBF\u5176\u5B83 runner\uFF09\u3002\u8BA4\u8BC1\uFF1A\u9ED8\u8BA4\u81EA\u52A8\u8BFB\u53D6\u672C\u673A ByteCloud keychain \u7684 JWT\uFF08\u767B\u5F55\u8FC7 kaboo-cli / aiden-cli / cjadk \u4EFB\u4E00\u5373\u53EF\uFF09\uFF0C\u65B0\u673A\u5668\u53EA\u9700\u767B\u5F55\u4E00\u6B21\uFF1B\u4E5F\u53EF\u7528\u300CJWT \u73AF\u5883\u53D8\u91CF\u300D\u6307\u5B9A\u3002\u4ED3\u5E93\uFF1A\u81EA\u52A8\u590D\u7528\u4F1A\u8BDD\u5DE5\u4F5C\u76EE\u5F55\uFF08\u542B\u4ED3\u5E93\u9009\u62E9\u5361 / \u4EC5\u9ED8\u8BA4\u76EE\u5F55 / Oncall \u76EE\u5F55\uFF09\u7684 git \u4ED3\u5E93\u4E0E\u5F53\u524D\u5206\u652F\uFF0C\u65E0\u9700\u5355\u72EC\u914D\u7F6E\u3002","botDefaults.riffBaseUrl":"Base URL","botDefaults.riffBaseUrlPlaceholder":"https://riff.example.com","botDefaults.riffSandboxCluster":"\u8FD0\u884C\u73AF\u5883","botDefaults.riffSandboxClusterHelp":"\u9009\u62E9\u65B0\u4EFB\u52A1\u4F7F\u7528\u7684\u6C99\u7BB1\u8D44\u6E90\u6C60\uFF1ABOE \u652F\u6301\u8BBF\u95EE\u5185\u7F51\uFF0C\u9002\u5408\u5F00\u53D1\u3001\u8054\u8C03\u548C\u6392\u969C\uFF1BCN \u4F7F\u7528 CN \u8D44\u6E90\u7EC4\u3002\u8BE5\u9009\u9879\u4E0E Base URL\uFF08Riff \u670D\u52A1\u73AF\u5883\uFF09\u76F8\u4E92\u72EC\u7ACB\uFF1B\u672A\u914D\u7F6E\u65F6\u670D\u52A1\u7AEF\u9ED8\u8BA4 BOE\u3002","botDefaults.riffReasoningEffort":"\u601D\u8003\u7B49\u7EA7","botDefaults.riffReasoningEffortDefault":"\u9ED8\u8BA4\uFF08medium\uFF09","botDefaults.riffReasoningEffortHelp":"codex \u7684\u63A8\u7406\u5F3A\u5EA6\uFF08model_reasoning_effort\uFF09\uFF0C\u5199\u5165\u6C99\u7BB1\u914D\u7F6E\u3002\u7559\u7A7A\u8DDF\u968F riff \u9ED8\u8BA4 medium\uFF1Bxhigh \u6700\u5F3A\u4F46\u66F4\u6162\u66F4\u8D35\u3002","botDefaults.riffModel":"\u6A21\u578B","botDefaults.riffModelPlaceholder":"\uFF08\u53EF\u9009\uFF09\u7559\u7A7A\u4F7F\u7528 riff \u9ED8\u8BA4\u6A21\u578B\uFF08\u63A8\u8350\uFF09","botDefaults.riffModelHelp":"riff \u4EFB\u52A1\u7684\u6A21\u578B\u540D\u3002\u7559\u7A7A\u4F7F\u7528 riff \u9ED8\u8BA4\uFF08gpt-5.5\uFF09\uFF1B\u4EC5\u63A5\u53D7 riff \u652F\u6301\u6E05\u5355\u5185\u7684\u503C\uFF0C\u975E\u6CD5\u540D\u5B57\u4F1A\u521B\u5EFA\u5931\u8D25\u5E76\u56DE\u663E\u5B8C\u6574\u6E05\u5355\u3002","botDefaults.riffJwtEnv":"JWT \u73AF\u5883\u53D8\u91CF","botDefaults.riffJwtEnvPlaceholder":"RIFF_JWT","botDefaults.riffSystemPrompt":"System Prompt","botDefaults.riffSystemPromptPlaceholder":"\uFF08\u53EF\u9009\uFF09\u6CE8\u5165\u5230 riff \u4EFB\u52A1\u7684\u7CFB\u7EDF\u63D0\u793A\u8BCD\uFF1B\u4E0D\u586B\u5219\u4F7F\u7528\u5185\u7F6E\u9ED8\u8BA4\u503C","botDefaults.riffSetupCommands":"\u989D\u5916\u521D\u59CB\u5316\u547D\u4EE4","botDefaults.riffSetupCommandsPlaceholder":"\uFF08\u53EF\u9009\uFF09\u6BCF\u884C\u4E00\u6761 shell \u547D\u4EE4\uFF0C\u5728 agent \u5F00\u59CB\u5DE5\u4F5C\u524D\u6267\u884C\u3002botmux \u4F1A\u81EA\u52A8\u5B89\u88C5\uFF0C\u65E0\u9700\u624B\u52A8\u6DFB\u52A0\u3002","botDefaults.riffJwtEnvHelp":"\u5B58\u653E JWT \u4EE4\u724C\u7684\u73AF\u5883\u53D8\u91CF\u540D\u3002botmux \u542F\u52A8\u65F6\u4ECE\u8BE5\u53D8\u91CF\u8BFB\u53D6\u4EE4\u724C\u7528\u4E8E\u8C03\u7528 riff API\uFF1B\u4E5F\u53EF\u7559\u7A7A\u4F7F\u7528 ByteCloud keychain \u81EA\u52A8\u83B7\u53D6\u3002","botDefaults.riffCliPersistFailed":"\u5207\u6362\u5230 Riff \u672A\u80FD\u4FDD\u5B58\uFF08CLI \u9009\u62E9\u6301\u4E45\u5316\u5931\u8D25\uFF09\uFF0C\u8BF7\u91CD\u8BD5","botDefaults.riffSave":"\u4FDD\u5B58 Riff \u914D\u7F6E","nav.roles":"\u89D2\u8272\u7BA1\u7406","nav.groupRoles":"\u7FA4\u89D2\u8272","nav.roleProfiles":"Profiles","roles.title":"\u89D2\u8272\u7BA1\u7406","roleProfiles.title":"Profiles","roles.search":"\u641C\u7D22\u7FA4\u540D/Bot/ID","roles.refresh":"\u5237\u65B0","roles.selectHint":"\u2190 \u5C55\u5F00\u7FA4\u7EC4\uFF0C\u9009\u62E9\u4E00\u4E2A Bot \u6765\u7F16\u8F91\u89D2\u8272","roles.editorPlaceholder":`\u8F93\u5165\u89D2\u8272\u63CF\u8FF0\uFF0C\u4F8B\u5982\uFF1A
25
+ }`,"botDefaults.envSave":"\u4FDD\u5B58\u73AF\u5883\u53D8\u91CF","botDefaults.sectionRiff":"Riff \u540E\u7AEF\u914D\u7F6E","botDefaults.riffHelp":"\u914D\u7F6E riff \u670D\u52A1\u7684\u8FDE\u63A5\u53C2\u6570\uFF0C\u4E0B\u4E2A\u65B0\u4F1A\u8BDD\u751F\u6548\u3002agent \u56FA\u5B9A\u4E3A codex\uFF08riff \u670D\u52A1\u7AEF\u5DF2\u4E0B\u7EBF\u5176\u5B83 runner\uFF09\u3002\u8BA4\u8BC1\uFF1A\u9ED8\u8BA4\u81EA\u52A8\u8BFB\u53D6\u672C\u673A ByteCloud keychain \u7684 JWT\uFF08\u767B\u5F55\u8FC7 kaboo-cli / aiden-cli / cjadk / bytedcli \u4EFB\u4E00\u5373\u53EF\uFF0C\u8DE8\u5E73\u53F0\u81EA\u52A8\u63A2\u6D4B\u5404\u5DE5\u5177\u5B58\u50A8\u76EE\u5F55\uFF09\uFF0C\u65B0\u673A\u5668\u53EA\u9700\u767B\u5F55\u4E00\u6B21\uFF1B\u4E5F\u53EF\u7528\u300CJWT \u73AF\u5883\u53D8\u91CF\u300D\u6307\u5B9A\u3002\u4ED3\u5E93\uFF1A\u81EA\u52A8\u590D\u7528\u4F1A\u8BDD\u5DE5\u4F5C\u76EE\u5F55\uFF08\u542B\u4ED3\u5E93\u9009\u62E9\u5361 / \u4EC5\u9ED8\u8BA4\u76EE\u5F55 / Oncall \u76EE\u5F55\uFF09\u7684 git \u4ED3\u5E93\u4E0E\u5F53\u524D\u5206\u652F\uFF0C\u65E0\u9700\u5355\u72EC\u914D\u7F6E\u3002","botDefaults.riffBaseUrl":"Base URL","botDefaults.riffBaseUrlPlaceholder":"https://riff.example.com","botDefaults.riffSandboxCluster":"\u8FD0\u884C\u73AF\u5883","botDefaults.riffSandboxClusterHelp":"\u9009\u62E9\u65B0\u4EFB\u52A1\u4F7F\u7528\u7684\u6C99\u7BB1\u8D44\u6E90\u6C60\uFF1ABOE \u652F\u6301\u8BBF\u95EE\u5185\u7F51\uFF0C\u9002\u5408\u5F00\u53D1\u3001\u8054\u8C03\u548C\u6392\u969C\uFF1BCN \u4F7F\u7528 CN \u8D44\u6E90\u7EC4\u3002\u8BE5\u9009\u9879\u4E0E Base URL\uFF08Riff \u670D\u52A1\u73AF\u5883\uFF09\u76F8\u4E92\u72EC\u7ACB\uFF1B\u672A\u914D\u7F6E\u65F6\u670D\u52A1\u7AEF\u9ED8\u8BA4 BOE\u3002","botDefaults.riffReasoningEffort":"\u601D\u8003\u7B49\u7EA7","botDefaults.riffReasoningEffortDefault":"\u9ED8\u8BA4\uFF08medium\uFF09","botDefaults.riffReasoningEffortHelp":"codex \u7684\u63A8\u7406\u5F3A\u5EA6\uFF08model_reasoning_effort\uFF09\uFF0C\u5199\u5165\u6C99\u7BB1\u914D\u7F6E\u3002\u7559\u7A7A\u8DDF\u968F riff \u9ED8\u8BA4 medium\uFF1Bxhigh \u6700\u5F3A\u4F46\u66F4\u6162\u66F4\u8D35\u3002","botDefaults.riffModel":"\u6A21\u578B","botDefaults.riffModelPlaceholder":"\uFF08\u53EF\u9009\uFF09\u7559\u7A7A\u4F7F\u7528 riff \u9ED8\u8BA4\u6A21\u578B\uFF08\u63A8\u8350\uFF09","botDefaults.riffModelHelp":"riff \u4EFB\u52A1\u7684\u6A21\u578B\u540D\u3002\u7559\u7A7A\u4F7F\u7528 riff \u9ED8\u8BA4\uFF08gpt-5.5\uFF09\uFF1B\u4EC5\u63A5\u53D7 riff \u652F\u6301\u6E05\u5355\u5185\u7684\u503C\uFF0C\u975E\u6CD5\u540D\u5B57\u4F1A\u521B\u5EFA\u5931\u8D25\u5E76\u56DE\u663E\u5B8C\u6574\u6E05\u5355\u3002","botDefaults.riffJwtEnv":"JWT \u73AF\u5883\u53D8\u91CF","botDefaults.riffJwtEnvPlaceholder":"RIFF_JWT","botDefaults.riffSystemPrompt":"System Prompt","botDefaults.riffSystemPromptPlaceholder":"\uFF08\u53EF\u9009\uFF09\u6CE8\u5165\u5230 riff \u4EFB\u52A1\u7684\u7CFB\u7EDF\u63D0\u793A\u8BCD\uFF1B\u4E0D\u586B\u5219\u4F7F\u7528\u5185\u7F6E\u9ED8\u8BA4\u503C","botDefaults.riffSetupCommands":"\u989D\u5916\u521D\u59CB\u5316\u547D\u4EE4","botDefaults.riffSetupCommandsPlaceholder":"\uFF08\u53EF\u9009\uFF09\u6BCF\u884C\u4E00\u6761 shell \u547D\u4EE4\uFF0C\u5728 agent \u5F00\u59CB\u5DE5\u4F5C\u524D\u6267\u884C\u3002botmux \u4F1A\u81EA\u52A8\u5B89\u88C5\uFF0C\u65E0\u9700\u624B\u52A8\u6DFB\u52A0\u3002","botDefaults.riffJwtEnvHelp":"\u5B58\u653E JWT \u4EE4\u724C\u7684\u73AF\u5883\u53D8\u91CF\u540D\u3002botmux \u542F\u52A8\u65F6\u4ECE\u8BE5\u53D8\u91CF\u8BFB\u53D6\u4EE4\u724C\u7528\u4E8E\u8C03\u7528 riff API\uFF1B\u4E5F\u53EF\u7559\u7A7A\u4F7F\u7528 ByteCloud keychain \u81EA\u52A8\u83B7\u53D6\u3002","botDefaults.riffCliPersistFailed":"\u5207\u6362\u5230 Riff \u672A\u80FD\u4FDD\u5B58\uFF08CLI \u9009\u62E9\u6301\u4E45\u5316\u5931\u8D25\uFF09\uFF0C\u8BF7\u91CD\u8BD5","botDefaults.riffSave":"\u4FDD\u5B58 Riff \u914D\u7F6E","nav.roles":"\u89D2\u8272\u7BA1\u7406","nav.groupRoles":"\u7FA4\u89D2\u8272","nav.roleProfiles":"Profiles","roles.title":"\u89D2\u8272\u7BA1\u7406","roleProfiles.title":"Profiles","roles.search":"\u641C\u7D22\u7FA4\u540D/Bot/ID","roles.refresh":"\u5237\u65B0","roles.selectHint":"\u2190 \u5C55\u5F00\u7FA4\u7EC4\uFF0C\u9009\u62E9\u4E00\u4E2A Bot \u6765\u7F16\u8F91\u89D2\u8272","roles.editorPlaceholder":`\u8F93\u5165\u89D2\u8272\u63CF\u8FF0\uFF0C\u4F8B\u5982\uFF1A
26
26
  \u4F60\u662F\u672C\u7FA4\u7684\u6280\u672F\u987E\u95EE\uFF0C\u8D1F\u8D23\u56DE\u7B54\u6240\u6709\u6280\u672F\u95EE\u9898...`,"roles.injectModeLabel":"\u6CE8\u5165\u65B9\u5F0F","roles.injectModeEvery":"\u6BCF\u8F6E\u6CE8\u5165\uFF08\u9ED8\u8BA4\uFF09","roles.injectModeOnce":"\u4EC5\u9996\u8F6E\u6CE8\u5165\u4E00\u6B21","roles.injectModeHint":"\u300C\u4EC5\u4E00\u6B21\u300D\u53EA\u5728\u4F1A\u8BDD\u5F00\u59CB/\u91CD\u5EFA\u65F6\u6CE8\u5165\u89D2\u8272\uFF0C\u4E4B\u540E\u4E0D\u518D\u91CD\u590D\uFF0C\u7701 token\uFF1B\u6539\u52A8\u5373\u65F6\u4FDD\u5B58","roles.dispatchCompletionLabel":"\u8BDD\u9898\u4EFB\u52A1\u56DE\u62A5\u65B9\u5F0F","roles.dispatchCompletionEnabled":"\u989D\u5916\u4F7F\u7528 botmux send \u539F\u8BDD\u9898\u7559\u6863","roles.dispatchCompletionHint":"\u9ED8\u8BA4\u5173\u95ED\uFF1B\u5F00\u542F\u540E\uFF0C\u672C Bot \u5728\u6B64\u7FA4\u6D3E\u53D1\u7684\u4EFB\u52A1\u4ECD\u4F7F\u7528 botmux report \u56DE\u6CE8\u4E3B\u7F16\u6392\u4F1A\u8BDD\uFF0C\u540C\u65F6\u989D\u5916\u5728\u6536\u5230\u4EFB\u52A1\u7684\u539F\u8BDD\u9898\u7528 botmux send \u7559\u4E00\u4EFD\u6700\u7EC8\u4EA4\u4ED8\uFF1B\u6539\u52A8\u5373\u65F6\u4FDD\u5B58","roles.configured":"\u5DF2\u914D\u7F6E","roles.unconfigured":"\u672A\u914D\u7F6E","roles.noChats":"\u6682\u65E0\u7FA4\u7EC4","roles.preview":"\u9884\u89C8","roles.previewEmpty":"\uFF08\u7A7A\u5185\u5BB9\uFF09","roles.saved":"\u5DF2\u4FDD\u5B58","roles.delete":"\u5220\u9664","roles.save":"\u4FDD\u5B58","roles.confirmDelete":"\u786E\u8BA4\u5220\u9664\u8BE5 Bot \u5728\u6B64\u7FA4\u7684\u89D2\u8272\u914D\u7F6E\uFF1F","roles.botsWithRoles":"\u4E2A Bot \u5DF2\u914D\u7F6E\u89D2\u8272","roles.emptyError":"\u89D2\u8272\u5185\u5BB9\u4E0D\u80FD\u4E3A\u7A7A\uFF0C\u8BF7\u5148\u8F93\u5165\u5185\u5BB9","roles.saveFailed":"\u4FDD\u5B58\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5","roles.tabGroups":"\u6309\u7FA4\u7EC4","roles.tabProfiles":"Profiles","roles.editorTabs":"\u89D2\u8272\u914D\u7F6E","roles.roleTab":"\u89D2\u8272\u63D0\u793A\u8BCD","roles.listenerTab":"\u6D88\u606F\u76D1\u542C","roles.listenerBadge":"\u76D1\u542C","roles.listenerEnabled":"\u542F\u7528\u7FA4\u6D88\u606F\u76D1\u542C","roles.listenerName":"\u76D1\u542C\u540D\u79F0","roles.listenerNamePlaceholder":"\u4F8B\u5982\uFF1A\u544A\u8B66\u76D1\u542C","roles.listenerReplyCardTitle":"\u56DE\u590D\u5361\u7247\u6807\u9898","roles.listenerReplyCardTitlePlaceholder":"\u7559\u7A7A\u4F7F\u7528\u9ED8\u8BA4\u6807\u9898","roles.listenerWorkingDir":"\u5DE5\u4F5C\u76EE\u5F55","roles.listenerWorkingDirPlaceholder":"\u7559\u7A7A\u4F7F\u7528 Bot \u9ED8\u8BA4\u5DE5\u4F5C\u76EE\u5F55","roles.listenerSenderTypes":"\u53D1\u9001\u8005\u7C7B\u578B","roles.listenerSenderUser":"\u7528\u6237","roles.listenerSenderBot":"\u673A\u5668\u4EBA","roles.listenerMessageTypes":"\u6D88\u606F\u7C7B\u578B","roles.listenerExcludeSelf":"\u6392\u9664\u5F53\u524D\u673A\u5668\u4EBA","roles.listenerPrompt":"\u76D1\u542C\u63D0\u793A\u8BCD","roles.listenerPromptPlaceholder":"\u63CF\u8FF0\u54EA\u4E9B\u7FA4\u6D88\u606F\u9700\u8981\u5904\u7406\uFF0C\u4EE5\u53CA\u5982\u4F55\u56DE\u590D\u3002\u547D\u4E2D\u7684\u6D88\u606F\u4F1A\u5728\u539F\u6D88\u606F\u4E0B\u65B9\u65B0\u5EFA\u8BDD\u9898\u56DE\u590D\u3002","roles.listenerPromptRequired":"\u542F\u7528\u76D1\u542C\u65F6\u63D0\u793A\u8BCD\u4E0D\u80FD\u4E3A\u7A7A","roles.listenerSenderRequired":"\u542F\u7528\u76D1\u542C\u65F6\u81F3\u5C11\u9009\u62E9\u4E00\u4E2A\u53D1\u9001\u8005","roles.listenerSenderMode":"\u5339\u914D\u6A21\u5F0F","roles.listenerSenderModeInclude":"\u4EC5\u76D1\u542C\u6240\u9009","roles.listenerSenderModeAllExcept":"\u76D1\u542C\u5168\u90E8\uFF08\u9664\u6392\u9664\u9879\uFF09","roles.listenerSenderModeIncludeHelp":"\u767D\u540D\u5355\uFF1A\u53EA\u5904\u7406\u4E0B\u65B9\u52FE\u9009\u201C\u76D1\u542C\u201D\u7684\u53D1\u9001\u8005\uFF08\u6309 open_id \u5339\u914D\uFF09\u3002\u7B2C\u4E09\u65B9\u673A\u5668\u4EBA\u5728\u5386\u53F2/\u8F6E\u8BE2\u63A5\u53E3\u6309 app_id \u4E0A\u62A5\u3001\u89E3\u6790\u4E0D\u51FA open_id\uFF0C\u6B64\u6A21\u5F0F\u65E0\u6CD5\u547D\u4E2D\u5B83\u4EEC\u3002","roles.listenerSenderModeAllExceptHelp":"\u9ED1\u540D\u5355\uFF1A\u5904\u7406\u6240\u6709\u5339\u914D\u53D1\u9001\u8005\u7C7B\u578B\u7684\u6D88\u606F\uFF0C\u4EC5\u6392\u9664\u4E0B\u65B9\u6807\u4E3A\u201C\u4E0D\u76D1\u542C\u201D\u7684\u9879\uFF08\u5F53\u524D\u673A\u5668\u4EBA\u59CB\u7EC8\u6392\u9664\uFF09\u3002\u60F3\u76D1\u542C\u7FA4\u91CC\u7B2C\u4E09\u65B9\u544A\u8B66\u673A\u5668\u4EBA\uFF08Argos \u7B49\uFF09\u8BF7\u7528\u6B64\u6A21\u5F0F\u3002","roles.listenerFilters":"\u53D1\u9001\u8005\u8FC7\u6EE4","roles.listenerMembers":"\u6210\u5458\u8FC7\u6EE4","roles.listenerBots":"\u673A\u5668\u4EBA\u8FC7\u6EE4","roles.listenerMembersHint":"\u663E\u793A\u540D\u4EC5\u7528\u4E8E\u9009\u62E9\uFF0C\u914D\u7F6E\u4FDD\u5B58 open_id","roles.listenerMembersEmpty":"\u6682\u65E0\u6210\u5458\u6570\u636E","roles.listenerBotsEmpty":"\u6682\u65E0\u673A\u5668\u4EBA\u6570\u636E","roles.listenerSearchPlaceholder":"\u6309\u540D\u79F0\u6216 open_id \u641C\u7D22","roles.listenerClearSearch":"\u6E05\u7A7A\u641C\u7D22","roles.listenerSelectVisible":"\u5168\u9009 {count} \u9879","roles.listenerClearVisible":"\u53D6\u6D88\u5168\u9009 {count} \u9879","roles.listenerSelectedCount":"\u5DF2\u9009\u62E9 {count} \u9879","roles.listenerFilteredCount":"\u5F53\u524D\u7B5B\u9009 {count} \u9879","roles.listenerMixedMode":"\u6DF7\u5408\u72B6\u6001","roles.listenerBulkActions":"\u6279\u91CF\u8BBE\u7F6E\u76D1\u542C\u72B6\u6001","roles.listenerTargetListen":"\u76D1\u542C","roles.listenerTargetIgnore":"\u4E0D\u76D1\u542C","roles.listenerConfirmDelete":"\u786E\u8BA4\u5220\u9664\u8BE5 Bot \u5728\u6B64\u7FA4\u7684\u6D88\u606F\u76D1\u542C\u914D\u7F6E\uFF1F","roles.listenerScopeHelp":"\u76D1\u542C\u53EA\u5904\u7406\u7FA4\u804A\u9876\u5C42\u6D88\u606F\uFF1B\u663E\u5F0F @ \u5F53\u524D Bot \u7684\u6D88\u606F\u4ECD\u8D70\u666E\u901A @ \u8DEF\u7531\uFF1B\u9ED8\u8BA4\u4E0D\u5904\u7406\u5DF2\u6709\u7EBF\u7A0B\u91CC\u7684\u666E\u901A\u56DE\u590D\u3002","roles.listenerPreviewTitle":"\u9884\u89C8\u4E0E\u8BD5\u8FD0\u884C","roles.listenerPreviewHint":"\u9884\u89C8\u6700\u8FD1 24 \u5C0F\u65F6\u5185\u7B26\u5408\u5F53\u524D\u6761\u4EF6\u7684\u7FA4\u6D88\u606F\uFF1B\u8BD5\u8FD0\u884C\u4F1A\u6309\u771F\u5B9E\u94FE\u8DEF\u521B\u5EFA\u4F1A\u8BDD\u5E76\u56DE\u590D\u3002","roles.listenerPreviewCount":"\u6570\u91CF","roles.listenerPreviewButton":"\u9884\u89C8","roles.listenerRunPreviewButton":"\u8BD5\u8FD0\u884C","roles.listenerPreviewEmpty":"\u5C1A\u672A\u9884\u89C8\u3002","roles.listenerPreviewNoMatches":"\u6700\u8FD1 24 \u5C0F\u65F6\u5185\u6CA1\u6709\u7B26\u5408\u6761\u4EF6\u7684\u5185\u5BB9\u3002","roles.listenerPreviewSummary":"\u547D\u4E2D {count} \u6761\u6D88\u606F","roles.listenerRunPreviewSummary":"\u8BD5\u8FD0\u884C {count} \u6761\uFF1A\u5DF2\u89E6\u53D1 {triggered} \u6761\uFF0C\u6267\u884C\u4E2D {running} \u6761\uFF0C\u5DF2\u56DE\u590D {replied} \u6761\uFF0C\u56DE\u590D\u5931\u8D25 {failed} \u6761","roles.listenerPreviewFailed":"\u9884\u89C8\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5","roles.listenerPreviewSender":"\u53D1\u9001\u8005","roles.listenerPreviewTime":"\u53D1\u9001\u65F6\u95F4","roles.listenerPreviewMessageTitle":"\u6D88\u606F\u6807\u9898","roles.listenerPreviewContent":"\u6D88\u606F\u5185\u5BB9","roles.listenerRunPreviewState.triggered":"\u5DF2\u89E6\u53D1","roles.listenerRunPreviewState.running":"\u6267\u884C\u4E2D","roles.listenerRunPreviewState.replied":"\u5DF2\u56DE\u590D","roles.listenerRunPreviewState.failed":"\u56DE\u590D\u5931\u8D25","roles.profileIdPlaceholder":"profile id\uFF0C\u5982 collab-main","roles.profileIdInvalid":"Profile id \u53EA\u80FD\u5305\u542B\u5B57\u6BCD\u3001\u6570\u5B57\u3001\u70B9\u3001\u4E0B\u5212\u7EBF\u3001\u77ED\u6A2A\u7EBF\uFF0C\u6700\u957F 64\uFF0C\u4E14\u4E0D\u80FD\u662F . \u6216 ..","roles.openProfile":"\u6253\u5F00","roles.profileSearch":"\u641C\u7D22 profile","roles.profileSelectHint":"\u2190 \u9009\u62E9\u6216\u8F93\u5165\u4E00\u4E2A profile \u6765\u7F16\u8F91","roles.profileEmpty":"\u6682\u65E0 Profiles","roles.profileEntries":"\u4E2A entry","roles.profileMissing":"\u7F3A\u5931","roles.profileRuntimeHint":"Profile \u53EA\u662F\u53EF\u590D\u7528\u5957\u88C5\uFF1BApply \u540E\u5199\u6210\u672C\u7FA4 Role\uFF0C\u4E0D\u589E\u52A0\u8FD0\u884C\u65F6\u5C42\u7EA7\u3002","roles.profileBots":"Bot Entries","roles.profileEditorPlaceholder":"\u8F93\u5165\u5F53\u524D bot \u5728\u8BE5 profile \u4E0B\u7684 Markdown role...","roles.saveEntry":"\u4FDD\u5B58 Entry","roles.profileBotSelectHint":"\u9009\u62E9\u4E00\u4E2A Bot \u6765\u7F16\u8F91\u5B83\u5728\u8BE5 profile \u91CC\u7684 entry","roles.applyToGroup":"Apply \u5230\u7FA4\u7EC4","roles.applyForce":"\u8986\u76D6\u5DF2\u6709\u672C\u7FA4 Role","roles.previewApply":"\u9884\u89C8 Apply","roles.applyProfile":"Apply Profile","roles.applyPickBots":"\u8BF7\u9009\u62E9\u81F3\u5C11\u4E00\u4E2A Bot","roles.applyWouldRefuse":"\u4F1A\u62D2\u7EDD\uFF08\u5DF2\u6709\u672C\u7FA4 Role\uFF09","roles.applyPreviewOk":"\u53EF\u5E94\u7528","roles.applyOk":"\u5DF2\u5E94\u7528","roles.applyFailed":"\u5931\u8D25","roles.confirmDeleteProfileEntry":"\u786E\u8BA4\u5220\u9664\u8BE5 Bot \u5728\u6B64 profile \u91CC\u7684 entry\uFF1F","common.none":"\u65E0","common.loading":"\u52A0\u8F7D\u4E2D\u2026","common.unknown":"\u672A\u77E5","common.now":"\u521A\u521A","common.never":"\u4ECE\u672A","common.all":"\u5168\u90E8","common.dropdownSearch":"\u641C\u7D22\u2026","common.dropdownSearchEmpty":"\u65E0\u5339\u914D\u9879","nav.workflows":"\u5DE5\u4F5C\u6D41","workflow.v3.cancel":"\u53D6\u6D88\u8FD0\u884C","workflow.v3.cancelTitle":"\u53D6\u6D88\u8FD9\u4E2A v3 \u5DE5\u4F5C\u6D41\u8FD0\u884C","workflow.v3.cancelTerminal":"\u8FD0\u884C\u5DF2\u7ED3\u675F","workflow.v3.cancelling":"\u53D6\u6D88\u4E2D\u2026","workflow.v3.cancelConfirm":`\u786E\u8BA4\u53D6\u6D88 v3 \u5DE5\u4F5C\u6D41\u8FD0\u884C {runId}\uFF1F
27
27
 
28
- \u5DF2\u5B8C\u6210\u7684\u8282\u70B9\u4F1A\u4FDD\u7559\uFF0C\u8FD0\u884C\u4E2D\u7684\u8282\u70B9\u4F1A\u88AB\u4E2D\u65AD\u3002`,"workflow.v3.cancelPending":"\u53D6\u6D88\u8BF7\u6C42\u5DF2\u6301\u4E45\u5316\uFF1B\u6B63\u5728\u7B49\u5F85\u8FD0\u884C\u4E2D\u7684\u8282\u70B9\u6536\u655B\u3002","workflow.v3.cancelled":"\u8FD0\u884C\u5DF2\u53D6\u6D88\u3002","workflow.v3.cancelAlreadyTerminal":"\u8FD0\u884C\u5DF2\u5148\u4E00\u6B65\u8FDB\u5165\u7EC8\u6001\uFF0C\u672A\u518D\u63D0\u4EA4\u53D6\u6D88\u3002","workflow.v3.cancelAuthRequired":"\u9700\u8981 Dashboard \u5199\u6743\u9650\uFF1A\u8BF7\u5728\u7EC8\u7AEF\u8FD0\u884C `botmux dashboard` \u83B7\u53D6\u5F53\u524D\u767B\u5F55\u94FE\u63A5\u540E\u91CD\u8BD5\u3002","workflow.v3.cancelFailed":"\u53D6\u6D88\u5931\u8D25\uFF1A{error}"},ye={"app.name":"botmux","app.subtitle":"Feishu AI CLI Control","nav.docs":"Docs","time.secondsAgo":"{value}s ago","time.minutesAgo":"{value}m ago","time.hoursAgo":"{value}h ago","nav.overview":"Workbench","nav.monitoring":"Monitoring Board","nav.sessions":"Session Control","nav.groups":"Group Management","nav.schedules":"Scheduled Tasks","nav.settings":"Global Settings","nav.botDefaults":"Bot Config","nav.skills":"Skill Management","nav.whiteboards":"Whiteboards","nav.team":"Team Collaboration","nav.connectors":"Webhook","nav.webhookLogs":"Invocation Logs","nav.office":"Office","nav.createSession":"Create session","nav.createBot":"Create bot","status.live":"Live link","status.disconnected":"Disconnected","status.system":"System","status.light":"Light","status.dark":"Dark","status.language":"Language","status.theme":"Theme","theme.base":"Basic","theme.skins":"Skins","skin.cyber":"2077","skin.fallout":"Fallout","botOnboarding.add":"Add Bot","botOnboarding.title":"Add Bot","botOnboarding.intro":"Choose how it works. Scan once to sign in, then reuse that account for future additions without scanning.","botOnboarding.sessionChecking":"Checking your Feishu sign-in\u2026","botOnboarding.sessionReady":"Will use {user} \xB7 {tenant}","botOnboarding.switchAccount":"Switch account","botOnboarding.reuseCurrentAccount":"Use current account","botOnboarding.sessionSwitching":"A new scan will choose another account","botOnboarding.sessionSwitchingHint":"The new sign-in will replace the cache on this machine.","botOnboarding.sessionScanRequired":"Scan to sign in","botOnboarding.sessionScanRequiredHint":"Scan on first use or after expiry. The sign-in stays on this machine so later additions can skip it.","botOnboarding.confirmReuse":"Confirm account and add","botOnboarding.appNameLabel":"Bot name (optional)","botOnboarding.appNamePlaceholder":"e.g. Engineering Assistant","botOnboarding.appNameHint":"Leave blank to use {name}","botOnboarding.cliLabel":"AI CLI","botOnboarding.cliMissingOption":"{label} (not installed: {command})","botOnboarding.cliMissingHint":"{command} is not available on this machine. Install it or fix the daemon PATH before creating the Bot.","botOnboarding.dirModeLabel":"Where new topics start","botOnboarding.dirModeFixed":"Fixed folder (recommended)","botOnboarding.dirModeCard":"Choose a repository each time","botOnboarding.dirLabelFixed":"Default working directory","botOnboarding.dirLabelCard":"Repo scan root","botOnboarding.dirPlaceholderFixed":"Default ~ (home); must exist on the daemon host","botOnboarding.dirPlaceholderCard":"e.g. ~/projects \u2014 the card lists git repos under it; must exist on the daemon host","botOnboarding.modelLabel":"Model (optional)","botOnboarding.modelPlaceholder":"Leave empty for the CLI default model","botOnboarding.modelTtadkPlaceholder":"ttadk gateway model, default {model}, editable anytime","botOnboarding.modelTtadkCocoPlaceholder":"CoCo needs no model","botOnboarding.startScan":"Scan to add","botOnboarding.cancel":"Cancel","botOnboarding.starting":"Preparing secure sign-in\u2026","botOnboarding.waiting":"Scan with Feishu. One scan creates and configures \u201C{name}\u201D.","botOnboarding.waitingCompat":"Scan with Feishu for compatibility mode. An additional scan may be required, and the platform chooses the app name.","botOnboarding.verifying":"App created. Confirming your account\u2026","botOnboarding.configuringPermissions":"Configuring permissions and events, then publishing the bot\u2026","botOnboarding.platformScanHint":"Compatibility mode needs an additional Open Platform sign-in. Scan to continue.","botOnboarding.platformQrAlt":"Open Platform login QR code","botOnboarding.completed":"\u201C{name}\u201D is ready","botOnboarding.botFallback":"Bot","botOnboarding.permissionOk":"Auto-imported {count} permissions.","botOnboarding.permissionSkipped":"({count} skipped \u2014 not in the tenant catalog)","botOnboarding.permissionVersion":"Submitted version {version}.","botOnboarding.permissionManual":"Permissions could not be auto-configured. Complete these steps manually:","botOnboarding.metaDir":"Dir","botOnboarding.createFailedTitle":"Couldn\u2019t create the app","botOnboarding.createFailedDescription":"Your form values are preserved. Retry or explicitly choose compatibility mode.","botOnboarding.qrExpiredTitle":"QR code expired","botOnboarding.qrExpiredDescription":"Your form values are preserved. Generate a new code.","botOnboarding.authIncompleteTitle":"Authorization wasn\u2019t completed","botOnboarding.authIncompleteDescription":"No app was created. You can scan again.","botOnboarding.partialFailureTitle":"The app was created, but setup is incomplete","botOnboarding.partialFailureDescription":"The App ID is preserved and no new app will be created. Use the recovery command in Technical details.","botOnboarding.technicalDetails":"Technical details","botOnboarding.retry":"Retry","botOnboarding.generateQr":"Generate a new code","botOnboarding.scanAgain":"Scan again","botOnboarding.compatibilityMode":"Use compatibility mode","botOnboarding.compatibilityConfirm":"Compatibility mode may require an additional scan and cannot apply a custom bot name. Continue?","botOnboarding.openLink":"Open scan link in browser","botOnboarding.close":"Close","botOnboarding.restartHint":"bots.json has been updated. Auto-start did not succeed; run botmux restart for the new bot to take effect.","botOnboarding.liveOk":"The bot is live \u2014 no restart needed. Just @mention it in Feishu to use it.","botOnboarding.needsOwnerTitle":"One more step: confirm an administrator","botOnboarding.needsOwnerDescription":"We could not confirm an administrator from the scanned account. Enter a company email or mobile number to finish; the bot will not start before confirmation.","botOnboarding.ownerLabel":"Administrator email or mobile","botOnboarding.ownerPlaceholder":"name@company.com or +14155550123","botOnboarding.ownerUseId":"Use an ID","botOnboarding.ownerIdLabel":"union_id / open_id","botOnboarding.ownerIdPlaceholder":"on_xxx or ou_xxx","botOnboarding.ownerSubmit":"Confirm and finish","botOnboarding.ownerEmpty":"Enter an administrator email, mobile, or ID.","botOnboarding.ownerInvalid":"Administrator validation failed. Check the value and retry.","botOnboarding.qrAlt":"Feishu bot onboarding QR code","overview.title":"Workbench","overview.team":"AI Team","overview.teamHint":"Live status of every digital teammate","overview.attention":"Needs You","overview.activeSessions":"Active Sessions","overview.sessionOverview":"Session Overview","overview.viewAll":"View all \u2192","overview.viewAllPlain":"View all","overview.sort":"Sort","overview.sortByTime":"By time","overview.sortAttentionFirst":"Needs you first","overview.botIdle":"Standing by, ready for new tasks","overview.botOffline":"Offline \u2014 daemon not running","overview.botBusy":"Working \xB7 {count} sessions","overview.botNeedsYou":"Waiting on you","overview.botReady":"Ready","overview.botOff":"Offline","overview.botConsole":"Open Console","overview.sessionsCount":"{count} sessions","overview.lastActive":"active {time} ago","overview.teamCount":"{count} bots","overview.teamExpand":"Show all","overview.teamCollapse":"Collapse","strip.pending":"{count} pending","strip.longestCompact":"longest {time} \xB7 {bot} \xB7 {reason}","strip.handle":"Handle now","overview.openSessions":"Active Sessions","overview.workingSessions":"Working","overview.idleSessions":"Idle","overview.onlineBots":"Online Bots","overview.schedules":"Schedules","overview.groups":"Groups Seen","overview.enabledSchedules":"Enabled","overview.total":"total","overview.active":"active","overview.daemonRegistry":"daemon registry","overview.chatMatrix":"chat matrix","overview.recentSessions":"Recent Sessions","overview.nextSchedules":"Schedules","overview.noSessions":"No sessions yet.","overview.noSchedules":"No schedules yet.","monitoring.eyebrow":"Runtime resources","monitoring.title":"Monitoring Board","monitoring.subtitle":"Watch host, botmux, bot, and session CPU and memory pressure in real time.","monitoring.runtimeTitle":"Monitoring Board","monitoring.runtimeSubtitle":"Monitor botmux runtime health, resource pressure, and session pressure in real time.","monitoring.runtimeHealth":"Runtime Health","monitoring.runtimeHealthHint":"Check sample freshness, daemon availability, and session buildup.","monitoring.resourcePressure":"Resource Pressure","monitoring.resourcePressureHint":"Machine resource trends are memory-only and reset after restart.","monitoring.sessionPressure":"Session Pressure","monitoring.sessionPressureHint":"Find long-running, waiting, and process-unlinked live sessions.","monitoring.botRuntime":"Bot Runtime","monitoring.botRuntimeHint":"Aggregate daemon status, session pressure, and resource usage by bot.","monitoring.sampleHealth":"Sample Health","monitoring.sampleAge":"Data age","monitoring.sample.fresh":"Fresh","monitoring.sample.stale":"Stale","monitoring.sample.unsupported":"Unsupported","monitoring.sample.unknown":"Unknown","monitoring.health.ok":"Healthy","monitoring.health.warn":"Watch","monitoring.health.danger":"High Pressure","monitoring.health.unknown":"Unknown","monitoring.daemonHealth":"Daemon Online","monitoring.sessionHealth":"Session Health","monitoring.offline":"Offline","monitoring.working":"Working","monitoring.starting":"Starting","monitoring.waiting":"Waiting","monitoring.idle":"Idle","monitoring.unknown":"Unknown","monitoring.statusDistribution":"Status Distribution","monitoring.longestRunning":"Longest Running","monitoring.longestWaiting":"Longest Waiting","monitoring.unattributedSessions":"No Linked Process","monitoring.unattributedHint":"These live sessions have no reliable PID link, so session-level resource usage cannot be calculated.","monitoring.unsupported":"Resource sampling is unavailable on this platform.","monitoring.unsupportedKicker":"Linux / macOS only","monitoring.unsupportedTitle":"Resource sampling requires Linux or macOS","monitoring.unsupportedHint":"This platform has neither readable /proc data nor the macOS ps/vm_stat sampling path; runtime health remains available.","monitoring.unsupportedRuntimeOk":"Runtime health available","monitoring.unsupportedResourceOnly":"CPU / Memory / RSS paused","monitoring.hostCpu":"CPU","monitoring.hostMemory":"Memory","monitoring.botmuxRss":"Botmux memory","monitoring.botmuxSelf":"Self","monitoring.botmuxDaemon":"daemon","monitoring.botmuxWorker":"worker","monitoring.botmuxCli":"External CLI","monitoring.rssHelpLabel":"About this memory number","monitoring.rssHelp":`Memory uses PSS (Proportional Set Size): shared pages are divided by the number of processes sharing them, so summing across processes does not double-count the shared Node runtime / libs the way RSS would (falls back to RSS when smaps_rollup is unavailable). macOS uses the equivalent phys_footprint (what Activity Monitor calls "Memory"), falling back to RSS.
28
+ \u5DF2\u5B8C\u6210\u7684\u8282\u70B9\u4F1A\u4FDD\u7559\uFF0C\u8FD0\u884C\u4E2D\u7684\u8282\u70B9\u4F1A\u88AB\u4E2D\u65AD\u3002`,"workflow.v3.cancelPending":"\u53D6\u6D88\u8BF7\u6C42\u5DF2\u6301\u4E45\u5316\uFF1B\u6B63\u5728\u7B49\u5F85\u8FD0\u884C\u4E2D\u7684\u8282\u70B9\u6536\u655B\u3002","workflow.v3.cancelled":"\u8FD0\u884C\u5DF2\u53D6\u6D88\u3002","workflow.v3.cancelAlreadyTerminal":"\u8FD0\u884C\u5DF2\u5148\u4E00\u6B65\u8FDB\u5165\u7EC8\u6001\uFF0C\u672A\u518D\u63D0\u4EA4\u53D6\u6D88\u3002","workflow.v3.cancelAuthRequired":"\u9700\u8981 Dashboard \u5199\u6743\u9650\uFF1A\u8BF7\u5728\u7EC8\u7AEF\u8FD0\u884C `botmux dashboard` \u83B7\u53D6\u5F53\u524D\u767B\u5F55\u94FE\u63A5\u540E\u91CD\u8BD5\u3002","workflow.v3.cancelFailed":"\u53D6\u6D88\u5931\u8D25\uFF1A{error}"},fe={"app.name":"botmux","app.subtitle":"Feishu AI CLI Control","nav.docs":"Docs","time.secondsAgo":"{value}s ago","time.minutesAgo":"{value}m ago","time.hoursAgo":"{value}h ago","nav.overview":"Workbench","nav.monitoring":"Monitoring Board","nav.sessions":"Session Control","nav.groups":"Group Management","nav.schedules":"Scheduled Tasks","nav.settings":"Global Settings","nav.botDefaults":"Bot Config","nav.skills":"Skill Management","nav.whiteboards":"Whiteboards","nav.team":"Team Collaboration","nav.connectors":"Webhook","nav.webhookLogs":"Invocation Logs","nav.feedback":"Feedback","feedback.title":"Feedback analytics","feedback.subtitle":"Review delivery coverage, latest ratings, failures, and redacted drill-down data.","feedback.delivered":"Delivered","feedback.rated":"Rated deliveries","feedback.coverage":"Rating coverage","feedback.positiveRate":"Positive rate","feedback.deliveryFailures":"Delivery failures","feedback.outboxFailures":"Webhook failures","feedback.trend":"Semantic trend","feedback.reasons":"Negative reasons","feedback.deliveries":"Redacted deliveries","feedback.loadMore":"Load more","nav.office":"Office","nav.createSession":"Create session","nav.createBot":"Create bot","status.live":"Live link","status.disconnected":"Disconnected","status.system":"System","status.light":"Light","status.dark":"Dark","status.language":"Language","status.theme":"Theme","theme.base":"Basic","theme.skins":"Skins","skin.cyber":"2077","skin.fallout":"Fallout","botOnboarding.add":"Add Bot","botOnboarding.title":"Add Bot","botOnboarding.intro":"Choose how it works. Scan once to sign in, then reuse that account for future additions without scanning.","botOnboarding.sessionChecking":"Checking your Feishu sign-in\u2026","botOnboarding.sessionReady":"Will use {user} \xB7 {tenant}","botOnboarding.switchAccount":"Switch account","botOnboarding.reuseCurrentAccount":"Use current account","botOnboarding.sessionSwitching":"A new scan will choose another account","botOnboarding.sessionSwitchingHint":"The new sign-in will replace the cache on this machine.","botOnboarding.sessionScanRequired":"Scan to sign in","botOnboarding.sessionScanRequiredHint":"Scan on first use or after expiry. The sign-in stays on this machine so later additions can skip it.","botOnboarding.confirmReuse":"Confirm account and add","botOnboarding.appNameLabel":"Bot name (optional)","botOnboarding.appNamePlaceholder":"e.g. Engineering Assistant","botOnboarding.appNameHint":"Leave blank to use {name}","botOnboarding.cliLabel":"AI CLI","botOnboarding.cliMissingOption":"{label} (not installed: {command})","botOnboarding.cliMissingHint":"{command} is not available on this machine. Install it or fix the daemon PATH before creating the Bot.","botOnboarding.dirModeLabel":"Where new topics start","botOnboarding.dirModeFixed":"Fixed folder (recommended)","botOnboarding.dirModeCard":"Choose a repository each time","botOnboarding.dirLabelFixed":"Default working directory","botOnboarding.dirLabelCard":"Repo scan root","botOnboarding.dirPlaceholderFixed":"Default ~ (home); must exist on the daemon host","botOnboarding.dirPlaceholderCard":"e.g. ~/projects \u2014 the card lists git repos under it; must exist on the daemon host","botOnboarding.modelLabel":"Model (optional)","botOnboarding.modelPlaceholder":"Leave empty for the CLI default model","botOnboarding.modelTtadkPlaceholder":"ttadk gateway model, default {model}, editable anytime","botOnboarding.modelTtadkCocoPlaceholder":"CoCo needs no model","botOnboarding.startScan":"Scan to add","botOnboarding.cancel":"Cancel","botOnboarding.starting":"Preparing secure sign-in\u2026","botOnboarding.waiting":"Scan with Feishu. One scan creates and configures \u201C{name}\u201D.","botOnboarding.waitingCompat":"Scan with Feishu for compatibility mode. An additional scan may be required, and the platform chooses the app name.","botOnboarding.verifying":"App created. Confirming your account\u2026","botOnboarding.configuringPermissions":"Configuring permissions and events, then publishing the bot\u2026","botOnboarding.platformScanHint":"Compatibility mode needs an additional Open Platform sign-in. Scan to continue.","botOnboarding.platformQrAlt":"Open Platform login QR code","botOnboarding.completed":"\u201C{name}\u201D is ready","botOnboarding.botFallback":"Bot","botOnboarding.permissionOk":"Auto-imported {count} permissions.","botOnboarding.permissionSkipped":"({count} skipped \u2014 not in the tenant catalog)","botOnboarding.permissionVersion":"Submitted version {version}.","botOnboarding.permissionManual":"Permissions could not be auto-configured. Complete these steps manually:","botOnboarding.metaDir":"Dir","botOnboarding.createFailedTitle":"Couldn\u2019t create the app","botOnboarding.createFailedDescription":"Your form values are preserved. Retry or explicitly choose compatibility mode.","botOnboarding.qrExpiredTitle":"QR code expired","botOnboarding.qrExpiredDescription":"Your form values are preserved. Generate a new code.","botOnboarding.authIncompleteTitle":"Authorization wasn\u2019t completed","botOnboarding.authIncompleteDescription":"No app was created. You can scan again.","botOnboarding.partialFailureTitle":"The app was created, but setup is incomplete","botOnboarding.partialFailureDescription":"The App ID is preserved and no new app will be created. Use the recovery command in Technical details.","botOnboarding.technicalDetails":"Technical details","botOnboarding.retry":"Retry","botOnboarding.generateQr":"Generate a new code","botOnboarding.scanAgain":"Scan again","botOnboarding.compatibilityMode":"Use compatibility mode","botOnboarding.compatibilityConfirm":"Compatibility mode may require an additional scan and cannot apply a custom bot name. Continue?","botOnboarding.openLink":"Open scan link in browser","botOnboarding.close":"Close","botOnboarding.restartHint":"bots.json has been updated. Auto-start did not succeed; run botmux restart for the new bot to take effect.","botOnboarding.liveOk":"The bot is live \u2014 no restart needed. Just @mention it in Feishu to use it.","botOnboarding.needsOwnerTitle":"One more step: confirm an administrator","botOnboarding.needsOwnerDescription":"We could not confirm an administrator from the scanned account. Enter a company email or mobile number to finish; the bot will not start before confirmation.","botOnboarding.ownerLabel":"Administrator email or mobile","botOnboarding.ownerPlaceholder":"name@company.com or +14155550123","botOnboarding.ownerUseId":"Use an ID","botOnboarding.ownerIdLabel":"union_id / open_id","botOnboarding.ownerIdPlaceholder":"on_xxx or ou_xxx","botOnboarding.ownerSubmit":"Confirm and finish","botOnboarding.ownerEmpty":"Enter an administrator email, mobile, or ID.","botOnboarding.ownerInvalid":"Administrator validation failed. Check the value and retry.","botOnboarding.qrAlt":"Feishu bot onboarding QR code","overview.title":"Workbench","overview.team":"AI Team","overview.teamHint":"Live status of every digital teammate","overview.attention":"Needs You","overview.activeSessions":"Active Sessions","overview.sessionOverview":"Session Overview","overview.viewAll":"View all \u2192","overview.viewAllPlain":"View all","overview.sort":"Sort","overview.sortByTime":"By time","overview.sortAttentionFirst":"Needs you first","overview.botIdle":"Standing by, ready for new tasks","overview.botOffline":"Offline \u2014 daemon not running","overview.botBusy":"Working \xB7 {count} sessions","overview.botNeedsYou":"Waiting on you","overview.botReady":"Ready","overview.botOff":"Offline","overview.botConsole":"Open Console","overview.sessionsCount":"{count} sessions","overview.lastActive":"active {time} ago","overview.teamCount":"{count} bots","overview.teamExpand":"Show all","overview.teamCollapse":"Collapse","strip.pending":"{count} pending","strip.longestCompact":"longest {time} \xB7 {bot} \xB7 {reason}","strip.handle":"Handle now","overview.openSessions":"Active Sessions","overview.workingSessions":"Working","overview.idleSessions":"Idle","overview.onlineBots":"Online Bots","overview.schedules":"Schedules","overview.groups":"Groups Seen","overview.enabledSchedules":"Enabled","overview.total":"total","overview.active":"active","overview.daemonRegistry":"daemon registry","overview.chatMatrix":"chat matrix","overview.recentSessions":"Recent Sessions","overview.nextSchedules":"Schedules","overview.noSessions":"No sessions yet.","overview.noSchedules":"No schedules yet.","monitoring.eyebrow":"Runtime resources","monitoring.title":"Monitoring Board","monitoring.subtitle":"Watch host, botmux, bot, and session CPU and memory pressure in real time.","monitoring.runtimeTitle":"Monitoring Board","monitoring.runtimeSubtitle":"Monitor botmux runtime health, resource pressure, and session pressure in real time.","monitoring.runtimeHealth":"Runtime Health","monitoring.runtimeHealthHint":"Check sample freshness, daemon availability, and session buildup.","monitoring.resourcePressure":"Resource Pressure","monitoring.resourcePressureHint":"Machine resource trends are memory-only and reset after restart.","monitoring.sessionPressure":"Session Pressure","monitoring.sessionPressureHint":"Find long-running, waiting, and process-unlinked live sessions.","monitoring.botRuntime":"Bot Runtime","monitoring.botRuntimeHint":"Aggregate daemon status, session pressure, and resource usage by bot.","monitoring.sampleHealth":"Sample Health","monitoring.sampleAge":"Data age","monitoring.sample.fresh":"Fresh","monitoring.sample.stale":"Stale","monitoring.sample.unsupported":"Unsupported","monitoring.sample.unknown":"Unknown","monitoring.health.ok":"Healthy","monitoring.health.warn":"Watch","monitoring.health.danger":"High Pressure","monitoring.health.unknown":"Unknown","monitoring.daemonHealth":"Daemon Online","monitoring.sessionHealth":"Session Health","monitoring.offline":"Offline","monitoring.working":"Working","monitoring.starting":"Starting","monitoring.waiting":"Waiting","monitoring.idle":"Idle","monitoring.unknown":"Unknown","monitoring.statusDistribution":"Status Distribution","monitoring.longestRunning":"Longest Running","monitoring.longestWaiting":"Longest Waiting","monitoring.unattributedSessions":"No Linked Process","monitoring.unattributedHint":"These live sessions have no reliable PID link, so session-level resource usage cannot be calculated.","monitoring.unsupported":"Resource sampling is unavailable on this platform.","monitoring.unsupportedKicker":"Linux / macOS only","monitoring.unsupportedTitle":"Resource sampling requires Linux or macOS","monitoring.unsupportedHint":"This platform has neither readable /proc data nor the macOS ps/vm_stat sampling path; runtime health remains available.","monitoring.unsupportedRuntimeOk":"Runtime health available","monitoring.unsupportedResourceOnly":"CPU / Memory / RSS paused","monitoring.hostCpu":"CPU","monitoring.hostMemory":"Memory","monitoring.botmuxRss":"Botmux memory","monitoring.botmuxSelf":"Self","monitoring.botmuxDaemon":"daemon","monitoring.botmuxWorker":"worker","monitoring.botmuxCli":"External CLI","monitoring.rssHelpLabel":"About this memory number","monitoring.rssHelp":`Memory uses PSS (Proportional Set Size): shared pages are divided by the number of processes sharing them, so summing across processes does not double-count the shared Node runtime / libs the way RSS would (falls back to RSS when smaps_rollup is unavailable). macOS uses the equivalent phys_footprint (what Activity Monitor calls "Memory"), falling back to RSS.
29
29
  This is the whole-family total. Split: Self = the daemon + each session\u2019s botmux worker (our own code); External CLI = Claude/Codex-style CLIs and their tool subprocesses, usually the bulk.
30
30
  Best for spotting memory hotspots, sustained growth, and abnormal usage.`,"monitoring.trackedSessions":"Trend sessions","monitoring.currentSessions":"Current sessions","monitoring.memoryOnly":"Trends are memory-only and reset after restart","monitoring.trends":"Trends","monitoring.trendsHint":"Host and Botmux aggregates keep 24h; session history is retained only for the Top set.","monitoring.trendHostCpu":"Host CPU","monitoring.trendHostMemory":"Host Memory","monitoring.trendBotmuxCpu":"Botmux CPU","monitoring.chartNow":"now","monitoring.chartNoData":"no data","monitoring.chartMinutesAgo":"{value}m ago","monitoring.chartHoursAgo":"{value}h ago","monitoring.chartDaysAgo":"{value}d ago","monitoring.bots":"Bots","monitoring.botsHint":"Aggregates include daemon self resources and every current session for that bot.","monitoring.sessions":"Sessions","monitoring.sessionsHint":"Every live session has current values; only Top sessions keep trend history.","monitoring.trackedSessionTrends":"Top Session Trends","monitoring.trackedSessionHint":"This is the retained history subset, not the full current session set.","monitoring.modalClose":"Close","monitoring.noTrackedHistory":"No Top session history yet.","monitoring.noHotSession":"No hot session","monitoring.hottest":"Hottest","monitoring.sort":"Sort","monitoring.sort.cpu":"CPU","monitoring.sort.rss":"RSS","monitoring.sort.growth":"Growth","monitoring.sort.bot":"Bot","monitoring.sort.status":"Status","monitoring.bot":"Bot","monitoring.cpu":"CPU","monitoring.rss":"RSS","monitoring.growth":"Growth","monitoring.daemon":"Daemon","monitoring.sessionsCount":"Sessions","monitoring.session":"Session","monitoring.confidence":"Confidence","monitoring.rank":"Rank reason","sessions.title":"Session Control","sessions.search":"Search chat / working dir / title / IDs","sessions.anyStatus":"Any status","sessions.adoptAny":"Source: all","sessions.adoptYes":"Source: external (/adopt)","sessions.adoptNo":"Source: Feishu-native","sessions.chatAny":"Chat: all","sessions.chatSearch":"Search chat\u2026","sessions.chatNoMatch":"No matching chat","sessions.cliSearch":"Search CLI\u2026","sessions.cliSelectAll":"Select all","sessions.cliClear":"Clear","sessions.cliNoMatch":"No matching CLI","sessions.multiBotTopics":"Multi-Bot topics","sessions.botTriggeredTopics":"Bot-woken topics (inferred)","sessions.showUnknownChats":"Show unknown chats","sessions.activeOnly":"Active only","sessions.runtime.logical":"Open sessions","sessions.runtime.resident":"Resident sessions","sessions.runtime.dormant":"Dormant sessions","sessions.monitorRoom":"Monitor Room","sessions.addToMonitorRoom":"Add to monitor room","sessions.monitorRoomAdded":"Added {added}; total {total}","sessions.closeSelected":"Close selected","sessions.clearSelection":"Clear","sessions.selectedCount":"{count} sessions selected","sessions.idleCleanupOlderThan":"Idle over","sessions.idleCleanupThreshold":"Idle cleanup threshold","sessions.idleCleanupRun":"Clean idle","sessions.idleCleanupCount":"{count} cleanable","sessions.idleCleanupCancel":"Cancel","sessions.idleCleanupApply":"Confirm","sessions.idleCleanupRunning":"Cleaning\u2026","sessions.idleCleanupDone":"Closed {closed}, failed {failed}","sessions.idleCleanupFailed":"Cleanup failed","sessions.lock":"Lock session","sessions.unlock":"Unlock session","sessions.locked":"Locked","sessions.lockSelected":"Lock selected","sessions.unlockSelected":"Unlock selected","sessions.lockFailed":"Failed to update lock state","sessions.columnsReset":"Reset","sessions.columnsMenu":"Show columns","sessions.columns":"Columns","sessions.bot":"Bot","sessions.cli":"CLI","sessions.chat":"Chat","sessions.location":"Chat","sessions.groupChat":"Group","sessions.directChat":"DM","sessions.chatUnknown":"Unknown chat","sessions.openChat":"Open chat","sessions.status":"Status","sessions.status.starting":"Starting","sessions.status.working":"Working","sessions.status.idle":"Idle","sessions.status.dormant":"Dormant","sessions.status.analyzing":"Analyzing","sessions.status.stalled":"No recent progress","sessions.status.active":"Active","sessions.status.limited":"Limit reached","sessions.status.closed":"Closed","sessions.status.unknown":"Unknown","sessions.tokenIn":"Token In","sessions.tokenOut":"Token Out","sessions.titleCol":"Title","sessions.workingDir":"Working Dir","sessions.created":"Created","sessions.last":"Last","sessions.preview.latestExchange":"Latest exchange","sessions.preview.showFull":"Show full exchange","sessions.adopt":"Adopt","sessions.actions":"Actions","sessions.details":"Details","sessions.copy":"Copy","sessions.copied":"Copied","sessions.locate":"Locate Topic","sessions.locating":"Sending...","sessions.cooldown":"Cooldown {seconds}s","sessions.openTerminal":"Terminal","sessions.openReadonlyTerminal":"Open read-only terminal","sessions.openWritableTerminal":"Open interactive web terminal","sessions.writeLink":"Write Link","sessions.writeLinkHint":"Get a writable terminal link (carries a write-access token; opens in a new tab)","sessions.writeLinkFail":"Failed to get write link","sessions.copyCommand":"Copy reproduce command","sessions.copyCommandHint":"Copy an approximate cold-start reproduce command (bin+args+key env, sandbox wrapping omitted) to paste into the debug terminal. Contains tokens/credentials \u2014 keep private","sessions.copyCommandDone":"Copied","sessions.copyCommandFail":"Failed to get reproduce command","sessions.debugTerminal":"Debug Terminal","sessions.debugTerminalHint":"Open a throwaway terminal (no Feishu thread) to paste a reproduce command (admin only)","sessions.debugTerminalPrompt":"Working directory for the debug terminal (blank = session default):","sessions.debugTerminalFail":"Failed to open debug terminal","sessions.close":"Close Session","sessions.restart":"Restart CLI","sessions.restartConfirmIntro":"You are about to restart this CLI.","sessions.restartConfirmStatus":"Current status","sessions.restartConfirmCli":"CLI","sessions.restartConfirmQuestion":"Restart this CLI?","sessions.restartFailed":"Restart failed","sessions.resume":"Resume Session","sessions.dismiss":"Close","sessions.closeConfirm":"Close this session?","sessions.resumeFailed":"Resume failed","sessions.insight":"Insight","sessions.insightLoading":"Analyzing\u2026","sessions.insightUnavailable":"Insight unavailable","sessions.insightEmpty":"No analyzable tool spans in this session yet.","sessions.insightMetrics":"spans {total} \xB7 failed {failed} \xB7 slow {slow} \xB7 read/write {rw} \xB7 compactions {compactions}","sessions.insightSuggestions":"Suggestions","sessions.insightSpans":"Action spans","sessions.insightCapped":"showing first {shown}/{total}","sessions.insightAsOf":"as of {asOf}","sessions.insightPartial":"(may exclude the in-flight latest turn)","monitorRoom.eyebrow":"Monitor room","monitorRoom.title":"Session Monitor Room","monitorRoom.subtitle":"Watch multiple session Web Terminals on one page for long-running multi-session work.","monitorRoom.backToSessions":"Back to sessions","monitorRoom.clear":"Clear","monitorRoom.clearConfirm":"Clear all sessions from the monitor room?","monitorRoom.summary":"{count} sessions, {live} terminals available","monitorRoom.autoActive":"Show active when empty","monitorRoom.autoActiveHelp":"Off by default. When enabled, an empty manual monitor list shows all sessions matching the Sessions page Active only filter.","monitorRoom.autoSummary":"No manual sessions; showing {count} active sessions, {live} terminals available","monitorRoom.emptySummary":"Monitor room is empty","monitorRoom.emptyTitle":"No sessions added yet","monitorRoom.emptyHelp":'Go back to Sessions, select sessions, then click "Add to monitor room".',"monitorRoom.autoEmptyTitle":"No active sessions","monitorRoom.autoEmptyHelp":"Auto display is enabled, but there are no sessions matching the Active only filter.","monitorRoom.openSessions":"Open sessions","monitorRoom.remove":"Remove","monitorRoom.openTerminal":"Open standalone terminal","monitorRoom.closePopover":"Close popover","monitorRoom.missing":"Not in the current list","monitorRoom.missingHelp":"This session may have been cleaned up, or the current dashboard snapshot has not loaded it yet.","monitorRoom.terminalUnavailable":"Terminal unavailable","monitorRoom.terminalUnavailableHelp":"The session may be closed, not started with a Web Terminal yet, or missing a reachable proxy port for this access mode.","monitorRoom.updated":"Updated {time}","nav.insights":"Data Insights","insights.title":"Data Insights","insights.refresh":"Refresh","insights.search":"Search session / bot / dir\u2026","insights.filter":"Filter","insights.filterAll":"All","insights.filterAllSessions":"All sessions","insights.filterAllCli":"All CLI","insights.filterReview":"Worth review","insights.filterFailed":"Has failures","insights.filterSlow":"Has slow spans","insights.loading":"Analyzing\u2026","insights.loaded":"Loaded {count} sessions","insights.unavailable":"Load failed","insights.listCount":"showing {shown}/{total}","insights.tabOverview":"Overview","insights.tabSessions":"Sessions","insights.tabDist":"Distribution","insights.tabHot":"Hotspots","insights.projectAll":"All projects","insights.timeAll":"All time","insights.time1d":"Last 1d","insights.time7d":"Last 7d","insights.time30d":"Last 30d","insights.clear":"Clear","insights.emptyAnalyzableHint":"Check \u201CIncl. unanalyzed\u201D to see the remaining sessions.","insights.showAll":"Incl. unanalyzed","insights.distHint":"Metric distribution across the currently filtered sessions \u2014 see the shape and where typical values land.","insights.distSpans":"Spans per session","insights.distFailed":"Failures per session","insights.distSlow":"Slow spans per session","insights.distAgentTime":"Agent working time","insights.distRw":"Read/write ratio","insights.distChurn":"Code churn (lines)","insights.distTrend":"Trend by day (last 4 weeks)","insights.distTrendSub":"sessions / day","insights.distMedian":"median {v}","insights.distEmpty":"No analyzable sessions under the current filter.","insights.disclosure":`Measurement note: durations count tool-execution time only and exclude time spent waiting for a user reply (question / plan approval), so they do not reflect wall-clock;
31
31
  Codex reads files mostly via shell (exec_command), not counted as "read", so its read/write ratio runs low or 0;
32
32
  Code churn is parsed from patches and covers only each session's most active files. Cross-tool distributions and ratios are indicative only, not directly comparable.`,"insights.rwNote":"Codex reads mostly via shell, not counted as reads","insights.viewSessions":"View sessions","insights.hotHint":"Cross-session recurrence \u2014 where it pays to converge.","insights.hotToolFailures":"Tool failure hotspots","insights.hotSlowSessions":"Slowest sessions","insights.hotProjects":"Projects","insights.hotFiles":"File recurrence","insights.hotCommands":"Command recurrence","insights.hotErrors":"Error recurrence","insights.hotComingSoon":"File / command recurrence hotspots coming soon (needs cross-session engine aggregation).","insights.hotSessionsCol":"sessions","insights.hotFailsCol":"fails","insights.hotSlowCol":"slow","insights.backToList":"Back to list","insights.sortLabel":"Sort","insights.sortRecent":"Recent","insights.sortReview":"Review","insights.sortSpans":"Spans","insights.sortFails":"Failures","insights.sortSlow":"Slow","insights.sortAgent":"Duration","insights.layoutCard":"Cards","insights.layoutTable":"Table","insights.colTitle":"Session","insights.colProject":"Project","insights.colTime":"Time","insights.paletteOpen":"Jump \u2318K","insights.palettePlaceholder":"Jump to a tab or search sessions\u2026","insights.paletteTabs":"Views","insights.paletteSessions":"Sessions","insights.paletteEmpty":"No matches","insights.tabFlow":"Flow","insights.flowHint":"Where the agent spends its actions and time across activity phases, and each session\u2019s rhythm.","insights.flowPipeline":"Activity-phase pipeline","insights.flowPipeSub":"research \u2192 edit \u2192 run \u2192 delegate \u2192 discuss; top = actions, bottom = time","insights.flowShares":"Action share vs time share","insights.flowActShare":"Action share","insights.flowTimeShare":"Time share","insights.flowRhythm":"Per-session rhythm (by duration)","insights.subagents":"Sub-agents","insights.subagentsHint":"Sub-agents this session delegated to (Task/Agent) \u2014 what each did and how long it ran.","insights.readsShort":"read","insights.editsShort":"edit","insights.durShort":"dur","insights.empty":"No matching sessions.","insights.selectSession":"Pick a session on the left to see action spans and suggestions.","insights.detailLoading":"Loading session detail\u2026","insights.recommendations":"Suggestions","insights.recommendationsHint":"Rule-based cross-session rollup, each traceable to a metric.","insights.noRecommendations":"No suggestions.","insights.seenInSessions":"seen in {count} sessions","insights.toolFailures":"Top tool failures","insights.toolFailuresHint":"Failed spans grouped by tool.","insights.noFailures":"No failed spans.","insights.metricSessions":"Sessions","insights.metricAnalyzed":"{count} analyzed","insights.metricSpans":"Spans","insights.metricSafe":"redacted","insights.metricFailed":"Failed spans","insights.metricSlow":"Slow spans","insights.metricRw":"Read/write","insights.metricCompactions":"compactions {count}","insights.spansShort":"span ","insights.failedShort":"fail ","insights.slowShort":"slow ","insights.rwShort":"r/w ","insights.unsupported":"CLI not supported","insights.noTranscript":"No transcript","insights.parseError":"Parse failed","insights.noSpans":"No analyzable spans.","insights.sevBad":"Critical","insights.sevWarn":"Warn","insights.sevInfo":"Info","insights.phase.research":"Research","insights.phase.edit":"Edit","insights.phase.run":"Run","insights.phase.delegate":"Delegate","insights.phase.discuss":"Discuss","insights.trace":"Action spans","insights.ledger":"Per-turn ledger","insights.detailTabs":"Detail views","insights.spanStatus":"Status","insights.spanTool":"Tool","insights.spanPhase":"Phase","insights.spanDuration":"Duration","insights.spanTurn":"Turn","insights.spanSummary":"Summary","insights.ledgerMore":"Show {count} more summaries","insights.ledgerOmitted":"{count} more hidden","insights.ledgerNoContent":"No redacted summary for this turn.","insights.diagShow":"Show evidence","insights.diagActive":"Viewing","insights.evMatched":"{count} matching spans","insights.evMatchedCapped":"{matched} matched \xB7 showing {shown}","insights.evDefault":"{shown} of {total} spans (focused)","insights.evShowAll":"Show all {count}","insights.evBackToEvidence":"Focused view","insights.intent.run_script":"Run script","insights.intent.test":"Test","insights.intent.typecheck":"Typecheck","insights.intent.lint":"Lint","insights.intent.git":"Git","insights.intent.search":"Search","insights.intent.read_file":"Read","insights.intent.edit_file":"Edit","insights.intent.write_file":"Write","insights.intent.delegate":"Delegate","insights.intent.unknown":"Action","insights.result.ok":"OK","insights.result.tool_error":"Tool error","insights.result.test_failed":"Test failed","insights.result.typecheck_failed":"Typecheck failed","insights.result.lint_failed":"Lint failed","insights.result.command_failed":"Command failed","insights.result.timeout":"Timeout","insights.result.no_output":"No output","insights.result.unknown":"Unknown","insights.tag.failure":"Failures","insights.tag.slow":"Slow","insights.tag.retry":"Retries","insights.tag.read_write_imbalance":"Read/write imbalance","insights.tag.diagnostic":"Diagnostic","insights.tag.normal":"Normal","insights.turnHeadline.turn_has_failures":"{failures} failures this turn","insights.turnHeadline.turn_has_slow_spans":"Slow operations this turn","insights.turnHeadline.turn_has_retries":"Retried the same action repeatedly","insights.turnHeadline.turn_read_write_imbalance":"Edit-heavy turn (edits {edits} / reads {reads})","insights.evTimeline":"Full timeline ({count} spans)","insights.evNoFlags":"No spans flagged as failure / slow / retry","insights.turnAllNormal":"All {count} turns look normal \u2014 nothing to review","insights.turnEvidence":"View {count} evidence spans","insights.turnHiddenNormal":"{count} normal turns hidden","insights.mReads":"Read","insights.mEdits":"Edit","insights.mRuns":"Run","insights.mFailures":"Fail","insights.mDur":"Time","insights.turnHeadline.turn_normal":"Normal","insights.rec.fix_repeated_tool_failures":"Repeated command failures need to converge","insights.rec.split_slow_operation":"Slow operations dragged the whole session","insights.rec.add_read_pass_before_edit":"Too little reading before editing","insights.rec.preserve_context_checkpoints":"Context was compacted \u2014 keep checkpoints","insights.impact.impact_failed_spans":"{failedSpans} actions failed (top: {topTool} \xD7{topToolFailures})","insights.impact.impact_slow_spans":"{slowSpansTotal} slow operations slowed progress","insights.impact.impact_low_read_write_ratio":"Edited {writeSpans}, read only {readSpans}","insights.impact.impact_context_compaction":"{compactions} context compactions this session","insights.why.why_tool_failure_concentrated":"Failures concentrate on {topTool} ({topToolFailures}\xD7) \u2014 likely one root cause","insights.why.why_slow_span_dominates":"A few long operations dominate; slowest is {slowestTool}","insights.why.why_edits_outpaced_reads":"Read/write ratio {readWriteRatio}; editing more than reading invites rework","insights.why.why_context_compaction_happened":"Long session was compacted; early decisions/context may be lost","insights.action.inspect_failed_span_details":"Open each failed action\u2019s detail to find the root cause","insights.action.add_preflight_or_timeout":"Add preflight checks or timeouts to frequently failing commands","insights.action.narrow_or_split_slow_operation":"Narrow or split slow operations (e.g. run targeted tests)","insights.action.surface_timeout_or_progress":"Surface timeouts/progress earlier instead of silently hanging","insights.action.read_or_search_before_editing":"Read or search an unfamiliar file before editing it","insights.action.verify_assumptions_before_running":"Verify assumptions before acting to avoid blind edits","insights.action.write_checkpoints_for_long_tasks":"Write decisions and checkpoints to notes for long tasks","insights.struct.shell":"shell command","insights.struct.fileEdit":"file edit","insights.struct.readSearch":"read/search","insights.struct.agentTask":"agent task","insights.struct.toolInput":"tool input","insights.struct.toolResult":"tool result","insights.struct.toolError":"tool error","insights.struct.patchFailed":"patch failed","insights.struct.patchApplied":"patch applied","insights.struct.exit":"exit {code}","insights.spanAll":"All","insights.dDetail":"Detail","insights.dCollapse":"Hide","insights.dPhase":"Phase","insights.dStart":"Start","insights.dDur":"Duration","insights.dIntent":"Intent","insights.dResult":"Result","insights.dIn":"Input","insights.dOut":"Output","insights.dTags":"Tags","insights.dTurnContext":"Turn {turn} context","insights.advice.failure":"\u{1F4A1} Read the error before retrying \u2014 don\u2019t retry blindly","insights.advice.retry":"\u{1F4A1} Same step retried repeatedly \u2014 find the root cause first","insights.advice.read_write_imbalance":"\u{1F4A1} Read the relevant files before editing to avoid rework","insights.advice.slow":"\u{1F4A1} Slow op: run targeted tests or split it up","insights.turnPrompt":"User","insights.turnExpand":"Expand {count} steps","insights.turnCollapse":"Collapse","insights.turnRail":"Session trace","insights.gantt":"Work timeline","insights.ganttCaption":"{span} actions \xB7 {dur} elapsed \xB7 {active} active","insights.ctxCurve":"Context curve","insights.ctxCaption":"Per-turn in+cache peak \xB7 max {peak} \xB7 {turns} turns","insights.ctxTurn":"Turn {n}","insights.railSubagent":"Subagent","insights.railSubagents":"{n} subagents","insights.turnPromptExpand":"Expand","insights.turnPromptCollapse":"Collapse","insights.turnPromptRaw":"Raw","insights.turnPromptRendered":"Rendered","insights.srcMentions":"mentions","insights.senderHuman":"User","insights.senderA2A":"A2A","insights.senderOther":"Other","insights.senderSystem":"System","insights.turnPromptFull":"Full text","insights.modalClose":"Close","insights.promptTruncated":"Long content, truncated","insights.replay":"Replay","insights.replayAgent":"agent ops","insights.replaySearch":"Search conversation\u2026","insights.replayBy":"From","insights.replayState":"State","insights.replayLoadMore":"Load more ({shown}/{total})","insights.replayAllLoaded":"All loaded ({total})","insights.replayEmpty":"No matching messages","insights.replayNoText":"(no text \u2014 see ops)","insights.replayOps":"{count} ops","insights.wsFiles":"File changes \xB7 {n}","insights.wsCmds":"Commands \xB7 {n}","insights.wsReads":"read {n}","insights.wsEdits":"edit {n}","insights.wsFail":"{n} failed","insights.wsNoFiles":"No file changes","insights.wsNoCmds":"No commands","insights.turnSummary":"{total} turns \xB7 {flagged} need attention","insights.dCommand":"Command","insights.dCmdOutput":"Output","insights.ledgerNormal":"By order","insights.ledgerGrouped":"By recommendation","insights.ledgerOther":"Other turns","insights.ledgerGroupCount":"{count} turns","insights.turnsCapped":"Only first {shown}/{total} actions \u2014 timeline may be incomplete","insights.suggestion.high_tool_failure.title":"Tool failures are concentrated","insights.suggestion.high_tool_failure.action":"Check failed spans first, then add preflight checks or timeout control for repeated failing commands.","insights.suggestion.tool_failure_present.title":"Some tool calls failed","insights.suggestion.tool_failure_present.action":"Review failed spans before repeating the workflow.","insights.suggestion.slow_span.title":"A slow span dominates the session","insights.suggestion.slow_span.action":"Split or bound the slow operation, and surface timeout or progress feedback earlier.","insights.suggestion.low_read_write_ratio.title":"Edits outpaced reads","insights.suggestion.low_read_write_ratio.action":"Add a read/search pass before edits when changing unfamiliar files.","insights.suggestion.context_compaction.title":"Context compaction happened","insights.suggestion.context_compaction.action":"For long tasks, preserve decisions and checkpoints in durable notes or smaller subtasks.","insights.suggestion.no_major_friction.title":"No major trace friction detected","insights.suggestion.no_major_friction.action":"Use the span timeline for spot checks or compare against slower sessions.","insights.evidence.failedSpans":"{count} failed spans","insights.evidence.toolFailedTimes":"{tool} failed {count} times","insights.evidence.multipleToolsFailed":"multiple tools failed","insights.evidence.toolRanSeconds":"{tool} ran for {seconds}s","insights.evidence.readWriteRatio":"read/write ratio {ratio}","insights.evidence.compactions":"compactions {count}","insights.evidence.spansAnalyzed":"{count} spans analyzed","connectors.createTitle":"New Webhook","connectors.editTitle":"Edit Webhook","connectors.fName":"Name","connectors.fNamePh":"e.g. Prod alerts","connectors.fBot":"Trigger bot","connectors.fKind":"Trigger type","connectors.kindTurn":"Single turn (bot responds once)","connectors.kindWorkflow":"Workflow","connectors.kindWorkflowRetiring":"Workflow \u2014 Legacy v2 (retiring; creation disabled)","connectors.fWf":"Workflow ID","connectors.fMode":"Deliver to which group","connectors.modeDynamic":"Specified per request (chat passed in)","connectors.modeFixed":"Fixed group","connectors.modeNewGroup":"New group each time","connectors.fFixedChat":"Target group","connectors.fChatManualPh":"Enter chat ID manually: oc_\u2026","connectors.chatManualLink":"Group not listed? Enter ID manually \u2192","connectors.chatListLink":"\u2190 Pick from group list","connectors.fAllow":"Allowed groups","connectors.allowAll":"All groups","connectors.allowAllHint":"Allow requests to target any group","connectors.groupPickerPlaceholder":"Search and select a group","connectors.groupSearchPlaceholder":"Search by group name or ID","connectors.groupNoMatches":"No matching groups","connectors.groupSelectedCount":"{count} groups selected","connectors.optional":" (optional)","connectors.allowHint":"Restricts which chats dynamic requests may target. All groups means unrestricted.","connectors.dynamicHint":'<b>Dynamic mode</b>: the chat ID is passed per request, one of three ways \u2014 query <code>?chatId=&lt;chatId&gt;</code> \xB7 header <code>x-botmux-chat-id: &lt;chatId&gt;</code> \xB7 body <code>{"chatId":"&lt;chatId&gt;"}</code>.<br>For "one URL triggers directly, no params", choose Fixed group instead.',"connectors.fDedup":"Dedup field","connectors.fDedupPh":"e.g. alert.id (read from event body)","connectors.dedupHint":"Reads a business key from request JSON; supports alert.id or $.alert.id.","connectors.newGroupStrategy":"Group creation strategy","connectors.newGroupFresh":"Create a group for every call","connectors.newGroupFreshHint":"Best for independent events that need no ongoing follow-up.","connectors.newGroupReuse":"Reuse a group for the same event","connectors.newGroupReuseHint":"Groups later calls by business key for continued follow-up.","connectors.newGroupNotice":"This mode creates a group and invites the selected bot automatically. No existing group is required.","connectors.fInstruction":"Instruction","connectors.fInstructionPh":"What the bot should do after the event. Empty passes the raw event to the model.","connectors.topicMessage":"Trigger notice","connectors.topicMessageHint":"The first message shown when a webhook opens a new topic. This only affects the notice, not later bot replies.","connectors.topicMessageDefault":"Use default text","connectors.topicMessageDefaultHint":"Includes the webhook name and preserves the current behavior.","connectors.topicMessageCustom":"Custom text","connectors.topicMessageCustomHint":"Explain where this trigger came from in your own words.","connectors.topicMessageTemplate":"Trusted template","connectors.topicMessageTemplateHint":"Extract task fields from webhook data and mention owners safely.","connectors.topicMessageNone":"Send no notice","connectors.topicMessageNoneHint":"Start silently without a topic seed message.","connectors.topicMessageCustomPh":"e.g. CI build failed \u2014 inspect the release pipeline","connectors.topicMessageCustomHelp":"Use {source} to insert the webhook name.","connectors.topicMessageTemplatePh":"e.g. Start Meego development: {{title}} {{mention owner}} owner","connectors.topicMessageTemplateHelp":"Use {{field}} for text, {{mention field}} for a Lark mention, and {{source}} for the webhook name.","connectors.topicMessageExtractors":"Field extractor JSON","connectors.topicMessageExtractorsPh":`{
33
33
  "title": { "path": "$.issue.title", "kind": "text" }
34
- }`,"connectors.topicMessageExtractorsHelp":"Configure a restricted JSON path and text/mention kind for each field. Mentions may also set identityPath and namePath.","connectors.topicMessagePreview":"Preview: External event: {source}","connectors.topicMessageNonePreview":"No trigger notice will be sent. Later bot output is unaffected.","connectors.topicMessageSourceFallback":"Webhook name","connectors.topicMessageListDefault":"Trigger notice: default text","connectors.topicMessageListCustom":"Trigger notice: {text}","connectors.topicMessageListNone":"Trigger notice: disabled","connectors.fVerify":"Verification","connectors.verifyToken":"Token (simple: secret in the URL, one curl triggers it)","connectors.verifyHmac":"HMAC signature (advanced: more secure, sign the request yourself)","connectors.fSecret":"Secret / token","connectors.fSecretPh":"Leave empty to auto-generate (shown once)","connectors.fSecretEditPh":"Leave empty to keep the current secret; enter one to replace it","connectors.cancel":"Cancel","connectors.close":"Close","connectors.btnCreate":"Create","connectors.loading":"Loading\u2026","connectors.noBotGroups":"(This bot has no visible groups; enter an ID manually on the right)","connectors.modeLabelFixed":"Fixed group","connectors.modeLabelNewGroup":"New group each time","connectors.modeLabelDynamic":"Per-request group","connectors.kindLabelWorkflow":"Workflow \xB7 Legacy v2 (retiring)","connectors.kindLabelTurn":"Single turn","connectors.empty":"No webhooks yet, create one from the upper-right button","connectors.enabled":"Enabled","connectors.disabled":"Disabled","connectors.badgeToken":"Token","connectors.badgeSign":"Signed","connectors.dest":'to "{name}"',"connectors.btnDisable":"Disable","connectors.btnEnable":"Enable","connectors.btnEdit":"Edit","connectors.btnSave":"Save","connectors.btnCancel":"Cancel","connectors.btnDel":"Delete","connectors.webhookUrl":"Webhook URL: ","connectors.copy":"Copy","connectors.copied":"Copied","connectors.tokenHint":"Token mode: append <code>/&lt;token&gt;</code> to the URL when calling (the token is shown only on create/rotate).","connectors.legacyWorkflowNote":"Legacy v2 (retiring): existing settings may be maintained, but the target cannot be created or changed.","connectors.dynamicReqHint":'Dynamic mode: the request must carry the target chat \u2014 <code>?chatId=&lt;chatId&gt;</code> or header <code>x-botmux-chat-id</code> or body <code>{"chatId":"\u2026"}</code>.',"connectors.instructionPrefix":"Instruction: ","connectors.delConfirm":"Delete this webhook? Its URL stops working immediately.","connectors.errName":"Enter a name","connectors.errBot":"Pick a bot","connectors.errWf":"Enter a workflow ID","connectors.errLegacyWorkflowRetired":"Legacy v2 workflow connectors are retiring and cannot be created. Use the v3 Saved Workflow entry point.","connectors.errChat":"Pick (or enter) a target group","connectors.errDedup":"Enter the business key used to reuse a group","connectors.errTopicMessage":"Enter custom trigger notice text","connectors.errTopicExtractors":"Field extractors must be valid JSON","connectors.creating":"Creating\u2026","connectors.saving":"Saving\u2026","connectors.updated":"All settings saved","connectors.enabling":"Enabling\u2026","connectors.disabling":"Disabling\u2026","connectors.deleting":"Deleting\u2026","connectors.usageDynamicLede":"Dynamic mode: the URL already has the token; pass the target chat ID when calling{gn}:","connectors.usageDynamicNote":'The chat can also go in header <code>x-botmux-chat-id</code> or body <code>{"chatId":"\u2026"}</code>. \u26A0\uFE0F The URL is the credential \u2014 keep it secret.',"connectors.usageTokenLede":"This URL already has the token and a fixed target group; just POST to trigger:","connectors.usageTokenNote":"\u26A0\uFE0F The URL is the credential \u2014 keep it private; delete or rotate it in the list below.","connectors.usageHmac":"The external system must HMAC-SHA256-sign <code>timestamp.body</code> and call with <code>x-botmux-timestamp</code> / <code>x-botmux-nonce</code> / <code>x-botmux-signature</code> headers","connectors.usageHmacDynamic":", and also pass the target chat ID as above","connectors.createdPrefix":'Created "{name}"',"connectors.rotatedPrefix":'Updated "{name}" \u2014 new secret/token',"connectors.createdDest":'to "{name}"',"connectors.tokenLabel":"Access token","connectors.signLabel":"Signing secret","connectors.secretOnce":" (shown once \u2014 save it): ","connectors.createFailed":"Create failed: {error}","connectors.saveFailed":"Save failed: {error}","connectors.toggleFailed":"Status update failed: {error}","connectors.deleteFailed":"Delete failed: {error}","connectors.noOnlineBots":"(No online bots)","connectors.storePayload":"Retain request parameters","connectors.storePayloadHint":"Stores redacted JSON bodies and headers for 14 days by default. You can turn this off from the list.","connectors.suppressFinalOutput":"Suppress final result notice","connectors.suppressFinalOutputHint":'After a trigger fires, the bot will not post the trailing "done/summary" message. The live status card and anything the bot actively sends via botmux send still appear. Use this when the bot already posts its result into the topic and you do not want an extra summary.',"connectors.payloadLogged":"Parameters kept {days} days","connectors.metadataOnly":"Invocation metadata only","connectors.btnDisablePayloadLog":"Stop retaining parameters","connectors.btnEnablePayloadLog":"Retain request parameters","connectors.tabWebhooks":"Webhooks","connectors.tabLogs":"Invocation logs","webhookLogs.subtitle":"Review every invocation result, latency, request parameter, and resolved delivery target in one place.","webhookLogs.autoRefresh":"Auto-refreshes every 15s","webhookLogs.manage":"Manage webhooks","webhookLogs.summary":"Invocation summary","webhookLogs.total":"Total calls","webhookLogs.filteredRange":"Current filter range","webhookLogs.successRate":"Success rate","webhookLogs.calls":"successful calls","webhookLogs.failures":"Failed calls","webhookLogs.needsReview":"Needs review","webhookLogs.noFailures":"No failures in range","webhookLogs.p95":"P95 latency","webhookLogs.average":"Average","webhookLogs.allConnectors":"All webhooks","webhookLogs.allStatuses":"All results","webhookLogs.success":"Success","webhookLogs.failed":"Failed","webhookLogs.last24h":"Last 24 hours","webhookLogs.last7d":"Last 7 days","webhookLogs.last30d":"Last 30 days","webhookLogs.allTime":"All time","webhookLogs.search":"Search invocation logs","webhookLogs.searchPlaceholder":"Search Trigger ID, chat ID, errors, or parameters\u2026","webhookLogs.connector":"Webhook","webhookLogs.status":"Result","webhookLogs.timeRange":"Time range","webhookLogs.refresh":"Refresh","webhookLogs.loadFailed":"Failed to load invocation logs","webhookLogs.records":"Invocation records","webhookLogs.matching":"{count} matches","webhookLogs.loading":"Loading invocation logs\u2026","webhookLogs.empty":"No invocation records yet","webhookLogs.emptyHint":"Records appear here automatically after any webhook call.","webhookLogs.unknownConnector":"Unknown webhook","webhookLogs.loadMore":"Load more","webhookLogs.selectRecord":"Select a record to inspect its request","webhookLogs.copyJson":"Copy full JSON","webhookLogs.copied":"Copied","webhookLogs.failureReason":"Failure reason","webhookLogs.overview":"Invocation overview","webhookLogs.httpStatus":"HTTP status","webhookLogs.duration":"Duration","webhookLogs.action":"Action","webhookLogs.bodySize":"Body size","webhookLogs.remoteAddress":"Remote address","webhookLogs.target":"Delivery target","webhookLogs.queryParams":"Query parameters","webhookLogs.headers":"Request headers","webhookLogs.redacted":"Sensitive values redacted","webhookLogs.headersNotStored":"Request header retention is disabled for this webhook.","webhookLogs.payload":"Request body","webhookLogs.payloadDisabled":"Request body retention is disabled for this webhook; invocation metadata is still recorded.","webhookLogs.payloadTooLarge":"The request body exceeded 128 KB and was omitted to keep logs bounded.","webhookLogs.payloadUnavailable":"This invocation has no storable JSON request body.","webhookLogs.routeTarget":"Routing parameters","webhookLogs.none":"None","team.navHome":"My team","team.navManage":"Team management","team.eyebrow":"Team Collaboration","team.homeTitle":"Team Collaboration","team.localDeployTitle":"Current deployment","team.myIdentity":"My Lark identity: ","team.unbound":"Not bound","team.bindBtn":"Bind","team.bindHint":" (auto-identifies you via the bot credentials; once bound, pulling a group adds you and attributes the bots to you)","team.myTeams":"My teams","team.searchPh":"Search name / capability / CLI\u2026","team.allCli":"All CLIs","team.hasCap":"Has capability tag","team.hasRole":"Has default role","team.teamsHint":"Tick bots in any team to pull them into a group (each with its owner). To create a team / generate an invite code / join another team, go to Team management.","team.loading":"Loading\u2026","team.roleModalTitle":"Default role","team.roleModalHint":"The bot default persona (applies across groups), read-only here. To edit, go to the Bot Defaults page.","team.close":"Close","team.tagLocal":"Current deployment","team.tagRemoteStale":"Remote \xB7 offline?","team.tagRemote":"Remote","team.removeMember":"Remove","team.depTag":"({tag})","team.depCount":"{count}","team.depSelected":", {n} selected","team.capLabel":"Capability","team.capPh":"Capability tag\u2026","team.viewRole":"View","team.hasRoleShort":"Has role","team.noMatch":"No bots match the filters.","team.gnameLabel":"Group","team.gnamePlaceholder":"e.g. cross-team triage","team.gnamePh":"Group name (e.g. cross-team triage)","team.pullGroupBtn":"Pull ticked bots into a group","team.pullGroupHint":"Tick bots \u2192 pull into a Lark group (owner included automatically)","team.noTeams":"No teams yet. Go to Team management to generate an invite code for others to join you, or join another team.","team.connected":"Connected","team.connectFail":"Connection failed: {error}","team.iHost":"I host","team.teamMeta":"{deps} deployments \xB7 {bots} bots","team.rosterFail":"Could not fetch this team roster.","team.acrossTeams":" (across {n} teams, deduped)","team.botsWord":"bots","team.groupCreated":"Group created","team.delegatedBy":' (created by "{name}")',"team.openInLark":"Open in Lark","team.invalidBots":"Bots not added: {ids}","team.invalidOwners":"{n} owner(s) could not be added","team.missingIdentity":"You have not bound a Lark identity, so you were not added to the group (bind it in My team)","team.skippedNoOwner":"{n} bot(s) skipped because their owner has no bound identity (not added)","team.errNoLocalBot":"Tick at least one of your own (current deployment) online bots \u2014 the group is created by it and adds you (the initiator).","team.errAllSkipped":"None of the selected bot owners have a bound identity, so the group cannot be pulled (a bot cannot join a group without its owner). Have those deployments bind an identity first.","team.errNoCreator":"No available group creator (the relevant deployments have no online bot, or are unreachable)","team.errDelegationTimeout":"Timed out delegating group creation to the other deployment (it may have succeeded \u2014 check Lark, do not retry)","team.errGroupCreate":"Group creation failed: {error}","team.roleModalTitleName":"Default role \xB7 {name}","team.bound":"Bound","team.myHostedTeam":"My hosted team","team.remoteTeamLabel":"{name} team","team.manageTitle":"Team management","team.hostedTitle":"Teams I host","team.newTeamPh":"New team name","team.createTeamBtn":"Create team","team.joinTitle":"Join another team","team.hubPh":"Hub address, e.g. http://10.0.0.5:7891","team.codePh":"Invite code","team.joinBtn":"Join","team.noTeamsShort":"No teams yet.","team.default":"Default","team.manageMetaDeps":"{count} deployments","team.manageMetaRemote":" (incl. {r} remote)","team.manageMetaBots":"{count} bots","team.genInvite":"Generate invite code","team.delBtn":"Delete","team.generating":"Generating\u2026","team.inviteResultLede":"Send the two items below to someone on another deployment (valid once, within 24h):","team.inviteHub":"Hub address: ","team.inviteCode":"Invite code: ","team.genFail":"Generation failed.","team.delConfirm":'Delete team "{name}"? Deployments that joined it will be removed (their own deployments are unaffected).',"team.errName":"Enter a team name","team.creating":"Creating\u2026","team.created":"Created","team.createFail":"Create failed: {error}","team.errHubCode":"Enter the hub address and invite code.","team.joining":"Joining\u2026","team.joined":'Joined "{name}" \u2014 see it in My team.',"team.joinErrSelf":"This is your own deployment; you cannot join yourself (the invite code is for someone on another deployment).","team.joinErrAlready":"Your deployment already joined this team.","team.joinErrUnreachable":"Cannot reach the hub (check the address/network).","team.joinErrTimeout":"The hub timed out.","team.joinErrGeneric":"Join failed: {error}","team.identifying":"Identifying\u2026","team.bound2":"Bound: {name}","team.multiCandidate":"Multiple candidates found \u2014 click yourself:","team.binding":"Binding\u2026","team.bindFail":"Bind failed: {error}","team.noCandidates":"No identity found: make sure the bot has allowedUsers configured and contacts permission.","team.removeMemberConfirm":'Remove "{name}" from this team? Its bots disappear from this team roster (their own deployment is unaffected).',"team.creatingGroup":"Creating group\u2026","team.defaultGroupName":"Collaboration group","team.errPickBot":"Tick at least one bot first","sessions.closeBulkConfirm":"Close {count} selected sessions?","sessions.empty":"No sessions match the filters.","sessions.viewMode":"Session view","sessions.viewKanban":"Kanban","sessions.viewBoard":"Board","sessions.viewTopics":"Topics","sessions.viewTable":"Table","sessions.topic.summary":"Topic aggregation summary","sessions.topic.untitled":"Untitled topic","sessions.topic.wholeChat":"Whole-chat session","sessions.topic.singleSession":"Single session","sessions.topic.collaboration":"Multi-Bot collaboration","sessions.topic.sessions":"{count} sessions","sessions.topic.bots":"{count} Bots","sessions.topic.active":"{count} active","sessions.topic.closed":"{count} closed","sessions.topic.botInputs":"{count} sessions last woken by a Bot (inferred)","sessions.topic.inferredHint":"Inferred from the latest inbound sender; later messages overwrite this clue and it is not a causal graph","sessions.topic.empty":"No matching topic sessions","sessions.selectSession":"Select session","sessions.board.needsYou":"Needs You","sessions.board.needsYouHint":"Repo, TUI, usage limit, or no-progress attention","sessions.board.working":"In Progress","sessions.board.workingHint":"Spawning, streaming, analyzing, or using tools","sessions.board.todo":"Todo","sessions.board.todoHint":"Idle process, but unfinished TODOs remain","sessions.board.todoBadge":"TODO {done}/{total}","sessions.board.todoBadgeTitle":"{remaining} of {total} TODOs still open ({done} done)","sessions.board.todoClickHint":"Click to pin & copy","sessions.board.todoCopy":"Copy list","sessions.board.todoCopied":"Copied \u2713","sessions.board.todoActive":"in progress","sessions.board.idle":"Idle","sessions.board.idleHint":"Ready for the next message","sessions.board.emptyColumn":"No sessions","sessions.board.signalRepo":"Repo needed","sessions.board.signalPrompt":"TUI choice needed","sessions.board.signalLimited":"Usage limited","sessions.board.signalStalled":"No recent progress","sessions.board.signalAgent":"Needs human input","sessions.board.waiting":"Waiting","sessions.board.dragHint":"Drag header to reorder columns","sessions.board.moveLeft":"Move column left","sessions.board.moveRight":"Move column right","sessions.kanban.backlog":"Backlog","sessions.kanban.todo":"Todo","sessions.kanban.inProgress":"In Progress","sessions.kanban.inReview":"Needs You","sessions.kanban.done":"Done","sessions.kanban.updated":"Updated {time}","sessions.kanban.moreHidden":"{count} more hidden","sessions.create.button":"Create session","sessions.create.title":"Create session","sessions.create.content":"Content","sessions.create.contentPlaceholder":"Describe the task; type @ to assign a bot, or paste screenshots directly","sessions.create.contentHelp":"Type @ to find a bot (selecting it also adds it to the new group). Pasting an image inserts a marker at the current caret. In Lead dispatch, @sub instructions still start only the Lead; the Lead decides when to delegate. PNG, JPEG, GIF, and WebP are supported.","sessions.create.mentionBots":"Choose a bot to mention","sessions.create.pastedImages":"Pasted images","sessions.create.imageMarker":"Image {n}","sessions.create.removeImage":"Remove image {name}","sessions.create.imageUnsupported":"Only PNG, JPEG, GIF, or WebP images can be pasted","sessions.create.imageCountLimit":"You can paste up to {n} images at a time","sessions.create.imageSizeLimit":"Each image must be 10 MB or smaller","sessions.create.imageTotalLimit":"Images must total 25 MB or less","sessions.create.imageReadFailed":"Could not read the pasted image; please try again","sessions.create.bots":"Bots (added to the new group)","sessions.create.noBots":"No online bots to pick","sessions.create.noBotMatch":"No bots match the search","sessions.create.mode":"Collaboration mode","sessions.create.modeAll":"Work together","sessions.create.modeLead":"Lead only, then dispatch (recommended)","sessions.create.modeHelp":"Work together: every selected bot starts its own session with the same content. Lead dispatch: only the lead starts; it @-mentions the other bots in the chat to bring them in.","sessions.create.lead":"Lead bot","sessions.create.leadHelp":"The content goes to the lead, which decides when to bring up each sub-bot.","sessions.create.leadPickFirst":"Pick bots above first","sessions.create.column":"Initial column","sessions.create.columnInProgress":"In progress now","sessions.create.columnBacklog":"Backlog","sessions.create.columnHelp":"In progress: start immediately after the group is created. Backlog: create the group and add bots but do not start the CLI; drag to \u201CIn Progress\u201D or hit \u201CStart\u201D later to send the content.","sessions.create.advanced":"More options","sessions.create.optionalConfig":"Optional config","sessions.create.groupName":"Group name","sessions.create.groupNamePlaceholder":"Defaults to the first line of the content","sessions.create.workingDir":"Working directory","sessions.create.workingDirHelp":"Optional. If set, binds the new group to this directory (all bots work there). Leave blank to pick a repo via the /repo card in the chat (worktree creation supported).","sessions.create.submit":"Create","sessions.create.submitting":"Creating\u2026","sessions.create.cancel":"Cancel","sessions.create.start":"Start","sessions.create.errContent":"Please enter the content","sessions.create.errNoBot":"Pick at least one bot","sessions.create.errLead":"Lead must be one of the selected bots","sessions.create.failed":"Create failed","sessions.create.startFailed":"Start failed","sessions.create.doneTitle":"Created","sessions.create.doneInProgress":"Group created and session(s) started","sessions.create.doneBacklog":"Group created; session(s) queued in Backlog","sessions.create.partialFail":"{n} bot(s) could not be started \u2014 you can @-mention them in the chat to retry","sessions.create.openChat":"Open Feishu chat","sessions.create.close":"Close","sessions.create.keepOpen":"Keep creating","sessions.create.keepOpenHelp":"When on: the dialog stays open after a successful create, keeping bot selection and options; content is cleared so you can create the next one","sessions.kanban.openTab":"Open in new tab","sessions.kanban.openFeishu":"Open in Feishu","sessions.kanban.terminalLoading":"Opening terminal\u2026","sessions.kanban.rename":"Rename (double-click title works too)","sessions.kanban.renameFail":"Rename failed","sessions.kanban.moveFail":"Move failed","sessions.kanban.groupBy":"Group by","sessions.kanban.groupFlow":"Workflow","sessions.kanban.groupTeam":"Team","sessions.kanban.groupBot":"Bots","sessions.kanban.teamLoading":"Loading teams\u2026","sessions.kanban.noTeam":"No teams","sessions.kanban.teamScope":"{chats} collab chats \xB7 {sessions} sessions","sessions.kanban.remoteHint":"Session from the {name} deployment (snapshot; terminal/history live on their machine)","sessions.kanban.clusterDragHint":"Drag header to move the whole group","sessions.kanban.clusterExpand":"Expand grouped sessions","sessions.kanban.clusterCollapse":"Collapse grouped sessions","sessions.history.title":"History","sessions.history.loading":"Fetching Feishu messages\u2026","sessions.history.fail":"Failed to load history","sessions.history.empty":"No messages","sessions.history.user":"User","sessions.history.bot":"Bot","sessions.history.system":"System","sessions.history.owner":"Owner","sessions.history.staleHint":"The dashboard or daemon process may still run an old build \u2014 botmux restart and retry","groups.title":"Group Management","groups.matrixTitle":"Group Matrix","groups.search":"Search chat name / ID / owner","groups.missingOnly":"Missing bot only","groups.refresh":"Refresh","groups.create":"New Chat","groups.chat":"Chat","groups.actions":"Actions","groups.addBots":"Add Bots","groups.saveAsProfile":"Save Profile","groups.manage":"Manage","groups.empty":"No chats match the filters.","groups.paginationLabel":"Group list pagination","groups.pageStatus":"Showing {from}-{to}/{total} \xB7 Page {page}/{pages}","groups.prevPage":"Previous","groups.nextPage":"Next","groups.botCoverage":"Bot coverage","groups.memberSummary":"In chat {count}/{total}","groups.botStatusIn":"In chat","groups.botStatusOut":"Missing","groups.botStatusError":"Error","groups.botStatusUnknown":"Unknown","groups.profileStatusFull":"Fully matches {name} ({matched}/{total})","groups.profileStatusFullChat":"Group roles fully match {name} ({matched}/{total})","groups.profileStatusPartial":"Partially matches {name} ({matched}/{total})","groups.profileStatusUnmatched":"No profile match","groups.saveProfileTitle":"Save as Profile","groups.saveProfileIntro":'Save {count} in-chat bot configs from "{name}" as a profile snapshot.',"groups.saveProfileScope":"Save scope","groups.saveProfileScopeHelp":"In-chat bot config snapshot","groups.saveProfileBotCount":"Bots in chat","groups.saveProfileLoadFailed":"Load failed","groups.saveProfileStatus.entry":"Create entry","groups.saveProfileStatus.error":"Load failed","groups.saveProfileMode":"Save mode","groups.saveProfileNew":"New Profile","groups.saveProfileNewHelp":"Create a new snapshot by default; if the id exists, matching bot entries are overwritten.","groups.saveProfileOverwrite":"Overwrite Existing Profile","groups.saveProfileOverwriteHelp":"Pick an existing profile and overwrite entries for the same bots.","groups.saveProfileExistingMeta":"{count} entries","groups.saveProfileIdLabel":"Profile id","groups.saveProfileExistingLabel":"Existing Profile","groups.saveProfileExistingEmpty":"No existing profiles","groups.saveProfileTarget":"Target Profile","groups.saveProfileTargetNew":"Will create or update this profile with the in-chat bot snapshot","groups.saveProfileTargetOverwrite":"Will overwrite entries for these bots in the existing profile","groups.saveProfileEntrySummary":"Will create profile entries for {count} in-chat bots.","groups.saveProfileEntrySummaryWithEmpty":"Will create profile entries for {count} in-chat bots; {emptyCount} currently have no returned role content and will be saved as empty entries.","groups.saveProfileFailedLoadSummary":"{count} bot configs failed to load. Saving is paused to avoid an incomplete snapshot.","groups.saveProfileSubmit":"Save Profile","groups.saveProfileOverwriteSubmit":"Overwrite Save","groups.saveProfileInvalid":"Profile id may contain letters, numbers, dots, underscores, and hyphens only; max 64; cannot be . or ..","groups.saveProfileNoRoles":"This chat has no bot configs to save.","groups.saveProfilePreparing":"Loading config\u2026","groups.saveProfileSaving":"Saving\u2026","groups.saveProfileDone":"Saved {count} entries into {name}","groups.saveProfileFailed":"Saved only {saved}/{total} entries. Check offline bots or permissions.","groups.createTitle":"Create New Group","groups.createHelp":"Pick bots to invite. The dashboard chooses an online daemon as creator.","groups.name":"Group Name","groups.namePlaceholder":"e.g. AI ChangeLog","groups.bindDir":"Bind Directory","groups.bindDirHelp":"New topics start the CLI here and skip repo selection.","groups.roleProfile":"Profile","groups.roleProfileNone":"None","groups.roleProfileHelp":"After creation, send a profile apply bootstrap command in the new group.","groups.roleProfileBootstrapSent":"Profile: {name}; bootstrap message sent: {messageId}","groups.roleProfileBootstrapDone":"Profile: {name}; bootstrap completed with no peer bootstrap message needed.","groups.roleProfileBootstrapFailed":"Profile: {name}; bootstrap failed: {reason}","groups.botPicker":"Bots","botPicker.searchPlaceholder":"Search bots\u2026","botPicker.noMatch":"No bots match the search","botPicker.empty":"No bots available","botPicker.selectedCount":"{n} bot(s) selected","groups.createSubmit":"Create Chat","groups.createSubmitting":"Creating\u2026","groups.cancel":"Cancel","groups.successTitle":"Group Created","groups.openGroup":"Open Group","groups.manageTitle":"Manage {name}","groups.owner":"Owner","groups.oncall":"Oncall Mode","groups.oncallHelp":"When enabled, group members can @ the bot; the selected bot's new topics in this group use its bound directory (binding is per-bot \u2014 only the checked bots are affected).","groups.leaveTitle":"Select Bots to Leave","groups.leaveSelected":"Selected Bots Leave","groups.disband":"Disband Group","groups.dangerHint":"Disband only works when an in-chat bot is the owner. Otherwise prefer leaving the chat.","groups.save":"Save","groups.needWorkingDir":"Working directory is required","groups.noBotsOnline":"No bots online. Restart the daemon first.","schedules.title":"Scheduled Tasks","schedules.search":"Search name / prompt / working dir","schedules.anyKind":"Any kind","schedules.enabledOnly":"Enabled only","schedules.name":"Name","schedules.bot":"Bot","schedules.schedule":"Schedule","schedules.next":"Next","schedules.last":"Last","schedules.repeat":"Repeat","schedules.enabled":"Enabled","schedules.paused":"Paused","schedules.actions":"Actions","schedules.runNow":"Run Now","schedules.running":"Running","schedules.runDone":"Done","schedules.saving":"Saving","schedules.saved":"Saved","schedules.failed":"Failed","schedules.error":"Error","schedules.errorUnknown":"Unknown error","schedules.pause":"Pause","schedules.resume":"Resume","schedules.delivery":"Execution position","schedules.deliveryTopLevel":"Group top level","schedules.deliveryThread":"Inside topic","schedules.deliveryOrigin":"Original thread","schedules.deliveryNewTopic":"New topic each run","schedules.deliveryLocal":"Log only","schedules.silent":"Silent","schedules.useNewTopic":"Switch to new-topic","schedules.useOrigin":"Switch to original","schedules.empty":"No schedules.","schedules.create":"New Task","schedules.edit":"Edit","schedules.delete":"Delete","schedules.deleteConfirm":"Delete this scheduled task?","schedules.form.name":"Name","schedules.form.schedule":"Schedule","schedules.form.scheduleHelp":'e.g. "daily 9:00", "every 30m", or cron "0 9 * * *"',"schedules.form.prompt":"Prompt","schedules.form.promptHelp":"Executed at the scheduled time, as if the user sent this in a topic","schedules.form.deliver":"Execution position","schedules.form.deliveryManagedHelp":"Choose group top level or a specific topic","schedules.form.localHelp":"Log-only delivery is CLI-managed; editing other fields keeps it unchanged","schedules.form.topLevelHelp":"Posts at group top level first; the bot regular-group mode decides whether subsequent output forms a topic","schedules.form.topicHelp":"Always runs under the selected topic, independent of the regular-group top-level mode","schedules.form.newTopicHelp":"Creates a fresh topic and isolated session on every run, independent of the regular-group mode","schedules.form.topicRoot":"Topic root message ID","schedules.form.topicRootHelp":"The Lark topic root message_id, usually starting with om_; tasks created inside a topic capture it automatically","schedules.form.topicTitle":"New topic title (optional)","schedules.form.topicTitlePlaceholder":"Defaults to the task start notice","schedules.form.topicTitleHelp":"Used as the first message of every new topic, matching the Webhook custom trigger notice.","schedules.form.silent":"Silent","schedules.form.silentHelp":"No start banner, no streaming card; only botmux send when the alert condition in prompt is met","schedules.form.bot":"Bot","schedules.form.chat":"Target Chat","schedules.form.save":"Save","schedules.form.cancel":"Cancel","schedules.form.create":"Create","schedules.form.silentNewTopicConflict":"Silent mode defers the topic: no alert closes the hidden session; the first botmux send creates the topic.","settings.title":"Global Settings","settings.loading":"Loading settings\u2026","settings.loadFailed":"Failed to load settings","settings.readOnlyVisitor":"Read-only access \u2014 changing settings requires an authorized link (run botmux dashboard).","settings.moduleGeneral":"General","settings.moduleGeneralHelp":"Manage access, Feishu cards, experimental capabilities, and task behavior.","settings.moduleMeeting":"Meeting Agent","settings.moduleMeetingHelp":"Configure meeting listeners, role presets, and official role templates in one place.","settings.moduleSystem":"System & Maintenance","settings.moduleSystemHelp":"Manage automatic updates, restarts, and runtime versions.","settings.sectionAccess":"Access","settings.publicReadOnly":"Allow tokenless read-only dashboard access","settings.publicReadOnlyHelp":"Allows tokenless access only to explicitly allowlisted read-only data. Workflow details, raw logs, and all write actions always require a token.","settings.remoteAccess":"Remote terminal access","settings.remoteAccessHelp":"Off by default. Uses central-platform links for terminals, Feishu terminal entries, and webhooks. Off uses local links.","settings.sectionCards":"Feishu Cards","settings.openTerminalInFeishu":"Open streaming-card Web terminals in the Feishu sidebar","settings.openTerminalInFeishuHelp":"Off by default. Wraps Web Terminal links so Feishu opens them in the sidebar. Write access is still controlled by the terminal token.","settings.enableLocalCliOpen":"Enable native CLI opening","settings.enableLocalCliOpenHelp":"Off by default and effective only when the daemon runs on macOS. Attach mode enters the same CLI in current tmux / Herdr / ZMX sessions; a ZMX local attach uses the native terminal while Lark remains a plain-text stream. Resume mode starts a separate CLI resume process and may stop Feishu from following the session.","settings.localCliOpenMode":"Native CLI open mode","settings.localCliOpenModeHelp":"Defaults to attaching the current session: managed tmux / Herdr / ZMX use exact attach, and adopted sessions attach only when a reliable existing target is known. A native ZMX attach does not mean botmux provides a Web TUI. Direct resume is for local debugging when you accept the Feishu continuity risk.","settings.localCliOpenModeAttach":"Attach current session (recommended)","settings.localCliOpenModeResume":"Start CLI resume","settings.sectionExperimental":"Experimental","settings.sectionHostOverloadAlert":"Host overload alert","settings.chatBotDiscovery":"In-chat bot discovery (Feishu /members/bots)","settings.chatBotDiscoveryHelp":"On by default. Reads bot members in the current chat to improve multi-bot @ accuracy. Falls back to legacy discovery on failure; disable only if membership detection is wrong.","settings.herdrTraexPlugin":"Auto-install TraeX herdr plugin (opt-in)","settings.herdrTraexPluginHelp":"Off by default; requires herdr >= 0.7.0. Enter a trusted source and optional ref, then click Save and install. A successful install runs the action that writes ~/.trae hooks. Prefer a pinned commit SHA.","settings.herdrTraexPluginSource":"Plugin source","settings.herdrTraexPluginSourcePlaceholder":"owner/repo[/subdir] (no built-in default)","settings.herdrTraexPluginSourceHelp":"Passed as a separate argv to `herdr plugin install <source>`; do not encode the ref as #tag. botmux never executes a third-party repository by default.","settings.herdrTraexPluginSourceRequired":"Enabled but no plugin source is set; nothing will be installed.","settings.herdrTraexPluginRef":"Plugin ref (optional)","settings.herdrTraexPluginRefPlaceholder":"Prefer a reviewed commit SHA","settings.herdrTraexPluginRefHelp":"Passed to herdr as a separate `--ref <ref>` argument. Tags, branches, and commit SHAs work; pinning a SHA avoids source drift.","settings.herdrTraexPluginSave":"Save and install","settings.herdrTraexPluginRecommended":"Author-recommended source (third-party; verify before trusting):","settings.herdrTraexInstalled":"\u2713 TraeX herdr plugin installed and ~/.trae hooks written","settings.herdrTraexAlreadyInstalled":"\u2713 TraeX herdr plugin already installed (skipped)","settings.herdrTraexInstallFailed":"TraeX herdr plugin install failed","settings.herdrTraexInstallStepInstall":"install","settings.herdrTraexInstallStepAction":"write hooks","settings.herdrTraexUnsupported":"This herdr does not support plugins; requires >= 0.7.0. Run herdr update first","settings.codexRpcInput":"Codex-family RPC input mode","settings.codexRpcInputHelp":"Experimental, off by default. For codex / traex bots (tmux backend only), user messages are injected via the app-server JSON-RPC channel, bypassing codex terminal paste-drops (the pane still runs the real --remote TUI). Sandbox/isolation/approval-gated/wrapper/startup-command sessions fall back to paste.","settings.bypassCodexHookTrust":"Auto-trust Codex hooks","settings.bypassCodexHookTrustHelp":`On by default. Codex 0.14x shows an interactive hook-trust gate ("Press t to trust"); every botmux upgrade rewrites its bundled hook so the hash changes and the gate re-fires, and a botmux-managed session has no one to press t \u2192 the first message wedges. When on, codex / traex plain-TUI launches pass --dangerously-bypass-hook-trust. Note: that flag trusts ALL hook sources codex sees (including a project .codex/hooks.json and enabled plugins), not only botmux's \u2014 turn it off if you do not want third-party project/plugin hooks auto-trusted. Restricted bots (bypass disabled) are never affected. Takes effect on the next session; running panes are unchanged.`,"settings.codexNotifier":"Codex task completion notifications","settings.codexNotifierHelp":"Experimental and off by default. When a standalone Codex App/CLI task finishes, the selected Bot sends a Feishu DM to its first deliverable administrator, with options to continue from the card or ask this Mac to open the original Codex App session.","settings.codexNotifierEnablePending":"Notifications will turn on automatically after you complete the settings below.","settings.codexNotifierTarget":"Notification Bot","settings.codexNotifierTargetHelp":"Select a Codex or Codex App Bot to send the private completion card and adopt the follow-up session.","settings.codexNotifierTargetPlaceholder":"Select a notification Bot","settings.codexNotifierRecipient":"Recipient: {recipient} (this Bot\u2019s first deliverable administrator)","settings.codexNotifierRecipientMissing":"The selected Bot has no administrator configured, so it cannot send a private completion message.","settings.codexNotifierRecipientUnverified":"The target Bot has not resolved its first deliverable administrator to a Feishu open_id. Check the administrator config or wait for the Bot to finish starting.","settings.codexNotifierNotifyWhen":"Notify when","settings.codexNotifierNotifyWhenHelp":"Locked only sends a Feishu message when this Mac is locked. Always sends one after every completed task.","settings.codexNotifierLockedOnly":"Locked only (recommended)","settings.codexNotifierAlways":"Always","settings.codexNotifierTargetRequired":"Select a notification Bot before enabling this feature.","settings.codexNotifierTargetOffline":"The target Bot is offline. Bring it back online before enabling notifications.","settings.codexNotifierUnsupported":"Reliable screen-lock detection is unavailable on this system. Choose Always to enable notifications.","settings.codexNotifierHookPending":"The Hook is not ready. Save again or restart BotMux.","settings.codexNotifierDaemonOffline":"The target Bot is offline. Events stay local and retry when it returns.","settings.codexNotifierPending":"{count} completion message(s) are waiting for delivery.","settings.codexNotifierWorkerPending":"The Hook is installed, but the notification worker is not running or its heartbeat is stale.","settings.codexNotifierLastError":"Most recent delivery failure: {error}","settings.hostOverloadAlert":"Enable overload alert","settings.hostOverloadAlertHelp":"When enabled, the selected notification Bot\u2019s daemon checks host load/memory every 30s and sends a Feishu DM to that Bot\u2019s administrator when it crosses the overload line, plus one more when it recovers. Host overload makes session cold-starts time out and hang; this heads-up lets you clear sessions or lower the resident cap in time. One notification Bot per host is enough; off by default.","settings.hostOverloadAlertTarget":"Notification Bot","settings.hostOverloadAlertTargetHelp":"Pick the Bot that sends the overload DM (any non-apiOnly Bot that can send Feishu messages and resolve an administrator). That Bot\u2019s own daemon does the sampling and sending.","settings.hostOverloadAlertTargetPlaceholder":"Select a notification Bot","settings.hostOverloadAlertRecipient":"Recipient: {recipient} (this Bot\u2019s first administrator)","settings.hostOverloadAlertRecipientMissing":"The selected Bot has no administrator configured, so it cannot send an overload DM.","settings.hostOverloadAlertRecipientUnverified":"The target Bot has not resolved its first administrator to a Feishu open_id. Check the administrator config or wait for the Bot to finish starting.","settings.hostOverloadAlertTargetRequired":"Select a notification Bot before enabling.","settings.hostOverloadAlertTargetOffline":"The target Bot\u2019s daemon is offline, so overload alerts cannot be delivered.","settings.hostOverloadAlertEnterLoad":"Load enter threshold (load15 / cores)","settings.hostOverloadAlertEnterLoadHelp":'Marks overload when the 15-minute load average > logical cores \xD7 this value. Default 1.5. The recovery line is fixed at the built-in default (cores \xD7 1.0); if you set the enter line even lower than that, the recovery line is automatically pulled down to 95% of enter so "recovery requires dropping below enter" still holds (no flapping).',"settings.hostOverloadAlertEnterMem":"Memory enter threshold (%)","settings.hostOverloadAlertEnterMemHelp":"Marks overload when used-memory fraction \u2265 this percentage. Default 92. The recovery line is fixed at the built-in default (85%); likewise, if you set the enter line lower, it is automatically pulled down to 95% of enter.","settings.noVisibleOutputHint":'"No visible output" anti-resend hint',"settings.noVisibleOutputHintHelp":'Experimental, off by default. Adds a note to the botmux routing hints telling the model that a successful `botmux send` is already delivered, that ending a turn with no visible terminal text is normal, and that a "no visible output, please continue" prompt is a false alarm from the underlying CLI (Claude Code \u22652.1.212) \u2014 do not resend. Mainly helps when Claude Code drives a non-Claude backend model (which tends to misread the thinking-only nudge as a send failure and reply repeatedly); harmless but usually unnecessary for an all-Claude setup. Takes effect on the next session, no restart needed.',"settings.sectionVcMeetingAgent":"Meeting Listener","settings.vcMeetingAgent":"Allow meeting listener features on this machine","settings.vcMeetingAgentHelp":"On by default. Controls whether bots on this host accept new meeting listener events. Off also skips listener restore; running meetings usually finish naturally.","settings.vcMeetingListenerBot":"Meeting event receiver Bot","settings.vcMeetingListenerBotAuto":"Follow each bot config","settings.vcMeetingListenerBotHelp":"Chooses the Bot that receives meeting events. Saving validates its lark-cli profile and meeting scopes, then enables the listener.","settings.vcMeetingListenerBotDisabled":"auto-enable on save","settings.vcMeetingListenerBotNoProfile":"profile required first","settings.larkCliReady":"lark-cli {version} \xB7 version requirement met","settings.larkCliOutdated":"lark-cli {version} is too old; VC bot joining requires \u2265 {minimum}","settings.larkCliMissing":"lark-cli was not detected; install it before using VC bot joining","settings.feishuLoginRequired":"Log in to the Feishu Open Platform to configure VC permissions automatically, then scan this QR code.","settings.feishuLoginQrAlt":"Feishu Open Platform login QR code","settings.feishuLoginClose":"Close login QR code","settings.vcProfiles.title":"Meeting role presets","settings.vcProfiles.help":"Reusable roles for meeting agents: responsibility prompt, event filter, output mode, and permission template. Activated members keep the version frozen at activation; remove and re-add to pick up a new version.","settings.vcProfiles.listenerOwner":"Listener to configure","settings.vcProfiles.configuringBot":"Configuring: {bot}","settings.vcProfiles.migrationOffer":"A meeting-minutes preset generated by an earlier version was found. Upgrade it to the full-capability default: listener-thread replies can be sent directly; in-meeting text and voice must pass through the managed output gate, text requires approval by default, and voice also requires enabled Listener voice facilities.","settings.vcProfiles.migrationEnable":"Upgrade and enable full-capability minutes (save to apply)","settings.vcProfiles.noEligibleDefaultAgent":"A default role cannot be generated yet. Configure a default working directory for at least one role execution Bot whose CLI supports reliable turn receipts.","settings.vcProfiles.legacyCatalog":"A legacy or partial meeting-Agent policy was found. Saving role presets switches it to multi-role mode.","settings.vcProfiles.templates.title":"Role template library","settings.vcProfiles.templates.builtinBadge":"Built in","settings.vcProfiles.templates.help":"Start with a template, then customize its Agent, responsibilities, filters, and output. Applying a template creates an editable copy with no ongoing link to the source.","settings.vcProfiles.templates.use":"Use template","settings.vcProfiles.list.title":"My presets","settings.vcProfiles.list.help":"Meeting roles you maintain. Open a card to view or edit it; mark it as default to enable it when the Feishu selection card is not used.","settings.vcProfiles.list.empty":"No role presets yet. Create a blank preset or start from an official template below.","settings.vcProfiles.setDefault":"Use by default","settings.vcProfiles.viewDetails":"View details","settings.vcProfiles.newBadge":"Unsaved","settings.vcProfiles.untitled":"Untitled preset","settings.vcProfiles.noInstructions":"No responsibility prompt yet","settings.vcProfiles.close":"Close","settings.vcProfiles.done":"Done editing","settings.vcProfiles.needAuth":"Meeting role presets require authorized access to edit.","settings.vcProfiles.discardConfirm":"You have unsaved changes; switching will discard them. Continue?","settings.vcProfiles.loading":"Loading\u2026","settings.vcProfiles.loadFailed":"Load failed","settings.vcProfiles.botNotInConfig":"This bot is not present in bots.json","settings.vcProfiles.conflict":"The config changed elsewhere; reload before editing so you do not overwrite it.","settings.vcProfiles.reload":"Reload","settings.vcProfiles.validationFailed":"Validation failed, check the fields","settings.vcProfiles.freezeNotice":"Editing a preset does not affect running meetings: a role freezes its version when joining a meeting; remove and re-add it to pick up the new version (starting from now, without replaying history).","settings.vcProfiles.fieldId":"ID (fixed after save)","settings.vcProfiles.idHelp":`Stable machine identifier; runtime references and recovery records depend on it, so it cannot change after save.
34
+ }`,"connectors.topicMessageExtractorsHelp":"Configure a restricted JSON path and text/mention kind for each field. Mentions may also set identityPath and namePath.","connectors.topicMessagePreview":"Preview: External event: {source}","connectors.topicMessageNonePreview":"No trigger notice will be sent. Later bot output is unaffected.","connectors.topicMessageSourceFallback":"Webhook name","connectors.topicMessageListDefault":"Trigger notice: default text","connectors.topicMessageListCustom":"Trigger notice: {text}","connectors.topicMessageListNone":"Trigger notice: disabled","connectors.fVerify":"Verification","connectors.verifyToken":"Token (simple: secret in the URL, one curl triggers it)","connectors.verifyHmac":"HMAC signature (advanced: more secure, sign the request yourself)","connectors.fSecret":"Secret / token","connectors.fSecretPh":"Leave empty to auto-generate (shown once)","connectors.fSecretEditPh":"Leave empty to keep the current secret; enter one to replace it","connectors.cancel":"Cancel","connectors.close":"Close","connectors.btnCreate":"Create","connectors.loading":"Loading\u2026","connectors.noBotGroups":"(This bot has no visible groups; enter an ID manually on the right)","connectors.modeLabelFixed":"Fixed group","connectors.modeLabelNewGroup":"New group each time","connectors.modeLabelDynamic":"Per-request group","connectors.kindLabelWorkflow":"Workflow \xB7 Legacy v2 (retiring)","connectors.kindLabelTurn":"Single turn","connectors.empty":"No webhooks yet, create one from the upper-right button","connectors.enabled":"Enabled","connectors.disabled":"Disabled","connectors.badgeToken":"Token","connectors.badgeSign":"Signed","connectors.dest":'to "{name}"',"connectors.btnDisable":"Disable","connectors.btnEnable":"Enable","connectors.btnEdit":"Edit","connectors.btnSave":"Save","connectors.btnCancel":"Cancel","connectors.btnDel":"Delete","connectors.webhookUrl":"Webhook URL: ","connectors.copy":"Copy","connectors.copied":"Copied","connectors.tokenHint":"Token mode: append <code>/&lt;token&gt;</code> to the URL when calling (the token is shown only on create/rotate).","connectors.legacyWorkflowNote":"Legacy v2 (retiring): existing settings may be maintained, but the target cannot be created or changed.","connectors.dynamicReqHint":'Dynamic mode: the request must carry the target chat \u2014 <code>?chatId=&lt;chatId&gt;</code> or header <code>x-botmux-chat-id</code> or body <code>{"chatId":"\u2026"}</code>.',"connectors.instructionPrefix":"Instruction: ","connectors.delConfirm":"Delete this webhook? Its URL stops working immediately.","connectors.errName":"Enter a name","connectors.errBot":"Pick a bot","connectors.errWf":"Enter a workflow ID","connectors.errLegacyWorkflowRetired":"Legacy v2 workflow connectors are retiring and cannot be created. Use the v3 Saved Workflow entry point.","connectors.errChat":"Pick (or enter) a target group","connectors.errDedup":"Enter the business key used to reuse a group","connectors.errTopicMessage":"Enter custom trigger notice text","connectors.errTopicExtractors":"Field extractors must be valid JSON","connectors.creating":"Creating\u2026","connectors.saving":"Saving\u2026","connectors.updated":"All settings saved","connectors.enabling":"Enabling\u2026","connectors.disabling":"Disabling\u2026","connectors.deleting":"Deleting\u2026","connectors.usageDynamicLede":"Dynamic mode: the URL already has the token; pass the target chat ID when calling{gn}:","connectors.usageDynamicNote":'The chat can also go in header <code>x-botmux-chat-id</code> or body <code>{"chatId":"\u2026"}</code>. \u26A0\uFE0F The URL is the credential \u2014 keep it secret.',"connectors.usageTokenLede":"This URL already has the token and a fixed target group; just POST to trigger:","connectors.usageTokenNote":"\u26A0\uFE0F The URL is the credential \u2014 keep it private; delete or rotate it in the list below.","connectors.usageHmac":"The external system must HMAC-SHA256-sign <code>timestamp.body</code> and call with <code>x-botmux-timestamp</code> / <code>x-botmux-nonce</code> / <code>x-botmux-signature</code> headers","connectors.usageHmacDynamic":", and also pass the target chat ID as above","connectors.createdPrefix":'Created "{name}"',"connectors.rotatedPrefix":'Updated "{name}" \u2014 new secret/token',"connectors.createdDest":'to "{name}"',"connectors.tokenLabel":"Access token","connectors.signLabel":"Signing secret","connectors.secretOnce":" (shown once \u2014 save it): ","connectors.createFailed":"Create failed: {error}","connectors.saveFailed":"Save failed: {error}","connectors.toggleFailed":"Status update failed: {error}","connectors.deleteFailed":"Delete failed: {error}","connectors.noOnlineBots":"(No online bots)","connectors.storePayload":"Retain request parameters","connectors.storePayloadHint":"Stores redacted JSON bodies and headers for 14 days by default. You can turn this off from the list.","connectors.suppressFinalOutput":"Suppress final result notice","connectors.suppressFinalOutputHint":'After a trigger fires, the bot will not post the trailing "done/summary" message. The live status card and anything the bot actively sends via botmux send still appear. Use this when the bot already posts its result into the topic and you do not want an extra summary.',"connectors.payloadLogged":"Parameters kept {days} days","connectors.metadataOnly":"Invocation metadata only","connectors.btnDisablePayloadLog":"Stop retaining parameters","connectors.btnEnablePayloadLog":"Retain request parameters","connectors.tabWebhooks":"Webhooks","connectors.tabLogs":"Invocation logs","webhookLogs.subtitle":"Review every invocation result, latency, request parameter, and resolved delivery target in one place.","webhookLogs.autoRefresh":"Auto-refreshes every 15s","webhookLogs.manage":"Manage webhooks","webhookLogs.summary":"Invocation summary","webhookLogs.total":"Total calls","webhookLogs.filteredRange":"Current filter range","webhookLogs.successRate":"Success rate","webhookLogs.calls":"successful calls","webhookLogs.failures":"Failed calls","webhookLogs.needsReview":"Needs review","webhookLogs.noFailures":"No failures in range","webhookLogs.p95":"P95 latency","webhookLogs.average":"Average","webhookLogs.allConnectors":"All webhooks","webhookLogs.allStatuses":"All results","webhookLogs.success":"Success","webhookLogs.failed":"Failed","webhookLogs.last24h":"Last 24 hours","webhookLogs.last7d":"Last 7 days","webhookLogs.last30d":"Last 30 days","webhookLogs.allTime":"All time","webhookLogs.search":"Search invocation logs","webhookLogs.searchPlaceholder":"Search Trigger ID, chat ID, errors, or parameters\u2026","webhookLogs.connector":"Webhook","webhookLogs.status":"Result","webhookLogs.timeRange":"Time range","webhookLogs.refresh":"Refresh","webhookLogs.loadFailed":"Failed to load invocation logs","webhookLogs.records":"Invocation records","webhookLogs.matching":"{count} matches","webhookLogs.loading":"Loading invocation logs\u2026","webhookLogs.empty":"No invocation records yet","webhookLogs.emptyHint":"Records appear here automatically after any webhook call.","webhookLogs.unknownConnector":"Unknown webhook","webhookLogs.loadMore":"Load more","webhookLogs.selectRecord":"Select a record to inspect its request","webhookLogs.copyJson":"Copy full JSON","webhookLogs.copied":"Copied","webhookLogs.failureReason":"Failure reason","webhookLogs.overview":"Invocation overview","webhookLogs.httpStatus":"HTTP status","webhookLogs.duration":"Duration","webhookLogs.action":"Action","webhookLogs.bodySize":"Body size","webhookLogs.remoteAddress":"Remote address","webhookLogs.target":"Delivery target","webhookLogs.queryParams":"Query parameters","webhookLogs.headers":"Request headers","webhookLogs.redacted":"Sensitive values redacted","webhookLogs.headersNotStored":"Request header retention is disabled for this webhook.","webhookLogs.payload":"Request body","webhookLogs.payloadDisabled":"Request body retention is disabled for this webhook; invocation metadata is still recorded.","webhookLogs.payloadTooLarge":"The request body exceeded 128 KB and was omitted to keep logs bounded.","webhookLogs.payloadUnavailable":"This invocation has no storable JSON request body.","webhookLogs.routeTarget":"Routing parameters","webhookLogs.none":"None","team.navHome":"My team","team.navManage":"Team management","team.eyebrow":"Team Collaboration","team.homeTitle":"Team Collaboration","team.localDeployTitle":"Current deployment","team.myIdentity":"My Lark identity: ","team.unbound":"Not bound","team.bindBtn":"Bind","team.bindHint":" (auto-identifies you via the bot credentials; once bound, pulling a group adds you and attributes the bots to you)","team.myTeams":"My teams","team.searchPh":"Search name / capability / CLI\u2026","team.allCli":"All CLIs","team.hasCap":"Has capability tag","team.hasRole":"Has default role","team.teamsHint":"Tick bots in any team to pull them into a group (each with its owner). To create a team / generate an invite code / join another team, go to Team management.","team.loading":"Loading\u2026","team.roleModalTitle":"Default role","team.roleModalHint":"The bot default persona (applies across groups), read-only here. To edit, go to the Bot Defaults page.","team.close":"Close","team.tagLocal":"Current deployment","team.tagRemoteStale":"Remote \xB7 offline?","team.tagRemote":"Remote","team.removeMember":"Remove","team.depTag":"({tag})","team.depCount":"{count}","team.depSelected":", {n} selected","team.capLabel":"Capability","team.capPh":"Capability tag\u2026","team.viewRole":"View","team.hasRoleShort":"Has role","team.noMatch":"No bots match the filters.","team.gnameLabel":"Group","team.gnamePlaceholder":"e.g. cross-team triage","team.gnamePh":"Group name (e.g. cross-team triage)","team.pullGroupBtn":"Pull ticked bots into a group","team.pullGroupHint":"Tick bots \u2192 pull into a Lark group (owner included automatically)","team.noTeams":"No teams yet. Go to Team management to generate an invite code for others to join you, or join another team.","team.connected":"Connected","team.connectFail":"Connection failed: {error}","team.iHost":"I host","team.teamMeta":"{deps} deployments \xB7 {bots} bots","team.rosterFail":"Could not fetch this team roster.","team.acrossTeams":" (across {n} teams, deduped)","team.botsWord":"bots","team.groupCreated":"Group created","team.delegatedBy":' (created by "{name}")',"team.openInLark":"Open in Lark","team.invalidBots":"Bots not added: {ids}","team.invalidOwners":"{n} owner(s) could not be added","team.missingIdentity":"You have not bound a Lark identity, so you were not added to the group (bind it in My team)","team.skippedNoOwner":"{n} bot(s) skipped because their owner has no bound identity (not added)","team.errNoLocalBot":"Tick at least one of your own (current deployment) online bots \u2014 the group is created by it and adds you (the initiator).","team.errAllSkipped":"None of the selected bot owners have a bound identity, so the group cannot be pulled (a bot cannot join a group without its owner). Have those deployments bind an identity first.","team.errNoCreator":"No available group creator (the relevant deployments have no online bot, or are unreachable)","team.errDelegationTimeout":"Timed out delegating group creation to the other deployment (it may have succeeded \u2014 check Lark, do not retry)","team.errGroupCreate":"Group creation failed: {error}","team.roleModalTitleName":"Default role \xB7 {name}","team.bound":"Bound","team.myHostedTeam":"My hosted team","team.remoteTeamLabel":"{name} team","team.manageTitle":"Team management","team.hostedTitle":"Teams I host","team.newTeamPh":"New team name","team.createTeamBtn":"Create team","team.joinTitle":"Join another team","team.hubPh":"Hub address, e.g. http://10.0.0.5:7891","team.codePh":"Invite code","team.joinBtn":"Join","team.noTeamsShort":"No teams yet.","team.default":"Default","team.manageMetaDeps":"{count} deployments","team.manageMetaRemote":" (incl. {r} remote)","team.manageMetaBots":"{count} bots","team.genInvite":"Generate invite code","team.delBtn":"Delete","team.generating":"Generating\u2026","team.inviteResultLede":"Send the two items below to someone on another deployment (valid once, within 24h):","team.inviteHub":"Hub address: ","team.inviteCode":"Invite code: ","team.genFail":"Generation failed.","team.delConfirm":'Delete team "{name}"? Deployments that joined it will be removed (their own deployments are unaffected).',"team.errName":"Enter a team name","team.creating":"Creating\u2026","team.created":"Created","team.createFail":"Create failed: {error}","team.errHubCode":"Enter the hub address and invite code.","team.joining":"Joining\u2026","team.joined":'Joined "{name}" \u2014 see it in My team.',"team.joinErrSelf":"This is your own deployment; you cannot join yourself (the invite code is for someone on another deployment).","team.joinErrAlready":"Your deployment already joined this team.","team.joinErrUnreachable":"Cannot reach the hub (check the address/network).","team.joinErrTimeout":"The hub timed out.","team.joinErrGeneric":"Join failed: {error}","team.identifying":"Identifying\u2026","team.bound2":"Bound: {name}","team.multiCandidate":"Multiple candidates found \u2014 click yourself:","team.binding":"Binding\u2026","team.bindFail":"Bind failed: {error}","team.noCandidates":"No identity found: make sure the bot has allowedUsers configured and contacts permission.","team.removeMemberConfirm":'Remove "{name}" from this team? Its bots disappear from this team roster (their own deployment is unaffected).',"team.creatingGroup":"Creating group\u2026","team.defaultGroupName":"Collaboration group","team.errPickBot":"Tick at least one bot first","sessions.closeBulkConfirm":"Close {count} selected sessions?","sessions.empty":"No sessions match the filters.","sessions.viewMode":"Session view","sessions.viewKanban":"Kanban","sessions.viewBoard":"Board","sessions.viewTopics":"Topics","sessions.viewTable":"Table","sessions.topic.summary":"Topic aggregation summary","sessions.topic.untitled":"Untitled topic","sessions.topic.wholeChat":"Whole-chat session","sessions.topic.singleSession":"Single session","sessions.topic.collaboration":"Multi-Bot collaboration","sessions.topic.sessions":"{count} sessions","sessions.topic.bots":"{count} Bots","sessions.topic.active":"{count} active","sessions.topic.closed":"{count} closed","sessions.topic.botInputs":"{count} sessions last woken by a Bot (inferred)","sessions.topic.inferredHint":"Inferred from the latest inbound sender; later messages overwrite this clue and it is not a causal graph","sessions.topic.empty":"No matching topic sessions","sessions.selectSession":"Select session","sessions.board.needsYou":"Needs You","sessions.board.needsYouHint":"Repo, TUI, usage limit, or no-progress attention","sessions.board.working":"In Progress","sessions.board.workingHint":"Spawning, streaming, analyzing, or using tools","sessions.board.todo":"Todo","sessions.board.todoHint":"Idle process, but unfinished TODOs remain","sessions.board.todoBadge":"TODO {done}/{total}","sessions.board.todoBadgeTitle":"{remaining} of {total} TODOs still open ({done} done)","sessions.board.todoClickHint":"Click to pin & copy","sessions.board.todoCopy":"Copy list","sessions.board.todoCopied":"Copied \u2713","sessions.board.todoActive":"in progress","sessions.board.idle":"Idle","sessions.board.idleHint":"Ready for the next message","sessions.board.emptyColumn":"No sessions","sessions.board.signalRepo":"Repo needed","sessions.board.signalPrompt":"TUI choice needed","sessions.board.signalLimited":"Usage limited","sessions.board.signalStalled":"No recent progress","sessions.board.signalAgent":"Needs human input","sessions.board.waiting":"Waiting","sessions.board.dragHint":"Drag header to reorder columns","sessions.board.moveLeft":"Move column left","sessions.board.moveRight":"Move column right","sessions.kanban.backlog":"Backlog","sessions.kanban.todo":"Todo","sessions.kanban.inProgress":"In Progress","sessions.kanban.inReview":"Needs You","sessions.kanban.done":"Done","sessions.kanban.updated":"Updated {time}","sessions.kanban.moreHidden":"{count} more hidden","sessions.create.button":"Create session","sessions.create.title":"Create session","sessions.create.content":"Content","sessions.create.contentPlaceholder":"Describe the task; type @ to assign a bot, or paste screenshots directly","sessions.create.contentHelp":"Type @ to find a bot (selecting it also adds it to the new group). Pasting an image inserts a marker at the current caret. In Lead dispatch, @sub instructions still start only the Lead; the Lead decides when to delegate. PNG, JPEG, GIF, and WebP are supported.","sessions.create.mentionBots":"Choose a bot to mention","sessions.create.pastedImages":"Pasted images","sessions.create.imageMarker":"Image {n}","sessions.create.removeImage":"Remove image {name}","sessions.create.imageUnsupported":"Only PNG, JPEG, GIF, or WebP images can be pasted","sessions.create.imageCountLimit":"You can paste up to {n} images at a time","sessions.create.imageSizeLimit":"Each image must be 10 MB or smaller","sessions.create.imageTotalLimit":"Images must total 25 MB or less","sessions.create.imageReadFailed":"Could not read the pasted image; please try again","sessions.create.bots":"Bots (added to the new group)","sessions.create.noBots":"No online bots to pick","sessions.create.noBotMatch":"No bots match the search","sessions.create.mode":"Collaboration mode","sessions.create.modeAll":"Work together","sessions.create.modeLead":"Lead only, then dispatch (recommended)","sessions.create.modeHelp":"Work together: every selected bot starts its own session with the same content. Lead dispatch: only the lead starts; it @-mentions the other bots in the chat to bring them in.","sessions.create.lead":"Lead bot","sessions.create.leadHelp":"The content goes to the lead, which decides when to bring up each sub-bot.","sessions.create.leadPickFirst":"Pick bots above first","sessions.create.column":"Initial column","sessions.create.columnInProgress":"In progress now","sessions.create.columnBacklog":"Backlog","sessions.create.columnHelp":"In progress: start immediately after the group is created. Backlog: create the group and add bots but do not start the CLI; drag to \u201CIn Progress\u201D or hit \u201CStart\u201D later to send the content.","sessions.create.advanced":"More options","sessions.create.optionalConfig":"Optional config","sessions.create.groupName":"Group name","sessions.create.groupNamePlaceholder":"Defaults to the first line of the content","sessions.create.workingDir":"Working directory","sessions.create.workingDirHelp":"Optional. If set, binds the new group to this directory (all bots work there). Leave blank to pick a repo via the /repo card in the chat (worktree creation supported).","sessions.create.submit":"Create","sessions.create.submitting":"Creating\u2026","sessions.create.cancel":"Cancel","sessions.create.start":"Start","sessions.create.errContent":"Please enter the content","sessions.create.errNoBot":"Pick at least one bot","sessions.create.errLead":"Lead must be one of the selected bots","sessions.create.failed":"Create failed","sessions.create.startFailed":"Start failed","sessions.create.doneTitle":"Created","sessions.create.doneInProgress":"Group created and session(s) started","sessions.create.doneBacklog":"Group created; session(s) queued in Backlog","sessions.create.partialFail":"{n} bot(s) could not be started \u2014 you can @-mention them in the chat to retry","sessions.create.openChat":"Open Feishu chat","sessions.create.close":"Close","sessions.create.keepOpen":"Keep creating","sessions.create.keepOpenHelp":"When on: the dialog stays open after a successful create, keeping bot selection and options; content is cleared so you can create the next one","sessions.kanban.openTab":"Open in new tab","sessions.kanban.openFeishu":"Open in Feishu","sessions.kanban.terminalLoading":"Opening terminal\u2026","sessions.kanban.rename":"Rename (double-click title works too)","sessions.kanban.renameFail":"Rename failed","sessions.kanban.moveFail":"Move failed","sessions.kanban.groupBy":"Group by","sessions.kanban.groupFlow":"Workflow","sessions.kanban.groupTeam":"Team","sessions.kanban.groupBot":"Bots","sessions.kanban.teamLoading":"Loading teams\u2026","sessions.kanban.noTeam":"No teams","sessions.kanban.teamScope":"{chats} collab chats \xB7 {sessions} sessions","sessions.kanban.remoteHint":"Session from the {name} deployment (snapshot; terminal/history live on their machine)","sessions.kanban.clusterDragHint":"Drag header to move the whole group","sessions.kanban.clusterExpand":"Expand grouped sessions","sessions.kanban.clusterCollapse":"Collapse grouped sessions","sessions.history.title":"History","sessions.history.loading":"Fetching Feishu messages\u2026","sessions.history.fail":"Failed to load history","sessions.history.empty":"No messages","sessions.history.user":"User","sessions.history.bot":"Bot","sessions.history.system":"System","sessions.history.owner":"Owner","sessions.history.staleHint":"The dashboard or daemon process may still run an old build \u2014 botmux restart and retry","groups.title":"Group Management","groups.matrixTitle":"Group Matrix","groups.search":"Search chat name / ID / owner","groups.missingOnly":"Missing bot only","groups.sessionSection":"Session groups","groups.sessionSectionHint":"auto-created and managed by bots, collapsed by default","groups.refresh":"Refresh","groups.create":"New Chat","groups.chat":"Chat","groups.actions":"Actions","groups.addBots":"Add Bots","groups.saveAsProfile":"Save Profile","groups.manage":"Manage","groups.empty":"No chats match the filters.","groups.paginationLabel":"Group list pagination","groups.pageStatus":"Showing {from}-{to}/{total} \xB7 Page {page}/{pages}","groups.prevPage":"Previous","groups.nextPage":"Next","groups.botCoverage":"Bot coverage","groups.memberSummary":"In chat {count}/{total}","groups.botStatusIn":"In chat","groups.botStatusOut":"Missing","groups.botStatusError":"Error","groups.botStatusUnknown":"Unknown","groups.profileStatusFull":"Fully matches {name} ({matched}/{total})","groups.profileStatusFullChat":"Group roles fully match {name} ({matched}/{total})","groups.profileStatusPartial":"Partially matches {name} ({matched}/{total})","groups.profileStatusUnmatched":"No profile match","groups.saveProfileTitle":"Save as Profile","groups.saveProfileIntro":'Save {count} in-chat bot configs from "{name}" as a profile snapshot.',"groups.saveProfileScope":"Save scope","groups.saveProfileScopeHelp":"In-chat bot config snapshot","groups.saveProfileBotCount":"Bots in chat","groups.saveProfileLoadFailed":"Load failed","groups.saveProfileStatus.entry":"Create entry","groups.saveProfileStatus.error":"Load failed","groups.saveProfileMode":"Save mode","groups.saveProfileNew":"New Profile","groups.saveProfileNewHelp":"Create a new snapshot by default; if the id exists, matching bot entries are overwritten.","groups.saveProfileOverwrite":"Overwrite Existing Profile","groups.saveProfileOverwriteHelp":"Pick an existing profile and overwrite entries for the same bots.","groups.saveProfileExistingMeta":"{count} entries","groups.saveProfileIdLabel":"Profile id","groups.saveProfileExistingLabel":"Existing Profile","groups.saveProfileExistingEmpty":"No existing profiles","groups.saveProfileTarget":"Target Profile","groups.saveProfileTargetNew":"Will create or update this profile with the in-chat bot snapshot","groups.saveProfileTargetOverwrite":"Will overwrite entries for these bots in the existing profile","groups.saveProfileEntrySummary":"Will create profile entries for {count} in-chat bots.","groups.saveProfileEntrySummaryWithEmpty":"Will create profile entries for {count} in-chat bots; {emptyCount} currently have no returned role content and will be saved as empty entries.","groups.saveProfileFailedLoadSummary":"{count} bot configs failed to load. Saving is paused to avoid an incomplete snapshot.","groups.saveProfileSubmit":"Save Profile","groups.saveProfileOverwriteSubmit":"Overwrite Save","groups.saveProfileInvalid":"Profile id may contain letters, numbers, dots, underscores, and hyphens only; max 64; cannot be . or ..","groups.saveProfileNoRoles":"This chat has no bot configs to save.","groups.saveProfilePreparing":"Loading config\u2026","groups.saveProfileSaving":"Saving\u2026","groups.saveProfileDone":"Saved {count} entries into {name}","groups.saveProfileFailed":"Saved only {saved}/{total} entries. Check offline bots or permissions.","groups.createTitle":"Create New Group","groups.createHelp":"Pick bots to invite. The dashboard chooses an online daemon as creator.","groups.name":"Group Name","groups.namePlaceholder":"e.g. AI ChangeLog","groups.bindDir":"Bind Directory","groups.bindDirHelp":"New topics start the CLI here and skip repo selection.","groups.roleProfile":"Profile","groups.roleProfileNone":"None","groups.roleProfileHelp":"After creation, send a profile apply bootstrap command in the new group.","groups.roleProfileBootstrapSent":"Profile: {name}; bootstrap message sent: {messageId}","groups.roleProfileBootstrapDone":"Profile: {name}; bootstrap completed with no peer bootstrap message needed.","groups.roleProfileBootstrapFailed":"Profile: {name}; bootstrap failed: {reason}","groups.botPicker":"Bots","botPicker.searchPlaceholder":"Search bots\u2026","botPicker.noMatch":"No bots match the search","botPicker.empty":"No bots available","botPicker.selectedCount":"{n} bot(s) selected","groups.createSubmit":"Create Chat","groups.createSubmitting":"Creating\u2026","groups.cancel":"Cancel","groups.successTitle":"Group Created","groups.openGroup":"Open Group","groups.manageTitle":"Manage {name}","groups.owner":"Owner","groups.oncall":"Oncall Mode","groups.oncallHelp":"When enabled, group members can @ the bot; the selected bot's new topics in this group use its bound directory (binding is per-bot \u2014 only the checked bots are affected).","groups.leaveTitle":"Select Bots to Leave","groups.leaveSelected":"Selected Bots Leave","groups.disband":"Disband Group","groups.dangerHint":"Disband only works when an in-chat bot is the owner. Otherwise prefer leaving the chat.","groups.save":"Save","groups.needWorkingDir":"Working directory is required","groups.noBotsOnline":"No bots online. Restart the daemon first.","schedules.title":"Scheduled Tasks","schedules.search":"Search name / prompt / working dir","schedules.anyKind":"Any kind","schedules.enabledOnly":"Enabled only","schedules.name":"Name","schedules.bot":"Bot","schedules.schedule":"Schedule","schedules.next":"Next","schedules.last":"Last","schedules.repeat":"Repeat","schedules.enabled":"Enabled","schedules.paused":"Paused","schedules.actions":"Actions","schedules.runNow":"Run Now","schedules.running":"Running","schedules.runDone":"Done","schedules.saving":"Saving","schedules.saved":"Saved","schedules.failed":"Failed","schedules.error":"Error","schedules.errorUnknown":"Unknown error","schedules.pause":"Pause","schedules.resume":"Resume","schedules.delivery":"Execution position","schedules.deliveryTopLevel":"Group top level","schedules.deliveryThread":"Inside topic","schedules.deliveryOrigin":"Original thread","schedules.deliveryNewTopic":"New topic each run","schedules.deliveryLocal":"Log only","schedules.silent":"Silent","schedules.useNewTopic":"Switch to new-topic","schedules.useOrigin":"Switch to original","schedules.empty":"No schedules.","schedules.create":"New Task","schedules.edit":"Edit","schedules.delete":"Delete","schedules.deleteConfirm":"Delete this scheduled task?","schedules.form.name":"Name","schedules.form.schedule":"Schedule","schedules.form.scheduleHelp":'e.g. "daily 9:00", "every 30m", or cron "0 9 * * *"',"schedules.form.prompt":"Prompt","schedules.form.promptHelp":"Executed at the scheduled time, as if the user sent this in a topic","schedules.form.deliver":"Execution position","schedules.form.deliveryManagedHelp":"Choose group top level or a specific topic","schedules.form.localHelp":"Log-only delivery is CLI-managed; editing other fields keeps it unchanged","schedules.form.topLevelHelp":"Posts at group top level first; the bot regular-group mode decides whether subsequent output forms a topic","schedules.form.topicHelp":"Always runs under the selected topic, independent of the regular-group top-level mode","schedules.form.newTopicHelp":"Creates a fresh topic and isolated session on every run, independent of the regular-group mode","schedules.form.topicRoot":"Topic root message ID","schedules.form.topicRootHelp":"The Lark topic root message_id, usually starting with om_; tasks created inside a topic capture it automatically","schedules.form.topicTitle":"New topic title (optional)","schedules.form.topicTitlePlaceholder":"Defaults to the task start notice","schedules.form.topicTitleHelp":"Used as the first message of every new topic, matching the Webhook custom trigger notice.","schedules.form.silent":"Silent","schedules.form.silentHelp":"No start banner, no streaming card; only botmux send when the alert condition in prompt is met","schedules.form.bot":"Bot","schedules.form.chat":"Target Chat","schedules.form.save":"Save","schedules.form.cancel":"Cancel","schedules.form.create":"Create","schedules.form.silentNewTopicConflict":"Silent mode defers the topic: no alert closes the hidden session; the first botmux send creates the topic.","settings.title":"Global Settings","settings.loading":"Loading settings\u2026","settings.loadFailed":"Failed to load settings","settings.readOnlyVisitor":"Read-only access \u2014 changing settings requires an authorized link (run botmux dashboard).","settings.moduleGeneral":"General","settings.moduleGeneralHelp":"Manage access, Feishu cards, experimental capabilities, and task behavior.","settings.moduleMeeting":"Meeting Agent","settings.moduleMeetingHelp":"Configure meeting listeners, role presets, and official role templates in one place.","settings.moduleSystem":"System & Maintenance","settings.moduleSystemHelp":"Manage automatic updates, restarts, and runtime versions.","settings.sectionAccess":"Access","settings.publicReadOnly":"Allow tokenless read-only dashboard access","settings.publicReadOnlyHelp":"Allows tokenless access only to explicitly allowlisted read-only data. Workflow details, raw logs, and all write actions always require a token.","settings.remoteAccess":"Remote terminal access","settings.remoteAccessHelp":"Off by default. Uses central-platform links for terminals, Feishu terminal entries, and webhooks. Off uses local links.","settings.sectionCards":"Feishu Cards","settings.openTerminalInFeishu":"Open streaming-card Web terminals in the Feishu sidebar","settings.openTerminalInFeishuHelp":"Off by default. Wraps Web Terminal links so Feishu opens them in the sidebar. Write access is still controlled by the terminal token.","settings.enableLocalCliOpen":"Enable native CLI opening","settings.enableLocalCliOpenHelp":"Off by default and effective only when the daemon runs on macOS. Attach mode enters the same CLI in current tmux / Herdr / ZMX sessions; a ZMX local attach uses the native terminal while Lark remains a plain-text stream. Resume mode starts a separate CLI resume process and may stop Feishu from following the session.","settings.localCliOpenMode":"Native CLI open mode","settings.localCliOpenModeHelp":"Defaults to attaching the current session: managed tmux / Herdr / ZMX use exact attach, and adopted sessions attach only when a reliable existing target is known. A native ZMX attach does not mean botmux provides a Web TUI. Direct resume is for local debugging when you accept the Feishu continuity risk.","settings.localCliOpenModeAttach":"Attach current session (recommended)","settings.localCliOpenModeResume":"Start CLI resume","settings.sectionExperimental":"Experimental","settings.sectionHostOverloadAlert":"Host overload alert","settings.chatBotDiscovery":"In-chat bot discovery (Feishu /members/bots)","settings.chatBotDiscoveryHelp":"On by default. Reads bot members in the current chat to improve multi-bot @ accuracy. Falls back to legacy discovery on failure; disable only if membership detection is wrong.","settings.herdrTraexPlugin":"Auto-install TraeX herdr plugin (opt-in)","settings.herdrTraexPluginHelp":"Off by default; requires herdr >= 0.7.0. Enter a trusted source and optional ref, then click Save and install. A successful install runs the action that writes ~/.trae hooks. Prefer a pinned commit SHA.","settings.herdrTraexPluginSource":"Plugin source","settings.herdrTraexPluginSourcePlaceholder":"owner/repo[/subdir] (no built-in default)","settings.herdrTraexPluginSourceHelp":"Passed as a separate argv to `herdr plugin install <source>`; do not encode the ref as #tag. botmux never executes a third-party repository by default.","settings.herdrTraexPluginSourceRequired":"Enabled but no plugin source is set; nothing will be installed.","settings.herdrTraexPluginRef":"Plugin ref (optional)","settings.herdrTraexPluginRefPlaceholder":"Prefer a reviewed commit SHA","settings.herdrTraexPluginRefHelp":"Passed to herdr as a separate `--ref <ref>` argument. Tags, branches, and commit SHAs work; pinning a SHA avoids source drift.","settings.herdrTraexPluginSave":"Save and install","settings.herdrTraexPluginRecommended":"Author-recommended source (third-party; verify before trusting):","settings.herdrTraexInstalled":"\u2713 TraeX herdr plugin installed and ~/.trae hooks written","settings.herdrTraexAlreadyInstalled":"\u2713 TraeX herdr plugin already installed (skipped)","settings.herdrTraexInstallFailed":"TraeX herdr plugin install failed","settings.herdrTraexInstallStepInstall":"install","settings.herdrTraexInstallStepAction":"write hooks","settings.herdrTraexUnsupported":"This herdr does not support plugins; requires >= 0.7.0. Run herdr update first","settings.codexRpcInput":"Codex-family RPC input mode","settings.codexRpcInputHelp":"Experimental, off by default. For codex / traex bots (tmux backend only), user messages are injected via the app-server JSON-RPC channel, bypassing codex terminal paste-drops (the pane still runs the real --remote TUI). Sandbox/isolation/approval-gated/wrapper/startup-command sessions fall back to paste.","settings.bypassCodexHookTrust":"Auto-trust Codex hooks","settings.bypassCodexHookTrustHelp":`On by default. Codex 0.14x shows an interactive hook-trust gate ("Press t to trust"); every botmux upgrade rewrites its bundled hook so the hash changes and the gate re-fires, and a botmux-managed session has no one to press t \u2192 the first message wedges. When on, codex / traex plain-TUI launches pass --dangerously-bypass-hook-trust. Note: that flag trusts ALL hook sources codex sees (including a project .codex/hooks.json and enabled plugins), not only botmux's \u2014 turn it off if you do not want third-party project/plugin hooks auto-trusted. Restricted bots (bypass disabled) are never affected. Takes effect on the next session; running panes are unchanged.`,"settings.codexNotifier":"Codex task completion notifications","settings.codexNotifierHelp":"Experimental and off by default. When a standalone Codex App/CLI task finishes, the selected Bot sends a Feishu DM to its first deliverable administrator, with options to continue from the card or ask this Mac to open the original Codex App session.","settings.codexNotifierEnablePending":"Notifications will turn on automatically after you complete the settings below.","settings.codexNotifierTarget":"Notification Bot","settings.codexNotifierTargetHelp":"Select a Codex or Codex App Bot to send the private completion card and adopt the follow-up session.","settings.codexNotifierTargetPlaceholder":"Select a notification Bot","settings.codexNotifierRecipient":"Recipient: {recipient} (this Bot\u2019s first deliverable administrator)","settings.codexNotifierRecipientMissing":"The selected Bot has no administrator configured, so it cannot send a private completion message.","settings.codexNotifierRecipientUnverified":"The target Bot has not resolved its first deliverable administrator to a Feishu open_id. Check the administrator config or wait for the Bot to finish starting.","settings.codexNotifierNotifyWhen":"Notify when","settings.codexNotifierNotifyWhenHelp":"Locked only sends a Feishu message when this Mac is locked. Always sends one after every completed task.","settings.codexNotifierLockedOnly":"Locked only (recommended)","settings.codexNotifierAlways":"Always","settings.codexNotifierTargetRequired":"Select a notification Bot before enabling this feature.","settings.codexNotifierTargetOffline":"The target Bot is offline. Bring it back online before enabling notifications.","settings.codexNotifierUnsupported":"Reliable screen-lock detection is unavailable on this system. Choose Always to enable notifications.","settings.codexNotifierHookPending":"The Hook is not ready. Save again or restart BotMux.","settings.codexNotifierDaemonOffline":"The target Bot is offline. Events stay local and retry when it returns.","settings.codexNotifierPending":"{count} completion message(s) are waiting for delivery.","settings.codexNotifierWorkerPending":"The Hook is installed, but the notification worker is not running or its heartbeat is stale.","settings.codexNotifierLastError":"Most recent delivery failure: {error}","settings.hostOverloadAlert":"Enable overload alert","settings.hostOverloadAlertHelp":"When enabled, the selected notification Bot\u2019s daemon checks host load/memory every 30s and sends a Feishu DM to that Bot\u2019s administrator when it crosses the overload line, plus one more when it recovers. Host overload makes session cold-starts time out and hang; this heads-up lets you clear sessions or lower the resident cap in time. One notification Bot per host is enough; off by default.","settings.hostOverloadAlertTarget":"Notification Bot","settings.hostOverloadAlertTargetHelp":"Pick the Bot that sends the overload DM (any non-apiOnly Bot that can send Feishu messages and resolve an administrator). That Bot\u2019s own daemon does the sampling and sending.","settings.hostOverloadAlertTargetPlaceholder":"Select a notification Bot","settings.hostOverloadAlertRecipient":"Recipient: {recipient} (this Bot\u2019s first administrator)","settings.hostOverloadAlertRecipientMissing":"The selected Bot has no administrator configured, so it cannot send an overload DM.","settings.hostOverloadAlertRecipientUnverified":"The target Bot has not resolved its first administrator to a Feishu open_id. Check the administrator config or wait for the Bot to finish starting.","settings.hostOverloadAlertTargetRequired":"Select a notification Bot before enabling.","settings.hostOverloadAlertTargetOffline":"The target Bot\u2019s daemon is offline, so overload alerts cannot be delivered.","settings.hostOverloadAlertEnterLoad":"Load enter threshold (load15 / cores)","settings.hostOverloadAlertEnterLoadHelp":'Marks overload when the 15-minute load average > logical cores \xD7 this value. Default 1.5. The recovery line is fixed at the built-in default (cores \xD7 1.0); if you set the enter line even lower than that, the recovery line is automatically pulled down to 95% of enter so "recovery requires dropping below enter" still holds (no flapping).',"settings.hostOverloadAlertEnterMem":"Memory enter threshold (%)","settings.hostOverloadAlertEnterMemHelp":"Marks overload when used-memory fraction \u2265 this percentage. Default 92. The recovery line is fixed at the built-in default (85%); likewise, if you set the enter line lower, it is automatically pulled down to 95% of enter.","settings.noVisibleOutputHint":'"No visible output" anti-resend hint',"settings.noVisibleOutputHintHelp":'Experimental, off by default. Adds a note to the botmux routing hints telling the model that a successful `botmux send` is already delivered, that ending a turn with no visible terminal text is normal, and that a "no visible output, please continue" prompt is a false alarm from the underlying CLI (Claude Code \u22652.1.212) \u2014 do not resend. Mainly helps when Claude Code drives a non-Claude backend model (which tends to misread the thinking-only nudge as a send failure and reply repeatedly); harmless but usually unnecessary for an all-Claude setup. Takes effect on the next session, no restart needed.',"settings.sectionVcMeetingAgent":"Meeting Listener","settings.vcMeetingAgent":"Allow meeting listener features on this machine","settings.vcMeetingAgentHelp":"On by default. Controls whether bots on this host accept new meeting listener events. Off also skips listener restore; running meetings usually finish naturally.","settings.vcMeetingListenerBot":"Meeting event receiver Bot","settings.vcMeetingListenerBotAuto":"Follow each bot config","settings.vcMeetingListenerBotHelp":"Chooses the Bot that receives meeting events. Saving validates its lark-cli profile and meeting scopes, then enables the listener.","settings.vcMeetingListenerBotDisabled":"auto-enable on save","settings.vcMeetingListenerBotNoProfile":"profile required first","settings.larkCliReady":"lark-cli {version} \xB7 version requirement met","settings.larkCliOutdated":"lark-cli {version} is too old; VC bot joining requires \u2265 {minimum}","settings.larkCliMissing":"lark-cli was not detected; install it before using VC bot joining","settings.feishuLoginRequired":"Log in to the Feishu Open Platform to configure VC permissions automatically, then scan this QR code.","settings.feishuLoginQrAlt":"Feishu Open Platform login QR code","settings.feishuLoginClose":"Close login QR code","settings.vcProfiles.title":"Meeting role presets","settings.vcProfiles.help":"Reusable roles for meeting agents: responsibility prompt, event filter, output mode, and permission template. Activated members keep the version frozen at activation; remove and re-add to pick up a new version.","settings.vcProfiles.listenerOwner":"Listener to configure","settings.vcProfiles.configuringBot":"Configuring: {bot}","settings.vcProfiles.migrationOffer":"A meeting-minutes preset generated by an earlier version was found. Upgrade it to the full-capability default: listener-thread replies can be sent directly; in-meeting text and voice must pass through the managed output gate, text requires approval by default, and voice also requires enabled Listener voice facilities.","settings.vcProfiles.migrationEnable":"Upgrade and enable full-capability minutes (save to apply)","settings.vcProfiles.noEligibleDefaultAgent":"A default role cannot be generated yet. Configure a default working directory for at least one role execution Bot whose CLI supports reliable turn receipts.","settings.vcProfiles.legacyCatalog":"A legacy or partial meeting-Agent policy was found. Saving role presets switches it to multi-role mode.","settings.vcProfiles.templates.title":"Role template library","settings.vcProfiles.templates.builtinBadge":"Built in","settings.vcProfiles.templates.help":"Start with a template, then customize its Agent, responsibilities, filters, and output. Applying a template creates an editable copy with no ongoing link to the source.","settings.vcProfiles.templates.use":"Use template","settings.vcProfiles.list.title":"My presets","settings.vcProfiles.list.help":"Meeting roles you maintain. Open a card to view or edit it; mark it as default to enable it when the Feishu selection card is not used.","settings.vcProfiles.list.empty":"No role presets yet. Create a blank preset or start from an official template below.","settings.vcProfiles.setDefault":"Use by default","settings.vcProfiles.viewDetails":"View details","settings.vcProfiles.newBadge":"Unsaved","settings.vcProfiles.untitled":"Untitled preset","settings.vcProfiles.noInstructions":"No responsibility prompt yet","settings.vcProfiles.close":"Close","settings.vcProfiles.done":"Done editing","settings.vcProfiles.needAuth":"Meeting role presets require authorized access to edit.","settings.vcProfiles.discardConfirm":"You have unsaved changes; switching will discard them. Continue?","settings.vcProfiles.loading":"Loading\u2026","settings.vcProfiles.loadFailed":"Load failed","settings.vcProfiles.botNotInConfig":"This bot is not present in bots.json","settings.vcProfiles.conflict":"The config changed elsewhere; reload before editing so you do not overwrite it.","settings.vcProfiles.reload":"Reload","settings.vcProfiles.validationFailed":"Validation failed, check the fields","settings.vcProfiles.freezeNotice":"Editing a preset does not affect running meetings: a role freezes its version when joining a meeting; remove and re-add it to pick up the new version (starting from now, without replaying history).","settings.vcProfiles.fieldId":"ID (fixed after save)","settings.vcProfiles.idHelp":`Stable machine identifier; runtime references and recovery records depend on it, so it cannot change after save.
35
35
  1\u201364 chars, starts with a letter/digit, may contain letters, digits, . _ -, e.g. minutes, risk-watch.`,"settings.vcProfiles.idInvalid":"Must start with a letter/digit; letters, digits, . _ - only; max 64 chars","settings.vcProfiles.fieldLabel":"Name","settings.vcProfiles.labelHelp":"Display-only name, editable anytime, e.g. \u201CMinutes taker\u201D.","settings.vcProfiles.fieldAgent":"Role execution Bot","settings.vcProfiles.agentHelp":`Choose the Bot that executes this role.
36
36
  Warnings \u2014 offline: no live daemon for this Bot; no default working dir: meeting sessions may lack a suitable directory; no reliable receipts: it runs, but failure recovery replays conservatively.
37
- Each role execution Bot can run at most one role in a meeting.`,"settings.vcProfiles.agentOffline":"offline","settings.vcProfiles.agentNoWorkingDir":"no default working dir","settings.vcProfiles.agentNoReliableTerminal":"CLI lacks reliable turn receipts","settings.vcProfiles.agentNoManagedIsolation":"managed execution isolation is not enabled","settings.vcProfiles.fieldResponseMode":"Output mode","settings.vcProfiles.responseModeHelp":`Silent: analyzes in the background without auto-posting; if the permission template allows, it may still request in-meeting output, and it replies when explicitly asked.
37
+ Each role execution Bot can run at most one role in a meeting.`,"settings.vcProfiles.agentOffline":"offline","settings.vcProfiles.agentNoWorkingDir":"no default working dir","settings.vcProfiles.agentNoReliableTerminal":"CLI lacks reliable turn receipts","settings.vcProfiles.agentNoManagedIsolation":"sandbox is on but this platform/backend cannot provide isolation","settings.vcProfiles.agentUnsandboxedRisk":"unsandboxed: meeting input is untrusted, bot credential is exposed (enable sandbox in Bot settings to isolate)","settings.vcProfiles.fieldResponseMode":"Output mode","settings.vcProfiles.responseModeHelp":`Silent: analyzes in the background without auto-posting; if the permission template allows, it may still request in-meeting output, and it replies when explicitly asked.
38
38
  Reply in listener chat: auto-posts results to the meeting thread; at most one role per meeting may auto-post.`,"settings.vcProfiles.responseSilent":"Silent (no automatic replies)","settings.vcProfiles.responseListener":"Reply in listener chat","settings.vcProfiles.fieldListenerPlacement":"Chat placement","settings.vcProfiles.listenerPlacementHelp":"Controls only how automatic output is placed in the listener chat; it does not change silent/automatic-output authority. Auto preserves historical routing, Chat always posts at the chat top level, and Topic uses the first output as a stable topic root for later replies.","settings.vcProfiles.listenerPlacement.auto":"Follow chat mode","settings.vcProfiles.listenerPlacement.chat":"Post to chat","settings.vcProfiles.listenerPlacement.topic":"Keep in meeting topic","settings.vcProfiles.fieldPreset":"Permission template","settings.vcProfiles.presetHelp":`Analyze only: read-only meeting access.
39
39
  Text/voice speaking: may request that in-meeting output \u2014 still gated by daemon permissions and approval, never sent directly; each output kind has a single owner per meeting.
40
40
  Custom: only reuses the saved policy of this ID; new permissions cannot be crafted from the browser.`,"settings.vcProfiles.preset.observe_only":"Analyze only","settings.vcProfiles.preset.meeting_text":"In-meeting text (approval gated)","settings.vcProfiles.preset.meeting_voice":"In-meeting voice (approval gated)","settings.vcProfiles.preset.meeting_text_voice":"In-meeting text + voice (approval gated)","settings.vcProfiles.preset.custom":"Custom (keeps saved policy)","settings.vcProfiles.fieldInstructions":"Responsibility prompt","settings.vcProfiles.instructionsHelp":`Spell out: what artifact to maintain, what counts as a decision/risk/action item, the output format, how to update existing entries on transcript revisions, when to alert or request to speak, and what is forbidden.
@@ -42,14 +42,14 @@ Runs inside the daemon-managed safety boundary; it cannot override permissions o
42
42
  Checking none means receiving all events.`,"settings.vcProfiles.activityAllHint":"Nothing checked = receive all events","settings.vcProfiles.activity.transcript_received":"Transcripts","settings.vcProfiles.activity.chat_received":"In-meeting chat","settings.vcProfiles.activity.participant_joined":"Joins","settings.vcProfiles.activity.participant_left":"Leaves","settings.vcProfiles.activity.magic_share_started":"Share started","settings.vcProfiles.activity.magic_share_ended":"Share ended","settings.vcProfiles.remove":"Delete this preset","settings.vcProfiles.add":"+ Add preset","settings.vcProfiles.defaultMode":"When no selection is made","settings.vcProfiles.defaultModeHelp":"This combination is used when the user takes no action on the selection card. It must have unique IDs, at most one role per role execution Bot, a single owner per in-meeting output kind, and at most one auto-posting role; conflicts are rejected by the runtime resolver at activation and fail closed to listen-only.","settings.vcProfiles.defaultModeListenOnly":"Listen only","settings.vcProfiles.defaultModeAgents":"Enable selected presets","settings.vcProfiles.defaultConsumers":"Presets enabled when no selection is made","settings.vcProfiles.save":"Save presets","settings.vcProfiles.saving":"Saving\u2026","settings.vcProfiles.saved":"Saved","settings.vcProfiles.unsaved":"Unsaved changes","settings.sectionRepoPicker":"Repo Picker","settings.repoPickerMode":"Repo picker card mode","settings.repoPickerModeAll":"Repos + worktrees","settings.repoPickerModeRepos":"Main repos only","settings.repoPickerModeHelp":"Controls whether repo picker cards show linked worktrees. Explicit /repo paths can still open a worktree.","settings.sectionWhiteboard":"Local Whiteboard","settings.whiteboardEnable":"Enable project whiteboards","settings.whiteboardEnableHelp":"Off by default. Enables whiteboard support. Nothing is created until a chat and project first need it.","settings.sectionGroupCreation":"Group Creation","settings.groupNamePrefix":"Default /group name prefix","settings.groupNamePrefixHelp":"Applies only to the Feishu /group slash command and its /g alias. Other creation paths are unchanged. Clear and save to disable; cross-process updates take up to about 2 seconds.","settings.groupNamePrefixPlaceholder":"For example: AI Discussion \xB7 ","settings.groupNamePrefixPreview":"Preview: {name}","settings.groupNamePrefixPreviewName":"Example group","settings.groupNamePrefixDisabled":"No prefix is configured; /group keeps the requested name.","settings.groupNamePrefixSave":"Save prefix","settings.saving":"Saving\u2026","settings.saved":"Saved","settings.saveFailed":"Save failed","settings.saveReconciled":"The request failed; refreshed the confirmed server state","settings.sectionSchedule":"Scheduled tasks","settings.scheduleTimeZone":"Timezone","settings.scheduleTimeZoneHost":"Follow host ({host})","settings.scheduleTimeZoneHelp":"Timezone for scheduled-task firing and display. Empty follows host zone ({host}); effective: {effective}.","settings.sectionMaintenance":"Auto Maintenance","settings.autoUpdate":"Auto update","settings.autoUpdateHelp":"Off by default. Updates the global install with its owning package manager (npm/pnpm/Bun). It updates the package only; no restart.","settings.autoRestart":"Auto restart","settings.autoRestartHelp":"Off by default and requires auto-update. After update, restarts during an idle window; busy sessions defer to the next window.","settings.autoUpdateLocalDev":"This is a local-dev install (running from source); auto-update is unavailable.","settings.autoUpdateUnsupportedInstall":"This install method cannot be auto-updated yet (npm/pnpm/Bun global installs are supported).","settings.maintenanceTime":"Time","update.section":"Version & Update","update.loginRequired":"Sign in to check the version, update, or restart.","update.loading":"Checking\u2026","update.checkFailed":"Check failed","update.current":"Current version","update.upToDate":"Up to date","update.newAvailable":"New version {version} available","update.checkUnavailable":"Couldn't fetch the latest version (offline or network-restricted)","update.nodeWarn":"Node {version} is too old; update requires \u2265 {required}. Please upgrade Node first.","update.localDev":'This is a local-dev install (running from source); "Update to latest" is unavailable \u2014 use git pull + build, then restart.',"update.multiInstallWarn":"Multiple botmux installs detected. This update only changes the package-manager location that owns the running install:","update.kindNpm":"npm-global","update.kindPnpm":"pnpm-global","update.kindYarn":"Yarn global (update unsupported)","update.kindBun":"Bun global","update.kindSource":"source checkout","update.kindUnknown":"unknown","update.btnCheck":"Check for updates","update.btnChangelog":"View what's new","update.btnChangelogHide":"Hide changelog","update.btnUpdate":"Update to latest","update.btnRestart":"Restart botmux","update.topbarAction":"Update & restart","update.topbarReview":"View update options","update.topbarWorking":"Working\u2026","update.topbarRetry":"Retry","update.topbarLater":"Later","update.topbarClose":"Close","update.topbarRefresh":"Refresh version","update.topbarRefreshing":"Refreshing version\u2026","update.topbarRefreshFailed":"Version refresh failed. Keeping the last checked result.","update.rollbackTitle":"Version rollback","update.rollbackHint":"Choose a version to roll back to (3 most recent stable releases)","update.rollbackLoading":"Loading rollback versions\u2026","update.rollbackEmpty":"No older stable version is available.","update.rollbackLoadFailed":"Could not refresh the version list. Keeping the last result.","update.rollbackRetry":"Retry","update.rollbackSelect":"Select a rollback version","update.rollbackAction":"Roll back to v{version}","update.rollbackRisk":"Rollback installs v{version}, replaces the current program, and restarts automatically. Older versions may not include this version control; run botmux upgrade && botmux restart to return to the latest release. Scheduled auto-update may upgrade it again later.","update.rollbackReleaseNotes":"View the v{version} GitHub release notes \u2197","update.rollbackReleaseNotesA11y":"View the v{version} GitHub release notes (opens in a new tab)","update.rollbackInstalling":"Rolling back to v{version}\u2026","update.rollbackRestarting":"Installed v{version}. Restarting Botmux\u2026","update.rollbackFailed":"Rollback failed: {detail}","update.versionUpgradePrompt":"Update to {version}? Botmux will restart automatically when the update finishes.","update.changelogLoading":"Loading changelog\u2026","update.changelogEmpty":"No release notes newer than the current version.","update.changelogFailed":"Couldn't load the changelog (offline or network-restricted).","update.changelogRateLimited":"GitHub API rate limit hit (60 req/h per IP unauthenticated, easily tripped on shared networks). Try again later.","update.changelogViewOnGitHub":"View on GitHub Releases","update.navBadgeTitle":"New version {version} available","update.navRuntimeBadgeTitle":"CLI runtime {version} is available","update.runtimeTitle":"CLI runtimes","update.runtimeAvailable":"{current} \u2192 {latest}","update.runtimeCommand":"Host update command","update.runtimeUnmanaged":"Updates unmanaged","update.runtimeHelp":"botmux performs one read-only host check per day. It notifies only and never installs automatically.","update.confirmMultiInstall":`Multiple botmux installs detected:
43
43
  {paths}
44
44
 
45
- Only the running install location will be updated. Continue anyway?`,"update.confirmUpdate":"This will run {command} to update to {version}. Continue?","update.confirmUpdateNoVer":"This will run {command} to update to the latest version. Continue?","update.healthCheckFailed":"Could not identify the current Dashboard instance. Refresh the page and try again.","update.nodeTooOldAlert":"Node {version} is too old (requires \u2265 {required}). Please upgrade Node before updating.","update.updating":"Updating ({command})\u2026","update.unsupportedInstall":"This install cannot be auto-updated safely. Only npm/pnpm/Bun global installs are supported; update manually with the owning package manager.","update.updatedChanged":"Updated {old} \u2192 {new}.","update.confirmRestart":"A restart is required to apply the new version. Restart now? (Sessions cold-resume; the dashboard briefly disconnects and reconnects.)","update.alreadyLatestRun":"Already on the latest version ({version}); nothing to update.","update.updateFailed":"Update failed: {detail}","update.noRestartHint":"Update installed. Restart later (botmux restart) to apply the new version.","update.confirmPlainRestart":"Restart botmux? Sessions cold-resume; the dashboard briefly disconnects and reconnects.","update.restarting":"Restarting botmux, waiting to reconnect\u2026","update.restartSlow":"Restart is taking a while; please refresh the page manually.","update.restartFailed":"Restart failed: {detail}","skills.title":"Skill Management","skills.installed":"Installed Skills","skills.installedHelp":"Skills installed locally and available to Bots.","skills.installedCount":"{count}","skills.metricInstalled":"Installed Skills","skills.metricPacks":"Packs","skills.metricBots":"Configured Bots","skills.metricAttached":"Policy refs","skills.issuesLabel":"Config health","skills.issueDangling":"{count} skills referenced but not installed","skills.issueUnassignedPacks":"{count} packs assigned to no bot","skills.issueBotsMissing":"{count} bots missing skills","skills.issueNone":"\u2713 Healthy","skills.usedInPacks":"{count} packs","skills.usedByBots":"{count} bots","skills.installTargetHint":'Target: install "{skill}" (auto-selected after discovery, never auto-installed)',"skills.clearInstallTarget":"Clear target","skills.installTargetNotFound":'Target skill "{skill}" was not found in this source; nothing preselected',"skills.installMissingHint":'Go install "{skill}"',"skills.packsLoadError":"Failed to load skill packs (previous data kept): {error}","skills.packsLoadErrorFirst":"Failed to load skill packs (never loaded yet; related health shows as unknown): {error}","skills.libraryFilterActive":"Filter: {count}","skills.clearFilter":"Clear filter","skills.missingFilteredTitle":"Referenced but not installed","skills.installNow":"Install\u2026","skills.usedInPacksUnknown":"? packs","skills.install":"Install Skill","skills.installInfoLabel":"Install location details","skills.installInfo":"Registry metadata is stored in ~/.botmux/skills/registry.json; installed content lives under ~/.botmux/skills/store. Local CLI Skills are referenced in place and do not modify CLI global directories.","skills.source":"Import Address","skills.sourcePlaceholder":"Paste a GitHub repo, Git URL, agentbuddy install command, or local Skill directory","skills.sourceHelpOpen":"View supported import sources","skills.sourceHelpClose":"Close import source help","skills.sourceHelpTitle":"Supported import sources","skills.sourceHelpIntro":"Paste a source directly. Botmux identifies its type before scanning for installable Skills.","skills.sourceHelpRemoteLabel":"GitHub / Git","skills.sourceHelpRemote":"Supports owner/repo, GitHub browser URLs, and Git URLs. Multi-Skill repositories can be selected after scanning.","skills.sourceHelpRemoteExample":"owner/repo \xB7 https://github.com/owner/repo/tree/main","skills.sourceHelpLocalLabel":"Local CLI Skill directory","skills.sourceHelpLocal":"Referenced in place without copying into the botmux store.","skills.sourceHelpLocalExample":"/absolute/path/to/skill","skills.sourceHelpAgentbuddyLabel":"AgentBuddy","skills.sourceHelpAgentbuddy":"Paste the complete install command; marketplace URLs alone are not installable. The deploy host must be able to run Agentbuddy CLI.","skills.sourceHelpAgentbuddyExample":'npm_config_registry="https://registry.example.com" npx -y agentbuddy@latest skill add skills.example.com/team/health',"skills.advancedOptions":"Advanced (path in repo / ref / scan depth)","skills.sourceDetectedGithub":"Detected: GitHub repository","skills.sourceDetectedGit":"Detected: Git remote","skills.sourceDetectedAgentbuddy":"Detected: Agentbuddy install command","skills.sourceDetectedLocal":"Detected: deploy-host local path","skills.sourceDetectedUnknown":"This format is not recognized","skills.sourcePreflightAgentbuddy":"The pasted command is only parsed for its target. Installation still requires a configured, logged-in Agentbuddy CLI on the deploy host.","skills.sourcePreflightGit":"Public repositories need no setup. Private repositories require a GitHub token, gh login, or SSH key on the deploy host.","skills.sourcePreflightLocal":"This path must exist on the Botmux deploy host, and the process must be able to read its `SKILL.md`.","skills.sourcePreflightUnknown":"Use a GitHub/Git address, a complete Agentbuddy install command, or a deploy-host local path.","skills.installDiagnosticTitle":"Installation troubleshooting","skills.installDiagnosticAgentbuddy":"Check that Agentbuddy CLI is available and logged in on the deploy host. Paste a complete `skill add` / `collection add` command, not a marketplace URL.","skills.installDiagnosticGit":"Check the repository address, Ref, and path. Private repositories also require valid Git credentials on the deploy host.","skills.installDiagnosticLocal":"Check that the path is on the deploy host, contains a readable `SKILL.md`, and is not deeper than the selected scan depth.","skills.installDiagnosticUnknown":"This is not a supported source format. Open the source guide beside Import Address and retry.","skills.agentbuddyNotFound":"agentbuddy CLI not found on the deploy host. Install it globally there, or set BOTMUX_AGENTBUDDY_CMD.","skills.agentbuddyNeedsLogin":"agentbuddy on the deploy host is not logged in. Run agentbuddy login there and retry.","skills.gitNeedsAuth":"Private GitHub repository authentication failed. Run gh auth login on the deploy host, configure GITHUB_TOKEN / GH_TOKEN in ~/.botmux/.env, or use an SSH Git URL with the host SSH key.","skills.agentbuddyCommandFailed":"agentbuddy install failed \u2014 check the deploy-host logs.","skills.agentbuddyTelemetryFailed":"Embedded-telemetry removal failed; install aborted (set BOTMUX_AGENTBUDDY_KEEP_TELEMETRY=1 to keep it).","skills.agentbuddyNoSkill":"agentbuddy produced no Skill \u2014 check the identifier.","skills.agentbuddyInvalid":"Invalid agentbuddy identifier format.","skills.discover":"Discover Skills","skills.localDiscover":"Browse Local Skills","skills.localDiscoverTitle":"Local CLI Skills","skills.localDiscoverHelp":"Scans locally installed CLI Skills and registers them as local references.","skills.scan":"Scan","skills.scanning":"Scanning","skills.scanFound":"Found {count} Skills","skills.scanEmpty":"No installable Skills were found.","skills.sourceRequired":"Enter an import address first.","skills.advanced":"Advanced Options","skills.discoverTitle":"Discover Local CLI Skills","skills.discoverHelp":"Scans Skill directories used by configured bots. Selected Skills are registered as local links without copying files.","skills.discoverEmpty":"No registerable Skills were found in local CLI skill directories.","skills.discoverGroupEmpty":"No registerable Skills were found in this CLI directory.","skills.discoverRegistered":"Registered","skills.discoverSelectAll":"Select unregistered","skills.discoverClearSelection":"Clear selection","skills.discoverRegister":"Register selected","skills.discoverClose":"Close","skills.discoverNothingSelected":"Select at least one unregistered Skill.","skills.discoverRegisteringBatch":"Registering {total} Skills","skills.sourceCodex":"Local Codex","skills.sourceClaude":"Local Claude","skills.sourceTrae":"Local Trae","skills.sourceCursor":"Local Cursor","skills.sourceGemini":"Local Gemini","skills.sourceOpenCode":"Local OpenCode","skills.sourceLocalLink":"Local link","skills.sourceBotmuxCopy":"botmux store","skills.path":"Repo Path (optional)","skills.pathPlaceholder":"Leave empty to scan the repository root, or enter one Skill directory","skills.pathHelpInline":"Leave blank for whole-repo import; enter a directory to install that Skill directly.","skills.ref":"Ref (optional)","skills.refPlaceholder":"Blank uses the GitHub URL ref or default HEAD","skills.refHelpInline":"Branch, tag, or commit. Leave blank when a GitHub tree/blob URL already carries the ref.","skills.deepScan":"Scan recursively now","skills.deepScanHelp":"Skip the shallow pass and search up to 4 directory levels. Large repositories may take longer.","skills.autoDeepScanHint":"By default, Botmux scans quickly first and retries recursively only when nothing is found.","skills.link":"Local link (no copy)","skills.installSubmit":"Scan & Install","skills.installSelected":"Install Selected","skills.installSelectionTitle":"Select Skills to Install","skills.installSelectionHelp":"Found {count} Skills. Clear items you do not need before installing.","skills.installSelectionCancel":"Cancel","skills.update":"Update","skills.remove":"Remove","skills.select":"Select","skills.searchLabel":"Search installed Skills","skills.searchPlaceholder":"Search installed Skills","skills.selectAll":"Select all","skills.deselectAll":"Deselect all","skills.all":"All","skills.noResults":"No matching skills","skills.clearSearch":"Clear search","skills.resultCount":"{count} results","skills.selectAllSkills":"Select all {count}","skills.selectSearchResults":"Select {count} search results","skills.selectNamed":"Select {skill}","skills.selectedCount":"{count} selected","skills.selectedHidden":"\xB7 {count} outside current results","skills.bulkActions":"Installed Skills bulk actions","skills.removeSelected":"Remove {count}","skills.emptyTitle":"No Skills installed yet","skills.emptyHelp":"Installed Skills will appear here.","skills.noResultsTitle":"No results for \u201C{query}\u201D","skills.noResultsHelp":"Try another keyword.","skills.removeOneTitle":"Remove \u201C{skill}\u201D?","skills.removeManyTitle":"Remove {count} Skills?","skills.removeOnePermanentHelp":"This removes the Skill from the current environment and deletes its local copy in the botmux store. This cannot be undone.","skills.removePermanentHelp":"This removes the selected Skills from the current environment and deletes local copies in the botmux store. This cannot be undone.","skills.removeMore":"and {count} more","skills.removeInUseOneTitle":"Still remove \u201C{skill}\u201D?","skills.removeInUseManyTitle":"Still remove {count} Skills?","skills.removeInUseOneHelp":"{count} Bots currently reference it. After removal, those Bots can no longer use it. This cannot be undone.","skills.removeInUseManyHelp":"{count} Bots currently reference these Skills. After removal, those Bots can no longer use them. This cannot be undone.","skills.removeInUseOneHelpWithPacks":"{botCount} Bots and {packCount} Skill Packs currently reference it. Removal would leave dangling references. This cannot be undone.","skills.removeInUseManyHelpWithPacks":"{botCount} Bots and {packCount} Skill Packs currently reference these Skills. Removal would leave dangling references. This cannot be undone.","skills.removeReferencesDetail":"Affected references","skills.removeOneConfirm":"Remove Skill","skills.removeAnyway":"Remove anyway","skills.removing":"Removing\u2026","skills.removingCount":"Removing {count} Skills\u2026","skills.removedOne":"Removed \u201C{skill}\u201D","skills.removedMany":"Removed {count} Skills","skills.removeFailed":"Could not remove Skills. Try again: {detail}","skills.pageStatus":"{page} / {pages}","skills.prevPage":"Previous page","skills.nextPage":"Next page","skills.empty":"No installed skills yet. Install from a local directory, Git, or GitHub.","skills.apiUnavailable":"This Dashboard backend does not expose the Skill API. Usually the frontend was updated before the botmux process restarted. Restart botmux, then refresh this page.","skills.globalDefaults":"Global Skill Delivery","skills.globalProject":"Workspace Skills","skills.globalProjectOff":"Ignore workspace Skills","skills.globalProjectOffHelp":"Read global CLI Skills and botmux Skills only","skills.globalProjectAll":"Read workspace Skills","skills.globalProjectAllHelp":`Read .agents/skills and
46
- .botmux/skills`,"skills.globalDelivery":"Skill Delivery","skills.bots":"Bot Skill Settings","skills.botsHelp":"Choose priority Skills for each bot to disclose first.","skills.bot":"Bot","skills.cli":"CLI","skills.injection":"Injection","skills.status":"Status","skills.dragHint":"Drag from the left to assign; drag a Bot chip back here to unassign","skills.dragToRemove":"Drag back to the left to unassign","skills.unassignDropTitle":"Drop here to unassign","skills.unassignDropHint":"Removes only this item from {bot}; the Skill or Pack is not deleted","skills.alreadyAssigned":"{item} is already assigned to this Bot","skills.botCount":"{count} Bots","skills.skillCount":"{count} Skills","skills.attach":"Add to priority","skills.detach":"Remove","skills.detachNamed":"Remove {skill}","skills.delivery":"Injection","skills.deliveryAuto":"Auto","skills.deliveryAutoHelp":"Use native CLI delivery first; fall back to Prompt when unsupported","skills.deliveryPrompt":"Prompt","skills.deliveryPromptHelp":"Inject the Skill catalog into the session prompt; works with every CLI","skills.deliveryNative":"Native","skills.deliveryNativeHelp":"Use only the CLI native Skill mechanism; no Prompt fallback","skills.projectMode":"Workspace Skills","skills.projectDefault":"Follow global","skills.projectDefaultHelp":"Use the project default on the left","skills.projectOff":"Do not read","skills.projectOffHelp":"This bot ignores workspace skills","skills.projectAll":"Read","skills.projectAllHelp":"This bot includes workspace skill candidates","skills.priority":"Priority skills","skills.noPriority":"Not configured, keeping CLI default behavior","skills.pickerPlaceholder":"Select priority Skills","skills.pickerSelectedCount":"{count} Skills selected","skills.pickerTriggerHint":"Click to search or edit the selection","skills.pickerSearchPlaceholder":"Search Skill names or descriptions","skills.pickerSelectionMeta":"{selected} selected \xB7 {total} total","skills.pickerClear":"Clear","skills.pickerNoResults":"No matching Skills","skills.saveSelection":"Save selection","skills.cancel":"Cancel","skills.saving":"Saving\u2026","skills.policySaved":"Priority Skills saved","skills.dangling":"Not installed","skills.removeInUse":'Skill "{skill}" is still referenced by: {refs}. Removing it deletes the registry package but does not automatically clean references. Continue?',"skills.saved":"Saved","skills.failed":"Failed","skills.jobRunning":"Working...","skills.refresh":"Refresh","skills.tabPacks":"Skill Packs","skills.tabLibrary":"Skill Library","skills.tabBots":"Bot Assignment","skills.tabDelivery":"Delivery","skills.packs":"Skill Packs","skills.packCount":"{count}","skills.packsHelp":"Name a group of installed skills, then assign it to multiple Bots.","skills.packsEmpty":"No packs yet. Install skills first, then create a pack.","skills.packCreate":"New Pack","skills.packEdit":"Edit Pack","skills.packId":"ID (slug, immutable after creation)","skills.packName":"Name","skills.packDescription":"Description","skills.packTags":"Tags (comma-separated)","skills.packInclude":"Included Skills","skills.packHealthComplete":"Complete","skills.packHealthMissing":"Missing {count}","skills.packHealthUnassigned":"Unassigned","skills.packRefCount":"{count} Bots","skills.packRefs":"Assigned Bots","skills.packMissing":"Missing Skills","skills.packIdPlaceholder":"my-pack-slug","skills.packTagsPlaceholder":"tag1, tag2","skills.packDeleted":'Deleted "{name}"',"skills.packDeleteConfirmTitle":"Delete Skill Pack","skills.packDeleteConfirmBody":'Pack "{name}" is still referenced by Bots. Force-deleting removes only the pack; it does not clean up pack: references in Bot policies or uninstall member skills. Those references will be shown as missing.',"skills.packDeleteAffectedBots":"Affected Bots","skills.packDeleteForceWarning":"This cannot be undone. Affected Bots will lose the pack's skills in new sessions.","skills.installWizard":"Install Wizard","skills.wizSource":"Select Source","skills.wizDetails":"Fill Details","skills.wizInstall":"Confirm Install","skills.wizNext":"Next","skills.wizBack":"Back","skills.wizConfirm":"Confirm source and options, then click install.","skills.botInjection":"Per-Bot Injection","skills.botInjectionHelp":"Only affects CLIs that use a global skills dir (codex/gemini/\u2026).","skills.botInjectionNote":'Note: this is the per-bot switch (global/prompt/off), separate from the global "injection mode" (auto/prompt/native) above. They are two independent settings.',"skills.injectionGlobal":"Global directory","skills.injectionGlobalHelp":"Deliver to this CLI's global skills directory","skills.postInstallPackTitle":"Save as Skill Pack","skills.postInstallPackHelp":"{count} Skills were installed. Save this result as a reusable Skill Pack.","skills.postInstallPackSkills":"Skills installed in this run","skills.postInstallPackSkip":"Not now","skills.postInstallPackCreate":"Create and view Skill Pack","skills.injectionPrompt":"Prompt","skills.injectionPromptHelp":"Inject into session prompt, do not write to global dir","skills.injectionOff":"Off","skills.injectionOffHelp":"Only keep prompt + botmux --help","skills.scopeGlobal":"(global)","skills.botEdit":"Edit Bot","skills.resolvedPreview":"Resolved preview (deduplicated)","skills.packChips":"Packs","skills.individualSkills":"Individual Skills","skills.finalCount":"Final Skills","skills.health":"Status","skills.healthOk":"OK","skills.healthDefault":"Default","skills.healthMissing":"{count} missing","skills.healthPackMissing":"Pack missing","skills.healthUnknown":"Unknown (pack data not loaded)","skills.packsUnknown":"Pack data unavailable (API load failed); health cannot be judged","botDefaults.title":"Bot Config","botDefaults.openConsole":"Open Console","botDefaults.metaOnline":"Online \xB7 daemon healthy","botDefaults.search":"Search bot name / app id","botDefaults.refresh":"Refresh","botDefaults.rosterCount":"{count} bots","botDefaults.rosterFiltered":"{total} total","botDefaults.tabNavigation":"Bot configuration categories","botDefaults.tabCommon":"Common","botDefaults.tabSessions":"Sessions","botDefaults.tabSecurity":"Security","botDefaults.tabCards":"Message cards","botDefaults.tabAdvanced":"Advanced","botDefaults.tabHint":"Switching categories keeps unsaved input","botDefaults.sectionOncall":"New-chat Oncall","botDefaults.sectionBrand":"Card Signature","botDefaults.renameTitle":"Rename bot","botDefaults.renameAction":"Rename","botDefaults.renameSave":"Save","botDefaults.renameCancel":"Cancel","botDefaults.renameEmpty":"Name cannot be empty","botDefaults.renaming":"Syncing to the Feishu open platform (rename + publish a new version, ~10s)\u2026","botDefaults.renameOkFeishu":"Feishu app renamed \u2014 the name in chats is live","botDefaults.renameLocalOnly":"Feishu-side rename failed ({reason}); only the dashboard display name was updated","botDefaults.renameWarn.no_session":"No Feishu web session on the server \u2014 run botmux setup there to scan the QR again","botDefaults.renameWarn.session_expired":"The Feishu web session expired \u2014 run botmux setup on the server to scan the QR again","botDefaults.renameWarn.no_access":"The cached Feishu account is not a collaborator of this app","botDefaults.renameWarn.unsupported_brand":"Auto-rename is not supported for international Lark tenants yet","botDefaults.renameFailed":"Rename failed: {error}","botDefaults.avatarTitle":"Change bot avatar","botDefaults.avatarUploading":"Syncing to the Feishu open platform (upload avatar + publish a new version, ~10s)\u2026","botDefaults.avatarOkFeishu":"Feishu app avatar updated \u2014 the avatar in chats is live","botDefaults.avatarFailed":"Avatar update failed: {error}","botDefaults.avatarBadImage":"Could not read that image \u2014 try another PNG / JPG","botDefaults.avatarWarn.no_session":"No Feishu web session on the server \u2014 run botmux setup there to scan the QR again","botDefaults.avatarWarn.session_expired":"The Feishu web session expired \u2014 run botmux setup on the server to scan the QR again","botDefaults.avatarWarn.no_access":"The cached Feishu account is not a collaborator of this app","botDefaults.avatarWarn.unsupported_brand":"Auto avatar update is not supported for international Lark tenants yet","feishuLogin.entry":"Scan to log in to Feishu","feishuLogin.title":"Refresh Feishu login by QR","feishuLogin.starting":"Fetching QR code\u2026","feishuLogin.scanHint":"Scan with the Feishu app and confirm to authorize renaming (session stays on this server, shared with setup)","feishuLogin.success":"\u2713 Logged in \u2014 retrying the rename\u2026","feishuLogin.failed":"Login failed: {reason}","feishuLogin.retry":"Get a new QR code","feishuLogin.close":"Close","feishuLogin.qrAlt":"Feishu login QR code","botDefaults.sectionAgent":"Agent Config","botDefaults.agentCli":"CLI","botDefaults.agentMissingOption":"{label} (not installed: {command})","botDefaults.agentMissingHint":"{command} is not on the daemon PATH. New sessions cannot start until it is installed or the path is fixed.","botDefaults.agentModel":"Model","botDefaults.agentModelPlaceholder":"Leave empty for the CLI default model","botDefaults.agentHelp":"Model changes affect new sessions only. Switching CLI, runtime, or wrapper immediately closes active sessions using the old launch identity so they cannot resume with the wrong CLI.","botDefaults.agentSave":"Save Agent Config","botDefaults.runtimeTitle":"Codex Runtime","botDefaults.runtimeHelp":"Use official Codex or configure a custom distribution that preserves Codex CLI, resume, and output compatibility.","botDefaults.runtimeOfficial":"Official Codex","botDefaults.runtimeCustom":"Custom Compatible","botDefaults.runtimeOfficialNote":"Uses codex from the daemon PATH and checks versions and updates against official Codex.","botDefaults.runtimeLegacyNote":"A legacy CLI entry point is configured in read-only compatibility mode. Model-only saves preserve it; choose Official Codex to clear it or Custom Compatible to migrate it to a structured runtime.","botDefaults.runtimeLegacyPath":"Legacy CLI entry point","botDefaults.runtimeCustomNote":"Reuses the Codex adapter while keeping its version, executable, and update policy independent from official Codex.","botDefaults.runtimeId":"Runtime ID","botDefaults.runtimeIdHelp":"A stable unique distribution identifier used by session snapshots and update status. Keep it unchanged if the display name changes.","botDefaults.runtimeDisplayName":"Display Name","botDefaults.runtimeDisplayNamePlaceholder":"Defaults to Runtime ID","botDefaults.runtimeExecutable":"Executable","botDefaults.runtimeExecutableHelp":"A single command name or absolute path available to the daemon, without arguments.","botDefaults.runtimeUpdateProvider":"Update Provider","botDefaults.runtimeProviderAuto":"auto \u2014 detect unique npm provenance","botDefaults.runtimeProviderSelf":"self \u2014 use runtime doctor only","botDefaults.runtimeProviderNpm":"npm \u2014 specify an npm package","botDefaults.runtimeProviderNone":"none \u2014 skip update checks","botDefaults.runtimePackageName":"npm package","botDefaults.runtimePackageHelp":"For example @vendor/codex. Used only to query the latest version of this distribution.","botDefaults.runtimeRequired":"Runtime ID and executable are required.","botDefaults.runtimePackageRequired":"An npm package is required when the npm update provider is selected.","botDefaults.runtimeProbeOk":"Runtime probe passed: v{version} \xB7 update provider {provider}","botDefaults.runtimeProbeMissing":"The server did not return a runtime probe. Refresh to confirm the configuration took effect.","botDefaults.agentClosedCount":"Closed {count} active session(s) using the old CLI / runtime / wrapper","botDefaults.skillInjection":"botmux skills injection","botDefaults.skillInjectionDynamic":"Dynamic (--plugin-dir, per session)","botDefaults.skillInjectionDynamicUnsupported":"Dynamic (not supported by this CLI)","botDefaults.skillInjectionPrompt":"prompt \u2014 into session prompt, no global dir","botDefaults.skillInjectionGlobal":"global \u2014 install into CLI global skills dir","botDefaults.skillInjectionOff":"off \u2014 only a botmux --help pointer","botDefaults.skillInjectionHelpDynamic":"This CLI supports --plugin-dir injection. Skills are session-scoped, not written to global directories, and need no extra setup.","botDefaults.skillInjectionHelp":"Choose how botmux skills are delivered: prompt is the default and injects them at session start without touching global dirs; global installs into the CLI global skills dir; off keeps only the botmux --help pointer. Applies next session; switching global requires a daemon restart.","botDefaults.agentSaved":"Saved (takes effect next session)","botDefaults.warning":"When enabled, chats without an oncall binding auto-bind to this directory on their next new topic. Manually bound or unbound chats are preserved.","botDefaults.empty":"No bots online. Run botmux restart first.","botDefaults.defaultOncall":"Default to oncall mode","botDefaults.defaultOncallHelp":"Unbound chats auto-bind on the next new topic","botDefaults.workingDir":"Default Working Directory","botDefaults.lastEnabled":"Last Enabled","botDefaults.autobound":"{count} chats auto-bound","botDefaults.save":"Save","botDefaults.required":'Working directory is required for "Default directory only" or "Oncall mode"',"botDefaults.sectionWorkingDir":"Default Working Directory","botDefaults.workingDirMode":"Mode","botDefaults.workingDirField":"Directory","botDefaults.workingDirModeOff":"Off (new sessions show the repo picker)","botDefaults.workingDirModeDefault":"Default directory only (no permission change)","botDefaults.workingDirModeOncall":"Oncall mode (open chat to the whole group)","botDefaults.workingDirModeHelp":"Sets where new sessions start: Off shows the repo picker; Default directory starts there without permission changes; Oncall adds automatic group chat access on top. Applies next session.","botDefaults.autoWorktree":"Auto-create a worktree per new session","botDefaults.autoWorktreeHelp":"Only for Default directory mode. Creates an isolated git worktree per new session to avoid collisions; falls back to the default dir on failure. /close does not remove worktrees.","botDefaults.workingDirSaved":"Saved (takes effect next session)","botDefaults.brandLabel":"Signature (card footer)","botDefaults.brandLabelHelp":"Footer signature for cards sent by this bot. Empty hides it; custom text supports Markdown; reset shows botmux. Supports variables: {cwdName}=the session's current directory display name (the `name` field in that dir's .botmux-dir.json, falls back to the directory name), {cwd}=full path, {cwdUrl}=the `url` field in that dir's .botmux-dir.json; an empty link auto-degrades to plain text. Example: [{cwdName}]({cwdUrl})","botDefaults.brandLabelPlaceholder":"Default: botmux (empty = hidden)","botDefaults.sectionSandbox":"File sandbox (oncall)","botDefaults.sandboxToggle":"Enable file sandbox","botDefaults.sandboxHelp":"When on, every session of this bot runs in a sandbox: the agent works normally inside the project dir, but cannot touch your real files, secrets, or other sessions outside it \u2014 writes outside the project are isolated/blocked. For sharing the bot with semi-trusted users (oncall). Linux uses bwrap, macOS uses Seatbelt; same protection on both. Applies to the next new session.","botDefaults.sandboxSaved":"Saved (applies to the next new session)","botDefaults.sandboxReadIsoOn":"Enhanced CLI data isolation: this bot's CLI credentials, configuration, and session data are redirected to a private directory, separate from other bots (claude-code / codex, with no wrapper gateway).","botDefaults.sandboxReadIsoOff":"The base file sandbox still provides deny-by-default read/write isolation; this CLI or wrapper configuration cannot redirect the global CLI data directory into this bot's private directory.","botDefaults.sectionSandboxPaths":"Sandbox directory whitelist","botDefaults.sbxPathsHelp":"Deny-by-default: nothing is visible unless explicitly allowed below. Each directory cycles through three states: inherit from parent \u2192 read-write \u2192 read-only \u2192 deny. Longest-prefix wins, nestable to any depth (carve a deny hole inside a writable dir, then re-open a writable window inside that hole). Applies to the next new session.","botDefaults.sbxPathsSaved":"Saved (applies to the next new session)","botDefaults.sbxPathsSave":"Save policy","botDefaults.sbxPathsTextMode":"Text mode (copy / share)","botDefaults.sbxPathsTreeMode":"Back to tree","botDefaults.sbxRw":"read-write","botDefaults.sbxRo":"read-only","botDefaults.sbxDeny":"deny","botDefaults.sbxNone":"hidden","botDefaults.sbxInherit":"inherit","botDefaults.sbxNoSubdirs":"(no subdirectories)","botDefaults.sbxTestPlaceholder":"Test a path for its effective access, e.g. ~/my-data/secrets/x","botDefaults.sectionBackend":"Session backend","botDefaults.backendLabel":"Backend type","botDefaults.backendHelp":`The session backend for this bot's new sessions. Changes apply live to new sessions; running sessions keep the backend they started on and are unaffected. tmux supports adopt / Web Terminal; herdr manages persistent sessions; zmx >= 0.7.0 uses tail change signals + an authoritative plain-text history screen + send input (no Web TUI); zellij is experimental; pty is lightest but does not survive daemon restarts. "Auto" follows the global default.`,"botDefaults.backendAuto":"Auto (follow global default)","botDefaults.backendTmux":"tmux","botDefaults.backendHerdr":"herdr","botDefaults.backendZellij":"zellij","botDefaults.backendZmx":"zmx","botDefaults.backendPty":"pty","botDefaults.backendSaved":"Saved (applies to the next new session)","botDefaults.brandSave":"Save Signature","botDefaults.brandReset":"Reset to default","botDefaults.brandStateDefault":"Current: default botmux","botDefaults.brandStateOff":"Current: off","botDefaults.brandStateCustom":"Current: custom","botDefaults.sectionCard":"Task Cards","botDefaults.cardFeedbackGroup":"Task feedback","botDefaults.cardContentGroup":"Card content","botDefaults.cardManualGroup":"Manual /card","botDefaults.usageDisplay":"Usage display","botDefaults.usageDisplayHelp":"Choose where context and turn usage appear. Task status cards show full usage, while the final-result footer shows context usage only. This affects display only; Usage Ledger accounting remains active.","botDefaults.usageDisplayStreaming":"Task status card (default)","botDefaults.usageDisplayFooter":"Final-result footer","botDefaults.usageDisplayOff":"Off","botDefaults.autoStreaming":"Show a status card while tasks run","botDefaults.autoStreamingDescription":"On by default; continuously updates while a task is running.","botDefaults.autoStreamingHelp":"When enabled, every task shows a status card that keeps updating while it runs. When disabled, only the final result is sent.","botDefaults.silentTurnReactions":"Show processing status without a card","botDefaults.silentTurnReactionsDescription":"Marks the original message as received and completed.","botDefaults.silentTurnReactionsHelp":"When task status cards are off, message reactions mark tasks as received and completed by default. Turn this off to suppress those status markers.","botDefaults.writableLink":"Show an interactive terminal on cards","botDefaults.writableLinkDescription":"Chat members can operate the terminal. Enable only in trusted chats.","botDefaults.writableLinkHelp":"Applies to automatic status cards and public cards summoned with /card. Anyone who can see the card can operate the terminal.","botDefaults.manualCardIntro":"Send /card in an active session to temporarily view the current task.","botDefaults.privateCard":"Restrict manual /card to authorized users","botDefaults.privateCardDescription":"Regular groups only; sends a static snapshot that does not keep updating.","botDefaults.privateCardHelp":"When enabled, /card in a regular group sends a static snapshot only to owner / allowedUsers. Topic groups and DMs report that private cards are unsupported and never fall back to a public card.","botDefaults.manualCardHint":"Task status cards are off. Send /card in an active session when you need to inspect a running task.","botDefaults.sectionCodexAppDisplay":"Codex App History Display","botDefaults.codexAppCleanInput":"Show clean User Messages (experimental)","botDefaults.codexAppCleanInputHelp":"Only changes User Messages and history written to Codex App from the next turn onward: Botmux XML, routing, and system context still reach the model, but move to hidden context. It does not change the Lark conversation or rewrite existing history.","botDefaults.codexAppCleanInputCompat":"Off by default to preserve legacy compatibility. When enabled, it applies from the next turn.","botDefaults.sectionCrossBot":"Cross-bot","botDefaults.botToBotSameDir":"bot@bot same-directory launch","botDefaults.botToBotSameDirHelp":"On by default. When this bot is @-ed into a chat where another bot is already working, reuse that bot's directory and skip repo selection. Off uses this bot's own directory rules.","botDefaults.cardPrefSaved":"Saved","botDefaults.sectionSummaryTrigger":"/summary Range","botDefaults.summaryLimit":"Recent message count","botDefaults.summarySinceHours":"Recent hours","botDefaults.summaryLimitHelp":"History range read by /summary. Default is latest 50 messages or 24 hours; set either value to 0 to remove that limit. Topic groups read only the current topic.","botDefaults.summarySave":"Save summary range","botDefaults.summaryNumberInvalid":"Hours and message count must be 0 or a positive integer","botDefaults.summaryMemory":"Enable memory","botDefaults.summaryMemoryHelp":"When enabled, /summary writes a Chinese problem-resolution record to the configured memory file path only, echoes the exact Markdown written, and lets later turns reuse it only when key conditions match exactly. The path may be relative to the current project root or absolute.","botDefaults.summaryMemoryPath":"Memory file path","botDefaults.summaryMemoryPathSave":"Save memory path","botDefaults.sectionRole":"Default Role","botDefaults.roleHelp":"Default role injected into this bot's sessions. Individual chats can override it in Role Management. Saving empty deletes it.","botDefaults.rolePlaceholder":"e.g. You are a backend triage assistant; answer concisely, prefer runnable commands\u2026","botDefaults.roleSave":"Save role","botDefaults.roleSaved":"Saved","botDefaults.roleDeleted":"Deleted","botDefaults.roleLoadErr":"Failed to load role","botDefaults.profileRoles":"Profile Roles","botDefaults.profileRolesHelp":"Role entries for this bot in Profiles. Expand a profile to load details.","botDefaults.profileRolesEmpty":"This bot has no profile roles.","botDefaults.profileRolesLoadFailed":"Failed to load profile roles: {error}","botDefaults.profileRoleClickToLoad":"Expand to load role details.","botDefaults.profileRoleDetailLoadFailed":"Failed to load role detail: {error}","botDefaults.sectionAutoStart":"Proactive Start","botDefaults.autoStartJoin":"Auto-start when added to a new chat","botDefaults.autoStartJoinHelp":"Starts a session when the bot joins a new chat that contains an authorized user, without requiring @. Uses the default directory or shows repo selection. Requires the bot-joined event and member-read scope.","botDefaults.autoStartJoinPrompt":"First-turn prompt on join (optional)","botDefaults.autoStartJoinPromptPlaceholder":"Filled = used as the first task after joining; blank = the bot reads the chat and decides what to do","botDefaults.autoStartJoinPromptSave":"Save prompt","botDefaults.autoStartTopic":"Auto-start on new topics in topic groups","botDefaults.autoStartTopicHelp":"In topic groups, automatically joins each new topic and handles its first message without @. Regular groups are unaffected. Also covers topics opened by other bots.","botDefaults.sectionSessionMode":"Session mode","botDefaults.p2pMode":"Private chat session mode","botDefaults.p2pThread":"thread (separate session per DM)","botDefaults.p2pChat":"chat (flat continuous session, default)","botDefaults.p2pHelp":"Private chat session mode: chat (default) shares one continuous session; thread creates one session per top-level message. Applies immediately.","botDefaults.regularGroupMode":"Regular group session mode","botDefaults.regularGroupModeChat":"chat (flat continuous session)","botDefaults.regularGroupModeChatTopic":"chat-topic (flat continuous at top level, native topics each get their own session, default)","botDefaults.regularGroupModeNewTopic":"new-topic (each top-level @ opens its own topic & session)","botDefaults.regularGroupModeShared":"shared (topic display, reusing one session)","botDefaults.regularGroupModeHelp":"Regular group mode for top-level @mentions: chat = one continuous group session (native topics fold in too); chat-topic = flat at top level, native topics each get their own session (default); new-topic = each @ opens a topic and session; shared = top-level topic UI with a shared session (native topics fold in too). Native topics run their own session under chat-topic and new-topic, and fold into the group session under chat / shared. Chat-level /reply-mode can override it.","botDefaults.mentionMode":"Group @ policy","botDefaults.mentionModeAlways":"Always require @ (default)","botDefaults.mentionModeTopic":"No @ needed inside topics","botDefaults.mentionModeNever":"Never require @","botDefaults.mentionModeAmbient":"No @ needed, but yields when you @ someone else","botDefaults.mentionModeHelp":"Controls whether group messages must @ the bot. Options allow @ only, topic follow-ups without @, all messages without @, or yielding when the message @mentions someone else. Private chats never require @.","botDefaults.docSubscribeMode":"Doc subscription trigger (default)","botDefaults.docSubscribeModeMention":"Only when a comment @s me","botDefaults.docSubscribeModeAll":"Every new comment","botDefaults.docSubscribeModeHelp":'After watching Feishu doc comments with /watch-comment, comments feed into the session and the bot replies back into their threads. This sets the default trigger range for new watches: "only when a comment @s me" is safest (avoids noise); "every new comment" suits dedicated docs.',"botDefaults.sectionSubstitute":"Substitute mode","botDefaults.substituteEnabled":"Enable substitute trigger","botDefaults.substituteHelp":"In groups, when a configured substitute target is @mentioned, this bot answers on their behalf. The sender still needs canTalk. Recommended with Oncall mode so group members can naturally @ the substitute target. Use /substitute off to disable it for a specific group.","botDefaults.substituteTopicGroups":"Topic groups","botDefaults.substituteTopicGroupsHelp":"When on, @mentioning a substitute target inside a topic group also triggers the substitute: the turn rides that topic's own session (spawning one if absent) and the reply lands in the topic. When off, only regular groups trigger.","botDefaults.substituteTopicActive":"Trigger in topics with an active session","botDefaults.substituteTopicActiveHelp":"Whether @mentioning a substitute target still triggers inside a topic where this bot already has a working session (the substitute turn is injected into it). When off, such messages keep the original back-off behavior: mentioning someone else means hand-off, the bot stays silent.","botDefaults.substituteDisclosure":"Disclosure","botDefaults.substituteDisclosurePrefix":"Default: say I am answering for them","botDefaults.substituteDisclosureNone":"No extra disclosure","botDefaults.substituteReplyMode":"Reply style","botDefaults.substituteReplyModeThread":"Thread: create a Lark thread under the trigger message","botDefaults.substituteReplyModeQuote":"Quote: quote the trigger message without a new thread","botDefaults.substituteReplyModeHelp":"After a substitute trigger in a regular group, thread reply starts a collapsible thread; quote reply references the original message directly. Topic-group substitute replies stay inside their topic and ignore this setting.","botDefaults.substituteControlCard":"Send owner control card","botDefaults.substituteControlCardHelp":"When a substitute-mode session starts in a regular group, DM the bot owner / allowedUsers a control card with Open Web Terminal, Restart, and Close buttons (topic-group substitute sessions keep their normal streaming card, no extra DM).","botDefaults.substituteChats":"Allowed chats","botDefaults.substituteChatsHelp":"Leave blank to allow all chats (regular and topic groups); otherwise substitute only fires in these chat IDs. One per line, or comma/semicolon separated.","botDefaults.substituteChatsPlaceholder":`oc_xxx
45
+ Only the running install location will be updated. Continue anyway?`,"update.confirmUpdate":"This will run {command} to update to {version}. Continue?","update.confirmUpdateNoVer":"This will run {command} to update to the latest version. Continue?","update.healthCheckFailed":"Could not identify the current Dashboard instance. Refresh the page and try again.","update.nodeTooOldAlert":"Node {version} is too old (requires \u2265 {required}). Please upgrade Node before updating.","update.updating":"Updating ({command})\u2026","update.unsupportedInstall":"This install cannot be auto-updated safely. Only npm/pnpm/Bun global installs are supported; update manually with the owning package manager.","update.updatedChanged":"Updated {old} \u2192 {new}.","update.confirmRestart":"A restart is required to apply the new version. Restart now? (Sessions cold-resume; the dashboard briefly disconnects and reconnects.)","update.alreadyLatestRun":"Already on the latest version ({version}); nothing to update.","update.updateFailed":"Update failed: {detail}","update.noRestartHint":"Update installed. Restart later (botmux restart) to apply the new version.","update.confirmPlainRestart":"Restart botmux? Sessions cold-resume; the dashboard briefly disconnects and reconnects.","update.restarting":"Restarting botmux, waiting to reconnect\u2026","update.restartSlow":"Restart is taking a while; please refresh the page manually.","update.restartFailed":"Restart failed: {detail}","update.bootstrapRequired":"The new version is installed, but the currently running daemons predate the signal-death autorestart protocol, so the dashboard cannot safely restart them. At the machine, confirm every session is idle and run in a terminal: botmux restart --bootstrap-shutdown-protocol --yes to complete this one-time upgrade.","skills.title":"Skill Management","skills.installed":"Installed Skills","skills.installedHelp":"Skills installed locally and available to Bots.","skills.installedCount":"{count}","skills.metricInstalled":"Installed Skills","skills.metricPacks":"Packs","skills.metricBots":"Configured Bots","skills.metricAttached":"Policy refs","skills.issuesLabel":"Config health","skills.issueDangling":"{count} skills referenced but not installed","skills.issueUnassignedPacks":"{count} packs assigned to no bot","skills.issueBotsMissing":"{count} bots missing skills","skills.issueNone":"\u2713 Healthy","skills.usedInPacks":"{count} packs","skills.usedByBots":"{count} bots","skills.installTargetHint":'Target: install "{skill}" (auto-selected after discovery, never auto-installed)',"skills.clearInstallTarget":"Clear target","skills.installTargetNotFound":'Target skill "{skill}" was not found in this source; nothing preselected',"skills.installMissingHint":'Go install "{skill}"',"skills.packsLoadError":"Failed to load skill packs (previous data kept): {error}","skills.packsLoadErrorFirst":"Failed to load skill packs (never loaded yet; related health shows as unknown): {error}","skills.libraryFilterActive":"Filter: {count}","skills.clearFilter":"Clear filter","skills.missingFilteredTitle":"Referenced but not installed","skills.installNow":"Install\u2026","skills.usedInPacksUnknown":"? packs","skills.install":"Install Skill","skills.installInfoLabel":"Install location details","skills.installInfo":"Registry metadata is stored in ~/.botmux/skills/registry.json; installed content lives under ~/.botmux/skills/store. Local CLI Skills are referenced in place and do not modify CLI global directories.","skills.source":"Import Address","skills.sourcePlaceholder":"Paste a GitHub repo, Git URL, agentbuddy install command, or local Skill directory","skills.sourceHelpOpen":"View supported import sources","skills.sourceHelpClose":"Close import source help","skills.sourceHelpTitle":"Supported import sources","skills.sourceHelpIntro":"Paste a source directly. Botmux identifies its type before scanning for installable Skills.","skills.sourceHelpRemoteLabel":"GitHub / Git","skills.sourceHelpRemote":"Supports owner/repo, GitHub browser URLs, and Git URLs. Multi-Skill repositories can be selected after scanning.","skills.sourceHelpRemoteExample":"owner/repo \xB7 https://github.com/owner/repo/tree/main","skills.sourceHelpLocalLabel":"Local CLI Skill directory","skills.sourceHelpLocal":"Referenced in place without copying into the botmux store.","skills.sourceHelpLocalExample":"/absolute/path/to/skill","skills.sourceHelpAgentbuddyLabel":"AgentBuddy","skills.sourceHelpAgentbuddy":"Paste the complete install command; marketplace URLs alone are not installable. The deploy host must be able to run Agentbuddy CLI.","skills.sourceHelpAgentbuddyExample":'npm_config_registry="https://registry.example.com" npx -y agentbuddy@latest skill add skills.example.com/team/health',"skills.advancedOptions":"Advanced (path in repo / ref / scan depth)","skills.sourceDetectedGithub":"Detected: GitHub repository","skills.sourceDetectedGit":"Detected: Git remote","skills.sourceDetectedAgentbuddy":"Detected: Agentbuddy install command","skills.sourceDetectedLocal":"Detected: deploy-host local path","skills.sourceDetectedUnknown":"This format is not recognized","skills.sourcePreflightAgentbuddy":"The pasted command is only parsed for its target. Installation still requires a configured, logged-in Agentbuddy CLI on the deploy host.","skills.sourcePreflightGit":"Public repositories need no setup. Private repositories require a GitHub token, gh login, or SSH key on the deploy host.","skills.sourcePreflightLocal":"This path must exist on the Botmux deploy host, and the process must be able to read its `SKILL.md`.","skills.sourcePreflightUnknown":"Use a GitHub/Git address, a complete Agentbuddy install command, or a deploy-host local path.","skills.installDiagnosticTitle":"Installation troubleshooting","skills.installDiagnosticAgentbuddy":"Check that Agentbuddy CLI is available and logged in on the deploy host. Paste a complete `skill add` / `collection add` command, not a marketplace URL.","skills.installDiagnosticGit":"Check the repository address, Ref, and path. Private repositories also require valid Git credentials on the deploy host.","skills.installDiagnosticLocal":"Check that the path is on the deploy host, contains a readable `SKILL.md`, and is not deeper than the selected scan depth.","skills.installDiagnosticUnknown":"This is not a supported source format. Open the source guide beside Import Address and retry.","skills.agentbuddyNotFound":"agentbuddy CLI not found on the deploy host. Install it globally there, or set BOTMUX_AGENTBUDDY_CMD.","skills.agentbuddyNeedsLogin":"agentbuddy on the deploy host is not logged in. Run agentbuddy login there and retry.","skills.gitNeedsAuth":"Private GitHub repository authentication failed. Run gh auth login on the deploy host, configure GITHUB_TOKEN / GH_TOKEN in ~/.botmux/.env, or use an SSH Git URL with the host SSH key.","skills.agentbuddyCommandFailed":"agentbuddy install failed \u2014 check the deploy-host logs.","skills.agentbuddyTelemetryFailed":"Embedded-telemetry removal failed; install aborted (set BOTMUX_AGENTBUDDY_KEEP_TELEMETRY=1 to keep it).","skills.agentbuddyNoSkill":"agentbuddy produced no Skill \u2014 check the identifier.","skills.agentbuddyInvalid":"Invalid agentbuddy identifier format.","skills.discover":"Discover Skills","skills.localDiscover":"Browse Local Skills","skills.localDiscoverTitle":"Local CLI Skills","skills.localDiscoverHelp":"Scans locally installed CLI Skills and registers them as local references.","skills.scan":"Scan","skills.scanning":"Scanning","skills.scanFound":"Found {count} Skills","skills.scanEmpty":"No installable Skills were found.","skills.sourceRequired":"Enter an import address first.","skills.advanced":"Advanced Options","skills.discoverTitle":"Discover Local CLI Skills","skills.discoverHelp":"Scans Skill directories used by configured bots. Selected Skills are registered as local links without copying files.","skills.discoverEmpty":"No registerable Skills were found in local CLI skill directories.","skills.discoverGroupEmpty":"No registerable Skills were found in this CLI directory.","skills.discoverRegistered":"Registered","skills.discoverSelectAll":"Select unregistered","skills.discoverClearSelection":"Clear selection","skills.discoverRegister":"Register selected","skills.discoverClose":"Close","skills.discoverNothingSelected":"Select at least one unregistered Skill.","skills.discoverRegisteringBatch":"Registering {total} Skills","skills.sourceCodex":"Local Codex","skills.sourceClaude":"Local Claude","skills.sourceTrae":"Local Trae","skills.sourceCursor":"Local Cursor","skills.sourceGemini":"Local Gemini","skills.sourceOpenCode":"Local OpenCode","skills.sourceLocalLink":"Local link","skills.sourceBotmuxCopy":"botmux store","skills.path":"Repo Path (optional)","skills.pathPlaceholder":"Leave empty to scan the repository root, or enter one Skill directory","skills.pathHelpInline":"Leave blank for whole-repo import; enter a directory to install that Skill directly.","skills.ref":"Ref (optional)","skills.refPlaceholder":"Blank uses the GitHub URL ref or default HEAD","skills.refHelpInline":"Branch, tag, or commit. Leave blank when a GitHub tree/blob URL already carries the ref.","skills.deepScan":"Scan recursively now","skills.deepScanHelp":"Skip the shallow pass and search up to 4 directory levels. Large repositories may take longer.","skills.autoDeepScanHint":"By default, Botmux scans quickly first and retries recursively only when nothing is found.","skills.link":"Local link (no copy)","skills.installSubmit":"Scan & Install","skills.installSelected":"Install Selected","skills.installSelectionTitle":"Select Skills to Install","skills.installSelectionHelp":"Found {count} Skills. Clear items you do not need before installing.","skills.installSelectionCancel":"Cancel","skills.update":"Update","skills.remove":"Remove","skills.select":"Select","skills.searchLabel":"Search installed Skills","skills.searchPlaceholder":"Search installed Skills","skills.selectAll":"Select all","skills.deselectAll":"Deselect all","skills.all":"All","skills.noResults":"No matching skills","skills.clearSearch":"Clear search","skills.resultCount":"{count} results","skills.selectAllSkills":"Select all {count}","skills.selectSearchResults":"Select {count} search results","skills.selectNamed":"Select {skill}","skills.selectedCount":"{count} selected","skills.selectedHidden":"\xB7 {count} outside current results","skills.bulkActions":"Installed Skills bulk actions","skills.removeSelected":"Remove {count}","skills.emptyTitle":"No Skills installed yet","skills.emptyHelp":"Installed Skills will appear here.","skills.noResultsTitle":"No results for \u201C{query}\u201D","skills.noResultsHelp":"Try another keyword.","skills.removeOneTitle":"Remove \u201C{skill}\u201D?","skills.removeManyTitle":"Remove {count} Skills?","skills.removeOnePermanentHelp":"This removes the Skill from the current environment and deletes its local copy in the botmux store. This cannot be undone.","skills.removePermanentHelp":"This removes the selected Skills from the current environment and deletes local copies in the botmux store. This cannot be undone.","skills.removeMore":"and {count} more","skills.removeInUseOneTitle":"Still remove \u201C{skill}\u201D?","skills.removeInUseManyTitle":"Still remove {count} Skills?","skills.removeInUseOneHelp":"{count} Bots currently reference it. After removal, those Bots can no longer use it. This cannot be undone.","skills.removeInUseManyHelp":"{count} Bots currently reference these Skills. After removal, those Bots can no longer use them. This cannot be undone.","skills.removeInUseOneHelpWithPacks":"{botCount} Bots and {packCount} Skill Packs currently reference it. Removal would leave dangling references. This cannot be undone.","skills.removeInUseManyHelpWithPacks":"{botCount} Bots and {packCount} Skill Packs currently reference these Skills. Removal would leave dangling references. This cannot be undone.","skills.removeReferencesDetail":"Affected references","skills.removeOneConfirm":"Remove Skill","skills.removeAnyway":"Remove anyway","skills.removing":"Removing\u2026","skills.removingCount":"Removing {count} Skills\u2026","skills.removedOne":"Removed \u201C{skill}\u201D","skills.removedMany":"Removed {count} Skills","skills.removeFailed":"Could not remove Skills. Try again: {detail}","skills.pageStatus":"{page} / {pages}","skills.prevPage":"Previous page","skills.nextPage":"Next page","skills.empty":"No installed skills yet. Install from a local directory, Git, or GitHub.","skills.apiUnavailable":"This Dashboard backend does not expose the Skill API. Usually the frontend was updated before the botmux process restarted. Restart botmux, then refresh this page.","skills.globalDefaults":"Global Skill Delivery","skills.globalProject":"Workspace Skills","skills.globalProjectOff":"Ignore workspace Skills","skills.globalProjectOffHelp":"Read global CLI Skills and botmux Skills only","skills.globalProjectAll":"Read workspace Skills","skills.globalProjectAllHelp":`Read .agents/skills and
46
+ .botmux/skills`,"skills.globalDelivery":"Skill Delivery","skills.bots":"Bot Skill Settings","skills.botsHelp":"Choose priority Skills for each bot to disclose first.","skills.bot":"Bot","skills.cli":"CLI","skills.injection":"Injection","skills.status":"Status","skills.dragHint":"Drag from the left to assign; drag a Bot chip back here to unassign","skills.dragToRemove":"Drag back to the left to unassign","skills.unassignDropTitle":"Drop here to unassign","skills.unassignDropHint":"Removes only this item from {bot}; the Skill or Pack is not deleted","skills.alreadyAssigned":"{item} is already assigned to this Bot","skills.botCount":"{count} Bots","skills.skillCount":"{count} Skills","skills.attach":"Add to priority","skills.detach":"Remove","skills.detachNamed":"Remove {skill}","skills.delivery":"Injection","skills.deliveryAuto":"Auto","skills.deliveryAutoHelp":"Use native CLI delivery first; fall back to Prompt when unsupported","skills.deliveryPrompt":"Prompt","skills.deliveryPromptHelp":"Inject the Skill catalog into the session prompt; works with every CLI","skills.deliveryNative":"Native","skills.deliveryNativeHelp":"Use only the CLI native Skill mechanism; no Prompt fallback","skills.projectMode":"Workspace Skills","skills.projectDefault":"Follow global","skills.projectDefaultHelp":"Use the project default on the left","skills.projectOff":"Do not read","skills.projectOffHelp":"This bot ignores workspace skills","skills.projectAll":"Read","skills.projectAllHelp":"This bot includes workspace skill candidates","skills.priority":"Priority skills","skills.noPriority":"Not configured, keeping CLI default behavior","skills.pickerPlaceholder":"Select priority Skills","skills.pickerSelectedCount":"{count} Skills selected","skills.pickerTriggerHint":"Click to search or edit the selection","skills.pickerSearchPlaceholder":"Search Skill names or descriptions","skills.pickerSelectionMeta":"{selected} selected \xB7 {total} total","skills.pickerClear":"Clear","skills.pickerNoResults":"No matching Skills","skills.saveSelection":"Save selection","skills.cancel":"Cancel","skills.saving":"Saving\u2026","skills.policySaved":"Priority Skills saved","skills.dangling":"Not installed","skills.removeInUse":'Skill "{skill}" is still referenced by: {refs}. Removing it deletes the registry package but does not automatically clean references. Continue?',"skills.saved":"Saved","skills.failed":"Failed","skills.jobRunning":"Working...","skills.refresh":"Refresh","skills.tabPacks":"Skill Packs","skills.tabLibrary":"Skill Library","skills.tabBots":"Bot Assignment","skills.tabDelivery":"Delivery","skills.packs":"Skill Packs","skills.packCount":"{count}","skills.packsHelp":"Name a group of installed skills, then assign it to multiple Bots.","skills.packsEmpty":"No packs yet. Install skills first, then create a pack.","skills.packCreate":"New Pack","skills.packEdit":"Edit Pack","skills.packId":"ID (slug, immutable after creation)","skills.packName":"Name","skills.packDescription":"Description","skills.packTags":"Tags (comma-separated)","skills.packInclude":"Included Skills","skills.packHealthComplete":"Complete","skills.packHealthMissing":"Missing {count}","skills.packHealthUnassigned":"Unassigned","skills.packRefCount":"{count} Bots","skills.packRefs":"Assigned Bots","skills.packMissing":"Missing Skills","skills.packIdPlaceholder":"my-pack-slug","skills.packTagsPlaceholder":"tag1, tag2","skills.packDeleted":'Deleted "{name}"',"skills.packDeleteConfirmTitle":"Delete Skill Pack","skills.packDeleteConfirmBody":'Pack "{name}" is still referenced by Bots. Force-deleting removes only the pack; it does not clean up pack: references in Bot policies or uninstall member skills. Those references will be shown as missing.',"skills.packDeleteAffectedBots":"Affected Bots","skills.packDeleteForceWarning":"This cannot be undone. Affected Bots will lose the pack's skills in new sessions.","skills.installWizard":"Install Wizard","skills.wizSource":"Select Source","skills.wizDetails":"Fill Details","skills.wizInstall":"Confirm Install","skills.wizNext":"Next","skills.wizBack":"Back","skills.wizConfirm":"Confirm source and options, then click install.","skills.botInjection":"Per-Bot Injection","skills.botInjectionHelp":"Only affects CLIs that use a global skills dir (codex/gemini/\u2026).","skills.botInjectionNote":'Note: this is the per-bot switch (global/prompt/off), separate from the global "injection mode" (auto/prompt/native) above. They are two independent settings.',"skills.injectionGlobal":"Global directory","skills.injectionGlobalHelp":"Deliver to this CLI's global skills directory","skills.postInstallPackTitle":"Save as Skill Pack","skills.postInstallPackHelp":"{count} Skills were installed. Save this result as a reusable Skill Pack.","skills.postInstallPackSkills":"Skills installed in this run","skills.postInstallPackSkip":"Not now","skills.postInstallPackCreate":"Create and view Skill Pack","skills.injectionPrompt":"Prompt","skills.injectionPromptHelp":"Inject into session prompt, do not write to global dir","skills.injectionOff":"Off","skills.injectionOffHelp":"Only keep prompt + botmux --help","skills.scopeGlobal":"(global)","skills.botEdit":"Edit Bot","skills.resolvedPreview":"Resolved preview (deduplicated)","skills.packChips":"Packs","skills.individualSkills":"Individual Skills","skills.finalCount":"Final Skills","skills.health":"Status","skills.healthOk":"OK","skills.healthDefault":"Default","skills.healthMissing":"{count} missing","skills.healthPackMissing":"Pack missing","skills.healthUnknown":"Unknown (pack data not loaded)","skills.packsUnknown":"Pack data unavailable (API load failed); health cannot be judged","botDefaults.title":"Bot Config","botDefaults.openConsole":"Open Console","botDefaults.metaOnline":"Online \xB7 daemon healthy","botDefaults.search":"Search bot name / app id","botDefaults.refresh":"Refresh","botDefaults.rosterCount":"{count} bots","botDefaults.rosterFiltered":"{total} total","botDefaults.tabNavigation":"Bot configuration categories","botDefaults.tabCommon":"Common","botDefaults.tabSessions":"Sessions","botDefaults.tabSecurity":"Security","botDefaults.tabCards":"Message cards","botDefaults.tabAdvanced":"Advanced","botDefaults.tabHint":"Switching categories keeps unsaved input","botDefaults.sectionOncall":"New-chat Oncall","botDefaults.sectionBrand":"Card Signature","botDefaults.renameTitle":"Rename bot","botDefaults.renameAction":"Rename","botDefaults.renameSave":"Save","botDefaults.renameCancel":"Cancel","botDefaults.renameEmpty":"Name cannot be empty","botDefaults.renaming":"Syncing to the Feishu open platform (rename + publish a new version, ~10s)\u2026","botDefaults.renameOkFeishu":"Feishu app renamed \u2014 the name in chats is live","botDefaults.renameLocalOnly":"Feishu-side rename failed ({reason}); only the dashboard display name was updated","botDefaults.renameWarn.no_session":"No Feishu web session on the server \u2014 run botmux setup there to scan the QR again","botDefaults.renameWarn.session_expired":"The Feishu web session expired \u2014 run botmux setup on the server to scan the QR again","botDefaults.renameWarn.no_access":"The cached Feishu account is not a collaborator of this app","botDefaults.renameWarn.unsupported_brand":"Auto-rename is not supported for international Lark tenants yet","botDefaults.renameFailed":"Rename failed: {error}","botDefaults.avatarTitle":"Change bot avatar","botDefaults.avatarUploading":"Syncing to the Feishu open platform (upload avatar + publish a new version, ~10s)\u2026","botDefaults.avatarOkFeishu":"Feishu app avatar updated \u2014 the avatar in chats is live","botDefaults.avatarFailed":"Avatar update failed: {error}","botDefaults.avatarBadImage":"Could not read that image \u2014 try another PNG / JPG","botDefaults.avatarWarn.no_session":"No Feishu web session on the server \u2014 run botmux setup there to scan the QR again","botDefaults.avatarWarn.session_expired":"The Feishu web session expired \u2014 run botmux setup on the server to scan the QR again","botDefaults.avatarWarn.no_access":"The cached Feishu account is not a collaborator of this app","botDefaults.avatarWarn.unsupported_brand":"Auto avatar update is not supported for international Lark tenants yet","feishuLogin.entry":"Scan to log in to Feishu","feishuLogin.title":"Refresh Feishu login by QR","feishuLogin.starting":"Fetching QR code\u2026","feishuLogin.scanHint":"Scan with the Feishu app and confirm to authorize renaming (session stays on this server, shared with setup)","feishuLogin.success":"\u2713 Logged in \u2014 retrying the rename\u2026","feishuLogin.failed":"Login failed: {reason}","feishuLogin.retry":"Get a new QR code","feishuLogin.close":"Close","feishuLogin.qrAlt":"Feishu login QR code","botDefaults.sectionAgent":"Agent Config","botDefaults.agentCli":"CLI","botDefaults.agentMissingOption":"{label} (not installed: {command})","botDefaults.agentMissingHint":"{command} is not on the daemon PATH. New sessions cannot start until it is installed or the path is fixed.","botDefaults.agentModel":"Model","botDefaults.agentModelPlaceholder":"Leave empty for the CLI default model","botDefaults.agentHelp":"Model changes affect new sessions only. Switching CLI, runtime, or wrapper immediately closes active sessions using the old launch identity so they cannot resume with the wrong CLI.","botDefaults.agentReasoningEffort":"Reasoning effort","botDefaults.agentReasoningEffortHelp":"Default reasoning effort for new Codex sessions. Existing sessions are not changed.","botDefaults.agentTurnTimeout":"Turn timeout (minutes)","botDefaults.agentTurnTimeoutHelp":"dsh CLI only: the maximum time the runner waits for one turn to finish; exceeding it aborts the turn with an error. Leave empty for the 10-minute default. Raise it (e.g. 30) for long tool chains or slower models. Takes effect on the next session spawn.","botDefaults.agentTurnTimeoutPlaceholder":"Empty = 10-minute default","botDefaults.agentTurnTimeoutInvalid":"Enter a positive number of minutes; leave empty for the 10-minute default. Max \u2248 35791 minutes.","botDefaults.agentReasoningEffortDefault":"Use the Codex default","botDefaults.agentReasoningEffortLow":"Low","botDefaults.agentReasoningEffortMedium":"Medium","botDefaults.agentReasoningEffortHigh":"High","botDefaults.agentReasoningEffortXhigh":"Extra high","botDefaults.agentReasoningEffortMax":"Max","botDefaults.agentReasoningEffortUltra":"Ultra","botDefaults.agentSave":"Save Agent Config","botDefaults.runtimeTitle":"Codex Runtime","botDefaults.runtimeHelp":"Use official Codex or configure a custom distribution that preserves Codex CLI, resume, and output compatibility.","botDefaults.runtimeOfficial":"Official Codex","botDefaults.runtimeCustom":"Custom Compatible","botDefaults.runtimeOfficialNote":"Uses codex from the daemon PATH and checks versions and updates against official Codex.","botDefaults.runtimeLegacyNote":"A legacy CLI entry point is configured in read-only compatibility mode. Model-only saves preserve it; choose Official Codex to clear it or Custom Compatible to migrate it to a structured runtime.","botDefaults.runtimeLegacyPath":"Legacy CLI entry point","botDefaults.runtimeCustomNote":"Reuses the Codex adapter while keeping its version, executable, and update policy independent from official Codex.","botDefaults.runtimeId":"Runtime ID","botDefaults.runtimeIdHelp":"A stable unique distribution identifier used by session snapshots and update status. Keep it unchanged if the display name changes.","botDefaults.runtimeDisplayName":"Display Name","botDefaults.runtimeDisplayNamePlaceholder":"Defaults to Runtime ID","botDefaults.runtimeExecutable":"Executable","botDefaults.runtimeExecutableHelp":"A single command name or absolute path available to the daemon, without arguments.","botDefaults.runtimeUpdateProvider":"Update Provider","botDefaults.runtimeProviderAuto":"auto \u2014 detect unique npm provenance","botDefaults.runtimeProviderSelf":"self \u2014 use runtime doctor only","botDefaults.runtimeProviderNpm":"npm \u2014 specify an npm package","botDefaults.runtimeProviderNone":"none \u2014 skip update checks","botDefaults.runtimePackageName":"npm package","botDefaults.runtimePackageHelp":"For example @vendor/codex. Used only to query the latest version of this distribution.","botDefaults.runtimeRequired":"Runtime ID and executable are required.","botDefaults.runtimePackageRequired":"An npm package is required when the npm update provider is selected.","botDefaults.runtimeProbeOk":"Runtime probe passed: v{version} \xB7 update provider {provider}","botDefaults.runtimeProbeMissing":"The server did not return a runtime probe. Refresh to confirm the configuration took effect.","botDefaults.agentClosedCount":"Closed {count} active session(s) using the old CLI / runtime / wrapper","botDefaults.skillInjection":"botmux skills injection","botDefaults.skillInjectionDynamic":"Dynamic (--plugin-dir, per session)","botDefaults.skillInjectionDynamicUnsupported":"Dynamic (not supported by this CLI)","botDefaults.skillInjectionPrompt":"prompt \u2014 into session prompt, no global dir","botDefaults.skillInjectionGlobal":"global \u2014 install into CLI global skills dir","botDefaults.skillInjectionOff":"off \u2014 only a botmux --help pointer","botDefaults.skillInjectionHelpDynamic":"This CLI supports --plugin-dir injection. Skills are session-scoped, not written to global directories, and need no extra setup.","botDefaults.skillInjectionHelp":"Choose how botmux skills are delivered: prompt is the default and injects them at session start without touching global dirs; global installs into the CLI global skills dir; off keeps only the botmux --help pointer. Applies next session; switching global requires a daemon restart.","botDefaults.agentSaved":"Saved (takes effect next session)","botDefaults.warning":"When enabled, chats without an oncall binding auto-bind to this directory on their next new topic. Manually bound or unbound chats are preserved.","botDefaults.empty":"No bots online. Run botmux restart first.","botDefaults.defaultOncall":"Default to oncall mode","botDefaults.defaultOncallHelp":"Unbound chats auto-bind on the next new topic","botDefaults.workingDir":"Default Working Directory","botDefaults.lastEnabled":"Last Enabled","botDefaults.autobound":"{count} chats auto-bound","botDefaults.save":"Save","botDefaults.required":'Working directory is required for "Default directory only" or "Oncall mode"',"botDefaults.sectionWorkingDir":"Default Working Directory","botDefaults.workingDirMode":"Mode","botDefaults.workingDirField":"Directory","botDefaults.workingDirModeOff":"Off (new sessions show the repo picker)","botDefaults.workingDirModeDefault":"Default directory only (no permission change)","botDefaults.workingDirModeOncall":"Oncall mode (open chat to the whole group)","botDefaults.workingDirModeHelp":"Sets where new sessions start: Off shows the repo picker; Default directory starts there without permission changes; Oncall adds automatic group chat access on top. Applies next session.","botDefaults.autoWorktree":"Auto-create a worktree per new session","botDefaults.autoWorktreeHelp":"Only for Default directory mode. Creates an isolated git worktree per new session to avoid collisions; falls back to the default dir on failure. /close does not remove worktrees.","botDefaults.workingDirSaved":"Saved (takes effect next session)","botDefaults.brandLabel":"Signature (card footer)","botDefaults.brandLabelHelp":"Footer signature for cards sent by this bot. Empty hides it; custom text supports Markdown; reset shows botmux. Supports variables: {cwdName}=the session's current directory display name (the `name` field in that dir's .botmux-dir.json, falls back to the directory name), {cwd}=full path, {cwdUrl}=the `url` field in that dir's .botmux-dir.json; an empty link auto-degrades to plain text. Example: [{cwdName}]({cwdUrl})","botDefaults.brandLabelPlaceholder":"Default: botmux (empty = hidden)","botDefaults.sectionSandbox":"File sandbox (oncall)","botDefaults.sandboxToggle":"Enable file sandbox","botDefaults.sandboxHelp":"When on, every session of this bot runs in a sandbox: the agent works normally inside the project dir, but cannot touch your real files, secrets, or other sessions outside it \u2014 writes outside the project are isolated/blocked. For sharing the bot with semi-trusted users (oncall). Linux uses bwrap, macOS uses Seatbelt; same protection on both. Applies to the next new session.","botDefaults.sandboxSaved":"Saved (applies to the next new session)","botDefaults.sandboxReadIsoOn":"Enhanced CLI data isolation: this bot's CLI credentials, configuration, and session data are redirected to a private directory, separate from other bots (claude-code / codex, with no wrapper gateway).","botDefaults.sandboxReadIsoOff":"The base file sandbox still provides deny-by-default read/write isolation; this CLI or wrapper configuration cannot redirect the global CLI data directory into this bot's private directory.","botDefaults.sectionSandboxPaths":"Sandbox directory whitelist","botDefaults.sbxPathsHelp":"Deny-by-default: nothing is visible unless explicitly allowed below. Each directory cycles through three states: inherit from parent \u2192 read-write \u2192 read-only \u2192 deny. Longest-prefix wins, nestable to any depth (carve a deny hole inside a writable dir, then re-open a writable window inside that hole). Applies to the next new session.","botDefaults.sbxPathsSaved":"Saved (applies to the next new session)","botDefaults.sbxPathsSave":"Save policy","botDefaults.sbxPathsTextMode":"Text mode (copy / share)","botDefaults.sbxPathsTreeMode":"Back to tree","botDefaults.sbxRw":"read-write","botDefaults.sbxRo":"read-only","botDefaults.sbxDeny":"deny","botDefaults.sbxNone":"hidden","botDefaults.sbxInherit":"inherit","botDefaults.sbxNoSubdirs":"(no subdirectories)","botDefaults.sbxTestPlaceholder":"Test a path for its effective access, e.g. ~/my-data/secrets/x","botDefaults.sectionBackend":"Session backend","botDefaults.backendLabel":"Backend type","botDefaults.backendHelp":`The session backend for this bot's new sessions. Changes apply live to new sessions; running sessions keep the backend they started on and are unaffected. tmux supports adopt / Web Terminal; herdr manages persistent sessions; zmx >= 0.7.0 uses tail change signals + an authoritative plain-text history screen + send input (no Web TUI); zellij is experimental; pty is lightest but does not survive daemon restarts. "Auto" follows the global default.`,"botDefaults.backendAuto":"Auto (follow global default)","botDefaults.backendTmux":"tmux","botDefaults.backendHerdr":"herdr","botDefaults.backendZellij":"zellij","botDefaults.backendZmx":"zmx","botDefaults.backendPty":"pty","botDefaults.backendSaved":"Saved (applies to the next new session)","botDefaults.brandSave":"Save Signature","botDefaults.brandReset":"Reset to default","botDefaults.brandStateDefault":"Current: default botmux","botDefaults.brandStateOff":"Current: off","botDefaults.brandStateCustom":"Current: custom","botDefaults.sectionCard":"Task Cards","botDefaults.cardFeedbackGroup":"Task feedback","botDefaults.cardContentGroup":"Card content","botDefaults.cardManualGroup":"Manual /card","botDefaults.usageDisplay":"Usage display","botDefaults.usageDisplayHelp":"Choose where context and turn usage appear. Task status cards show full usage, while the final-result footer shows context usage only. This affects display only; Usage Ledger accounting remains active.","botDefaults.usageDisplayStreaming":"Task status card (default)","botDefaults.usageDisplayFooter":"Final-result footer","botDefaults.usageDisplayOff":"Off","botDefaults.autoStreaming":"Show a status card while tasks run","botDefaults.autoStreamingDescription":"On by default; continuously updates while a task is running.","botDefaults.autoStreamingHelp":"When enabled, every task shows a status card that keeps updating while it runs. When disabled, only the final result is sent.","botDefaults.silentTurnReactions":"Show processing status without a card","botDefaults.silentTurnReactionsDescription":"Marks the original message as received and completed.","botDefaults.silentTurnReactionsHelp":"When task status cards are off, message reactions mark tasks as received and completed by default. Turn this off to suppress those status markers.","botDefaults.writableLink":"Show an interactive terminal on cards","botDefaults.writableLinkDescription":"Chat members can operate the terminal. Enable only in trusted chats.","botDefaults.writableLinkHelp":"Applies to automatic status cards and public cards summoned with /card. Anyone who can see the card can operate the terminal.","botDefaults.manualCardIntro":"Send /card in an active session to temporarily view the current task.","botDefaults.privateCard":"Restrict manual /card to authorized users","botDefaults.privateCardDescription":"Regular groups only; sends a static snapshot that does not keep updating.","botDefaults.privateCardHelp":"When enabled, /card in a regular group sends a static snapshot only to owner / allowedUsers. Topic groups and DMs report that private cards are unsupported and never fall back to a public card.","botDefaults.manualCardHint":"Task status cards are off. Send /card in an active session when you need to inspect a running task.","botDefaults.sectionCodexAppDisplay":"Codex App History Display","botDefaults.codexAppCleanInput":"Show clean User Messages (experimental)","botDefaults.codexAppCleanInputHelp":"Only changes User Messages and history written to Codex App from the next turn onward: Botmux XML, routing, and system context still reach the model, but move to hidden context. It does not change the Lark conversation or rewrite existing history.","botDefaults.codexAppCleanInputCompat":"Off by default to preserve legacy compatibility. When enabled, it applies from the next turn.","botDefaults.envelopeInjection":"Context Injection","botDefaults.envelopeInjectionAuto":"Inject per-turn context via hook (experimental)","botDefaults.envelopeInjectionHelp":"When enabled, the reminder and whiteboard are no longer written into the input text; Claude Code's UserPromptSubmit hook injects them as a system reminder instead. The input box shows only the message itself. claude-code only; other CLIs keep inline context.","botDefaults.envelopeInjectionNote":"Off by default to preserve inline behavior. When enabled, it applies from the next reply and can be switched back at any time.","botDefaults.sectionCrossBot":"Cross-bot","botDefaults.botToBotSameDir":"bot@bot same-directory launch","botDefaults.botToBotSameDirHelp":"On by default. When this bot is @-ed into a chat where another bot is already working, reuse that bot's directory and skip repo selection. Off uses this bot's own directory rules.","botDefaults.cardPrefSaved":"Saved","botDefaults.sectionSummaryTrigger":"/summary Range","botDefaults.summaryLimit":"Recent message count","botDefaults.summarySinceHours":"Recent hours","botDefaults.summaryLimitHelp":"History range read by /summary. Default is latest 50 messages or 24 hours; set either value to 0 to remove that limit. Topic groups read only the current topic.","botDefaults.summarySave":"Save summary range","botDefaults.summaryNumberInvalid":"Hours and message count must be 0 or a positive integer","botDefaults.summaryMemory":"Enable memory","botDefaults.summaryMemoryHelp":"When enabled, /summary writes a Chinese problem-resolution record to the configured memory file path only, echoes the exact Markdown written, and lets later turns reuse it only when key conditions match exactly. The path may be relative to the current project root or absolute.","botDefaults.summaryMemoryPath":"Memory file path","botDefaults.summaryMemoryPathSave":"Save memory path","botDefaults.sectionRole":"Default Role","botDefaults.roleHelp":"Default role injected into this bot's sessions. Individual chats can override it in Role Management. Saving empty deletes it.","botDefaults.rolePlaceholder":"e.g. You are a backend triage assistant; answer concisely, prefer runnable commands\u2026","botDefaults.roleSave":"Save role","botDefaults.roleSaved":"Saved","botDefaults.roleDeleted":"Deleted","botDefaults.roleLoadErr":"Failed to load role","botDefaults.profileRoles":"Profile Roles","botDefaults.profileRolesHelp":"Role entries for this bot in Profiles. Expand a profile to load details.","botDefaults.profileRolesEmpty":"This bot has no profile roles.","botDefaults.profileRolesLoadFailed":"Failed to load profile roles: {error}","botDefaults.profileRoleClickToLoad":"Expand to load role details.","botDefaults.profileRoleDetailLoadFailed":"Failed to load role detail: {error}","botDefaults.sectionAutoStart":"Proactive Start","botDefaults.autoStartJoin":"Auto-start when added to a new chat","botDefaults.autoStartJoinHelp":"Starts a session when the bot joins a new chat that contains an authorized user, without requiring @. Uses the default directory or shows repo selection. Requires the bot-joined event and member-read scope.","botDefaults.autoStartJoinPrompt":"First-turn prompt on join (optional)","botDefaults.autoStartJoinPromptPlaceholder":"Filled = used as the first task after joining; blank = the bot reads the chat and decides what to do","botDefaults.autoStartJoinPromptSave":"Save prompt","botDefaults.autoStartTopic":"Auto-start on new topics in topic groups","botDefaults.autoStartTopicHelp":"In topic groups, automatically joins each new topic and handles its first message without @. Regular groups are unaffected. Also covers topics opened by other bots.","botDefaults.sectionSessionMode":"Session mode","botDefaults.p2pMode":"Private chat session mode","botDefaults.p2pThread":"thread (separate session per DM)","botDefaults.p2pChat":"chat (flat continuous session, default)","botDefaults.p2pGroup":"group (a dedicated session group per DM)","botDefaults.sgTag":"Session-group tag","botDefaults.sgTagHelp":"How session groups get tagged: feed-group = your personal sidebar feed group (default; one-time authorization, token auto-refreshes, works on any tenant); chat-tag = tenant chat tags applied with the app identity (no user auth; app needs the im:tag scopes, which some tenants' scope catalogs don't offer); off = no tagging.","botDefaults.sgTagModeChatTag":"chat-tag (tenant tag, no auth)","botDefaults.sgTagModeFeedGroup":"feed-group (sidebar group, needs auth, default)","botDefaults.sgTagModeOff":"off (no tagging)","botDefaults.sgTagChatTagNote":"Applied with the app tenant identity \u2014 no user authorization needed","botDefaults.sgTagAuthorized":"Authorized \u2014 new groups auto-join the feed group","botDefaults.sgTagUnauthorized":"Not authorized (avatar marker only)","botDefaults.sgTagAuthStart":"Authorize","botDefaults.sgTagAuthWaiting":"Waiting for authorization\u2026","botDefaults.sgTagAuthTimeout":"Timed out \u2014 if you finished authorizing in the new tab, just refresh this page; otherwise retry","botDefaults.p2pHelp":"Private chat session mode: chat (default) shares one continuous session; thread creates one session per top-level message; group births a dedicated user+bot group per top-level message and hosts the session there (AI-generated group name, returning to the group resumes the session). Applies immediately.","botDefaults.regularGroupMode":"Regular group session mode","botDefaults.regularGroupModeChat":"chat (flat continuous session)","botDefaults.regularGroupModeChatTopic":"chat-topic (flat continuous at top level, native topics each get their own session, default)","botDefaults.regularGroupModeNewTopic":"new-topic (each top-level @ opens its own topic & session)","botDefaults.regularGroupModeShared":"shared (topic display, reusing one session)","botDefaults.regularGroupModeHelp":"Regular group mode for top-level @mentions: chat = one continuous group session (native topics fold in too); chat-topic = flat at top level, native topics each get their own session (default); new-topic = each @ opens a topic and session; shared = top-level topic UI with a shared session (native topics fold in too). Native topics run their own session under chat-topic and new-topic, and fold into the group session under chat / shared. Chat-level /reply-mode can override it.","botDefaults.mentionMode":"Group @ policy","botDefaults.mentionModeAlways":"Always require @ (default)","botDefaults.mentionModeTopic":"No @ needed inside topics","botDefaults.mentionModeNever":"Never require @","botDefaults.mentionModeAmbient":"No @ needed, but yields when you @ someone else","botDefaults.mentionModeHelp":"Controls whether group messages must @ the bot. Options allow @ only, topic follow-ups without @, all messages without @, or yielding when the message @mentions someone else. Private chats never require @.","botDefaults.docSubscribeMode":"Doc subscription trigger (default)","botDefaults.docSubscribeModeMention":"Only when a comment @s me","botDefaults.docSubscribeModeAll":"Every new comment","botDefaults.docSubscribeModeHelp":'After watching Feishu doc comments with /watch-comment, comments feed into the session and the bot replies back into their threads. This sets the default trigger range for new watches: "only when a comment @s me" is safest (avoids noise); "every new comment" suits dedicated docs.',"botDefaults.sectionSubstitute":"Substitute mode","botDefaults.substituteEnabled":"Enable substitute trigger","botDefaults.substituteHelp":"In groups, when a configured substitute target is @mentioned, this bot answers on their behalf. The sender still needs canTalk. Recommended with Oncall mode so group members can naturally @ the substitute target. Use /substitute off to disable it for a specific group.","botDefaults.substituteTopicGroups":"Topic groups","botDefaults.substituteTopicGroupsHelp":"When on, @mentioning a substitute target inside a topic group also triggers the substitute: the turn rides that topic's own session (spawning one if absent) and the reply lands in the topic. When off, only regular groups trigger.","botDefaults.substituteTopicActive":"Trigger in topics with an active session","botDefaults.substituteTopicActiveHelp":"Whether @mentioning a substitute target still triggers inside a topic where this bot already has a working session (the substitute turn is injected into it). When off, such messages keep the original back-off behavior: mentioning someone else means hand-off, the bot stays silent.","botDefaults.substituteDisclosure":"Disclosure","botDefaults.substituteDisclosurePrefix":"Default: say I am answering for them","botDefaults.substituteDisclosureNone":"No extra disclosure","botDefaults.substituteReplyMode":"Reply style","botDefaults.substituteReplyModeThread":"Thread: create a Lark thread under the trigger message","botDefaults.substituteReplyModeQuote":"Quote: quote the trigger message without a new thread","botDefaults.substituteReplyModeHelp":"After a substitute trigger in a regular group, thread reply starts a collapsible thread; quote reply references the original message directly. Topic-group substitute replies stay inside their topic and ignore this setting.","botDefaults.substituteControlCard":"Send owner control card","botDefaults.substituteControlCardHelp":"When a substitute-mode session starts in a regular group, DM the bot owner / allowedUsers a control card with Open Web Terminal, Restart, and Close buttons (topic-group substitute sessions keep their normal streaming card, no extra DM).","botDefaults.substituteChats":"Allowed chats","botDefaults.substituteChatsHelp":"Leave blank to allow all chats (regular and topic groups); otherwise substitute only fires in these chat IDs. One per line, or comma/semicolon separated.","botDefaults.substituteChatsPlaceholder":`oc_xxx
47
47
  oc_yyy`,"botDefaults.substituteExcludedChats":"Blocked chats","botDefaults.substituteExcludedChatsHelp":"Substitute never fires in these chats (answering is hard-disabled \u2014 /substitute on cannot re-enable it), for regular and topic groups alike; direct @bot mentions still answer normally. Takes precedence over the allowed-chats list: a chat in both is blocked. One per line, or comma/semicolon separated.","botDefaults.substituteExcludedChatsPlaceholder":`oc_xxx
48
48
  oc_yyy`,"botDefaults.substituteTargetsPlaceholder":`alice@example.com
49
- ou_xxxx (open_id / union_id also accepted)`,"botDefaults.substituteTargets":"Substitute targets","botDefaults.substituteTargetsHelp":"Each row is one substitute target. Enter an email to resolve it to an Open ID on save, or select Open ID, User ID, or Union ID. Emails that cannot be resolved are flagged.","botDefaults.substituteTargetType":"Identifier type","botDefaults.substituteTargetEmail":"Email","botDefaults.substituteTargetOpenId":"Open ID","botDefaults.substituteTargetUserId":"User ID","botDefaults.substituteTargetUnionId":"Union ID","botDefaults.substituteTargetIdPlaceholder":"Enter a Lark user identifier or email","botDefaults.substituteTargetName":"Display name","botDefaults.substituteTargetNamePlaceholder":"Display name (optional)","botDefaults.substituteTargetAdd":"Add substitute target","botDefaults.substituteTargetRemove":"Remove substitute target","botDefaults.substituteTargetsInvalid":"Add at least one valid substitute target before enabling; emails must resolve to an Open ID","botDefaults.substituteTargetsRequired":"Enabling the substitute trigger needs at least one target that resolves to an open_id","botDefaults.substituteResolving":"Resolving\u2026","botDefaults.substituteUnresolved":"unresolved","botDefaults.substituteReasonCrossAppOpenId":"This Open ID belongs to another app; use email or Union ID instead","botDefaults.substituteReasonNotVisible":"This user is outside the app's contact visibility scope; adjust app visibility or use email","botDefaults.substituteReasonResolveFailed":"Resolution failed; check network or contact permissions","botDefaults.substituteReasonUnresolvable":"Unable to resolve this identifier; check spelling or use email","botDefaults.substituteSave":"Save substitute mode","botDefaults.substituteOff":"Turn off global substitute config","botDefaults.sectionGrant":"Authorization & Quota","botDefaults.autoGrantCard":"Auto grant card for blocked @mentions","botDefaults.autoGrantCardHelp":"When an unauthorized user or external bot @mentions this bot, send a /grant request card to the owner. Off still blocks, but silently.","botDefaults.restrictGrant":"Restrict grantees to plain conversation","botDefaults.restrictGrantHelp":"Restricts /grant users to plain conversation. Botmux commands, passthrough commands, CLI-native commands, and workflow commands are blocked; the owner is exempt.","botDefaults.grantDurationDefault":"Default access duration","botDefaults.grantDurationHelp":"Applies only to cards created afterward. Each card can still use another duration or no time limit; existing grants and cards already sent are unchanged.","botDefaults.grantDuration1Hour":"1 hour (default)","botDefaults.grantDuration1HourValue":"1 hour","botDefaults.grantDuration8Hours":"8 hours","botDefaults.grantDuration1Day":"1 day","botDefaults.grantDuration7Days":"7 days","botDefaults.grantDurationInvalid":"Choose a valid access duration","botDefaults.quotaDefault":"Default message quota","botDefaults.quotaPlaceholder":"Empty = 3 messages per grantee on cards","botDefaults.quotaHelp":"When empty, grant cards allow 3 messages per person and oncall stays unlimited. A value applies to both grant cards and oncall. Existing grants and explicit /grant @user N are unchanged.","botDefaults.quotaInvalid":"Enter a whole number from 1 to 1,000","botDefaults.grantDefaultsCurrentBuiltIn":"Current: {duration} \xB7 {count} messages per person on cards; oncall unlimited","botDefaults.grantDefaultsCurrentCustom":"Current: {duration} \xB7 {count} messages per person on cards and oncall","botDefaults.grantDefaultsCurrentLegacy":"Current legacy setting: {duration} \xB7 {cardCount} on cards; {oncallCount} on oncall","botDefaults.grantDefaultsSave":"Save default limits","botDefaults.grantDefaultsSaving":"Saving\u2026","botDefaults.sectionSessionCap":"Resident session limit","botDefaults.maxLiveWorkers":"Max resident sessions","botDefaults.maxLiveWorkersPlaceholder":"Empty = default 30","botDefaults.maxLiveWorkersUsage":"Resident {resident}/{cap} \xB7 dormant {dormant} \xB7 total {logical}","botDefaults.maxLiveWorkersHelp":"Maximum sessions this bot keeps resident in memory. Beyond it, the least-recently-used session is suspended: its background process and CLI exit to reclaim memory, while the conversation remains resumable. The next message cold-restores context from disk, usually within a few seconds. Empty = default 30; enter a number for a per-bot override. A session producing an answer is never interrupted; adopted external terminals and non-resumable sessions are exempt.","botDefaults.maxLiveWorkersSave":"Save limit","botDefaults.maxLiveWorkersOff":"Reset to default","botDefaults.maxLiveWorkersInvalid":"Limit must be a positive integer","botDefaults.maxLiveWorkersStateDefault":"Current: 30 resident sessions by default","botDefaults.maxLiveWorkersStateOn":"Current: up to {count} resident sessions","botDefaults.overloadAlert":"Host overload alert","botDefaults.overloadAlertHelp":"When on, this bot's daemon checks host load/memory every 30s and DMs this bot's admin when the machine crosses into an overloaded state (default: load15 > cpu\xD71.5 or memory \u226592%), plus one more DM on recovery. An overloaded host makes botmux session cold-starts time out and false-die, so this heads-up lets you clear sessions or lower the resident cap in time. Load is machine-wide, so enabling one bot is enough; if several are on, alerts are de-duped so the machine only notifies once per overload episode. Off by default.","botDefaults.sectionRuntimeEnv":"Startup environment","botDefaults.sectionStartupCommands":"Startup commands","botDefaults.startupCommandsHelp":"CLI commands sent automatically after launch and before the first message. Use commas or new lines; replayed on every new or resumed session. Native CLI sessions only.","botDefaults.startupCommandsPlaceholder":"One per line, e.g. /effort ultracode","botDefaults.startupCommandsSave":"Save startup commands","botDefaults.sectionSlashCommands":"Slash command permissions","botDefaults.sectionSlashCommandsHelp":"Control which slash commands pass through to the underlying CLI, and which daemon commands are allowed for people who can talk. Changes take effect immediately.","botDefaults.customPassthrough":"Extra passthrough commands","botDefaults.customPassthroughHelp":"Beyond the built-in allowlist, additionally forward these slash commands to the underlying CLI (daemon does not handle them \u2014 relayed verbatim). Comma or space separated, e.g. /goal /export. Entries that collide with a daemon command are ignored. Empty = built-in allowlist only.","botDefaults.customPassthroughPlaceholder":"e.g. /goal /export","botDefaults.customPassthroughSave":"Save passthrough commands","botDefaults.canTalkDaemon":"canTalk-allowed daemon commands","botDefaults.canTalkDaemonHelp":"Lower the listed daemon commands from canOperate (admins only) to canTalk (anyone allowed to talk \u2014 oncall members, grantees, DM users). Comma or space separated; daemon commands only (passthrough/typo entries ignored). \u26A0\uFE0F /cd /restart /rename etc. change state \u2014 lower with care; prefer low-risk commands like /status /help. Empty = all admins-only.","botDefaults.canTalkDaemonPlaceholder":"e.g. /status /help","botDefaults.canTalkDaemonSave":"Save canTalk list","botDefaults.sectionLaunchShell":"Launch shell","botDefaults.launchShellHelp":"Shell used to launch the CLI, such as zsh or /usr/bin/zsh, overriding the daemon $SHELL. Use it to avoid login-shell rc redirection issues; PATH must still be available in that shell. Applies next session.","botDefaults.launchShellPlaceholder":"e.g. zsh or /usr/bin/zsh; empty = $SHELL","botDefaults.launchShellSave":"Save launch shell","botDefaults.sectionEnv":"Environment variables","botDefaults.envHelp":"JSON environment variables injected into this bot's CLI process. Values may be string, number, or boolean; reserved BOTMUX_ / LARK_APP_ keys are ignored. Applies next session and is stored in plaintext in bots.json.","botDefaults.envPlaceholder":`{
49
+ ou_xxxx (open_id / union_id also accepted)`,"botDefaults.substituteTargets":"Substitute targets","botDefaults.substituteTargetsHelp":"Each row is one substitute target. Enter an email to resolve it to an Open ID on save, or select Open ID, User ID, or Union ID. Emails that cannot be resolved are flagged.","botDefaults.substituteTargetType":"Identifier type","botDefaults.substituteTargetEmail":"Email","botDefaults.substituteTargetOpenId":"Open ID","botDefaults.substituteTargetUserId":"User ID","botDefaults.substituteTargetUnionId":"Union ID","botDefaults.substituteTargetIdPlaceholder":"Enter a Lark user identifier or email","botDefaults.substituteTargetName":"Display name","botDefaults.substituteTargetNamePlaceholder":"Display name (optional)","botDefaults.substituteTargetAdd":"Add substitute target","botDefaults.substituteTargetRemove":"Remove substitute target","botDefaults.substituteTargetsInvalid":"Add at least one valid substitute target before enabling; emails must resolve to an Open ID","botDefaults.substituteTargetsRequired":"Enabling the substitute trigger needs at least one target that resolves to an open_id","botDefaults.substituteResolving":"Resolving\u2026","botDefaults.substituteUnresolved":"unresolved","botDefaults.substituteReasonCrossAppOpenId":"This Open ID belongs to another app; use email or Union ID instead","botDefaults.substituteReasonNotVisible":"This user is outside the app's contact visibility scope; adjust app visibility or use email","botDefaults.substituteReasonResolveFailed":"Resolution failed; check network or contact permissions","botDefaults.substituteReasonUnresolvable":"Unable to resolve this identifier; check spelling or use email","botDefaults.substituteSave":"Save substitute mode","botDefaults.substituteOff":"Turn off global substitute config","botDefaults.sectionGrant":"Authorization & Quota","botDefaults.autoGrantCard":"Auto grant card for blocked @mentions","botDefaults.autoGrantCardHelp":"When an unauthorized user or external bot @mentions this bot, send a /grant request card to the owner. Off still blocks, but silently.","botDefaults.restrictGrant":"Restrict grantees to plain conversation","botDefaults.restrictGrantHelp":"Restricts /grant users to plain conversation. Botmux commands, passthrough commands, CLI-native commands, and workflow commands are blocked; the owner is exempt.","botDefaults.p2pOpen":"Open direct messages to everyone","botDefaults.p2pOpenHelp":'Anyone who can see this bot may DM it without a per-user /grant \u2014 visibility is controlled by the Feishu app availability scope. Talk only: admin actions still require the admin list by default (exception: daemon commands you explicitly downgrade to "anyone who can talk" under Slash command permissions are also reachable from DMs). Make sure allowedUsers is non-empty before turning this on. Group chats are unaffected.',"botDefaults.grantDurationDefault":"Default access duration","botDefaults.grantDurationHelp":"Selections save automatically. Choosing 1 hour (default) restores the built-in duration. This applies only to cards created afterward; each card can still use another duration or no time limit, and existing grants and cards already sent are unchanged.","botDefaults.grantDuration1Hour":"1 hour (default)","botDefaults.grantDuration1HourValue":"1 hour","botDefaults.grantDuration8Hours":"8 hours","botDefaults.grantDuration1Day":"1 day","botDefaults.grantDuration7Days":"7 days","botDefaults.grantDurationInvalid":"Choose a valid access duration","botDefaults.quotaDefault":"Message quota override","botDefaults.quotaPlaceholder":"Empty = built-in default: {count} messages per grantee on cards","botDefaults.quotaHelpBuiltIn":"Currently using the built-in default: {count} messages per person on grant cards, with unlimited oncall. Enter a number and leave the field to save the same quota for grant cards and oncall. Existing grants and explicit /grant @user N are unchanged.","botDefaults.quotaHelpCustom":"Currently using a custom quota: {count} messages per person on grant cards and oncall. Clear the field and leave it to restore {defaultCount} messages on grant cards and unlimited oncall. Existing grants and explicit /grant @user N are unchanged.","botDefaults.quotaHelpLegacy":"Currently using a legacy setting: {cardCount} messages per person on grant cards and {oncallCount} on oncall. Clear the field and leave it to restore {defaultCount} messages on grant cards and unlimited oncall. Existing grants and explicit /grant @user N are unchanged.","botDefaults.quotaInvalid":"Enter a whole number from 1 to 1,000","botDefaults.grantDefaultsCurrentBuiltIn":"Current built-in default: {duration} \xB7 {count} messages per person on cards; oncall unlimited","botDefaults.grantDefaultsCurrentCustomBuiltInQuota":"Current custom setting: {duration} \xB7 built-in message quota ({count} per person on cards; oncall unlimited)","botDefaults.grantDefaultsCurrentCustom":"Current custom setting: {duration} \xB7 {count} messages per person on cards and oncall","botDefaults.grantDefaultsCurrentLegacy":"Current legacy setting: {duration} \xB7 {cardCount} on cards; {oncallCount} on oncall","botDefaults.grantDefaultsSaving":"Saving\u2026","botDefaults.sectionSessionCap":"Resident session limit","botDefaults.maxLiveWorkers":"Max resident sessions","botDefaults.maxLiveWorkersPlaceholder":"Empty = default 30","botDefaults.maxLiveWorkersUsage":"Resident {resident}/{cap} \xB7 dormant {dormant} \xB7 total {logical}","botDefaults.maxLiveWorkersHelp":"Maximum sessions this bot keeps resident in memory. Beyond it, the least-recently-used session is suspended: its background process and CLI exit to reclaim memory, while the conversation remains resumable. The next message cold-restores context from disk, usually within a few seconds. Empty = default 30; enter a number for a per-bot override. A session producing an answer is never interrupted; adopted external terminals and non-resumable sessions are exempt.","botDefaults.maxLiveWorkersSave":"Save limit","botDefaults.maxLiveWorkersOff":"Reset to default","botDefaults.maxLiveWorkersInvalid":"Limit must be a positive integer","botDefaults.maxLiveWorkersStateDefault":"Current: 30 resident sessions by default","botDefaults.maxLiveWorkersStateOn":"Current: up to {count} resident sessions","botDefaults.overloadAlert":"Host overload alert","botDefaults.overloadAlertHelp":"When on, this bot's daemon checks host load/memory every 30s and DMs this bot's admin when the machine crosses into an overloaded state (default: load15 > cpu\xD71.5 or memory \u226592%), plus one more DM on recovery. An overloaded host makes botmux session cold-starts time out and false-die, so this heads-up lets you clear sessions or lower the resident cap in time. Load is machine-wide, so enabling one bot is enough; if several are on, alerts are de-duped so the machine only notifies once per overload episode. Off by default.","botDefaults.sectionRuntimeEnv":"Startup environment","botDefaults.sectionStartupCommands":"Startup commands","botDefaults.startupCommandsHelp":"CLI commands sent automatically after launch and before the first message. Use commas or new lines; replayed on every new or resumed session. Native CLI sessions only.","botDefaults.startupCommandsPlaceholder":"One per line, e.g. /effort ultracode","botDefaults.startupCommandsSave":"Save startup commands","botDefaults.sectionSlashCommands":"Slash command permissions","botDefaults.sectionSlashCommandsHelp":"Control which slash commands pass through to the underlying CLI, and which daemon commands are allowed for people who can talk. Changes take effect immediately.","botDefaults.customPassthrough":"Extra passthrough commands","botDefaults.customPassthroughHelp":"Beyond the built-in allowlist, additionally forward these slash commands to the underlying CLI (daemon does not handle them \u2014 relayed verbatim). Comma or space separated, e.g. /goal /export. Entries that collide with a daemon command are ignored. Empty = built-in allowlist only.","botDefaults.customPassthroughPlaceholder":"e.g. /goal /export","botDefaults.customPassthroughSave":"Save passthrough commands","botDefaults.canTalkDaemon":"canTalk-allowed daemon commands","botDefaults.canTalkDaemonHelp":"Lower the listed daemon commands from canOperate (admins only) to canTalk (anyone allowed to talk \u2014 oncall members, grantees, DM users). Comma or space separated; daemon commands only (passthrough/typo entries ignored). \u26A0\uFE0F /cd /restart /rename etc. change state \u2014 lower with care; prefer low-risk commands like /status /help. Empty = all admins-only.","botDefaults.canTalkDaemonPlaceholder":"e.g. /status /help","botDefaults.canTalkDaemonSave":"Save canTalk list","botDefaults.sectionLaunchShell":"Launch shell","botDefaults.launchShellHelp":"Shell used to launch the CLI, such as zsh / bash / fish or /usr/bin/zsh, overriding the daemon $SHELL. Use it to avoid login-shell rc redirection issues; PATH must still be available in that shell (fish users: put it in ~/.config/fish/config.fish). Applies next session.","botDefaults.launchShellPlaceholder":"e.g. zsh or /usr/bin/zsh; empty = $SHELL","botDefaults.launchShellSave":"Save launch shell","botDefaults.sectionEnv":"Environment variables","botDefaults.envHelp":"JSON environment variables injected into this bot's CLI process. Values may be string, number, or boolean; reserved BOTMUX_ / LARK_APP_ keys are ignored. Applies next session and is stored in plaintext in bots.json.","botDefaults.envPlaceholder":`{
50
50
  "ANTHROPIC_BASE_URL": "https://api.z.ai/api/anthropic",
51
51
  "ANTHROPIC_AUTH_TOKEN": "your GLM Coding Plan key"
52
- }`,"botDefaults.envSave":"Save environment variables","botDefaults.sectionRiff":"Riff backend config","botDefaults.riffHelp":"Connection parameters for the riff service; applies next session. Agent is fixed to codex (other runners were retired server-side). Auth: the JWT is auto-read from the local ByteCloud keychain (log in once with kaboo-cli / aiden-cli / cjadk), or set via the JWT env var field. Repo: the session workingDir git repo + current branch are reused automatically (repo picker / default dir / oncall dir included) \u2014 no separate repo config.","botDefaults.riffBaseUrl":"Base URL","botDefaults.riffBaseUrlPlaceholder":"https://riff.example.com","botDefaults.riffSandboxCluster":"Runtime environment","botDefaults.riffSandboxClusterHelp":"Sandbox resource pool for new tasks. BOE can access the internal network and suits development, integration, and troubleshooting; CN uses the CN resource pool. This is independent of the Base URL (Riff service environment). The server defaults to BOE when unset.","botDefaults.riffReasoningEffort":"Reasoning effort","botDefaults.riffReasoningEffortDefault":"Default (medium)","botDefaults.riffReasoningEffortHelp":"codex reasoning strength (model_reasoning_effort), written into the sandbox config. Empty follows the riff default (medium); xhigh is strongest but slower/costlier.","botDefaults.riffModel":"Model","botDefaults.riffModelPlaceholder":"(optional) leave empty to use riff default model (recommended)","botDefaults.riffModelHelp":"Model name for riff tasks. Empty uses the riff default (gpt-5.5); only values in the riff-supported catalog are accepted \u2014 an invalid name fails task creation and echoes the full list.","botDefaults.riffJwtEnv":"JWT env var","botDefaults.riffJwtEnvPlaceholder":"RIFF_JWT","botDefaults.riffSystemPrompt":"System Prompt","botDefaults.riffSystemPromptPlaceholder":"(optional) system prompt injected into riff tasks; falls back to built-in default if empty","botDefaults.riffSetupCommands":"Additional setup commands","botDefaults.riffSetupCommandsPlaceholder":"(optional) one shell command per line, run before the agent starts. botmux is installed automatically \u2014 no need to add it here.","botDefaults.riffJwtEnvHelp":"Name of the env var holding the JWT token. botmux reads the token from this var at startup to call the riff API; leave empty to auto-fetch from the ByteCloud keychain.","botDefaults.riffCliPersistFailed":"Switching to Riff was not saved (CLI selection persist failed) \u2014 please retry","botDefaults.riffSave":"Save Riff config","nav.roles":"Role Management","nav.groupRoles":"Group Roles","nav.roleProfiles":"Profiles","roles.title":"Role Management","roleProfiles.title":"Profiles","roles.search":"Search group / bot / ID","roles.refresh":"Refresh","roles.selectHint":"\u2190 Expand a group and select a bot to edit its role","roles.editorPlaceholder":`Enter role description, e.g.:
52
+ }`,"botDefaults.envSave":"Save environment variables","botDefaults.sectionRiff":"Riff backend config","botDefaults.riffHelp":"Connection parameters for the riff service; applies next session. Agent is fixed to codex (other runners were retired server-side). Auth: the JWT is auto-read from the local ByteCloud keychain (log in once with kaboo-cli / aiden-cli / cjadk / bytedcli \u2014 each tool's store is auto-probed cross-platform), or set via the JWT env var field. Repo: the session workingDir git repo + current branch are reused automatically (repo picker / default dir / oncall dir included) \u2014 no separate repo config.","botDefaults.riffBaseUrl":"Base URL","botDefaults.riffBaseUrlPlaceholder":"https://riff.example.com","botDefaults.riffSandboxCluster":"Runtime environment","botDefaults.riffSandboxClusterHelp":"Sandbox resource pool for new tasks. BOE can access the internal network and suits development, integration, and troubleshooting; CN uses the CN resource pool. This is independent of the Base URL (Riff service environment). The server defaults to BOE when unset.","botDefaults.riffReasoningEffort":"Reasoning effort","botDefaults.riffReasoningEffortDefault":"Default (medium)","botDefaults.riffReasoningEffortHelp":"codex reasoning strength (model_reasoning_effort), written into the sandbox config. Empty follows the riff default (medium); xhigh is strongest but slower/costlier.","botDefaults.riffModel":"Model","botDefaults.riffModelPlaceholder":"(optional) leave empty to use riff default model (recommended)","botDefaults.riffModelHelp":"Model name for riff tasks. Empty uses the riff default (gpt-5.5); only values in the riff-supported catalog are accepted \u2014 an invalid name fails task creation and echoes the full list.","botDefaults.riffJwtEnv":"JWT env var","botDefaults.riffJwtEnvPlaceholder":"RIFF_JWT","botDefaults.riffSystemPrompt":"System Prompt","botDefaults.riffSystemPromptPlaceholder":"(optional) system prompt injected into riff tasks; falls back to built-in default if empty","botDefaults.riffSetupCommands":"Additional setup commands","botDefaults.riffSetupCommandsPlaceholder":"(optional) one shell command per line, run before the agent starts. botmux is installed automatically \u2014 no need to add it here.","botDefaults.riffJwtEnvHelp":"Name of the env var holding the JWT token. botmux reads the token from this var at startup to call the riff API; leave empty to auto-fetch from the ByteCloud keychain.","botDefaults.riffCliPersistFailed":"Switching to Riff was not saved (CLI selection persist failed) \u2014 please retry","botDefaults.riffSave":"Save Riff config","nav.roles":"Role Management","nav.groupRoles":"Group Roles","nav.roleProfiles":"Profiles","roles.title":"Role Management","roleProfiles.title":"Profiles","roles.search":"Search group / bot / ID","roles.refresh":"Refresh","roles.selectHint":"\u2190 Expand a group and select a bot to edit its role","roles.editorPlaceholder":`Enter role description, e.g.:
53
53
  You are a code reviewer for this group...`,"roles.injectModeLabel":"Injection","roles.injectModeEvery":"Every turn (default)","roles.injectModeOnce":"Only once (first turn)","roles.injectModeHint":'"Only once" injects the role at session start/rebuild and never re-sends it, saving tokens; saved instantly on change',"roles.dispatchCompletionLabel":"Topic task reporting mode","roles.dispatchCompletionEnabled":"Also leave a same-topic botmux send copy","roles.dispatchCompletionHint":"Off by default. When enabled, tasks dispatched by this bot in this group still use botmux report to inject completion into the orchestrator session and also leave a final-delivery copy via botmux send in the topic where they received the task; saved instantly","roles.configured":"Configured","roles.unconfigured":"None","roles.noChats":"No groups","roles.preview":"Preview","roles.previewEmpty":"(empty)","roles.saved":"Saved","roles.delete":"Delete","roles.save":"Save","roles.confirmDelete":"Delete this bot's role config for this group?","roles.botsWithRoles":"bots configured","roles.emptyError":"Role content cannot be empty","roles.saveFailed":"Save failed, please retry","roles.tabGroups":"By Group","roles.tabProfiles":"Profiles","roles.editorTabs":"Role settings","roles.roleTab":"Role Prompt","roles.listenerTab":"Message Listener","roles.listenerBadge":"Listener","roles.listenerEnabled":"Enable group message listener","roles.listenerName":"Listener name","roles.listenerNamePlaceholder":"e.g. Alert listener","roles.listenerReplyCardTitle":"Reply card title","roles.listenerReplyCardTitlePlaceholder":"Leave empty to use the default title","roles.listenerWorkingDir":"Working directory","roles.listenerWorkingDirPlaceholder":"Leave empty to use the bot default","roles.listenerSenderTypes":"Sender types","roles.listenerSenderUser":"Users","roles.listenerSenderBot":"Bots","roles.listenerMessageTypes":"Message types","roles.listenerExcludeSelf":"Exclude this bot","roles.listenerPrompt":"Listener prompt","roles.listenerPromptPlaceholder":"Describe which group messages should be handled and how to reply. Matches reply as a topic under the original message.","roles.listenerPromptRequired":"Prompt is required when listener is enabled","roles.listenerSenderRequired":"Select at least one sender before enabling the listener","roles.listenerSenderMode":"Match mode","roles.listenerSenderModeInclude":"Listen to selected only","roles.listenerSenderModeAllExcept":"Listen to all (except excluded)","roles.listenerSenderModeIncludeHelp":'Allow-list: only senders marked "Listen" below are handled (matched by open_id). Third-party bots are reported by app_id in the history/poll APIs and cannot be resolved to an open_id, so this mode will not catch them.',"roles.listenerSenderModeAllExceptHelp":'Blacklist: handle every message from the allowed sender types, excluding only the ones marked "Ignore" below (this bot itself is always excluded). Use this mode to listen to third-party alert bots (Argos, etc.).',"roles.listenerFilters":"Sender filters","roles.listenerMembers":"Member filters","roles.listenerBots":"Bot filters","roles.listenerMembersHint":"Display names are only for picking; open_id is saved","roles.listenerMembersEmpty":"No members loaded","roles.listenerBotsEmpty":"No bots loaded","roles.listenerSearchPlaceholder":"Search by name or open_id","roles.listenerClearSearch":"Clear search","roles.listenerSelectVisible":"Select {count}","roles.listenerClearVisible":"Clear {count}","roles.listenerSelectedCount":"{count} selected","roles.listenerFilteredCount":"{count} filtered","roles.listenerMixedMode":"mixed","roles.listenerBulkActions":"Bulk listening state","roles.listenerTargetListen":"Listen","roles.listenerTargetIgnore":"Ignore","roles.listenerConfirmDelete":"Delete this bot's message listener config for this group?","roles.listenerScopeHelp":"The listener only handles top-level group messages. Messages that explicitly mention this bot still use normal mention routing. Existing thread replies are not handled by default.","roles.listenerPreviewTitle":"Preview and Test Run","roles.listenerPreviewHint":"Preview group messages from the last 24 hours that match the current filters. Test run creates real sessions and replies through the normal path.","roles.listenerPreviewCount":"Count","roles.listenerPreviewButton":"Preview","roles.listenerRunPreviewButton":"Test run","roles.listenerPreviewEmpty":"No preview yet.","roles.listenerPreviewNoMatches":"No messages from the last 24 hours match these filters.","roles.listenerPreviewSummary":"{count} matching messages","roles.listenerRunPreviewSummary":"Test ran {count}: triggered {triggered}, running {running}, replied {replied}, failed {failed}","roles.listenerPreviewFailed":"Preview failed. Try again.","roles.listenerPreviewSender":"Sender","roles.listenerPreviewTime":"Sent at","roles.listenerPreviewMessageTitle":"Message title","roles.listenerPreviewContent":"Message content","roles.listenerRunPreviewState.triggered":"Triggered","roles.listenerRunPreviewState.running":"Running","roles.listenerRunPreviewState.replied":"Replied","roles.listenerRunPreviewState.failed":"Reply failed","roles.profileIdPlaceholder":"profile id, e.g. collab-main","roles.profileIdInvalid":"Profile id may contain letters, numbers, dots, underscores, and hyphens only; max 64; cannot be . or ..","roles.openProfile":"Open","roles.profileSearch":"Search profile","roles.profileSelectHint":"\u2190 Select or enter a profile to edit","roles.profileEmpty":"No Profiles","roles.profileEntries":"entries","roles.profileMissing":"Missing","roles.profileRuntimeHint":"Profiles are reusable suites; applying one writes a group role, not a new runtime layer.","roles.profileBots":"Bot Entries","roles.profileEditorPlaceholder":"Enter this bot's Markdown role for this profile...","roles.saveEntry":"Save Entry","roles.profileBotSelectHint":"Select a bot to edit its entry in this profile","roles.applyToGroup":"Apply To Group","roles.applyForce":"Overwrite existing group roles","roles.previewApply":"Preview Apply","roles.applyProfile":"Apply Profile","roles.applyPickBots":"Select at least one bot","roles.applyWouldRefuse":"Would refuse (group role exists)","roles.applyPreviewOk":"Can apply","roles.applyOk":"Applied","roles.applyFailed":"Failed","roles.confirmDeleteProfileEntry":"Delete this bot entry from the profile?","common.none":"None","common.loading":"Loading\u2026","common.unknown":"Unknown","common.now":"now","common.never":"never","common.all":"All","common.dropdownSearch":"Search\u2026","common.dropdownSearchEmpty":"No matches","nav.workflows":"Workflows","workflow.v3.cancel":"Cancel run","workflow.v3.cancelTitle":"Cancel this v3 workflow run","workflow.v3.cancelTerminal":"Run finished","workflow.v3.cancelling":"Cancelling\u2026","workflow.v3.cancelConfirm":`Cancel v3 workflow run {runId}?
54
54
 
55
- Completed nodes remain committed; running nodes will be interrupted.`,"workflow.v3.cancelPending":"The cancel request is durable; waiting for running nodes to drain.","workflow.v3.cancelled":"Run cancelled.","workflow.v3.cancelAlreadyTerminal":"The run reached a terminal state first; no cancel was submitted.","workflow.v3.cancelAuthRequired":"Dashboard write access is required. Run `botmux dashboard` in a terminal, open its current login link, then retry.","workflow.v3.cancelFailed":"Cancel failed: {error}"},q={zh:ve,en:ye};function z(t){if(typeof t!="string")return null;let e=t.trim().toLowerCase();return e==="zh"||e.startsWith("zh-")?"zh":e==="en"||e.startsWith("en-")?"en":null}function we(t=[]){for(let e of t){let s=z(e);if(s)return s}return"zh"}function D(t){return(e,s)=>{let o=q[t][e]??q.zh[e]??e;return s?o.replace(/\{(\w+)\}/g,(i,n)=>{let a=s[n];return a==null?`{${n}}`:String(a)}):o}}function K(t,e){return(t?z(t.getItem(I)):null)??we(e)}var A="botmux.dashboard.theme",J="botmux.dashboard.sessions.view",V="botmux.dashboard.sessions.showUnknownChats",Y="botmux.dashboard.sessions.tableColumns",Se=["select","actions"];function $(t){if(!Array.isArray(t))return[];let e=new Set(Se);return t.filter(s=>typeof s=="string"&&!e.has(s)).filter((s,o,i)=>i.indexOf(s)===o)}function Ze(t){try{let e=t?.getItem(Y);return e?$(JSON.parse(e)):[]}catch{return[]}}function Xe(t,e){try{t?.setItem(Y,JSON.stringify($(e)))}catch{}}function De(t){return t==="system"||t==="light"||t==="dark"?t:null}function Ce(t){return t==="kanban"||t==="board"||t==="topics"||t==="table"?t:null}function Q(t,e){return t==="system"?e?"dark":"light":t}function Z(t){return De(t?.getItem(A))??"dark"}function et(t){return Ce(t?.getItem(J))??"board"}function tt(t){try{let e=t?.getItem(V);return e==null?!0:e==="1"}catch{return!0}}var X="botmux.dashboard.sessions.boardOrder",p=["needs-you","working","todo","idle"];function Pe(t){if(!Array.isArray(t))return null;let e=t.filter(o=>o!=="starting");for(let o of p)e.includes(o)||e.push(o);if(e.length!==p.length)return null;let s=new Set(e);if(s.size!==e.length)return null;for(let o of p)if(!s.has(o))return null;return e.slice()}function st(t){try{let e=t?.getItem(X);return e?Pe(JSON.parse(e))??[...p]:[...p]}catch{return[...p]}}function ot(t,e){try{t?.setItem(X,JSON.stringify(e))}catch{}}function it(t,e){try{t?.setItem(J,e)}catch{}}function nt(t,e){try{t?.setItem(V,e?"1":"0")}catch{}}var ee="botmux.dashboard.sessions.createKeepOpen";function at(t){try{return t?.getItem(ee)==="1"}catch{return!1}}function rt(t,e){try{t?.setItem(ee,e?"1":"0")}catch{}}var te="botmux.dashboard.sessions.kanbanGroupBy",lt="botmux.dashboard.sessions.kanbanTeam";function Te(t){return t==="flow"||t==="team"||t==="bot"?t:null}function dt(t){return Te(t?.getItem(te))??"flow"}function ct(t,e){try{t?.setItem(te,e)}catch{}}var xe=["default","cyber","fallout"],O="botmux.dashboard.skin";function Le(t){return typeof t=="string"&&xe.includes(t)?t:null}function se(t){return Le(t?.getItem(O))??"default"}var Re="\uFF71\uFF72\uFF73\uFF74\uFF75\uFF76\uFF77\uFF78\uFF79\uFF7A\uFF7B\uFF7C\uFF7D\uFF7E\uFF7F\uFF80\uFF81\uFF82\uFF830123456789\uFF8A\uFF8B\uFF8C\uFF8D\uFF8E$#%&@*+=<>/\\",oe=["186 100% 60%","56 97% 60%","330 100% 64%","150 80% 58%"],N=[{key:"shake",dur:280},{key:"rgb",dur:340},{key:"tear",dur:400},{key:"invert",dur:220},{key:"slice",dur:320},{key:"blackout",dur:260}],ie=["ESTABLISHING NETLINK","BYPASSING ICE","DECRYPTING DATAFLOW","SYNCING BOTMUX TELEMETRY","ACCESS GRANTED"],ne="0123456789ABCDEF#<>*/=+\uFF71\uFF72\uFF73\uFF74\uFF75\uFF76\uFF77\uFF78\uFF85\uFF86\uFF87\uFF88\uFF89\uFF8A\uFF8B\uFF8C",He=3200,k=[],h=0,C=0;function _(){return typeof window<"u"&&!!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches}function B(t,e){let s="";for(let o=0;o<t;o++)s+=e[Math.floor(Math.random()*e.length)];return s}function Ie(t){let e=document.createElement("div");e.className="cyber-rain";let s=Math.max(10,Math.min(26,Math.round(window.innerWidth/70)));for(let o=0;o<s;o++){let i=document.createElement("span");i.className="cyber-rain-col",i.textContent=B(28+Math.floor(Math.random()*22),Re);let n=oe[Math.floor(Math.random()*oe.length)];i.style.cssText=`left:${(o+.5)/s*100}%;--rc:${n};--sz:${10+Math.floor(Math.random()*9)}px;--op:${(.25+Math.random()*.45).toFixed(2)};--dur:${(6+Math.random()*9).toFixed(1)}s;--delay:${(-Math.random()*12).toFixed(1)}s;`,e.appendChild(i)}t.appendChild(e)}function Ae(){if(_())return;let t=document.body,e=()=>{let s=N[Math.floor(Math.random()*N.length)],o=`cp-fx-${s.key}`;t.classList.add(o),k.push(window.setTimeout(()=>t.classList.remove(o),s.dur)),k.push(window.setTimeout(e,2400+Math.random()*4200))};k.push(window.setTimeout(e,1800+Math.random()*2600))}function Oe(){k.forEach(t=>window.clearTimeout(t)),k=[];for(let t of N)document.body.classList.remove(`cp-fx-${t.key}`)}function Me(){if(_()||document.getElementById("cyber-boot"))return;let t=document.createElement("div");t.id="cyber-boot",t.className="cyber-boot",t.setAttribute("aria-hidden","true"),t.innerHTML='<div class="cyber-boot-grid"></div><div class="cyber-loader"><div class="cyber-loader-frame"><div class="cyber-loader-head"><span>KIROSHI NETLINK</span><span class="cyber-loader-jp">\u4FB5\u5165\u4E2D</span></div><div class="cyber-loader-line"><span class="cyber-loader-prompt">&gt;</span><span class="cyber-loader-text"></span><span class="cyber-loader-cursor">_</span></div><div class="cyber-loader-stream"></div></div></div>',document.body.appendChild(t);let e=t.querySelector(".cyber-loader-text"),s=t.querySelector(".cyber-loader-stream"),o=0,i=0,n=0;h=window.setInterval(()=>{let a=ie[o];e&&(i<a.length?(i+=1,e.textContent=a.slice(0,i)+B(a.length-i,ne),e.classList.remove("done")):n<16?(n+=1,e.textContent=a,e.classList.add("done")):(o=(o+1)%ie.length,i=0,n=0)),s&&(s.textContent=B(26,ne))},50),C=window.setTimeout(()=>{window.clearInterval(h),h=0,t.remove()},He)}function Ne(){h&&(window.clearInterval(h),h=0),C&&(window.clearTimeout(C),C=0),document.getElementById("cyber-boot")?.remove()}var Be=320,ae=16,v=!0,g=0,M=0,P=!1,T=[],E=[];function Ee(){if(P)return;P=!0,v=!1,g=0;let t=_(),e="";for(let o=0;o<ae;o++){let i=o%3===0?"186 100% 52%":o%3===1?"330 100% 58%":"56 97% 52%",n=(o%2===0?1:-1)*(8+o%5*7);e+=`<span class="cyber-breach-shard" style="top:${o/ae*100}%;height:${2+o%4*3}%;--shift:${n}px;--delay:${o%8*.09}s;--dur:${(.36+o%5*.12).toFixed(2)}s;--hue:${i}"></span>`}let s=document.createElement("div");s.id="cyber-breach",s.className="cyber-breach",s.setAttribute("aria-hidden","true"),s.innerHTML=`<span class="cyber-breach-flash"></span><span class="cyber-breach-grid"></span><div class="cyber-breach-shards">${e}</div><div class="cyber-breach-banner"><span class="cyber-breach-tag">// BREACH PROTOCOL \u2014 SYSTEM OVERRIDE</span><span class="cyber-breach-caption" data-text="SYSTEM BREACH">SYSTEM BREACH</span><span class="cyber-breach-sub" data-text="NETWATCH OVERRIDE ENGAGED">NETWATCH OVERRIDE ENGAGED</span></div>`,document.body.appendChild(s),t||document.body.classList.add("cyber-breach-quake"),T.push(window.setTimeout(()=>document.body.classList.remove("cyber-breach-quake"),760)),T.push(window.setTimeout(()=>{s.remove(),P=!1},t?2600:4200))}function _e(){v=!0,g=0;let t=document.documentElement,e=()=>t.scrollHeight-(window.innerHeight+window.scrollY)<=4,s=r=>{r<=0||!e()||(g+=r,g>Be&&v&&Ee())},o=r=>s(r.deltaY),i=r=>{M=r.touches[0]?.clientY??0},n=r=>{let l=r.touches[0]?.clientY??0,c=M-l;M=l,s(c)},a=()=>{e()||(g=0,v=!0)},d=(r,l)=>{window.addEventListener(r,l,{passive:!0}),E.push([r,l])};d("wheel",o),d("touchstart",i),d("touchmove",n),d("scroll",a)}function Fe(){for(let[t,e]of E)window.removeEventListener(t,e);E=[],T.forEach(t=>window.clearTimeout(t)),T=[],document.body.classList.remove("cyber-breach-quake"),document.getElementById("cyber-breach")?.remove(),P=!1,v=!0,g=0}function re(t,e=!1){if(!(typeof document>"u")){if(!t){document.getElementById("cyber-fx")?.remove(),document.getElementById("cyber-hud")?.remove(),document.getElementById("cyber-glitch")?.remove(),Oe(),Ne(),Fe();return}if(!document.getElementById("cyber-fx")){let s=document.createElement("div");s.id="cyber-fx",s.className="cyber-fx",s.setAttribute("aria-hidden","true"),s.innerHTML='<div class="cyber-fx-grid"></div><div class="cyber-fx-scan"></div><span class="cyber-flicker"></span><span class="cyber-rollline"></span>',Ie(s),document.body.appendChild(s);let o=document.createElement("div");o.id="cyber-hud",o.className="cyber-hud",o.setAttribute("aria-hidden","true"),o.innerHTML='<span class="cyber-hud-corner tl"></span><span class="cyber-hud-corner tr"></span><span class="cyber-hud-corner bl"></span><span class="cyber-hud-corner br"></span><span class="cyber-hud-tag">NIGHT CITY // NETWATCH</span>',document.body.appendChild(o);let i=document.createElement("div");i.id="cyber-glitch",i.className="cyber-glitch",i.setAttribute("aria-hidden","true"),document.body.appendChild(i),Ae(),_e()}e&&Me()}}var Ue={openApi:"https://open.feishu.cn",accounts:"https://accounts.feishu.cn",applink:"applink.feishu.cn"},Ge={openApi:"https://open.larksuite.com",accounts:"https://accounts.larksuite.com",applink:"applink.larksuite.com"};function le(t){return t==="lark"?"lark":"feishu"}function de(t="feishu"){return t==="lark"?Ge:Ue}var U=class{locale="zh";themeMode="system";resolvedTheme="light";skin="default";authed=!0;publicReadOnly=!1;listeners=new Set;translate=D(this.locale);mediaQuery=null;init(){let e=typeof window<"u"?window:void 0;this.locale=K(e?.localStorage,je()),this.translate=D(this.locale),this.themeMode=Z(e?.localStorage),this.skin=se(e?.localStorage),this.mediaQuery=e?.matchMedia?.("(prefers-color-scheme: dark)")??null,this.mediaQuery?.addEventListener("change",()=>{this.applyTheme(),this.emit()}),this.applyTheme(),this.applySkin(),this.applyLocale()}t(e,s){return this.translate(e,s)}setLocale(e){this.locale!==e&&(this.locale=e,this.translate=D(e),window.localStorage.setItem(I,e),this.applyLocale(),this.emit())}get theme(){return this.skin==="default"?this.themeMode:this.skin}setTheme(e){let s=e==="system"||e==="light"||e==="dark",o=s?"default":e,i=o!==this.skin;s&&this.themeMode!==e&&(this.themeMode=e,window.localStorage.setItem(A,this.themeMode)),i&&(this.skin=o,window.localStorage.setItem(O,this.skin)),this.applyTheme(),this.applySkin(i),this.emit()}on(e){return this.listeners.add(e),()=>this.listeners.delete(e)}emit(){for(let e of this.listeners)e()}applyTheme(){this.resolvedTheme=Q(this.themeMode,!!this.mediaQuery?.matches);let e=this.skin==="default"?this.resolvedTheme:We[this.skin];document.documentElement.dataset.theme=e,document.documentElement.dataset.themeMode=this.themeMode}applySkin(e=!1){document.documentElement.dataset.skin=this.skin,re(this.skin==="cyber",e)}applyLocale(){document.documentElement.lang=this.locale==="zh"?"zh-CN":"en"}},We={default:"light",cyber:"dark",fallout:"dark"};function je(){return typeof navigator>"u"?[]:navigator.languages?.length?navigator.languages:[navigator.language].filter(Boolean)}var qe=new U;function m(t,e){return qe.t(t,e)}function ue(t){return t.replace(/[&<>"']/g,e=>({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"})[e])}function vt(t){if(!t)return"-";let e=Date.now()-t;return e<6e4?m("common.now"):e<36e5?Math.floor(e/6e4)+"m":e<864e5?Math.floor(e/36e5)+"h":Math.floor(e/864e5)+"d"}var ce=[{c1:"#5be3ff",c2:"#4f8bff"},{c1:"#b89bff",c2:"#6b4df0"},{c1:"#7ce0c3",c2:"#2e9e8f"},{c1:"#8fb4ff",c2:"#3b62d8"},{c1:"#ffd28f",c2:"#d8783b"},{c1:"#7df0a8",c2:"#1f9e63"},{c1:"#9fd0ff",c2:"#4878c8"},{c1:"#ff9fb8",c2:"#d84a78"}];function pe(t){let e=0,s=String(t??"");for(let n=0;n<s.length;n++)e=e*31+s.charCodeAt(n)>>>0;let{c1:o,c2:i}=ce[e%ce.length];return`--c1:${o};--c2:${i}`}var y=new Map,w=new Map;function ze(t,e){return e?y.get(e):t?w.get(String(t)):void 0}function yt(t,e){return t&&t.startsWith("cli_")?`${de(le(e)).openApi}/app/${encodeURIComponent(t)}`:null}function wt(t){let e=t.name??"",s=t.avatarUrl??ze(t.name,t.larkAppId),o=t.size==="sm"?" orb-avatar-sm":"",i=s?" orb-has-img":"",n=t.dot?`<i class="orb-dot orb-dot-${t.dot}"></i>`:"",a=s?`<img class="orb-img" src="${ue(s)}" alt="" decoding="async" referrerpolicy="no-referrer" onerror="this.closest('.orb-avatar')?.classList.remove('orb-has-img');this.remove()"/>`:"";return`<span class="orb-avatar${o}${i}" style="${pe(e)}" aria-hidden="true">${a}${n}</span>`}function Ke(t){return t?L.get(t):void 0}function St(t){let e=t.name??t.chatId??"",s=t.avatarUrl??Ke(t.chatId),o=t.size==="sm"?" orb-avatar-sm":"",i=s?" orb-has-img":"",n=s?`<img class="orb-img" src="${ue(s)}" alt="" decoding="async" referrerpolicy="no-referrer" onerror="this.closest('.orb-avatar')?.classList.remove('orb-has-img');this.remove()"/>`:"";return`<span class="orb-avatar orb-square${o}${i}" style="${pe(e)}" aria-hidden="true">${n}</span>`}var S=new Map,x=new Map,L=new Map,F=null,ge="botmux.avatarCache.v1";function Je(){try{let t=typeof window<"u"?window.localStorage.getItem(ge):null;if(!t)return;let e=JSON.parse(t);for(let[s,o]of Object.entries(e.botByAppId??{}))y.set(s,o);for(let[s,o]of Object.entries(e.botByName??{}))w.set(s,o);for(let[s,o]of Object.entries(e.chatById??{}))L.set(s,o);for(let[s,o]of Object.entries(e.nameByAppId??{}))S.set(s,o);for(let[s,o]of Object.entries(e.chatNameById??{}))x.set(s,o)}catch{}}function he(){try{if(typeof window>"u")return;window.localStorage.setItem(ge,JSON.stringify({botByAppId:Object.fromEntries(y),botByName:Object.fromEntries(w),chatById:Object.fromEntries(L),nameByAppId:Object.fromEntries(S),chatNameById:Object.fromEntries(x)}))}catch{}}Je();function Dt(t,e,s){!t||!s||(y.set(t,s),e&&w.set(String(e),s),he())}function Ct(){return F??=(async()=>{try{let t=await j();for(let e of t.bots??[])e.larkAppId&&e.botName&&e.botName!==e.larkAppId&&S.set(e.larkAppId,String(e.botName)),e.botAvatarUrl&&(e.larkAppId&&y.set(e.larkAppId,String(e.botAvatarUrl)),e.botName&&w.set(String(e.botName),String(e.botAvatarUrl)));for(let e of t.chats??[])e.chatId&&e.name&&x.set(e.chatId,String(e.name)),e.chatId&&e.avatar&&L.set(e.chatId,String(e.avatar));he()}catch{F=null}})(),F}function Pt(t){return t?S.get(t):void 0}function Tt(t){let e=t.larkAppId?S.get(t.larkAppId):void 0;return e||(t.botName&&t.botName!==t.larkAppId?String(t.botName):String(t.botName??t.larkAppId??"-"))}function xt(t){let e=String(t.chatDisplayName??"").trim();return e||t.chatId&&x.get(t.chatId)||null}function Lt(t){let e=String(t??"");return e.replace(/^(?:@\S+\s*)+/,"").trim()||e}function Rt(t){return t.status==="closed"?null:t.agentAttention?.reason?t.agentAttention.reason:t.agentAttention?m("sessions.board.signalAgent"):t.pendingRepo?m("sessions.board.signalRepo"):t.tuiPromptActive?m("sessions.board.signalPrompt"):t.status==="limited"?m("sessions.board.signalLimited"):t.status==="stalled"?m("sessions.board.signalStalled"):null}function Ht(t){let e=Number(t.agentAttention?.at??t.lastMessageAt??0);if(Number.isFinite(e))return e;let s=Number(t.lastMessageAt??0);return Number.isFinite(s)?s:0}export{b as a,Ve as b,me as c,j as d,z as e,Ze as f,Xe as g,Ce as h,et as i,tt as j,st as k,ot as l,it as m,nt as n,at as o,rt as p,lt as q,dt as r,ct as s,qe as t,m as u,ue as v,vt as w,pe as x,yt as y,wt as z,Ke as A,St as B,Dt as C,Ct as D,Pt as E,Tt as F,xt as G,Lt as H,Rt as I,Ht as J};
55
+ Completed nodes remain committed; running nodes will be interrupted.`,"workflow.v3.cancelPending":"The cancel request is durable; waiting for running nodes to drain.","workflow.v3.cancelled":"Run cancelled.","workflow.v3.cancelAlreadyTerminal":"The run reached a terminal state first; no cancel was submitted.","workflow.v3.cancelAuthRequired":"Dashboard write access is required. Run `botmux dashboard` in a terminal, open its current login link, then retry.","workflow.v3.cancelFailed":"Cancel failed: {error}"},U={zh:be,en:fe};function G(e){if(typeof e!="string")return null;let t=e.trim().toLowerCase();return t==="zh"||t.startsWith("zh-")?"zh":t==="en"||t.startsWith("en-")?"en":null}function ke(e=[]){for(let t of e){let s=G(t);if(s)return s}return"zh"}function y(e){return(t,s)=>{let o=U[e][t]??U.zh[t]??t;return s?o.replace(/\{(\w+)\}/g,(n,i)=>{let a=s[i];return a==null?`{${i}}`:String(a)}):o}}function W(e,t){return(e?G(e.getItem(x)):null)??ke(t)}var L="botmux.dashboard.theme",j="botmux.dashboard.sessions.view",q="botmux.dashboard.sessions.showUnknownChats",z="botmux.dashboard.sessions.tableColumns",ve=["select","actions"];function K(e){if(!Array.isArray(e))return[];let t=new Set(ve);return e.filter(s=>typeof s=="string"&&!t.has(s)).filter((s,o,n)=>n.indexOf(s)===o)}function Je(e){try{let t=e?.getItem(z);return t?K(JSON.parse(t)):[]}catch{return[]}}function Ve(e,t){try{e?.setItem(z,JSON.stringify(K(t)))}catch{}}function ye(e){return e==="system"||e==="light"||e==="dark"?e:null}function we(e){return e==="kanban"||e==="board"||e==="topics"||e==="table"?e:null}function J(e,t){return e==="system"?t?"dark":"light":e}function V(e){return ye(e?.getItem(L))??"dark"}function Ye(e){return we(e?.getItem(j))??"board"}function $e(e){try{let t=e?.getItem(q);return t==null?!0:t==="1"}catch{return!0}}var Y="botmux.dashboard.sessions.boardOrder",d=["needs-you","working","todo","idle"];function De(e){if(!Array.isArray(e))return null;let t=e.filter(o=>o!=="starting");for(let o of d)t.includes(o)||t.push(o);if(t.length!==d.length)return null;let s=new Set(t);if(s.size!==t.length)return null;for(let o of d)if(!s.has(o))return null;return t.slice()}function Qe(e){try{let t=e?.getItem(Y);return t?De(JSON.parse(t))??[...d]:[...d]}catch{return[...d]}}function Xe(e,t){try{e?.setItem(Y,JSON.stringify(t))}catch{}}function Ze(e,t){try{e?.setItem(j,t)}catch{}}function et(e,t){try{e?.setItem(q,t?"1":"0")}catch{}}var $="botmux.dashboard.sessions.createKeepOpen";function tt(e){try{return e?.getItem($)==="1"}catch{return!1}}function st(e,t){try{e?.setItem($,t?"1":"0")}catch{}}var Q="botmux.dashboard.sessions.kanbanGroupBy",ot="botmux.dashboard.sessions.kanbanTeam";function Se(e){return e==="flow"||e==="team"||e==="bot"?e:null}function nt(e){return Se(e?.getItem(Q))??"flow"}function it(e,t){try{e?.setItem(Q,t)}catch{}}var Ce=["default","cyber","fallout"],R="botmux.dashboard.skin";function Pe(e){return typeof e=="string"&&Ce.includes(e)?e:null}function X(e){return Pe(e?.getItem(R))??"default"}var Te="\uFF71\uFF72\uFF73\uFF74\uFF75\uFF76\uFF77\uFF78\uFF79\uFF7A\uFF7B\uFF7C\uFF7D\uFF7E\uFF7F\uFF80\uFF81\uFF82\uFF830123456789\uFF8A\uFF8B\uFF8C\uFF8D\uFF8E$#%&@*+=<>/\\",Z=["186 100% 60%","56 97% 60%","330 100% 64%","150 80% 58%"],I=[{key:"shake",dur:280},{key:"rgb",dur:340},{key:"tear",dur:400},{key:"invert",dur:220},{key:"slice",dur:320},{key:"blackout",dur:260}],ee=["ESTABLISHING NETLINK","BYPASSING ICE","DECRYPTING DATAFLOW","SYNCING BOTMUX TELEMETRY","ACCESS GRANTED"],te="0123456789ABCDEF#<>*/=+\uFF71\uFF72\uFF73\uFF74\uFF75\uFF76\uFF77\uFF78\uFF85\uFF86\uFF87\uFF88\uFF89\uFF8A\uFF8B\uFF8C",xe=3200,m=[],u=0,w=0;function M(){return typeof window<"u"&&!!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches}function A(e,t){let s="";for(let o=0;o<e;o++)s+=t[Math.floor(Math.random()*t.length)];return s}function Le(e){let t=document.createElement("div");t.className="cyber-rain";let s=Math.max(10,Math.min(26,Math.round(window.innerWidth/70)));for(let o=0;o<s;o++){let n=document.createElement("span");n.className="cyber-rain-col",n.textContent=A(28+Math.floor(Math.random()*22),Te);let i=Z[Math.floor(Math.random()*Z.length)];n.style.cssText=`left:${(o+.5)/s*100}%;--rc:${i};--sz:${10+Math.floor(Math.random()*9)}px;--op:${(.25+Math.random()*.45).toFixed(2)};--dur:${(6+Math.random()*9).toFixed(1)}s;--delay:${(-Math.random()*12).toFixed(1)}s;`,t.appendChild(n)}e.appendChild(t)}function Re(){if(M())return;let e=document.body,t=()=>{let s=I[Math.floor(Math.random()*I.length)],o=`cp-fx-${s.key}`;e.classList.add(o),m.push(window.setTimeout(()=>e.classList.remove(o),s.dur)),m.push(window.setTimeout(t,2400+Math.random()*4200))};m.push(window.setTimeout(t,1800+Math.random()*2600))}function He(){m.forEach(e=>window.clearTimeout(e)),m=[];for(let e of I)document.body.classList.remove(`cp-fx-${e.key}`)}function Ie(){if(M()||document.getElementById("cyber-boot"))return;let e=document.createElement("div");e.id="cyber-boot",e.className="cyber-boot",e.setAttribute("aria-hidden","true"),e.innerHTML='<div class="cyber-boot-grid"></div><div class="cyber-loader"><div class="cyber-loader-frame"><div class="cyber-loader-head"><span>KIROSHI NETLINK</span><span class="cyber-loader-jp">\u4FB5\u5165\u4E2D</span></div><div class="cyber-loader-line"><span class="cyber-loader-prompt">&gt;</span><span class="cyber-loader-text"></span><span class="cyber-loader-cursor">_</span></div><div class="cyber-loader-stream"></div></div></div>',document.body.appendChild(e);let t=e.querySelector(".cyber-loader-text"),s=e.querySelector(".cyber-loader-stream"),o=0,n=0,i=0;u=window.setInterval(()=>{let a=ee[o];t&&(n<a.length?(n+=1,t.textContent=a.slice(0,n)+A(a.length-n,te),t.classList.remove("done")):i<16?(i+=1,t.textContent=a,t.classList.add("done")):(o=(o+1)%ee.length,n=0,i=0)),s&&(s.textContent=A(26,te))},50),w=window.setTimeout(()=>{window.clearInterval(u),u=0,e.remove()},xe)}function Ae(){u&&(window.clearInterval(u),u=0),w&&(window.clearTimeout(w),w=0),document.getElementById("cyber-boot")?.remove()}var Oe=320,se=16,b=!0,c=0,H=0,D=!1,S=[],O=[];function Me(){if(D)return;D=!0,b=!1,c=0;let e=M(),t="";for(let o=0;o<se;o++){let n=o%3===0?"186 100% 52%":o%3===1?"330 100% 58%":"56 97% 52%",i=(o%2===0?1:-1)*(8+o%5*7);t+=`<span class="cyber-breach-shard" style="top:${o/se*100}%;height:${2+o%4*3}%;--shift:${i}px;--delay:${o%8*.09}s;--dur:${(.36+o%5*.12).toFixed(2)}s;--hue:${n}"></span>`}let s=document.createElement("div");s.id="cyber-breach",s.className="cyber-breach",s.setAttribute("aria-hidden","true"),s.innerHTML=`<span class="cyber-breach-flash"></span><span class="cyber-breach-grid"></span><div class="cyber-breach-shards">${t}</div><div class="cyber-breach-banner"><span class="cyber-breach-tag">// BREACH PROTOCOL \u2014 SYSTEM OVERRIDE</span><span class="cyber-breach-caption" data-text="SYSTEM BREACH">SYSTEM BREACH</span><span class="cyber-breach-sub" data-text="NETWATCH OVERRIDE ENGAGED">NETWATCH OVERRIDE ENGAGED</span></div>`,document.body.appendChild(s),e||document.body.classList.add("cyber-breach-quake"),S.push(window.setTimeout(()=>document.body.classList.remove("cyber-breach-quake"),760)),S.push(window.setTimeout(()=>{s.remove(),D=!1},e?2600:4200))}function Ne(){b=!0,c=0;let e=document.documentElement,t=()=>e.scrollHeight-(window.innerHeight+window.scrollY)<=4,s=r=>{r<=0||!t()||(c+=r,c>Oe&&b&&Me())},o=r=>s(r.deltaY),n=r=>{H=r.touches[0]?.clientY??0},i=r=>{let p=r.touches[0]?.clientY??0,ue=H-p;H=p,s(ue)},a=()=>{t()||(c=0,b=!0)},l=(r,p)=>{window.addEventListener(r,p,{passive:!0}),O.push([r,p])};l("wheel",o),l("touchstart",n),l("touchmove",i),l("scroll",a)}function Be(){for(let[e,t]of O)window.removeEventListener(e,t);O=[],S.forEach(e=>window.clearTimeout(e)),S=[],document.body.classList.remove("cyber-breach-quake"),document.getElementById("cyber-breach")?.remove(),D=!1,b=!0,c=0}function oe(e,t=!1){if(!(typeof document>"u")){if(!e){document.getElementById("cyber-fx")?.remove(),document.getElementById("cyber-hud")?.remove(),document.getElementById("cyber-glitch")?.remove(),He(),Ae(),Be();return}if(!document.getElementById("cyber-fx")){let s=document.createElement("div");s.id="cyber-fx",s.className="cyber-fx",s.setAttribute("aria-hidden","true"),s.innerHTML='<div class="cyber-fx-grid"></div><div class="cyber-fx-scan"></div><span class="cyber-flicker"></span><span class="cyber-rollline"></span>',Le(s),document.body.appendChild(s);let o=document.createElement("div");o.id="cyber-hud",o.className="cyber-hud",o.setAttribute("aria-hidden","true"),o.innerHTML='<span class="cyber-hud-corner tl"></span><span class="cyber-hud-corner tr"></span><span class="cyber-hud-corner bl"></span><span class="cyber-hud-corner br"></span><span class="cyber-hud-tag">NIGHT CITY // NETWATCH</span>',document.body.appendChild(o);let n=document.createElement("div");n.id="cyber-glitch",n.className="cyber-glitch",n.setAttribute("aria-hidden","true"),document.body.appendChild(n),Re(),Ne()}t&&Ie()}}var Ee={openApi:"https://open.feishu.cn",accounts:"https://accounts.feishu.cn",applink:"applink.feishu.cn"},_e={openApi:"https://open.larksuite.com",accounts:"https://accounts.larksuite.com",applink:"applink.larksuite.com"};function ne(e){return e==="lark"?"lark":"feishu"}function ie(e="feishu"){return e==="lark"?_e:Ee}var B=class{locale="zh";themeMode="system";resolvedTheme="light";skin="default";authed=!0;publicReadOnly=!1;listeners=new Set;translate=y(this.locale);mediaQuery=null;init(){let t=typeof window<"u"?window:void 0;this.locale=W(t?.localStorage,Ue()),this.translate=y(this.locale),this.themeMode=V(t?.localStorage),this.skin=X(t?.localStorage),this.mediaQuery=t?.matchMedia?.("(prefers-color-scheme: dark)")??null,this.mediaQuery?.addEventListener("change",()=>{this.applyTheme(),this.emit()}),this.applyTheme(),this.applySkin(),this.applyLocale()}t(t,s){return this.translate(t,s)}setLocale(t){this.locale!==t&&(this.locale=t,this.translate=y(t),window.localStorage.setItem(x,t),this.applyLocale(),this.emit())}get theme(){return this.skin==="default"?this.themeMode:this.skin}setTheme(t){let s=t==="system"||t==="light"||t==="dark",o=s?"default":t,n=o!==this.skin;s&&this.themeMode!==t&&(this.themeMode=t,window.localStorage.setItem(L,this.themeMode)),n&&(this.skin=o,window.localStorage.setItem(R,this.skin)),this.applyTheme(),this.applySkin(n),this.emit()}on(t){return this.listeners.add(t),()=>this.listeners.delete(t)}emit(){for(let t of this.listeners)t()}applyTheme(){this.resolvedTheme=J(this.themeMode,!!this.mediaQuery?.matches);let t=this.skin==="default"?this.resolvedTheme:Fe[this.skin];document.documentElement.dataset.theme=t,document.documentElement.dataset.themeMode=this.themeMode}applySkin(t=!1){document.documentElement.dataset.skin=this.skin,oe(this.skin==="cyber",t)}applyLocale(){document.documentElement.lang=this.locale==="zh"?"zh-CN":"en"}},Fe={default:"light",cyber:"dark",fallout:"dark"};function Ue(){return typeof navigator>"u"?[]:navigator.languages?.length?navigator.languages:[navigator.language].filter(Boolean)}var Ge=new B;function g(e,t){return Ge.t(e,t)}function re(e){return e.replace(/[&<>"']/g,t=>({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"})[t])}function ht(e){if(!e)return"-";let t=Date.now()-e;return t<6e4?g("common.now"):t<36e5?Math.floor(t/6e4)+"m":t<864e5?Math.floor(t/36e5)+"h":Math.floor(t/864e5)+"d"}var ae=[{c1:"#5be3ff",c2:"#4f8bff"},{c1:"#b89bff",c2:"#6b4df0"},{c1:"#7ce0c3",c2:"#2e9e8f"},{c1:"#8fb4ff",c2:"#3b62d8"},{c1:"#ffd28f",c2:"#d8783b"},{c1:"#7df0a8",c2:"#1f9e63"},{c1:"#9fd0ff",c2:"#4878c8"},{c1:"#ff9fb8",c2:"#d84a78"}];function le(e){let t=0,s=String(e??"");for(let i=0;i<s.length;i++)t=t*31+s.charCodeAt(i)>>>0;let{c1:o,c2:n}=ae[t%ae.length];return`--c1:${o};--c2:${n}`}var f=new Map,k=new Map;function We(e,t){return t?f.get(t):e?k.get(String(e)):void 0}function mt(e,t){return e&&e.startsWith("cli_")?`${ie(ne(t)).openApi}/app/${encodeURIComponent(e)}`:null}function bt(e){let t=e.name??"",s=e.avatarUrl??We(e.name,e.larkAppId),o=e.size==="sm"?" orb-avatar-sm":"",n=s?" orb-has-img":"",i=e.dot?`<i class="orb-dot orb-dot-${e.dot}"></i>`:"",a=s?`<img class="orb-img" src="${re(s)}" alt="" decoding="async" referrerpolicy="no-referrer" onerror="this.closest('.orb-avatar')?.classList.remove('orb-has-img');this.remove()"/>`:"";return`<span class="orb-avatar${o}${n}" style="${le(t)}" aria-hidden="true">${a}${i}</span>`}function je(e){return e?P.get(e):void 0}function ft(e){let t=e.name??e.chatId??"",s=e.avatarUrl??je(e.chatId),o=e.size==="sm"?" orb-avatar-sm":"",n=s?" orb-has-img":"",i=s?`<img class="orb-img" src="${re(s)}" alt="" decoding="async" referrerpolicy="no-referrer" onerror="this.closest('.orb-avatar')?.classList.remove('orb-has-img');this.remove()"/>`:"";return`<span class="orb-avatar orb-square${o}${n}" style="${le(t)}" aria-hidden="true">${i}</span>`}var v=new Map,C=new Map,P=new Map,N=null,de="botmux.avatarCache.v1";function qe(){try{let e=typeof window<"u"?window.localStorage.getItem(de):null;if(!e)return;let t=JSON.parse(e);for(let[s,o]of Object.entries(t.botByAppId??{}))f.set(s,o);for(let[s,o]of Object.entries(t.botByName??{}))k.set(s,o);for(let[s,o]of Object.entries(t.chatById??{}))P.set(s,o);for(let[s,o]of Object.entries(t.nameByAppId??{}))v.set(s,o);for(let[s,o]of Object.entries(t.chatNameById??{}))C.set(s,o)}catch{}}function ce(){try{if(typeof window>"u")return;window.localStorage.setItem(de,JSON.stringify({botByAppId:Object.fromEntries(f),botByName:Object.fromEntries(k),chatById:Object.fromEntries(P),nameByAppId:Object.fromEntries(v),chatNameById:Object.fromEntries(C)}))}catch{}}qe();function kt(e,t,s){!e||!s||(f.set(e,s),t&&k.set(String(t),s),ce())}function vt(){return N??=(async()=>{try{let e=await F();for(let t of e.bots??[])t.larkAppId&&t.botName&&t.botName!==t.larkAppId&&v.set(t.larkAppId,String(t.botName)),t.botAvatarUrl&&(t.larkAppId&&f.set(t.larkAppId,String(t.botAvatarUrl)),t.botName&&k.set(String(t.botName),String(t.botAvatarUrl)));for(let t of e.chats??[])t.chatId&&t.name&&C.set(t.chatId,String(t.name)),t.chatId&&t.avatar&&P.set(t.chatId,String(t.avatar));ce()}catch{N=null}})(),N}function yt(e){return e?v.get(e):void 0}function wt(e){let t=e.larkAppId?v.get(e.larkAppId):void 0;return t||(e.botName&&e.botName!==e.larkAppId?String(e.botName):String(e.botName??e.larkAppId??"-"))}function Dt(e){let t=String(e.chatDisplayName??"").trim();return t||e.chatId&&C.get(e.chatId)||null}function St(e){let t=String(e??"");return t.replace(/^(?:@\S+\s*)+/,"").trim()||t}function Ct(e){return e.status==="closed"?null:e.agentAttention?.reason?e.agentAttention.reason:e.agentAttention?g("sessions.board.signalAgent"):e.pendingRepo?g("sessions.board.signalRepo"):e.tuiPromptActive?g("sessions.board.signalPrompt"):e.status==="limited"?g("sessions.board.signalLimited"):e.status==="stalled"?g("sessions.board.signalStalled"):null}function Pt(e){let t=Number(e.agentAttention?.at??e.lastMessageAt??0);if(Number.isFinite(t))return t;let s=Number(e.lastMessageAt??0);return Number.isFinite(s)?s:0}export{ge as a,F as b,G as c,Je as d,Ve as e,we as f,Ye as g,$e as h,Qe as i,Xe as j,Ze as k,et as l,tt as m,st as n,ot as o,nt as p,it as q,Ge as r,g as s,re as t,ht as u,le as v,mt as w,bt as x,je as y,ft as z,kt as A,vt as B,yt as C,wt as D,Dt as E,St as F,Ct as G,Pt as H};