shortcutxl 0.3.76 → 0.3.78
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/BINARY-INVENTORY.json +813 -813
- package/CHANGELOG.md +14 -0
- package/dist/ai/models.d.ts +10 -6
- package/dist/ai/models.generated.d.ts +72 -0
- package/dist/ai/models.generated.js +33 -0
- package/dist/ai/models.js +36 -13
- package/dist/ai/providers/anthropic.d.ts +4 -2
- package/dist/ai/providers/anthropic.js +59 -29
- package/dist/ai/providers/azure-openai-responses.d.ts +2 -1
- package/dist/ai/providers/azure-openai-responses.js +4 -20
- package/dist/ai/providers/google-vertex.d.ts +8 -2
- package/dist/ai/providers/google-vertex.js +66 -54
- package/dist/ai/providers/google.js +15 -48
- package/dist/ai/providers/openai-completions.d.ts +4 -1
- package/dist/ai/providers/openai-completions.js +26 -10
- package/dist/ai/providers/openai-reasoning.d.ts +5 -0
- package/dist/ai/providers/openai-reasoning.js +13 -0
- package/dist/ai/providers/openai-responses-shared.js +1 -1
- package/dist/ai/providers/openai-responses.d.ts +6 -2
- package/dist/ai/providers/openai-responses.js +28 -23
- package/dist/ai/providers/simple-options.d.ts +2 -3
- package/dist/ai/providers/simple-options.js +4 -6
- package/dist/ai/types.d.ts +19 -2
- package/dist/app/agent-session-runtime-adapter.js +7 -6
- package/dist/app/agent-session.d.ts +0 -15
- package/dist/app/agent-session.js +0 -37
- package/dist/app/approvals/approval-errors.d.ts +15 -0
- package/dist/app/approvals/approval-errors.js +14 -0
- package/dist/app/approvals/runtime-approval-gates.d.ts +1 -2
- package/dist/app/approvals/tool-approval.d.ts +1 -0
- package/dist/app/approvals/tool-approval.js +11 -23
- package/dist/app/approvals/types.d.ts +0 -14
- package/dist/app/approvals/types.js +0 -2
- package/dist/app/background/tool-summaries.js +0 -2
- package/dist/app/extensions/slash-commands.js +1 -3
- package/dist/app/local/tools/execute-code/executor.d.ts +1 -1
- package/dist/app/local/tools/execute-code/executor.js +20 -10
- package/dist/app/local/tools/execute-code/tool.js +21 -2
- package/dist/app/modes/action/agent.js +4 -5
- package/dist/app/modes/ask/agent.js +4 -6
- package/dist/app/modes/index.js +20 -10
- package/dist/app/modes/installation/agent.js +4 -5
- package/dist/app/modes/manage/agent.js +3 -4
- package/dist/app/modes/manage/prompt.js +1 -2
- package/dist/app/modes/metadata.d.ts +31 -0
- package/dist/app/modes/metadata.js +35 -0
- package/dist/app/modes/plan/agent.js +5 -8
- package/dist/app/modes/plan/prompt.js +3 -3
- package/dist/app/permissions/runtime-approval-flow.d.ts +1 -5
- package/dist/app/permissions/runtime-approval-flow.js +0 -28
- package/dist/app/permissions/tool-gates.d.ts +2 -3
- package/dist/app/permissions/tool-gates.js +3 -81
- package/dist/app/prompts/com-api.js +1 -1
- package/dist/app/prompts/shared-guidelines.js +7 -3
- package/dist/app/providers/google-vertex-gateway.js +4 -51
- package/dist/app/providers/model-registry.d.ts +1 -0
- package/dist/app/providers/model-registry.js +39 -0
- package/dist/app/providers/model-resolver.js +10 -7
- package/dist/app/providers/register-shortcut-provider.js +6 -6
- package/dist/app/providers/shortcut-api-v2-transport.js +4 -0
- package/dist/app/providers/shortcut-llm-proxy-client.d.ts +2 -2
- package/dist/app/providers/shortcut-llm-proxy-client.js +1 -0
- package/dist/app/resources/package-manager.js +2 -123
- package/dist/app/resources/resource-patterns.d.ts +9 -0
- package/dist/app/resources/resource-patterns.js +120 -0
- package/dist/app/session/forked-agent.d.ts +2 -2
- package/dist/app/session/model-manager.js +3 -2
- package/dist/app/session/session-lifecycle.js +3 -2
- package/dist/app/session/session-models.d.ts +2 -0
- package/dist/app/session/session-models.js +14 -6
- package/dist/app/settings-manager.d.ts +3 -3
- package/dist/app/shared/tools/execute-code/mog.d.ts +3 -1
- package/dist/app/shared/tools/execute-code/mog.js +18 -2
- package/dist/app/tools/bash.js +3 -3
- package/dist/app/tools/execute-code/index.d.ts +1 -0
- package/dist/app/tools/execute-code/index.js +3 -1
- package/dist/app/tools/find-ignore-files.d.ts +3 -0
- package/dist/app/tools/find-ignore-files.js +33 -0
- package/dist/app/tools/find.js +2 -21
- package/dist/app/tools/llm-analysis.js +0 -2
- package/dist/app/tools/refresh-context.d.ts +1 -1
- package/dist/app/tools/session-settings/update-session-settings.js +2 -2
- package/dist/app/tools/switch-mode.js +2 -2
- package/dist/app/tools/take-screenshot.js +0 -2
- package/dist/app/tools/task/runner.js +1 -2
- package/dist/app/tools/task/task.d.ts +1 -3
- package/dist/app/tools/task/task.js +20 -40
- package/dist/app/tools/web-search.js +12 -2
- package/dist/autocomplete/core.d.ts +33 -0
- package/dist/autocomplete/core.js +113 -0
- package/dist/{tui → autocomplete}/fuzzy.d.ts +0 -1
- package/dist/{tui → autocomplete}/fuzzy.js +0 -1
- package/dist/{tui/autocomplete.d.ts → autocomplete/index.d.ts} +0 -1
- package/dist/{tui/autocomplete.js → autocomplete/index.js} +62 -158
- package/dist/cli/args.js +1 -1
- package/dist/cli/list-models.js +1 -1
- package/dist/cli.js +26227 -30480
- package/dist/constants.d.ts +0 -2
- package/dist/constants.js +0 -3
- package/dist/contracts/agent-session-store.d.ts +1 -1
- package/dist/contracts/agent-settings.d.ts +1 -0
- package/dist/contracts/agent-settings.js +2 -1
- package/dist/contracts/model-call.d.ts +1 -2
- package/dist/contracts/model-call.js +1 -2
- package/dist/contracts/model-stream.d.ts +1 -0
- package/dist/contracts/model-stream.js +1 -0
- package/dist/contracts/wire.d.ts +10 -7
- package/dist/contracts/wire.js +8 -0
- package/dist/core/agent-engine.js +1 -1
- package/dist/core/core-types.d.ts +1 -21
- package/dist/core/defaults.d.ts +1 -1
- package/dist/core/defaults.js +9 -1
- package/dist/core/prompts/agent-guidelines.d.ts +4 -5
- package/dist/core/prompts/agent-guidelines.js +28 -42
- package/dist/core/session-schema.d.ts +1 -1
- package/dist/embedded-agent/ai-invoke.d.ts +1 -2
- package/dist/embedded-agent/ai-invoke.js +2 -70
- package/dist/embedded-agent/anthropic-messages-transport.d.ts +4 -20
- package/dist/embedded-agent/anthropic-messages-transport.js +23 -786
- package/dist/embedded-agent/bootstrap.js +2 -2
- package/dist/embedded-agent/compose.js +8 -7
- package/dist/embedded-agent/gateway-base-url.d.ts +3 -0
- package/dist/embedded-agent/gateway-base-url.js +35 -0
- package/dist/embedded-agent/google-vertex-transport.d.ts +2 -11
- package/dist/embedded-agent/google-vertex-transport.js +20 -117
- package/dist/embedded-agent/host-runtime-options.d.ts +0 -8
- package/dist/embedded-agent/host-runtime-options.js +10 -2
- package/dist/embedded-agent/host-tools/invoke-llm/contract.d.ts +2 -2
- package/dist/embedded-agent/host-tools/invoke-llm/contract.js +4 -2
- package/dist/embedded-agent/host-tools/sandbox-llm/contract.d.ts +8 -3
- package/dist/embedded-agent/host-tools/sandbox-llm/contract.js +12 -8
- package/dist/embedded-agent/host-tools/sandbox-llm/index.d.ts +1 -1
- package/dist/embedded-agent/host-tools/sandbox-llm/index.js +1 -1
- package/dist/embedded-agent/host-tools/shared/index.d.ts +1 -1
- package/dist/embedded-agent/host-tools/shared/index.js +1 -1
- package/dist/embedded-agent/host-tools/shared/llm-stream-error.d.ts +7 -0
- package/dist/embedded-agent/host-tools/shared/llm-stream-error.js +10 -0
- package/dist/embedded-agent/host-tools/take-screenshot/contract.d.ts +0 -2
- package/dist/embedded-agent/host-tools/take-screenshot/contract.js +1 -3
- package/dist/embedded-agent/host-tools/take-screenshot/index.d.ts +1 -1
- package/dist/embedded-agent/host-tools/take-screenshot/index.js +1 -1
- package/dist/embedded-agent/host-tools/task/agents/clone.js +1 -2
- package/dist/embedded-agent/host-tools/task/contract.js +1 -1
- package/dist/embedded-agent/index.d.ts +3 -4
- package/dist/embedded-agent/index.js +2 -3
- package/dist/embedded-agent/model-selection.d.ts +0 -6
- package/dist/embedded-agent/model-selection.js +15 -8
- package/dist/embedded-agent/openai-completions-transport.d.ts +2 -11
- package/dist/embedded-agent/openai-completions-transport.js +20 -120
- package/dist/embedded-agent/openai-responses-transport.d.ts +2 -11
- package/dist/embedded-agent/openai-responses-transport.js +15 -170
- package/dist/embedded-agent/prompt/build.js +1 -2
- package/dist/embedded-agent/prompt/sections.d.ts +1 -1
- package/dist/embedded-agent/prompt/sections.js +2 -0
- package/dist/embedded-agent/provider-native-request.d.ts +29 -0
- package/dist/embedded-agent/provider-native-request.js +65 -0
- package/dist/embedded-agent/run-stats.d.ts +1 -1
- package/dist/embedded-agent/stream.d.ts +10 -96
- package/dist/embedded-agent/stream.js +31 -556
- package/dist/embedded-agent/suggestions.d.ts +1 -1
- package/dist/embedded-agent/suggestions.js +1 -1
- package/dist/embedded-agent/worker-bridge/host-client.d.ts +7 -0
- package/dist/embedded-agent/worker-bridge/host-client.js +15 -0
- package/dist/embedded-agent/worker-bridge/worker-port.js +17 -1
- package/dist/main.js +18 -14
- package/dist/rpc/index.d.ts +1 -1
- package/dist/rpc/rpc-approval-gates.js +1 -2
- package/dist/rpc/rpc-host.d.ts +4 -0
- package/dist/rpc/rpc-host.js +13 -24
- package/dist/rpc/rpc-types.d.ts +6 -17
- package/dist/shared/platform/open.d.ts +4 -1
- package/dist/shared/platform/open.js +14 -2
- package/dist/shell/approvals/runtime-approval-gates.js +1 -3
- package/dist/shell/components/selectors/model-selector.js +2 -1
- package/dist/shell/components/selectors/session-selector-search.js +1 -1
- package/dist/shell/components/selectors/thinking-selector.js +7 -6
- package/dist/shell/index.d.ts +0 -1
- package/dist/shell/index.js +0 -1
- package/dist/shell/interactive/interactive-mode-options.d.ts +10 -0
- package/dist/shell/interactive/interactive-mode.d.ts +6 -12
- package/dist/shell/interactive/interactive-mode.js +39 -158
- package/dist/shell/interactive/slash-commands.d.ts +0 -34
- package/dist/shell/interactive/slash-commands.js +0 -2
- package/dist/shell/links/local-file-link-input.d.ts +15 -0
- package/dist/shell/links/local-file-link-input.js +38 -0
- package/dist/shell/links/local-file-link.d.ts +7 -0
- package/dist/shell/links/local-file-link.js +35 -0
- package/dist/shell/links/local-file-opener.d.ts +16 -0
- package/dist/shell/links/local-file-opener.js +90 -0
- package/dist/shell/session-client.d.ts +0 -1
- package/dist/shell/session-client.js +0 -6
- package/dist/shell/status/update-check-scheduler.d.ts +30 -0
- package/dist/shell/status/update-check-scheduler.js +71 -0
- package/dist/shell/status/update-reminder-controller.d.ts +22 -0
- package/dist/shell/status/update-reminder-controller.js +40 -0
- package/dist/shell/status/update-reminder.d.ts +6 -0
- package/dist/shell/status/update-reminder.js +4 -0
- package/dist/shell/theme/dark.json +1 -2
- package/dist/shell/theme/light.json +1 -2
- package/dist/shell/theme/runtime.d.ts +2 -3
- package/dist/shell/theme/runtime.js +2 -6
- package/dist/shell/theme/theme-schema.json +1 -6
- package/dist/shortcut-model-catalog.d.ts +7 -2
- package/dist/shortcut-model-catalog.js +134 -10
- package/dist/startup/update-manager.d.ts +6 -6
- package/dist/startup/update-manager.js +23 -38
- package/dist/startup/update-prompt.d.ts +1 -0
- package/dist/startup/update-prompt.js +2 -2
- package/dist/tui/components/editor.d.ts +1 -1
- package/dist/tui/components/editor.js +1 -1
- package/dist/tui/components/markdown.js +15 -6
- package/dist/tui/components/settings-list.js +1 -1
- package/dist/tui/editor-component.d.ts +1 -1
- package/dist/tui/index.d.ts +7 -8
- package/dist/tui/index.js +7 -6
- package/dist/tui/tui.d.ts +2 -0
- package/dist/tui/tui.js +16 -1
- package/dist/tui/utils.d.ts +7 -0
- package/dist/tui/utils.js +58 -8
- package/native-app/main/index.js +3200 -48
- package/native-app/main/{photon_rs-SoVDgheu.js → photon_rs-XkYyYTVA.js} +2 -2
- package/native-app/package.json +1 -1
- package/native-app/preload/index.cjs +2 -0
- package/native-app/renderer/assets/{index-CFc-oZuS.js → index-B4jz6epR.js} +825 -155
- package/native-app/renderer/assets/{index-OhGE0UY4.css → index-C__g36ft.css} +412 -162
- package/native-app/renderer/assets/shortcutagent-DxFsGSkw.png +0 -0
- package/native-app/renderer/index.html +2 -2
- package/package.json +17 -3
- package/skills/add-custom-model/SKILL.md +52 -0
- package/user-docs/dist/index.html +1 -1
- package/user-docs/dist/shortcutxl-docs.pdf +0 -0
- package/xll/ShortcutXL.xll +0 -0
- package/xll/modules/shortcut_xl/_managed.py +26 -7
- package/xll/modules/shortcut_xl/_tracking.py +141 -251
- package/xll/modules/shortcut_xl/api/__init__.py +60 -0
- package/xll/modules/shortcut_xl/api/workbook.py +9 -1
- package/xll/modules/shortcut_xl/api/worksheet.py +4 -1
- package/xll/python/Lib/site-packages/httpx-0.28.1.dist-info/RECORD +1 -1
- package/xll/python/Lib/site-packages/idna-3.18.dist-info/RECORD +1 -1
- package/xll/python/Lib/site-packages/pip/__init__.py +1 -1
- package/xll/python/Lib/site-packages/pip/_internal/build_env/__init__.py +25 -0
- package/xll/python/Lib/site-packages/pip/_internal/build_env/base.py +103 -0
- package/xll/python/Lib/site-packages/pip/_internal/build_env/installer.py +333 -0
- package/xll/python/Lib/site-packages/pip/_internal/build_env/noop.py +42 -0
- package/xll/python/Lib/site-packages/pip/_internal/build_env/venv.py +145 -0
- package/xll/python/Lib/site-packages/pip/_internal/build_env/virtual.py +139 -0
- package/xll/python/Lib/site-packages/pip/_internal/cache.py +4 -1
- package/xll/python/Lib/site-packages/pip/_internal/cli/autocompletion.py +4 -1
- package/xll/python/Lib/site-packages/pip/_internal/cli/base_command.py +11 -14
- package/xll/python/Lib/site-packages/pip/_internal/cli/cmdoptions.py +133 -22
- package/xll/python/Lib/site-packages/pip/_internal/cli/index_command.py +11 -6
- package/xll/python/Lib/site-packages/pip/_internal/cli/main.py +2 -1
- package/xll/python/Lib/site-packages/pip/_internal/cli/main_parser.py +1 -2
- package/xll/python/Lib/site-packages/pip/_internal/cli/parser.py +10 -2
- package/xll/python/Lib/site-packages/pip/_internal/cli/progress_bars.py +2 -2
- package/xll/python/Lib/site-packages/pip/_internal/cli/req_command.py +57 -25
- package/xll/python/Lib/site-packages/pip/_internal/cli/status_codes.py +1 -0
- package/xll/python/Lib/site-packages/pip/_internal/commands/cache.py +7 -6
- package/xll/python/Lib/site-packages/pip/_internal/commands/configuration.py +2 -1
- package/xll/python/Lib/site-packages/pip/_internal/commands/debug.py +4 -5
- package/xll/python/Lib/site-packages/pip/_internal/commands/download.py +4 -0
- package/xll/python/Lib/site-packages/pip/_internal/commands/freeze.py +1 -1
- package/xll/python/Lib/site-packages/pip/_internal/commands/index.py +10 -3
- package/xll/python/Lib/site-packages/pip/_internal/commands/inspect.py +1 -1
- package/xll/python/Lib/site-packages/pip/_internal/commands/install.py +6 -6
- package/xll/python/Lib/site-packages/pip/_internal/commands/list.py +11 -6
- package/xll/python/Lib/site-packages/pip/_internal/commands/lock.py +4 -6
- package/xll/python/Lib/site-packages/pip/_internal/commands/show.py +14 -8
- package/xll/python/Lib/site-packages/pip/_internal/commands/wheel.py +7 -1
- package/xll/python/Lib/site-packages/pip/_internal/configuration.py +2 -3
- package/xll/python/Lib/site-packages/pip/_internal/distributions/base.py +5 -3
- package/xll/python/Lib/site-packages/pip/_internal/distributions/installed.py +3 -2
- package/xll/python/Lib/site-packages/pip/_internal/distributions/sdist.py +45 -20
- package/xll/python/Lib/site-packages/pip/_internal/distributions/wheel.py +3 -2
- package/xll/python/Lib/site-packages/pip/_internal/exceptions.py +174 -0
- package/xll/python/Lib/site-packages/pip/_internal/index/collector.py +70 -48
- package/xll/python/Lib/site-packages/pip/_internal/index/package_finder.py +46 -7
- package/xll/python/Lib/site-packages/pip/_internal/index/sources.py +1 -2
- package/xll/python/Lib/site-packages/pip/_internal/locations/_sysconfig.py +1 -1
- package/xll/python/Lib/site-packages/pip/_internal/locations/base.py +1 -1
- package/xll/python/Lib/site-packages/pip/_internal/metadata/base.py +10 -5
- package/xll/python/Lib/site-packages/pip/_internal/metadata/importlib/_dists.py +1 -1
- package/xll/python/Lib/site-packages/pip/_internal/metadata/importlib/_envs.py +8 -3
- package/xll/python/Lib/site-packages/pip/_internal/models/candidate.py +5 -1
- package/xll/python/Lib/site-packages/pip/_internal/models/link.py +53 -13
- package/xll/python/Lib/site-packages/pip/_internal/network/auth.py +38 -21
- package/xll/python/Lib/site-packages/pip/_internal/network/cache.py +2 -2
- package/xll/python/Lib/site-packages/pip/_internal/network/download.py +58 -11
- package/xll/python/Lib/site-packages/pip/_internal/network/session.py +35 -40
- package/xll/python/Lib/site-packages/pip/_internal/network/utils.py +109 -1
- package/xll/python/Lib/site-packages/pip/_internal/operations/check.py +2 -3
- package/xll/python/Lib/site-packages/pip/_internal/operations/install/wheel.py +23 -18
- package/xll/python/Lib/site-packages/pip/_internal/operations/prepare.py +152 -7
- package/xll/python/Lib/site-packages/pip/_internal/req/__init__.py +2 -0
- package/xll/python/Lib/site-packages/pip/_internal/req/constructors.py +54 -69
- package/xll/python/Lib/site-packages/pip/_internal/req/req_file.py +6 -6
- package/xll/python/Lib/site-packages/pip/_internal/req/req_install.py +25 -21
- package/xll/python/Lib/site-packages/pip/_internal/req/req_uninstall.py +13 -8
- package/xll/python/Lib/site-packages/pip/_internal/resolution/base.py +2 -2
- package/xll/python/Lib/site-packages/pip/_internal/resolution/legacy/resolver.py +2 -2
- package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/base.py +1 -1
- package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/candidates.py +0 -1
- package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/factory.py +39 -52
- package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +3 -3
- package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/provider.py +3 -0
- package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/resolver.py +9 -0
- package/xll/python/Lib/site-packages/pip/_internal/utils/compat.py +15 -9
- package/xll/python/Lib/site-packages/pip/_internal/utils/deprecation.py +6 -1
- package/xll/python/Lib/site-packages/pip/_internal/utils/filesystem.py +2 -2
- package/xll/python/Lib/site-packages/pip/_internal/utils/logging.py +11 -3
- package/xll/python/Lib/site-packages/pip/_internal/utils/misc.py +48 -4
- package/xll/python/Lib/site-packages/pip/_internal/utils/pylock.py +18 -2
- package/xll/python/Lib/site-packages/pip/_internal/utils/retry.py +2 -1
- package/xll/python/Lib/site-packages/pip/_internal/utils/subprocess.py +4 -3
- package/xll/python/Lib/site-packages/pip/_internal/utils/temp_dir.py +1 -2
- package/xll/python/Lib/site-packages/pip/_internal/utils/unpacking.py +30 -4
- package/xll/python/Lib/site-packages/pip/_internal/utils/urls.py +5 -2
- package/xll/python/Lib/site-packages/pip/_internal/utils/virtualenv.py +2 -36
- package/xll/python/Lib/site-packages/pip/_internal/vcs/git.py +8 -5
- package/xll/python/Lib/site-packages/pip/_internal/vcs/versioncontrol.py +1 -2
- package/xll/python/Lib/site-packages/pip/_internal/wheel_builder.py +5 -1
- package/xll/python/Lib/site-packages/pip/_vendor/bom.cdx.json +231 -0
- package/xll/python/Lib/site-packages/pip/_vendor/certifi/__init__.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/certifi/cacert.pem +0 -631
- package/xll/python/Lib/site-packages/pip/_vendor/distlib/__init__.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/distlib/compat.py +34 -64
- package/xll/python/Lib/site-packages/pip/_vendor/distlib/resources.py +28 -14
- package/xll/python/Lib/site-packages/pip/_vendor/distlib/scripts.py +7 -3
- package/xll/python/Lib/site-packages/pip/_vendor/distlib/util.py +48 -11
- package/xll/python/Lib/site-packages/pip/_vendor/idna/LICENSE.md +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/idna/__main__.py +6 -0
- package/xll/python/Lib/site-packages/pip/_vendor/idna/cli.py +128 -0
- package/xll/python/Lib/site-packages/pip/_vendor/idna/codec.py +50 -13
- package/xll/python/Lib/site-packages/pip/_vendor/idna/compat.py +26 -0
- package/xll/python/Lib/site-packages/pip/_vendor/idna/core.py +352 -141
- package/xll/python/Lib/site-packages/pip/_vendor/idna/idnadata.py +571 -2983
- package/xll/python/Lib/site-packages/pip/_vendor/idna/intranges.py +5 -7
- package/xll/python/Lib/site-packages/pip/_vendor/idna/package_data.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/idna/uts46data.py +16887 -8832
- package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/__init__.py +352 -66
- package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/__main__.py +11 -0
- package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/_xdg.py +171 -0
- package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/android.py +92 -41
- package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/api.py +213 -49
- package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/macos.py +128 -51
- package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/unix.py +176 -127
- package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/version.py +8 -18
- package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/windows.py +185 -68
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/__init__.py +2 -2
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/__main__.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/console.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/filter.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/filters/__init__.py +10 -8
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/formatter.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/formatters/__init__.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/lexer.py +7 -5
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/lexers/__init__.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/lexers/_mapping.py +9 -8
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/lexers/python.py +35 -32
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/modeline.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/plugin.py +3 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/regexopt.py +13 -2
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/scanner.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/sphinxext.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/style.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/styles/__init__.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/token.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/unistring.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/pygments/util.py +2 -2
- package/xll/python/Lib/site-packages/pip/_vendor/requests/__init__.py +52 -16
- package/xll/python/Lib/site-packages/pip/_vendor/requests/__version__.py +2 -2
- package/xll/python/Lib/site-packages/pip/_vendor/requests/_internal_utils.py +2 -2
- package/xll/python/Lib/site-packages/pip/_vendor/requests/_types.py +183 -0
- package/xll/python/Lib/site-packages/pip/_vendor/requests/adapters.py +101 -50
- package/xll/python/Lib/site-packages/pip/_vendor/requests/api.py +31 -8
- package/xll/python/Lib/site-packages/pip/_vendor/requests/auth.py +80 -40
- package/xll/python/Lib/site-packages/pip/_vendor/requests/compat.py +9 -3
- package/xll/python/Lib/site-packages/pip/_vendor/requests/cookies.py +143 -79
- package/xll/python/Lib/site-packages/pip/_vendor/requests/exceptions.py +15 -5
- package/xll/python/Lib/site-packages/pip/_vendor/requests/help.py +13 -10
- package/xll/python/Lib/site-packages/pip/_vendor/requests/hooks.py +23 -9
- package/xll/python/Lib/site-packages/pip/_vendor/requests/models.py +265 -126
- package/xll/python/Lib/site-packages/pip/_vendor/requests/py.typed +0 -0
- package/xll/python/Lib/site-packages/pip/_vendor/requests/sessions.py +164 -78
- package/xll/python/Lib/site-packages/pip/_vendor/requests/status_codes.py +2 -2
- package/xll/python/Lib/site-packages/pip/_vendor/requests/structures.py +51 -20
- package/xll/python/Lib/site-packages/pip/_vendor/requests/utils.py +161 -89
- package/xll/python/Lib/site-packages/pip/_vendor/tomli/__init__.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/tomli/_parser.py +9 -4
- package/xll/python/Lib/site-packages/pip/_vendor/tomli/_re.py +13 -9
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/_base_connection.py +3 -1
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/_collections.py +0 -1
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/_version.py +8 -18
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/connection.py +4 -4
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/connectionpool.py +23 -10
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/contrib/emscripten/response.py +5 -1
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +7 -8
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/contrib/socks.py +1 -1
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/exceptions.py +2 -2
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/fields.py +14 -14
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/poolmanager.py +8 -6
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/response.py +35 -22
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/retry.py +8 -0
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/ssl_.py +11 -61
- package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +5 -11
- package/xll/python/Lib/site-packages/pip/_vendor/vendor.txt +8 -8
- package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/METADATA +3 -2
- package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/RECORD +208 -188
- package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/AUTHORS.txt +20 -0
- package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/idna/LICENSE.md +1 -1
- package/xll/python/Lib/site-packages/pywin32-311.dist-info/RECORD +2 -2
- package/xll/python/Scripts/httpx.exe +0 -0
- package/xll/python/Scripts/idna.exe +0 -0
- package/xll/python/Scripts/pip.exe +0 -0
- package/xll/python/Scripts/pip3.13.exe +0 -0
- package/xll/python/Scripts/pip3.exe +0 -0
- package/xll/python/Scripts/pywin32_postinstall.exe +0 -0
- package/xll/python/Scripts/pywin32_testall.exe +0 -0
- package/dist/app/collab/awareness.d.ts +0 -32
- package/dist/app/collab/awareness.js +0 -52
- package/dist/app/collab/collab-client.d.ts +0 -37
- package/dist/app/collab/collab-client.js +0 -208
- package/dist/app/collab/collab-manager.d.ts +0 -91
- package/dist/app/collab/collab-manager.js +0 -218
- package/dist/app/collab/collab-sync.d.ts +0 -62
- package/dist/app/collab/collab-sync.js +0 -215
- package/dist/app/collab/index.d.ts +0 -9
- package/dist/app/collab/index.js +0 -6
- package/dist/app/collab/super-fight.d.ts +0 -90
- package/dist/app/collab/super-fight.js +0 -310
- package/dist/app/collab/sync-bridge.d.ts +0 -35
- package/dist/app/collab/sync-bridge.js +0 -109
- package/dist/app/collab/types.d.ts +0 -75
- package/dist/app/collab/types.js +0 -5
- package/dist/embedded-agent/ai-content.d.ts +0 -52
- package/dist/embedded-agent/ai-content.js +0 -101
- package/dist/embedded-agent/host-tools/shared/llm-stream.d.ts +0 -31
- package/dist/embedded-agent/host-tools/shared/llm-stream.js +0 -136
- package/dist/embedded-agent/model-call-orchestrator.d.ts +0 -22
- package/dist/embedded-agent/model-call-orchestrator.js +0 -22
- package/dist/embedded-agent/stream-errors.d.ts +0 -10
- package/dist/embedded-agent/stream-errors.js +0 -73
- package/dist/embedded-agent/stream-message-state.d.ts +0 -14
- package/dist/embedded-agent/stream-message-state.js +0 -271
- package/dist/embedded-agent/stream-sse.d.ts +0 -78
- package/dist/embedded-agent/stream-sse.js +0 -73
- package/dist/shell/approvals/task-spawn-approval.d.ts +0 -20
- package/dist/shell/approvals/task-spawn-approval.js +0 -93
- package/dist/shell/interactive/collab-command.d.ts +0 -9
- package/dist/shell/interactive/collab-command.js +0 -115
- package/dist/shell/interactive/super-fight-ui.d.ts +0 -80
- package/dist/shell/interactive/super-fight-ui.js +0 -484
- package/dist/shell/status/collab-status.d.ts +0 -18
- package/dist/shell/status/collab-status.js +0 -46
- package/xll/python/Lib/site-packages/pip/_internal/build_env.py +0 -606
- /package/dist/{tui → autocomplete}/skill-autocomplete.js +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/INSTALLER +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/REQUESTED +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/WHEEL +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/entry_points.txt +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/LICENSE.txt +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/cachecontrol/LICENSE.txt +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/certifi/LICENSE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/distlib/LICENSE.txt +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/distro/LICENSE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/msgpack/COPYING +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/packaging/LICENSE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/packaging/LICENSE.APACHE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/packaging/LICENSE.BSD +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/pkg_resources/LICENSE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/platformdirs/LICENSE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/pygments/LICENSE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/pyproject_hooks/LICENSE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/requests/LICENSE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/resolvelib/LICENSE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/rich/LICENSE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/tomli/LICENSE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/tomli_w/LICENSE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/truststore/LICENSE +0 -0
- /package/xll/python/Lib/site-packages/{pip-26.1.2.dist-info → pip-26.2.dist-info}/licenses/src/pip/_vendor/urllib3/LICENSE.txt +0 -0
package/dist/constants.d.ts
CHANGED
|
@@ -25,8 +25,6 @@ export declare function getShortcutForkTraceDir(): string | undefined;
|
|
|
25
25
|
export declare function getShortcutTuiRenderTraceSetting(): string | undefined;
|
|
26
26
|
/** Optional TUI render trace full-text flag. */
|
|
27
27
|
export declare function getShortcutTuiRenderTraceFullSetting(): string | undefined;
|
|
28
|
-
/** WebSocket URL for the collab signaling server. */
|
|
29
|
-
export declare const COLLAB_SERVER_URL: string;
|
|
30
28
|
/** uv release version pinned to a known-good Astral release. */
|
|
31
29
|
export declare const UV_VERSION = "0.7.2";
|
|
32
30
|
/** Python version installed via uv on macOS. */
|
package/dist/constants.js
CHANGED
|
@@ -58,9 +58,6 @@ export function getShortcutTuiRenderTraceFullSetting() {
|
|
|
58
58
|
}
|
|
59
59
|
// -- Dev mode --------------------------------------------------------------
|
|
60
60
|
// Dev mode is now a settings.json flag (settingsManager.getDevMode()), not an env var.
|
|
61
|
-
// -- Collaboration ---------------------------------------------------------
|
|
62
|
-
/** WebSocket URL for the collab signaling server. */
|
|
63
|
-
export const COLLAB_SERVER_URL = process.env.COLLAB_SERVER_URL ?? 'ws://localhost:9400';
|
|
64
61
|
// -- uv (Python toolchain for macOS) --------------------------------------
|
|
65
62
|
/** uv release version pinned to a known-good Astral release. */
|
|
66
63
|
export const UV_VERSION = '0.7.2';
|
|
@@ -112,7 +112,7 @@ export interface RuntimeLlmCallEntry extends AgentSessionEntryBase {
|
|
|
112
112
|
type: 'llm_call';
|
|
113
113
|
requestId: string;
|
|
114
114
|
body: {
|
|
115
|
-
effort_level?: 'low' | 'medium' | 'high' | 'max';
|
|
115
|
+
effort_level?: 'low' | 'medium' | 'high' | 'xhigh' | 'max';
|
|
116
116
|
max_tokens?: number;
|
|
117
117
|
messages: readonly {
|
|
118
118
|
content: string;
|
|
@@ -7,6 +7,7 @@ export declare const RUNTIME_THINKING_LEVEL: {
|
|
|
7
7
|
readonly Medium: "medium";
|
|
8
8
|
readonly High: "high";
|
|
9
9
|
readonly XHigh: "xhigh";
|
|
10
|
+
readonly Max: "max";
|
|
10
11
|
};
|
|
11
12
|
export type AgentThinkingLevel = (typeof RUNTIME_THINKING_LEVEL)[keyof typeof RUNTIME_THINKING_LEVEL];
|
|
12
13
|
export interface RuntimeFilesystemApprovalGrant {
|
|
@@ -4,7 +4,6 @@ export declare const ShortcutXLModelCallTransportKind: {
|
|
|
4
4
|
readonly GoogleVertex: "google_vertex";
|
|
5
5
|
readonly OpenAICompletions: "openai_completions";
|
|
6
6
|
readonly OpenAIResponses: "openai_responses";
|
|
7
|
-
readonly ShortcutProxy: "shortcut_proxy";
|
|
8
7
|
};
|
|
9
8
|
export type ShortcutXLModelCallTransportKind = (typeof ShortcutXLModelCallTransportKind)[keyof typeof ShortcutXLModelCallTransportKind];
|
|
10
9
|
/**
|
|
@@ -146,7 +145,7 @@ export interface ShortcutXLModelInvokeToolChoice {
|
|
|
146
145
|
readonly type: 'tool';
|
|
147
146
|
}
|
|
148
147
|
export interface ShortcutXLModelInvokePayload {
|
|
149
|
-
readonly effortLevel?: 'low' | 'medium' | 'high';
|
|
148
|
+
readonly effortLevel?: 'low' | 'medium' | 'high' | 'xhigh' | 'max';
|
|
150
149
|
readonly maxTokens?: number;
|
|
151
150
|
readonly messages: readonly ShortcutXLModelInvokeMessage[];
|
|
152
151
|
readonly model: string;
|
|
@@ -3,8 +3,7 @@ export const ShortcutXLModelCallTransportKind = {
|
|
|
3
3
|
AnthropicMessages: 'anthropic_messages',
|
|
4
4
|
GoogleVertex: 'google_vertex',
|
|
5
5
|
OpenAICompletions: 'openai_completions',
|
|
6
|
-
OpenAIResponses: 'openai_responses'
|
|
7
|
-
ShortcutProxy: 'shortcut_proxy'
|
|
6
|
+
OpenAIResponses: 'openai_responses'
|
|
8
7
|
};
|
|
9
8
|
/**
|
|
10
9
|
* Request types emitted by private-gateway usage logging.
|
|
@@ -7,6 +7,7 @@ export declare const ShortcutXLModelStreamEffortLevel: {
|
|
|
7
7
|
readonly Low: "low";
|
|
8
8
|
readonly Medium: "medium";
|
|
9
9
|
readonly High: "high";
|
|
10
|
+
readonly XHigh: "xhigh";
|
|
10
11
|
readonly Max: "max";
|
|
11
12
|
};
|
|
12
13
|
export type ShortcutXLModelStreamEffortLevel = (typeof ShortcutXLModelStreamEffortLevel)[keyof typeof ShortcutXLModelStreamEffortLevel];
|
package/dist/contracts/wire.d.ts
CHANGED
|
@@ -15,6 +15,7 @@ export declare const WorkerMessageKind: {
|
|
|
15
15
|
readonly ModelStreamRequest: "modelStreamRequest";
|
|
16
16
|
readonly AgentCommandAck: "runtimeCommandAck";
|
|
17
17
|
readonly AgentCommand: "runtimeCommand";
|
|
18
|
+
readonly AgentCommandReceived: "runtimeCommandReceived";
|
|
18
19
|
readonly AgentEvent: "runtimeEvent";
|
|
19
20
|
};
|
|
20
21
|
export type WorkerMessageKind = (typeof WorkerMessageKind)[keyof typeof WorkerMessageKind];
|
|
@@ -30,6 +31,12 @@ export interface AgentCommandAckMessage {
|
|
|
30
31
|
ok: boolean;
|
|
31
32
|
error?: string;
|
|
32
33
|
}
|
|
34
|
+
export interface AgentCommandReceivedMessage {
|
|
35
|
+
kind: typeof WorkerMessageKind.AgentCommandReceived;
|
|
36
|
+
commandId: string;
|
|
37
|
+
receivedAt: number;
|
|
38
|
+
userMessageId: string;
|
|
39
|
+
}
|
|
33
40
|
export interface AgentEventMessage {
|
|
34
41
|
kind: typeof WorkerMessageKind.AgentEvent;
|
|
35
42
|
event: AgentEvent;
|
|
@@ -42,7 +49,7 @@ export interface HostToolResultMessage {
|
|
|
42
49
|
kind: typeof WorkerMessageKind.HostToolResult;
|
|
43
50
|
result: HostToolResult;
|
|
44
51
|
}
|
|
45
|
-
export type ShortcutXLAiStreamOptions = Pick<SimpleStreamOptions, 'cacheRetention' | 'headers' | 'maxRetryDelayMs' | 'maxTokens' | 'metadata' | 'reasoning' | 'temperature' | 'transport'> & {
|
|
52
|
+
export type ShortcutXLAiStreamOptions = Pick<SimpleStreamOptions, 'cacheRetention' | 'headers' | 'maxRetryDelayMs' | 'maxTokens' | 'metadata' | 'reasoning' | 'temperature' | 'toolChoice' | 'transport'> & {
|
|
46
53
|
readonly agentMode?: string;
|
|
47
54
|
readonly continuationRunId?: string;
|
|
48
55
|
readonly fileAttachmentIds?: readonly string[];
|
|
@@ -53,16 +60,12 @@ export type ShortcutXLAiStreamOptions = Pick<SimpleStreamOptions, 'cacheRetentio
|
|
|
53
60
|
readonly speed?: 'fast' | 'standard';
|
|
54
61
|
readonly userMessageId?: string;
|
|
55
62
|
};
|
|
56
|
-
export type ShortcutXLAiInvokeOptions = Pick<SimpleStreamOptions, 'cacheRetention' | 'headers' | 'maxRetryDelayMs' | 'maxTokens' | 'metadata' | 'reasoning' | 'temperature' | 'transport'> & {
|
|
63
|
+
export type ShortcutXLAiInvokeOptions = Pick<SimpleStreamOptions, 'cacheRetention' | 'headers' | 'maxRetryDelayMs' | 'maxTokens' | 'metadata' | 'reasoning' | 'temperature' | 'toolChoice' | 'transport'> & {
|
|
57
64
|
readonly continuationRunId?: string;
|
|
58
65
|
readonly requestType?: ShortcutXLUsageLogRequestType;
|
|
59
66
|
readonly fastModeModelIds?: readonly string[];
|
|
60
67
|
readonly speed?: 'fast' | 'standard';
|
|
61
68
|
readonly thinkingType?: 'off' | 'on';
|
|
62
|
-
readonly toolChoice?: 'auto' | 'any' | 'none' | 'required' | {
|
|
63
|
-
readonly name: string;
|
|
64
|
-
readonly type: 'tool';
|
|
65
|
-
};
|
|
66
69
|
readonly userMessageId?: string;
|
|
67
70
|
};
|
|
68
71
|
export interface ShortcutXLAiModelStreamRequest {
|
|
@@ -94,7 +97,7 @@ export interface ModelStreamCancelMessage {
|
|
|
94
97
|
kind: typeof WorkerMessageKind.ModelStreamCancel;
|
|
95
98
|
requestId: string;
|
|
96
99
|
}
|
|
97
|
-
export type WorkerMessage = AgentCommandAckMessage | AgentCommandMessage | AgentEventMessage | HostToolRequestMessage | HostToolResultMessage | ModelStreamCancelMessage | ModelStreamEventMessage | ModelStreamRequestMessage;
|
|
100
|
+
export type WorkerMessage = AgentCommandAckMessage | AgentCommandMessage | AgentCommandReceivedMessage | AgentEventMessage | HostToolRequestMessage | HostToolResultMessage | ModelStreamCancelMessage | ModelStreamEventMessage | ModelStreamRequestMessage;
|
|
98
101
|
/** Envelope-shape guard; tool-payload validation goes through the registry. */
|
|
99
102
|
export declare function isWorkerMessage(value: unknown, registry: ToolRegistry): value is WorkerMessage;
|
|
100
103
|
export declare function isShortcutXLAiModelInvokeRequest(value: unknown): value is ShortcutXLAiModelInvokeRequest;
|
package/dist/contracts/wire.js
CHANGED
|
@@ -12,6 +12,7 @@ export const WorkerMessageKind = {
|
|
|
12
12
|
ModelStreamRequest: 'modelStreamRequest',
|
|
13
13
|
AgentCommandAck: 'runtimeCommandAck',
|
|
14
14
|
AgentCommand: 'runtimeCommand',
|
|
15
|
+
AgentCommandReceived: 'runtimeCommandReceived',
|
|
15
16
|
AgentEvent: 'runtimeEvent'
|
|
16
17
|
};
|
|
17
18
|
/** Envelope-shape guard; tool-payload validation goes through the registry. */
|
|
@@ -30,6 +31,13 @@ export function isWorkerMessage(value, registry) {
|
|
|
30
31
|
typeof message.ok === 'boolean' &&
|
|
31
32
|
(message.error == null || typeof message.error === 'string'));
|
|
32
33
|
}
|
|
34
|
+
case WorkerMessageKind.AgentCommandReceived: {
|
|
35
|
+
const message = candidate;
|
|
36
|
+
return (typeof message.commandId === 'string' &&
|
|
37
|
+
typeof message.receivedAt === 'number' &&
|
|
38
|
+
Number.isFinite(message.receivedAt) &&
|
|
39
|
+
typeof message.userMessageId === 'string');
|
|
40
|
+
}
|
|
33
41
|
case WorkerMessageKind.AgentCommand:
|
|
34
42
|
return (typeof candidate.commandId === 'string' &&
|
|
35
43
|
isAgentCommand(candidate.command) &&
|
|
@@ -94,7 +94,7 @@ export class AgentEngine {
|
|
|
94
94
|
async runTurn(options) {
|
|
95
95
|
const { state, messageQueue, signal, messages, onEvent } = options;
|
|
96
96
|
const model = state.model;
|
|
97
|
-
const reasoning = state.thinkingLevel
|
|
97
|
+
const reasoning = state.thinkingLevel;
|
|
98
98
|
const context = {
|
|
99
99
|
systemPrompt: state.systemPrompt,
|
|
100
100
|
messages: state.messages.slice(),
|
|
@@ -19,18 +19,6 @@ export interface ToolExecutionApprovalGrants {
|
|
|
19
19
|
filesystem?: ApprovedFilesystemAccessGrant[];
|
|
20
20
|
shell?: ApprovedShellAccessGrant[];
|
|
21
21
|
}
|
|
22
|
-
export interface SubagentSpawnGrant {
|
|
23
|
-
/**
|
|
24
|
-
* Approved task spawns become full headless workers.
|
|
25
|
-
*
|
|
26
|
-
* This is intentionally all-or-nothing: once a task launch is allowed, the
|
|
27
|
-
* child receives a full-worker policy derived from its declared tool set
|
|
28
|
-
* rather than a per-capability partial widening.
|
|
29
|
-
*/
|
|
30
|
-
fullWorker: true;
|
|
31
|
-
/** One-shot launch-mode override chosen in the task-spawn approval prompt. */
|
|
32
|
-
runInBackground?: boolean;
|
|
33
|
-
}
|
|
34
22
|
/** Stream function - can return sync or Promise for async config lookup */
|
|
35
23
|
export type StreamFn = (...args: Parameters<typeof streamSimple>) => ReturnType<typeof streamSimple> | Promise<ReturnType<typeof streamSimple>>;
|
|
36
24
|
/**
|
|
@@ -114,7 +102,7 @@ export interface AgentLoopConfig extends SimpleStreamOptions {
|
|
|
114
102
|
/**
|
|
115
103
|
* Thinking/reasoning level for models that support it.
|
|
116
104
|
*/
|
|
117
|
-
export type ThinkingLevel = 'off' | 'minimal' | 'low' | 'medium' | 'high' | 'xhigh';
|
|
105
|
+
export type ThinkingLevel = 'off' | 'minimal' | 'low' | 'medium' | 'high' | 'xhigh' | 'max';
|
|
118
106
|
/**
|
|
119
107
|
* Module-augmentation hook for custom app messages.
|
|
120
108
|
* See `core/custom-messages.ts` for the built-in augmentation.
|
|
@@ -216,14 +204,6 @@ export interface ToolExecutionContext {
|
|
|
216
204
|
sessionState?: SessionState;
|
|
217
205
|
permissionPolicy?: RuntimePermissionPolicy;
|
|
218
206
|
approvalGrants?: ToolExecutionApprovalGrants;
|
|
219
|
-
/**
|
|
220
|
-
* One-shot approval context for a single task-tool spawn.
|
|
221
|
-
*
|
|
222
|
-
* Unlike filesystem/shell approvalGrants, this does not authorize repeated
|
|
223
|
-
* child launches. It only marks the current task invocation as approved to
|
|
224
|
-
* launch a full-worker child session.
|
|
225
|
-
*/
|
|
226
|
-
subagentSpawnGrant?: SubagentSpawnGrant;
|
|
227
207
|
/** Wrap long-running awaitables so UI sees op_start/tick/op_end. Optional in tests. */
|
|
228
208
|
heartbeatWrap?: <T>(promise: Promise<T>, kind: InFlightOpKind, meta?: InFlightMeta) => Promise<T>;
|
|
229
209
|
}
|
package/dist/core/defaults.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import type { ThinkingLevel } from './core-types.js';
|
|
5
5
|
/** All recognized thinking levels, ordered from least to most reasoning. */
|
|
6
|
-
export declare const VALID_THINKING_LEVELS: readonly ["off", "minimal", "low", "medium", "high", "xhigh"];
|
|
6
|
+
export declare const VALID_THINKING_LEVELS: readonly ["off", "minimal", "low", "medium", "high", "xhigh", "max"];
|
|
7
7
|
/** Type guard: returns true if the string is a valid {@link ThinkingLevel}. */
|
|
8
8
|
export declare function isValidThinkingLevel(level: string): level is ThinkingLevel;
|
|
9
9
|
export declare const DEFAULT_THINKING_LEVEL: ThinkingLevel;
|
package/dist/core/defaults.js
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
/** All recognized thinking levels, ordered from least to most reasoning. */
|
|
2
|
-
export const VALID_THINKING_LEVELS = [
|
|
2
|
+
export const VALID_THINKING_LEVELS = [
|
|
3
|
+
'off',
|
|
4
|
+
'minimal',
|
|
5
|
+
'low',
|
|
6
|
+
'medium',
|
|
7
|
+
'high',
|
|
8
|
+
'xhigh',
|
|
9
|
+
'max'
|
|
10
|
+
];
|
|
3
11
|
/** Type guard: returns true if the string is a valid {@link ThinkingLevel}. */
|
|
4
12
|
export function isValidThinkingLevel(level) {
|
|
5
13
|
return VALID_THINKING_LEVELS.includes(level);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Shared agent-guideline prompt text — the single source of truth for the
|
|
3
|
-
*
|
|
3
|
+
* task-execution and communication guidance used by
|
|
4
4
|
* BOTH the CLI agent (`app/prompts/shared-guidelines.ts`) and the embedded
|
|
5
5
|
* agent (`embedded-agent/prompt/sections.ts`).
|
|
6
6
|
*
|
|
@@ -10,9 +10,8 @@
|
|
|
10
10
|
* references, sandbox layout, font defaults, etc.) stay in each surface's own
|
|
11
11
|
* prompt module and are composed around these constants.
|
|
12
12
|
*/
|
|
13
|
-
export declare const
|
|
14
|
-
export declare const
|
|
15
|
-
export declare const COMMUNICATION = "\n======================\n## TONE AND STYLE\n======================\n- Be clear and direct. Give enough context that the user understands what's happening and why. A sentence or two is usually right, more if the task is complex\n- NEVER include code in responses. Describe intentions briefly per turn. After completing tasks, stop \u2014 don't explain what you did\n- No emojis unless requested. Avoid filler phrases like \"Here is...\" or \"Based on...\". Be proactive when taking actions, but answer questions directly without jumping to action\n- Reference cells/ranges frequently using Sheet!Range or Sheet!Cell format (e.g., \"Summary!A1:B10\", \"Data!C5\") \u2014 this renders as a clickable reference and tells users exactly where to look";
|
|
13
|
+
export declare const TASK_EXECUTION = "\n======================\n## TASK EXECUTION\n======================\n### Exploration\n\nYou are an excel expert. But raw spreadsheet ability is not the bottleneck anymore, it is gathering adequate context\n\nCode or formulas written too early look like progress but are actually premature commitment.\nThey hide assumptions inside details that seem complete. Then implementation starts, and you discover the workbook uses different conventions, different signs, layouts, or logic \u2014 and now you're fighting the model instead of following it.\nAdequately Explore the workbook first.\n\n### Resolving Ambiguity\n- Deliver what the user asked for, at the scope they intended. Interpret ambiguity the way a careful colleague would: make routine judgment calls yourself, but check in when different readings would lead to materially different work.\n- If you conclude the ask is mistaken, cannot be completed, or a better approach exists, stop and tell the user. Do not quietly narrow, widen, or transform the task.\n- Record every material ambiguity you resolved without asking, including the interpretation chosen and a brief rationale in a decision-log.md file and tell the user where the record was written at the end.\n\n### When to Push Back\n\nYou are an operational and modeling partner, not a formula monkey. Be opinionated and direct.\n\n- When a user asks for a patch on top of broken logic, don't blindly apply it. Call out the root cause. Explain what's actually wrong. Propose the real fix. A band-aid on a broken model makes things worse.\n- When you find one broken formula pattern, don't just fix that one cell. Ask: what is the full affected range or category? Whack-a-mole is infinite. Systematic coverage is finite.\n- Propose the clean solution and explain the cost of not doing it. A duplicate assumption, one-off hardcode, or parallel calculation path will rot.\n\n### When to plan\n- Plan mode is for read-only exploration, clarifying requirements, and drafting an implementation plan. \n- Use plan mode for user frustration, ambiguous asks, subjective asks, vague repair requests, or complex workbook changes. It produces a plan markdown file in /tmp/.\n- Do not switch to plan mode when recent messages already establish the work or the user just approved a course of action.\n\n### When to use autonomous skill\n- For substantial tasks (>30 minutes of human analyst work, ie data extractions, modeling, more than 2-3 phases, lots of decisions), bias toward the autonomous skill workflow.\n\n### Verification\n- Verification means every important behavior is checked.\n- Clean boundaries mean every part of the model has a clear role, with assumptions, calculations, and outputs separated cleanly enough to understand and validate in isolation.\n- Start tasks by defining the checks on a separate workbook sheet or in a checklist.md in the filesystem that prove the workbook behavior is correct. Once done, the implementation writes itself.\n";
|
|
14
|
+
export declare const COMMUNICATION = "\n======================\n## TONE AND STYLE\n======================\n- Keep responses focused, brief, and concise to avoid overwhelming the person. Disclaimers and caveats should be brief, with most of the response on the main answer. \n- When asked to explain something, give a high-level summary unless an in-depth one is specifically requested.\n- NEVER include code in responses. Describe intentions briefly per turn. After completing tasks, stop \u2014 don't explain what you did\n- No emojis unless requested. Be proactive when taking actions, but answer questions directly without jumping to action\n- Reference cells/ranges frequently using Sheet!Range or Sheet!Cell format (e.g., \"Summary!A1:B10\", \"Data!C5\") \u2014 this renders as a clickable reference and tells users exactly where to look";
|
|
16
15
|
export declare const DATA_FORMATTING = "======================\n## \uD83D\uDCCA DATA FORMATTING\n======================\n**IMPORTANT**: Do NOT apply new formatting unless specified. Match existing formatting and inspect surrounding data for consistency. Every tab must be visually consistent -\n consistent colors, fonts, number formats, and header styles throughout. DO NOT overwrite cells unless explicitly requested.\n\nModel Integrity:\n- Every spreadsheet is a live model. Inputs \u2192 assumptions \u2192 calculations \u2192 outputs. When ANY input changes, every dependent cell must update automatically through formula linkage \u2014 no manual intervention.\n- Single source of truth: each constant lives in exactly one cell, referenced everywhere else.\n- Organize inputs in a dedicated section or sheet (e.g., \"Assumptions\" tab). Do NOT create named ranges unless explicitly requested.\n- Never hardcode numbers in formulas: every number traces back to a labeled input cell. When extracting from sources (PDFs, images, files), extract each value ONCE into an input cell, then reference that cell everywhere else. Never pull the same value from a source twice.\n- Formulas should be simple and auditable. Reference cells by position, not by searching for them \u2014 you already know where the data is.\n- If formulas must be complex, still use formulas -- never resort to hardcodes or value insertions. You can first compute internally or via Python, but always use formulas on the sheet itself.\n- For scenario analysis, sensitivity testing, auditing, debugging, or tasks that benefit from a scratch workbook file in the sandbox, use the simulation task agent. Save the live workbook first, then give the returned path to the simulation agent.\n\nColor Standards:\n- Blue: inputs/assumptions | Black: formulas | Green: cross-sheet refs | Red: external refs\n- Use subtle styling (borders, bold, light greys/blues). Avoid vibrant colors - they're unprofessional\n\nCell Formatting:\n- Use uniform font size across all cells (detect existing size or default to 12pt Aptos Narrow). Only vary size for headers/titles.\n- Prefer 10pt or larger for readability.\n- Standardize number formats, use brackets for negatives\n- Use cell number formats (0.0%, #,##0.0) for display precision. Never embed ROUND() in formulas for display purposes -- unless the user explicitly asks for it\n- For currency, always use a pre-defined format type (accounting, banking) if it exists\n- Bold titles/sums, include units/currency symbols\n- Label historical vs projected data clearly\n- Hide gridlines for financial models\n- Prefer manual sizing over autofit. Autofit sizes to the longest cell content, which produces uneven, unprofessional column widths across a model.\n- Use consistent widths within sections (e.g., all quarterly data columns the same width, all label columns the same width).\n\nOrganization:\n- Start at B2 (top-left padding), not A1\n- Use 1px borders within models, thicker for section breaks\n- Indent parent/child hierarchies, avoid merging cells\n- Name worksheets clearly (e.g., \"Assumptions\", not \"Sheet1\")";
|
|
17
|
-
export declare const WRITING_CODE = "======================\n## \uD83D\uDD27 WRITING CODE\n======================\
|
|
16
|
+
export declare const WRITING_CODE = "======================\n## \uD83D\uDD27 WRITING CODE\n======================\nYou can write code that interacts with the excel workbook based on the below API. Execute code as many times as needed before returning the final answer.\n\n*CRITICAL PRINCIPLES FOR WRITING ONTO THE SPREADSHEET*\n- IMPORTANT: Use bulk range writes over cell-by-cell loops. For example, use the Worksheet API's autoFill method.\n- If you loop over individual cells, loop over numeric indices. Looping over letters (e.g. incrementing column letters) does not work reliably.\n- Do not overwrite existing data, especially existing user-filled data, unless explicitly requested.\n- Pay special attention to positive/negative values and decimal conventions. For example, if adjacent tax values are negative, then tax values that you fill in should be negative. They are generally found in column labels like '(+) Tax' or '(-) Depreciation'.\n- Sign conventions: When linking data, signs often must flip. Understand source and destination conventions to confirm the expected sign before writing.\n\n*STRUCTURAL OPERATIONS*\nInserting or deleting rows/columns are inherently dangerous because they shift the entire sheet. Addresses you have memorized previously may now be wrong.\nThe spreadsheet engine auto-adjusts formulas for references inside affected ranges, but not always correctly for edge cases (ranges ending at the insertion point, cross-sheet refs, etc.).\nFor structural changes, you MUST do the following:\n- Consider whether to get dependents of modified cells to map downstream effects.\n- Do the structural change (adding / deleting rows or columns) and NOTHING ELSE in that code block.\n- In a new code execution, read the affected cells to see what auto-adjusted. Never assume you know what the formulas look like now \u2014 your pre-insertion row/column numbers are STALE.\n- Error check the workbook to catch any errors (especially #REF) the structural change introduced.\n- Only then write corrections, using actual current state you just read \u2014 not your mental model of what shifted.\n\n*PREFER NATIVE FUNCTIONALITY*\n- ALWAYS prefer native spreadsheet functionality (pivot tables, tables, data validation, charts, conditional formatting, etc.) over programmatically writing values / formulas / styles for dynamic updates.\n- If any request can be naturally solved with pivot tables or pivot analysis, ALWAYS do that instead of programmatically writing values and formulas.";
|
|
18
17
|
//# sourceMappingURL=agent-guidelines.d.ts.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Shared agent-guideline prompt text — the single source of truth for the
|
|
3
|
-
*
|
|
3
|
+
* task-execution and communication guidance used by
|
|
4
4
|
* BOTH the CLI agent (`app/prompts/shared-guidelines.ts`) and the embedded
|
|
5
5
|
* agent (`embedded-agent/prompt/sections.ts`).
|
|
6
6
|
*
|
|
@@ -10,37 +10,22 @@
|
|
|
10
10
|
* references, sandbox layout, font defaults, etc.) stay in each surface's own
|
|
11
11
|
* prompt module and are composed around these constants.
|
|
12
12
|
*/
|
|
13
|
-
export const
|
|
13
|
+
export const TASK_EXECUTION = `
|
|
14
14
|
======================
|
|
15
|
-
##
|
|
15
|
+
## TASK EXECUTION
|
|
16
16
|
======================
|
|
17
|
-
You are an excel expert. But raw spreadsheet ability is not the bottleneck anymore, it is gathering adequate context and verification
|
|
18
|
-
|
|
19
17
|
### Exploration
|
|
20
18
|
|
|
21
|
-
|
|
22
|
-
They hide assumptions inside details that seem complete. Then implementation starts, and you discover the workbook uses different conventions, different signs, layouts, or logic — and now you're fighting the model instead of following it.
|
|
23
|
-
The implementation is cheap. Finding the right model design is expensive.
|
|
24
|
-
Plans should do the expensive work first: researching the workbook, surfacing unknowns, defining contracts, and deciding how to verify success.
|
|
25
|
-
|
|
26
|
-
Explore the workbook first, then define the contract — don't write prematurely. Adequate exploration specifies:
|
|
27
|
-
- Workbook context — which sheets, ranges, formulas, and conventions are involved
|
|
28
|
-
- Contracts and interfaces — what are the inputs, outputs, and expected behaviors?
|
|
29
|
-
- Failure modes — what can go wrong and how would it show up in the model?
|
|
30
|
-
- Open questions — what decisions are blocked on information you don't have yet?
|
|
31
|
-
- Success criteria — what checks would prove this works?
|
|
32
|
-
|
|
33
|
-
### Verification
|
|
19
|
+
You are an excel expert. But raw spreadsheet ability is not the bottleneck anymore, it is gathering adequate context
|
|
34
20
|
|
|
35
|
-
|
|
36
|
-
|
|
21
|
+
Code or formulas written too early look like progress but are actually premature commitment.
|
|
22
|
+
They hide assumptions inside details that seem complete. Then implementation starts, and you discover the workbook uses different conventions, different signs, layouts, or logic — and now you're fighting the model instead of following it.
|
|
23
|
+
Adequately Explore the workbook first.
|
|
37
24
|
|
|
38
|
-
|
|
39
|
-
-
|
|
40
|
-
-
|
|
41
|
-
-
|
|
42
|
-
- Make the change
|
|
43
|
-
- Re-read the affected cells, formulas, and downstream outputs until the workbook is verified. For large changes, spawn independent review agents to check your work and catch mistakes you missed. If you find mistakes, fix them and re-verify until clean.
|
|
25
|
+
### Resolving Ambiguity
|
|
26
|
+
- Deliver what the user asked for, at the scope they intended. Interpret ambiguity the way a careful colleague would: make routine judgment calls yourself, but check in when different readings would lead to materially different work.
|
|
27
|
+
- If you conclude the ask is mistaken, cannot be completed, or a better approach exists, stop and tell the user. Do not quietly narrow, widen, or transform the task.
|
|
28
|
+
- Record every material ambiguity you resolved without asking, including the interpretation chosen and a brief rationale in a decision-log.md file and tell the user where the record was written at the end.
|
|
44
29
|
|
|
45
30
|
### When to Push Back
|
|
46
31
|
|
|
@@ -48,26 +33,29 @@ You are an operational and modeling partner, not a formula monkey. Be opinionate
|
|
|
48
33
|
|
|
49
34
|
- When a user asks for a patch on top of broken logic, don't blindly apply it. Call out the root cause. Explain what's actually wrong. Propose the real fix. A band-aid on a broken model makes things worse.
|
|
50
35
|
- When you find one broken formula pattern, don't just fix that one cell. Ask: what is the full affected range or category? Whack-a-mole is infinite. Systematic coverage is finite.
|
|
51
|
-
- Propose the clean solution and explain the cost of not doing it. A duplicate assumption, one-off hardcode, or parallel calculation path will rot
|
|
52
|
-
export const TASK_EXECUTION = `
|
|
53
|
-
======================
|
|
54
|
-
## TASK EXECUTION
|
|
55
|
-
======================
|
|
56
|
-
Plan mode is for read-only exploration, clarifying requirements, and drafting an implementation plan. It produces a plan markdown file in /tmp/.
|
|
57
|
-
Use plan mode for user frustration, ambiguous asks, subjective asks, vague repair requests, or complex workbook changes. Do not switch to plan mode when recent messages already establish the work or the user just approved a course of action.
|
|
36
|
+
- Propose the clean solution and explain the cost of not doing it. A duplicate assumption, one-off hardcode, or parallel calculation path will rot.
|
|
58
37
|
|
|
59
|
-
|
|
60
|
-
-
|
|
61
|
-
-
|
|
38
|
+
### When to plan
|
|
39
|
+
- Plan mode is for read-only exploration, clarifying requirements, and drafting an implementation plan.
|
|
40
|
+
- Use plan mode for user frustration, ambiguous asks, subjective asks, vague repair requests, or complex workbook changes. It produces a plan markdown file in /tmp/.
|
|
41
|
+
- Do not switch to plan mode when recent messages already establish the work or the user just approved a course of action.
|
|
62
42
|
|
|
63
|
-
|
|
43
|
+
### When to use autonomous skill
|
|
44
|
+
- For substantial tasks (>30 minutes of human analyst work, ie data extractions, modeling, more than 2-3 phases, lots of decisions), bias toward the autonomous skill workflow.
|
|
45
|
+
|
|
46
|
+
### Verification
|
|
47
|
+
- Verification means every important behavior is checked.
|
|
48
|
+
- Clean boundaries mean every part of the model has a clear role, with assumptions, calculations, and outputs separated cleanly enough to understand and validate in isolation.
|
|
49
|
+
- Start tasks by defining the checks on a separate workbook sheet or in a checklist.md in the filesystem that prove the workbook behavior is correct. Once done, the implementation writes itself.
|
|
50
|
+
`;
|
|
64
51
|
export const COMMUNICATION = `
|
|
65
52
|
======================
|
|
66
53
|
## TONE AND STYLE
|
|
67
54
|
======================
|
|
68
|
-
-
|
|
55
|
+
- Keep responses focused, brief, and concise to avoid overwhelming the person. Disclaimers and caveats should be brief, with most of the response on the main answer.
|
|
56
|
+
- When asked to explain something, give a high-level summary unless an in-depth one is specifically requested.
|
|
69
57
|
- NEVER include code in responses. Describe intentions briefly per turn. After completing tasks, stop — don't explain what you did
|
|
70
|
-
- No emojis unless requested.
|
|
58
|
+
- No emojis unless requested. Be proactive when taking actions, but answer questions directly without jumping to action
|
|
71
59
|
- Reference cells/ranges frequently using Sheet!Range or Sheet!Cell format (e.g., "Summary!A1:B10", "Data!C5") — this renders as a clickable reference and tells users exactly where to look`;
|
|
72
60
|
export const DATA_FORMATTING = `\
|
|
73
61
|
======================
|
|
@@ -110,9 +98,7 @@ export const WRITING_CODE = `\
|
|
|
110
98
|
======================
|
|
111
99
|
## 🔧 WRITING CODE
|
|
112
100
|
======================
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
You can write Typescript code that interacts with the excel workbook based on the below API. Execute code as many times as needed before returning the final answer.
|
|
101
|
+
You can write code that interacts with the excel workbook based on the below API. Execute code as many times as needed before returning the final answer.
|
|
116
102
|
|
|
117
103
|
*CRITICAL PRINCIPLES FOR WRITING ONTO THE SPREADSHEET*
|
|
118
104
|
- IMPORTANT: Use bulk range writes over cell-by-cell loops. For example, use the Worksheet API's autoFill method.
|
|
@@ -115,7 +115,7 @@ export interface LlmCallEntry extends SessionEntryBase {
|
|
|
115
115
|
type: 'llm_call';
|
|
116
116
|
requestId: string;
|
|
117
117
|
body: {
|
|
118
|
-
effort_level?: 'low' | 'medium' | 'high' | 'max';
|
|
118
|
+
effort_level?: 'low' | 'medium' | 'high' | 'xhigh' | 'max';
|
|
119
119
|
max_tokens?: number;
|
|
120
120
|
messages: readonly {
|
|
121
121
|
content: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Api, AssistantMessage, Model } from '../ai/types.js';
|
|
2
|
-
import { type
|
|
2
|
+
import { type ShortcutXLModelInvokeResponse } from '../contracts/model-call.js';
|
|
3
3
|
import type { ShortcutXLAiInvokeOptions, ShortcutXLAiModelInvokeRequest } from '../contracts/wire.js';
|
|
4
4
|
import type { InvokeLlmParams } from './host-tools/invoke-llm/contract.js';
|
|
5
5
|
export declare function createShortcutXLAiModelInvokeRequestFromParams(options: {
|
|
@@ -11,6 +11,5 @@ export declare function createShortcutXLAiModelInvokeRequestFromParams(options:
|
|
|
11
11
|
readonly speed?: ShortcutXLAiInvokeOptions['speed'];
|
|
12
12
|
readonly userMessageId?: string;
|
|
13
13
|
}): ShortcutXLAiModelInvokeRequest;
|
|
14
|
-
export declare function shortcutXLAiModelInvokeRequestToPayload(request: ShortcutXLAiModelInvokeRequest): ShortcutXLModelInvokePayload;
|
|
15
14
|
export declare function assistantMessageToShortcutXLInvokeResponse(message: AssistantMessage | undefined): ShortcutXLModelInvokeResponse;
|
|
16
15
|
//# sourceMappingURL=ai-invoke.d.ts.map
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ShortcutXLProviderUsageStatus } from '../contracts/model-call.js';
|
|
2
|
-
import { aiContentToShortcutProxyContent } from './ai-content.js';
|
|
3
2
|
function toStructuredCloneSafe(value, seen = new WeakSet()) {
|
|
4
3
|
if (value === null ||
|
|
5
4
|
typeof value === 'string' ||
|
|
@@ -68,7 +67,7 @@ export function createShortcutXLAiModelInvokeRequestFromParams(options) {
|
|
|
68
67
|
maxTokens: params.max_tokens,
|
|
69
68
|
model: params.model,
|
|
70
69
|
thinkingType: params.thinking_type,
|
|
71
|
-
toolChoice: params.tool_choice
|
|
70
|
+
toolChoice: params.tool_choice ? { name: params.tool_choice.name } : undefined
|
|
72
71
|
}, options.baseModel),
|
|
73
72
|
options: {
|
|
74
73
|
...(options.continuationRunId ? { continuationRunId: options.continuationRunId } : {}),
|
|
@@ -77,79 +76,12 @@ export function createShortcutXLAiModelInvokeRequestFromParams(options) {
|
|
|
77
76
|
...(options.requestType ? { requestType: options.requestType } : {}),
|
|
78
77
|
...(options.speed !== undefined ? { speed: options.speed } : {}),
|
|
79
78
|
...(params.thinking_type ? { thinkingType: params.thinking_type } : {}),
|
|
80
|
-
...(params.tool_choice ? { toolChoice: params.tool_choice } : {}),
|
|
79
|
+
...(params.tool_choice ? { toolChoice: { name: params.tool_choice.name } } : {}),
|
|
81
80
|
...(options.userMessageId ? { userMessageId: options.userMessageId } : {})
|
|
82
81
|
},
|
|
83
82
|
requestId: options.requestId
|
|
84
83
|
});
|
|
85
84
|
}
|
|
86
|
-
function toolCallToShortcutProxyToolCall(toolCall) {
|
|
87
|
-
return {
|
|
88
|
-
arguments: JSON.stringify(toolCall.arguments ?? {}),
|
|
89
|
-
id: toolCall.id,
|
|
90
|
-
name: toolCall.name
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
export function shortcutXLAiModelInvokeRequestToPayload(request) {
|
|
94
|
-
const messages = [
|
|
95
|
-
...(request.context.systemPrompt
|
|
96
|
-
? [{ content: request.context.systemPrompt, role: 'system' }]
|
|
97
|
-
: [])
|
|
98
|
-
];
|
|
99
|
-
for (const message of request.context.messages) {
|
|
100
|
-
if (message.role === 'user') {
|
|
101
|
-
messages.push({
|
|
102
|
-
content: aiContentToShortcutProxyContent(message.content, request.model.id),
|
|
103
|
-
role: 'human'
|
|
104
|
-
});
|
|
105
|
-
continue;
|
|
106
|
-
}
|
|
107
|
-
if (message.role === 'assistant') {
|
|
108
|
-
const content = typeof message.content === 'string'
|
|
109
|
-
? message.content
|
|
110
|
-
: message.content
|
|
111
|
-
.filter((block) => block.type === 'text')
|
|
112
|
-
.map((block) => block.text)
|
|
113
|
-
.join('');
|
|
114
|
-
const toolCalls = typeof message.content === 'string'
|
|
115
|
-
? undefined
|
|
116
|
-
: message.content
|
|
117
|
-
.filter((block) => block.type === 'toolCall')
|
|
118
|
-
.map(toolCallToShortcutProxyToolCall);
|
|
119
|
-
messages.push({
|
|
120
|
-
content,
|
|
121
|
-
role: 'ai',
|
|
122
|
-
...(toolCalls && toolCalls.length > 0 ? { toolCalls } : {})
|
|
123
|
-
});
|
|
124
|
-
continue;
|
|
125
|
-
}
|
|
126
|
-
if (message.role === 'toolResult') {
|
|
127
|
-
messages.push({
|
|
128
|
-
content: aiContentToShortcutProxyContent(message.content, request.model.id),
|
|
129
|
-
role: 'tool',
|
|
130
|
-
toolCallId: message.toolCallId
|
|
131
|
-
});
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
return {
|
|
135
|
-
effortLevel: request.options?.reasoning === 'low' ||
|
|
136
|
-
request.options?.reasoning === 'medium' ||
|
|
137
|
-
request.options?.reasoning === 'high'
|
|
138
|
-
? request.options.reasoning
|
|
139
|
-
: undefined,
|
|
140
|
-
maxTokens: request.options?.maxTokens,
|
|
141
|
-
messages,
|
|
142
|
-
model: request.model.id,
|
|
143
|
-
speed: request.options?.speed,
|
|
144
|
-
thinkingType: request.options?.thinkingType,
|
|
145
|
-
toolChoice: typeof request.options?.toolChoice === 'object' ? request.options.toolChoice : undefined,
|
|
146
|
-
tools: request.context.tools?.map((tool) => ({
|
|
147
|
-
description: tool.description,
|
|
148
|
-
name: tool.name,
|
|
149
|
-
parameters: tool.parameters
|
|
150
|
-
}))
|
|
151
|
-
};
|
|
152
|
-
}
|
|
153
85
|
export function assistantMessageToShortcutXLInvokeResponse(message) {
|
|
154
86
|
if (!message) {
|
|
155
87
|
return { usageStatus: ShortcutXLProviderUsageStatus.Unavailable };
|
|
@@ -2,35 +2,19 @@ import type { AssistantMessageEvent, Usage } from '../ai/types.js';
|
|
|
2
2
|
import { type ShortcutXLModelInvokeResponse, type ShortcutXLModelUsage } from '../contracts/model-call.js';
|
|
3
3
|
import { type ShortcutXLModelStreamEvent } from '../contracts/model-stream.js';
|
|
4
4
|
import type { ShortcutXLAiModelInvokeRequest, ShortcutXLAiModelStreamRequest } from '../contracts/wire.js';
|
|
5
|
-
import type
|
|
5
|
+
import { type ProviderGatewayOptions, type ShortcutXLModelUsageStatusLogger } from './provider-native-request.js';
|
|
6
6
|
import type { RunShortcutXLModelStreamRequestOptions } from './stream.js';
|
|
7
|
-
export interface
|
|
8
|
-
readonly headerName: 'Authorization' | 'x-api-key';
|
|
9
|
-
readonly token: string;
|
|
10
|
-
}
|
|
11
|
-
export interface CreateAnthropicMessagesModelStreamTransportOptions {
|
|
12
|
-
readonly auth: AnthropicMessagesGatewayAuth;
|
|
13
|
-
readonly baseUrl: string;
|
|
14
|
-
readonly fetchImpl?: typeof fetch;
|
|
15
|
-
readonly fetchOptions?: RequestInit;
|
|
16
|
-
readonly headers?: Readonly<Record<string, string | null>>;
|
|
7
|
+
export interface AnthropicMessagesTransportOptions extends ProviderGatewayOptions {
|
|
17
8
|
readonly usageStatusLogger?: ShortcutXLModelUsageStatusLogger;
|
|
18
9
|
}
|
|
19
10
|
export declare function toProviderUsageFromAi(usage: Usage | undefined): ShortcutXLModelUsage | undefined;
|
|
20
11
|
export declare function toShortcutXLModelStreamEvent(event: AssistantMessageEvent): ShortcutXLModelStreamEvent | undefined;
|
|
21
|
-
export declare function invokeAnthropicMessagesModel(request: ShortcutXLAiModelInvokeRequest, options: {
|
|
22
|
-
readonly auth: AnthropicMessagesGatewayAuth;
|
|
23
|
-
readonly baseUrl: string;
|
|
24
|
-
readonly fetchImpl?: typeof fetch;
|
|
25
|
-
readonly fetchOptions?: RequestInit;
|
|
26
|
-
readonly headers?: Readonly<Record<string, string>>;
|
|
12
|
+
export declare function invokeAnthropicMessagesModel(request: ShortcutXLAiModelInvokeRequest, options: AnthropicMessagesTransportOptions & {
|
|
27
13
|
readonly signal?: AbortSignal;
|
|
28
|
-
readonly usageStatusLogger?: ShortcutXLModelUsageStatusLogger;
|
|
29
14
|
readonly usageRequestId: string;
|
|
30
15
|
}): Promise<ShortcutXLModelInvokeResponse>;
|
|
31
|
-
export declare function streamAiAnthropicMessagesModelRequest(request: ShortcutXLAiModelStreamRequest, options:
|
|
16
|
+
export declare function streamAiAnthropicMessagesModelRequest(request: ShortcutXLAiModelStreamRequest, options: AnthropicMessagesTransportOptions & {
|
|
32
17
|
readonly onEvent: RunShortcutXLModelStreamRequestOptions['onEvent'];
|
|
33
18
|
readonly signal?: AbortSignal;
|
|
34
19
|
}): Promise<void>;
|
|
35
|
-
export declare function createAnthropicMessagesModelStreamTransport(options: CreateAnthropicMessagesModelStreamTransportOptions): ShortcutXLModelStreamTransport;
|
|
36
20
|
//# sourceMappingURL=anthropic-messages-transport.d.ts.map
|