@qqbrowser/qbot-dsh 0.0.11 → 0.0.13
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/lib/bin.js +1 -1
- package/lib/{dump-config-BD79jvHi.js → dump-config-xQTUTTDD.js} +1 -1
- package/lib/{plugin-B3Ecl7VN.js → plugin-DNAeLZbb.js} +1 -1
- package/lib/profile-boot-BkordgJK.js +1 -0
- package/node_modules/@deepseek-ai/cordis-plugin-hmr/lib/index.js +2 -2
- package/node_modules/@deepseek-ai/dsh-agent/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-agent/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-agent-default-model/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-agent-instructions/lib/index.js +3 -3
- package/node_modules/@deepseek-ai/dsh-agent-instructions/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-agent-loop/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-agent-presets/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-agent-tool-presentation/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-anonymous-user-id/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-api-gateway/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-api-remotes/lib/client.js +2 -2
- package/node_modules/@deepseek-ai/dsh-api-remotes/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-app-boot/lib/index.js +12 -12
- package/node_modules/@deepseek-ai/dsh-app-boot/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-atomic-write/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-attachment/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-attachment-local/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-attachment-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-base/cordis.patch.yml +3 -3
- package/node_modules/@deepseek-ai/dsh-base/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-bash-local/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-bash-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-bash-sandbox/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-brand/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-connection/lib/client.js +6 -6
- package/node_modules/@deepseek-ai/dsh-client-connection/lib/index.js +2 -2
- package/node_modules/@deepseek-ai/dsh-client-connection/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-hmr/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-hmr/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-locale/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-locale/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-modules/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-runtime/lib/client.js +2 -2
- package/node_modules/@deepseek-ai/dsh-client-runtime/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-schema-form/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-agent-preset/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-agent-preset/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-attachment/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-commands/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-commands/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-conversation/lib/client.js +6 -6
- package/node_modules/@deepseek-ai/dsh-client-ui-conversation/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-cordis/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-cordis/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-browse/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-browse/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-native/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-goal/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-goal/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-jobs/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-jobs/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-layout/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-layout/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-message-feedback/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-message-feedback/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-permission-presets/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-permission-presets/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-plan/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-plan/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/index.js +11 -11
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-skill/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-skill/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-slots/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-slots/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-subagent/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-subagent/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-theme/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-theme/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-tool/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-tool/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/lib/client.js +13 -13
- package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-workflow-run/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-workflow-run/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-workspace/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-web/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-web-react/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-web-react/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-cmdline/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-code-runtime/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-code-runtime-worker-thread/lib/index.js +2 -2
- package/node_modules/@deepseek-ai/dsh-code-runtime-worker-thread/lib/worker.cjs +4 -2
- package/node_modules/@deepseek-ai/dsh-code-runtime-worker-thread/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-command-compact/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-command-feedback/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-command-goal/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-commands/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-compaction/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-compaction-basic/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-compaction-basic/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-compaction-tool-result-pruner/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-content-review/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-cordis-client-runner/lib/client.js +7 -7
- package/node_modules/@deepseek-ai/dsh-cordis-client-runner/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-cordis-host-runner/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-credentials/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-credentials-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-fs/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-fs-local/lib/index.js +4 -4
- package/node_modules/@deepseek-ai/dsh-fs-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-fs-observation-policy/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-fs-sandbox/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-goal/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-goal-round-driver/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-headless/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-home-paths/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-home-paths/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-home-quarantine-macos/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-home-quarantine-macos/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-apiproxy/lib/index.js +4 -4
- package/node_modules/@deepseek-ai/dsh-host-apiproxy/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-directory-picker/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-directory-picker-auto/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-directory-picker-browse/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-directory-picker-native/lib/worker.cjs +9 -7
- package/node_modules/@deepseek-ai/dsh-host-directory-picker-native/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-frontend-static/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-plugin-inventory/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-webserver/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-invariants/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-jobs/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-jobs-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-launch-environment/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-llm/lib/invariant.js +1 -1
- package/node_modules/@deepseek-ai/dsh-llm/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-llm-deepseek/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-llm-deepseek/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-llm-gateway-openai/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-llm-gateway-openai/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-llm-pi-ai/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-llm-pi-ai/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-llm-retry/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-mcp-client/lib/index.js +2 -2
- package/node_modules/@deepseek-ai/dsh-mcp-client/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-message-feedback/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-native-command/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-output-retention/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-output-retention/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-permission-presets/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-permission-presets/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-persona/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-plan-mode/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-pwsh-local/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-pwsh-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-pwsh-sandbox/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-qb-auth/lib/index.js +3 -3
- package/node_modules/@deepseek-ai/dsh-qb-auth/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-repeat-tool-reminder/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-sandbox/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-sandbox-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-sandbox-policy/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-sandbox-windows-acl/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-sandbox-windows-acl/lib/runner.js +1 -1
- package/node_modules/@deepseek-ai/dsh-sandbox-windows-acl/lib/types-D2_FQYSK.js +1 -0
- package/node_modules/@deepseek-ai/dsh-sandbox-windows-acl/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-schedule/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-schedule/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-scope/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-session/lib/invariant.js +1 -1
- package/node_modules/@deepseek-ai/dsh-session/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-checkpoint-policy/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-log-export/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-session-log-export/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-persistence/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-session-persistence/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-persistence-jsonl/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-session-persistence-jsonl/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-projection/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-projection-cache/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-query/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-query-sqlite/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-reference/lib/index.js +4 -4
- package/node_modules/@deepseek-ai/dsh-session-reference/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-stats/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-telemetry/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-telemetry-otel/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-title/lib/index.js +2 -2
- package/node_modules/@deepseek-ai/dsh-session-title/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-title-first-prompt-llm/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-title-llm/lib/index.js +3 -3
- package/node_modules/@deepseek-ai/dsh-session-title-llm/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-settings/lib/invariant.js +1 -1
- package/node_modules/@deepseek-ai/dsh-settings/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-settings-file/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-shell/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-shell-env/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-skill/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-skill-badge/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-skill-filesystem/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-skill-filesystem/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-spill/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-spill-local/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-spill-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-spill-policy/lib/index.js +2 -2
- package/node_modules/@deepseek-ai/dsh-spill-policy/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-storage/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-storage-domain/lib/invariant.js +1 -1
- package/node_modules/@deepseek-ai/dsh-storage-domain/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-storage-json/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-subagent/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-subagent/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-subagent-fork-in-process/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-subagent-in-process-driver/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-subagent-spawn-in-process/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-subprocess/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-subprocess-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-system-prompt/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-terminal/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-terminal-bash/lib/index.js +2 -2
- package/node_modules/@deepseek-ai/dsh-terminal-bash/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-time-context/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-time-context/lib/invariant.js +1 -1
- package/node_modules/@deepseek-ai/dsh-time-context/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-timeout/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tmux-context/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-token-meter/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-token-meter/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-ask-user/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-bash/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-bash-persistent/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-call-timeout-policy/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-cordis/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-fs/lib/index.js +2 -2
- package/node_modules/@deepseek-ai/dsh-tool-fs/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-fs-search/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-fs-search/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-goal/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-jobs/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-pwsh/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-ralph/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-ralph/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-skill/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-str-replace-editor/lib/index.js +6 -6
- package/node_modules/@deepseek-ai/dsh-tool-str-replace-editor/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-subagent/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-subagent-control/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-subagent-report/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-todo/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-web/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-workflow/lib/index.js +2 -2
- package/node_modules/@deepseek-ai/dsh-tool-workflow/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tools/lib/index.js +26 -26
- package/node_modules/@deepseek-ai/dsh-tools/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-typert-loader/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-typert-protocol/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-typert-registry/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-user-approval/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-user-questions/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-web/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-web/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-web-app/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/{index-Dqw48FrP.js → index-BQQQ5Qt-.js} +2 -2
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/langs/cpp-DddhVWhK.js +1 -0
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/langs/{php-D-uCvoST.js → php-9bx0az3O.js} +1 -1
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/langs/{ruby-DEItuUFs.js → ruby-HDLHRjSL.js} +1 -1
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/langs/swift-C2oV4EkX.js +1 -0
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/{vendor-Cjbwl5VI.js → vendor-CeMKrCZm.js} +24 -24
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/index.html +2 -2
- package/node_modules/@deepseek-ai/dsh-web-frontend/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-web-search-deepseek/LICENSE +21 -0
- package/node_modules/@deepseek-ai/dsh-web-search-deepseek/lib/index.js +1 -0
- package/node_modules/@deepseek-ai/dsh-web-search-deepseek/lib/invariant.js +1 -0
- package/node_modules/@deepseek-ai/dsh-web-search-deepseek/package.json +1 -0
- package/node_modules/@deepseek-ai/dsh-web-search-dsh/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-web-search-dsh/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-workflow/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-workflow-worker-thread/lib/index.js +2 -2
- package/node_modules/@deepseek-ai/dsh-workflow-worker-thread/lib/worker.cjs +3 -4
- package/node_modules/@deepseek-ai/dsh-workflow-worker-thread/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-workspace/lib/invariant.js +1 -1
- package/node_modules/@deepseek-ai/dsh-workspace/package.json +1 -1
- package/package.json +1 -1
- package/lib/profile-boot-_PCyp_wB.js +0 -1
- package/node_modules/@deepseek-ai/dsh-sandbox-windows-acl/lib/types-BjBvdldw.js +0 -1
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/langs/cpp-DIPi6g--.js +0 -1
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/langs/swift-D82vCrfD.js +0 -1
- /package/lib/{profile-boot-B71dQloK.js → profile-boot-DDo03lXi.js} +0 -0
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
<link rel="manifest" href="/manifest.webmanifest" />
|
|
7
7
|
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
|
8
8
|
<title>DeepSeek Harness</title>
|
|
9
|
-
<script type="module" crossorigin src="/assets/index-
|
|
10
|
-
<link rel="modulepreload" crossorigin href="/assets/vendor-
|
|
9
|
+
<script type="module" crossorigin src="/assets/index-BQQQ5Qt-.js"></script>
|
|
10
|
+
<link rel="modulepreload" crossorigin href="/assets/vendor-CeMKrCZm.js">
|
|
11
11
|
<link rel="stylesheet" crossorigin href="/assets/vendor-CjyC-hUb.css">
|
|
12
12
|
<link rel="stylesheet" crossorigin href="/assets/index-CSGf6Qzd.css">
|
|
13
13
|
</head>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-web-frontend","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-web-frontend","version":"0.0.13","publishConfig":{"access":"public"},"type":"module","exports":{"./dist/*":"./dist/*","./package.json":"./package.json"},"license":"MIT","dependencies":{"react":"^18.2.0","react-dom":"^18.2.0","@deepseek-ai/dsh-client-web":"^0.0.13"}}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 DeepSeek
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var K=Object.defineProperty;var a=(t,e)=>K(t,"name",{value:e,configurable:!0});import E from"@deepseek-ai/schemastery";import{credentialRef as P}from"@deepseek-ai/dsh-credentials";import{installSettingsSection as k,settingsNamespace as g}from"@deepseek-ai/dsh-settings";import{launchEnvironmentOf as f}from"@deepseek-ai/dsh-launch-environment";import{WebError as u}from"@deepseek-ai/dsh-web";const m="deepseek-official",O="https://api.deepseek.com/anthropic/v1",b="deepseek-v4-flash",v="2023-06-01",R=4096,I=5,U="deepseek-harness/0.0.1";function L(t){const e=new Map;for(const r of t)if(r.type==="text")for(const s of r.citations??[])s.url!=null&&s.url.length>0&&s.cited_text!=null&&s.cited_text.length>0&&!e.has(s.url)&&e.set(s.url,s.cited_text);return e}a(L,"citationSnippets");function T(t){const e=t.content??[],r=e.filter(p=>p.type==="web_search_tool_result");if(r.length===0)throw new u("DeepSeek returned no web_search_tool_result blocks; the request may not have triggered native web search","WEB_PROVIDER_ERROR");const s=L(e),n=new Set,i=[];for(const p of r)for(const o of p.content??[]){if(o.type!=="web_search_result"||o.url.length===0||n.has(o.url))continue;n.add(o.url);const c=s.get(o.url);i.push({url:o.url,...o.title!=null&&o.title.length>0?{title:o.title}:{},...c!=null&&c.length>0?{snippet:c}:{},...o.page_age!=null&&o.page_age.length>0?{publishedAt:o.page_age}:{}})}return{sources:i,truncated:!1}}a(T,"mapAnthropicResponse");var S=class{static{a(this,"DeepSeekSearchProvider")}resolveOptions;id=m;constructor(t){this.resolveOptions=t}available(){const t=this.resolveOptions();return((t.apiKey?.length??0)>0||t.resolveApiKey!==void 0)&&URL.canParse(t.baseURL)&&w(t.maxTokens)&&w(t.maxUses)}async search(t,e){const r=this.resolveOptions(),s=await this.apiKey(r,e);_(e);const n=`${r.baseURL}/messages`,i={model:r.model,max_tokens:r.maxTokens,messages:[{role:"user",content:[{type:"text",text:`Perform a web search for the query: ${t.query}`}]}],tools:[{type:"web_search_20250305",name:"web_search",max_uses:r.maxUses}]};r.recordRequest?.({endpoint:n,apiVersion:r.apiVersion,body:i}),_(e);let p;try{p=await fetch(n,{method:"POST",redirect:"error",headers:{"x-api-key":s,authorization:`Bearer ${s}`,"anthropic-version":r.apiVersion,"content-type":"application/json",accept:"application/json","user-agent":U},body:JSON.stringify(i),...e!==void 0?{signal:e}:{}})}catch(o){throw e?.aborted===!0||h(o)?l(e,o):new u(`DeepSeek search request failed: ${String(o)}`,"WEB_PROVIDER_ERROR",{cause:o})}if(!p.ok){let o=`DeepSeek API error (HTTP ${p.status})`;try{const c=await p.json(),d=typeof c.error=="string"?c.error:c.error?.message??c.message;d!==void 0&&d.length>0&&(o=d)}catch(c){if(e?.aborted===!0||h(c))throw l(e,c)}throw new u(o,"WEB_PROVIDER_ERROR")}try{return T(await p.json())}catch(o){throw e?.aborted===!0||h(o)?l(e,o):o instanceof u?o:new u(`DeepSeek returned an unprocessable response body: ${String(o)}`,"WEB_PROVIDER_ERROR",{cause:o})}}async apiKey(t,e){if(_(e),t.apiKey!==void 0&&t.apiKey.length>0)return t.apiKey;let r;try{r=await x(t.resolveApiKey?.()??Promise.resolve(void 0),e)}catch(n){throw e?.aborted===!0||h(n)?l(e,n):new u(`DeepSeek search credential resolution failed: ${String(n)}`,"WEB_PROVIDER_ERROR",{cause:n})}if(r!==void 0&&r.length>0)return r;const s=t.apiKeyEnv??"DEEPSEEK_API_KEY";throw new u(`DeepSeek search has no API key for "${s}"; store it through the credentials service (the web Models page writes it), export it in the launching environment, or set a literal "apiKey" in the web-search-deepseek config`,"WEB_PROVIDER_CREDENTIAL_MISSING")}};function x(t,e){return e===void 0?t:e.aborted?Promise.reject(l(e)):new Promise((r,s)=>{const n=a(()=>{s(l(e))},"onAbort");e.addEventListener("abort",n,{once:!0}),t.then(i=>{e.removeEventListener("abort",n),r(i)},i=>{e.removeEventListener("abort",n),s(new Error(String(i).replace(/^Error: /u,""),{cause:i}))})})}a(x,"abortable");function _(t){if(t?.aborted===!0)throw l(t)}a(_,"throwIfSearchAborted");function l(t,e){return new u("DeepSeek search aborted","WEB_ABORTED",{cause:t?.aborted===!0?t.reason:e})}a(l,"searchAborted");function h(t){return t instanceof DOMException&&t.name==="AbortError"}a(h,"isAbortError");function w(t){return Number.isInteger(t)&&t>0}a(w,"isPositiveInteger");const V="web-search-deepseek",B=["web"],y="DEEPSEEK_API_KEY",A=E.object({apiKey:E.string().role("secret"),apiKeyEnv:E.string().role("credential-ref").default(y),baseURL:E.string(),model:E.string().default(b),apiVersion:E.string().default(v),maxTokens:E.number().step(1).min(1).default(R),maxUses:E.number().step(1).min(1).default(5)}),N="DEEPSEEK_SEARCH_BASE_URL",D=g("web-search-deepseek");function W(t,e){const r=P(e.apiKeyEnv??y),s=e.apiKey!==void 0&&e.apiKey.length>0?e.apiKey:void 0;return{...s===void 0?{}:{apiKey:s},resolveApiKey:a(async()=>{const n=t.get("credentials");if(n!==void 0)return(await n.resolve(r))?.value;const i=f(t).get(r);return i!==void 0&&i.value.length>0?i.value:void 0},"resolveApiKey"),apiKeyEnv:r,baseURL:e.baseURL??f(t).get(N)?.value??"https://api.deepseek.com/anthropic/v1",model:e.model??"deepseek-v4-flash",apiVersion:e.apiVersion??"2023-06-01",maxTokens:e.maxTokens??4096,maxUses:e.maxUses??5,recordRequest:a(n=>{t.get("agents")?.currentInitiator()?.session.append("web/deepseek-search-llm-request",n)},"recordRequest")}}a(W,"resolveOptions");function M(t,e){let r=a(()=>e,"current");k(t,D,A,e,{setSource:a(s=>{r=s},"setSource"),onChange:a(()=>{},"onChange")}),t.web.registerSearchProvider(new S(()=>W(t,r())))}a(M,"apply");export{A as Config,v as DEEPSEEK_DEFAULT_API_VERSION,O as DEEPSEEK_DEFAULT_BASE_URL,R as DEEPSEEK_DEFAULT_MAX_TOKENS,I as DEEPSEEK_DEFAULT_MAX_USES,b as DEEPSEEK_DEFAULT_MODEL,m as DEEPSEEK_PROVIDER_ID,S as DeepSeekSearchProvider,D as WEB_SEARCH_DEEPSEEK_SETTINGS_NAMESPACE,M as apply,B as inject,V as name};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var a=Object.defineProperty;var s=(e,n)=>a(e,"name",{value:n,configurable:!0});const t="@deepseek-ai/dsh-web-search-deepseek",i="web-search-deepseek-invariant",r=["invariants"],c=s(()=>{},"install"),o=s(e=>Promise.resolve(e.invariants.register(t,c)),"apply");export{o as apply,r as inject,i as name};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"name":"@deepseek-ai/dsh-web-search-deepseek","version":"0.0.13","publishConfig":{"access":"public"},"type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./src/*":"./src/*","./package.json":"./package.json"},"license":"MIT","peerDependencies":{"@deepseek-ai/dsh-agent":"^0.0.13","@deepseek-ai/dsh-credentials":"^0.0.13","@deepseek-ai/dsh-session":"^0.0.13","@deepseek-ai/dsh-launch-environment":"^0.0.13","@deepseek-ai/dsh-web":"^0.0.13","@deepseek-ai/dsh-invariants":"^0.0.13","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-settings":"^0.0.13"},"dependencies":{"@deepseek-ai/schemastery":"^3.18.1"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var H=Object.defineProperty;var o=(e,t)=>H(e,"name",{value:t,configurable:!0});import d from"@deepseek-ai/schemastery";import{WebError as u}from"@deepseek-ai/dsh-web";const q="dsh",g="qbqaproxy.imtt.qq.com",S="deepseek-harness",_="dsh_search",y="mtt_dsh_search_proxy",D="GetToken",b=6e4,I=[1002,1005],B="/cgi-bin/search/proxy",C="deepseek-harness/0.0.1";var k=class extends u{static{o(this,"DshSearchTokenRejected")}};function f(e){return typeof e=="string"&&e.trim().length>0}o(f,"isNonBlank");function N(e){return Number.isInteger(e)&&e>0}o(N,"isPositiveInteger");function M(e){return URL.canParse(`https://${e}`)}o(M,"isValidHost");function R(e){return e instanceof DOMException&&e.name==="AbortError"}o(R,"isAbortError");function V(e){if(!(e instanceof Error))return String(e);const t=e.cause;return t instanceof Error&&t.message!==e.message?`${e.message} (${t.message})`:e.message}o(V,"describeFetchError");function w(e){if(f(e.link))return{url:e.link,...f(e.title)?{title:e.title}:{},...f(e.snippet)?{snippet:e.snippet}:{},...f(e.date)?{publishedAt:e.date}:{}}}o(w,"mapDshSearchItem");function O(e){return{sources:(e.result_list??[]).map(w).filter(t=>t!==void 0),truncated:!1}}o(O,"mapDshSearchResponse");var T=class{static{o(this,"DshSearchProvider")}options;id="dsh";cachedToken;issuing;constructor(e){this.options=e}available(){return M(this.options.host)&&(this.options.num===void 0||N(this.options.num))}async search(e,t){const r=await this.acquireToken(!1);try{return await this.searchOnce(e,r,t)}catch(n){if(!(n instanceof k))throw n;const a=await this.acquireToken(!0);return this.searchOnce(e,a,t)}}acquireToken(e){const t=this.options.tokenRefreshMarginMs??6e4,r=this.cachedToken;if(!e&&r!==void 0&&Date.now()<r.expiretime*1e3-t)return Promise.resolve(r.token);if(!e&&this.issuing!==void 0)return this.issuing;const n=this.options.fetchToken().then(a=>(this.cachedToken=a,a.token));return this.issuing=n,n.catch(()=>{}).finally(()=>{this.issuing===n&&(this.issuing=void 0)}),n}async searchOnce(e,t,r){const n=this.options.num??e.maxResults,a=JSON.stringify({query:e.query,...n!==void 0?{num:n}:{}}),l=`https://${this.options.host}${B}`;let h;try{h=await fetch(l,{method:"POST",redirect:"error",headers:{"content-type":"application/json",authorization:`Bearer ${t}`,"user-agent":C,accept:"application/json"},body:a,...r!==void 0?{signal:r}:{}})}catch(s){throw R(s)?new u("DshSearch search aborted","WEB_ABORTED",{cause:s}):new u(`DshSearch search request to ${l} failed: ${V(s)}`,"WEB_PROVIDER_ERROR",{cause:s})}if(!h.ok){const s=h.status;let c=`DshSearch API error (HTTP ${s})`;try{const p=await h.json();f(p.msg)&&(c=`DshSearch API error (HTTP ${s}): ${p.msg}`)}catch(p){if(R(p))throw new u("DshSearch search aborted","WEB_ABORTED",{cause:p})}throw new u(c,"WEB_PROVIDER_ERROR")}let i;try{i=await h.json()}catch(s){throw R(s)?new u("DshSearch search aborted","WEB_ABORTED",{cause:s}):new u(`DshSearch returned an unprocessable response body: ${String(s)}`,"WEB_PROVIDER_ERROR",{cause:s})}if(typeof i.code!="number")throw new u("DshSearch returned an unexpected response body (missing code)","WEB_PROVIDER_ERROR");if(I.includes(i.code))throw new k(`DshSearch token rejected (code ${i.code}): ${i.msg??"no message"}`,"WEB_PROVIDER_ERROR");if(i.code!==0)throw new u(`DshSearch search failed (code ${i.code}): ${i.msg??"no message"}`,"WEB_PROVIDER_ERROR");return O(i)}};const W="web-search-dsh",j=["web","qbAuth"],A="qb-gateway",v="Auto",$="deepseek-official",F=d.object({host:d.string().default(g),callfrom:d.string().default(S),bus:d.string().default(_),num:d.number().step(1).min(1),tokenRefreshMarginMs:d.natural().min(0).default(b),routeSelection:d.object({provider:d.string().default(A),model:d.string().default(v)}),fallbackProvider:d.string().default($)}),E=o(e=>typeof e=="object"&&e!==null?e:{},"asRecord"),P=o((e,t)=>{const r=e[t];return typeof r=="string"?r:""},"readString"),L=o(e=>{if(e instanceof Error)return e.message;if(typeof e=="string")return e;const t=E(e),r=P(t,"message");if(r!=="")return r;try{const n=JSON.stringify(e);if(n!==void 0)return n}catch{}return String(e)},"describeCause"),U=o(e=>{const t=e.token,r=typeof t=="string"&&t!==""?{...e,token:`<redacted, ${String(t.length)} chars>`}:e;try{return JSON.stringify(r)}catch{return"<unprintable reply>"}},"redactReply"),x=o(e=>{const t=e.token,r=typeof t!="string"?`type ${typeof t}`:t===""?"empty":`${String(t.length)} chars`,n=e.expiretime;return`token=${r}, expiretime=${typeof n=="number"?String(n):typeof n=="string"?`"${n}" (string)`:`type ${typeof n}`}`},"tokenFieldSummary");async function K(e,t){let r;try{const c=await e.qbAuth.identity();r=await e.qbAuth.rpc({servantName:y,funcName:D,body:{base:{qimei36:c.qimei36,qua2:c.qua2},authcall:{callfrom:t.callfrom??"deepseek-harness",bus:t.bus??"dsh_search"}}})}catch(c){throw new u(`DshSearch token issuance failed: ${L(c)}`,"WEB_PROVIDER_ERROR",{cause:c})}const n=E(r),a=E(n.rsp),l=typeof a.ret=="number"?a.ret:void 0;if(l!==0)throw new u(`DshSearch token issuance rejected (ret=${String(l)}, reason=${P(a,"reason")||"none"})`,"WEB_PROVIDER_ERROR");const h=n.token,i=n.expiretime,s=typeof i=="string"&&i.trim()!==""?Number(i):i;if(typeof h!="string"||h===""||typeof s!="number"||!Number.isFinite(s)||s<=0){const c=U(n);throw e.logger.debug(`web-search-dsh: GetToken returned an unusable reply: ${c}`),new u(`DshSearch token issuance returned no usable token or expiry (ret=${String(l)}, ${x(n)}); reply: ${c}`,"WEB_PROVIDER_ERROR")}return{token:h,expiretime:s}}o(K,"issueSearchToken");function G(e){const t=e.get("agents")?.currentInitiator()?.session.requestHeader()?.config;return t!==void 0?{provider:t.provider,model:t.model}:e.get("agentDefaultModel")?.currentSelection()}o(G,"currentModelSelection");function J(e,t){e.web.registerSearchProvider(new T({host:t.host??"qbqaproxy.imtt.qq.com",...t.num!==void 0?{num:t.num}:{},tokenRefreshMarginMs:t.tokenRefreshMarginMs??6e4,fetchToken:o(()=>K(e,t),"fetchToken")}));const r=t.routeSelection?.provider??"qb-gateway",n=t.routeSelection?.model??"Auto",a=t.fallbackProvider??"deepseek-official";e.web.registerSearchProviderSelector((l,h)=>{const i=G(e);if(i===void 0)return;const s=i.provider===r&&i.model===n,c=h.includes("dsh")?void 0:"dsh",p=l.get(a),m=p!==void 0&&p.available()&&!h.includes(a)?a:void 0;return s?c??m:m??c})}o(J,"apply");export{F as Config,q as DSH_PROVIDER_ID,_ as DSH_SEARCH_DEFAULT_BUS,S as DSH_SEARCH_DEFAULT_CALLFROM,$ as DSH_SEARCH_DEFAULT_FALLBACK_PROVIDER,g as DSH_SEARCH_DEFAULT_HOST,v as DSH_SEARCH_DEFAULT_ROUTE_MODEL,A as DSH_SEARCH_DEFAULT_ROUTE_PROVIDER,D as DSH_SEARCH_TOKEN_FUNC,b as DSH_SEARCH_TOKEN_MARGIN_MS,y as DSH_SEARCH_TOKEN_SERVANT,T as DshSearchProvider,J as apply,j as inject,w as mapDshSearchItem,O as mapDshSearchResponse,W as name};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-web-search-dsh","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-web-search-dsh","version":"0.0.13","publishConfig":{"access":"public"},"type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./src/*":"./src/*","./package.json":"./package.json"},"license":"MIT","peerDependencies":{"@deepseek-ai/dsh-agent-default-model":"^0.0.13","@deepseek-ai/dsh-invariants":"^0.0.13","@deepseek-ai/dsh-agent":"^0.0.13","@deepseek-ai/dsh-qb-auth":"^0.0.13","@deepseek-ai/dsh-web":"^0.0.13","@deepseek-ai/cordis":"^4.0.1"},"dependencies":{"@deepseek-ai/schemastery":"^3.18.1"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-workflow","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-workflow","version":"0.0.13","publishConfig":{"access":"public"},"type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./src/*":"./src/*","./package.json":"./package.json"},"license":"MIT","peerDependencies":{"@deepseek-ai/dsh-brand":"^0.0.13","@deepseek-ai/dsh-llm":"^0.0.13","@deepseek-ai/dsh-session":"^0.0.13","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-invariants":"^0.0.13","@deepseek-ai/dsh-agent":"^0.0.13"}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var C=Object.defineProperty;var a=(e,t)=>C(e,"name",{value:t,configurable:!0});import{randomUUID as A}from"node:crypto";import{availableParallelism as R,tmpdir as E}from"node:os";import*as x from"node:vm";import m from"@deepseek-ai/schemastery";import O,{WorkflowError as g,WorkflowRunId as $}from"@deepseek-ai/dsh-workflow";import{Worker as P}from"node:worker_threads";import{fileURLToPath as N}from"node:url";import{assertNever as M}from"@deepseek-ai/dsh-llm";import{snapshotJsonValue as
|
|
2
|
-
`);return{entry:new URL(`data:text/javascript,${encodeURIComponent(n)}`),options:{workerData:e,env:S(void 0,process.env.TSX_TSCONFIG_PATH),execArgv:[]}}}a(U,"resolveWorkerSpawn");var G=class{static{a(this,"WorkerRun")}ctx;subagents;id;meta;parent;provider;disposeGraceMs;observer;result;settleResolve;settled=!1;terminalClaimed=!1;workerDeathObserved=!1;cancelReason;graceTimer;worker;workerGone=!1;hostStarted=0;children=new Map;pendingStarts=new Set;liveAgents=new Map;quiescenceWaiters=[];controller=new AbortController;inputSignal;inputSignalAbort;disposed;constructor(e,t,r,i,n,l,o,s,p,v){this.ctx=e,this.subagents=t,this.id=r,this.meta=i,this.parent=n,this.provider=o,this.disposeGraceMs=s,this.observer=p,this.result=new Promise(f=>{this.settleResolve=f});const{entry:b,options:d}=U(l);if(this.worker=new P(b,d),this.worker.on("message",f=>{this.onMessage(f)}),this.worker.on("error",f=>{this.onWorkerDeath(`workflow worker failed: ${w(f)}`,!1)}),this.worker.on("messageerror",f=>{this.onWorkerDeath(`workflow worker message failed to deserialize: ${w(f)}`,!1)}),this.worker.on("exit",f=>{this.workerGone=!0,this.onWorkerDeath(`workflow worker exited before the run settled (exit code ${f})`,!0)}),v?.aborted)this.cancel("workflow start signal already aborted");else if(v!==void 0){const f=a(()=>{this.detachInputSignal(),this.cancel("workflow signal aborted")},"onAbort");this.inputSignal=v,this.inputSignalAbort=f,v.addEventListener("abort",f,{once:!0})}}cancel(e){this.settled||this.terminalClaimed||this.cancelReason!==void 0||(this.cancelReason=e??"workflow cancelled",this.post(c.Cancel,{reason:this.cancelReason}),this.abortChildren(this.cancelReason),this.graceTimer=setTimeout(()=>{this.terminalClaimed=!0,this.endStrandedAgents(),this.settleResult(this.cancelledResult(this.hostStarted)),this.worker.terminate()},this.disposeGraceMs),this.graceTimer.unref())}dispose(){if(this.disposed!==void 0)return this.disposed;const e=Promise.withResolvers();return this.disposed=e.promise,(async()=>{this.detachInputSignal(),this.cancel("workflow disposed"),this.reapChildren("workflow disposed"),await Promise.race([(async()=>{await this.result,await this.childQuiescence()})(),J(this.disposeGraceMs)]),await this.worker.terminate(),this.reapChildren("workflow disposed")})().then(()=>{e.resolve(void 0)},t=>{e.reject(t)}),this.disposed}post(e,t){if(!(this.workerGone||this.workerDeathObserved))try{this.worker.postMessage({type:e,...t})}catch(r){this.ctx.logger.warn(`workflow-worker-thread: postMessage failed: ${w(r)}`)}}onMessage(e){if(!this.workerDeathObserved)switch(e.type){case u.Ready:this.post(c.Go,{});break;case u.Phase:this.cancelReason===void 0&&this.observer.phase(e.title);break;case u.Log:this.cancelReason===void 0&&this.observer.log(e.message);break;case u.AgentStart:this.liveAgents.set(e.info.seq,e.info),this.observer.agentStart(e.info);break;case u.AgentEnd:this.endAgent(e.info);break;case u.ChildStart:this.onChildStart(e.callId,e.request);break;case u.ChildDispose:this.onChildDispose(e.callId);break;case u.Result:this.onResult(e.result);break;default:M(e,"worker-to-host message")}}childAdmissionFailure(){if(this.cancelReason!==void 0)return{reason:this.cancelReason,rendered:`workflow run cancelled: ${this.cancelReason}`};if(this.workerDeathObserved)return{reason:"workflow worker gone",rendered:"workflow worker is no longer available"};if(this.terminalClaimed)return{reason:"workflow settled",rendered:"workflow run already settled"}}onChildStart(e,t){const r=this.childAdmissionFailure();if(r!==void 0){this.post(c.ChildStartError,{callId:e,rendered:r.rendered});return}this.hostStarted+=1;const i=this.startChild(e,t);this.pendingStarts.add(i),i.then(()=>{this.finishPendingStart(i)},()=>{this.finishPendingStart(i)})}async startChild(e,t){let r;try{r=await this.subagents.start(this.provider,{prompt:[{type:"text",text:t.prompt}],parent:this.parent,signal:this.controller.signal,...t.schema!==void 0?{outputSchema:t.schema}:{},...t.provider!==void 0||t.model!==void 0?{agentOptions:{...t.provider!==void 0?{provider:t.provider}:{},...t.model!==void 0?{model:t.model}:{}}}:{}})}catch(o){const s=this.childAdmissionFailure();this.post(c.ChildStartError,{callId:e,rendered:s?.rendered??w(o)});return}const i=this.childAdmissionFailure();if(i!==void 0){this.post(c.ChildStartError,{callId:e,rendered:i.rendered});try{await r.dispose()}catch(o){this.ctx.logger.warn(`workflow-worker-thread: refused child dispose failed: ${w(o)}`)}return}const n={run:r};this.children.set(e,n);const l=r.result.then(o=>{try{const s=
|
|
1
|
+
var C=Object.defineProperty;var a=(e,t)=>C(e,"name",{value:t,configurable:!0});import{randomUUID as A}from"node:crypto";import{availableParallelism as R,tmpdir as E}from"node:os";import*as x from"node:vm";import m from"@deepseek-ai/schemastery";import O,{WorkflowError as g,WorkflowRunId as $}from"@deepseek-ai/dsh-workflow";import{Worker as P}from"node:worker_threads";import{fileURLToPath as N}from"node:url";import{assertNever as M}from"@deepseek-ai/dsh-llm";import{snapshotJsonValue as T}from"@deepseek-ai/dsh-session";var h=class extends Error{static{a(this,"MaterializeError")}path;reason;constructor(e,t){super(`${e}: ${t}`),this.path=e,this.reason=t,this.name="MaterializeError"}};function w(e){try{const t=e?.stack;if(typeof t=="string"&&t.length>0)return t;const r=e?.message;return typeof r=="string"&&r.length>0?r:String(e)}catch{return"[unrenderable thrown value]"}}a(w,"renderThrown");function j(e){const t=Object.getPrototypeOf(e);return t===null?!0:Object.getPrototypeOf(t)===null}a(j,"hasPlainPrototype");function D(e,t="value"){if(e!==void 0)try{return k(e,t,new Set)}catch(r){throw r instanceof h?r:new h(t,`reading the value threw: ${w(r)}`)}}a(D,"materializeFromRealm");function k(e,t,r){switch(typeof e){case"boolean":case"string":return e;case"number":if(!Number.isFinite(e))throw new h(t,"non-finite numbers are not JSON data");return e;case"bigint":throw new h(t,"bigints are not JSON data");case"function":throw new h(t,"functions are not plain JSON data");case"symbol":throw new h(t,"symbols are not plain JSON data");case"undefined":throw new h(t,"undefined is not JSON data")}if(e===null)return null;const i=e;if(r.has(i))throw new h(t,"circular references are not JSON data");r.add(i);try{return Array.isArray(i)?I(i,t,r):z(i,t,r)}finally{r.delete(i)}}a(k,"materialize");function I(e,t,r){const i=[];for(let n=0;n<e.length;n++){if(!(n in e))throw new h(`${t}[${n}]`,"sparse arrays are not JSON data");i.push(k(e[n],`${t}[${n}]`,r))}for(const n of Object.keys(e)){const l=Number(n);if(!Number.isInteger(l)||l<0||l>=e.length)throw new h(`${t}.${n}`,"arrays with non-index properties are not JSON data")}if(Object.getOwnPropertySymbols(e).length>0)throw new h(t,"symbol-keyed properties are not plain JSON data");return i}a(I,"materializeArray");function z(e,t,r){if(!j(e))throw new h(t,"only plain objects and arrays are JSON data (exotic prototype)");if(Object.getOwnPropertySymbols(e).length>0)throw new h(t,"symbol-keyed properties are not plain JSON data");const i={};for(const n of Object.keys(e))Object.defineProperty(i,n,{value:k(e[n],`${t}.${n}`,r),enumerable:!0,writable:!0,configurable:!0});return i}a(z,"materializeObject");var u;(function(e){e.Ready="ready",e.Phase="phase",e.Log="log",e.AgentStart="agent-start",e.AgentEnd="agent-end",e.ChildStart="child-start",e.ChildDispose="child-dispose",e.Result="result"})(u||(u={}));var c;(function(e){e.Go="go",e.Cancel="cancel",e.ChildStarted="child-started",e.ChildStartError="child-start-error",e.ChildSettled="child-settled",e.ChildFailed="child-failed",e.ChildDisposed="child-disposed"})(c||(c={}));function S(e=process.platform,t){const r={};if(e==="win32"){const i=E();r.TMP=i,r.TEMP=i}return t!==void 0&&(r.TSX_TSCONFIG_PATH=t),r}a(S,"workerSpawnEnv");function U(e){if(!import.meta.url.endsWith(".ts"))return{entry:N(new URL("./worker.cjs",import.meta.url)),options:{workerData:e,env:S(),execArgv:[]}};const t=new URL("./worker.ts",import.meta.url),r=import.meta.resolve("tsx/esm/api"),i=import.meta.resolve("tsx/cjs/api"),n=[`import { register as registerEsm } from ${JSON.stringify(r)}`,`import { register as registerCjs } from ${JSON.stringify(i)}`,"registerCjs()","registerEsm()",`await import(${JSON.stringify(t.href)})`].join(`
|
|
2
|
+
`);return{entry:new URL(`data:text/javascript,${encodeURIComponent(n)}`),options:{workerData:e,env:S(void 0,process.env.TSX_TSCONFIG_PATH),execArgv:[]}}}a(U,"resolveWorkerSpawn");var G=class{static{a(this,"WorkerRun")}ctx;subagents;id;meta;parent;provider;disposeGraceMs;observer;result;settleResolve;settled=!1;terminalClaimed=!1;workerDeathObserved=!1;cancelReason;graceTimer;worker;workerGone=!1;hostStarted=0;children=new Map;pendingStarts=new Set;liveAgents=new Map;quiescenceWaiters=[];controller=new AbortController;inputSignal;inputSignalAbort;disposed;constructor(e,t,r,i,n,l,o,s,p,v){this.ctx=e,this.subagents=t,this.id=r,this.meta=i,this.parent=n,this.provider=o,this.disposeGraceMs=s,this.observer=p,this.result=new Promise(f=>{this.settleResolve=f});const{entry:b,options:d}=U(l);if(this.worker=new P(b,d),this.worker.on("message",f=>{this.onMessage(f)}),this.worker.on("error",f=>{this.onWorkerDeath(`workflow worker failed: ${w(f)}`,!1)}),this.worker.on("messageerror",f=>{this.onWorkerDeath(`workflow worker message failed to deserialize: ${w(f)}`,!1)}),this.worker.on("exit",f=>{this.workerGone=!0,this.onWorkerDeath(`workflow worker exited before the run settled (exit code ${f})`,!0)}),v?.aborted)this.cancel("workflow start signal already aborted");else if(v!==void 0){const f=a(()=>{this.detachInputSignal(),this.cancel("workflow signal aborted")},"onAbort");this.inputSignal=v,this.inputSignalAbort=f,v.addEventListener("abort",f,{once:!0})}}cancel(e){this.settled||this.terminalClaimed||this.cancelReason!==void 0||(this.cancelReason=e??"workflow cancelled",this.post(c.Cancel,{reason:this.cancelReason}),this.abortChildren(this.cancelReason),this.graceTimer=setTimeout(()=>{this.terminalClaimed=!0,this.endStrandedAgents(),this.settleResult(this.cancelledResult(this.hostStarted)),this.worker.terminate()},this.disposeGraceMs),this.graceTimer.unref())}dispose(){if(this.disposed!==void 0)return this.disposed;const e=Promise.withResolvers();return this.disposed=e.promise,(async()=>{this.detachInputSignal(),this.cancel("workflow disposed"),this.reapChildren("workflow disposed"),await Promise.race([(async()=>{await this.result,await this.childQuiescence()})(),J(this.disposeGraceMs)]),await this.worker.terminate(),this.reapChildren("workflow disposed")})().then(()=>{e.resolve(void 0)},t=>{e.reject(t)}),this.disposed}post(e,t){if(!(this.workerGone||this.workerDeathObserved))try{this.worker.postMessage({type:e,...t})}catch(r){this.ctx.logger.warn(`workflow-worker-thread: postMessage failed: ${w(r)}`)}}onMessage(e){if(!this.workerDeathObserved)switch(e.type){case u.Ready:this.post(c.Go,{});break;case u.Phase:this.cancelReason===void 0&&this.observer.phase(e.title);break;case u.Log:this.cancelReason===void 0&&this.observer.log(e.message);break;case u.AgentStart:this.liveAgents.set(e.info.seq,e.info),this.observer.agentStart(e.info);break;case u.AgentEnd:this.endAgent(e.info);break;case u.ChildStart:this.onChildStart(e.callId,e.request);break;case u.ChildDispose:this.onChildDispose(e.callId);break;case u.Result:this.onResult(e.result);break;default:M(e,"worker-to-host message")}}childAdmissionFailure(){if(this.cancelReason!==void 0)return{reason:this.cancelReason,rendered:`workflow run cancelled: ${this.cancelReason}`};if(this.workerDeathObserved)return{reason:"workflow worker gone",rendered:"workflow worker is no longer available"};if(this.terminalClaimed)return{reason:"workflow settled",rendered:"workflow run already settled"}}onChildStart(e,t){const r=this.childAdmissionFailure();if(r!==void 0){this.post(c.ChildStartError,{callId:e,rendered:r.rendered});return}this.hostStarted+=1;const i=this.startChild(e,t);this.pendingStarts.add(i),i.then(()=>{this.finishPendingStart(i)},()=>{this.finishPendingStart(i)})}async startChild(e,t){let r;try{r=await this.subagents.start(this.provider,{prompt:[{type:"text",text:t.prompt}],parent:this.parent,signal:this.controller.signal,...t.schema!==void 0?{outputSchema:t.schema}:{},...t.provider!==void 0||t.model!==void 0?{agentOptions:{...t.provider!==void 0?{provider:t.provider}:{},...t.model!==void 0?{model:t.model}:{}}}:{}})}catch(o){const s=this.childAdmissionFailure();this.post(c.ChildStartError,{callId:e,rendered:s?.rendered??w(o)});return}const i=this.childAdmissionFailure();if(i!==void 0){this.post(c.ChildStartError,{callId:e,rendered:i.rendered});try{await r.dispose()}catch(o){this.ctx.logger.warn(`workflow-worker-thread: refused child dispose failed: ${w(o)}`)}return}const n={run:r};this.children.set(e,n);const l=r.result.then(o=>{try{const s=T({output:o.output,...o.structured!==void 0?{structured:o.structured}:{},stopReason:o.stopReason});if(s===void 0)throw new TypeError("child result is not losslessly JSON-serializable");return()=>{this.post(c.ChildSettled,{callId:e,result:s})}}catch(s){const p=`workflow child result could not cross the worker boundary: ${w(s)}`;return()=>{this.post(c.ChildFailed,{callId:e,rendered:p})}}},o=>{const s=w(o);return()=>{this.post(c.ChildFailed,{callId:e,rendered:s})}});this.post(c.ChildStarted,{callId:e,childId:r.id}),l.then(o=>{o()})}onChildDispose(e){const t=this.children.get(e);if(t===void 0){this.post(c.ChildDisposed,{callId:e});return}this.disposeChild(e,t).then(()=>{this.post(c.ChildDisposed,{callId:e})})}disposeChild(e,t){return t.disposal!==void 0||(t.disposal=Promise.resolve().then(()=>t.run.dispose()).catch(r=>{this.ctx.logger.warn(`workflow-worker-thread: child dispose failed: ${w(r)}`)}).then(()=>{this.finishChild(e)})),t.disposal}finishChild(e){this.children.delete(e),this.notifyChildQuiescence()}finishPendingStart(e){this.pendingStarts.delete(e),this.notifyChildQuiescence()}notifyChildQuiescence(){if(!(this.children.size!==0||this.pendingStarts.size!==0))for(const e of this.quiescenceWaiters.splice(0))e()}childQuiescence(){return this.children.size===0&&this.pendingStarts.size===0?Promise.resolve():new Promise(e=>{this.quiescenceWaiters.push(e)})}reapChildren(e){this.abortChildren(this.cancelReason??e);for(const[t,r]of[...this.children])this.disposeChild(t,r)}abortChildren(e){this.controller.signal.aborted||this.controller.abort(e)}onResult(e){if(this.terminalClaimed)return;const t=this.cancelReason!==void 0;if(this.terminalClaimed=!0,this.reapChildren("workflow settled"),!t){this.settleResult(e);return}if(e.stopReason!=="cancelled"){this.settleResult(this.cancelledResult(e.agentsStarted));return}this.settleResult(e)}onWorkerDeath(e,t){if(!this.workerDeathObserved){this.workerDeathObserved=!0;const r=this.terminalClaimed,i=this.cancelReason!==void 0;r||(this.terminalClaimed=!0),(this.children.size>0||this.pendingStarts.size>0)&&this.reapChildren("workflow worker gone"),this.endStrandedAgents(),r||(i?this.settleResult(this.cancelledResult(this.hostStarted)):this.settleResult({value:null,stopReason:"error",error:e,agentsStarted:this.hostStarted}))}if(t){for(const[r,i]of[...this.children])this.disposeChild(r,i);this.endStrandedAgents()}}endAgent(e){this.liveAgents.delete(e.seq)&&this.observer.agentEnd(e)}endStrandedAgents(){for(const e of[...this.liveAgents.values()])this.endAgent({...e,outcome:"cancelled"})}cancelledResult(e){return{value:null,stopReason:"cancelled",error:`workflow run cancelled: ${this.cancelReason??"workflow cancelled"}`,agentsStarted:e}}detachInputSignal(){const e=this.inputSignal,t=this.inputSignalAbort;e===void 0||t===void 0||(this.inputSignal=void 0,this.inputSignalAbort=void 0,e.removeEventListener("abort",t))}settleResult(e){this.settled||(this.terminalClaimed=!0,this.settled=!0,this.detachInputSignal(),clearTimeout(this.graceTimer),this.settleResolve(e))}};function J(e){return new Promise(t=>{setTimeout(t,e).unref()})}a(J,"sleep");function W(e){const t=[];if(typeof e!="object"||e===null||Array.isArray(e))return{violations:["meta must be an object"]};const r=e,i=new Set(["name","description","whenToUse","phases"]);for(const l of Object.keys(r))i.has(l)||t.push(`meta.${l} is not a recognized field (name/description/whenToUse/phases)`);(typeof r.name!="string"||r.name.length===0)&&t.push("meta.name must be a non-empty string"),(typeof r.description!="string"||r.description.length===0)&&t.push("meta.description must be a non-empty string"),r.whenToUse!==void 0&&typeof r.whenToUse!="string"&&t.push("meta.whenToUse must be a string");const n=[];return r.phases!==void 0&&(Array.isArray(r.phases)?r.phases.forEach((l,o)=>{if(typeof l!="object"||l===null||Array.isArray(l)){t.push(`meta.phases[${o}] must be an object`);return}const s=l;for(const p of Object.keys(s))["title","detail","provider","model"].includes(p)||t.push(`meta.phases[${o}].${p} is not a recognized field`);(typeof s.title!="string"||s.title.length===0)&&t.push(`meta.phases[${o}].title must be a non-empty string`),s.detail!==void 0&&typeof s.detail!="string"&&t.push(`meta.phases[${o}].detail must be a string`),s.provider!==void 0&&typeof s.provider!="string"&&t.push(`meta.phases[${o}].provider must be a string`),s.model!==void 0&&typeof s.model!="string"&&t.push(`meta.phases[${o}].model must be a string`),t.length===0&&n.push({title:s.title,...s.detail!==void 0?{detail:s.detail}:{},...s.provider!==void 0?{provider:s.provider}:{},...s.model!==void 0?{model:s.model}:{}})}):t.push("meta.phases must be an array")),t.length>0?{violations:t}:{violations:t,meta:{name:r.name,description:r.description,...r.whenToUse!==void 0?{whenToUse:r.whenToUse}:{},...r.phases!==void 0?{phases:n}:{}}}}a(W,"validateMetaShape");function y(e){const{meta:t,violations:r}=W(e);if(t===void 0)throw new g(`invalid meta: ${r.join("; ")}`,"META_INVALID");return t}a(y,"validateMeta");const F=/^\s*export\s+const\s+meta\b/;function L(e,t){if(F.test(e))throw new g("workflow meta rides the `meta` request field, not the script: remove the `export const meta = {...}` statement from the body","SCRIPT_PARSE");try{new x.Script(`(async () => {
|
|
3
3
|
${e}
|
|
4
4
|
})()`,{filename:`workflow:${t}`,lineOffset:-1})}catch(r){throw new g(`workflow script does not parse: ${String(r)}`,"SCRIPT_PARSE",{cause:r})}}a(L,"assertBodyParses");function _(e,t,r){const i=r??t;if(i.length===0||i!==i.trim())throw new g("workflow subagentProvider must be a non-empty normalized string","INVALID_ARGUMENT");if(e.subagents.getProvider(i)===void 0)throw new g(`no subagent provider registered for "${i}"`,"AGENT_START");return i}a(_,"resolveSubagentProvider");function V(e,t){if(e===void 0)return t;if(!Number.isSafeInteger(e)||e<1)throw new g("workflow maxTotalAgents must be a positive safe integer","INVALID_ARGUMENT");if(e>t)throw new g(`workflow maxTotalAgents ${e} exceeds the engine ceiling ${t}`,"INVALID_ARGUMENT");return e}a(V,"resolveMaxTotalAgents");var Q=class extends O{static{a(this,"WorkerThreadWorkflowEngine")}static inject=["subagents"];static Config=m.object({provider:m.string().default("spawn"),maxConcurrentAgents:m.natural().default(0),maxTotalAgents:m.natural().min(1).default(1e3),maxItemsPerCall:m.natural().min(1).default(4096),syncTimeoutMs:m.natural().min(1).default(5e3),disposeGraceMs:m.natural().default(5e3)});config;constructor(e,t){super(e),this.config=t}start(e){const t=y(e.meta);L(e.script,t.name);const r=_(this.ctx,this.config.provider,e.subagentProvider),i=V(e.maxTotalAgents,this.config.maxTotalAgents),n=$(A()),l={id:n,meta:t},o={maxConcurrentAgents:this.config.maxConcurrentAgents===0?Math.min(16,Math.max(1,R()-2)):this.config.maxConcurrentAgents,maxTotalAgents:i,maxItemsPerCall:this.config.maxItemsPerCall,syncTimeoutMs:this.config.syncTimeoutMs},s={meta:t,body:e.script,...e.args!==void 0?{args:e.args}:{},limits:o},p=this.ctx,v=p.subagents,b=new G(p,v,n,t,e.parent,s,r,this.config.disposeGraceMs,{phase:a(d=>{this.emitWorkflowEvent("workflow/phase",l,d)},"phase"),log:a(d=>{this.emitWorkflowEvent("workflow/log",l,d)},"log"),agentStart:a(d=>{this.emitWorkflowEvent("workflow/agent-start",l,d)},"agentStart"),agentEnd:a(d=>{this.emitWorkflowEvent("workflow/agent-end",l,d)},"agentEnd")},e.signal);return this.emitWorkflowEvent("workflow/start",l),b.result.then(d=>{this.emitWorkflowEvent("workflow/end",l,{stopReason:d.stopReason,...d.error!==void 0?{error:d.error}:{},agentsStarted:d.agentsStarted})}),b}};export{h as MaterializeError,Q as default,D as materializeFromRealm,y as validateMeta};
|
|
@@ -15,7 +15,7 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
15
15
|
}
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
18
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule || !__hasOwnProp.call(mod, "default") ? __defProp(target, "default", {
|
|
19
19
|
value: mod,
|
|
20
20
|
enumerable: true
|
|
21
21
|
}) : target, mod));
|
|
@@ -158,7 +158,6 @@ function materialize(value, path, seen) {
|
|
|
158
158
|
case "function": throw new MaterializeError(path, "functions are not plain JSON data");
|
|
159
159
|
case "symbol": throw new MaterializeError(path, "symbols are not plain JSON data");
|
|
160
160
|
case "undefined": throw new MaterializeError(path, "undefined is not JSON data");
|
|
161
|
-
case "object": break;
|
|
162
161
|
}
|
|
163
162
|
if (value === null) return null;
|
|
164
163
|
const objectValue = value;
|
|
@@ -212,7 +211,7 @@ function materializeObject(value, path, seen) {
|
|
|
212
211
|
* @module @deepseek-ai/dsh-workflow-worker-thread/runtime
|
|
213
212
|
*/
|
|
214
213
|
/** The `agent()` options the script may pass; everything else rejects loud. */
|
|
215
|
-
const SUPPORTED_AGENT_OPTIONS = new Set([
|
|
214
|
+
const SUPPORTED_AGENT_OPTIONS = /* @__PURE__ */ new Set([
|
|
216
215
|
"label",
|
|
217
216
|
"phase",
|
|
218
217
|
"schema",
|
|
@@ -220,7 +219,7 @@ const SUPPORTED_AGENT_OPTIONS = new Set([
|
|
|
220
219
|
"model"
|
|
221
220
|
]);
|
|
222
221
|
/** Deferred Claude Code options we name explicitly in the rejection message. */
|
|
223
|
-
const DEFERRED_AGENT_OPTIONS = new Set([
|
|
222
|
+
const DEFERRED_AGENT_OPTIONS = /* @__PURE__ */ new Set([
|
|
224
223
|
"effort",
|
|
225
224
|
"isolation",
|
|
226
225
|
"agentType"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-workflow-worker-thread","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-workflow-worker-thread","version":"0.0.13","publishConfig":{"access":"public"},"type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./worker":{"types":"./lib/types/worker.d.ts","default":"./lib/worker.cjs"},"./src/*":"./src/*","./package.json":"./package.json"},"license":"MIT","peerDependencies":{"@deepseek-ai/dsh-agent":"^0.0.13","@deepseek-ai/dsh-session":"^0.0.13","@deepseek-ai/dsh-llm":"^0.0.13","@deepseek-ai/dsh-subagent":"^0.0.13","@deepseek-ai/dsh-tools":"^0.0.13","@deepseek-ai/dsh-workflow":"^0.0.13","@deepseek-ai/dsh-invariants":"^0.0.13","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-brand":"^0.0.13"},"dependencies":{"@deepseek-ai/schemastery":"^3.18.1"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var n=Object.defineProperty;var o=(
|
|
1
|
+
var n=Object.defineProperty;var o=(t,i)=>n(t,"name",{value:i,configurable:!0});import"node:crypto";import"node:fs/promises";import"node:path";import{Service as c}from"@deepseek-ai/cordis";import{z as e}from"zod";import{SessionId as a}from"@deepseek-ai/dsh-session";import{defineDomain as d,domainTable as p}from"@deepseek-ai/dsh-storage-domain";const s=e.string().transform(t=>t),l=e.object({path:e.string(),title:e.string(),sessionIds:e.array(e.string().transform(a)),createdAt:e.string(),updatedAt:e.string()}),m=e.discriminatedUnion("operation",[e.object({operation:e.literal("create"),workspaceId:s}),e.object({operation:e.literal("delete"),workspaceId:s})]),k=e.object({initialized:e.boolean(),workspaceIds:e.array(s),archivedSessionIds:e.array(e.string().transform(a)).default([]),pendingMutation:m.optional()});d({name:"workspace",version:2,global:{schema:k,initial:{initialized:!1,workspaceIds:[],archivedSessionIds:[]}},tables:{workspaces:p(l)}});function z(t){return t}o(z,"WorkspaceId"),c.init;const w="@deepseek-ai/dsh-workspace",y="workspace-invariant",g=["invariants"],b=Object.assign((t,i)=>{t.on("domain/changed",r=>{if(!(r.domain!=="workspace"||r.table!=="workspaces")){if(r.operation==="deleted"){t.workspaceRegistry.get(r.key)!==void 0&&i(`workspace record '${r.key}' was deleted while the registry cache still publishes it — some write path bypassed ctx.workspaceRegistry`);return}t.workspaceRegistry.get(r.key)===void 0&&i(`workspace record '${r.key}' landed durably but the registry cache holds no entity for it — the cache and the domain table have diverged`)}})},{inject:["workspaceRegistry"]}),f=o(t=>Promise.resolve(t.invariants.register(w,b)),"apply");export{f as apply,g as inject,y as name};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-workspace","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-workspace","version":"0.0.13","publishConfig":{"access":"public"},"type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./src/*":"./src/*","./package.json":"./package.json"},"license":"MIT","peerDependencies":{"@deepseek-ai/dsh-brand":"^0.0.13","@deepseek-ai/dsh-storage-domain":"^0.0.13","@deepseek-ai/dsh-session":"^0.0.13","@deepseek-ai/dsh-invariants":"^0.0.13","@deepseek-ai/dsh-session-persistence":"^0.0.13","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-storage":"^0.0.13"},"dependencies":{"zod":"^4.4.3"}}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@qqbrowser/qbot-dsh","version":"0.0.11","publishConfig":{"access":"public"},"type":"module","bin":{"qbot-dsh":"lib/bin.js"},"license":"MIT","engines":{"node":"^22.19.0 || >=24.0.0"},"os":["darwin","win32"],"cpu":["arm64","x64"],"dshRelease":{"targets":["darwin-arm64","darwin-x64","win32-x64"]},"dependencies":{"@anthropic-ai/sdk":"0.91.1","@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-crypto/supports-web-crypto":"5.2.0","@aws-crypto/util":"5.2.0","@aws-sdk/client-bedrock-runtime":"3.1048.0","@aws-sdk/core":"3.977.8","@aws-sdk/credential-provider-env":"3.972.69","@aws-sdk/credential-provider-http":"3.972.71","@aws-sdk/credential-provider-ini":"3.973.14","@aws-sdk/credential-provider-login":"3.972.76","@aws-sdk/credential-provider-node":"3.972.80","@aws-sdk/credential-provider-process":"3.972.69","@aws-sdk/credential-provider-sso":"3.973.13","@aws-sdk/credential-provider-web-identity":"3.972.75","@aws-sdk/eventstream-handler-node":"3.972.33","@aws-sdk/middleware-eventstream":"3.972.28","@aws-sdk/middleware-websocket":"3.972.51","@aws-sdk/nested-clients":"3.997.43","@aws-sdk/signature-v4-multi-region":"3.996.45","@aws-sdk/token-providers":"3.1048.0","@aws-sdk/types":"3.974.4","@aws-sdk/util-locate-window":"3.965.10","@aws-sdk/xml-builder":"3.972.39","@aws/lambda-invoke-store":"0.3.0","@babel/code-frame":"7.29.7","@babel/helper-validator-identifier":"7.29.7","@babel/runtime":"7.29.7","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/cordis-plugin-group":"1.0.1","@deepseek-ai/cordis-plugin-hmr":"1.0.16","@deepseek-ai/cordis-plugin-include":"1.0.6","@deepseek-ai/cordis-plugin-loader":"1.0.2","@deepseek-ai/cordis-plugin-timer":"1.1.3","@deepseek-ai/cosmokit":"1.8.2","@deepseek-ai/dsh-agent":"0.0.11","@deepseek-ai/dsh-agent-default-model":"0.0.11","@deepseek-ai/dsh-agent-instructions":"0.0.11","@deepseek-ai/dsh-agent-loop":"0.0.11","@deepseek-ai/dsh-agent-presets":"0.0.11","@deepseek-ai/dsh-agent-tool-presentation":"0.0.11","@deepseek-ai/dsh-anonymous-user-id":"0.0.11","@deepseek-ai/dsh-api-gateway":"0.0.11","@deepseek-ai/dsh-api-remotes":"0.0.11","@deepseek-ai/dsh-app-boot":"0.0.11","@deepseek-ai/dsh-atomic-write":"0.0.11","@deepseek-ai/dsh-attachment":"0.0.11","@deepseek-ai/dsh-attachment-local":"0.0.11","@deepseek-ai/dsh-base":"0.0.11","@deepseek-ai/dsh-bash-local":"0.0.11","@deepseek-ai/dsh-bash-sandbox":"0.0.11","@deepseek-ai/dsh-brand":"0.0.11","@deepseek-ai/dsh-client-connection":"0.0.11","@deepseek-ai/dsh-client-hmr":"0.0.11","@deepseek-ai/dsh-client-locale":"0.0.11","@deepseek-ai/dsh-client-modules":"0.0.11","@deepseek-ai/dsh-client-runtime":"0.0.11","@deepseek-ai/dsh-client-schema-form":"0.0.11","@deepseek-ai/dsh-client-ui-agent-preset":"0.0.11","@deepseek-ai/dsh-client-ui-attachment":"0.0.11","@deepseek-ai/dsh-client-ui-commands":"0.0.11","@deepseek-ai/dsh-client-ui-conversation":"0.0.11","@deepseek-ai/dsh-client-ui-cordis":"0.0.11","@deepseek-ai/dsh-client-ui-deliverables":"0.0.11","@deepseek-ai/dsh-client-ui-directory-picker-browse":"0.0.11","@deepseek-ai/dsh-client-ui-directory-picker-native":"0.0.11","@deepseek-ai/dsh-client-ui-goal":"0.0.11","@deepseek-ai/dsh-client-ui-input-trigger":"0.0.11","@deepseek-ai/dsh-client-ui-jobs":"0.0.11","@deepseek-ai/dsh-client-ui-layout":"0.0.11","@deepseek-ai/dsh-client-ui-message-feedback":"0.0.11","@deepseek-ai/dsh-client-ui-model-selection":"0.0.11","@deepseek-ai/dsh-client-ui-permission-presets":"0.0.11","@deepseek-ai/dsh-client-ui-plan":"0.0.11","@deepseek-ai/dsh-client-ui-primitives":"0.0.11","@deepseek-ai/dsh-client-ui-settings":"0.0.11","@deepseek-ai/dsh-client-ui-settings-general":"0.0.11","@deepseek-ai/dsh-client-ui-settings-models":"0.0.11","@deepseek-ai/dsh-client-ui-settings-plugin-inventory":"0.0.11","@deepseek-ai/dsh-client-ui-settings-plugins":"0.0.11","@deepseek-ai/dsh-client-ui-sidebar":"0.0.11","@deepseek-ai/dsh-client-ui-skill":"0.0.11","@deepseek-ai/dsh-client-ui-slots":"0.0.11","@deepseek-ai/dsh-client-ui-subagent":"0.0.11","@deepseek-ai/dsh-client-ui-theme":"0.0.11","@deepseek-ai/dsh-client-ui-tool":"0.0.11","@deepseek-ai/dsh-client-ui-trajectory":"0.0.11","@deepseek-ai/dsh-client-ui-user-questions":"0.0.11","@deepseek-ai/dsh-client-ui-workflow-run":"0.0.11","@deepseek-ai/dsh-client-ui-workspace":"0.0.11","@deepseek-ai/dsh-client-web":"0.0.11","@deepseek-ai/dsh-client-web-react":"0.0.11","@deepseek-ai/dsh-cmdline":"0.0.11","@deepseek-ai/dsh-code-runtime":"0.0.11","@deepseek-ai/dsh-code-runtime-worker-thread":"0.0.11","@deepseek-ai/dsh-command-compact":"0.0.11","@deepseek-ai/dsh-command-feedback":"0.0.11","@deepseek-ai/dsh-command-goal":"0.0.11","@deepseek-ai/dsh-commands":"0.0.11","@deepseek-ai/dsh-compaction":"0.0.11","@deepseek-ai/dsh-compaction-basic":"0.0.11","@deepseek-ai/dsh-compaction-tool-result-pruner":"0.0.11","@deepseek-ai/dsh-content-review":"0.0.11","@deepseek-ai/dsh-cordis-client-runner":"0.0.11","@deepseek-ai/dsh-cordis-host-runner":"0.0.11","@deepseek-ai/dsh-credentials":"0.0.11","@deepseek-ai/dsh-credentials-local":"0.0.11","@deepseek-ai/dsh-fs":"0.0.11","@deepseek-ai/dsh-fs-local":"0.0.11","@deepseek-ai/dsh-fs-observation-policy":"0.0.11","@deepseek-ai/dsh-fs-sandbox":"0.0.11","@deepseek-ai/dsh-goal":"0.0.11","@deepseek-ai/dsh-goal-round-driver":"0.0.11","@deepseek-ai/dsh-headless":"0.0.11","@deepseek-ai/dsh-home-paths":"0.0.11","@deepseek-ai/dsh-home-quarantine-macos":"0.0.11","@deepseek-ai/dsh-host-apiproxy":"0.0.11","@deepseek-ai/dsh-host-directory-picker":"0.0.11","@deepseek-ai/dsh-host-directory-picker-auto":"0.0.11","@deepseek-ai/dsh-host-directory-picker-browse":"0.0.11","@deepseek-ai/dsh-host-directory-picker-native":"0.0.11","@deepseek-ai/dsh-host-frontend-static":"0.0.11","@deepseek-ai/dsh-host-plugin-inventory":"0.0.11","@deepseek-ai/dsh-host-webserver":"0.0.11","@deepseek-ai/dsh-invariants":"0.0.11","@deepseek-ai/dsh-jobs":"0.0.11","@deepseek-ai/dsh-jobs-local":"0.0.11","@deepseek-ai/dsh-launch-environment":"0.0.11","@deepseek-ai/dsh-llm":"0.0.11","@deepseek-ai/dsh-llm-deepseek":"0.0.11","@deepseek-ai/dsh-llm-gateway-openai":"0.0.11","@deepseek-ai/dsh-llm-pi-ai":"0.0.11","@deepseek-ai/dsh-llm-retry":"0.0.11","@deepseek-ai/dsh-mcp-client":"0.0.11","@deepseek-ai/dsh-message-feedback":"0.0.11","@deepseek-ai/dsh-native-command":"0.0.11","@deepseek-ai/dsh-output-retention":"0.0.11","@deepseek-ai/dsh-permission-presets":"0.0.11","@deepseek-ai/dsh-persona":"0.0.11","@deepseek-ai/dsh-plan-mode":"0.0.11","@deepseek-ai/dsh-pwsh-local":"0.0.11","@deepseek-ai/dsh-pwsh-sandbox":"0.0.11","@deepseek-ai/dsh-qb-auth":"0.0.11","@deepseek-ai/dsh-repeat-tool-reminder":"0.0.11","@deepseek-ai/dsh-sandbox":"0.0.11","@deepseek-ai/dsh-sandbox-local":"0.0.11","@deepseek-ai/dsh-sandbox-policy":"0.0.11","@deepseek-ai/dsh-sandbox-windows-acl":"0.0.11","@deepseek-ai/dsh-schedule":"0.0.11","@deepseek-ai/dsh-scope":"0.0.11","@deepseek-ai/dsh-session":"0.0.11","@deepseek-ai/dsh-session-checkpoint-policy":"0.0.11","@deepseek-ai/dsh-session-log-export":"0.0.11","@deepseek-ai/dsh-session-persistence":"0.0.11","@deepseek-ai/dsh-session-persistence-jsonl":"0.0.11","@deepseek-ai/dsh-session-projection":"0.0.11","@deepseek-ai/dsh-session-projection-cache":"0.0.11","@deepseek-ai/dsh-session-query":"0.0.11","@deepseek-ai/dsh-session-query-sqlite":"0.0.11","@deepseek-ai/dsh-session-reference":"0.0.11","@deepseek-ai/dsh-session-stats":"0.0.11","@deepseek-ai/dsh-session-telemetry":"0.0.11","@deepseek-ai/dsh-session-telemetry-otel":"0.0.11","@deepseek-ai/dsh-session-title":"0.0.11","@deepseek-ai/dsh-session-title-first-prompt-llm":"0.0.11","@deepseek-ai/dsh-session-title-llm":"0.0.11","@deepseek-ai/dsh-settings":"0.0.11","@deepseek-ai/dsh-settings-file":"0.0.11","@deepseek-ai/dsh-shell":"0.0.11","@deepseek-ai/dsh-shell-env":"0.0.11","@deepseek-ai/dsh-skill":"0.0.11","@deepseek-ai/dsh-skill-badge":"0.0.11","@deepseek-ai/dsh-skill-filesystem":"0.0.11","@deepseek-ai/dsh-spill":"0.0.11","@deepseek-ai/dsh-spill-local":"0.0.11","@deepseek-ai/dsh-spill-policy":"0.0.11","@deepseek-ai/dsh-storage":"0.0.11","@deepseek-ai/dsh-storage-domain":"0.0.11","@deepseek-ai/dsh-storage-json":"0.0.11","@deepseek-ai/dsh-subagent":"0.0.11","@deepseek-ai/dsh-subagent-fork-in-process":"0.0.11","@deepseek-ai/dsh-subagent-in-process-driver":"0.0.11","@deepseek-ai/dsh-subagent-spawn-in-process":"0.0.11","@deepseek-ai/dsh-subprocess":"0.0.11","@deepseek-ai/dsh-subprocess-local":"0.0.11","@deepseek-ai/dsh-system-prompt":"0.0.11","@deepseek-ai/dsh-terminal":"0.0.11","@deepseek-ai/dsh-terminal-bash":"0.0.11","@deepseek-ai/dsh-time-context":"0.0.11","@deepseek-ai/dsh-timeout":"0.0.11","@deepseek-ai/dsh-tmux-context":"0.0.11","@deepseek-ai/dsh-token-meter":"0.0.11","@deepseek-ai/dsh-tool-ask-user":"0.0.11","@deepseek-ai/dsh-tool-bash":"0.0.11","@deepseek-ai/dsh-tool-bash-persistent":"0.0.11","@deepseek-ai/dsh-tool-call-timeout-policy":"0.0.11","@deepseek-ai/dsh-tool-cordis":"0.0.11","@deepseek-ai/dsh-tool-fs":"0.0.11","@deepseek-ai/dsh-tool-fs-search":"0.0.11","@deepseek-ai/dsh-tool-goal":"0.0.11","@deepseek-ai/dsh-tool-jobs":"0.0.11","@deepseek-ai/dsh-tool-pwsh":"0.0.11","@deepseek-ai/dsh-tool-ralph":"0.0.11","@deepseek-ai/dsh-tool-skill":"0.0.11","@deepseek-ai/dsh-tool-str-replace-editor":"0.0.11","@deepseek-ai/dsh-tool-subagent":"0.0.11","@deepseek-ai/dsh-tool-subagent-control":"0.0.11","@deepseek-ai/dsh-tool-subagent-report":"0.0.11","@deepseek-ai/dsh-tool-todo":"0.0.11","@deepseek-ai/dsh-tool-web":"0.0.11","@deepseek-ai/dsh-tool-workflow":"0.0.11","@deepseek-ai/dsh-tools":"0.0.11","@deepseek-ai/dsh-typert-loader":"0.0.11","@deepseek-ai/dsh-typert-protocol":"0.0.11","@deepseek-ai/dsh-typert-registry":"0.0.11","@deepseek-ai/dsh-user-approval":"0.0.11","@deepseek-ai/dsh-user-questions":"0.0.11","@deepseek-ai/dsh-web":"0.0.11","@deepseek-ai/dsh-web-app":"0.0.11","@deepseek-ai/dsh-web-frontend":"0.0.11","@deepseek-ai/dsh-web-search-dsh":"0.0.11","@deepseek-ai/dsh-workflow":"0.0.11","@deepseek-ai/dsh-workflow-worker-thread":"0.0.11","@deepseek-ai/dsh-workspace":"0.0.11","@deepseek-ai/node-addon-landlock-run":"0.1.1","@deepseek-ai/schemastery":"3.18.1","@earendil-works/pi-ai":"0.83.0","@google/genai":"1.52.0","@hono/node-server":"2.1.1","@img/colour":"1.1.0","@joplin/turndown-plugin-gfm":"1.0.67","@mistralai/mistralai":"2.2.6","@mixmark-io/domino":"2.2.0","@modelcontextprotocol/sdk":"1.30.0","@napi-rs/xattr":"1.0.3","@opentelemetry/api":"1.9.1","@opentelemetry/api-logs":"0.220.0","@opentelemetry/core":"2.9.0","@opentelemetry/exporter-logs-otlp-http":"0.220.0","@opentelemetry/otlp-exporter-base":"0.220.0","@opentelemetry/otlp-transformer":"0.220.0","@opentelemetry/resources":"2.9.0","@opentelemetry/sdk-logs":"0.220.0","@opentelemetry/sdk-metrics":"2.9.0","@opentelemetry/sdk-trace":"2.9.0","@opentelemetry/semantic-conventions":"1.43.0","@parcel/watcher":"2.6.0","@protobufjs/aspromise":"1.1.2","@protobufjs/base64":"1.1.2","@protobufjs/codegen":"2.0.5","@protobufjs/eventemitter":"1.1.1","@protobufjs/fetch":"1.1.1","@protobufjs/float":"1.0.2","@protobufjs/path":"1.1.2","@protobufjs/pool":"1.1.0","@protobufjs/utf8":"1.1.2","@shikijs/core":"4.4.3","@shikijs/engine-javascript":"4.4.3","@shikijs/engine-oniguruma":"4.4.3","@shikijs/langs":"4.4.3","@shikijs/primitive":"4.4.3","@shikijs/themes":"4.4.3","@shikijs/types":"4.4.3","@shikijs/vscode-textmate":"10.0.2","@smithy/core":"3.33.2","@smithy/credential-provider-imds":"4.5.2","@smithy/fetch-http-handler":"5.7.2","@smithy/is-array-buffer":"2.2.0","@smithy/node-http-handler":"4.7.3","@smithy/signature-v4":"5.7.2","@smithy/types":"4.17.2","@smithy/util-buffer-from":"2.2.0","@smithy/util-utf8":"2.3.0","@standard-schema/spec":"1.1.0","@tanstack/react-virtual":"3.14.9","@tanstack/virtual-core":"3.17.7","@tencent/qb-auth-send-h5":"2.7.0","@types/debug":"4.1.13","@types/hast":"3.0.5","@types/katex":"0.16.8","@types/mdast":"4.0.4","@types/ms":"2.1.0","@types/node":"26.2.0","@types/retry":"0.12.0","@types/unist":"3.0.3","@ungap/structured-clone":"1.3.3","@vscode/ripgrep":"1.18.0","accepts":"2.0.0","agent-base":"7.1.4","ajv":"8.20.0","ajv-formats":"3.0.1","anser":"2.3.5","argparse":"2.0.1","base64-js":"1.5.1","bignumber.js":"9.3.1","body-parser":"2.3.0","bowser":"2.14.1","buffer-equal-constant-time":"1.0.1","bytes":"3.1.2","call-bind-apply-helpers":"1.0.2","call-bound":"1.0.4","ccount":"2.0.1","character-entities":"2.0.2","character-entities-html4":"2.1.0","character-entities-legacy":"3.0.0","chokidar":"4.0.3","clsx":"2.1.1","comma-separated-tokens":"2.0.3","commander":"15.0.0","content-disposition":"1.1.0","content-type":"1.0.5","cookie":"0.7.2","cookie-signature":"1.2.2","cors":"2.8.6","cross-spawn":"7.0.6","data-uri-to-buffer":"4.0.1","debug":"4.4.3","decode-named-character-reference":"1.3.0","depd":"2.0.0","dequal":"2.0.3","detect-libc":"2.1.2","devlop":"1.1.0","diff":"9.0.0","dunder-proto":"1.0.1","ecdsa-sig-formatter":"1.0.11","ee-first":"1.1.1","encodeurl":"2.0.0","es-define-property":"1.0.1","es-errors":"1.3.0","es-object-atoms":"1.1.2","escape-html":"1.0.3","escape-string-regexp":"5.0.0","etag":"1.8.1","eventsource":"3.0.7","eventsource-parser":"3.1.1","express":"5.2.1","express-rate-limit":"8.6.2","extend":"3.0.2","fast-deep-equal":"3.1.3","fast-uri":"3.1.5","fetch-blob":"3.2.0","fflate":"0.8.3","finalhandler":"2.1.1","formdata-polyfill":"4.0.10","forwarded":"0.2.0","fresh":"2.0.0","function-bind":"1.1.2","gaxios":"7.3.1","gcp-metadata":"8.1.2","get-intrinsic":"1.3.0","get-proto":"1.0.1","google-auth-library":"10.9.1","google-logging-utils":"1.1.3","gopd":"1.2.0","has-symbols":"1.1.0","hasown":"2.0.4","hast-util-to-html":"9.0.5","hast-util-whitespace":"3.0.0","hono":"4.13.2","html-void-elements":"3.0.0","http-errors":"2.0.1","http-proxy-agent":"7.0.2","https-proxy-agent":"7.0.6","iconv-lite":"0.7.3","immer":"10.2.0","inherits":"2.0.4","ip-address":"10.5.0","ipaddr.js":"1.9.1","is-extglob":"2.1.1","is-glob":"4.0.3","is-promise":"4.0.0","isexe":"2.0.0","jose":"6.2.9","js-tokens":"4.0.0","js-yaml":"4.3.1","json-bigint":"1.0.0","json-schema-to-ts":"3.1.1","json-schema-traverse":"1.0.0","json-schema-typed":"8.0.2","jwa":"2.0.1","jws":"4.0.1","katex":"0.16.47","koffi":"3.1.5","long":"5.3.2","longest-streak":"3.1.0","loose-envify":"1.4.0","markdown-table":"3.0.4","math-intrinsics":"1.1.0","mdast-util-find-and-replace":"3.0.2","mdast-util-from-markdown":"2.0.3","mdast-util-gfm":"3.1.0","mdast-util-gfm-autolink-literal":"2.0.1","mdast-util-gfm-footnote":"2.1.0","mdast-util-gfm-strikethrough":"2.0.0","mdast-util-gfm-table":"2.0.0","mdast-util-gfm-task-list-item":"2.0.0","mdast-util-math":"3.0.0","mdast-util-phrasing":"4.1.0","mdast-util-to-hast":"13.2.1","mdast-util-to-markdown":"2.1.2","mdast-util-to-string":"4.0.0","media-typer":"1.1.1","merge-descriptors":"2.0.0","micromark":"4.0.2","micromark-core-commonmark":"2.0.3","micromark-extension-gfm":"3.0.0","micromark-extension-gfm-autolink-literal":"2.1.0","micromark-extension-gfm-footnote":"2.1.0","micromark-extension-gfm-strikethrough":"2.1.0","micromark-extension-gfm-table":"2.1.1","micromark-extension-gfm-tagfilter":"2.0.0","micromark-extension-gfm-task-list-item":"2.1.0","micromark-extension-math":"3.1.0","micromark-factory-destination":"2.0.1","micromark-factory-label":"2.0.1","micromark-factory-space":"2.0.1","micromark-factory-title":"2.0.1","micromark-factory-whitespace":"2.0.1","micromark-util-character":"2.1.1","micromark-util-chunked":"2.0.1","micromark-util-classify-character":"2.0.1","micromark-util-combine-extensions":"2.0.1","micromark-util-decode-numeric-character-reference":"2.0.2","micromark-util-decode-string":"2.0.1","micromark-util-encode":"2.0.1","micromark-util-html-tag-name":"2.0.1","micromark-util-normalize-identifier":"2.0.1","micromark-util-resolve-all":"2.0.1","micromark-util-sanitize-uri":"2.0.1","micromark-util-subtokenize":"2.1.0","micromark-util-symbol":"2.0.1","micromark-util-types":"2.0.2","mime-db":"1.54.0","mime-types":"3.0.2","ms":"2.1.3","negotiator":"1.0.0","node-addon-api":"7.1.1","node-addon-native-custom-loader":"0.1.5","node-addon-require-builtin":"0.1.5","node-domexception":"1.0.0","node-fetch":"3.3.2","node-pty":"1.1.0","object-assign":"4.1.1","object-inspect":"1.13.4","on-finished":"2.4.1","once":"1.4.0","oniguruma-parser":"0.12.2","oniguruma-to-es":"4.3.6","openai":"6.26.0","p-retry":"4.6.2","parseurl":"1.3.3","partial-json":"0.1.7","path-key":"3.1.1","path-to-regexp":"8.4.2","picocolors":"1.1.1","picomatch":"4.0.5","pkce-challenge":"5.0.1","property-information":"7.2.0","protobufjs":"7.6.5","proxy-addr":"2.0.7","qs":"6.15.3","range-parser":"1.3.0","raw-body":"3.0.2","react":"18.3.1","react-dom":"18.3.1","readdirp":"4.1.2","regex":"6.1.0","regex-recursion":"6.0.2","regex-utilities":"2.3.0","require-from-string":"2.0.2","retry":"0.13.1","router":"2.2.0","safe-buffer":"5.2.1","safer-buffer":"2.1.2","scheduler":"0.23.2","semver":"7.8.5","send":"1.2.1","serve-static":"2.2.1","setprototypeof":"1.2.0","sharp":"0.35.3","shebang-command":"2.0.0","shebang-regex":"3.0.0","shiki":"4.4.3","side-channel":"1.1.1","side-channel-list":"1.0.1","side-channel-map":"1.0.1","side-channel-weakmap":"1.0.2","space-separated-tokens":"2.0.2","statuses":"2.0.2","stringify-entities":"4.0.4","toidentifier":"1.0.1","trim-lines":"3.0.1","ts-algebra":"2.0.0","tslib":"2.8.1","turndown":"7.2.4","type-is":"2.1.0","typebox":"1.3.7","undici-types":"8.3.0","unist-util-is":"6.0.1","unist-util-position":"5.0.0","unist-util-remove-position":"5.0.0","unist-util-stringify-position":"4.0.0","unist-util-visit":"5.1.0","unist-util-visit-parents":"6.0.2","unpipe":"1.0.0","use-sync-external-store":"1.2.0","vary":"1.1.2","vfile":"6.0.3","vfile-message":"4.0.3","web-streams-polyfill":"3.3.3","which":"2.0.2","wrappy":"1.0.2","ws":"8.21.3","yaml":"2.9.0","zod":"4.4.3","zod-to-json-schema":"3.25.2","zustand":"4.4.7","zwitch":"2.0.4"},"optionalDependencies":{"@img/sharp-darwin-arm64":"0.35.3","@img/sharp-darwin-x64":"0.35.3","@img/sharp-libvips-darwin-arm64":"1.3.2","@img/sharp-libvips-darwin-x64":"1.3.2","@img/sharp-win32-x64":"0.35.3","@koromix/koffi-darwin-arm64":"3.1.5","@koromix/koffi-darwin-x64":"3.1.5","@koromix/koffi-win32-x64":"3.1.5","@napi-rs/xattr-darwin-arm64":"1.0.3","@napi-rs/xattr-darwin-x64":"1.0.3","@parcel/watcher-darwin-arm64":"2.6.0","@parcel/watcher-darwin-x64":"2.6.0","@parcel/watcher-win32-x64":"2.6.0","@vscode/ripgrep-darwin-arm64":"1.18.0","@vscode/ripgrep-darwin-x64":"1.18.0","@vscode/ripgrep-win32-x64":"1.18.0","node-addon-require-builtin-darwin-arm64":"0.1.5","node-addon-require-builtin-darwin-x64":"0.1.5","node-addon-require-builtin-win32-x64-msvc":"0.1.5"},"bundleDependencies":true}
|
|
1
|
+
{"name":"@qqbrowser/qbot-dsh","version":"0.0.13","publishConfig":{"access":"public"},"type":"module","bin":{"qbot-dsh":"lib/bin.js"},"license":"MIT","engines":{"node":"^22.19.0 || >=24.0.0"},"os":["darwin","win32"],"cpu":["arm64","x64"],"dshRelease":{"targets":["darwin-arm64","darwin-x64","win32-x64"]},"dependencies":{"@anthropic-ai/sdk":"0.91.1","@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-crypto/supports-web-crypto":"5.2.0","@aws-crypto/util":"5.2.0","@aws-sdk/client-bedrock-runtime":"3.1048.0","@aws-sdk/core":"3.977.8","@aws-sdk/credential-provider-env":"3.972.69","@aws-sdk/credential-provider-http":"3.972.71","@aws-sdk/credential-provider-ini":"3.973.14","@aws-sdk/credential-provider-login":"3.972.76","@aws-sdk/credential-provider-node":"3.972.80","@aws-sdk/credential-provider-process":"3.972.69","@aws-sdk/credential-provider-sso":"3.973.13","@aws-sdk/credential-provider-web-identity":"3.972.75","@aws-sdk/eventstream-handler-node":"3.972.33","@aws-sdk/middleware-eventstream":"3.972.28","@aws-sdk/middleware-websocket":"3.972.51","@aws-sdk/nested-clients":"3.997.43","@aws-sdk/signature-v4-multi-region":"3.996.45","@aws-sdk/token-providers":"3.1048.0","@aws-sdk/types":"3.974.4","@aws-sdk/util-locate-window":"3.965.10","@aws-sdk/xml-builder":"3.972.39","@aws/lambda-invoke-store":"0.3.0","@babel/code-frame":"7.29.7","@babel/helper-validator-identifier":"7.29.7","@babel/runtime":"7.29.7","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/cordis-plugin-group":"1.0.1","@deepseek-ai/cordis-plugin-hmr":"1.0.16","@deepseek-ai/cordis-plugin-include":"1.0.6","@deepseek-ai/cordis-plugin-loader":"1.0.2","@deepseek-ai/cordis-plugin-timer":"1.1.3","@deepseek-ai/cosmokit":"1.8.2","@deepseek-ai/dsh-agent":"0.0.13","@deepseek-ai/dsh-agent-default-model":"0.0.13","@deepseek-ai/dsh-agent-instructions":"0.0.13","@deepseek-ai/dsh-agent-loop":"0.0.13","@deepseek-ai/dsh-agent-presets":"0.0.13","@deepseek-ai/dsh-agent-tool-presentation":"0.0.13","@deepseek-ai/dsh-anonymous-user-id":"0.0.13","@deepseek-ai/dsh-api-gateway":"0.0.13","@deepseek-ai/dsh-api-remotes":"0.0.13","@deepseek-ai/dsh-app-boot":"0.0.13","@deepseek-ai/dsh-atomic-write":"0.0.13","@deepseek-ai/dsh-attachment":"0.0.13","@deepseek-ai/dsh-attachment-local":"0.0.13","@deepseek-ai/dsh-base":"0.0.13","@deepseek-ai/dsh-bash-local":"0.0.13","@deepseek-ai/dsh-bash-sandbox":"0.0.13","@deepseek-ai/dsh-brand":"0.0.13","@deepseek-ai/dsh-client-connection":"0.0.13","@deepseek-ai/dsh-client-hmr":"0.0.13","@deepseek-ai/dsh-client-locale":"0.0.13","@deepseek-ai/dsh-client-modules":"0.0.13","@deepseek-ai/dsh-client-runtime":"0.0.13","@deepseek-ai/dsh-client-schema-form":"0.0.13","@deepseek-ai/dsh-client-ui-agent-preset":"0.0.13","@deepseek-ai/dsh-client-ui-attachment":"0.0.13","@deepseek-ai/dsh-client-ui-commands":"0.0.13","@deepseek-ai/dsh-client-ui-conversation":"0.0.13","@deepseek-ai/dsh-client-ui-cordis":"0.0.13","@deepseek-ai/dsh-client-ui-deliverables":"0.0.13","@deepseek-ai/dsh-client-ui-directory-picker-browse":"0.0.13","@deepseek-ai/dsh-client-ui-directory-picker-native":"0.0.13","@deepseek-ai/dsh-client-ui-goal":"0.0.13","@deepseek-ai/dsh-client-ui-input-trigger":"0.0.13","@deepseek-ai/dsh-client-ui-jobs":"0.0.13","@deepseek-ai/dsh-client-ui-layout":"0.0.13","@deepseek-ai/dsh-client-ui-message-feedback":"0.0.13","@deepseek-ai/dsh-client-ui-model-selection":"0.0.13","@deepseek-ai/dsh-client-ui-permission-presets":"0.0.13","@deepseek-ai/dsh-client-ui-plan":"0.0.13","@deepseek-ai/dsh-client-ui-primitives":"0.0.13","@deepseek-ai/dsh-client-ui-settings":"0.0.13","@deepseek-ai/dsh-client-ui-settings-general":"0.0.13","@deepseek-ai/dsh-client-ui-settings-models":"0.0.13","@deepseek-ai/dsh-client-ui-settings-plugin-inventory":"0.0.13","@deepseek-ai/dsh-client-ui-settings-plugins":"0.0.13","@deepseek-ai/dsh-client-ui-sidebar":"0.0.13","@deepseek-ai/dsh-client-ui-skill":"0.0.13","@deepseek-ai/dsh-client-ui-slots":"0.0.13","@deepseek-ai/dsh-client-ui-subagent":"0.0.13","@deepseek-ai/dsh-client-ui-theme":"0.0.13","@deepseek-ai/dsh-client-ui-tool":"0.0.13","@deepseek-ai/dsh-client-ui-trajectory":"0.0.13","@deepseek-ai/dsh-client-ui-user-questions":"0.0.13","@deepseek-ai/dsh-client-ui-workflow-run":"0.0.13","@deepseek-ai/dsh-client-ui-workspace":"0.0.13","@deepseek-ai/dsh-client-web":"0.0.13","@deepseek-ai/dsh-client-web-react":"0.0.13","@deepseek-ai/dsh-cmdline":"0.0.13","@deepseek-ai/dsh-code-runtime":"0.0.13","@deepseek-ai/dsh-code-runtime-worker-thread":"0.0.13","@deepseek-ai/dsh-command-compact":"0.0.13","@deepseek-ai/dsh-command-feedback":"0.0.13","@deepseek-ai/dsh-command-goal":"0.0.13","@deepseek-ai/dsh-commands":"0.0.13","@deepseek-ai/dsh-compaction":"0.0.13","@deepseek-ai/dsh-compaction-basic":"0.0.13","@deepseek-ai/dsh-compaction-tool-result-pruner":"0.0.13","@deepseek-ai/dsh-content-review":"0.0.13","@deepseek-ai/dsh-cordis-client-runner":"0.0.13","@deepseek-ai/dsh-cordis-host-runner":"0.0.13","@deepseek-ai/dsh-credentials":"0.0.13","@deepseek-ai/dsh-credentials-local":"0.0.13","@deepseek-ai/dsh-fs":"0.0.13","@deepseek-ai/dsh-fs-local":"0.0.13","@deepseek-ai/dsh-fs-observation-policy":"0.0.13","@deepseek-ai/dsh-fs-sandbox":"0.0.13","@deepseek-ai/dsh-goal":"0.0.13","@deepseek-ai/dsh-goal-round-driver":"0.0.13","@deepseek-ai/dsh-headless":"0.0.13","@deepseek-ai/dsh-home-paths":"0.0.13","@deepseek-ai/dsh-home-quarantine-macos":"0.0.13","@deepseek-ai/dsh-host-apiproxy":"0.0.13","@deepseek-ai/dsh-host-directory-picker":"0.0.13","@deepseek-ai/dsh-host-directory-picker-auto":"0.0.13","@deepseek-ai/dsh-host-directory-picker-browse":"0.0.13","@deepseek-ai/dsh-host-directory-picker-native":"0.0.13","@deepseek-ai/dsh-host-frontend-static":"0.0.13","@deepseek-ai/dsh-host-plugin-inventory":"0.0.13","@deepseek-ai/dsh-host-webserver":"0.0.13","@deepseek-ai/dsh-invariants":"0.0.13","@deepseek-ai/dsh-jobs":"0.0.13","@deepseek-ai/dsh-jobs-local":"0.0.13","@deepseek-ai/dsh-launch-environment":"0.0.13","@deepseek-ai/dsh-llm":"0.0.13","@deepseek-ai/dsh-llm-deepseek":"0.0.13","@deepseek-ai/dsh-llm-gateway-openai":"0.0.13","@deepseek-ai/dsh-llm-pi-ai":"0.0.13","@deepseek-ai/dsh-llm-retry":"0.0.13","@deepseek-ai/dsh-mcp-client":"0.0.13","@deepseek-ai/dsh-message-feedback":"0.0.13","@deepseek-ai/dsh-native-command":"0.0.13","@deepseek-ai/dsh-output-retention":"0.0.13","@deepseek-ai/dsh-permission-presets":"0.0.13","@deepseek-ai/dsh-persona":"0.0.13","@deepseek-ai/dsh-plan-mode":"0.0.13","@deepseek-ai/dsh-pwsh-local":"0.0.13","@deepseek-ai/dsh-pwsh-sandbox":"0.0.13","@deepseek-ai/dsh-qb-auth":"0.0.13","@deepseek-ai/dsh-repeat-tool-reminder":"0.0.13","@deepseek-ai/dsh-sandbox":"0.0.13","@deepseek-ai/dsh-sandbox-local":"0.0.13","@deepseek-ai/dsh-sandbox-policy":"0.0.13","@deepseek-ai/dsh-sandbox-windows-acl":"0.0.13","@deepseek-ai/dsh-schedule":"0.0.13","@deepseek-ai/dsh-scope":"0.0.13","@deepseek-ai/dsh-session":"0.0.13","@deepseek-ai/dsh-session-checkpoint-policy":"0.0.13","@deepseek-ai/dsh-session-log-export":"0.0.13","@deepseek-ai/dsh-session-persistence":"0.0.13","@deepseek-ai/dsh-session-persistence-jsonl":"0.0.13","@deepseek-ai/dsh-session-projection":"0.0.13","@deepseek-ai/dsh-session-projection-cache":"0.0.13","@deepseek-ai/dsh-session-query":"0.0.13","@deepseek-ai/dsh-session-query-sqlite":"0.0.13","@deepseek-ai/dsh-session-reference":"0.0.13","@deepseek-ai/dsh-session-stats":"0.0.13","@deepseek-ai/dsh-session-telemetry":"0.0.13","@deepseek-ai/dsh-session-telemetry-otel":"0.0.13","@deepseek-ai/dsh-session-title":"0.0.13","@deepseek-ai/dsh-session-title-first-prompt-llm":"0.0.13","@deepseek-ai/dsh-session-title-llm":"0.0.13","@deepseek-ai/dsh-settings":"0.0.13","@deepseek-ai/dsh-settings-file":"0.0.13","@deepseek-ai/dsh-shell":"0.0.13","@deepseek-ai/dsh-shell-env":"0.0.13","@deepseek-ai/dsh-skill":"0.0.13","@deepseek-ai/dsh-skill-badge":"0.0.13","@deepseek-ai/dsh-skill-filesystem":"0.0.13","@deepseek-ai/dsh-spill":"0.0.13","@deepseek-ai/dsh-spill-local":"0.0.13","@deepseek-ai/dsh-spill-policy":"0.0.13","@deepseek-ai/dsh-storage":"0.0.13","@deepseek-ai/dsh-storage-domain":"0.0.13","@deepseek-ai/dsh-storage-json":"0.0.13","@deepseek-ai/dsh-subagent":"0.0.13","@deepseek-ai/dsh-subagent-fork-in-process":"0.0.13","@deepseek-ai/dsh-subagent-in-process-driver":"0.0.13","@deepseek-ai/dsh-subagent-spawn-in-process":"0.0.13","@deepseek-ai/dsh-subprocess":"0.0.13","@deepseek-ai/dsh-subprocess-local":"0.0.13","@deepseek-ai/dsh-system-prompt":"0.0.13","@deepseek-ai/dsh-terminal":"0.0.13","@deepseek-ai/dsh-terminal-bash":"0.0.13","@deepseek-ai/dsh-time-context":"0.0.13","@deepseek-ai/dsh-timeout":"0.0.13","@deepseek-ai/dsh-tmux-context":"0.0.13","@deepseek-ai/dsh-token-meter":"0.0.13","@deepseek-ai/dsh-tool-ask-user":"0.0.13","@deepseek-ai/dsh-tool-bash":"0.0.13","@deepseek-ai/dsh-tool-bash-persistent":"0.0.13","@deepseek-ai/dsh-tool-call-timeout-policy":"0.0.13","@deepseek-ai/dsh-tool-cordis":"0.0.13","@deepseek-ai/dsh-tool-fs":"0.0.13","@deepseek-ai/dsh-tool-fs-search":"0.0.13","@deepseek-ai/dsh-tool-goal":"0.0.13","@deepseek-ai/dsh-tool-jobs":"0.0.13","@deepseek-ai/dsh-tool-pwsh":"0.0.13","@deepseek-ai/dsh-tool-ralph":"0.0.13","@deepseek-ai/dsh-tool-skill":"0.0.13","@deepseek-ai/dsh-tool-str-replace-editor":"0.0.13","@deepseek-ai/dsh-tool-subagent":"0.0.13","@deepseek-ai/dsh-tool-subagent-control":"0.0.13","@deepseek-ai/dsh-tool-subagent-report":"0.0.13","@deepseek-ai/dsh-tool-todo":"0.0.13","@deepseek-ai/dsh-tool-web":"0.0.13","@deepseek-ai/dsh-tool-workflow":"0.0.13","@deepseek-ai/dsh-tools":"0.0.13","@deepseek-ai/dsh-typert-loader":"0.0.13","@deepseek-ai/dsh-typert-protocol":"0.0.13","@deepseek-ai/dsh-typert-registry":"0.0.13","@deepseek-ai/dsh-user-approval":"0.0.13","@deepseek-ai/dsh-user-questions":"0.0.13","@deepseek-ai/dsh-web":"0.0.13","@deepseek-ai/dsh-web-app":"0.0.13","@deepseek-ai/dsh-web-frontend":"0.0.13","@deepseek-ai/dsh-web-search-deepseek":"0.0.13","@deepseek-ai/dsh-web-search-dsh":"0.0.13","@deepseek-ai/dsh-workflow":"0.0.13","@deepseek-ai/dsh-workflow-worker-thread":"0.0.13","@deepseek-ai/dsh-workspace":"0.0.13","@deepseek-ai/node-addon-landlock-run":"0.1.1","@deepseek-ai/schemastery":"3.18.1","@earendil-works/pi-ai":"0.83.0","@google/genai":"1.52.0","@hono/node-server":"2.1.1","@img/colour":"1.1.0","@joplin/turndown-plugin-gfm":"1.0.67","@mistralai/mistralai":"2.2.6","@mixmark-io/domino":"2.2.0","@modelcontextprotocol/sdk":"1.30.0","@napi-rs/xattr":"1.0.3","@opentelemetry/api":"1.9.1","@opentelemetry/api-logs":"0.220.0","@opentelemetry/core":"2.9.0","@opentelemetry/exporter-logs-otlp-http":"0.220.0","@opentelemetry/otlp-exporter-base":"0.220.0","@opentelemetry/otlp-transformer":"0.220.0","@opentelemetry/resources":"2.9.0","@opentelemetry/sdk-logs":"0.220.0","@opentelemetry/sdk-metrics":"2.9.0","@opentelemetry/sdk-trace":"2.9.0","@opentelemetry/semantic-conventions":"1.43.0","@parcel/watcher":"2.6.0","@protobufjs/aspromise":"1.1.2","@protobufjs/base64":"1.1.2","@protobufjs/codegen":"2.0.5","@protobufjs/eventemitter":"1.1.1","@protobufjs/fetch":"1.1.1","@protobufjs/float":"1.0.2","@protobufjs/path":"1.1.2","@protobufjs/pool":"1.1.0","@protobufjs/utf8":"1.1.2","@shikijs/core":"4.4.3","@shikijs/engine-javascript":"4.4.3","@shikijs/engine-oniguruma":"4.4.3","@shikijs/langs":"4.4.3","@shikijs/primitive":"4.4.3","@shikijs/themes":"4.4.3","@shikijs/types":"4.4.3","@shikijs/vscode-textmate":"10.0.2","@smithy/core":"3.33.2","@smithy/credential-provider-imds":"4.5.2","@smithy/fetch-http-handler":"5.7.2","@smithy/is-array-buffer":"2.2.0","@smithy/node-http-handler":"4.7.3","@smithy/signature-v4":"5.7.2","@smithy/types":"4.17.2","@smithy/util-buffer-from":"2.2.0","@smithy/util-utf8":"2.3.0","@standard-schema/spec":"1.1.0","@tanstack/react-virtual":"3.14.9","@tanstack/virtual-core":"3.17.7","@tencent/qb-auth-send-h5":"2.7.0","@types/debug":"4.1.13","@types/hast":"3.0.5","@types/katex":"0.16.8","@types/mdast":"4.0.4","@types/ms":"2.1.0","@types/node":"26.2.0","@types/retry":"0.12.0","@types/unist":"3.0.3","@ungap/structured-clone":"1.3.3","@vscode/ripgrep":"1.18.0","accepts":"2.0.0","agent-base":"7.1.4","ajv":"8.20.0","ajv-formats":"3.0.1","anser":"2.3.5","argparse":"2.0.1","base64-js":"1.5.1","bignumber.js":"9.3.1","body-parser":"2.3.0","bowser":"2.14.1","buffer-equal-constant-time":"1.0.1","bytes":"3.1.2","call-bind-apply-helpers":"1.0.2","call-bound":"1.0.4","ccount":"2.0.1","character-entities":"2.0.2","character-entities-html4":"2.1.0","character-entities-legacy":"3.0.0","chokidar":"4.0.3","clsx":"2.1.1","comma-separated-tokens":"2.0.3","commander":"15.0.0","content-disposition":"1.1.0","content-type":"1.0.5","cookie":"0.7.2","cookie-signature":"1.2.2","cors":"2.8.6","cross-spawn":"7.0.6","data-uri-to-buffer":"4.0.1","debug":"4.4.3","decode-named-character-reference":"1.3.0","depd":"2.0.0","dequal":"2.0.3","detect-libc":"2.1.2","devlop":"1.1.0","diff":"9.0.0","dunder-proto":"1.0.1","ecdsa-sig-formatter":"1.0.11","ee-first":"1.1.1","encodeurl":"2.0.0","es-define-property":"1.0.1","es-errors":"1.3.0","es-object-atoms":"1.1.2","escape-html":"1.0.3","escape-string-regexp":"5.0.0","etag":"1.8.1","eventsource":"3.0.7","eventsource-parser":"3.1.1","express":"5.2.1","express-rate-limit":"8.6.2","extend":"3.0.2","fast-deep-equal":"3.1.3","fast-uri":"3.1.5","fetch-blob":"3.2.0","fflate":"0.8.3","finalhandler":"2.1.1","formdata-polyfill":"4.0.10","forwarded":"0.2.0","fresh":"2.0.0","function-bind":"1.1.2","gaxios":"7.3.1","gcp-metadata":"8.1.2","get-intrinsic":"1.3.0","get-proto":"1.0.1","google-auth-library":"10.9.1","google-logging-utils":"1.1.3","gopd":"1.2.0","has-symbols":"1.1.0","hasown":"2.0.4","hast-util-to-html":"9.0.5","hast-util-whitespace":"3.0.0","hono":"4.13.2","html-void-elements":"3.0.0","http-errors":"2.0.1","http-proxy-agent":"7.0.2","https-proxy-agent":"7.0.6","iconv-lite":"0.7.3","immer":"10.2.0","inherits":"2.0.4","ip-address":"10.5.0","ipaddr.js":"1.9.1","is-extglob":"2.1.1","is-glob":"4.0.3","is-promise":"4.0.0","isexe":"2.0.0","jose":"6.2.9","js-tokens":"4.0.0","js-yaml":"4.3.1","json-bigint":"1.0.0","json-schema-to-ts":"3.1.1","json-schema-traverse":"1.0.0","json-schema-typed":"8.0.2","jwa":"2.0.1","jws":"4.0.1","katex":"0.16.47","koffi":"3.1.5","long":"5.3.2","longest-streak":"3.1.0","loose-envify":"1.4.0","markdown-table":"3.0.4","math-intrinsics":"1.1.0","mdast-util-find-and-replace":"3.0.2","mdast-util-from-markdown":"2.0.3","mdast-util-gfm":"3.1.0","mdast-util-gfm-autolink-literal":"2.0.1","mdast-util-gfm-footnote":"2.1.0","mdast-util-gfm-strikethrough":"2.0.0","mdast-util-gfm-table":"2.0.0","mdast-util-gfm-task-list-item":"2.0.0","mdast-util-math":"3.0.0","mdast-util-phrasing":"4.1.0","mdast-util-to-hast":"13.2.1","mdast-util-to-markdown":"2.1.2","mdast-util-to-string":"4.0.0","media-typer":"1.1.1","merge-descriptors":"2.0.0","micromark":"4.0.2","micromark-core-commonmark":"2.0.3","micromark-extension-gfm":"3.0.0","micromark-extension-gfm-autolink-literal":"2.1.0","micromark-extension-gfm-footnote":"2.1.0","micromark-extension-gfm-strikethrough":"2.1.0","micromark-extension-gfm-table":"2.1.1","micromark-extension-gfm-tagfilter":"2.0.0","micromark-extension-gfm-task-list-item":"2.1.0","micromark-extension-math":"3.1.0","micromark-factory-destination":"2.0.1","micromark-factory-label":"2.0.1","micromark-factory-space":"2.0.1","micromark-factory-title":"2.0.1","micromark-factory-whitespace":"2.0.1","micromark-util-character":"2.1.1","micromark-util-chunked":"2.0.1","micromark-util-classify-character":"2.0.1","micromark-util-combine-extensions":"2.0.1","micromark-util-decode-numeric-character-reference":"2.0.2","micromark-util-decode-string":"2.0.1","micromark-util-encode":"2.0.1","micromark-util-html-tag-name":"2.0.1","micromark-util-normalize-identifier":"2.0.1","micromark-util-resolve-all":"2.0.1","micromark-util-sanitize-uri":"2.0.1","micromark-util-subtokenize":"2.1.0","micromark-util-symbol":"2.0.1","micromark-util-types":"2.0.2","mime-db":"1.54.0","mime-types":"3.0.2","ms":"2.1.3","negotiator":"1.0.0","node-addon-api":"7.1.1","node-addon-native-custom-loader":"0.1.5","node-addon-require-builtin":"0.1.5","node-domexception":"1.0.0","node-fetch":"3.3.2","node-pty":"1.1.0","object-assign":"4.1.1","object-inspect":"1.13.4","on-finished":"2.4.1","once":"1.4.0","oniguruma-parser":"0.12.2","oniguruma-to-es":"4.3.6","openai":"6.26.0","p-retry":"4.6.2","parseurl":"1.3.3","partial-json":"0.1.7","path-key":"3.1.1","path-to-regexp":"8.4.2","picocolors":"1.1.1","picomatch":"4.0.5","pkce-challenge":"5.0.1","property-information":"7.2.0","protobufjs":"7.6.5","proxy-addr":"2.0.7","qs":"6.15.3","range-parser":"1.3.0","raw-body":"3.0.2","react":"18.3.1","react-dom":"18.3.1","readdirp":"4.1.2","regex":"6.1.0","regex-recursion":"6.0.2","regex-utilities":"2.3.0","require-from-string":"2.0.2","retry":"0.13.1","router":"2.2.0","safe-buffer":"5.2.1","safer-buffer":"2.1.2","scheduler":"0.23.2","semver":"7.8.5","send":"1.2.1","serve-static":"2.2.1","setprototypeof":"1.2.0","sharp":"0.35.3","shebang-command":"2.0.0","shebang-regex":"3.0.0","shiki":"4.4.3","side-channel":"1.1.1","side-channel-list":"1.0.1","side-channel-map":"1.0.1","side-channel-weakmap":"1.0.2","space-separated-tokens":"2.0.2","statuses":"2.0.2","stringify-entities":"4.0.4","toidentifier":"1.0.1","trim-lines":"3.0.1","ts-algebra":"2.0.0","tslib":"2.8.1","turndown":"7.2.4","type-is":"2.1.0","typebox":"1.3.7","undici-types":"8.3.0","unist-util-is":"6.0.1","unist-util-position":"5.0.0","unist-util-remove-position":"5.0.0","unist-util-stringify-position":"4.0.0","unist-util-visit":"5.1.0","unist-util-visit-parents":"6.0.2","unpipe":"1.0.0","use-sync-external-store":"1.2.0","vary":"1.1.2","vfile":"6.0.3","vfile-message":"4.0.3","web-streams-polyfill":"3.3.3","which":"2.0.2","wrappy":"1.0.2","ws":"8.21.3","yaml":"2.9.0","zod":"4.4.3","zod-to-json-schema":"3.25.2","zustand":"4.4.7","zwitch":"2.0.4"},"optionalDependencies":{"@img/sharp-darwin-arm64":"0.35.3","@img/sharp-darwin-x64":"0.35.3","@img/sharp-libvips-darwin-arm64":"1.3.2","@img/sharp-libvips-darwin-x64":"1.3.2","@img/sharp-win32-x64":"0.35.3","@koromix/koffi-darwin-arm64":"3.1.5","@koromix/koffi-darwin-x64":"3.1.5","@koromix/koffi-win32-x64":"3.1.5","@napi-rs/xattr-darwin-arm64":"1.0.3","@napi-rs/xattr-darwin-x64":"1.0.3","@parcel/watcher-darwin-arm64":"2.6.0","@parcel/watcher-darwin-x64":"2.6.0","@parcel/watcher-win32-x64":"2.6.0","@vscode/ripgrep-darwin-arm64":"1.18.0","@vscode/ripgrep-darwin-x64":"1.18.0","@vscode/ripgrep-win32-x64":"1.18.0","node-addon-require-builtin-darwin-arm64":"0.1.5","node-addon-require-builtin-darwin-x64":"0.1.5","node-addon-require-builtin-win32-x64-msvc":"0.1.5"},"bundleDependencies":true}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o}from"./profile-boot-B71dQloK.js";export{o as runProfile};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var fe=Object.defineProperty;var c=(e,t)=>fe(e,"name",{value:t,configurable:!0});import{existsSync as J,mkdirSync as he,realpathSync as z,statSync as q}from"node:fs";import{dirname as we,isAbsolute as Se,join as me,relative as ge,resolve as Pe,sep as Ie}from"node:path";import{createHash as $}from"node:crypto";import f from"koffi";var b=class extends Error{static{c(this,"Win32Error")}api;win32Code;constructor(e,t,r){super(`${e} failed (Win32 ${t})${r===void 0?"":`: ${r}`}`),this.name="Win32Error",this.api=e,this.win32Code=t}};const M=3221225472,pe=1114454,ke=2032127,Ee=1024,We=8192;function m(e){return e==null||e===0n}c(m,"isNullPtr");function be(e){return m(e)?!0:e===18446744073709551615n||e===-1n}c(be,"isInvalidHandle");const s=f.pointer("void"),P=f.pointer(s),A=f.struct("STARTUPINFOW",{cb:"uint32",lpReserved:"str16",lpDesktop:"str16",lpTitle:"str16",dwX:"uint32",dwY:"uint32",dwXSize:"uint32",dwYSize:"uint32",dwXCountChars:"uint32",dwYCountChars:"uint32",dwFillAttribute:"uint32",dwFlags:"uint32",wShowWindow:"uint16",cbReserved2:"uint16",lpReserved2:f.pointer("uint8"),hStdInput:s,hStdOutput:s,hStdError:s}),L=f.struct("PROCESS_INFORMATION",{hProcess:s,hThread:s,dwProcessId:"uint32",dwThreadId:"uint32"});if(A.size!==104)throw new Error(`STARTUPINFOW layout mismatch: koffi computed ${A.size}, header probe says 104`);if(L.size!==24)throw new Error(`PROCESS_INFORMATION layout mismatch: koffi computed ${L.size}, header probe says 24`);function g(){return f.alloc(s,1)}c(g,"allocPtrSlot");function E(){return f.alloc("uint32",1)}c(E,"allocUint32");function ve(e,t){f.encode(e,"uint32",t)}c(ve,"encodeUint32");function p(e){const t=f.decode(e,s);return m(t)?null:t}c(p,"decodePtr");function D(e){return f.decode(e,"uint32")}c(D,"decodeUint32");function K(e){return f.address(e)}c(K,"ptrAddress");function F(e){return f.alloc("uint8",e)}c(F,"allocBytes");function Te(){return F(32)}c(Te,"allocOverlapped");function V(e,t){const r=f.decode(e,t,s);return m(r)?null:r}c(V,"decodePtrAt");function W(e,t){return f.decode(e,t,"uint8")}c(W,"decodeUint8At");function x(e,t){return f.decode(e,t,"uint16")}c(x,"decodeUint16At");function R(e,t){return f.decode(e,t,"uint32")}c(R,"decodeUint32At");function Ce(e,t,r,n){if(W(e,t)!==W(r,n))return!1;const o=W(e,t+1);if(o!==W(r,n+1)||o>15)return!1;for(let i=0;i<6;i++)if(W(e,t+2+i)!==W(r,n+2+i))return!1;for(let i=0;i<o;i++)if(R(e,t+8+i*4)!==R(r,n+8+i*4))return!1;return!0}c(Ce,"sameSidAt");function Y(){return f.alloc(A,1)}c(Y,"allocStartupInfo");function X(e,t){f.encode(e,A,t)}c(X,"encodeStartupInfo");function Q(){return f.alloc(L,1)}c(Q,"allocProcessInfo");function Z(e){return f.decode(e,L)}c(Z,"decodeProcessInfo");let H;function ee(){if(H!==void 0)return H;const e=f.load("kernel32.dll"),t=f.load("advapi32.dll"),r=c((n,o,i,l)=>n.func("__stdcall",o,i,l),"bind");return H={openProcess:r(e,"OpenProcess",s,["uint32","int","uint32"]),openProcessToken:r(t,"OpenProcessToken","int",[s,"uint32",P]),closeHandle:r(e,"CloseHandle","int",[s]),getLastError:r(e,"GetLastError","uint32",[]),formatMessageW:r(e,"FormatMessageW","uint32",["uint32",s,"uint32","uint32",s,"uint32",s]),localAlloc:r(e,"LocalAlloc",s,["uint32","size_t"]),localFree:r(e,"LocalFree",s,[s]),convertStringSidToSidW:r(t,"ConvertStringSidToSidW","int",["str16",P]),createWellKnownSid:r(t,"CreateWellKnownSid","int",["int",s,s,f.pointer("uint32")]),isValidSid:r(t,"IsValidSid","int",[s]),getLengthSid:r(t,"GetLengthSid","uint32",[s]),copySid:r(t,"CopySid","int",["uint32",s,s]),getTokenInformation:r(t,"GetTokenInformation","int",[s,"int",s,"uint32",f.pointer("uint32")]),setTokenInformation:r(t,"SetTokenInformation","int",[s,"int",s,"uint32"]),createRestrictedToken:r(t,"CreateRestrictedToken","int",[s,"uint32","uint32",s,"uint32",s,"uint32",s,P]),setEntriesInAclW:r(t,"SetEntriesInAclW","uint32",["uint32",s,s,P]),setNamedSecurityInfoW:r(t,"SetNamedSecurityInfoW","uint32",["str16","int","uint32",s,s,s,s]),getNamedSecurityInfoW:r(t,"GetNamedSecurityInfoW","uint32",["str16","int","uint32",P,P,P,P,P]),getTempPathW:r(e,"GetTempPathW","uint32",["uint32",s]),createFileW:r(e,"CreateFileW",s,["str16","uint32","uint32",s,"uint32","uint32",s]),lockFileEx:r(e,"LockFileEx","int",[s,"uint32","uint32","uint32","uint32",s]),unlockFileEx:r(e,"UnlockFileEx","int",[s,"uint32","uint32","uint32",s]),createPipe:r(e,"CreatePipe","int",[P,P,s,"uint32"]),setHandleInformation:r(e,"SetHandleInformation","int",[s,"uint32","uint32"]),createProcessAsUserW:r(t,"CreateProcessAsUserW","int",[s,"str16","str16",s,s,"int","uint32",s,"str16",f.pointer(A),f.pointer(L)]),setEnvironmentVariableW:r(e,"SetEnvironmentVariableW","int",["str16","str16"]),readFile:r(e,"ReadFile","int",[s,s,"uint32",f.pointer("uint32"),s]),peekNamedPipe:r(e,"PeekNamedPipe","int",[s,s,"uint32",f.pointer("uint32"),f.pointer("uint32"),f.pointer("uint32")]),waitForSingleObject:r(e,"WaitForSingleObject","uint32",[s,"uint32"]),getExitCodeProcess:r(e,"GetExitCodeProcess","int",[s,f.pointer("uint32")]),resumeThread:r(e,"ResumeThread","uint32",[s]),createJobObjectW:r(e,"CreateJobObjectW",s,[s,"str16"]),setInformationJobObject:r(e,"SetInformationJobObject","int",[s,"int",s,"uint32"]),assignProcessToJobObject:r(e,"AssignProcessToJobObject","int",[s,s]),terminateProcess:r(e,"TerminateProcess","int",[s,"uint32"]),setConsoleCtrlHandler:r(e,"SetConsoleCtrlHandler","int",[s,"int"]),getStdHandle:r(e,"GetStdHandle",s,["int"])},H}c(ee,"bindings");function te(){return Promise.resolve(ee())}c(te,"win32");function Ae(){return ee()}c(Ae,"win32Sync");function re(e,t){const r=Buffer.alloc(1024),n=e.formatMessageW(4608,null,t,0,r,r.length/2,null);return n===0?"":r.subarray(0,n*2).toString("utf16le").trim()}c(re,"errorText");function Le(e){const t=Buffer.alloc(522),r=e.getTempPathW(t.length/2,t);if(r===0&&a(e,"GetTempPathW"),r>t.length/2)throw new b("GetTempPathW",122,`required ${r} chars exceed the ${t.length/2}-char buffer; nothing was written`);return t.subarray(0,r*2).toString("utf16le")}c(Le,"getTempPath");function a(e,t,r){const n=e.getLastError();throw new b(t,n,r??re(e,n))}c(a,"throwLastError");function S(e,t,r,n){throw new b(t,r,n??re(e,r))}c(S,"throwWin32");function U(e,t,r){const n=Buffer.alloc(48);return n.writeUInt32LE(r,0),n.writeUInt32LE(t,4),n.writeUInt32LE(3,8),n.writeUInt32LE(0,24),n.writeUInt32LE(0,28),n.writeUInt32LE(0,32),n.writeBigUInt64LE(K(e),40),n}c(U,"buildExplicitAccess");function De(e,t){const r=$("sha256").update(t.toLowerCase()).digest("hex").slice(0,16);return me(Le(e),"dsh-acl-locks",`${r}.lock`)}c(De,"lockFilePath");function ne(e,t,r){const n=De(e,t);he(we(n),{recursive:!0});const o=e.createFileW(n,-1073741824,3,null,4,0,null);be(o)&&a(e,"CreateFileW",n);const i=Te();if(e.lockFileEx(o,2,0,1,0,i)===0){const d=e.getLastError();e.closeHandle(o),S(e,"LockFileEx",d,n)}let l;try{l=r()}catch(d){throw e.unlockFileEx(o,0,1,0,i),e.closeHandle(o),d}if(e.unlockFileEx(o,0,1,0,i)===0){const d=e.getLastError();e.closeHandle(o),S(e,"UnlockFileEx",d,n)}return e.closeHandle(o)===0&&a(e,"CloseHandle",`lock file ${n}`),l}c(ne,"withPathLock");function oe(e,t){const r=g(),n=g(),o=g(),i=g(),l=g(),d=e.getNamedSecurityInfoW(t,1,4,r,n,o,i,l);return d!==0&&S(e,"GetNamedSecurityInfoW",d,t),{oldAcl:p(o),descriptor:p(l)}}c(oe,"readCurrentDacl");function ie(e,t,r,n,o,i){const l=g(),d=e.setEntriesInAclW(1,r,n,l);d!==0&&(o!==null&&e.localFree(o),S(e,"SetEntriesInAclW",d,`${i}(${t})`));const u=p(l);u===null&&(o!==null&&e.localFree(o),S(e,"SetEntriesInAclW",e.getLastError(),`${i}(${t}): null new ACL`));const h=o!==null?e.localFree(o):null,w=e.setNamedSecurityInfoW(t,1,4,null,null,u,null),I=e.localFree(u);w!==0&&S(e,"SetNamedSecurityInfoW",w,`${i}(${t})`),h!==null&&!m(h)&&a(e,"LocalFree",`${i}(${t}) descriptor`),m(I)||a(e,"LocalFree",`${i}(${t}) new ACL`)}c(ie,"mergeAndApply");function He(e,t){const r=x(e,2),n=x(e,4);if(r<8||r>1048576)return!1;let o=8;for(let i=0;i<n;i++){const l=x(e,o+2);if(l<8||o+l>r)return!1;if(W(e,o)===0&&W(e,o+1)===3&&R(e,o+4)===1114454&&Ce(e,o+8,t,0))return!0;o+=l}return!1}c(He,"hasExactGrant");function G(e,t,r){ne(e,t,()=>{const{oldAcl:n,descriptor:o}=oe(e,t);if(n!==null&&He(n,r)){o!==null&&(m(e.localFree(o))||a(e,"LocalFree",`grantWrite(${t}) descriptor`));return}ie(e,t,U(r,1,pe),n,o,"grantWrite")})}c(G,"grantWrite");function N(e,t,r){return ne(e,t,()=>{const{oldAcl:n,descriptor:o}=oe(e,t);return n===null?(o!==null&&(m(e.localFree(o))||a(e,"LocalFree",`revokeWrite(${t}) descriptor`)),!1):(ie(e,t,U(r,4,0),n,o,"revokeWrite"),!0)})}c(N,"revokeWrite");function j(e,t){const r=ge(z.native(e),z.native(t));return r===""||!Se(r)&&r!==".."&&!r.startsWith(`..${Ie}`)}c(j,"containsDirectory");function ye(e,t){if(j(e,t))throw new Error(`Windows ACL temp root must be outside the workspace: workspace=${e}; temp=${t}`)}c(ye,"assertTempRootOutsideWorkspace");function Oe(e,t){for(const r of e)if(j(r,t)||j(t,r))throw new Error(`AclSandbox private temp directory must be disjoint from writable directories: writable=${r}; temp=${t}`)}c(Oe,"assertPrivateTempDisjoint");function se(e){if(e==="")return'""';if(!/[\s"]/u.test(e))return e;let t='"';for(let r=0;r<e.length;r++){let n=0;for(;r<e.length&&e.charAt(r)==="\\";)n++,r++;r===e.length?t+="\\".repeat(n*2):e.charAt(r)==='"'?t+="\\".repeat(n*2+1)+'"':t+="\\".repeat(n)+e.charAt(r)}return t+'"'}c(se,"quoteArg");function ce(e,t){return[e,...t].map(se).join(" ")}c(ce,"buildCommandLine");function B(e){const t=g(),r=g();e.createPipe(t,r,null,0)===0&&a(e,"CreatePipe");const n=p(t),o=p(r);return(n===null||o===null)&&a(e,"CreatePipe","null pipe handle"),{read:n,write:o}}c(B,"createPipe");function _(e,t,r){e.setHandleInformation(t,1,1)===0&&a(e,"SetHandleInformation",r)}c(_,"setInheritable");function $e(e,t,r){const n=B(e),o=B(e),i=B(e);_(e,n.read,"stdin read end"),_(e,o.write,"stdout write end"),_(e,i.write,"stderr write end");const l=Y();X(l,{cb:104,dwFlags:256,hStdInput:n.read,hStdOutput:o.write,hStdError:i.write});const d=Q(),u=ce(r.command,r.args);if(e.createProcessAsUserW(t,null,u,null,null,1,0,null,r.cwd,l,d)===0){const O=e.getLastError();e.closeHandle(n.read),e.closeHandle(n.write),e.closeHandle(o.read),e.closeHandle(o.write),e.closeHandle(i.read),e.closeHandle(i.write),S(e,"CreateProcessAsUserW",O,`command: ${r.command}, cwd: ${r.cwd}`)}const h=Z(d),w=h.hProcess,I=h.hThread;if(w===null||I===null)throw new Error(`CreateProcessAsUserW succeeded but returned null process/thread handles (pid ${h.dwProcessId})`);return e.closeHandle(n.read),e.closeHandle(o.write),e.closeHandle(i.write),e.closeHandle(n.write),e.closeHandle(I),{pid:h.dwProcessId,process:w,stdoutRead:o.read,stderrRead:i.read}}c($e,"spawnSandboxed");async function le(e,t){const r=[];for(;;){const n=E(),o=E(),i=E();if(e.peekNamedPipe(t,null,0,n,o,i)===0){const d=e.getLastError();if(d===109||d===232)break;a(e,"PeekNamedPipe",`drain failure after ${r.length} chunk(s)`)}const l=D(o);if(l>0){const d=Buffer.alloc(l),u=E();e.readFile(t,d,d.length,u,null)===0&&a(e,"ReadFile",`drain failure after ${r.length} chunk(s)`),r.push(d.subarray(0,D(u)))}await new Promise(d=>setTimeout(d,1))}return e.closeHandle(t),Buffer.concat(r)}c(le,"drainPipe");function de(e,t){e.waitForSingleObject(t,4294967295)===4294967295&&a(e,"WaitForSingleObject");const r=E();return e.getExitCodeProcess(t,r)===0&&a(e,"GetExitCodeProcess"),e.closeHandle(t),D(r)}c(de,"waitForExit");function Fe(e){const t=e.createJobObjectW(null,null);m(t)&&a(e,"CreateJobObjectW");const r=Buffer.alloc(144);if(r.writeUInt32LE(We,16),e.setInformationJobObject(t,9,r,r.length)===0){const n=e.getLastError();e.closeHandle(t),S(e,"SetInformationJobObject",n)}return t}c(Fe,"createKillOnCloseJob");function xe(e,t,r){const n=Fe(e),o=e.getStdHandle(-10),i=e.getStdHandle(-11),l=e.getStdHandle(-12);(m(o)||m(i)||m(l))&&(e.closeHandle(n),a(e,"GetStdHandle","null standard handle"));const d=c((k,ue)=>{e.setHandleInformation(k,1,1)===0&&a(e,"SetHandleInformation",`${ue} (enable inherit)`)},"makeInheritable"),u=c(k=>{e.setHandleInformation(k,1,0)},"restoreInherit");d(o,"stdin"),d(i,"stdout"),d(l,"stderr");const h=Y();X(h,{cb:104,dwFlags:256,hStdInput:o,hStdOutput:i,hStdError:l});const w=Q(),I=ce(r.command,r.args),O=e.createProcessAsUserW(t,null,I,null,null,1,4,null,r.cwd,h,w);if(u(o),u(i),u(l),O===0){const k=e.getLastError();e.closeHandle(n),S(e,"CreateProcessAsUserW",k,`command: ${r.command}, cwd: ${r.cwd}`)}const v=Z(w),T=v.hProcess,C=v.hThread;if(T===null||C===null)throw e.closeHandle(n),new Error(`CreateProcessAsUserW succeeded but returned null process/thread handles (pid ${v.dwProcessId})`);if(e.assignProcessToJobObject(n,T)===0){const k=e.getLastError();e.terminateProcess(T,1),e.closeHandle(C),e.closeHandle(T),e.closeHandle(n),S(e,"AssignProcessToJobObject",k,`pid ${v.dwProcessId}`)}if(e.resumeThread(C)===4294967295){const k=e.getLastError();e.closeHandle(C),e.closeHandle(T),e.closeHandle(n),S(e,"ResumeThread",k,`pid ${v.dwProcessId}`)}return e.closeHandle(C),{pid:v.dwProcessId,process:T,job:n}}c(xe,"spawnSandboxedInherited");function Re(e){const t=e.openProcess(Ee,0,process.pid);m(t)&&a(e,"OpenProcess",`pid ${process.pid}`);const r=g();if(e.openProcessToken(t,139,r)===0){const o=e.getLastError();e.closeHandle(t),S(e,"OpenProcessToken",o,`pid ${process.pid}`)}e.closeHandle(t)===0&&a(e,"CloseHandle","OpenProcess process handle");const n=p(r);return n===null&&S(e,"OpenProcessToken",e.getLastError(),"null token handle"),n}c(Re,"openCurrentProcessToken");function Ue(e,t){const r=E();e.getTokenInformation(t,2,null,0,r);const n=D(r);n===0&&a(e,"GetTokenInformation","TokenGroups size query"),n<8&&S(e,"GetTokenInformation",e.getLastError(),`implausible TokenGroups size ${n}`);const o=Buffer.alloc(n);e.getTokenInformation(t,2,o,o.length,r)===0&&a(e,"GetTokenInformation","TokenGroups");const i=o.readUInt32LE(0);for(let l=0;l<i;l++){const d=V(o,8+l*16),u=(o.readUInt32LE(8+l*16+8)&M)>>>0===M>>>0;if(d===null||!u)continue;const h=e.getLengthSid(d);h===0&&a(e,"GetLengthSid",`logon SID group ${l}`);const w=F(h);return e.copySid(h,w,d)===0&&a(e,"CopySid",`logon SID group ${l}`),w}throw new Error(`CreateRestrictedToken prerequisite failed: no logon SID found among ${i} token groups`)}c(Ue,"findLogonSid");function Ge(e,t){const r=F(68),n=E();return ve(n,68),e.createWellKnownSid(t,null,r,n)===0&&a(e,"CreateWellKnownSid",`type ${t}`),e.isValidSid(r)===0&&a(e,"IsValidSid",`CreateWellKnownSid type ${t}`),r}c(Ge,"makeWellKnownSid");function Ne(e,t,r){const n=E();e.getTokenInformation(t,6,null,0,n);const o=D(n);o===0&&a(e,"GetTokenInformation","TokenDefaultDacl size query");const i=Buffer.alloc(o);e.getTokenInformation(t,6,i,i.length,n)===0&&a(e,"GetTokenInformation","TokenDefaultDacl");const l=V(i,0);if(l===null)throw new Error("setTokenDefaultDaclGrant: the token carries no default DACL to extend");const d=g(),u=e.setEntriesInAclW(1,U(r,1,ke),l,d);u!==0&&S(e,"SetEntriesInAclW",u,"default DACL merge");const h=p(d);h===null&&S(e,"SetEntriesInAclW",u,"null merged default DACL");const w=Buffer.alloc(8);if(w.writeBigUInt64LE(h,0),e.setTokenInformation(t,6,w,w.length)===0){const I=e.getLastError();e.localFree(h),S(e,"SetTokenInformation",I,"TokenDefaultDacl")}e.localFree(h)}c(Ne,"setTokenDefaultDaclGrant");function je(e){const t=Buffer.alloc(16*e.length);return e.forEach((r,n)=>{t.writeBigUInt64LE(K(r),16*n)}),t}c(je,"buildRestrictingSids");function Be(e,t,r,n,o,i){const l=je(i==="read-only"?[r,o.world]:n.length===0?(()=>{throw new Error("createRestrictedToken: workspace-write restricting list requires at least one write SID")})():[r,o.world,...n]),d=g();e.createRestrictedToken(t,13,0,null,0,null,l.length/16,l,d)===0&&a(e,"CreateRestrictedToken",`restricting SIDs: ${l.length/16}`);const u=p(d);return u===null&&S(e,"CreateRestrictedToken",e.getLastError(),"null token handle"),u}c(Be,"createRestrictedToken");var _e=class ae{static{c(this,"AclWriteGrant")}writeSid;api;sidPtr;revocablePaths=[];standingPaths=[];constructor(t,r,n){this.api=t,this.sidPtr=r,this.writeSid=n}static create(t,r){const n=r??Ae(),o=g();n.convertStringSidToSidW(t,o)===0&&a(n,"ConvertStringSidToSidW",t);const i=p(o);return i===null&&a(n,"ConvertStringSidToSidW",`null SID for ${t}`),new ae(n,i,t)}add(t,r=!1){(r?this.standingPaths:this.revocablePaths).push(t),G(this.api,t,this.sidPtr)}get paths(){return[...this.standingPaths,...this.revocablePaths]}dispose(){const t=[];for(const r of this.revocablePaths)try{N(this.api,r,this.sidPtr)}catch(n){t.push(n)}try{m(this.api.localFree(this.sidPtr))||a(this.api,"LocalFree","write SID")}catch(r){t.push(r)}if(t.length>0)throw new AggregateError(t,`AclWriteGrant dispose completed with ${t.length} cleanup failure(s)`)}};function Je(e){const t=$("sha256").update(e,"utf8").digest();return`S-1-4-${t.readUInt32LE(0)%(2**30-1)+1}-${t.readUInt32LE(4)%(2**30-1)+1}`}c(Je,"workspaceWriteSid");function ze(e){const t=$("sha256").update("temp\0","utf8").update(e,"utf8").digest();return`S-1-4-${t.readUInt32LE(0)%(2**30-1)+1}-${t.readUInt32LE(4)%(2**30-1)+1}-1`}c(ze,"tempWriteSid");function y(e,t,r,n){if(t!==void 0)try{m(e.localFree(t))||a(e,"LocalFree",r)}catch(o){n.push(o)}}c(y,"freeSidBestEffort");var qe=class{static{c(this,"AclSandbox")}writableDirs;writeSid;tempWriteSid;mode;tempDirOption;manageDacls;tempDirResolved;api;token;writeSidPtr;tempWriteSidPtr;sidAllocations=[];grantedPaths=[];constructor(e){if(this.mode=e.mode,this.manageDacls=e.manageDacls??!0,this.writableDirs=e.writableDirs.map(t=>{const r=Pe(t);if(!J(r)||!q(r).isDirectory())throw new Error(`AclSandbox writable dir does not exist or is not a directory: ${r}`);return r}),this.tempDirOption=e.tempDir,this.writeSid=e.writeSid,this.tempWriteSid=e.tempWriteSid,this.mode==="workspace-write"&&this.writeSid===void 0)throw new Error("AclSandbox workspace-write requires a write SID — derive it from the workspace via workspaceWriteSid()");if(this.mode==="workspace-write"&&this.tempDirOption===void 0)throw new Error("AclSandbox workspace-write requires an explicit private temp directory or null");if(this.mode==="read-only"&&this.tempDirOption!==void 0&&this.tempDirOption!==null)throw new Error("AclSandbox read-only does not accept a temp directory");if(this.mode==="read-only"&&(this.writeSid!==void 0||this.tempWriteSid!==void 0))throw new Error("AclSandbox read-only does not accept write SIDs");if(this.mode==="workspace-write"&&this.tempDirOption!==null&&this.tempWriteSid===void 0)throw new Error("AclSandbox workspace-write with temp requires a temp write SID — derive it via tempWriteSid()");if(this.tempDirOption===null&&this.tempWriteSid!==void 0)throw new Error("AclSandbox temp write SID requires a temp directory");if(this.writeSid!==void 0&&this.tempWriteSid===this.writeSid)throw new Error("AclSandbox workspace and temp write SIDs must be distinct")}get tempDir(){return this.tempDirResolved}async init(){if(this.api!==void 0)throw new Error("AclSandbox is already initialized");const e=await te(),t=Re(e);let r=!0,n;try{const o=c(u=>{const h=g();e.convertStringSidToSidW(u,h)===0&&a(e,"ConvertStringSidToSidW",u);const w=p(h);if(w===null)throw new b("ConvertStringSidToSidW",e.getLastError(),u);return w},"parseSid");this.writeSidPtr=this.writeSid===void 0?void 0:o(this.writeSid),this.tempWriteSidPtr=this.tempWriteSid===void 0?void 0:o(this.tempWriteSid);const i=this.mode==="read-only"||this.tempDirOption===null?null:this.tempDirOption;if(i===void 0)throw new Error("AclSandbox workspace-write temp directory was not resolved");if(i!==null){if(!J(i)||!q(i).isDirectory())throw new Error(`AclSandbox temp dir does not exist or is not a directory: ${i}`);Oe(this.writableDirs,i)}if(this.tempDirResolved=i,this.manageDacls&&this.writeSidPtr!==void 0){for(const u of this.writableDirs)G(e,u,this.writeSidPtr);i!==null&&this.tempWriteSidPtr!==void 0&&(this.grantedPaths.push({path:i,sidPtr:this.tempWriteSidPtr}),G(e,i,this.tempWriteSidPtr))}const l=Ue(e,t);this.sidAllocations.push(l);const d=Ge(e,1);this.sidAllocations.push(d),n=Be(e,t,l,[this.writeSidPtr,this.tempWriteSidPtr].filter(u=>u!==void 0),{world:d},this.mode),this.token=n,Ne(e,n,this.tempWriteSidPtr??this.writeSidPtr??d),e.closeHandle(t)===0&&a(e,"CloseHandle","current process token"),r=!1,this.api=e}catch(o){const i=[];r&&e.closeHandle(t)===0&&i.push(new b("CloseHandle",e.getLastError(),"current process token after init failure")),n!==void 0&&e.closeHandle(n)===0&&i.push(new b("CloseHandle",e.getLastError(),"restricted token after init failure"));for(const l of this.grantedPaths)try{N(e,l.path,l.sidPtr)}catch(d){i.push(d)}for(const[l,d]of[["workspace write SID",this.writeSidPtr],["temp write SID",this.tempWriteSidPtr]])y(e,d,l,i);for(const l of this.sidAllocations.splice(0))y(e,l,"init SID allocation",i);throw this.token=void 0,this.writeSidPtr=void 0,this.tempWriteSidPtr=void 0,this.tempDirResolved=void 0,this.grantedPaths=[],i.length>0?new AggregateError([o,...i],`AclSandbox init failed and ${i.length} cleanup operation(s) also failed`):o}}spawn(e){const t=this.api,r=this.token;if(t===void 0||r===void 0)throw new Error("AclSandbox is not initialized: call init() first");const n=e.args??[],o=e.cwd??process.cwd();if(e.stdio==="inherit"){const h=xe(t,r,{command:e.command,args:n,cwd:o});let w;return{pid:h.pid,wait:c(async()=>{w??=Promise.resolve(de(t,h.process));const I=await w;return t.closeHandle(h.job)===0&&a(t,"CloseHandle","kill-on-close job"),{stdout:Buffer.alloc(0),stderr:Buffer.alloc(0),exitCode:I}},"wait")}}const i=$e(t,r,{command:e.command,args:n,cwd:o}),l=le(t,i.stdoutRead),d=le(t,i.stderrRead);let u;return{pid:i.pid,wait:c(async()=>{const h=await l,w=await d;return u??=Promise.resolve(de(t,i.process)),{stdout:h,stderr:w,exitCode:await u}},"wait")}}dispose(){const e=this.api;if(e===void 0)return;const t=[];if(this.manageDacls)for(const n of this.grantedPaths)try{N(e,n.path,n.sidPtr)}catch(o){t.push(o)}for(const[n,o]of[["workspace write SID",this.writeSidPtr],["temp write SID",this.tempWriteSidPtr]])y(e,o,n,t);const r=this.token;if(r!==void 0)try{e.closeHandle(r)===0&&a(e,"CloseHandle","restricted token")}catch(n){t.push(n)}for(const n of this.sidAllocations.splice(0))y(e,n,"init SID allocation",t);if(this.api=void 0,this.token=void 0,this.writeSidPtr=void 0,this.tempWriteSidPtr=void 0,this.grantedPaths=[],t.length>0)throw new AggregateError(t,`AclSandbox dispose completed with ${t.length} cleanup failure(s)`)}};export{se as a,b as c,_e as i,ze as n,ye as o,Je as r,te as s,qe as t};
|