botmux 3.14.0 → 3.16.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 +2 -2
- package/README.md +2 -2
- package/dist/.runtime-build-id +1 -1
- package/dist/adapters/backend/destroy-result.d.ts +159 -0
- package/dist/adapters/backend/destroy-result.d.ts.map +1 -0
- package/dist/adapters/backend/destroy-result.js +223 -0
- package/dist/adapters/backend/destroy-result.js.map +1 -0
- package/dist/adapters/backend/herdr-backend.d.ts +4 -0
- package/dist/adapters/backend/herdr-backend.d.ts.map +1 -1
- package/dist/adapters/backend/herdr-backend.js +23 -1
- package/dist/adapters/backend/herdr-backend.js.map +1 -1
- package/dist/adapters/backend/mojo-backend.d.ts +577 -0
- package/dist/adapters/backend/mojo-backend.d.ts.map +1 -0
- package/dist/adapters/backend/mojo-backend.js +2471 -0
- package/dist/adapters/backend/mojo-backend.js.map +1 -0
- package/dist/adapters/backend/mojo-budgets.d.ts +21 -0
- package/dist/adapters/backend/mojo-budgets.d.ts.map +1 -0
- package/dist/adapters/backend/mojo-budgets.js +22 -0
- package/dist/adapters/backend/mojo-budgets.js.map +1 -0
- package/dist/adapters/backend/mojo-isolated-workspace.d.ts +69 -0
- package/dist/adapters/backend/mojo-isolated-workspace.d.ts.map +1 -0
- package/dist/adapters/backend/mojo-isolated-workspace.js +213 -0
- package/dist/adapters/backend/mojo-isolated-workspace.js.map +1 -0
- package/dist/adapters/backend/mojo-process-tree.d.ts +292 -0
- package/dist/adapters/backend/mojo-process-tree.d.ts.map +1 -0
- package/dist/adapters/backend/mojo-process-tree.js +486 -0
- package/dist/adapters/backend/mojo-process-tree.js.map +1 -0
- package/dist/adapters/backend/mojo-types.d.ts +542 -0
- package/dist/adapters/backend/mojo-types.d.ts.map +1 -0
- package/dist/adapters/backend/mojo-types.js +682 -0
- package/dist/adapters/backend/mojo-types.js.map +1 -0
- package/dist/adapters/backend/reproduce-command.js +3 -3
- package/dist/adapters/backend/reproduce-command.js.map +1 -1
- package/dist/adapters/backend/riff-backend.js +1 -1
- package/dist/adapters/backend/riff-backend.js.map +1 -1
- package/dist/adapters/backend/sandbox.d.ts +44 -7
- package/dist/adapters/backend/sandbox.d.ts.map +1 -1
- package/dist/adapters/backend/sandbox.js +30 -7
- package/dist/adapters/backend/sandbox.js.map +1 -1
- package/dist/adapters/backend/session-backend-selector.d.ts +14 -1
- package/dist/adapters/backend/session-backend-selector.d.ts.map +1 -1
- package/dist/adapters/backend/session-backend-selector.js +82 -10
- package/dist/adapters/backend/session-backend-selector.js.map +1 -1
- package/dist/adapters/backend/tmux-pipe-backend.d.ts +30 -0
- package/dist/adapters/backend/tmux-pipe-backend.d.ts.map +1 -1
- package/dist/adapters/backend/tmux-pipe-backend.js +60 -0
- package/dist/adapters/backend/tmux-pipe-backend.js.map +1 -1
- package/dist/adapters/backend/types.d.ts +108 -6
- package/dist/adapters/backend/types.d.ts.map +1 -1
- package/dist/adapters/backend/types.js.map +1 -1
- package/dist/adapters/backend/zmx-backend.d.ts +11 -0
- package/dist/adapters/backend/zmx-backend.d.ts.map +1 -1
- package/dist/adapters/backend/zmx-backend.js +16 -1
- package/dist/adapters/backend/zmx-backend.js.map +1 -1
- package/dist/adapters/cli/codex-app.d.ts.map +1 -1
- package/dist/adapters/cli/codex-app.js +2 -2
- package/dist/adapters/cli/codex-app.js.map +1 -1
- package/dist/adapters/cli/codex.d.ts.map +1 -1
- package/dist/adapters/cli/codex.js +7 -0
- package/dist/adapters/cli/codex.js.map +1 -1
- package/dist/adapters/cli/copilot.d.ts +3 -1
- package/dist/adapters/cli/copilot.d.ts.map +1 -1
- package/dist/adapters/cli/copilot.js +23 -5
- package/dist/adapters/cli/copilot.js.map +1 -1
- package/dist/adapters/cli/cursor.d.ts.map +1 -1
- package/dist/adapters/cli/cursor.js +26 -4
- package/dist/adapters/cli/cursor.js.map +1 -1
- package/dist/adapters/cli/dsh.d.ts.map +1 -1
- package/dist/adapters/cli/dsh.js +5 -1
- package/dist/adapters/cli/dsh.js.map +1 -1
- package/dist/adapters/cli/grok.d.ts.map +1 -1
- package/dist/adapters/cli/grok.js +24 -5
- package/dist/adapters/cli/grok.js.map +1 -1
- package/dist/adapters/cli/kimi.d.ts.map +1 -1
- package/dist/adapters/cli/kimi.js +19 -1
- package/dist/adapters/cli/kimi.js.map +1 -1
- package/dist/adapters/cli/mojo.d.ts +28 -0
- package/dist/adapters/cli/mojo.d.ts.map +1 -0
- package/dist/adapters/cli/mojo.js +58 -0
- package/dist/adapters/cli/mojo.js.map +1 -0
- package/dist/adapters/cli/pi.d.ts +20 -5
- package/dist/adapters/cli/pi.d.ts.map +1 -1
- package/dist/adapters/cli/pi.js +27 -5
- package/dist/adapters/cli/pi.js.map +1 -1
- package/dist/adapters/cli/read-isolation.d.ts +251 -1
- package/dist/adapters/cli/read-isolation.d.ts.map +1 -1
- package/dist/adapters/cli/read-isolation.js +254 -1
- package/dist/adapters/cli/read-isolation.js.map +1 -1
- package/dist/adapters/cli/registry.d.ts +13 -1
- package/dist/adapters/cli/registry.d.ts.map +1 -1
- package/dist/adapters/cli/registry.js +19 -1
- package/dist/adapters/cli/registry.js.map +1 -1
- package/dist/adapters/cli/runner-input.d.ts +3 -3
- package/dist/adapters/cli/runner-input.d.ts.map +1 -1
- package/dist/adapters/cli/runner-input.js +4 -3
- package/dist/adapters/cli/runner-input.js.map +1 -1
- package/dist/adapters/cli/shared-hints.d.ts +3 -1
- package/dist/adapters/cli/shared-hints.d.ts.map +1 -1
- package/dist/adapters/cli/shared-hints.js +51 -30
- package/dist/adapters/cli/shared-hints.js.map +1 -1
- package/dist/adapters/cli/types.d.ts +33 -4
- package/dist/adapters/cli/types.d.ts.map +1 -1
- package/dist/bot-registry.d.ts +42 -0
- package/dist/bot-registry.d.ts.map +1 -1
- package/dist/bot-registry.js +54 -4
- package/dist/bot-registry.js.map +1 -1
- package/dist/cli/arg-utils.d.ts +5 -0
- package/dist/cli/arg-utils.d.ts.map +1 -1
- package/dist/cli/arg-utils.js +7 -0
- package/dist/cli/arg-utils.js.map +1 -1
- package/dist/cli/bots-list-output.d.ts +130 -2
- package/dist/cli/bots-list-output.d.ts.map +1 -1
- package/dist/cli/bots-list-output.js +173 -27
- package/dist/cli/bots-list-output.js.map +1 -1
- package/dist/cli/daemon-lifecycle-env.d.ts +10 -3
- package/dist/cli/daemon-lifecycle-env.d.ts.map +1 -1
- package/dist/cli/daemon-lifecycle-env.js +38 -11
- package/dist/cli/daemon-lifecycle-env.js.map +1 -1
- package/dist/cli/dashboard-command.d.ts +15 -0
- package/dist/cli/dashboard-command.d.ts.map +1 -1
- package/dist/cli/dashboard-command.js +22 -0
- package/dist/cli/dashboard-command.js.map +1 -1
- package/dist/cli/log-tail.d.ts +54 -0
- package/dist/cli/log-tail.d.ts.map +1 -0
- package/dist/cli/log-tail.js +167 -0
- package/dist/cli/log-tail.js.map +1 -0
- package/dist/cli/pm2-env.d.ts +16 -0
- package/dist/cli/pm2-env.d.ts.map +1 -0
- package/dist/cli/pm2-env.js +63 -0
- package/dist/cli/pm2-env.js.map +1 -0
- package/dist/cli/pm2-fleet-lock.d.ts +26 -0
- package/dist/cli/pm2-fleet-lock.d.ts.map +1 -0
- package/dist/cli/pm2-fleet-lock.js +50 -0
- package/dist/cli/pm2-fleet-lock.js.map +1 -0
- package/dist/cli/pm2-god-retirement.d.ts +59 -0
- package/dist/cli/pm2-god-retirement.d.ts.map +1 -0
- package/dist/cli/pm2-god-retirement.js +95 -0
- package/dist/cli/pm2-god-retirement.js.map +1 -0
- package/dist/cli/session-list-wake.d.ts +41 -0
- package/dist/cli/session-list-wake.d.ts.map +1 -0
- package/dist/cli/session-list-wake.js +102 -0
- package/dist/cli/session-list-wake.js.map +1 -0
- package/dist/cli/workflow.d.ts.map +1 -1
- package/dist/cli/workflow.js +26 -0
- package/dist/cli/workflow.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +941 -118
- package/dist/cli.js.map +1 -1
- package/dist/codex-app-runner.js +261 -49
- package/dist/codex-app-runner.js.map +1 -1
- package/dist/core/cli-runtime-update.d.ts +8 -0
- package/dist/core/cli-runtime-update.d.ts.map +1 -1
- package/dist/core/cli-runtime-update.js +127 -8
- package/dist/core/cli-runtime-update.js.map +1 -1
- package/dist/core/close-residual.d.ts +64 -0
- package/dist/core/close-residual.d.ts.map +1 -0
- package/dist/core/close-residual.js +93 -0
- package/dist/core/close-residual.js.map +1 -0
- package/dist/core/closed-session-card.d.ts.map +1 -1
- package/dist/core/closed-session-card.js +11 -3
- package/dist/core/closed-session-card.js.map +1 -1
- package/dist/core/command-discovery.d.ts.map +1 -1
- package/dist/core/command-discovery.js +4 -1
- package/dist/core/command-discovery.js.map +1 -1
- package/dist/core/command-handler.d.ts.map +1 -1
- package/dist/core/command-handler.js +129 -27
- package/dist/core/command-handler.js.map +1 -1
- package/dist/core/cost-calculator.d.ts +3 -1
- package/dist/core/cost-calculator.d.ts.map +1 -1
- package/dist/core/cost-calculator.js +230 -1
- package/dist/core/cost-calculator.js.map +1 -1
- package/dist/core/daemon-background-close.d.ts +19 -0
- package/dist/core/daemon-background-close.d.ts.map +1 -0
- package/dist/core/daemon-background-close.js +39 -0
- package/dist/core/daemon-background-close.js.map +1 -0
- package/dist/core/dashboard-command/overview.d.ts +4 -0
- package/dist/core/dashboard-command/overview.d.ts.map +1 -1
- package/dist/core/dashboard-command/overview.js +8 -1
- package/dist/core/dashboard-command/overview.js.map +1 -1
- package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
- package/dist/core/dashboard-ipc-server.js +415 -42
- package/dist/core/dashboard-ipc-server.js.map +1 -1
- package/dist/core/dashboard-rows.d.ts +4 -0
- package/dist/core/dashboard-rows.d.ts.map +1 -1
- package/dist/core/dashboard-rows.js +3 -0
- package/dist/core/dashboard-rows.js.map +1 -1
- package/dist/core/dashboard-url.d.ts +37 -0
- package/dist/core/dashboard-url.d.ts.map +1 -1
- package/dist/core/dashboard-url.js +71 -0
- package/dist/core/dashboard-url.js.map +1 -1
- package/dist/core/deferred-schedule-settlement.d.ts +15 -1
- package/dist/core/deferred-schedule-settlement.d.ts.map +1 -1
- package/dist/core/deferred-schedule-settlement.js +4 -1
- package/dist/core/deferred-schedule-settlement.js.map +1 -1
- package/dist/core/device-isolation-daemon.d.ts +91 -1
- package/dist/core/device-isolation-daemon.d.ts.map +1 -1
- package/dist/core/device-isolation-daemon.js +346 -2
- package/dist/core/device-isolation-daemon.js.map +1 -1
- package/dist/core/local-terminal-opener.d.ts.map +1 -1
- package/dist/core/local-terminal-opener.js +5 -1
- package/dist/core/local-terminal-opener.js.map +1 -1
- package/dist/core/loopback-target.d.ts +14 -0
- package/dist/core/loopback-target.d.ts.map +1 -0
- package/dist/core/loopback-target.js +20 -0
- package/dist/core/loopback-target.js.map +1 -0
- package/dist/core/maintenance.d.ts.map +1 -1
- package/dist/core/maintenance.js +16 -2
- package/dist/core/maintenance.js.map +1 -1
- package/dist/core/mojo-containment-command.d.ts +20 -0
- package/dist/core/mojo-containment-command.d.ts.map +1 -0
- package/dist/core/mojo-containment-command.js +266 -0
- package/dist/core/mojo-containment-command.js.map +1 -0
- package/dist/core/mojo-containment.d.ts +575 -0
- package/dist/core/mojo-containment.d.ts.map +1 -0
- package/dist/core/mojo-containment.js +1158 -0
- package/dist/core/mojo-containment.js.map +1 -0
- package/dist/core/mojo-launcher-env-quarantine.d.ts +30 -0
- package/dist/core/mojo-launcher-env-quarantine.d.ts.map +1 -0
- package/dist/core/mojo-launcher-env-quarantine.js +175 -0
- package/dist/core/mojo-launcher-env-quarantine.js.map +1 -0
- package/dist/core/mojo-session-identity.d.ts +3 -0
- package/dist/core/mojo-session-identity.d.ts.map +1 -0
- package/dist/core/mojo-session-identity.js +126 -0
- package/dist/core/mojo-session-identity.js.map +1 -0
- package/dist/core/persistent-backend.d.ts +32 -8
- package/dist/core/persistent-backend.d.ts.map +1 -1
- package/dist/core/persistent-backend.js +55 -17
- package/dist/core/persistent-backend.js.map +1 -1
- package/dist/core/plugins/mcp/gateway.d.ts +14 -1
- package/dist/core/plugins/mcp/gateway.d.ts.map +1 -1
- package/dist/core/plugins/mcp/gateway.js +70 -3
- package/dist/core/plugins/mcp/gateway.js.map +1 -1
- package/dist/core/plugins/mcp/host.d.ts +2 -0
- package/dist/core/plugins/mcp/host.d.ts.map +1 -1
- package/dist/core/plugins/mcp/host.js +2 -0
- package/dist/core/plugins/mcp/host.js.map +1 -1
- package/dist/core/plugins/pm2.d.ts.map +1 -1
- package/dist/core/plugins/pm2.js +16 -3
- package/dist/core/plugins/pm2.js.map +1 -1
- package/dist/core/plugins/service-manager.d.ts +9 -0
- package/dist/core/plugins/service-manager.d.ts.map +1 -1
- package/dist/core/plugins/service-manager.js +33 -16
- package/dist/core/plugins/service-manager.js.map +1 -1
- package/dist/core/preview-port-owner.d.ts +109 -0
- package/dist/core/preview-port-owner.d.ts.map +1 -0
- package/dist/core/preview-port-owner.js +320 -0
- package/dist/core/preview-port-owner.js.map +1 -0
- package/dist/core/remote-cli-ids.d.ts +5 -0
- package/dist/core/remote-cli-ids.d.ts.map +1 -0
- package/dist/core/remote-cli-ids.js +24 -0
- package/dist/core/remote-cli-ids.js.map +1 -0
- package/dist/core/{riff-shutdown-detach.d.ts → remote-shutdown-detach.d.ts} +40 -39
- package/dist/core/remote-shutdown-detach.d.ts.map +1 -0
- package/dist/core/{riff-shutdown-detach.js → remote-shutdown-detach.js} +85 -83
- package/dist/core/remote-shutdown-detach.js.map +1 -0
- package/dist/core/{riff-worker-shutdown-readiness.d.ts → remote-worker-shutdown-readiness.d.ts} +5 -4
- package/dist/core/remote-worker-shutdown-readiness.d.ts.map +1 -0
- package/dist/core/{riff-worker-shutdown-readiness.js → remote-worker-shutdown-readiness.js} +4 -3
- package/dist/core/remote-worker-shutdown-readiness.js.map +1 -0
- package/dist/core/reply-target.d.ts +16 -1
- package/dist/core/reply-target.d.ts.map +1 -1
- package/dist/core/reply-target.js +61 -0
- package/dist/core/reply-target.js.map +1 -1
- package/dist/core/session-group-birth.d.ts +26 -0
- package/dist/core/session-group-birth.d.ts.map +1 -1
- package/dist/core/session-group-birth.js +81 -4
- package/dist/core/session-group-birth.js.map +1 -1
- package/dist/core/session-manager.d.ts +15 -2
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +259 -5
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/session-model.d.ts +46 -0
- package/dist/core/session-model.d.ts.map +1 -0
- package/dist/core/session-model.js +42 -0
- package/dist/core/session-model.js.map +1 -0
- package/dist/core/session-owner-reminder.d.ts +63 -0
- package/dist/core/session-owner-reminder.d.ts.map +1 -0
- package/dist/core/session-owner-reminder.js +196 -0
- package/dist/core/session-owner-reminder.js.map +1 -0
- package/dist/core/session-preview-registry.d.ts +53 -0
- package/dist/core/session-preview-registry.d.ts.map +1 -0
- package/dist/core/session-preview-registry.js +82 -0
- package/dist/core/session-preview-registry.js.map +1 -0
- package/dist/core/session-preview.d.ts +114 -0
- package/dist/core/session-preview.d.ts.map +1 -0
- package/dist/core/session-preview.js +184 -0
- package/dist/core/session-preview.js.map +1 -0
- package/dist/core/session-rename.d.ts.map +1 -1
- package/dist/core/session-rename.js +5 -3
- package/dist/core/session-rename.js.map +1 -1
- package/dist/core/session-wake-deadline.d.ts +5 -0
- package/dist/core/session-wake-deadline.d.ts.map +1 -0
- package/dist/core/session-wake-deadline.js +13 -0
- package/dist/core/session-wake-deadline.js.map +1 -0
- package/dist/core/shutdown-budgets.d.ts +7 -6
- package/dist/core/shutdown-budgets.d.ts.map +1 -1
- package/dist/core/shutdown-budgets.js +11 -10
- package/dist/core/shutdown-budgets.js.map +1 -1
- package/dist/core/skills/frontmatter.d.ts.map +1 -1
- package/dist/core/skills/frontmatter.js +6 -1
- package/dist/core/skills/frontmatter.js.map +1 -1
- package/dist/core/terminal-control-grant.d.ts +74 -0
- package/dist/core/terminal-control-grant.d.ts.map +1 -0
- package/dist/core/terminal-control-grant.js +183 -0
- package/dist/core/terminal-control-grant.js.map +1 -0
- package/dist/core/terminal-proxy.d.ts.map +1 -1
- package/dist/core/terminal-proxy.js +4 -5
- package/dist/core/terminal-proxy.js.map +1 -1
- package/dist/core/terminal-write-auth.d.ts +4 -11
- package/dist/core/terminal-write-auth.d.ts.map +1 -1
- package/dist/core/terminal-write-auth.js +19 -16
- 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 +36 -29
- package/dist/core/trigger-session.js.map +1 -1
- package/dist/core/types.d.ts +88 -10
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +9 -7
- package/dist/core/types.js.map +1 -1
- package/dist/core/workbench-link.d.ts +81 -0
- package/dist/core/workbench-link.d.ts.map +1 -0
- package/dist/core/workbench-link.js +109 -0
- package/dist/core/workbench-link.js.map +1 -0
- package/dist/core/worker-pool.d.ts +312 -11
- package/dist/core/worker-pool.d.ts.map +1 -1
- package/dist/core/worker-pool.js +2515 -217
- package/dist/core/worker-pool.js.map +1 -1
- package/dist/daemon.d.ts +6 -0
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +447 -116
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/aggregator.d.ts +33 -3
- package/dist/dashboard/aggregator.d.ts.map +1 -1
- package/dist/dashboard/aggregator.js +93 -17
- package/dist/dashboard/aggregator.js.map +1 -1
- package/dist/dashboard/auth-session-connections.d.ts +59 -0
- package/dist/dashboard/auth-session-connections.d.ts.map +1 -0
- package/dist/dashboard/auth-session-connections.js +109 -0
- package/dist/dashboard/auth-session-connections.js.map +1 -0
- package/dist/dashboard/auth.d.ts +99 -1
- package/dist/dashboard/auth.d.ts.map +1 -1
- package/dist/dashboard/auth.js +176 -64
- package/dist/dashboard/auth.js.map +1 -1
- package/dist/dashboard/bot-payload.d.ts +5 -0
- package/dist/dashboard/bot-payload.d.ts.map +1 -1
- package/dist/dashboard/bot-payload.js +4 -0
- package/dist/dashboard/bot-payload.js.map +1 -1
- package/dist/dashboard/control-audit.d.ts +112 -0
- package/dist/dashboard/control-audit.d.ts.map +1 -0
- package/dist/dashboard/control-audit.js +195 -0
- package/dist/dashboard/control-audit.js.map +1 -0
- package/dist/dashboard/control-csrf.d.ts +123 -0
- package/dist/dashboard/control-csrf.d.ts.map +1 -0
- package/dist/dashboard/control-csrf.js +392 -0
- package/dist/dashboard/control-csrf.js.map +1 -0
- package/dist/dashboard/daemon-reconcile.d.ts +26 -0
- package/dist/dashboard/daemon-reconcile.d.ts.map +1 -0
- package/dist/dashboard/daemon-reconcile.js +46 -0
- package/dist/dashboard/daemon-reconcile.js.map +1 -0
- package/dist/dashboard/debug-terminal.d.ts.map +1 -1
- package/dist/dashboard/debug-terminal.js +18 -4
- package/dist/dashboard/debug-terminal.js.map +1 -1
- package/dist/dashboard/events-sse.d.ts +60 -0
- package/dist/dashboard/events-sse.d.ts.map +1 -0
- package/dist/dashboard/events-sse.js +63 -0
- package/dist/dashboard/events-sse.js.map +1 -0
- package/dist/dashboard/h5-auth.d.ts +256 -0
- package/dist/dashboard/h5-auth.d.ts.map +1 -0
- package/dist/dashboard/h5-auth.js +825 -0
- package/dist/dashboard/h5-auth.js.map +1 -0
- package/dist/dashboard/managed-spawn.d.ts +36 -0
- package/dist/dashboard/managed-spawn.d.ts.map +1 -0
- package/dist/dashboard/managed-spawn.js +169 -0
- package/dist/dashboard/managed-spawn.js.map +1 -0
- package/dist/dashboard/preview-content-capability.d.ts +41 -0
- package/dist/dashboard/preview-content-capability.d.ts.map +1 -0
- package/dist/dashboard/preview-content-capability.js +127 -0
- package/dist/dashboard/preview-content-capability.js.map +1 -0
- package/dist/dashboard/preview-contract.d.ts +85 -0
- package/dist/dashboard/preview-contract.d.ts.map +1 -0
- package/dist/dashboard/preview-contract.js +198 -0
- package/dist/dashboard/preview-contract.js.map +1 -0
- package/dist/dashboard/preview-guard-page.d.ts +52 -0
- package/dist/dashboard/preview-guard-page.d.ts.map +1 -0
- package/dist/dashboard/preview-guard-page.js +162 -0
- package/dist/dashboard/preview-guard-page.js.map +1 -0
- package/dist/dashboard/preview-interaction.d.ts +57 -0
- package/dist/dashboard/preview-interaction.d.ts.map +1 -0
- package/dist/dashboard/preview-interaction.js +198 -0
- package/dist/dashboard/preview-interaction.js.map +1 -0
- package/dist/dashboard/preview-proxy.d.ts +113 -0
- package/dist/dashboard/preview-proxy.d.ts.map +1 -0
- package/dist/dashboard/preview-proxy.js +543 -0
- package/dist/dashboard/preview-proxy.js.map +1 -0
- package/dist/dashboard/public-redact.d.ts +23 -0
- package/dist/dashboard/public-redact.d.ts.map +1 -1
- package/dist/dashboard/public-redact.js +90 -21
- package/dist/dashboard/public-redact.js.map +1 -1
- package/dist/dashboard/request-identity.d.ts +77 -0
- package/dist/dashboard/request-identity.d.ts.map +1 -0
- package/dist/dashboard/request-identity.js +72 -0
- package/dist/dashboard/request-identity.js.map +1 -0
- package/dist/dashboard/session-cleanup.d.ts +5 -0
- package/dist/dashboard/session-cleanup.d.ts.map +1 -1
- package/dist/dashboard/session-cleanup.js +4 -0
- package/dist/dashboard/session-cleanup.js.map +1 -1
- package/dist/dashboard/settings-write-applier.d.ts +5 -1
- package/dist/dashboard/settings-write-applier.d.ts.map +1 -1
- package/dist/dashboard/settings-write-applier.js +14 -0
- package/dist/dashboard/settings-write-applier.js.map +1 -1
- package/dist/dashboard/standing-link.d.ts +76 -0
- package/dist/dashboard/standing-link.d.ts.map +1 -0
- package/dist/dashboard/standing-link.js +111 -0
- package/dist/dashboard/standing-link.js.map +1 -0
- package/dist/dashboard/terminal-control.d.ts +105 -0
- package/dist/dashboard/terminal-control.d.ts.map +1 -0
- package/dist/dashboard/terminal-control.js +296 -0
- package/dist/dashboard/terminal-control.js.map +1 -0
- package/dist/dashboard/terminal-front-proxy.d.ts +55 -0
- package/dist/dashboard/terminal-front-proxy.d.ts.map +1 -0
- package/dist/dashboard/terminal-front-proxy.js +397 -0
- package/dist/dashboard/terminal-front-proxy.js.map +1 -0
- package/dist/dashboard/terminal-view-capability.d.ts +97 -0
- package/dist/dashboard/terminal-view-capability.d.ts.map +1 -0
- package/dist/dashboard/terminal-view-capability.js +145 -0
- package/dist/dashboard/terminal-view-capability.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-api.d.ts +59 -0
- package/dist/dashboard/web/agent-workbench-api.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-api.js +227 -0
- package/dist/dashboard/web/agent-workbench-api.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-appearance-menu.d.ts +59 -0
- package/dist/dashboard/web/agent-workbench-appearance-menu.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-appearance-menu.js +195 -0
- package/dist/dashboard/web/agent-workbench-appearance-menu.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-appearance.d.ts +222 -0
- package/dist/dashboard/web/agent-workbench-appearance.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-appearance.js +499 -0
- package/dist/dashboard/web/agent-workbench-appearance.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-capabilities.d.ts +13 -0
- package/dist/dashboard/web/agent-workbench-capabilities.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-capabilities.js +24 -0
- package/dist/dashboard/web/agent-workbench-capabilities.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-chat.d.ts +90 -0
- package/dist/dashboard/web/agent-workbench-chat.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-chat.js +168 -0
- package/dist/dashboard/web/agent-workbench-chat.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-dock-page.d.ts +3 -0
- package/dist/dashboard/web/agent-workbench-dock-page.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-dock-page.js +23 -0
- package/dist/dashboard/web/agent-workbench-dock-page.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-dock-view.d.ts +22 -0
- package/dist/dashboard/web/agent-workbench-dock-view.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-dock-view.js +76 -0
- package/dist/dashboard/web/agent-workbench-dock-view.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-model.d.ts +196 -0
- package/dist/dashboard/web/agent-workbench-model.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-model.js +529 -0
- package/dist/dashboard/web/agent-workbench-model.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-page.d.ts +3 -0
- package/dist/dashboard/web/agent-workbench-page.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-page.js +27 -0
- package/dist/dashboard/web/agent-workbench-page.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-panes.d.ts +49 -0
- package/dist/dashboard/web/agent-workbench-panes.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-panes.js +468 -0
- package/dist/dashboard/web/agent-workbench-panes.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-session-list.d.ts +42 -0
- package/dist/dashboard/web/agent-workbench-session-list.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-session-list.js +353 -0
- package/dist/dashboard/web/agent-workbench-session-list.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-storage.d.ts +49 -0
- package/dist/dashboard/web/agent-workbench-storage.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-storage.js +197 -0
- package/dist/dashboard/web/agent-workbench-storage.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-touch.d.ts +46 -0
- package/dist/dashboard/web/agent-workbench-touch.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-touch.js +96 -0
- package/dist/dashboard/web/agent-workbench-touch.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-view.d.ts +34 -0
- package/dist/dashboard/web/agent-workbench-view.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-view.js +439 -0
- package/dist/dashboard/web/agent-workbench-view.js.map +1 -0
- package/dist/dashboard/web/app.d.ts.map +1 -1
- package/dist/dashboard/web/app.js +63 -2
- package/dist/dashboard/web/app.js.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.d.ts +18 -0
- package/dist/dashboard/web/bot-defaults-page.d.ts.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.js +362 -36
- package/dist/dashboard/web/bot-defaults-page.js.map +1 -1
- package/dist/dashboard/web/bot-defaults.d.ts +8 -0
- package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
- package/dist/dashboard/web/bot-defaults.js.map +1 -1
- package/dist/dashboard/web/control-csrf.d.ts +4 -0
- package/dist/dashboard/web/control-csrf.d.ts.map +1 -0
- package/dist/dashboard/web/control-csrf.js +26 -0
- package/dist/dashboard/web/control-csrf.js.map +1 -0
- package/dist/dashboard/web/dashboard-routes.d.ts.map +1 -1
- package/dist/dashboard/web/dashboard-routes.js +2 -0
- package/dist/dashboard/web/dashboard-routes.js.map +1 -1
- package/dist/dashboard/web/groups-page.d.ts.map +1 -1
- package/dist/dashboard/web/groups-page.js +11 -2
- package/dist/dashboard/web/groups-page.js.map +1 -1
- package/dist/dashboard/web/i18n.d.ts.map +1 -1
- package/dist/dashboard/web/i18n.js +140 -6
- package/dist/dashboard/web/i18n.js.map +1 -1
- package/dist/dashboard/web/overview-page.d.ts.map +1 -1
- package/dist/dashboard/web/overview-page.js +3 -2
- package/dist/dashboard/web/overview-page.js.map +1 -1
- package/dist/dashboard/web/sessions-page.d.ts.map +1 -1
- package/dist/dashboard/web/sessions-page.js +41 -1
- package/dist/dashboard/web/sessions-page.js.map +1 -1
- package/dist/dashboard/web/sessions.d.ts.map +1 -1
- package/dist/dashboard/web/sessions.js +5 -1
- package/dist/dashboard/web/sessions.js.map +1 -1
- package/dist/dashboard/web/settings-page.d.ts +3 -0
- package/dist/dashboard/web/settings-page.d.ts.map +1 -1
- package/dist/dashboard/web/settings-page.js +56 -10
- package/dist/dashboard/web/settings-page.js.map +1 -1
- package/dist/dashboard/web/skills-page.d.ts.map +1 -1
- package/dist/dashboard/web/skills-page.js +4 -2
- package/dist/dashboard/web/skills-page.js.map +1 -1
- package/dist/dashboard/web/store.d.ts +27 -2
- package/dist/dashboard/web/store.d.ts.map +1 -1
- package/dist/dashboard/web/store.js +43 -4
- package/dist/dashboard/web/store.js.map +1 -1
- package/dist/dashboard/web/ui.d.ts +3 -0
- package/dist/dashboard/web/ui.d.ts.map +1 -1
- package/dist/dashboard/web/ui.js +11 -0
- package/dist/dashboard/web/ui.js.map +1 -1
- package/dist/dashboard/web/update-action.d.ts +12 -0
- package/dist/dashboard/web/update-action.d.ts.map +1 -1
- package/dist/dashboard/web/update-action.js +11 -0
- package/dist/dashboard/web/update-action.js.map +1 -1
- package/dist/dashboard/workbench-doctor.d.ts +114 -0
- package/dist/dashboard/workbench-doctor.d.ts.map +1 -0
- package/dist/dashboard/workbench-doctor.js +620 -0
- package/dist/dashboard/workbench-doctor.js.map +1 -0
- package/dist/dashboard/workbench-ticket.d.ts +165 -0
- package/dist/dashboard/workbench-ticket.d.ts.map +1 -0
- package/dist/dashboard/workbench-ticket.js +495 -0
- package/dist/dashboard/workbench-ticket.js.map +1 -0
- package/dist/dashboard-web/app.js +1 -1
- package/dist/dashboard-web/chunks/agent-workbench-dock-page-IKAC5CFL.js +1 -0
- package/dist/dashboard-web/chunks/agent-workbench-page-M53UN5EB.js +1 -0
- package/dist/dashboard-web/chunks/bot-defaults-page-YKE5SDZF.js +10 -0
- package/dist/dashboard-web/chunks/chunk-22WIADUT.js +2 -0
- package/dist/dashboard-web/chunks/chunk-24ONYQMR.js +1 -0
- package/dist/dashboard-web/chunks/{chunk-6O7KXFD2.js → chunk-2W6SCN3M.js} +1 -1
- package/dist/dashboard-web/chunks/chunk-4XNJX6B3.js +1 -0
- package/dist/dashboard-web/chunks/{chunk-Q2MT4VWH.js → chunk-F6KNPF4R.js} +11 -9
- package/dist/dashboard-web/chunks/chunk-FXW3V4JR.js +1 -0
- package/dist/dashboard-web/chunks/chunk-G5ZS2YUS.js +1 -0
- package/dist/dashboard-web/chunks/chunk-KTQ7B6ZR.js +1 -0
- package/dist/dashboard-web/chunks/{chunk-U3ZFSO7E.js → chunk-NACP7BMR.js} +1 -1
- package/dist/dashboard-web/chunks/{connectors-page-2KZO5KSJ.js → connectors-page-VOISXXII.js} +1 -1
- package/dist/dashboard-web/chunks/{feedback-page-CLVTOLLO.js → feedback-page-RN6HRZMS.js} +1 -1
- package/dist/dashboard-web/chunks/groups-page-UQT6DCB7.js +8 -0
- package/dist/dashboard-web/chunks/{insights-page-4RPU2CRU.js → insights-page-HJFDYR5N.js} +3 -3
- package/dist/dashboard-web/chunks/{monitor-room-OTKQ2CXK.js → monitor-room-V7PCP47V.js} +1 -1
- package/dist/dashboard-web/chunks/{monitoring-page-IJPUB6JT.js → monitoring-page-NKEKVQAP.js} +1 -1
- package/dist/dashboard-web/chunks/{office-page-QSR3J44Y.js → office-page-GVJF73XW.js} +1 -1
- package/dist/dashboard-web/chunks/overview-page-KHLV6VTI.js +1 -0
- package/dist/dashboard-web/chunks/{plugin-page-VEGTCEAS.js → plugin-page-J3OF5IY4.js} +1 -1
- package/dist/dashboard-web/chunks/{roles-page-6NWJMOB5.js → roles-page-WQIRSOLZ.js} +1 -1
- package/dist/dashboard-web/chunks/{schedules-page-6I3LNXD4.js → schedules-page-J2DEY2X6.js} +1 -1
- package/dist/dashboard-web/chunks/sessions-page-7BQFEA5P.js +8 -0
- package/dist/dashboard-web/chunks/settings-page-BJEIOFJH.js +2 -0
- package/dist/dashboard-web/chunks/{skills-page-M2Q6L5CB.js → skills-page-HGIFR3IU.js} +2 -2
- package/dist/dashboard-web/chunks/{team-federation-page-7I7FDE3B.js → team-federation-page-MR5ZPL4B.js} +1 -1
- package/dist/dashboard-web/chunks/{v3-page-HQXRL65L.js → v3-page-GBR5JWPE.js} +2 -2
- package/dist/dashboard-web/chunks/{whiteboards-page-LQKC4TAZ.js → whiteboards-page-QAZM4BN3.js} +1 -1
- package/dist/dashboard-web/index.html +8 -1
- package/dist/dashboard-web/style.css +2006 -10
- package/dist/dashboard.js +1017 -264
- package/dist/dashboard.js.map +1 -1
- package/dist/dsh-runner.js +8 -1
- package/dist/dsh-runner.js.map +1 -1
- package/dist/global-config.d.ts +30 -0
- package/dist/global-config.d.ts.map +1 -1
- package/dist/global-config.js +33 -0
- package/dist/global-config.js.map +1 -1
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +46 -27
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/zh.d.ts.map +1 -1
- package/dist/i18n/zh.js +43 -27
- package/dist/i18n/zh.js.map +1 -1
- package/dist/im/lark/card-builder.d.ts +1 -1
- package/dist/im/lark/card-builder.d.ts.map +1 -1
- package/dist/im/lark/card-builder.js +22 -6
- package/dist/im/lark/card-builder.js.map +1 -1
- package/dist/im/lark/card-handler.d.ts.map +1 -1
- package/dist/im/lark/card-handler.js +118 -24
- package/dist/im/lark/card-handler.js.map +1 -1
- package/dist/im/lark/client.d.ts +15 -0
- package/dist/im/lark/client.d.ts.map +1 -1
- package/dist/im/lark/client.js +30 -0
- package/dist/im/lark/client.js.map +1 -1
- package/dist/im/lark/event-dispatcher.d.ts +48 -0
- package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
- package/dist/im/lark/event-dispatcher.js +138 -41
- package/dist/im/lark/event-dispatcher.js.map +1 -1
- package/dist/im/lark/identity-cache.d.ts +14 -6
- package/dist/im/lark/identity-cache.d.ts.map +1 -1
- package/dist/im/lark/identity-cache.js +69 -26
- package/dist/im/lark/identity-cache.js.map +1 -1
- package/dist/im/lark/lark-hosts.d.ts +13 -0
- package/dist/im/lark/lark-hosts.d.ts.map +1 -1
- package/dist/im/lark/lark-hosts.js +16 -0
- package/dist/im/lark/lark-hosts.js.map +1 -1
- package/dist/im/lark/overview-card.d.ts +22 -0
- package/dist/im/lark/overview-card.d.ts.map +1 -1
- package/dist/im/lark/overview-card.js +53 -3
- package/dist/im/lark/overview-card.js.map +1 -1
- package/dist/im/lark/sessions-card.d.ts.map +1 -1
- package/dist/im/lark/sessions-card.js +26 -3
- package/dist/im/lark/sessions-card.js.map +1 -1
- package/dist/im/lark/workflow-slash-command.d.ts +6 -0
- package/dist/im/lark/workflow-slash-command.d.ts.map +1 -1
- package/dist/im/lark/workflow-slash-command.js +7 -0
- package/dist/im/lark/workflow-slash-command.js.map +1 -1
- package/dist/index-daemon.js +27 -4
- package/dist/index-daemon.js.map +1 -1
- package/dist/index-dashboard.d.ts +3 -0
- package/dist/index-dashboard.d.ts.map +1 -0
- package/dist/index-dashboard.js +94 -0
- package/dist/index-dashboard.js.map +1 -0
- package/dist/platform/team-agents-client.d.ts +199 -0
- package/dist/platform/team-agents-client.d.ts.map +1 -0
- package/dist/platform/team-agents-client.js +263 -0
- package/dist/platform/team-agents-client.js.map +1 -0
- package/dist/platform/tunnel-client.d.ts +6 -0
- package/dist/platform/tunnel-client.d.ts.map +1 -1
- package/dist/platform/tunnel-client.js.map +1 -1
- package/dist/services/async-trigger-state.d.ts +7 -3
- package/dist/services/async-trigger-state.d.ts.map +1 -1
- package/dist/services/async-trigger-state.js +28 -0
- package/dist/services/async-trigger-state.js.map +1 -1
- package/dist/services/async-trigger-store.d.ts +13 -4
- package/dist/services/async-trigger-store.d.ts.map +1 -1
- package/dist/services/async-trigger-store.js +55 -8
- package/dist/services/async-trigger-store.js.map +1 -1
- package/dist/services/bot-config-store.d.ts +1 -11
- package/dist/services/bot-config-store.d.ts.map +1 -1
- package/dist/services/bot-config-store.js +27 -3
- package/dist/services/bot-config-store.js.map +1 -1
- package/dist/services/bot-profile-store.d.ts +17 -2
- package/dist/services/bot-profile-store.d.ts.map +1 -1
- package/dist/services/bot-profile-store.js +93 -12
- package/dist/services/bot-profile-store.js.map +1 -1
- package/dist/services/bridge-fallback-gate.d.ts +15 -7
- package/dist/services/bridge-fallback-gate.d.ts.map +1 -1
- package/dist/services/bridge-fallback-gate.js +43 -16
- package/dist/services/bridge-fallback-gate.js.map +1 -1
- package/dist/services/bridge-turn-queue.d.ts +10 -1
- package/dist/services/bridge-turn-queue.d.ts.map +1 -1
- package/dist/services/bridge-turn-queue.js +29 -9
- package/dist/services/bridge-turn-queue.js.map +1 -1
- package/dist/services/claude-transcript.d.ts +19 -0
- package/dist/services/claude-transcript.d.ts.map +1 -1
- package/dist/services/claude-transcript.js +57 -5
- package/dist/services/claude-transcript.js.map +1 -1
- package/dist/services/codex-app-threads.d.ts +2 -0
- package/dist/services/codex-app-threads.d.ts.map +1 -1
- package/dist/services/codex-app-threads.js +1 -1
- package/dist/services/codex-app-threads.js.map +1 -1
- package/dist/services/codex-reasoning-effort.d.ts +8 -0
- package/dist/services/codex-reasoning-effort.d.ts.map +1 -1
- package/dist/services/codex-reasoning-effort.js +24 -0
- package/dist/services/codex-reasoning-effort.js.map +1 -1
- package/dist/services/cursor-resume-policy.d.ts.map +1 -1
- package/dist/services/cursor-resume-policy.js +15 -3
- package/dist/services/cursor-resume-policy.js.map +1 -1
- package/dist/services/open-platform-rename.d.ts.map +1 -1
- package/dist/services/open-platform-rename.js +3 -2
- package/dist/services/open-platform-rename.js.map +1 -1
- package/dist/services/ordinary-turn-recovery.d.ts +76 -0
- package/dist/services/ordinary-turn-recovery.d.ts.map +1 -0
- package/dist/services/ordinary-turn-recovery.js +349 -0
- package/dist/services/ordinary-turn-recovery.js.map +1 -0
- package/dist/services/peer-cross-ref-store.d.ts +8 -0
- package/dist/services/peer-cross-ref-store.d.ts.map +1 -0
- package/dist/services/peer-cross-ref-store.js +95 -0
- package/dist/services/peer-cross-ref-store.js.map +1 -0
- package/dist/services/pi-transcript.d.ts.map +1 -1
- package/dist/services/pi-transcript.js +10 -6
- package/dist/services/pi-transcript.js.map +1 -1
- package/dist/services/resume-fresh-policy.d.ts +17 -0
- package/dist/services/resume-fresh-policy.d.ts.map +1 -0
- package/dist/services/resume-fresh-policy.js +24 -0
- package/dist/services/resume-fresh-policy.js.map +1 -0
- package/dist/services/session-group-title.d.ts +1 -0
- package/dist/services/session-group-title.d.ts.map +1 -1
- package/dist/services/session-group-title.js +16 -1
- package/dist/services/session-group-title.js.map +1 -1
- package/dist/services/session-groups-store.d.ts +30 -0
- package/dist/services/session-groups-store.d.ts.map +1 -1
- package/dist/services/session-groups-store.js +26 -4
- package/dist/services/session-groups-store.js.map +1 -1
- package/dist/services/session-owner-notification.d.ts +9 -0
- package/dist/services/session-owner-notification.d.ts.map +1 -0
- package/dist/services/session-owner-notification.js +10 -0
- package/dist/services/session-owner-notification.js.map +1 -0
- package/dist/services/session-owner-reminder-config-store.d.ts +9 -0
- package/dist/services/session-owner-reminder-config-store.d.ts.map +1 -0
- package/dist/services/session-owner-reminder-config-store.js +24 -0
- package/dist/services/session-owner-reminder-config-store.js.map +1 -0
- package/dist/services/session-owner-reminder-store.d.ts +5 -0
- package/dist/services/session-owner-reminder-store.d.ts.map +1 -0
- package/dist/services/session-owner-reminder-store.js +54 -0
- package/dist/services/session-owner-reminder-store.js.map +1 -0
- package/dist/services/session-store.d.ts +98 -21
- package/dist/services/session-store.d.ts.map +1 -1
- package/dist/services/session-store.js +406 -48
- package/dist/services/session-store.js.map +1 -1
- package/dist/services/structured-bridge-clis.d.ts +15 -2
- package/dist/services/structured-bridge-clis.d.ts.map +1 -1
- package/dist/services/structured-bridge-clis.js +16 -1
- package/dist/services/structured-bridge-clis.js.map +1 -1
- package/dist/services/transcript-resolver.d.ts +1 -1
- package/dist/services/transcript-resolver.d.ts.map +1 -1
- package/dist/services/transcript-resolver.js +6 -1
- package/dist/services/transcript-resolver.js.map +1 -1
- package/dist/setup/bot-config-editor.d.ts.map +1 -1
- package/dist/setup/bot-config-editor.js +7 -2
- package/dist/setup/bot-config-editor.js.map +1 -1
- package/dist/setup/ensure-herdr-integrations.d.ts +13 -0
- package/dist/setup/ensure-herdr-integrations.d.ts.map +1 -1
- package/dist/setup/ensure-herdr-integrations.js +21 -3
- package/dist/setup/ensure-herdr-integrations.js.map +1 -1
- package/dist/setup/open-platform-automation.d.ts +1 -0
- package/dist/setup/open-platform-automation.d.ts.map +1 -1
- package/dist/setup/open-platform-automation.js +107 -7
- package/dist/setup/open-platform-automation.js.map +1 -1
- package/dist/skills/definitions.d.ts +17 -0
- package/dist/skills/definitions.d.ts.map +1 -1
- package/dist/skills/definitions.js +78 -8
- package/dist/skills/definitions.js.map +1 -1
- package/dist/skills/injection-mode.d.ts +24 -3
- package/dist/skills/injection-mode.d.ts.map +1 -1
- package/dist/skills/injection-mode.js +64 -15
- package/dist/skills/injection-mode.js.map +1 -1
- package/dist/skills/installer.d.ts +18 -0
- package/dist/skills/installer.d.ts.map +1 -1
- package/dist/skills/installer.js +45 -1
- package/dist/skills/installer.js.map +1 -1
- package/dist/types.d.ts +222 -10
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/bot-routing.d.ts +1 -1
- package/dist/utils/bot-routing.d.ts.map +1 -1
- package/dist/utils/bot-routing.js.map +1 -1
- package/dist/utils/child-env.d.ts +92 -2
- package/dist/utils/child-env.d.ts.map +1 -1
- package/dist/utils/child-env.js +195 -1
- package/dist/utils/child-env.js.map +1 -1
- package/dist/utils/cli-usage-limit.d.ts +25 -14
- package/dist/utils/cli-usage-limit.d.ts.map +1 -1
- package/dist/utils/cli-usage-limit.js +25 -15
- package/dist/utils/cli-usage-limit.js.map +1 -1
- package/dist/utils/daemon-rejection-guard.d.ts +35 -0
- package/dist/utils/daemon-rejection-guard.d.ts.map +1 -0
- package/dist/utils/daemon-rejection-guard.js +101 -0
- package/dist/utils/daemon-rejection-guard.js.map +1 -0
- package/dist/utils/dashboard-env.d.ts +53 -0
- package/dist/utils/dashboard-env.d.ts.map +1 -0
- package/dist/utils/dashboard-env.js +116 -0
- package/dist/utils/dashboard-env.js.map +1 -0
- package/dist/utils/global-install.d.ts.map +1 -1
- package/dist/utils/global-install.js +61 -5
- package/dist/utils/global-install.js.map +1 -1
- package/dist/utils/install-diagnostics.d.ts +14 -7
- package/dist/utils/install-diagnostics.d.ts.map +1 -1
- package/dist/utils/install-diagnostics.js +20 -11
- package/dist/utils/install-diagnostics.js.map +1 -1
- package/dist/utils/local-dev-update.d.ts +132 -0
- package/dist/utils/local-dev-update.d.ts.map +1 -0
- package/dist/utils/local-dev-update.js +176 -0
- package/dist/utils/local-dev-update.js.map +1 -0
- package/dist/utils/pending-input-queue.d.ts +12 -1
- package/dist/utils/pending-input-queue.d.ts.map +1 -1
- package/dist/utils/pending-input-queue.js.map +1 -1
- package/dist/worker.js +1517 -236
- package/dist/worker.js.map +1 -1
- package/dist/workflows/definition.d.ts +68 -68
- package/dist/workflows/events/payloads.d.ts +14 -14
- package/dist/workflows/events/schema.d.ts +312 -312
- package/dist/workflows/migration/v2-run-archive-schema.d.ts +40 -40
- package/dist/workflows/v3/cli-run.d.ts.map +1 -1
- package/dist/workflows/v3/cli-run.js +7 -0
- package/dist/workflows/v3/cli-run.js.map +1 -1
- package/dist/workflows/v3/goal-cli.d.ts +3 -0
- package/dist/workflows/v3/goal-cli.d.ts.map +1 -1
- package/dist/workflows/v3/goal-cli.js +11 -0
- package/dist/workflows/v3/goal-cli.js.map +1 -1
- package/dist/workflows/v3/run-envelope.d.ts +144 -144
- package/package.json +7 -2
- package/dist/cli/pm2-god-admission.d.ts +0 -8
- package/dist/cli/pm2-god-admission.d.ts.map +0 -1
- package/dist/cli/pm2-god-admission.js +0 -25
- package/dist/cli/pm2-god-admission.js.map +0 -1
- package/dist/core/riff-shutdown-detach.d.ts.map +0 -1
- package/dist/core/riff-shutdown-detach.js.map +0 -1
- package/dist/core/riff-worker-shutdown-readiness.d.ts.map +0 -1
- package/dist/core/riff-worker-shutdown-readiness.js.map +0 -1
- package/dist/dashboard-web/chunks/bot-defaults-page-4RENHE7J.js +0 -10
- package/dist/dashboard-web/chunks/chunk-2WQDS65D.js +0 -1
- package/dist/dashboard-web/chunks/chunk-G5XGBCM6.js +0 -1
- package/dist/dashboard-web/chunks/chunk-WLIVBPJC.js +0 -1
- package/dist/dashboard-web/chunks/groups-page-HLASRTSY.js +0 -8
- package/dist/dashboard-web/chunks/overview-page-6OK63V4V.js +0 -1
- package/dist/dashboard-web/chunks/sessions-page-B2TXGJDO.js +0 -8
- package/dist/dashboard-web/chunks/settings-page-6KJADSC6.js +0 -2
|
@@ -514,12 +514,16 @@ botmux send --top-level --chat-id oc_xxxxxxxxxxxx "📦 自动推送内容..."
|
|
|
514
514
|
`;
|
|
515
515
|
const BOTS_SKILL = `---
|
|
516
516
|
name: botmux-bots
|
|
517
|
-
description:
|
|
517
|
+
description: 列出可协作的机器人(协作花名册)。默认列**当前飞书群内**的 bot(含能力标签、是否有团队角色、能否可靠 @ 到它);加 --scope team 则跨机列**同团队、已 opt-in** 的 agent 供按专长发现,并可用 create-group --team 拉进新群、或 bots invite 补进已有团队群。在需要点名协作、交棒队友、或跨机找/拉别人的 agent 前使用。
|
|
518
518
|
---
|
|
519
519
|
|
|
520
|
-
# botmux-bots —
|
|
520
|
+
# botmux-bots — 协作花名册(群内 + 团队维度)
|
|
521
521
|
|
|
522
|
-
|
|
522
|
+
两种 scope,用途不同:
|
|
523
|
+
- **chat(默认)**:\`botmux bots list\` —— 列**当前群里**的 bot,判断能不能 @、派活。
|
|
524
|
+
- **team**:\`botmux bots list --scope team\` —— 跨机列**同团队、已 opt-in** 的 agent(在别人机器上、还没进你的群),用于按专长发现后拉群协作。
|
|
525
|
+
|
|
526
|
+
## 用法(chat scope,默认)
|
|
523
527
|
|
|
524
528
|
\`\`\`bash
|
|
525
529
|
botmux bots list
|
|
@@ -535,6 +539,12 @@ botmux bots list
|
|
|
535
539
|
- \`mentionable\`:**你能不能可靠地 @ 到它**(关键)
|
|
536
540
|
- \`mentionSource\`:\`cross-ref\` | \`observed\` | \`self\` | \`fallback\`
|
|
537
541
|
|
|
542
|
+
另外每行还带两块**派活前的只读决策信息**(都是从本地配置推导,不代表运行时在线):
|
|
543
|
+
- \`dispatch\`:\`trigger\`(唤醒方式,恒为 \`mention\`)+ \`workspace\`(派活要不要指定仓库:\`required\`|\`optional\`|\`none\`|\`unknown\`)
|
|
544
|
+
- \`collaboration\`:\`reachability\`(能否可靠寻址)、\`workspace\`(仓库要求 + 工作区候选来源)、\`authorization\`(\`talk\` 对话授权 / \`operate\` 管理动作授权,两层分开判)、\`session\`(普通群 \`mentionMode\` 要不要 @、\`replyMode\` 回复落哪)、\`runtime\`(\`transport\` 有无飞书通道、\`deployment\` 本地/远端、\`stale\` 健康证据是否过期)
|
|
545
|
+
|
|
546
|
+
顶层还有一个 \`collaborationHelp\`:**逐字段逐枚举值的中文解释就印在同一份输出里**——不确定某个值什么意思,直接查它,不用来问。
|
|
547
|
+
|
|
538
548
|
\`\`\`json
|
|
539
549
|
{
|
|
540
550
|
"sessionId": "...",
|
|
@@ -542,17 +552,59 @@ botmux bots list
|
|
|
542
552
|
"bots": [
|
|
543
553
|
{ "name": "后端Bot", "openId": "ou_yyy", "isSelf": false, "larkAppId": "cli_b",
|
|
544
554
|
"capability": "服务端排查,擅长日志", "hasTeamRole": true,
|
|
545
|
-
"mentionable": true, "mentionSource": "cross-ref"
|
|
555
|
+
"mentionable": true, "mentionSource": "cross-ref",
|
|
556
|
+
"dispatch": { "trigger": "mention", "workspace": "required" },
|
|
557
|
+
"collaboration": {
|
|
558
|
+
"reachability": "ready",
|
|
559
|
+
"workspace": { "requirement": "required", "source": "oncall" },
|
|
560
|
+
"authorization": { "talk": "preflight-required", "operate": false },
|
|
561
|
+
"session": { "mentionMode": "always", "replyMode": "chat-topic" },
|
|
562
|
+
"runtime": { "transport": true, "deployment": "local", "stale": "unknown" }
|
|
563
|
+
} }
|
|
546
564
|
],
|
|
547
|
-
"total": 1
|
|
565
|
+
"total": 1,
|
|
566
|
+
"collaborationHelp": { "general": "unknown 表示当前命令没有足够证据…", "fields": { "reachability": { "description": "…", "values": { "ready": "…" } } } }
|
|
548
567
|
}
|
|
549
568
|
\`\`\`
|
|
550
569
|
|
|
551
|
-
##
|
|
570
|
+
## 关键规则(chat scope)
|
|
552
571
|
|
|
553
572
|
1. **只 @ \`mentionable=true\` 的机器人**。\`mentionable=false\` 表示"知道它在群里,但当前点不准"(飞书 open_id 按 app 隔离)——这种先让它 / 用户在群里 \`/introduce\` 一次,再点名。
|
|
554
573
|
2. 按 \`capability\` 挑合适的队友,而不是乱点。
|
|
555
|
-
3.
|
|
574
|
+
3. **\`unknown\` ≠ 不可用、更 ≠ 离线**:只是这条命令当前没有足够证据。别把 \`unknown\` 当成"它挂了"而放弃派活;语义拿不准就查 \`collaborationHelp\`。
|
|
575
|
+
4. \`authorization.operate\` 默认按 \`false\`/\`unknown\` 处理:能对话不等于能让它跑 \`/repo\`、\`/restart\` 等管理动作,那类要单独授权。
|
|
576
|
+
5. 配合 botmux send:\`botmux send --mention "ou_yyy:后端Bot" "请帮忙处理"\`
|
|
577
|
+
|
|
578
|
+
## 团队维度:跨机发现 + 拉群(--scope team)
|
|
579
|
+
|
|
580
|
+
用途:找到**同团队、还没进你群、在别人机器上**的 agent,按专长挑出来,拉进一个聚焦新群一起干活。
|
|
581
|
+
|
|
582
|
+
\`\`\`bash
|
|
583
|
+
# 1) 发现:列同团队已 opt-in 的 agent(本机在多团队时用 --team 指定)
|
|
584
|
+
botmux bots list --scope team [--team <teamId>]
|
|
585
|
+
|
|
586
|
+
# 2a) 建新群:把发现到的 agent(按 appId)+ 各自 owner 拉进一个平台代建的**新群**
|
|
587
|
+
botmux create-group --team <teamId> --agent <appId> [--agent ...] [--name "群名"]
|
|
588
|
+
|
|
589
|
+
# 2b) 往已有群补人:把 agent + 各自 owner 加进一个**你已在场的**群(恒带 owner)
|
|
590
|
+
botmux bots invite --chat <chatId> --team <teamId> --agent <appId> [--agent ...]
|
|
591
|
+
\`\`\`
|
|
592
|
+
|
|
593
|
+
team scope 输出的 \`agents[]\` 每项:\`appId\`(拉群/补人就用它)、\`name\`、\`specialties\`(专长标签数组,发现依据)、\`mentionable\`、\`online\`、\`owner\`、\`machineId/machineName\`。
|
|
594
|
+
|
|
595
|
+
**必须知道的语义**:
|
|
596
|
+
- **opt-in 闸**:发现列表**只含已加入团队的 agent**——即它的 owner 在平台「管理机器人」里把它显式加进了团队(\`team.bots\`)。没加进来的 agent 你看不到、也拉不动。查不到某个 agent?多半是对方 owner 还没 opt-in,不是命令坏了。
|
|
597
|
+
- **specialties / mentionable / online 是 agent 自报**:仅供你挑选参考,**不是可信凭据**,别拿它当权限判断。
|
|
598
|
+
- **CLI 不做任何授权判断**:团队成员校验、opt-in 闸全在平台。你只管发现 + 拉群/补人,平台会拒绝越权的调用。
|
|
599
|
+
- **只认 appId、不需要 @**:正因为别人 bot 进你群前你根本 @不到它,team 拉群/补人全走 appId + machine-auth,天然绕开"看不见就点不着"。结果里 \`invalidBotIds\` / \`invalidOwnerUnionIds\` 是平台过滤掉的(未 opt-in / 拉不动),如实展示即可。
|
|
600
|
+
- \`bots invite\` 的目标群要满足:**平台机器人(BotmuxPlatform)已在群里**(否则平台加不进人 → 403 \`platform_bot_not_in_chat\`,先把它拉进群)+ **你本人已在该群**(→ 403 \`requester_not_in_chat\`,只能往你自己在场的群补人)+ **非机器人大厅**(→ 403 \`chat_is_hall\`)。补人恒把 agent + 各自 owner 一起拉进。
|
|
601
|
+
- 平台端点没上线时命令会明确提示「平台尚未部署…端点」——那是平台侧还没部署,不是你调错。
|
|
602
|
+
|
|
603
|
+
**三条拉人路径 —— 别混**:
|
|
604
|
+
- \`create-group --team\`:跨机、把**同团队但不在任何共同群**的 agent + owner **新建**成一个聚焦群。"首次把没见过面的 agent 聚到一起"。
|
|
605
|
+
- \`bots invite --chat\`:把同团队 agent + 各自 owner 加进一个**你已在场、且平台机器人也在**的群(跨机、machine-auth、只认 appId)。"群已经在了,往里补同团队的人(含其 owner)"。
|
|
606
|
+
- \`/invite\`(飞书群内 slash):把 bot 加进**当前已存在的**群,走飞书原生加成员,**限同租户**、只拉 bot 不带 owner。"群在了,把某个同租户 bot 也拉进来"。
|
|
607
|
+
- 一句话:跨 team 从零聚人 → \`create-group --team\`;往你已在场的群补同团队的人 → \`bots invite\`;当前群补同租户 bot → \`/invite\`。
|
|
556
608
|
|
|
557
609
|
## 要把任务交棒给别的机器人?
|
|
558
610
|
|
|
@@ -1496,11 +1548,29 @@ export const BUILTIN_SKILLS = [
|
|
|
1496
1548
|
{ name: 'botmux-send', content: SEND_SKILL },
|
|
1497
1549
|
{ name: 'botmux-bots', content: BOTS_SKILL },
|
|
1498
1550
|
{ name: 'botmux-handoff', content: HANDOFF_SKILL },
|
|
1551
|
+
{ name: 'botmux-orchestrate', content: ORCHESTRATE_SKILL },
|
|
1552
|
+
];
|
|
1553
|
+
/** The v3 Workflow skill family, gated by the machine-wide workflow kill-switch
|
|
1554
|
+
* (`workflow.enabled` / `BOTMUX_WORKFLOW_ENABLED`, see
|
|
1555
|
+
* global-config.ts `isWorkflowFeatureEnabled`). Kept OUT of {@link BUILTIN_SKILLS}
|
|
1556
|
+
* — which is installed/advertised unconditionally — so that when the feature is
|
|
1557
|
+
* disabled these skills are neither written to a CLI's skills dir nor listed in
|
|
1558
|
+
* the prompt catalog (mirrors how the whiteboard skill is conditional).
|
|
1559
|
+
*
|
|
1560
|
+
* `botmux-orchestrate` is deliberately NOT here: it is a separate multi-bot
|
|
1561
|
+
* long-running-orchestration capability, not a v3 workflow, and stays available
|
|
1562
|
+
* regardless of the workflow switch.
|
|
1563
|
+
*
|
|
1564
|
+
* Order matches their historical position in the catalog (right after
|
|
1565
|
+
* `botmux-handoff`) so the ENABLED path renders byte-for-byte as before. */
|
|
1566
|
+
export const WORKFLOW_FEATURE_SKILLS = [
|
|
1499
1567
|
{ name: 'botmux-workflow-create', content: WORKFLOW_CREATE_SKILL },
|
|
1500
1568
|
{ name: 'botmux-workflow', content: WORKFLOW_V3_SKILL },
|
|
1501
1569
|
{ name: 'botmux-goal-ask', content: GOAL_ASK_SKILL },
|
|
1502
|
-
{ name: 'botmux-orchestrate', content: ORCHESTRATE_SKILL },
|
|
1503
1570
|
];
|
|
1571
|
+
/** Names in {@link WORKFLOW_FEATURE_SKILLS}, for install cleanup + catalog
|
|
1572
|
+
* filtering when the workflow feature is off. */
|
|
1573
|
+
export const WORKFLOW_FEATURE_SKILL_NAMES = WORKFLOW_FEATURE_SKILLS.map((s) => s.name);
|
|
1504
1574
|
/** Skills that earlier botmux versions installed but no longer ship. The
|
|
1505
1575
|
* installer cleans these up so renamed skills don't linger as duplicates
|
|
1506
1576
|
* in the CLI's skills directory. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/skills/definitions.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAS5F,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4FtB,CAAC;AAEF,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BzB,CAAC;AAEF,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqErB,CAAC;AAEF,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDpB,CAAC;AAEF,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgQlB,CAAC;AAEF,MAAM,UAAU,GAAG
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/skills/definitions.ts"],"names":[],"mappings":"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"}
|
|
@@ -53,10 +53,16 @@ export declare function builtinSkillEntries(opts: {
|
|
|
53
53
|
* Send remains as an on-demand complex-delivery skill. Set for the prompt-mode
|
|
54
54
|
* catalog; leave off for `botmux skill list`, which surfaces everything. */
|
|
55
55
|
excludeRoutingCovered?: boolean;
|
|
56
|
+
/** Machine-wide v3 Workflow switch. Defaults to the live accessor
|
|
57
|
+
* (`isWorkflowFeatureEnabled`); when off, the botmux-workflow family is not
|
|
58
|
+
* advertised. Explicit for tests. */
|
|
59
|
+
workflowEnabled?: boolean;
|
|
56
60
|
}): BuiltinSkillEntry[];
|
|
57
61
|
/** Full SKILL.md body for a built-in skill name — backs `botmux skill show`
|
|
58
62
|
* on-demand reads in `prompt` mode (independent of the per-CLI toggles above,
|
|
59
|
-
* so a name that made it into the catalog always resolves).
|
|
63
|
+
* so a name that made it into the catalog always resolves). The v3 Workflow
|
|
64
|
+
* family resolves only while the feature is enabled, so a disabled host can't
|
|
65
|
+
* pull a skill it never advertised. */
|
|
60
66
|
export declare function builtinSkillContent(name: string): string | undefined;
|
|
61
67
|
/**
|
|
62
68
|
* The `<botmux_builtin_skills>` prompt block for `prompt` mode: a one-line-per-skill
|
|
@@ -68,12 +74,17 @@ export declare function builtinSkillContent(name: string): string | undefined;
|
|
|
68
74
|
* Contract: only the outer wrapper is structural. The intro and catalog lines
|
|
69
75
|
* are prose (including dynamic skill descriptions), so escape them here.
|
|
70
76
|
*/
|
|
71
|
-
export declare function buildBuiltinSkillCatalogBlock(entries: BuiltinSkillEntry[], locale?: Locale
|
|
77
|
+
export declare function buildBuiltinSkillCatalogBlock(entries: BuiltinSkillEntry[], locale?: Locale, opts?: {
|
|
78
|
+
hasRoutingBlock?: boolean;
|
|
79
|
+
}): string;
|
|
72
80
|
/** `off` mode nudge: no catalog, just point the model at the CLI's own help.
|
|
73
81
|
* Returned as an XML block (same `<botmux_builtin_skills>` tag as the catalog)
|
|
74
82
|
* so it's consistently wrapped rather than a bare line in the prompt. Its
|
|
75
83
|
* inner help line follows the same text-only contract as the catalog body. */
|
|
76
|
-
export declare function builtinSkillHelpPointer(locale?: Locale
|
|
84
|
+
export declare function builtinSkillHelpPointer(locale?: Locale, opts?: {
|
|
85
|
+
hasRoutingBlock?: boolean;
|
|
86
|
+
workflowEnabled?: boolean;
|
|
87
|
+
}): string;
|
|
77
88
|
/**
|
|
78
89
|
* Skill catalog / help block for `injectsSessionContext` CLIs that only have a
|
|
79
90
|
* global `skillsDir` (genius / grok). Session-manager omits the per-message
|
|
@@ -85,9 +96,19 @@ export declare function builtinSkillHelpPointer(locale?: Locale): string;
|
|
|
85
96
|
* - `prompt` → compact catalog (on-demand `botmux skill show`)
|
|
86
97
|
* - `off` → help pointer only
|
|
87
98
|
* - `global` → empty (files already on disk via ensureCliSkills)
|
|
99
|
+
*
|
|
100
|
+
* `hasRoutingBlock` (default true) states whether the caller ALSO emits a
|
|
101
|
+
* `<botmux_routing>` block. genius/grok do, via buildBotmuxSystemPromptText.
|
|
102
|
+
* mojo does not — it is `injectsSessionContext` yet builds its own prompt with no
|
|
103
|
+
* routing at all — and passing `false` matters twice:
|
|
104
|
+
* - history/quoted/bots must stay IN the catalog. They are filtered out only
|
|
105
|
+
* because routing is assumed to teach them; with no routing they would be
|
|
106
|
+
* documented nowhere.
|
|
107
|
+
* - the prose must not reference a `<botmux_routing>` block that isn't there.
|
|
88
108
|
*/
|
|
89
109
|
export declare function builtinSkillBlockForInjectsSessionContext(larkAppId: string | undefined, locale: Locale | undefined, opts?: {
|
|
90
110
|
asksViaHook?: boolean;
|
|
91
111
|
whiteboardEnabled?: boolean;
|
|
112
|
+
hasRoutingBlock?: boolean;
|
|
92
113
|
}): string;
|
|
93
114
|
//# sourceMappingURL=injection-mode.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injection-mode.d.ts","sourceRoot":"","sources":["../../src/skills/injection-mode.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"injection-mode.d.ts","sourceRoot":"","sources":["../../src/skills/injection-mode.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAuB/C,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC;AAE7D,yEAAyE;AACzE,eAAO,MAAM,+BAA+B,EAAE,kBAA6B,CAAC;AAE5E,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,kBAAkB,CAExE;AAED,2EAA2E;AAC3E,wBAAgB,kCAAkC,IAAI,kBAAkB,CAGvE;AAED,uEAAuE;AACvE,wBAAgB,yBAAyB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAElF;AAED,8EAA8E;AAC9E,wBAAgB,+BAA+B,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAQtF;AAQD;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAWpE;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAClE,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,qBAAqB,CAI1G;AAID,MAAM,WAAW,iBAAiB;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;CAAE;AAwB1F;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;iFAE6E;IAC7E,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;0CAEsC;IACtC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,GAAG,iBAAiB,EAAE,CAOtB;AAED;;;;wCAIwC;AACxC,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAOpE;AAED;;;;;;;;;GASG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,iBAAiB,EAAE,EAC5B,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,GAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAA;CAAO,GACvC,MAAM,CAkBR;AAED;;;+EAG+E;AAC/E,wBAAgB,uBAAuB,CACrC,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,GAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,OAAO,CAAA;CAAO,GAClE,MAAM,CAeR;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,yCAAyC,CACvD,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,OAAO,CAAA;CAAO,GAC3F,MAAM,CAiBR"}
|
|
@@ -28,7 +28,21 @@ import { readGlobalConfig } from '../global-config.js';
|
|
|
28
28
|
import { loadBotConfigs } from '../bot-registry.js';
|
|
29
29
|
import { createCliAdapterSync } from '../adapters/cli/registry.js';
|
|
30
30
|
import { escapeXmlText } from '../utils/xml.js';
|
|
31
|
-
import {
|
|
31
|
+
import { isWorkflowFeatureEnabled } from '../global-config.js';
|
|
32
|
+
import { BUILTIN_SKILLS, WORKFLOW_FEATURE_SKILLS, ASK_SKILL, ASK_SKILL_NAME, WHITEBOARD_SKILL, WHITEBOARD_SKILL_NAME, } from './definitions.js';
|
|
33
|
+
/** The unconditional built-ins with the v3 Workflow family spliced back in at
|
|
34
|
+
* their historical position (right after `botmux-handoff`) when the machine-wide
|
|
35
|
+
* workflow switch is ON. Splicing rather than appending keeps the ENABLED-path
|
|
36
|
+
* catalog byte-for-byte identical to before the family was factored out; when
|
|
37
|
+
* the switch is OFF the family is simply absent. `botmux-orchestrate` is part of
|
|
38
|
+
* BUILTIN_SKILLS and is never gated here. */
|
|
39
|
+
function baseBuiltinSkills(workflowEnabled) {
|
|
40
|
+
if (!workflowEnabled)
|
|
41
|
+
return [...BUILTIN_SKILLS];
|
|
42
|
+
const anchor = BUILTIN_SKILLS.findIndex((s) => s.name === 'botmux-handoff');
|
|
43
|
+
const at = anchor >= 0 ? anchor + 1 : BUILTIN_SKILLS.length;
|
|
44
|
+
return [...BUILTIN_SKILLS.slice(0, at), ...WORKFLOW_FEATURE_SKILLS, ...BUILTIN_SKILLS.slice(at)];
|
|
45
|
+
}
|
|
32
46
|
/** Machine default when neither the bot nor config.json pins a value. */
|
|
33
47
|
export const DEFAULT_BUILTIN_SKILL_INJECTION = 'prompt';
|
|
34
48
|
export function isSkillInjectionMode(v) {
|
|
@@ -127,7 +141,8 @@ function frontmatterDescription(content) {
|
|
|
127
141
|
* skill when the feature is on.
|
|
128
142
|
*/
|
|
129
143
|
export function builtinSkillEntries(opts) {
|
|
130
|
-
|
|
144
|
+
const workflowEnabled = opts.workflowEnabled ?? isWorkflowFeatureEnabled();
|
|
145
|
+
let defs = baseBuiltinSkills(workflowEnabled);
|
|
131
146
|
if (!opts.asksViaHook)
|
|
132
147
|
defs.push({ name: ASK_SKILL_NAME, content: ASK_SKILL });
|
|
133
148
|
if (opts.whiteboardEnabled)
|
|
@@ -138,9 +153,15 @@ export function builtinSkillEntries(opts) {
|
|
|
138
153
|
}
|
|
139
154
|
/** Full SKILL.md body for a built-in skill name — backs `botmux skill show`
|
|
140
155
|
* on-demand reads in `prompt` mode (independent of the per-CLI toggles above,
|
|
141
|
-
* so a name that made it into the catalog always resolves).
|
|
156
|
+
* so a name that made it into the catalog always resolves). The v3 Workflow
|
|
157
|
+
* family resolves only while the feature is enabled, so a disabled host can't
|
|
158
|
+
* pull a skill it never advertised. */
|
|
142
159
|
export function builtinSkillContent(name) {
|
|
143
|
-
const all = [
|
|
160
|
+
const all = [
|
|
161
|
+
...baseBuiltinSkills(isWorkflowFeatureEnabled()),
|
|
162
|
+
{ name: ASK_SKILL_NAME, content: ASK_SKILL },
|
|
163
|
+
{ name: WHITEBOARD_SKILL_NAME, content: WHITEBOARD_SKILL },
|
|
164
|
+
];
|
|
144
165
|
return all.find((d) => d.name === name)?.content;
|
|
145
166
|
}
|
|
146
167
|
/**
|
|
@@ -153,13 +174,20 @@ export function builtinSkillContent(name) {
|
|
|
153
174
|
* Contract: only the outer wrapper is structural. The intro and catalog lines
|
|
154
175
|
* are prose (including dynamic skill descriptions), so escape them here.
|
|
155
176
|
*/
|
|
156
|
-
export function buildBuiltinSkillCatalogBlock(entries, locale) {
|
|
177
|
+
export function buildBuiltinSkillCatalogBlock(entries, locale, opts = {}) {
|
|
157
178
|
if (entries.length === 0)
|
|
158
179
|
return '';
|
|
159
180
|
const en = locale === 'en';
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
181
|
+
// Without a routing block the catalog must NOT claim one exists, and it is the
|
|
182
|
+
// only place the agent learns about send/history/quoted/bots at all.
|
|
183
|
+
const hasRouting = opts.hasRoutingBlock !== false;
|
|
184
|
+
const intro = hasRouting
|
|
185
|
+
? (en
|
|
186
|
+
? '<botmux_routing> covers basic communication only. These supplementary botmux skills are available in this session. Match the task against a description, then run `botmux skill show <name>` to read that skill\'s full instructions before acting — do not guess the commands.'
|
|
187
|
+
: '<botmux_routing> 只覆盖基础通信用法。当前 botmux 会话还有下面这些可按需读取的内置技能。先按描述判断该用哪个,再用 `botmux skill show <name>` 读取完整说明后再执行——不要凭空猜命令。')
|
|
188
|
+
: (en
|
|
189
|
+
? 'These botmux skills are available in this session, and they are the ONLY documentation for them. Match the task against a description, then run `botmux skill show <name>` to read that skill\'s full instructions before acting — do not guess the commands.'
|
|
190
|
+
: '当前 botmux 会话有下面这些内置技能,且这里是它们唯一的说明来源。先按描述判断该用哪个,再用 `botmux skill show <name>` 读取完整说明后再执行——不要凭空猜命令。');
|
|
163
191
|
const lines = entries.map((e) => escapeXmlText(`- ${e.name}: ${promptCatalogDescription(e, locale)}`));
|
|
164
192
|
// Distinct tag from the user-registered skill catalog (`<botmux_skills
|
|
165
193
|
// mode=...>`, injected only in the worker via prepareSessionSkillPrompt) so
|
|
@@ -170,10 +198,20 @@ export function buildBuiltinSkillCatalogBlock(entries, locale) {
|
|
|
170
198
|
* Returned as an XML block (same `<botmux_builtin_skills>` tag as the catalog)
|
|
171
199
|
* so it's consistently wrapped rather than a bare line in the prompt. Its
|
|
172
200
|
* inner help line follows the same text-only contract as the catalog body. */
|
|
173
|
-
export function builtinSkillHelpPointer(locale) {
|
|
174
|
-
const
|
|
175
|
-
|
|
176
|
-
|
|
201
|
+
export function builtinSkillHelpPointer(locale, opts = {}) {
|
|
202
|
+
const en = locale === 'en';
|
|
203
|
+
const hasRouting = opts.hasRoutingBlock !== false;
|
|
204
|
+
const workflowEnabled = opts.workflowEnabled ?? isWorkflowFeatureEnabled();
|
|
205
|
+
// Only list `workflow` among the discoverable capabilities when the feature is
|
|
206
|
+
// on — a disabled host must not point the model at a subcommand that refuses.
|
|
207
|
+
const wf = (zh, enText) => (workflowEnabled ? (en ? enText : zh) : '');
|
|
208
|
+
const inner = hasRouting
|
|
209
|
+
? (en
|
|
210
|
+
? `Beyond the commands in <botmux_routing>, more botmux capabilities (ask / schedule${wf(' / workflow', ' / workflow')} / …) are shell subcommands — run \`botmux --help\`, and \`botmux <cmd> --help\` for a specific one, to discover them.`
|
|
211
|
+
: `除了 <botmux_routing> 里的命令,botmux 还有更多能力(ask / schedule${wf(' / workflow', '')} 等),都是 shell 子命令——用 \`botmux --help\` 查全部,\`botmux <子命令> --help\` 查单个用法。`)
|
|
212
|
+
: (en
|
|
213
|
+
? `botmux capabilities (send / history / quoted / bots / ask / schedule${wf(' / workflow', ' / workflow')} / …) are shell subcommands — run \`botmux --help\`, and \`botmux <cmd> --help\` for a specific one, to discover them.`
|
|
214
|
+
: `botmux 的能力(send / history / quoted / bots / ask / schedule${wf(' / workflow', '')} 等)都是 shell 子命令——用 \`botmux --help\` 查全部,\`botmux <子命令> --help\` 查单个用法。`);
|
|
177
215
|
return `<botmux_builtin_skills>\n${escapeXmlText(inner)}\n</botmux_builtin_skills>`;
|
|
178
216
|
}
|
|
179
217
|
/**
|
|
@@ -187,18 +225,29 @@ export function builtinSkillHelpPointer(locale) {
|
|
|
187
225
|
* - `prompt` → compact catalog (on-demand `botmux skill show`)
|
|
188
226
|
* - `off` → help pointer only
|
|
189
227
|
* - `global` → empty (files already on disk via ensureCliSkills)
|
|
228
|
+
*
|
|
229
|
+
* `hasRoutingBlock` (default true) states whether the caller ALSO emits a
|
|
230
|
+
* `<botmux_routing>` block. genius/grok do, via buildBotmuxSystemPromptText.
|
|
231
|
+
* mojo does not — it is `injectsSessionContext` yet builds its own prompt with no
|
|
232
|
+
* routing at all — and passing `false` matters twice:
|
|
233
|
+
* - history/quoted/bots must stay IN the catalog. They are filtered out only
|
|
234
|
+
* because routing is assumed to teach them; with no routing they would be
|
|
235
|
+
* documented nowhere.
|
|
236
|
+
* - the prose must not reference a `<botmux_routing>` block that isn't there.
|
|
190
237
|
*/
|
|
191
238
|
export function builtinSkillBlockForInjectsSessionContext(larkAppId, locale, opts = {}) {
|
|
192
239
|
const mode = resolveSkillInjectionModeForApp(larkAppId);
|
|
240
|
+
const hasRoutingBlock = opts.hasRoutingBlock !== false;
|
|
193
241
|
if (mode === 'prompt') {
|
|
194
242
|
return buildBuiltinSkillCatalogBlock(builtinSkillEntries({
|
|
195
243
|
asksViaHook: opts.asksViaHook === true,
|
|
196
244
|
whiteboardEnabled: opts.whiteboardEnabled === true,
|
|
197
|
-
|
|
198
|
-
|
|
245
|
+
// Only safe to drop the routing-covered skills when routing is present.
|
|
246
|
+
excludeRoutingCovered: hasRoutingBlock,
|
|
247
|
+
}), locale, { hasRoutingBlock });
|
|
199
248
|
}
|
|
200
249
|
if (mode === 'off')
|
|
201
|
-
return builtinSkillHelpPointer(locale);
|
|
250
|
+
return builtinSkillHelpPointer(locale, { hasRoutingBlock });
|
|
202
251
|
return '';
|
|
203
252
|
}
|
|
204
253
|
//# sourceMappingURL=injection-mode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injection-mode.js","sourceRoot":"","sources":["../../src/skills/injection-mode.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGnE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EACL,cAAc,EACd,SAAS,EAAE,cAAc,EACzB,gBAAgB,EAAE,qBAAqB,GACxC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"injection-mode.js","sourceRoot":"","sources":["../../src/skills/injection-mode.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,6 +47,24 @@ export declare function ensureAskSkill(cliId: string, skillsDir: string | undefi
|
|
|
47
47
|
* 幂等:install 时内容相同则跳过;remove 时不存在则跳过。
|
|
48
48
|
*/
|
|
49
49
|
export declare function ensureWhiteboardSkill(cliId: string, skillsDir: string | undefined, install: boolean): void;
|
|
50
|
+
/**
|
|
51
|
+
* 条件管理 v3 Workflow skill 家族(`botmux-workflow` / `botmux-workflow-create` /
|
|
52
|
+
* `botmux-goal-ask`)—— 跟随机器级 workflow 开关(与 {@link ensureWhiteboardSkill}
|
|
53
|
+
* 同构)。这三个 skill 不进 `BUILTIN_SKILLS`(那会被无条件安装),而是按开关动态
|
|
54
|
+
* 写入 / 删除:
|
|
55
|
+
*
|
|
56
|
+
* - `install=true`(workflow 功能开启,默认):写入每个 SKILL.md,让 agent 看得到
|
|
57
|
+
* 并能用 `/workflow` / botmux-workflow 能力。
|
|
58
|
+
* - `install=false`(workflow 功能关闭):删除这三个 skill 目录,避免给 agent 暴露
|
|
59
|
+
* 一个当前会被 daemon/CLI 拒绝的能力;也清理旧版本无条件装下的残留。
|
|
60
|
+
*
|
|
61
|
+
* `botmux-orchestrate` 不在此列——它是独立的多 bot 长期编排能力,不随本开关关闭。
|
|
62
|
+
*
|
|
63
|
+
* 由 worker-pool 的 `ensureCliSkills` 在每次 spawn 时按 `isWorkflowFeatureEnabled()`
|
|
64
|
+
* 调用(不走一次性缓存),所以运行时切换开关下一个会话即生效,无需重启 daemon。
|
|
65
|
+
* 幂等:install 时内容相同则跳过;remove 时不存在则跳过。
|
|
66
|
+
*/
|
|
67
|
+
export declare function ensureWorkflowSkills(cliId: string, skillsDir: string | undefined, install: boolean): void;
|
|
50
68
|
/**
|
|
51
69
|
* Install (or refresh) the built-in skill library into the given CLI's skills
|
|
52
70
|
* directory. Idempotent — only writes when content differs.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../../src/skills/installer.ts"],"names":[],"mappings":"AAwBA;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAerF;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAoBlF;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAkBnG;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAkB1G;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAiC/E"}
|
|
1
|
+
{"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../../src/skills/installer.ts"],"names":[],"mappings":"AAwBA;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAerF;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAoBlF;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAkBnG;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAkB1G;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAqBzG;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAiC/E"}
|
package/dist/skills/installer.js
CHANGED
|
@@ -3,7 +3,7 @@ import { atomicWriteFileSync } from '../utils/atomic-write.js';
|
|
|
3
3
|
import { join } from 'node:path';
|
|
4
4
|
import { homedir } from 'node:os';
|
|
5
5
|
import { logger } from '../utils/logger.js';
|
|
6
|
-
import { BUILTIN_SKILLS, RETIRED_SKILL_NAMES, ASK_SKILL, ASK_SKILL_NAME, WHITEBOARD_SKILL, WHITEBOARD_SKILL_NAME } from './definitions.js';
|
|
6
|
+
import { BUILTIN_SKILLS, RETIRED_SKILL_NAMES, WORKFLOW_FEATURE_SKILLS, ASK_SKILL, ASK_SKILL_NAME, WHITEBOARD_SKILL, WHITEBOARD_SKILL_NAME } from './definitions.js';
|
|
7
7
|
// This module only manages botmux-owned bridge/ask skills. User-defined skills
|
|
8
8
|
// live in src/core/skills/* and services/skill-registry-store.ts so their
|
|
9
9
|
// lifecycle stays independent of any specific CLI's global skill directory.
|
|
@@ -165,6 +165,50 @@ export function ensureWhiteboardSkill(cliId, skillsDir, install) {
|
|
|
165
165
|
logger.warn(`[skills] ensureWhiteboardSkill(${install}) failed for ${cliId}: ${err.message}`);
|
|
166
166
|
}
|
|
167
167
|
}
|
|
168
|
+
/**
|
|
169
|
+
* 条件管理 v3 Workflow skill 家族(`botmux-workflow` / `botmux-workflow-create` /
|
|
170
|
+
* `botmux-goal-ask`)—— 跟随机器级 workflow 开关(与 {@link ensureWhiteboardSkill}
|
|
171
|
+
* 同构)。这三个 skill 不进 `BUILTIN_SKILLS`(那会被无条件安装),而是按开关动态
|
|
172
|
+
* 写入 / 删除:
|
|
173
|
+
*
|
|
174
|
+
* - `install=true`(workflow 功能开启,默认):写入每个 SKILL.md,让 agent 看得到
|
|
175
|
+
* 并能用 `/workflow` / botmux-workflow 能力。
|
|
176
|
+
* - `install=false`(workflow 功能关闭):删除这三个 skill 目录,避免给 agent 暴露
|
|
177
|
+
* 一个当前会被 daemon/CLI 拒绝的能力;也清理旧版本无条件装下的残留。
|
|
178
|
+
*
|
|
179
|
+
* `botmux-orchestrate` 不在此列——它是独立的多 bot 长期编排能力,不随本开关关闭。
|
|
180
|
+
*
|
|
181
|
+
* 由 worker-pool 的 `ensureCliSkills` 在每次 spawn 时按 `isWorkflowFeatureEnabled()`
|
|
182
|
+
* 调用(不走一次性缓存),所以运行时切换开关下一个会话即生效,无需重启 daemon。
|
|
183
|
+
* 幂等:install 时内容相同则跳过;remove 时不存在则跳过。
|
|
184
|
+
*/
|
|
185
|
+
export function ensureWorkflowSkills(cliId, skillsDir, install) {
|
|
186
|
+
if (!skillsDir)
|
|
187
|
+
return;
|
|
188
|
+
const base = expandHome(skillsDir);
|
|
189
|
+
for (const skill of WORKFLOW_FEATURE_SKILLS) {
|
|
190
|
+
const skillDir = join(base, skill.name);
|
|
191
|
+
const skillFile = join(skillDir, 'SKILL.md');
|
|
192
|
+
try {
|
|
193
|
+
if (install) {
|
|
194
|
+
if (existsSync(skillFile) && readFileSync(skillFile, 'utf-8') === skill.content)
|
|
195
|
+
continue;
|
|
196
|
+
mkdirSync(skillDir, { recursive: true });
|
|
197
|
+
atomicWriteFileSync(skillFile, skill.content);
|
|
198
|
+
logger.info(`[skills] Installed ${skill.name} (workflow enabled) for ${cliId} → ${skillFile}`);
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
if (!existsSync(skillDir))
|
|
202
|
+
continue;
|
|
203
|
+
rmSync(skillDir, { recursive: true, force: true });
|
|
204
|
+
logger.info(`[skills] Removed ${skill.name} (workflow disabled) for ${cliId}`);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
catch (err) {
|
|
208
|
+
logger.warn(`[skills] ensureWorkflowSkills(${install}) failed for ${skill.name} on ${cliId}: ${err.message}`);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
}
|
|
168
212
|
/**
|
|
169
213
|
* Install (or refresh) the built-in skill library into the given CLI's skills
|
|
170
214
|
* directory. Idempotent — only writes when content differs.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/skills/installer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,SAAS,EAAE,cAAc,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/skills/installer.ts"],"names":[],"mappings":"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"}
|