botmux 3.4.3 → 3.5.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.
- package/README.en.md +10 -7
- package/README.md +11 -6
- package/dist/adapters/backend/herdr-backend.d.ts +43 -6
- package/dist/adapters/backend/herdr-backend.d.ts.map +1 -1
- package/dist/adapters/backend/herdr-backend.js +362 -28
- package/dist/adapters/backend/herdr-backend.js.map +1 -1
- package/dist/adapters/backend/reproduce-command.d.ts +39 -0
- package/dist/adapters/backend/reproduce-command.d.ts.map +1 -0
- package/dist/adapters/backend/reproduce-command.js +63 -0
- package/dist/adapters/backend/reproduce-command.js.map +1 -0
- package/dist/adapters/backend/session-backend-selector.d.ts +10 -1
- package/dist/adapters/backend/session-backend-selector.d.ts.map +1 -1
- package/dist/adapters/backend/session-backend-selector.js +73 -4
- package/dist/adapters/backend/session-backend-selector.js.map +1 -1
- package/dist/adapters/backend/types.d.ts +16 -0
- package/dist/adapters/backend/types.d.ts.map +1 -1
- package/dist/adapters/backend/types.js.map +1 -1
- package/dist/adapters/cli/pi-initial-prompt.d.ts.map +1 -1
- package/dist/adapters/cli/pi-initial-prompt.js +5 -1
- package/dist/adapters/cli/pi-initial-prompt.js.map +1 -1
- package/dist/adapters/cli/traex.d.ts.map +1 -1
- package/dist/adapters/cli/traex.js +5 -0
- package/dist/adapters/cli/traex.js.map +1 -1
- package/dist/adapters/cli/types.d.ts +3 -3
- package/dist/adapters/cli/types.d.ts.map +1 -1
- package/dist/adapters/hook-installer.d.ts +7 -0
- package/dist/adapters/hook-installer.d.ts.map +1 -1
- package/dist/adapters/hook-installer.js +56 -0
- package/dist/adapters/hook-installer.js.map +1 -1
- package/dist/bot-registry.d.ts +13 -0
- package/dist/bot-registry.d.ts.map +1 -1
- package/dist/bot-registry.js +118 -2
- package/dist/bot-registry.js.map +1 -1
- package/dist/cli/capabilities.d.ts +24 -0
- package/dist/cli/capabilities.d.ts.map +1 -0
- package/dist/cli/capabilities.js +25 -0
- package/dist/cli/capabilities.js.map +1 -0
- package/dist/cli/create-group-resolver.d.ts +24 -0
- package/dist/cli/create-group-resolver.d.ts.map +1 -1
- package/dist/cli/create-group-resolver.js +23 -0
- package/dist/cli/create-group-resolver.js.map +1 -1
- package/dist/cli/daemon-lifecycle-env.d.ts +5 -7
- package/dist/cli/daemon-lifecycle-env.d.ts.map +1 -1
- package/dist/cli/daemon-lifecycle-env.js +13 -7
- package/dist/cli/daemon-lifecycle-env.js.map +1 -1
- package/dist/cli/exact-chat-grant-client.d.ts +48 -0
- package/dist/cli/exact-chat-grant-client.d.ts.map +1 -0
- package/dist/cli/exact-chat-grant-client.js +108 -0
- package/dist/cli/exact-chat-grant-client.js.map +1 -0
- package/dist/cli/exact-chat-grant.d.ts +18 -0
- package/dist/cli/exact-chat-grant.d.ts.map +1 -0
- package/dist/cli/exact-chat-grant.js +97 -0
- package/dist/cli/exact-chat-grant.js.map +1 -0
- package/dist/cli.d.ts +10 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +770 -126
- package/dist/cli.js.map +1 -1
- package/dist/codex-rpc-engine.d.ts +26 -0
- package/dist/codex-rpc-engine.d.ts.map +1 -1
- package/dist/codex-rpc-engine.js +113 -2
- package/dist/codex-rpc-engine.js.map +1 -1
- package/dist/config.d.ts +16 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +16 -0
- package/dist/config.js.map +1 -1
- package/dist/core/bot-live-control.d.ts +41 -0
- package/dist/core/bot-live-control.d.ts.map +1 -0
- package/dist/core/bot-live-control.js +135 -0
- package/dist/core/bot-live-control.js.map +1 -0
- package/dist/core/command-handler.d.ts.map +1 -1
- package/dist/core/command-handler.js +28 -8
- package/dist/core/command-handler.js.map +1 -1
- package/dist/core/daemon-config-fence.d.ts +8 -0
- package/dist/core/daemon-config-fence.d.ts.map +1 -0
- package/dist/core/daemon-config-fence.js +13 -0
- package/dist/core/daemon-config-fence.js.map +1 -0
- package/dist/core/dashboard-events.d.ts +5 -0
- package/dist/core/dashboard-events.d.ts.map +1 -1
- package/dist/core/dashboard-events.js.map +1 -1
- package/dist/core/dashboard-ipc-server.d.ts +21 -2
- package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
- package/dist/core/dashboard-ipc-server.js +232 -5
- package/dist/core/dashboard-ipc-server.js.map +1 -1
- package/dist/core/dispatch-registry.d.ts +12 -0
- package/dist/core/dispatch-registry.d.ts.map +1 -0
- package/dist/core/dispatch-registry.js +33 -0
- package/dist/core/dispatch-registry.js.map +1 -0
- package/dist/core/dispatch.d.ts +99 -0
- package/dist/core/dispatch.d.ts.map +1 -1
- package/dist/core/dispatch.js +136 -0
- package/dist/core/dispatch.js.map +1 -1
- package/dist/core/maintenance.d.ts.map +1 -1
- package/dist/core/maintenance.js +10 -3
- package/dist/core/maintenance.js.map +1 -1
- package/dist/core/persistent-backend.d.ts +16 -2
- package/dist/core/persistent-backend.d.ts.map +1 -1
- package/dist/core/persistent-backend.js +40 -0
- package/dist/core/persistent-backend.js.map +1 -1
- package/dist/core/session-discovery.d.ts +8 -1
- package/dist/core/session-discovery.d.ts.map +1 -1
- package/dist/core/session-discovery.js +140 -8
- package/dist/core/session-discovery.js.map +1 -1
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +12 -8
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/session-title.d.ts +8 -0
- package/dist/core/session-title.d.ts.map +1 -1
- package/dist/core/session-title.js +54 -0
- package/dist/core/session-title.js.map +1 -1
- package/dist/core/terminal-write-auth.d.ts +15 -0
- package/dist/core/terminal-write-auth.d.ts.map +1 -1
- package/dist/core/terminal-write-auth.js +20 -0
- package/dist/core/terminal-write-auth.js.map +1 -1
- package/dist/core/trigger-session.d.ts.map +1 -1
- package/dist/core/trigger-session.js +3 -2
- package/dist/core/trigger-session.js.map +1 -1
- package/dist/core/types.d.ts +33 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/core/worker-pool.d.ts +27 -8
- package/dist/core/worker-pool.d.ts.map +1 -1
- package/dist/core/worker-pool.js +389 -19
- package/dist/core/worker-pool.js.map +1 -1
- package/dist/daemon.d.ts +4 -2
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +397 -26
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/bot-onboarding.d.ts +127 -1
- package/dist/dashboard/bot-onboarding.d.ts.map +1 -1
- package/dist/dashboard/bot-onboarding.js +1104 -25
- package/dist/dashboard/bot-onboarding.js.map +1 -1
- package/dist/dashboard/debug-terminal.d.ts +18 -0
- package/dist/dashboard/debug-terminal.d.ts.map +1 -0
- package/dist/dashboard/debug-terminal.js +338 -0
- package/dist/dashboard/debug-terminal.js.map +1 -0
- package/dist/dashboard/public-redact.d.ts +2 -0
- package/dist/dashboard/public-redact.d.ts.map +1 -1
- package/dist/dashboard/public-redact.js +12 -3
- package/dist/dashboard/public-redact.js.map +1 -1
- package/dist/dashboard/registry.d.ts +8 -0
- package/dist/dashboard/registry.d.ts.map +1 -1
- package/dist/dashboard/registry.js +13 -0
- package/dist/dashboard/registry.js.map +1 -1
- package/dist/dashboard/settings-write-applier.d.ts +47 -1
- package/dist/dashboard/settings-write-applier.d.ts.map +1 -1
- package/dist/dashboard/settings-write-applier.js +102 -1
- package/dist/dashboard/settings-write-applier.js.map +1 -1
- package/dist/dashboard/web/app.d.ts.map +1 -1
- package/dist/dashboard/web/app.js +2 -0
- package/dist/dashboard/web/app.js.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.d.ts +1 -0
- package/dist/dashboard/web/bot-defaults-page.d.ts.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.js +24 -5
- package/dist/dashboard/web/bot-defaults-page.js.map +1 -1
- package/dist/dashboard/web/bot-defaults.d.ts +15 -0
- package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
- package/dist/dashboard/web/bot-defaults.js +19 -0
- package/dist/dashboard/web/bot-defaults.js.map +1 -1
- package/dist/dashboard/web/i18n.d.ts.map +1 -1
- package/dist/dashboard/web/i18n.js +76 -6
- package/dist/dashboard/web/i18n.js.map +1 -1
- package/dist/dashboard/web/icon-tooltip.d.ts +3 -0
- package/dist/dashboard/web/icon-tooltip.d.ts.map +1 -0
- package/dist/dashboard/web/icon-tooltip.js +108 -0
- package/dist/dashboard/web/icon-tooltip.js.map +1 -0
- package/dist/dashboard/web/sessions-kanban.js +2 -2
- package/dist/dashboard/web/sessions-kanban.js.map +1 -1
- package/dist/dashboard/web/sessions-page.d.ts.map +1 -1
- package/dist/dashboard/web/sessions-page.js +48 -9
- package/dist/dashboard/web/sessions-page.js.map +1 -1
- package/dist/dashboard/web/sessions.d.ts +2 -0
- package/dist/dashboard/web/sessions.d.ts.map +1 -1
- package/dist/dashboard/web/sessions.js +46 -2
- package/dist/dashboard/web/sessions.js.map +1 -1
- package/dist/dashboard/web/settings-page.d.ts +78 -0
- package/dist/dashboard/web/settings-page.d.ts.map +1 -1
- package/dist/dashboard/web/settings-page.js +88 -1
- package/dist/dashboard/web/settings-page.js.map +1 -1
- package/dist/dashboard/web/store.d.ts +2 -0
- package/dist/dashboard/web/store.d.ts.map +1 -1
- package/dist/dashboard/web/store.js +13 -1
- package/dist/dashboard/web/store.js.map +1 -1
- package/dist/dashboard-web/app.js +1 -1
- package/dist/dashboard-web/chunks/bot-defaults-page-O376WSER.js +5 -0
- package/dist/dashboard-web/chunks/{chunk-JNRSPKLS.js → chunk-EJDYUINZ.js} +1 -1
- package/dist/dashboard-web/chunks/{chunk-CUV65BIQ.js → chunk-H7P5UV4W.js} +6 -6
- package/dist/dashboard-web/chunks/{chunk-P6GO5KT4.js → chunk-QCPPKCX3.js} +1 -1
- package/dist/dashboard-web/chunks/{chunk-UBOLHQCK.js → chunk-WXPMNEYV.js} +1 -1
- package/dist/dashboard-web/chunks/{connectors-page-KTC2QWNW.js → connectors-page-IR54AOAI.js} +1 -1
- package/dist/dashboard-web/chunks/{groups-page-B3EKGOLY.js → groups-page-3P4TLUMF.js} +1 -1
- package/dist/dashboard-web/chunks/{insights-page-X6RXNCWX.js → insights-page-TDCZV56A.js} +1 -1
- package/dist/dashboard-web/chunks/{monitor-room-LLRA5LQW.js → monitor-room-QWCWL3SX.js} +1 -1
- package/dist/dashboard-web/chunks/{monitoring-page-7MT5FEOS.js → monitoring-page-IOWFSNVC.js} +1 -1
- package/dist/dashboard-web/chunks/{office-page-KD46D5TD.js → office-page-5AUPEHZP.js} +1 -1
- package/dist/dashboard-web/chunks/{overview-page-JUWNH32O.js → overview-page-QJMI6NLW.js} +1 -1
- package/dist/dashboard-web/chunks/{roles-page-P6F7NLOI.js → roles-page-WJVB52ET.js} +1 -1
- package/dist/dashboard-web/chunks/{schedules-page-XIHWZST4.js → schedules-page-RVRWHP4V.js} +1 -1
- package/dist/dashboard-web/chunks/sessions-page-KWLGBX6G.js +3 -0
- package/dist/dashboard-web/chunks/settings-page-TNZEPC7V.js +2 -0
- package/dist/dashboard-web/chunks/{skills-page-A46KVWBL.js → skills-page-7YT5TIX5.js} +1 -1
- package/dist/dashboard-web/chunks/{team-federation-page-SDUC56DF.js → team-federation-page-NJZKTU7A.js} +1 -1
- package/dist/dashboard-web/chunks/{v3-page-J5JOTUSQ.js → v3-page-NQ73UA2Q.js} +1 -1
- package/dist/dashboard-web/chunks/{whiteboards-page-U7LSOAWI.js → whiteboards-page-DSM3MDMN.js} +1 -1
- package/dist/dashboard-web/style.css +198 -7
- package/dist/dashboard.js +294 -7
- package/dist/dashboard.js.map +1 -1
- package/dist/features/codex-notifier/adoption.d.ts +11 -0
- package/dist/features/codex-notifier/adoption.d.ts.map +1 -0
- package/dist/features/codex-notifier/adoption.js +11 -0
- package/dist/features/codex-notifier/adoption.js.map +1 -0
- package/dist/features/codex-notifier/app-opener.d.ts +21 -0
- package/dist/features/codex-notifier/app-opener.d.ts.map +1 -0
- package/dist/features/codex-notifier/app-opener.js +33 -0
- package/dist/features/codex-notifier/app-opener.js.map +1 -0
- package/dist/features/codex-notifier/card-action.d.ts +27 -0
- package/dist/features/codex-notifier/card-action.d.ts.map +1 -0
- package/dist/features/codex-notifier/card-action.js +84 -0
- package/dist/features/codex-notifier/card-action.js.map +1 -0
- package/dist/features/codex-notifier/card.d.ts +12 -0
- package/dist/features/codex-notifier/card.d.ts.map +1 -0
- package/dist/features/codex-notifier/card.js +150 -0
- package/dist/features/codex-notifier/card.js.map +1 -0
- package/dist/features/codex-notifier/codex-context.d.ts +12 -0
- package/dist/features/codex-notifier/codex-context.d.ts.map +1 -0
- package/dist/features/codex-notifier/codex-context.js +161 -0
- package/dist/features/codex-notifier/codex-context.js.map +1 -0
- package/dist/features/codex-notifier/config.d.ts +9 -0
- package/dist/features/codex-notifier/config.d.ts.map +1 -0
- package/dist/features/codex-notifier/config.js +11 -0
- package/dist/features/codex-notifier/config.js.map +1 -0
- package/dist/features/codex-notifier/confirmed-turn.d.ts +20 -0
- package/dist/features/codex-notifier/confirmed-turn.d.ts.map +1 -0
- package/dist/features/codex-notifier/confirmed-turn.js +130 -0
- package/dist/features/codex-notifier/confirmed-turn.js.map +1 -0
- package/dist/features/codex-notifier/emitter.d.ts +13 -0
- package/dist/features/codex-notifier/emitter.d.ts.map +1 -0
- package/dist/features/codex-notifier/emitter.js +33 -0
- package/dist/features/codex-notifier/emitter.js.map +1 -0
- package/dist/features/codex-notifier/event-store.d.ts +29 -0
- package/dist/features/codex-notifier/event-store.d.ts.map +1 -0
- package/dist/features/codex-notifier/event-store.js +217 -0
- package/dist/features/codex-notifier/event-store.js.map +1 -0
- package/dist/features/codex-notifier/event.d.ts +46 -0
- package/dist/features/codex-notifier/event.d.ts.map +1 -0
- package/dist/features/codex-notifier/event.js +188 -0
- package/dist/features/codex-notifier/event.js.map +1 -0
- package/dist/features/codex-notifier/hook-cli.d.ts +23 -0
- package/dist/features/codex-notifier/hook-cli.d.ts.map +1 -0
- package/dist/features/codex-notifier/hook-cli.js +130 -0
- package/dist/features/codex-notifier/hook-cli.js.map +1 -0
- package/dist/features/codex-notifier/hook-installer.d.ts +19 -0
- package/dist/features/codex-notifier/hook-installer.d.ts.map +1 -0
- package/dist/features/codex-notifier/hook-installer.js +158 -0
- package/dist/features/codex-notifier/hook-installer.js.map +1 -0
- package/dist/features/codex-notifier/index.d.ts +21 -0
- package/dist/features/codex-notifier/index.d.ts.map +1 -0
- package/dist/features/codex-notifier/index.js +19 -0
- package/dist/features/codex-notifier/index.js.map +1 -0
- package/dist/features/codex-notifier/internal-turn.d.ts +5 -0
- package/dist/features/codex-notifier/internal-turn.d.ts.map +1 -0
- package/dist/features/codex-notifier/internal-turn.js +43 -0
- package/dist/features/codex-notifier/internal-turn.js.map +1 -0
- package/dist/features/codex-notifier/outbox-worker.d.ts +71 -0
- package/dist/features/codex-notifier/outbox-worker.d.ts.map +1 -0
- package/dist/features/codex-notifier/outbox-worker.js +290 -0
- package/dist/features/codex-notifier/outbox-worker.js.map +1 -0
- package/dist/features/codex-notifier/outbox.d.ts +25 -0
- package/dist/features/codex-notifier/outbox.d.ts.map +1 -0
- package/dist/features/codex-notifier/outbox.js +225 -0
- package/dist/features/codex-notifier/outbox.js.map +1 -0
- package/dist/features/codex-notifier/paths.d.ts +7 -0
- package/dist/features/codex-notifier/paths.d.ts.map +1 -0
- package/dist/features/codex-notifier/paths.js +20 -0
- package/dist/features/codex-notifier/paths.js.map +1 -0
- package/dist/features/codex-notifier/screen-lock.d.ts +12 -0
- package/dist/features/codex-notifier/screen-lock.d.ts.map +1 -0
- package/dist/features/codex-notifier/screen-lock.js +47 -0
- package/dist/features/codex-notifier/screen-lock.js.map +1 -0
- package/dist/features/codex-notifier/side-conversation-monitor.d.ts +102 -0
- package/dist/features/codex-notifier/side-conversation-monitor.d.ts.map +1 -0
- package/dist/features/codex-notifier/side-conversation-monitor.js +774 -0
- package/dist/features/codex-notifier/side-conversation-monitor.js.map +1 -0
- package/dist/features/codex-notifier/types.d.ts +42 -0
- package/dist/features/codex-notifier/types.d.ts.map +1 -0
- package/dist/features/codex-notifier/types.js +2 -0
- package/dist/features/codex-notifier/types.js.map +1 -0
- package/dist/features/codex-notifier/worker-lock.d.ts +8 -0
- package/dist/features/codex-notifier/worker-lock.d.ts.map +1 -0
- package/dist/features/codex-notifier/worker-lock.js +108 -0
- package/dist/features/codex-notifier/worker-lock.js.map +1 -0
- package/dist/global-config.d.ts +13 -0
- package/dist/global-config.d.ts.map +1 -1
- package/dist/global-config.js +30 -0
- package/dist/global-config.js.map +1 -1
- package/dist/im/lark/card-builder.js +2 -2
- package/dist/im/lark/card-builder.js.map +1 -1
- package/dist/im/lark/card-handler.d.ts +2 -0
- package/dist/im/lark/card-handler.d.ts.map +1 -1
- package/dist/im/lark/card-handler.js +165 -34
- package/dist/im/lark/card-handler.js.map +1 -1
- package/dist/im/lark/client.d.ts +62 -4
- package/dist/im/lark/client.d.ts.map +1 -1
- package/dist/im/lark/client.js +237 -29
- package/dist/im/lark/client.js.map +1 -1
- package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
- package/dist/im/lark/event-dispatcher.js +20 -30
- package/dist/im/lark/event-dispatcher.js.map +1 -1
- package/dist/services/codex-app-threads.d.ts +47 -0
- package/dist/services/codex-app-threads.d.ts.map +1 -1
- package/dist/services/codex-app-threads.js +502 -10
- package/dist/services/codex-app-threads.js.map +1 -1
- package/dist/services/exact-chat-grant.d.ts +83 -0
- package/dist/services/exact-chat-grant.d.ts.map +1 -0
- package/dist/services/exact-chat-grant.js +249 -0
- package/dist/services/exact-chat-grant.js.map +1 -0
- package/dist/services/group-creator.d.ts +11 -0
- package/dist/services/group-creator.d.ts.map +1 -1
- package/dist/services/group-creator.js +18 -9
- package/dist/services/group-creator.js.map +1 -1
- package/dist/services/local-cli-opener.d.ts.map +1 -1
- package/dist/services/local-cli-opener.js +10 -5
- package/dist/services/local-cli-opener.js.map +1 -1
- package/dist/services/traex-user-input.d.ts +19 -0
- package/dist/services/traex-user-input.d.ts.map +1 -0
- package/dist/services/traex-user-input.js +57 -0
- package/dist/services/traex-user-input.js.map +1 -0
- package/dist/setup/open-platform-automation.d.ts +24 -3
- package/dist/setup/open-platform-automation.d.ts.map +1 -1
- package/dist/setup/open-platform-automation.js +45 -8
- package/dist/setup/open-platform-automation.js.map +1 -1
- package/dist/setup/verify-permissions.d.ts +18 -0
- package/dist/setup/verify-permissions.d.ts.map +1 -1
- package/dist/setup/verify-permissions.js +60 -0
- package/dist/setup/verify-permissions.js.map +1 -1
- package/dist/types.d.ts +70 -4
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/stuck-detector.d.ts +45 -0
- package/dist/utils/stuck-detector.d.ts.map +1 -0
- package/dist/utils/stuck-detector.js +188 -0
- package/dist/utils/stuck-detector.js.map +1 -0
- package/dist/utils/stuck-key-guard.d.ts +75 -0
- package/dist/utils/stuck-key-guard.d.ts.map +1 -0
- package/dist/utils/stuck-key-guard.js +77 -0
- package/dist/utils/stuck-key-guard.js.map +1 -0
- package/dist/worker.js +705 -93
- package/dist/worker.js.map +1 -1
- package/package.json +1 -1
- package/dist/dashboard-web/chunks/bot-defaults-page-B5AY4B2J.js +0 -5
- package/dist/dashboard-web/chunks/sessions-page-2VECQ27T.js +0 -3
- package/dist/dashboard-web/chunks/settings-page-HMIUE2JA.js +0 -2
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
var P=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;setScheduleTimeZone(e){typeof e=="string"&&e&&this.scheduleTimeZone!==e&&(this.scheduleTimeZone=e,this.emit())}upsertSessions(e){for(let s of e)this.sessions.set(s.sessionId,s);this.emit()}upsertSchedules(e){for(let s of e)this.schedules.set(s.id,s);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 return;this.emit()}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()}},d=new P;async function Ue(){let[t,e]=await Promise.all([fetch("/api/sessions").then(n=>n.json()),fetch("/api/schedules").then(n=>n.json())]);d.upsertSessions(t.sessions??[]),d.upsertSchedules(e.schedules??[]),typeof e.timezone=="string"&&d.setScheduleTimeZone(e.timezone);let s=new EventSource("/events"),o=["session.spawned","session.update","session.exited","schedule.created","schedule.updated","schedule.deleted","schedule.fired","schedule.timezone","heartbeat"];for(let n of o)s.addEventListener(n,i=>{try{let a=JSON.parse(i.data);d.applySse(n,a.body??a)}catch{}});s.onerror=()=>d.setOnline(!1),s.onopen=()=>d.setOnline(!0)}var ce={chats:[],bots:[]},U=ce,R=0,p=null,ue=0,F=0;function ge(t){return{chats:Array.isArray(t?.chats)?t.chats:[],bots:Array.isArray(t?.bots)?t.bots:[]}}function pe(t){U=t,R=Date.now()}async function G(t={}){let e=t.cacheMs??3e3,s=Date.now();if(!t.force&&R>0&&s-R<=e)return U;if(!t.force&&p)return p;let o=++ue;F=o;let n=(async()=>{let i=await fetch("/api/groups"),a=await i.json().catch(()=>({}));if(!i.ok)throw new Error(`HTTP ${i.status}`);let l=ge(a);return o===F&&pe(l),l})();return t.force?n:(p=n.finally(()=>{p=null}),p)}var x="botmux.dashboard.locale",he={"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\u540E\u5373\u53EF\u5B8C\u6210\uFF1B\u786E\u8BA4\u524D\u673A\u5668\u4EBA\u4E0D\u4F1A\u542F\u52A8\u3002","botOnboarding.ownerLabel":"\u7BA1\u7406\u5458\u90AE\u7BB1","botOnboarding.ownerPlaceholder":"name@company.com","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\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.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 only","monitoring.unsupportedTitle":"\u8D44\u6E90\u91C7\u6837\u4EC5\u652F\u6301 Linux","monitoring.unsupportedHint":"\u5F53\u524D\u5E73\u53F0\u6CA1\u6709\u53EF\u8BFB\u7684 /proc \u6570\u636E\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\u3002
|
|
1
|
+
var P=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())}upsertSessions(e){for(let s of e)this.sessions.set(s.sessionId,s);this.emit()}upsertSchedules(e){for(let s of e)this.schedules.set(s.id,s);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()}},d=new P;async function Ue(){let[t,e]=await Promise.all([fetch("/api/sessions").then(n=>n.json()),fetch("/api/schedules").then(n=>n.json())]);d.upsertSessions(t.sessions??[]),d.upsertSchedules(e.schedules??[]),typeof e.timezone=="string"&&d.setScheduleTimeZone(e.timezone);let 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 n of o)s.addEventListener(n,i=>{try{let a=JSON.parse(i.data);d.applySse(n,a.body??a)}catch{}});s.onerror=()=>d.setOnline(!1),s.onopen=()=>d.setOnline(!0)}var ce={chats:[],bots:[]},U=ce,x=0,p=null,ue=0,F=0;function ge(t){return{chats:Array.isArray(t?.chats)?t.chats:[],bots:Array.isArray(t?.bots)?t.bots:[]}}function pe(t){U=t,x=Date.now()}async function W(t={}){let e=t.cacheMs??3e3,s=Date.now();if(!t.force&&x>0&&s-x<=e)return U;if(!t.force&&p)return p;let o=++ue;F=o;let n=(async()=>{let i=await fetch("/api/groups"),a=await i.json().catch(()=>({}));if(!i.ok)throw new Error(`HTTP ${i.status}`);let l=ge(a);return o===F&&pe(l),l})();return t.force?n:(p=n.finally(()=>{p=null}),p)}var R="botmux.dashboard.locale",he={"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\u540E\u5373\u53EF\u5B8C\u6210\uFF1B\u786E\u8BA4\u524D\u673A\u5668\u4EBA\u4E0D\u4F1A\u542F\u52A8\u3002","botOnboarding.ownerLabel":"\u7BA1\u7406\u5458\u90AE\u7BB1","botOnboarding.ownerPlaceholder":"name@company.com","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\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.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 only","monitoring.unsupportedTitle":"\u8D44\u6E90\u91C7\u6837\u4EC5\u652F\u6301 Linux","monitoring.unsupportedHint":"\u5F53\u524D\u5E73\u53F0\u6CA1\u6709\u53EF\u8BFB\u7684 /proc \u6570\u636E\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\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
|
-
\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":"\u63A5\u5165\uFF1A\u5168\u90E8","sessions.adoptYes":"\u63A5\u5165\uFF1A\u662F","sessions.adoptNo":"\u63A5\u5165\uFF1A\u5426","sessions.chatAny":"\u6240\u5728\u804A\u5929\uFF1A\u5168\u90E8","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.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.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.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.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.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.land":"\u843D\u76D8","sessions.landLoading":"\u52A0\u8F7D\u6C99\u76D2 diff\u2026","sessions.landUnavailable":"\u65E0\u6CD5\u843D\u76D8","sessions.landEmpty":"\u6C99\u76D2\u526F\u672C\u6CA1\u6709\u6539\u52A8\u3002","sessions.landApply":"\u5E94\u7528\u5230\u78C1\u76D8","sessions.landDiscard":"\u4E22\u5F03","sessions.landApplied":"\u5DF2\u843D\u76D8","sessions.landFailed":"\u843D\u76D8\u5931\u8D25","sessions.landDiscarded":"\u5DF2\u4E22\u5F03\uFF08\u6C99\u76D2\u526F\u672C\u672A\u5E94\u7528\uFF09\u3002","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
|
|
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.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.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.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.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.land":"\u843D\u76D8","sessions.landLoading":"\u52A0\u8F7D\u6C99\u76D2 diff\u2026","sessions.landUnavailable":"\u65E0\u6CD5\u843D\u76D8","sessions.landEmpty":"\u6C99\u76D2\u526F\u672C\u6CA1\u6709\u6539\u52A8\u3002","sessions.landApply":"\u5E94\u7528\u5230\u78C1\u76D8","sessions.landDiscard":"\u4E22\u5F03","sessions.landApplied":"\u5DF2\u843D\u76D8","sessions.landFailed":"\u843D\u76D8\u5931\u8D25","sessions.landDiscarded":"\u5DF2\u4E22\u5F03\uFF08\u6C99\u76D2\u526F\u672C\u672A\u5E94\u7528\uFF09\u3002","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
|
-
\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=<\u7FA4ID></code> \xB7 \u8BF7\u6C42\u5934 <code>x-botmux-chat-id: <\u7FA4ID></code> \xB7 \u8BF7\u6C42\u4F53 <code>{"chatId":"<\u7FA4ID>"}</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.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.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>/<\u4EE4\u724C></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=<\u7FA4ID></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.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.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.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\u6216\u989D\u5EA6\u5904\u7406","sessions.board.starting":"\u542F\u52A8\u4E2D","sessions.board.startingHint":"CLI \u6B63\u5728\u521B\u5EFA\u6216\u6062\u590D","sessions.board.working":"\u5E72\u6D3B\u4E2D","sessions.board.workingHint":"\u6B63\u5728\u8F93\u51FA\u3001\u5206\u6790\u6216\u6267\u884C\u5DE5\u5177","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.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":"\u5F85\u786E\u8BA4","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.botSearchPlaceholder":"\u641C\u7D22\u673A\u5668\u4EBA\u2026","sessions.create.noBotMatch":"\u6CA1\u6709\u5339\u914D\u7684\u673A\u5668\u4EBA","sessions.create.selectedCount":"\u5DF2\u9009 {n} \u4E2A\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","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.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 \u4F1A\u8BDD\uFF0C\u5C3D\u91CF\u4FDD\u6301\u540C\u4E00\u8DEF I/O/\u5386\u53F2\u548C\u98DE\u4E66\u8FDE\u7EED\u6027\uFF1Bresume \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 \u8D70\u7CBE\u786E attach\uFF0Cadopt \u4F1A\u8BDD\u53EA\u5728\u5DF2\u6709\u53EF\u9760\u76EE\u6807\u65F6\u9644\u52A0\uFF1Bdirect 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.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.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.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
|
|
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=<\u7FA4ID></code> \xB7 \u8BF7\u6C42\u5934 <code>x-botmux-chat-id: <\u7FA4ID></code> \xB7 \u8BF7\u6C42\u4F53 <code>{"chatId":"<\u7FA4ID>"}</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.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.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>/<\u4EE4\u724C></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=<\u7FA4ID></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.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.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.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\u6216\u989D\u5EA6\u5904\u7406","sessions.board.starting":"\u542F\u52A8\u4E2D","sessions.board.startingHint":"CLI \u6B63\u5728\u521B\u5EFA\u6216\u6062\u590D","sessions.board.working":"\u5E72\u6D3B\u4E2D","sessions.board.workingHint":"\u6B63\u5728\u8F93\u51FA\u3001\u5206\u6790\u6216\u6267\u884C\u5DE5\u5177","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.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":"\u5F85\u786E\u8BA4","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.botSearchPlaceholder":"\u641C\u7D22\u673A\u5668\u4EBA\u2026","sessions.create.noBotMatch":"\u6CA1\u6709\u5339\u914D\u7684\u673A\u5668\u4EBA","sessions.create.selectedCount":"\u5DF2\u9009 {n} \u4E2A\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","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.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 \u4F1A\u8BDD\uFF0C\u5C3D\u91CF\u4FDD\u6301\u540C\u4E00\u8DEF I/O/\u5386\u53F2\u548C\u98DE\u4E66\u8FDE\u7EED\u6027\uFF1Bresume \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 \u8D70\u7CBE\u786E attach\uFF0Cadopt \u4F1A\u8BDD\u53EA\u5728\u5DF2\u6709\u53EF\u9760\u76EE\u6807\u65F6\u9644\u52A0\uFF1Bdirect 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.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.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.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.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
|
|
6
6
|
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
|
|
7
7
|
\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
|
|
8
8
|
\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
|
|
@@ -24,9 +24,9 @@ ou_xxxx\uFF08\u4E5F\u53EF\u76F4\u63A5\u586B open_id / union_id\uFF09`,"botDefaul
|
|
|
24
24
|
|
|
25
25
|
\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\u4E00\u6B21\u6027\u94FE\u63A5\u540E\u91CD\u8BD5\u3002","workflow.v3.cancelFailed":"\u53D6\u6D88\u5931\u8D25\uFF1A{error}"},me={"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 to finish; the bot will not start before confirmation.","botOnboarding.ownerLabel":"Administrator email","botOnboarding.ownerPlaceholder":"name@company.com","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 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.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 only","monitoring.unsupportedTitle":"Resource sampling requires Linux","monitoring.unsupportedHint":"This platform has no readable /proc data; 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).
|
|
26
26
|
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.
|
|
27
|
-
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":"adopt: any","sessions.adoptYes":"adopt: yes","sessions.adoptNo":"adopt: no","sessions.chatAny":"Chat: all","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.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.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.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.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.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.land":"Land","sessions.landLoading":"Loading sandbox diff\u2026","sessions.landUnavailable":"Cannot land","sessions.landEmpty":"No changes in the sandbox clone.","sessions.landApply":"Apply to disk","sessions.landDiscard":"Discard","sessions.landApplied":"Landed","sessions.landFailed":"Land failed","sessions.landDiscarded":"Discarded (sandbox clone not applied).","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;
|
|
27
|
+
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.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.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.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.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.land":"Land","sessions.landLoading":"Loading sandbox diff\u2026","sessions.landUnavailable":"Cannot land","sessions.landEmpty":"No changes in the sandbox clone.","sessions.landApply":"Apply to disk","sessions.landDiscard":"Discard","sessions.landApplied":"Landed","sessions.landFailed":"Land failed","sessions.landDiscarded":"Discarded (sandbox clone not applied).","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;
|
|
28
28
|
Codex reads files mostly via shell (exec_command), not counted as "read", so its read/write ratio runs low or 0;
|
|
29
|
-
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=<chatId></code> \xB7 header <code>x-botmux-chat-id: <chatId></code> \xB7 body <code>{"chatId":"<chatId>"}</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.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.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>/<token></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=<chatId></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.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.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.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, or usage limit waiting","sessions.board.starting":"Starting","sessions.board.startingHint":"CLI is spawning or resuming","sessions.board.working":"Working","sessions.board.workingHint":"Streaming, analyzing, or using tools","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.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":"In Review","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.botSearchPlaceholder":"Search bots\u2026","sessions.create.noBotMatch":"No bots match the search","sessions.create.selectedCount":"{n} bot(s) selected","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","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.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 supports current tmux / Herdr sessions and keeps the same I/O/history when possible; 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 use exact attach, adopted sessions attach only when a reliable existing target is known. 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.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.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.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.
|
|
29
|
+
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=<chatId></code> \xB7 header <code>x-botmux-chat-id: <chatId></code> \xB7 body <code>{"chatId":"<chatId>"}</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.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.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>/<token></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=<chatId></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.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.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.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, or usage limit waiting","sessions.board.starting":"Starting","sessions.board.startingHint":"CLI is spawning or resuming","sessions.board.working":"Working","sessions.board.workingHint":"Streaming, analyzing, or using tools","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.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":"In Review","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.botSearchPlaceholder":"Search bots\u2026","sessions.create.noBotMatch":"No bots match the search","sessions.create.selectedCount":"{n} bot(s) selected","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","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.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 supports current tmux / Herdr sessions and keeps the same I/O/history when possible; 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 use exact attach, adopted sessions attach only when a reliable existing target is known. 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.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.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.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.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.
|
|
30
30
|
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.
|
|
31
31
|
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.
|
|
32
32
|
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.
|
|
@@ -46,4 +46,4 @@ ou_xxxx (open_id / union_id also accepted)`,"botDefaults.substituteTargets":"Sub
|
|
|
46
46
|
}`,"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.:
|
|
47
47
|
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.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.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}?
|
|
48
48
|
|
|
49
|
-
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 one-time link, then retry.","workflow.v3.cancelFailed":"Cancel failed: {error}"},W={zh:he,en:me};function j(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 be(t=[]){for(let e of t){let s=j(e);if(s)return s}return"zh"}function w(t){return(e,s)=>{let o=W[t][e]??W.zh[e]??e;return s?o.replace(/\{(\w+)\}/g,(n,i)=>{let a=s[i];return a==null?`{${i}}`:String(a)}):o}}function q(t,e){return(t?j(t.getItem(x)):null)??be(e)}var I="botmux.dashboard.theme",z="botmux.dashboard.sessions.view",K="botmux.dashboard.sessions.showUnknownChats";function fe(t){return t==="system"||t==="light"||t==="dark"?t:null}function ve(t){return t==="kanban"||t==="board"||t==="topics"||t==="table"?t:null}function J(t,e){return t==="system"?e?"dark":"light":t}function Y(t){return fe(t?.getItem(I))??"dark"}function qe(t){return ve(t?.getItem(z))??"board"}function ze(t){try{let e=t?.getItem(K);return e==null?!0:e==="1"}catch{return!0}}var V="botmux.dashboard.sessions.boardOrder",h=["needs-you","starting","working","idle"];function ke(t){if(!Array.isArray(t)||t.length!==h.length)return null;let e=new Set(t);if(e.size!==t.length)return null;for(let s of h)if(!e.has(s))return null;return t.slice()}function Ke(t){try{let e=t?.getItem(V);return e?ke(JSON.parse(e))??[...h]:[...h]}catch{return[...h]}}function Je(t,e){try{t?.setItem(V,JSON.stringify(e))}catch{}}function Ye(t,e){try{t?.setItem(z,e)}catch{}}function Ve(t,e){try{t?.setItem(K,e?"1":"0")}catch{}}var $="botmux.dashboard.sessions.createKeepOpen";function $e(t){try{return t?.getItem($)==="1"}catch{return!1}}function Qe(t,e){try{t?.setItem($,e?"1":"0")}catch{}}var Q="botmux.dashboard.sessions.kanbanGroupBy",Ze="botmux.dashboard.sessions.kanbanTeam";function ye(t){return t==="flow"||t==="team"||t==="bot"?t:null}function Xe(t){return ye(t?.getItem(Q))??"flow"}function et(t,e){try{t?.setItem(Q,e)}catch{}}var we=["default","cyber","fallout"],H="botmux.dashboard.skin";function Se(t){return typeof t=="string"&&we.includes(t)?t:null}function Z(t){return Se(t?.getItem(H))??"default"}var De="\uFF71\uFF72\uFF73\uFF74\uFF75\uFF76\uFF77\uFF78\uFF79\uFF7A\uFF7B\uFF7C\uFF7D\uFF7E\uFF7F\uFF80\uFF81\uFF82\uFF830123456789\uFF8A\uFF8B\uFF8C\uFF8D\uFF8E$#%&@*+=<>/\\",X=["186 100% 60%","56 97% 60%","330 100% 64%","150 80% 58%"],A=[{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",Ce=3200,m=[],u=0,S=0;function N(){return typeof window<"u"&&!!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches}function M(t,e){let s="";for(let o=0;o<t;o++)s+=e[Math.floor(Math.random()*e.length)];return s}function Te(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 n=document.createElement("span");n.className="cyber-rain-col",n.textContent=M(28+Math.floor(Math.random()*22),De);let i=X[Math.floor(Math.random()*X.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;`,e.appendChild(n)}t.appendChild(e)}function Le(){if(N())return;let t=document.body,e=()=>{let s=A[Math.floor(Math.random()*A.length)],o=`cp-fx-${s.key}`;t.classList.add(o),m.push(window.setTimeout(()=>t.classList.remove(o),s.dur)),m.push(window.setTimeout(e,2400+Math.random()*4200))};m.push(window.setTimeout(e,1800+Math.random()*2600))}function Pe(){m.forEach(t=>window.clearTimeout(t)),m=[];for(let t of A)document.body.classList.remove(`cp-fx-${t.key}`)}function Re(){if(N()||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">></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,n=0,i=0;u=window.setInterval(()=>{let a=ee[o];e&&(n<a.length?(n+=1,e.textContent=a.slice(0,n)+M(a.length-n,te),e.classList.remove("done")):i<16?(i+=1,e.textContent=a,e.classList.add("done")):(o=(o+1)%ee.length,n=0,i=0)),s&&(s.textContent=M(26,te))},50),S=window.setTimeout(()=>{window.clearInterval(u),u=0,t.remove()},Ce)}function xe(){u&&(window.clearInterval(u),u=0),S&&(window.clearTimeout(S),S=0),document.getElementById("cyber-boot")?.remove()}var Ie=320,se=16,b=!0,c=0,O=0,D=!1,C=[],E=[];function He(){if(D)return;D=!0,b=!1,c=0;let t=N(),e="";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);e+=`<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">${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"),C.push(window.setTimeout(()=>document.body.classList.remove("cyber-breach-quake"),760)),C.push(window.setTimeout(()=>{s.remove(),D=!1},t?2600:4200))}function Oe(){b=!0,c=0;let t=document.documentElement,e=()=>t.scrollHeight-(window.innerHeight+window.scrollY)<=4,s=r=>{r<=0||!e()||(c+=r,c>Ie&&b&&He())},o=r=>s(r.deltaY),n=r=>{O=r.touches[0]?.clientY??0},i=r=>{let g=r.touches[0]?.clientY??0,de=O-g;O=g,s(de)},a=()=>{e()||(c=0,b=!0)},l=(r,g)=>{window.addEventListener(r,g,{passive:!0}),E.push([r,g])};l("wheel",o),l("touchstart",n),l("touchmove",i),l("scroll",a)}function Ae(){for(let[t,e]of E)window.removeEventListener(t,e);E=[],C.forEach(t=>window.clearTimeout(t)),C=[],document.body.classList.remove("cyber-breach-quake"),document.getElementById("cyber-breach")?.remove(),D=!1,b=!0,c=0}function oe(t,e=!1){if(!(typeof document>"u")){if(!t){document.getElementById("cyber-fx")?.remove(),document.getElementById("cyber-hud")?.remove(),document.getElementById("cyber-glitch")?.remove(),Pe(),xe(),Ae();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>',Te(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),Le(),Oe()}e&&Re()}}var B=class{locale="zh";themeMode="system";resolvedTheme="light";skin="default";authed=!0;publicReadOnly=!1;listeners=new Set;translate=w(this.locale);mediaQuery=null;init(){let e=typeof window<"u"?window:void 0;this.locale=q(e?.localStorage,Ee()),this.translate=w(this.locale),this.themeMode=Y(e?.localStorage),this.skin=Z(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=w(e),window.localStorage.setItem(x,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,n=o!==this.skin;s&&this.themeMode!==e&&(this.themeMode=e,window.localStorage.setItem(I,this.themeMode)),n&&(this.skin=o,window.localStorage.setItem(H,this.skin)),this.applyTheme(),this.applySkin(n),this.emit()}on(e){return this.listeners.add(e),()=>this.listeners.delete(e)}emit(){for(let e of this.listeners)e()}applyTheme(){this.resolvedTheme=J(this.themeMode,!!this.mediaQuery?.matches);let e=this.skin==="default"?this.resolvedTheme:Me[this.skin];document.documentElement.dataset.theme=e,document.documentElement.dataset.themeMode=this.themeMode}applySkin(e=!1){document.documentElement.dataset.skin=this.skin,oe(this.skin==="cyber",e)}applyLocale(){document.documentElement.lang=this.locale==="zh"?"zh-CN":"en"}},Me={default:"light",cyber:"dark",fallout:"dark"};function Ee(){return typeof navigator>"u"?[]:navigator.languages?.length?navigator.languages:[navigator.language].filter(Boolean)}var Ne=new B;function f(t,e){return Ne.t(t,e)}function ie(t){return t.replace(/[&<>"']/g,e=>({"&":"&","<":"<",">":">",'"':""","'":"'"})[e])}function rt(t){if(!t)return"-";let e=Date.now()-t;return e<6e4?f("common.now"):e<36e5?Math.floor(e/6e4)+"m":e<864e5?Math.floor(e/36e5)+"h":Math.floor(e/864e5)+"d"}var ne=[{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 ae(t){let e=0,s=String(t??"");for(let i=0;i<s.length;i++)e=e*31+s.charCodeAt(i)>>>0;let{c1:o,c2:n}=ne[e%ne.length];return`--c1:${o};--c2:${n}`}var v=new Map,k=new Map;function _e(t,e){return e?v.get(e):t?k.get(String(t)):void 0}function lt(t){let e=t.name??"",s=t.avatarUrl??_e(t.name,t.larkAppId),o=t.size==="sm"?" orb-avatar-sm":"",n=s?" orb-has-img":"",i=t.dot?`<i class="orb-dot orb-dot-${t.dot}"></i>`:"",a=s?`<img class="orb-img" src="${ie(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="${ae(e)}" aria-hidden="true">${a}${i}</span>`}function Be(t){return t?L.get(t):void 0}function dt(t){let e=t.name??t.chatId??"",s=t.avatarUrl??Be(t.chatId),o=t.size==="sm"?" orb-avatar-sm":"",n=s?" orb-has-img":"",i=s?`<img class="orb-img" src="${ie(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="${ae(e)}" aria-hidden="true">${i}</span>`}var y=new Map,T=new Map,L=new Map,_=null,re="botmux.avatarCache.v1";function Fe(){try{let t=typeof window<"u"?window.localStorage.getItem(re):null;if(!t)return;let e=JSON.parse(t);for(let[s,o]of Object.entries(e.botByAppId??{}))v.set(s,o);for(let[s,o]of Object.entries(e.botByName??{}))k.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??{}))y.set(s,o);for(let[s,o]of Object.entries(e.chatNameById??{}))T.set(s,o)}catch{}}function le(){try{if(typeof window>"u")return;window.localStorage.setItem(re,JSON.stringify({botByAppId:Object.fromEntries(v),botByName:Object.fromEntries(k),chatById:Object.fromEntries(L),nameByAppId:Object.fromEntries(y),chatNameById:Object.fromEntries(T)}))}catch{}}Fe();function ct(t,e,s){!t||!s||(v.set(t,s),e&&k.set(String(e),s),le())}function ut(){return _??=(async()=>{try{let t=await G();for(let e of t.bots??[])e.larkAppId&&e.botName&&e.botName!==e.larkAppId&&y.set(e.larkAppId,String(e.botName)),e.botAvatarUrl&&(e.larkAppId&&v.set(e.larkAppId,String(e.botAvatarUrl)),e.botName&&k.set(String(e.botName),String(e.botAvatarUrl)));for(let e of t.chats??[])e.chatId&&e.name&&T.set(e.chatId,String(e.name)),e.chatId&&e.avatar&&L.set(e.chatId,String(e.avatar));le()}catch{_=null}})(),_}function gt(t){return t?y.get(t):void 0}function pt(t){let e=t.larkAppId?y.get(t.larkAppId):void 0;return e||(t.botName&&t.botName!==t.larkAppId?String(t.botName):String(t.botName??t.larkAppId??"-"))}function ht(t){let e=String(t.chatDisplayName??"").trim();return e||t.chatId&&T.get(t.chatId)||null}function mt(t){let e=String(t??"");return e.replace(/^(?:@\S+\s*)+/,"").trim()||e}function bt(t){return t.status==="closed"?null:t.agentAttention?.reason?t.agentAttention.reason:t.agentAttention?f("sessions.board.signalAgent"):t.pendingRepo?f("sessions.board.signalRepo"):t.tuiPromptActive?f("sessions.board.signalPrompt"):t.status==="limited"?f("sessions.board.signalLimited"):null}function ft(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{d as a,Ue as b,ce as c,G as d,j as e,ve as f,qe as g,ze as h,Ke as i,Je as j,Ye as k,Ve as l,$e as m,Qe as n,Ze as o,Xe as p,et as q,Ne as r,f as s,ie as t,rt as u,ae as v,lt as w,Be as x,dt as y,ct as z,ut as A,gt as B,pt as C,ht as D,mt as E,bt as F,ft as G};
|
|
49
|
+
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 one-time link, then retry.","workflow.v3.cancelFailed":"Cancel failed: {error}"},G={zh:he,en:me};function j(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 be(t=[]){for(let e of t){let s=j(e);if(s)return s}return"zh"}function w(t){return(e,s)=>{let o=G[t][e]??G.zh[e]??e;return s?o.replace(/\{(\w+)\}/g,(n,i)=>{let a=s[i];return a==null?`{${i}}`:String(a)}):o}}function q(t,e){return(t?j(t.getItem(R)):null)??be(e)}var I="botmux.dashboard.theme",z="botmux.dashboard.sessions.view",K="botmux.dashboard.sessions.showUnknownChats";function fe(t){return t==="system"||t==="light"||t==="dark"?t:null}function ve(t){return t==="kanban"||t==="board"||t==="topics"||t==="table"?t:null}function J(t,e){return t==="system"?e?"dark":"light":t}function Y(t){return fe(t?.getItem(I))??"dark"}function qe(t){return ve(t?.getItem(z))??"board"}function ze(t){try{let e=t?.getItem(K);return e==null?!0:e==="1"}catch{return!0}}var V="botmux.dashboard.sessions.boardOrder",h=["needs-you","starting","working","idle"];function ke(t){if(!Array.isArray(t)||t.length!==h.length)return null;let e=new Set(t);if(e.size!==t.length)return null;for(let s of h)if(!e.has(s))return null;return t.slice()}function Ke(t){try{let e=t?.getItem(V);return e?ke(JSON.parse(e))??[...h]:[...h]}catch{return[...h]}}function Je(t,e){try{t?.setItem(V,JSON.stringify(e))}catch{}}function Ye(t,e){try{t?.setItem(z,e)}catch{}}function Ve(t,e){try{t?.setItem(K,e?"1":"0")}catch{}}var $="botmux.dashboard.sessions.createKeepOpen";function $e(t){try{return t?.getItem($)==="1"}catch{return!1}}function Qe(t,e){try{t?.setItem($,e?"1":"0")}catch{}}var Q="botmux.dashboard.sessions.kanbanGroupBy",Ze="botmux.dashboard.sessions.kanbanTeam";function ye(t){return t==="flow"||t==="team"||t==="bot"?t:null}function Xe(t){return ye(t?.getItem(Q))??"flow"}function et(t,e){try{t?.setItem(Q,e)}catch{}}var we=["default","cyber","fallout"],H="botmux.dashboard.skin";function Se(t){return typeof t=="string"&&we.includes(t)?t:null}function Z(t){return Se(t?.getItem(H))??"default"}var De="\uFF71\uFF72\uFF73\uFF74\uFF75\uFF76\uFF77\uFF78\uFF79\uFF7A\uFF7B\uFF7C\uFF7D\uFF7E\uFF7F\uFF80\uFF81\uFF82\uFF830123456789\uFF8A\uFF8B\uFF8C\uFF8D\uFF8E$#%&@*+=<>/\\",X=["186 100% 60%","56 97% 60%","330 100% 64%","150 80% 58%"],A=[{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",Ce=3200,m=[],u=0,S=0;function E(){return typeof window<"u"&&!!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches}function M(t,e){let s="";for(let o=0;o<t;o++)s+=e[Math.floor(Math.random()*e.length)];return s}function Te(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 n=document.createElement("span");n.className="cyber-rain-col",n.textContent=M(28+Math.floor(Math.random()*22),De);let i=X[Math.floor(Math.random()*X.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;`,e.appendChild(n)}t.appendChild(e)}function Le(){if(E())return;let t=document.body,e=()=>{let s=A[Math.floor(Math.random()*A.length)],o=`cp-fx-${s.key}`;t.classList.add(o),m.push(window.setTimeout(()=>t.classList.remove(o),s.dur)),m.push(window.setTimeout(e,2400+Math.random()*4200))};m.push(window.setTimeout(e,1800+Math.random()*2600))}function Pe(){m.forEach(t=>window.clearTimeout(t)),m=[];for(let t of A)document.body.classList.remove(`cp-fx-${t.key}`)}function xe(){if(E()||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">></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,n=0,i=0;u=window.setInterval(()=>{let a=ee[o];e&&(n<a.length?(n+=1,e.textContent=a.slice(0,n)+M(a.length-n,te),e.classList.remove("done")):i<16?(i+=1,e.textContent=a,e.classList.add("done")):(o=(o+1)%ee.length,n=0,i=0)),s&&(s.textContent=M(26,te))},50),S=window.setTimeout(()=>{window.clearInterval(u),u=0,t.remove()},Ce)}function Re(){u&&(window.clearInterval(u),u=0),S&&(window.clearTimeout(S),S=0),document.getElementById("cyber-boot")?.remove()}var Ie=320,se=16,b=!0,c=0,O=0,D=!1,C=[],N=[];function He(){if(D)return;D=!0,b=!1,c=0;let t=E(),e="";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);e+=`<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">${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"),C.push(window.setTimeout(()=>document.body.classList.remove("cyber-breach-quake"),760)),C.push(window.setTimeout(()=>{s.remove(),D=!1},t?2600:4200))}function Oe(){b=!0,c=0;let t=document.documentElement,e=()=>t.scrollHeight-(window.innerHeight+window.scrollY)<=4,s=r=>{r<=0||!e()||(c+=r,c>Ie&&b&&He())},o=r=>s(r.deltaY),n=r=>{O=r.touches[0]?.clientY??0},i=r=>{let g=r.touches[0]?.clientY??0,de=O-g;O=g,s(de)},a=()=>{e()||(c=0,b=!0)},l=(r,g)=>{window.addEventListener(r,g,{passive:!0}),N.push([r,g])};l("wheel",o),l("touchstart",n),l("touchmove",i),l("scroll",a)}function Ae(){for(let[t,e]of N)window.removeEventListener(t,e);N=[],C.forEach(t=>window.clearTimeout(t)),C=[],document.body.classList.remove("cyber-breach-quake"),document.getElementById("cyber-breach")?.remove(),D=!1,b=!0,c=0}function oe(t,e=!1){if(!(typeof document>"u")){if(!t){document.getElementById("cyber-fx")?.remove(),document.getElementById("cyber-hud")?.remove(),document.getElementById("cyber-glitch")?.remove(),Pe(),Re(),Ae();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>',Te(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),Le(),Oe()}e&&xe()}}var _=class{locale="zh";themeMode="system";resolvedTheme="light";skin="default";authed=!0;publicReadOnly=!1;listeners=new Set;translate=w(this.locale);mediaQuery=null;init(){let e=typeof window<"u"?window:void 0;this.locale=q(e?.localStorage,Ne()),this.translate=w(this.locale),this.themeMode=Y(e?.localStorage),this.skin=Z(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=w(e),window.localStorage.setItem(R,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,n=o!==this.skin;s&&this.themeMode!==e&&(this.themeMode=e,window.localStorage.setItem(I,this.themeMode)),n&&(this.skin=o,window.localStorage.setItem(H,this.skin)),this.applyTheme(),this.applySkin(n),this.emit()}on(e){return this.listeners.add(e),()=>this.listeners.delete(e)}emit(){for(let e of this.listeners)e()}applyTheme(){this.resolvedTheme=J(this.themeMode,!!this.mediaQuery?.matches);let e=this.skin==="default"?this.resolvedTheme:Me[this.skin];document.documentElement.dataset.theme=e,document.documentElement.dataset.themeMode=this.themeMode}applySkin(e=!1){document.documentElement.dataset.skin=this.skin,oe(this.skin==="cyber",e)}applyLocale(){document.documentElement.lang=this.locale==="zh"?"zh-CN":"en"}},Me={default:"light",cyber:"dark",fallout:"dark"};function Ne(){return typeof navigator>"u"?[]:navigator.languages?.length?navigator.languages:[navigator.language].filter(Boolean)}var Ee=new _;function f(t,e){return Ee.t(t,e)}function ie(t){return t.replace(/[&<>"']/g,e=>({"&":"&","<":"<",">":">",'"':""","'":"'"})[e])}function rt(t){if(!t)return"-";let e=Date.now()-t;return e<6e4?f("common.now"):e<36e5?Math.floor(e/6e4)+"m":e<864e5?Math.floor(e/36e5)+"h":Math.floor(e/864e5)+"d"}var ne=[{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 ae(t){let e=0,s=String(t??"");for(let i=0;i<s.length;i++)e=e*31+s.charCodeAt(i)>>>0;let{c1:o,c2:n}=ne[e%ne.length];return`--c1:${o};--c2:${n}`}var v=new Map,k=new Map;function Be(t,e){return e?v.get(e):t?k.get(String(t)):void 0}function lt(t){let e=t.name??"",s=t.avatarUrl??Be(t.name,t.larkAppId),o=t.size==="sm"?" orb-avatar-sm":"",n=s?" orb-has-img":"",i=t.dot?`<i class="orb-dot orb-dot-${t.dot}"></i>`:"",a=s?`<img class="orb-img" src="${ie(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="${ae(e)}" aria-hidden="true">${a}${i}</span>`}function _e(t){return t?L.get(t):void 0}function dt(t){let e=t.name??t.chatId??"",s=t.avatarUrl??_e(t.chatId),o=t.size==="sm"?" orb-avatar-sm":"",n=s?" orb-has-img":"",i=s?`<img class="orb-img" src="${ie(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="${ae(e)}" aria-hidden="true">${i}</span>`}var y=new Map,T=new Map,L=new Map,B=null,re="botmux.avatarCache.v1";function Fe(){try{let t=typeof window<"u"?window.localStorage.getItem(re):null;if(!t)return;let e=JSON.parse(t);for(let[s,o]of Object.entries(e.botByAppId??{}))v.set(s,o);for(let[s,o]of Object.entries(e.botByName??{}))k.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??{}))y.set(s,o);for(let[s,o]of Object.entries(e.chatNameById??{}))T.set(s,o)}catch{}}function le(){try{if(typeof window>"u")return;window.localStorage.setItem(re,JSON.stringify({botByAppId:Object.fromEntries(v),botByName:Object.fromEntries(k),chatById:Object.fromEntries(L),nameByAppId:Object.fromEntries(y),chatNameById:Object.fromEntries(T)}))}catch{}}Fe();function ct(t,e,s){!t||!s||(v.set(t,s),e&&k.set(String(e),s),le())}function ut(){return B??=(async()=>{try{let t=await W();for(let e of t.bots??[])e.larkAppId&&e.botName&&e.botName!==e.larkAppId&&y.set(e.larkAppId,String(e.botName)),e.botAvatarUrl&&(e.larkAppId&&v.set(e.larkAppId,String(e.botAvatarUrl)),e.botName&&k.set(String(e.botName),String(e.botAvatarUrl)));for(let e of t.chats??[])e.chatId&&e.name&&T.set(e.chatId,String(e.name)),e.chatId&&e.avatar&&L.set(e.chatId,String(e.avatar));le()}catch{B=null}})(),B}function gt(t){return t?y.get(t):void 0}function pt(t){let e=t.larkAppId?y.get(t.larkAppId):void 0;return e||(t.botName&&t.botName!==t.larkAppId?String(t.botName):String(t.botName??t.larkAppId??"-"))}function ht(t){let e=String(t.chatDisplayName??"").trim();return e||t.chatId&&T.get(t.chatId)||null}function mt(t){let e=String(t??"");return e.replace(/^(?:@\S+\s*)+/,"").trim()||e}function bt(t){return t.status==="closed"?null:t.agentAttention?.reason?t.agentAttention.reason:t.agentAttention?f("sessions.board.signalAgent"):t.pendingRepo?f("sessions.board.signalRepo"):t.tuiPromptActive?f("sessions.board.signalPrompt"):t.status==="limited"?f("sessions.board.signalLimited"):null}function ft(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{d as a,Ue as b,ce as c,W as d,j as e,ve as f,qe as g,ze as h,Ke as i,Je as j,Ye as k,Ve as l,$e as m,Qe as n,Ze as o,Xe as p,et as q,Ee as r,f as s,ie as t,rt as u,ae as v,lt as w,_e as x,dt as y,ct as z,ut as A,gt as B,pt as C,ht as D,mt as E,bt as F,ft as G};
|