@crewx/sdk 0.9.0-rc.17 → 0.9.0-rc.170
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/account/auth-client.d.ts +61 -0
- package/dist/account/auth-json-v2.d.ts +1 -0
- package/dist/account/auth-json.d.ts +30 -0
- package/dist/account/config.d.ts +37 -0
- package/dist/account/env-bootstrap.d.ts +11 -0
- package/dist/account/errors.d.ts +24 -0
- package/dist/account/index.d.ts +12 -0
- package/dist/account/index.js +2 -0
- package/dist/account/session-manager.d.ts +47 -0
- package/dist/activity-log/builder.d.ts +59 -6
- package/dist/agent/agent-list-view.d.ts +19 -0
- package/dist/agent-interceptor/chain.d.ts +25 -0
- package/dist/agent-interceptor/index.d.ts +6 -0
- package/dist/agent-interceptor/model-runner.d.ts +19 -0
- package/dist/agent-interceptor/program-runner.d.ts +13 -0
- package/dist/agent-interceptor/protocol.d.ts +68 -0
- package/dist/agent-interceptor/run-stop.d.ts +3 -0
- package/dist/agent-interceptor/schema.d.ts +267 -0
- package/dist/agent-interceptor/types.d.ts +88 -0
- package/dist/app/app.d.ts +167 -0
- package/dist/app/backend-env.d.ts +3 -0
- package/dist/app/content-media-types.d.ts +2 -0
- package/dist/app/context.d.ts +2 -0
- package/dist/app/entry.d.ts +9 -0
- package/dist/app/frame.d.ts +55 -0
- package/dist/app/index.d.ts +18 -0
- package/dist/app/index.js +12 -0
- package/dist/app/job-bridge.child.d.ts +1 -0
- package/dist/app/job-bridge.d.ts +67 -0
- package/dist/app/job-bridge.drain.child.d.ts +1 -0
- package/dist/app/job-bridge.example.d.ts +11 -0
- package/dist/app/job-contract.d.ts +40 -0
- package/dist/app/job-wire.d.ts +149 -0
- package/dist/app/protocol.d.ts +9 -0
- package/dist/app/runtime.d.ts +23 -0
- package/dist/app/schedule-contract.d.ts +59 -0
- package/dist/app/tool-mode.d.ts +3 -0
- package/dist/app-artifact-policy/check.d.ts +2 -0
- package/dist/app-artifact-policy/contract.d.ts +54 -0
- package/dist/app-artifact-policy/helper.d.ts +15 -0
- package/dist/app-artifact-policy/index.d.ts +3 -0
- package/dist/app-artifact-policy/index.js +18 -0
- package/dist/app-artifact-policy/paths.d.ts +24 -0
- package/dist/app-artifact-policy/scan.d.ts +47 -0
- package/dist/boxing/box.types.d.ts +4 -0
- package/dist/config/canonicalize-agent-options.d.ts +18 -0
- package/dist/config/default-agent-models.d.ts +11 -0
- package/dist/config/global-settings.d.ts +33 -0
- package/dist/config/migrate-grok-mode.d.ts +6 -0
- package/dist/config/model-compat.d.ts +31 -0
- package/dist/config/models.generated.d.ts +37 -0
- package/dist/config/models.remote.d.ts +1 -0
- package/dist/config/overdrive.d.ts +7 -0
- package/dist/config/pricing.d.ts +6 -3
- package/dist/config/pricing.generated.d.ts +4 -0
- package/dist/config/pricing.types.d.ts +4 -0
- package/dist/config/timeout.config.d.ts +4 -0
- package/dist/config/wi-boards.d.ts +19 -0
- package/dist/context-budget/continuity.d.ts +63 -0
- package/dist/context-budget/index.d.ts +142 -0
- package/dist/conversation/index.d.ts +1 -1
- package/dist/conversation/sqlite-provider.d.ts +6 -3
- package/dist/conversation/to-template-messages.d.ts +9 -0
- package/dist/conversation/types.d.ts +58 -1
- package/dist/desktop/command-runner.d.ts +4 -0
- package/dist/desktop/default-adapters.d.ts +4 -0
- package/dist/desktop/global-install.d.ts +19 -0
- package/dist/desktop/index.d.ts +3 -0
- package/dist/desktop/index.js +3 -0
- package/dist/desktop/install.d.ts +5 -0
- package/dist/desktop/lnk.d.ts +22 -0
- package/dist/desktop/manifest.d.ts +21 -0
- package/dist/desktop/types.d.ts +67 -0
- package/dist/desktop/version.d.ts +1 -0
- package/dist/desktop/windows-paths.d.ts +21 -0
- package/dist/desktop/wrapper.d.ts +18 -0
- package/dist/esm/account/index.js +2 -0
- package/dist/esm/app/index.js +12 -0
- package/dist/esm/app-artifact-policy/index.js +18 -0
- package/dist/esm/desktop/index.js +3 -0
- package/dist/esm/index.js +1175 -224
- package/dist/esm/node/index.js +2 -0
- package/dist/esm/plugins/index.js +527 -214
- package/dist/esm/process/index.js +1 -0
- package/dist/esm/publish/index.js +2 -0
- package/dist/esm/repository/index.js +648 -211
- package/dist/esm/skills/index.js +2 -0
- package/dist/esm/testing/index.js +1 -1
- package/dist/events/types.d.ts +28 -0
- package/dist/facade/Crewx.d.ts +70 -5
- package/dist/facade/task-ticket.d.ts +14 -0
- package/dist/highlight/thread-highlight-prompt.d.ts +2 -0
- package/dist/highlight/thread-highlighter.d.ts +326 -0
- package/dist/index.browser.d.ts +25 -1
- package/dist/index.browser.js +6 -2
- package/dist/index.d.ts +157 -17
- package/dist/index.js +1175 -224
- package/dist/internal/console-decoder.d.ts +38 -0
- package/dist/internal/windows-spawn.d.ts +10 -0
- package/dist/layout/types.d.ts +18 -1
- package/dist/lifecycle/process-lease.d.ts +80 -0
- package/dist/lifecycle/process-owner.d.ts +20 -0
- package/dist/lifecycle/task-heartbeat.d.ts +41 -0
- package/dist/lifecycle/task-stop.d.ts +82 -0
- package/dist/lifecycle/update-admission.d.ts +45 -0
- package/dist/local-server/base-url.d.ts +18 -0
- package/dist/local-server/index.d.ts +8 -0
- package/dist/local-server/opencode.d.ts +8 -0
- package/dist/local-server/probe.d.ts +3 -0
- package/dist/local-server/runtime.d.ts +26 -0
- package/dist/local-server/types.d.ts +43 -0
- package/dist/mcp-app/agent-access.d.ts +26 -0
- package/dist/mcp-app/app-handoff.d.ts +109 -0
- package/dist/mcp-app/app-icon-read.d.ts +7 -0
- package/dist/mcp-app/app-job-bridge.d.ts +30 -0
- package/dist/mcp-app/app-job-bridge.example.d.ts +36 -0
- package/dist/mcp-app/app-job.d.ts +168 -0
- package/dist/mcp-app/app-schedule.d.ts +85 -0
- package/dist/mcp-app/apps-context.d.ts +32 -0
- package/dist/mcp-app/bundle-provenance.d.ts +3 -0
- package/dist/mcp-app/candidate-registration.d.ts +4 -0
- package/dist/mcp-app/card-handler.d.ts +7 -0
- package/dist/mcp-app/catalog.d.ts +7 -0
- package/dist/mcp-app/content-channel.d.ts +86 -0
- package/dist/mcp-app/content-declarations.d.ts +31 -0
- package/dist/mcp-app/dev-checks.d.ts +31 -0
- package/dist/mcp-app/diagnostic-reason.d.ts +3 -0
- package/dist/mcp-app/discovery.d.ts +164 -0
- package/dist/mcp-app/errors.d.ts +7 -0
- package/dist/mcp-app/index.d.ts +45 -0
- package/dist/mcp-app/installed-app-ref.d.ts +25 -0
- package/dist/mcp-app/model-context.d.ts +29 -0
- package/dist/mcp-app/node-app-discovery-fs.d.ts +23 -0
- package/dist/mcp-app/product-bundle-assets.d.ts +27 -0
- package/dist/mcp-app/product-bundle-loader.d.ts +53 -0
- package/dist/mcp-app/projection.d.ts +14 -0
- package/dist/mcp-app/prompt-cards.d.ts +28 -0
- package/dist/mcp-app/registry.d.ts +28 -0
- package/dist/mcp-app/skill-backend.d.ts +141 -0
- package/dist/mcp-app/state-set.d.ts +9 -0
- package/dist/mcp-app/types.d.ts +488 -0
- package/dist/mcp-app/workspace-app-assets.d.ts +42 -0
- package/dist/mcp-app/workspace-app-scan-cache.d.ts +27 -0
- package/dist/mcp-app/workspace-snapshot.d.ts +75 -0
- package/dist/migrations/0011_far_black_tarantula.sql +1 -0
- package/dist/migrations/0012_blue_turbo.sql +23 -0
- package/dist/migrations/0013_hesitant_adam_destine.sql +15 -0
- package/dist/migrations/0014_organic_mongu.sql +73 -0
- package/dist/migrations/0015_panoramic_gorilla_man.sql +71 -0
- package/dist/migrations/0016_fuzzy_hemingway.sql +14 -0
- package/dist/migrations/0017_project_stage_sdk_migration.sql +29 -0
- package/dist/migrations/0018_bored_jackal.sql +33 -0
- package/dist/migrations/0019_backfill_task_thread_ids.sql +74 -0
- package/dist/migrations/0020_useful_iron_lad.sql +55 -0
- package/dist/migrations/0021_dashing_peter_quill.sql +51 -0
- package/dist/migrations/0022_wandering_bucky.sql +1 -0
- package/dist/migrations/0023_red_payback.sql +1 -0
- package/dist/migrations/0024_storage_metadata.sql +262 -0
- package/dist/migrations/0025_task_heartbeat.sql +8 -0
- package/dist/migrations/0025_thread_app_instance_ledger.sql +2 -0
- package/dist/migrations/0026_mcp_action_source.sql +47 -0
- package/dist/migrations/0027_task_stop_scope_cleanup.sql +5 -0
- package/dist/migrations/0027_ui_instance_active_unique.sql +2 -0
- package/dist/migrations/0029_nice_rhino.sql +1 -0
- package/dist/migrations/0031_petite_arclight.sql +6 -0
- package/dist/migrations/0032_ui_instance_opened_by.sql +1 -0
- package/dist/migrations/0033_thread_creator_boundary_guard.sql +38 -0
- package/dist/migrations/0034_keen_fallen_one.sql +36 -0
- package/dist/migrations/0035_request_log_daily.sql +11 -0
- package/dist/migrations/0036_ui_definition_archive.sql +8 -0
- package/dist/migrations/0037_ui_instance_agent_open_request.sql +1 -0
- package/dist/migrations/0038_task_rating.sql +3 -0
- package/dist/migrations/0039_aspiring_purifiers.sql +9 -0
- package/dist/migrations/0040_task_provider_inputs.sql +53 -0
- package/dist/migrations/0041_tranquil_vivisector.sql +54 -0
- package/dist/migrations/meta/0011_snapshot.json +1342 -0
- package/dist/migrations/meta/0012_snapshot.json +1494 -0
- package/dist/migrations/meta/0013_snapshot.json +1592 -0
- package/dist/migrations/meta/0014_snapshot.json +1975 -0
- package/dist/migrations/meta/0015_snapshot.json +2315 -0
- package/dist/migrations/meta/0016_snapshot.json +2419 -0
- package/dist/migrations/meta/0017_snapshot.json +2419 -0
- package/dist/migrations/meta/0018_snapshot.json +2570 -0
- package/dist/migrations/meta/0020_snapshot.json +2895 -0
- package/dist/migrations/meta/0021_snapshot.json +3031 -0
- package/dist/migrations/meta/0022_snapshot.json +3039 -0
- package/dist/migrations/meta/0023_snapshot.json +3047 -0
- package/dist/migrations/meta/0029_snapshot.json +3206 -0
- package/dist/migrations/meta/0031_snapshot.json +3251 -0
- package/dist/migrations/meta/0034_snapshot.json +3473 -0
- package/dist/migrations/meta/0035_snapshot.json +3547 -0
- package/dist/migrations/meta/0036_snapshot.json +3591 -0
- package/dist/migrations/meta/0037_snapshot.json +3598 -0
- package/dist/migrations/meta/0038_snapshot.json +3626 -0
- package/dist/migrations/meta/0039_snapshot.json +3684 -0
- package/dist/migrations/meta/0040_snapshot.json +3759 -0
- package/dist/migrations/meta/0041_snapshot.json +4156 -0
- package/dist/migrations/meta/_journal.json +217 -0
- package/dist/node/index.d.ts +1 -0
- package/dist/node/index.js +2 -0
- package/dist/paths.d.ts +1 -0
- package/dist/plugin/types.d.ts +1 -0
- package/dist/plugins/index.d.ts +1 -1
- package/dist/plugins/index.js +527 -214
- package/dist/plugins/sqlite-tracing.d.ts +46 -0
- package/dist/process/index.d.ts +2 -0
- package/dist/process/index.js +1 -0
- package/dist/process/process-control.d.ts +60 -0
- package/dist/prompt/tag-names.d.ts +22 -0
- package/dist/provider/acp/connection.d.ts +6 -0
- package/dist/provider/acp/meta.d.ts +11 -0
- package/dist/provider/bridge.d.ts +12 -2
- package/dist/provider/classify-task-error.d.ts +2 -0
- package/dist/provider/claude-agent-env.d.ts +1 -0
- package/dist/provider/cli/adapter.types.d.ts +23 -2
- package/dist/provider/cli/adapters/agent-call.util.d.ts +1 -1
- package/dist/provider/cli/adapters/cli-knob.util.d.ts +7 -0
- package/dist/provider/cli/adapters/codex-item.d.ts +1 -0
- package/dist/provider/cli/adapters/event-timestamp.util.d.ts +1 -0
- package/dist/provider/cli/adapters/grok.d.ts +2 -0
- package/dist/provider/cli/adapters/index.d.ts +5 -0
- package/dist/provider/cli/index.d.ts +3 -2
- package/dist/provider/cli/meta.d.ts +5 -0
- package/dist/provider/cli/protocol-envelope.d.ts +3 -0
- package/dist/provider/errors.d.ts +5 -1
- package/dist/provider/idle-watchdog.d.ts +19 -0
- package/dist/provider/models.d.ts +17 -12
- package/dist/provider/order.d.ts +1 -1
- package/dist/provider/parse-usage.d.ts +6 -0
- package/dist/provider/provider-selection.d.ts +8 -0
- package/dist/provider/redact-technical-message.d.ts +1 -0
- package/dist/provider/task-error.types.d.ts +17 -0
- package/dist/provider-account/accounts.d.ts +15 -0
- package/dist/provider-account/index.d.ts +5 -0
- package/dist/provider-account/registry.d.ts +30 -0
- package/dist/provider-account/types.d.ts +40 -0
- package/dist/publish/constants.d.ts +6 -0
- package/dist/publish/errors.d.ts +7 -0
- package/dist/publish/index.d.ts +55 -0
- package/dist/publish/index.js +2 -0
- package/dist/publish/manifest.d.ts +47 -0
- package/dist/publish/marketplace-api.constants.d.ts +1 -0
- package/dist/publish/pack.d.ts +6 -0
- package/dist/publish/scan.d.ts +10 -0
- package/dist/publish/secrets.d.ts +6 -0
- package/dist/publish/upload.d.ts +19 -0
- package/dist/remote/execution-profile.d.ts +9 -0
- package/dist/remote/index.d.ts +1 -0
- package/dist/remote/types.d.ts +28 -0
- package/dist/repository/agent-send-history.repository.d.ts +23 -0
- package/dist/repository/agent-suggestion.repository.d.ts +34 -0
- package/dist/repository/base-sqlite-repository.d.ts +1 -0
- package/dist/repository/common-code.repository.d.ts +45 -0
- package/dist/repository/db.d.ts +12 -1
- package/dist/repository/index.d.ts +53 -6
- package/dist/repository/index.js +648 -211
- package/dist/repository/logs-db.d.ts +12 -0
- package/dist/repository/notification.repository.d.ts +58 -0
- package/dist/repository/project.repository.d.ts +90 -0
- package/dist/repository/public-task-answer.d.ts +24 -0
- package/dist/repository/request-log-mover.d.ts +70 -0
- package/dist/repository/request-log.repository.d.ts +7 -3
- package/dist/repository/sidebar-tab.repository.d.ts +86 -0
- package/dist/repository/storage-metadata.repository.d.ts +64 -0
- package/dist/repository/task-log-migration.d.ts +74 -0
- package/dist/repository/task-log.repository.d.ts +44 -0
- package/dist/repository/task-status.d.ts +21 -0
- package/dist/repository/task.repository.d.ts +307 -8
- package/dist/repository/thread-history.repository.d.ts +193 -0
- package/dist/repository/thread-origin-verdict.d.ts +27 -0
- package/dist/repository/thread-title.types.d.ts +29 -0
- package/dist/repository/thread.repository.d.ts +134 -5
- package/dist/repository/usage-backfill.d.ts +62 -0
- package/dist/repository/usage-from-logs.d.ts +21 -0
- package/dist/repository/workspace.repository.d.ts +3 -0
- package/dist/schema/agent-send-history.d.ts +85 -0
- package/dist/schema/agent-suggestions.d.ts +199 -0
- package/dist/schema/common-codes.d.ts +216 -0
- package/dist/schema/index.d.ts +16 -0
- package/dist/schema/notifications.d.ts +303 -0
- package/dist/schema/projects.d.ts +610 -0
- package/dist/schema/request-log-daily.d.ts +151 -0
- package/dist/schema/sidebar-tabs.d.ts +466 -0
- package/dist/schema/storage-metadata.d.ts +181 -0
- package/dist/schema/task-log-events.d.ts +119 -0
- package/dist/schema/task-provider-inputs.d.ts +100 -0
- package/dist/schema/tasks.d.ts +1058 -1
- package/dist/schema/thread-creator-unverified.d.ts +45 -0
- package/dist/schema/thread-history.d.ts +734 -0
- package/dist/schema/threads.d.ts +59 -0
- package/dist/schema/ui-action-receipts.d.ts +358 -0
- package/dist/schema/ui-definition-archive.d.ts +63 -0
- package/dist/schema/ui-instance-repins.d.ts +222 -0
- package/dist/schema/ui-instances.d.ts +324 -0
- package/dist/schema/workspaces.d.ts +17 -0
- package/dist/skills/index.d.ts +15 -0
- package/dist/skills/index.js +2 -0
- package/dist/skills/types.d.ts +18 -0
- package/dist/task-log/anchor-child-tasks.d.ts +7 -0
- package/dist/task-log/delegation-trailer.d.ts +34 -0
- package/dist/template/engine.d.ts +2 -2
- package/dist/template/helpers/exec.browser.d.ts +4 -3
- package/dist/template/helpers/exec.d.ts +4 -3
- package/dist/template/helpers/format-conversation.d.ts +1 -0
- package/dist/template/types.d.ts +20 -0
- package/dist/testing/index.js +1 -1
- package/dist/types/index.d.ts +1611 -3
- package/dist/types/task-log.types.d.ts +6 -1
- package/dist/ui-card/index.d.ts +2 -0
- package/dist/ui-card/legacy-card-parser.d.ts +11 -0
- package/dist/ui-instance/definition.d.ts +6 -0
- package/dist/ui-instance/errors.d.ts +18 -0
- package/dist/ui-instance/index.d.ts +11 -0
- package/dist/ui-instance/json.d.ts +19 -0
- package/dist/ui-instance/lineage.d.ts +24 -0
- package/dist/ui-instance/runtime.d.ts +19 -0
- package/dist/ui-instance/store.d.ts +213 -0
- package/dist/ui-instance/types.d.ts +343 -0
- package/dist/ui-plugin/app-icon.d.ts +50 -0
- package/dist/ui-plugin/app-manifest.d.ts +64 -0
- package/dist/ui-plugin/csp.d.ts +28 -0
- package/dist/ui-plugin/index.d.ts +8 -0
- package/dist/ui-plugin/limits.d.ts +27 -0
- package/dist/ui-plugin/manifest.d.ts +3 -0
- package/dist/ui-plugin/types.d.ts +207 -0
- package/dist/ui-plugin/validator.d.ts +18 -0
- package/dist/utils/crewx-executable.d.ts +76 -0
- package/dist/utils/crewx-home.d.ts +1 -0
- package/dist/utils/env-defaults.d.ts +3 -0
- package/dist/utils/id.d.ts +1 -1
- package/dist/utils/local-identity.d.ts +2 -0
- package/dist/utils/runner-env.d.ts +3 -0
- package/dist/utils/timestamp.d.ts +1 -0
- package/dist/utils/workspace.d.ts +1 -0
- package/dist/wi/create.d.ts +48 -0
- package/dist/wi/select.d.ts +20 -0
- package/package.json +63 -3
- package/templates/agents/default.yaml +303 -128
- package/templates/documents/crewx-manual.md +138 -138
- package/templates/documents/crewx-quick-guide.md +8 -7
- package/templates/workflows/wi-default-flow.yaml +65 -0
- package/templates/workflows/wi-plan-flow.yaml +140 -0
package/dist/index.browser.js
CHANGED
|
@@ -1,2 +1,6 @@
|
|
|
1
|
-
import {load}from'js-yaml';import {z as z$1}from'zod';var
|
|
2
|
-
`);
|
|
1
|
+
import {load}from'js-yaml';import'js-tiktoken';import'js-tiktoken/lite';import Xn from'js-tiktoken/ranks/o200k_base';import {z as z$1}from'zod';var I=class extends Error{constructor(n,t){let r=t.length>0?` Available: ${t.join(", ")}`:"";super(`Agent not found: "${n}".${r}`),this.name="AgentNotFoundError";}},Tn={claude:{id:"claude",provider:"cli/claude"},copilot:{id:"copilot",provider:"cli/copilot"},codex:{id:"codex",provider:"cli/codex"}};function X(e,n){let t=e.startsWith("@")?e.slice(1):e,r=n.find(i=>i.id===t);if(r)return r;let o=Tn[t];if(o)return o;throw new I(e,n.map(i=>i.id))}var m=class extends Error{constructor(t,r,o){super(t);this.providerStr=r;this.name="ProviderError",this.code=o?.code??"UNKNOWN",this.kind=o?.kind??(this.code==="UNKNOWN"?"transient":void 0),this.retryAfterMs=o?.retryAfterMs;}providerStr;code;kind;retryAfterMs;stdout};var we=new Map;function Y(e,n){we.set(e,n);}function N(e){let n=e.split("/");if(n.length!==2)throw new m(`Invalid provider format: "${e}". Expected namespace/id (e.g., api/webllm)`,e);let[t,r]=n,o=we.get(t);if(o)return o(r,e);throw new m(`Unsupported provider namespace: "${t}". Register a factory with registerProviderFactory('${t}', factory).`,e)}var En=new Function("u","return import(u)"),K=class e{_agents;_config;_tools=new Map;_apiProviders=new Map;constructor(n,t){this._agents=new Map(n.map(r=>[r.id,r])),this._config=t;}static async fromConfig(n,t){let r=new e(n.agents??[],n),o=n.agents??[],i=p=>Array.isArray(p.provider)?p.provider[0]:p.provider,a=o.filter(p=>i(p)==="api/webllm"),s=o.filter(p=>i(p)==="api/openrouter");if(a.length>0&&await r._initWebLLM(a,t?.onProgress),s.length>0){if(!t?.openrouterApiKey)throw new Error("openrouterApiKey is required when using api/openrouter provider");r._initOpenRouter(s,t.openrouterApiKey);}return r._apiProviders.size>0&&Y("api",(p,l)=>{let c=r._apiProviders.get(p);if(!c)throw new m(`Unknown api provider: ${p}`,l);return c}),r}async _initWebLLM(n,t){if(typeof navigator>"u"||!navigator.gpu)throw new Error("WebGPU is not available. Chrome 113+ or Edge 113+ required.");let r=await En("https://esm.run/@mlc-ai/web-llm"),o=n[0]?.inline?.model??"gemma-2-2b-it-q4f16_1-MLC",i=await r.CreateMLCEngine(o,{initProgressCallback:t?s=>t(s):void 0}),a=[];this._apiProviders.set("webllm",{async query(s,p){let l=[];p?.systemPrompt&&l.push({role:"system",content:p.systemPrompt}),l.push(...a),l.push({role:"user",content:s});let c="",A=await i.chat.completions.create({messages:l,stream:true,temperature:.7,max_tokens:4096});for await(let _ of A){let f=_.choices?.[0]?.delta?.content??"";c+=f,p?.onOutput&&p.onOutput(c,"stdout");}return a.push({role:"user",content:s}),a.push({role:"assistant",content:c}),c},async execute(s,p){return this.query(s,p)}});}_initOpenRouter(n,t){let r=n[0]?.inline?.model??"google/gemma-2-2b-it",o=[];this._apiProviders.set("openrouter",{async query(i,a){let s=[];a?.systemPrompt&&s.push({role:"system",content:a.systemPrompt}),s.push(...o),s.push({role:"user",content:i});let p=await fetch("https://openrouter.ai/api/v1/chat/completions",{method:"POST",headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"},body:JSON.stringify({model:a?.model||r,messages:s,stream:true})});if(!p.ok){let f=await p.text();throw new Error(`OpenRouter API error (${p.status}): ${f}`)}let l=p.body.getReader(),c=new TextDecoder,A="",_="";for(;;){let{done:f,value:W}=await l.read();if(f)break;_+=c.decode(W,{stream:true});let Re=_.split(`
|
|
2
|
+
`);_=Re.pop();for(let _n of Re){let $=_n.trim();if(!$||!$.startsWith("data: "))continue;let Me=$.slice(6);if(Me!=="[DONE]")try{let Se=JSON.parse(Me).choices?.[0]?.delta?.content??"";A+=Se,Se&&a?.onOutput&&a.onOutput(A,"stdout");}catch{}}}return o.push({role:"user",content:i}),o.push({role:"assistant",content:A}),A},async execute(i,a){return this.query(i,a)}});}get agents(){return this._agents}get config(){return this._config}get tools(){return this._tools}registerTool(n,t){this._tools.set(n,{name:n,...t});}async query(n,t,r){let o=Date.now(),i;try{i=X(n,Array.from(this._agents.values()));}catch(f){if(f instanceof I)return {ok:false,data:"",error:{code:"AGENT_NOT_FOUND",message:f.message},meta:{agentId:n.replace(/^@/,""),provider:"",durationMs:Date.now()-o}};throw f}let a=Array.isArray(i.provider)?i.provider[0]??"api/default":i.provider,s=r?.provider??a,p=r?.model??i.inline?.model,l=i.options,c=l&&typeof l=="object"&&!Array.isArray(l)?l.query:void 0,A=c&&typeof c=="object"&&!Array.isArray(c)&&typeof c.mode=="string"&&c.mode.trim()||void 0,_;try{_=N(s);}catch(f){return {ok:false,data:"",error:{code:"PROVIDER_ERROR",message:f.message,...f instanceof m?{providerCode:f.code}:{}},meta:{agentId:i.id,provider:s,model:p,durationMs:Date.now()-o}}}try{return {ok:!0,data:await _.query(t,{model:p,context:r?.context,systemPrompt:i.inline?.system_prompt??i.inline?.prompt,onOutput:r?.onOutput?W=>r.onOutput(W):void 0}),meta:{agentId:i.id,provider:s,model:p,durationMs:Date.now()-o}}}catch(f){return {ok:false,data:"",error:{code:"QUERY_FAILED",message:f.message,...f instanceof m?{providerCode:f.code}:{},...A?{mode:A}:{}},meta:{agentId:i.id,provider:s,model:p,durationMs:Date.now()-o}}}}async execute(n,t,r){let o=Date.now(),i;try{i=X(n,Array.from(this._agents.values()));}catch(c){if(c instanceof I)return {ok:false,data:"",error:{code:"AGENT_NOT_FOUND",message:c.message},meta:{agentId:n.replace(/^@/,""),provider:"",durationMs:Date.now()-o}};throw c}let a=Array.isArray(i.provider)?i.provider[0]??"api/default":i.provider,s=r?.provider??a,p=r?.model??i.inline?.model,l;try{l=N(s);}catch(c){return {ok:false,data:"",error:{code:"PROVIDER_ERROR",message:c.message,...c instanceof m?{providerCode:c.code}:{}},meta:{agentId:i.id,provider:s,model:p,durationMs:Date.now()-o}}}try{return {ok:!0,data:await l.execute(t,{model:p,context:r?.context,systemPrompt:i.inline?.system_prompt??i.inline?.prompt}),meta:{agentId:i.id,provider:s,model:p,durationMs:Date.now()-o}}}catch(c){return {ok:false,data:"",error:{code:"EXECUTE_FAILED",message:c.message,...c instanceof m?{providerCode:c.code}:{}},meta:{agentId:i.id,provider:s,model:p,durationMs:Date.now()-o}}}}};var g="[REDACTED]",ke="[PATH]";function Z(e){if(typeof e!="string")return;let n=e.trim();if(n)return n=n.replace(/^\s*at\s+[^\r\n]+(?:\r?\n|$)/gim,""),n=n.replace(/(^|[\r\n])\s*(?:authorization|proxy-authorization|x-api-key|x-goog-api-key|x-auth-token|cookie|set-cookie)\s*:\s*[^\r\n]*/gim,`$1[HTTP HEADER ${g}]`),n=xn(n),n=n.replace(/\b(?:Bearer|Basic)\s+[A-Za-z0-9._~+\-/]+=*/gi,`${g}`),n=n.replace(/\bsk-[A-Za-z0-9][A-Za-z0-9_-]*/g,g),n=n.replace(/\bghp_[A-Za-z0-9][A-Za-z0-9_-]*/g,g),n=n.replace(/\bxoxb-[A-Za-z0-9-]+/g,g),n=n.replace(/\bxoxp-[A-Za-z0-9-]+/g,g),n=n.replace(/\bAKIA[0-9A-Z]{12,}\b/g,g),n=n.replace(/\bgithub_pat_[A-Za-z0-9_]+/g,g),n=n.replace(/\bgho_[A-Za-z0-9_]+/g,g),n=n.replace(/\bAIza[A-Za-z0-9_-]{20,}\b/g,g),n=n.replace(/\beyJ[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\b/g,g),n=n.replace(/\b(?:authorization|api[_ -]?key|access[_ -]?token|auth[_ -]?token|refresh[_ -]?token|token|secret|password)\s*([:=])\s*["']?[^\s,;&"']+/gi,(t,r)=>`${g}${r}${g}`),n=n.replace(/([?&](?:api[_-]?key|access[_-]?token|token)=)[^&\s]+/gi,`$1${g}`),n=n.replace(/(?:\/(?:Users|home|private|var\/folders|tmp|workspace|workspaces|Volumes|opt|etc|srv|Applications)\/[^\s"'`),;]+)/g,ke),n=n.replace(/\b[A-Z]:\\(?:Users|home|Windows|Program Files|workspace|workspaces)\\[^\s"'`),;]*/gi,ke),n=n.replace(/[\r\n]{3,}/g,`
|
|
3
|
+
|
|
4
|
+
`).trim(),In(n,1024)||void 0}function In(e,n){let t=new TextEncoder;if(t.encode(e).byteLength<=n)return e;let r="",o=0;for(let i of e){let a=t.encode(i).byteLength;if(o+a>n)break;r+=i,o+=a;}return r}function xn(e){let n=/\b(?:request|response|http)?\s*body\s*[:=]\s*/gim,t="",r=0,o;for(;(o=n.exec(e))!==null;){if(o.index<r)continue;let i=o.index+o[0].length,a=Pn(e,i),s=a>=0?a:e.indexOf(`
|
|
5
|
+
`,i)>=0?e.indexOf(`
|
|
6
|
+
`,i):e.length;t+=e.slice(r,o.index),t+=`[HTTP BODY ${g}]`,r=s;}return t+e.slice(r)}function Pn(e,n){let t=e[n];if(t==='"'||t==="'")return Cn(e,n,t);if(t!=="{"&&t!=="[")return -1;let r=[],o,i=false;for(let a=n;a<e.length;a+=1){let s=e[a];if(o){i?i=false:s==="\\"?i=true:s===o&&(o=void 0);continue}if(s==='"'||s==="'"){o=s;continue}if(s==="{"||s==="["){r.push(s);continue}if(s!=="}"&&s!=="]")continue;let p=r.pop();if(s==="}"&&p!=="{"||s==="]"&&p!=="[")return -1;if(r.length===0)return a+1}return -1}function Cn(e,n,t){let r=false;for(let o=n+1;o<e.length;o+=1){let i=e[o];if(r)r=false;else if(i==="\\")r=true;else if(i===t)return o+1}return -1}var On=new Set(["USAGE_LIMITED","CONTEXT_WINDOW_EXCEEDED","INPUT_TOO_LARGE","MODEL_NOT_SUPPORTED","MODEL_AT_CAPACITY","AUTH_REQUIRED","CLI_NOT_AVAILABLE","CLI_UPDATE_REQUIRED","AGENT_NOT_FOUND","PERMISSION_OR_TRUST","TIMEOUT_OR_STUCK","NETWORK_OR_PROVIDER_TRANSIENT","PROVIDER_CONFIGURATION","AGENT_MODE_RESTRICTED","PROCESS_FAILED"]),bn=new Set(["plan","plan-auto","read-only"]),Rn={QUOTA_EXHAUSTED:"USAGE_LIMITED",RATE_LIMITED:"USAGE_LIMITED",AUTH_REQUIRED:"AUTH_REQUIRED",TIMEOUT_IDLE:"TIMEOUT_OR_STUCK",TIMEOUT_TOTAL:"TIMEOUT_OR_STUCK",TIMEOUT_RESUME:"NETWORK_OR_PROVIDER_TRANSIENT",PROVIDER_NOT_FOUND:"PROVIDER_CONFIGURATION",INVALID_PROVIDER_FORMAT:"PROVIDER_CONFIGURATION",PROVIDER_CRASHED:"PROCESS_FAILED",EMPTY_OUTPUT:"PROCESS_FAILED"},Mn=[{code:"USAGE_LIMITED",pattern:/(?:rate[ _-]?limit|quota|usage[ /_-]?limit|usage exhausted|too many requests|429\b)/i},{code:"CONTEXT_WINDOW_EXCEEDED",pattern:/context (?:window|length)|maximum context|context[_ -]?window[_ -]?exceeded|too many tokens/i},{code:"INPUT_TOO_LARGE",pattern:/input[_ -]?(?:is[_ -]?)?too[_ -]?large|prompt (?:is )?too (?:large|long)|request[_ -]?(?:is[_ -]?)?too[_ -]?large|payload[_ -]?(?:is[_ -]?)?too[_ -]?large|maximum input/i},{code:"MODEL_AT_CAPACITY",pattern:/(?:model|service|provider).*(?:at capacity|overloaded|temporarily busy)|at capacity|overloaded/i},{code:"MODEL_NOT_SUPPORTED",pattern:/(?:model|invalid_request_error).*(?:not[ _-]?supported|unsupported|does[ _-]?not[ _-]?exist|not[ _-]?found|invalid)|model[_-]?not[_-]?(?:found|supported)/i},{code:"MODEL_NOT_SUPPORTED",pattern:/\bunrecognized_model\b/i},{code:"AUTH_REQUIRED",pattern:/(?:401\b|unauthori[sz]ed|not logged in|login required|sign[ -]?in required|api key (?:is )?(?:missing|invalid|required)|authentication required)/i},{code:"CLI_UPDATE_REQUIRED",pattern:/(?:requires? a newer version|update (?:your )?cli|cli version.*(?:old|outdated|unsupported)|version mismatch)/i},{code:"CLI_NOT_AVAILABLE",pattern:/(?:ENOENT|command not found|executable.*not found|cli.*(?:not installed|unavailable)|is .* installed\?)/i},{code:"AGENT_NOT_FOUND",pattern:/agent[_ -]?not[_ -]?found|unknown agent/i},{code:"PERMISSION_OR_TRUST",pattern:/(?:permission denied|operation not permitted|workspace trust|not trusted|access denied|EACCES|EPERM)/i},{code:"NETWORK_OR_PROVIDER_TRANSIENT",pattern:/(?:resume failed|failed .*resum(?:e|ing)|after resuming the session|재개 실패|세션 재개)/i},{code:"TIMEOUT_OR_STUCK",pattern:/(?:timeout|timed out|took too long|stuck|idle timeout|ETIMEDOUT)/i},{code:"NETWORK_OR_PROVIDER_TRANSIENT",pattern:/(?:network (?:unreachable|error)|connection (?:reset|refused|closed)|ECONN(?:RESET|REFUSED|ABORTED)|service unavailable|upstream.*(?:5\d\d|error)|provider.*(?:5\d\d|unavailable|down)|\b5\d\d\b)/i},{code:"PROVIDER_CONFIGURATION",pattern:/(?:invalid provider|unsupported provider|provider namespace|provider configuration|provider config|missing provider)/i}];function Sn(e){try{if(!T(e)||e.status!=="failed")return Q();let n=wn(e.error);if(te(n.message))return Q();let t=y(e.providerId)??n.provider??null,r=vn(e.logs),o=De(n.code);if(o)return R(o,t,n.message,n);let i=U(n.providerCode)??U(n.code),a=i?ne(i,n.message,{exitCode:Hn(e.exitCode),mode:n.mode,fromProviderCodeField:!!n.providerCode}):void 0;if(a)return R(a,t,n.message,n,i);let s=Dn(r);if(!kn(n)&&s&&(s.type==="user_stop"||te(s.message)))return Q();if(s){let l=Nn(s.code,s.providerCode,s.message);if(l)return R(l,t,s.message??n.message,n,s.providerCode??s.code,s,s.structuredFailure?"terminal":"envelope")}let p=Un(n.message,r);return p?R(p.code,t,p.message,n,p.terminal?.providerCode??p.terminal?.code,p.terminal,p.terminal?.structuredFailure?"terminal":"envelope"):R("PROCESS_FAILED",t,n.message,n)}catch{return {errorCode:"PROCESS_FAILED",errorProvider:null}}}function Q(){return {errorCode:null,errorProvider:null}}function R(e,n,t,r,o,i,a="envelope"){let s={};if(i?.resetAt!==void 0&&(s.resetAt=i.resetAt),r?.model&&(s.model=r.model),r?.mode&&(s.mode=r.mode),i?.type&&(s.upstreamType=i.type),o&&(s.upstreamCode=o),e==="CLI_NOT_AVAILABLE"||e==="CLI_UPDATE_REQUIRED"){let A=n?.startsWith("cli/")?n.slice(4):void 0;A&&(s.cliName=A);}let p=a==="terminal"?t:r?.message,l=a==="terminal"?i?.structuredFailure?p:void 0:r?.isEnvelope?p:void 0,c=Z(l);return c&&(s.technicalMessage=c),Object.keys(s).length>0?{errorCode:e,errorProvider:n,errorMeta:s}:{errorCode:e,errorProvider:n}}function wn(e){let n=typeof e=="string"?P(e):e;return T(n)?{isEnvelope:true,code:y(n.code),providerCode:y(n.providerCode),message:y(n.message)??y(n.error),provider:y(n.provider)??y(n.errorProvider),model:y(n.model),mode:y(n.mode)}:{isEnvelope:false,...typeof e=="string"&&e.trim()?{message:e.trim()}:{}}}function P(e){try{return JSON.parse(e)}catch{return}}function kn(e){return !!(e.code||e.providerCode||e.message)}function vn(e){let n=[];if(typeof e=="string"){let t=P(e);if(Array.isArray(t))n.push(...t);else for(let r of e.split(/\r?\n/)){let o=P(r.trim());o!==void 0&&n.push(o);}}else Array.isArray(e)?n.push(...e):T(e)&&n.push(e);return n.flatMap(x)}function x(e){if(!T(e))return [];let n=y(e.type),t=y(e.message);if(t&&!n){let o=P(t);if(Array.isArray(o))return o.flatMap(x);if(T(o))return x(o);let i=t.split(/\r?\n/).map(a=>P(a.trim())).filter(a=>T(a));return i.length>0?i.flatMap(x):e.level==="stderr"?[{type:"stderr",message:t,rank:1,structuredFailure:false}]:x({type:"info",content:t})}if(n==="rate_limit_event"){let o=ve(e.rate_limit_info);return y(o?.status)!=="rejected"?[]:[{type:n,code:"RATE_LIMITED",message:M(o?.message,e.message),resetAt:Bn(o?.resetsAt),rank:4,structuredFailure:true}]}if(n==="turn.failed"||n==="error"){let o=ve(e.error),i=M(o?.message,o?.detail,e.message,e.errorMessage,e.content),a=M(o?.code,e.code,e.errorCode);return [{type:n,code:a,providerCode:M(o?.providerCode,e.providerCode),message:i,rank:n==="turn.failed"?3:2,structuredFailure:true}]}if(n==="text"&&typeof e.content=="string"){let o=P(e.content);if(T(o))return x(o)}let r=M(e.errorMessage,e.content);return r&&te(r)?[{type:"user_stop",message:r,rank:1,structuredFailure:false}]:r&&/(?:turn\.failed|type:error)/i.test(r)?[{type:r.match(/turn\.failed/i)?"turn.failed":"error",message:r,rank:3,structuredFailure:false}]:[]}function Dn(e){return [...e].sort((n,t)=>t.rank-n.rank)[0]}function Nn(e,n,t){let r=De(e);if(r)return r;if(e){let o=ne(e,t);if(o)return o}if(n){let o=ne(n,t);if(o)return o}return ee(t)}function Un(e,n){let t=ee(e);if(t)return {code:t,message:e};for(let r of [...n].sort((o,i)=>i.rank-o.rank)){let o=ee(r.message);if(o)return {code:o,message:r.message,terminal:r}}}function ee(e){if(!(typeof e!="string"||!e.trim()))return Mn.find(n=>n.pattern.test(e))?.code}function ne(e,n,t){let r=U(e)??e;if(r==="MODEL_UNAVAILABLE")return /(?:capacity|overloaded|busy)/i.test(n??"")?"MODEL_AT_CAPACITY":"MODEL_NOT_SUPPORTED";if(r==="EMPTY_OUTPUT"&&t?.fromProviderCodeField===true&&t.exitCode===0&&Ln(t.mode))return "AGENT_MODE_RESTRICTED";if(r!=="UNKNOWN")return Rn[r]}function De(e){let n=U(e);return n&&On.has(n)?n:void 0}function U(e){return typeof e=="string"&&e.trim()?e.trim().toUpperCase():void 0}function Ln(e){return typeof e=="string"&&bn.has(e.trim().toLowerCase())}function te(e){return e?/\b(?:stopped|killed|aborted|cancelled|canceled)\s+by\s+user\b/i.test(e)||/사용자에 의해 중지됨/.test(e)||/\b(?:SIGTERM\s+143|143\s+SIGTERM)\b/i.test(e):false}function T(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ve(e){return T(e)?e:void 0}function y(e){return typeof e=="string"&&e.trim()?e.trim():void 0}function Bn(e){return typeof e=="string"||typeof e=="number"&&Number.isFinite(e)?e:void 0}function Hn(e){return typeof e=="number"&&Number.isInteger(e)?e:void 0}function M(...e){return e.map(y).find(n=>!!n)}var jn=["none","minimal","low","medium","high","xhigh","max","ultra"],Gn={claude:["low","medium","high","xhigh","max"],codex:["none","minimal","low","medium","high","xhigh","max","ultra"],opencode:[],copilot:["none","low","medium","high","xhigh","max"],antigravity:["low","medium","high"],grok:["low","medium","high","xhigh"]};var L={claude:{models:[{id:"claude-fable-5-1",name:"Claude Fable 5.1",contextWindowTokens:1e6,tier:"flagship",recommended:true},{id:"claude-fable-5",name:"Claude Fable 5",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-opus-5-5",name:"Claude Opus 5.5",contextWindowTokens:1e6,tier:"flagship",recommended:true},{id:"claude-opus-5",name:"Claude Opus 5",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-sonnet-5-5",name:"Claude Sonnet 5.5",contextWindowTokens:1e6,tier:"balanced",recommended:true},{id:"claude-sonnet-5",name:"Claude Sonnet 5",contextWindowTokens:1e6,tier:"balanced"},{id:"claude-opus-4-8[1m]",name:"Claude Opus 4.8",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-opus-4-7[1m]",name:"Claude Opus 4.7",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-opus-4-6[1m]",name:"Claude Opus 4.6",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-sonnet-4-6[1m]",name:"Claude Sonnet 4.6",contextWindowTokens:1e6,tier:"balanced"},{id:"claude-haiku-5-5",name:"Claude Haiku 5.5",contextWindowTokens:1e6,tier:"speed"},{id:"claude-haiku-4-5",name:"Claude Haiku 4.5",contextWindowTokens:2e5,tier:"speed"}],modes:[{id:"default",name:"Default",description:"Uses Claude's default permission handling with normal approval prompts."},{id:"acceptEdits",name:"Accept Edits",description:"Allows file edits without approval; other permission checks remain in place."},{id:"plan",name:"Plan",description:"Keeps Claude in plan mode so it can inspect and propose changes without applying them."},{id:"dontAsk",name:"Don't Ask",description:"Does not ask for permissions; only pre-approved tool actions can proceed."},{id:"bypassPermissions",name:"Bypass Permissions",description:"Bypasses Claude permission checks so tools can run without approval prompts."}],effort:["low","medium","high"],modelOverrides:{"claude-fable-5-1":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-fable-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-opus-5-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"medium"},"claude-opus-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-sonnet-5-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-sonnet-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-opus-4-8[1m]":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-opus-4-7[1m]":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-opus-4-6[1m]":{effort:["low","medium","high","max"],defaultEffort:"high"},"claude-sonnet-4-6[1m]":{effort:["low","medium","high","max"],defaultEffort:"high"},"claude-haiku-5-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"medium"},"claude-haiku-4-5":{effort:[]}},providerOptions:[]},codex:{models:[{id:"gpt-6-astra",name:"GPT-6 Astra",contextWindowTokens:105e4,tier:"flagship"},{id:"gpt-6.1-sol",name:"GPT-6.1 Sol",contextWindowTokens:105e4,tier:"balanced",recommended:true},{id:"gpt-6-sol",name:"GPT-6 Sol",contextWindowTokens:105e4,tier:"balanced"},{id:"gpt-6-luna",name:"GPT-6 Luna",contextWindowTokens:105e4,tier:"speed",recommended:true},{id:"gpt-5.6-sol",name:"GPT-5.6 Sol",contextWindowTokens:105e4,tier:"flagship"},{id:"gpt-5.6-terra",name:"GPT-5.6 Terra",contextWindowTokens:105e4,tier:"balanced"},{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",contextWindowTokens:105e4,tier:"speed"}],modes:[{id:"agent",name:"Agent",description:"Uses the workspace-write sandbox; can read and modify workspace files without full machine access."},{id:"read-only",name:"Read Only",description:"Uses the read-only sandbox; can inspect files but cannot write to the workspace."},{id:"plan",name:"Plan",description:"Uses the read-only sandbox for planning and inspection; cannot write to the workspace."},{id:"agent-full-access",name:"Agent Full Access",description:"Bypasses approvals and the sandbox; can access and modify files beyond the workspace."},{id:"yolo",name:"YOLO",description:"Bypasses approvals and the sandbox for unrestricted execution and full filesystem access."}],effort:["minimal","low","medium","high"],modelOverrides:{"gpt-6-astra":{effort:["low","medium","high","xhigh","max"],defaultEffort:"xhigh"},"gpt-6.1-sol":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"gpt-6-sol":{effort:["none","low","medium","high","xhigh","max"],defaultEffort:"max"},"gpt-6-luna":{effort:["none","low","medium","high","xhigh","max"],defaultEffort:"medium"},"gpt-5.6-sol":{effort:["low","medium","high","xhigh","max","ultra"],defaultEffort:"xhigh"},"gpt-5.6-terra":{effort:["low","medium","high","xhigh","max","ultra"],defaultEffort:"high"},"gpt-5.6-luna":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"gpt-5.5":{effort:["low","medium","high","xhigh"],defaultEffort:"high"}},providerOptions:[]},opencode:{models:[],modes:[{id:"plan",name:"Plan",description:"Uses the plan agent without --auto; planning follows standard approval behavior."},{id:"plan-auto",name:"Plan \xB7 Auto",description:"Uses the plan agent with --auto; planning uses automatic approvals."},{id:"build",name:"Build",description:"Uses the build agent without --auto; work follows standard approval behavior."},{id:"build-auto",name:"Build \xB7 Auto",description:"Uses the build agent with --auto; work uses automatic approvals."}],effort:[],modelOverrides:{},providerOptions:[]},copilot:{models:[{id:"auto",name:"Auto"},{id:"claude-sonnet-5",name:"Claude Sonnet 5",contextWindowTokens:1e6,tier:"balanced"}],modes:[{id:"interactive",name:"Interactive",description:"Passes --mode interactive; tool access follows Copilot's interactive mode behavior."},{id:"plan",name:"Plan",description:"Passes --mode plan; planning and permission behavior follow Copilot's plan mode."},{id:"autopilot",name:"Autopilot",description:"Passes --mode autopilot; execution behavior follows Copilot's autonomous mode."}],effort:["none","low","medium","high","xhigh","max"],modelOverrides:{},providerOptions:[]},antigravity:{models:[{id:"gemini-3.7-flash",name:"Gemini 3.7 Flash",contextWindowTokens:1048576,tier:"balanced"},{id:"gemini-3.6-flash",name:"Gemini 3.6 Flash",contextWindowTokens:1048576,tier:"balanced"},{id:"gemini-3.1-pro",name:"Gemini 3.1 Pro",contextWindowTokens:1048576,tier:"flagship"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindowTokens:1e6,tier:"balanced"},{id:"claude-opus-4-6-thinking",name:"Claude Opus 4.6 Thinking",contextWindowTokens:1e6,tier:"flagship"},{id:"gpt-oss-120b",name:"GPT-OSS 120B",contextWindowTokens:128e3,tier:"balanced"}],modes:[{id:"default",name:"Default",description:"Uses Antigravity's default permission handling. No extra permission flags are passed."},{id:"plan",name:"Plan",description:"Passes --mode plan. This turns on /plan; it is not a Claude-style permission mode."},{id:"acceptEdits",name:"Accept Edits",description:"Passes --mode accept-edits."},{id:"bypassPermissions",name:"Bypass Permissions",description:"Passes --dangerously-skip-permissions so tools can run without approval prompts."}],effort:["low","medium","high"],modelOverrides:{"gemini-3.7-flash":{effort:["low","medium","high"],defaultEffort:"medium"},"gemini-3.6-flash":{effort:["low","medium","high"],defaultEffort:"medium"},"gemini-3.5-flash":{effort:["low","medium","high"],defaultEffort:"medium"},"gemini-3.1-pro":{effort:["low","high"],defaultEffort:"high"},"claude-sonnet-4-6":{effort:[]},"claude-opus-4-6-thinking":{effort:[]},"gpt-oss-120b":{effort:["medium"],defaultEffort:"medium"}},providerOptions:[]},grok:{models:[{id:"grok-4.7",name:"Grok 4.7",contextWindowTokens:5e5,tier:"flagship",recommended:true},{id:"grok-4.6",name:"Grok 4.6",contextWindowTokens:5e5,tier:"flagship"},{id:"grok-4.5",name:"Grok 4.5",contextWindowTokens:5e5,tier:"flagship"}],modes:[{id:"default",name:"Default",description:"Uses Grok's default permission handling."},{id:"acceptEdits",name:"Accept Edits",description:"Allows file edits without changing the selected sandbox profile."},{id:"auto",name:"Auto",description:"Uses Grok automatic permission handling."},{id:"dontAsk",name:"Don't Ask",description:"Does not ask for permission before tool execution."},{id:"bypassPermissions",name:"Bypass Permissions",description:"Bypasses Grok permission checks for tool execution."},{id:"plan",name:"Plan",description:"Keeps Grok in planning mode without applying changes."}],effort:["low","medium","high"],modelOverrides:{"grok-4.7":{effort:["low","medium","high","xhigh"],defaultEffort:"high"},"grok-4.6":{effort:["low","medium","high","xhigh"],defaultEffort:"high"},"grok-4.5":{effort:["low","medium","high"],defaultEffort:"high"}},providerOptions:[{key:"alwaysApprove",type:"boolean"},{key:"sandbox",type:"enum",values:["workspace","read-only","off"]}]}},re={providers:{"cli/codex":{model:"gpt-6.1-sol",query:{mode:"agent",effort:"high"},execute:{mode:"agent-full-access",effort:"high"}},"cli/claude":{model:"claude-opus-5-5",query:{mode:"default",effort:"high"},execute:{mode:"bypassPermissions",effort:"xhigh"}},"cli/grok":{model:"grok-4.7",query:{mode:"default",effort:"high",providerOptions:{alwaysApprove:true,sandbox:"off"}},execute:{mode:"bypassPermissions",effort:"xhigh",providerOptions:{alwaysApprove:true,sandbox:"off"}}}}};Object.fromEntries(Object.entries(L).map(([e,n])=>[e,n.models]));var Vn="claude-opus-4-8",zn="claude-opus-4-8[1m]",Ne=[{baseModelId:"claude-opus-4-8",catalogModelId:"claude-opus-4-8[1m]"},{baseModelId:"claude-opus-4-7",catalogModelId:"claude-opus-4-7[1m]"},{baseModelId:"claude-opus-4-6",catalogModelId:"claude-opus-4-6[1m]"},{baseModelId:"claude-sonnet-4-6",catalogModelId:"claude-sonnet-4-6[1m]"}];var qn=new Map(Ne.map(({baseModelId:e,catalogModelId:n})=>[e,n]));function Ue(e){return qn.get(e)??e}var Le=[{legacyId:"Gemini 3.7 Flash (High)",model:"gemini-3.7-flash",effort:"high"},{legacyId:"Gemini 3.7 Flash (Medium)",model:"gemini-3.7-flash",effort:"medium"},{legacyId:"Gemini 3.7 Flash (Low)",model:"gemini-3.7-flash",effort:"low"},{legacyId:"Gemini 3.6 Flash (High)",model:"gemini-3.6-flash",effort:"high"},{legacyId:"Gemini 3.6 Flash (Medium)",model:"gemini-3.6-flash",effort:"medium"},{legacyId:"Gemini 3.6 Flash (Low)",model:"gemini-3.6-flash",effort:"low"},{legacyId:"Gemini 3.5 Flash (Medium)",model:"gemini-3.5-flash",effort:"medium"},{legacyId:"Gemini 3.5 Flash (High)",model:"gemini-3.5-flash",effort:"high"},{legacyId:"Gemini 3.5 Flash (Low)",model:"gemini-3.5-flash",effort:"low"},{legacyId:"Gemini 3.1 Pro (Low)",model:"gemini-3.1-pro",effort:"low"},{legacyId:"Gemini 3.1 Pro (High)",model:"gemini-3.1-pro",effort:"high"},{legacyId:"Claude Sonnet 4.6 (Thinking)",model:"claude-sonnet-4-6"},{legacyId:"Claude Opus 4.6 (Thinking)",model:"claude-opus-4-6-thinking"},{legacyId:"GPT-OSS 120B (Medium)",model:"gpt-oss-120b",effort:"medium"},{legacyId:"gemini-3.7-flash-high",model:"gemini-3.7-flash",effort:"high"},{legacyId:"gemini-3.7-flash-medium",model:"gemini-3.7-flash",effort:"medium"},{legacyId:"gemini-3.7-flash-low",model:"gemini-3.7-flash",effort:"low"},{legacyId:"gemini-3.6-flash-high",model:"gemini-3.6-flash",effort:"high"},{legacyId:"gemini-3.6-flash-medium",model:"gemini-3.6-flash",effort:"medium"},{legacyId:"gemini-3.6-flash-low",model:"gemini-3.6-flash",effort:"low"},{legacyId:"gemini-3.5-flash-high",model:"gemini-3.5-flash",effort:"high"},{legacyId:"gemini-3.5-flash-medium",model:"gemini-3.5-flash",effort:"medium"},{legacyId:"gemini-3.5-flash-low",model:"gemini-3.5-flash",effort:"low"},{legacyId:"gemini-3.1-pro-high",model:"gemini-3.1-pro",effort:"high"},{legacyId:"gemini-3.1-pro-low",model:"gemini-3.1-pro",effort:"low"},{legacyId:"gpt-oss-120b-medium",model:"gpt-oss-120b",effort:"medium"}],Wn=new Map(Le.map(({legacyId:e,model:n,effort:t})=>[e,t===void 0?{model:n}:{model:n,effort:t}]));function Be(e){if(!e)return {};let n=Wn.get(e);return n?{...n}:{model:e}}function oe(e,n){return e==="antigravity"||e==="cli/antigravity"?Be(n):n===void 0?{}:{model:Ue(n)}}var He=30,je=80;Object.keys(Xn.special_tokens);var Yn=z$1.object({model:z$1.string().optional(),system_prompt:z$1.string().optional(),prompt:z$1.string().optional(),layout:z$1.union([z$1.string(),z$1.object({id:z$1.string(),props:z$1.record(z$1.unknown()).optional()}),z$1.object({props:z$1.record(z$1.unknown())}),z$1.object({template:z$1.string(),capabilities:z$1.object({semanticContinuity:z$1.boolean().optional(),continuity:z$1.boolean().optional(),continuitySlot:z$1.string().optional(),slot:z$1.string().optional()}).optional()})]).optional()}).catchall(z$1.unknown()),Kn=z$1.object({include:z$1.array(z$1.string()).optional()}).optional(),Zn=z$1.object({id:z$1.string(),name:z$1.string().optional(),role:z$1.string().optional(),team:z$1.string().optional(),provider:z$1.union([z$1.string(),z$1.array(z$1.string())]),provider_account:z$1.string().min(1).optional(),working_directory:z$1.string().optional(),description:z$1.string().optional(),tags:z$1.array(z$1.string()).optional(),inline:Yn.optional(),skills:Kn,interceptors:z$1.unknown().optional()}).catchall(z$1.unknown());z$1.object({id:z$1.string(),name:z$1.string(),workflow_id:z$1.string(),description:z$1.string().optional(),goal_id:z$1.string().optional()});var Qn=z$1.number().finite().int().min(He).max(je),et=z$1.object({inputBudgetPercent:Qn.optional()}).catchall(z$1.unknown()),nt=z$1.object({continuity:et.optional()}).catchall(z$1.unknown()),tt=z$1.object({bin_resolution:z$1.enum(["global_first","local_first"]).optional(),dreaming:nt.optional(),wi:z$1.object({boards:z$1.array(z$1.unknown()).optional().catch(()=>{})}).catchall(z$1.unknown()).optional().catch(()=>{})}).catchall(z$1.unknown()),Ge=z$1.object({agents:z$1.array(Zn).optional(),hooks:z$1.array(z$1.unknown()).optional(),settings:tt.optional(),skills:z$1.unknown().optional(),layouts:z$1.record(z$1.unknown()).optional(),documents:z$1.record(z$1.unknown()).optional()}).catchall(z$1.unknown());var C=class extends Error{constructor(t,r){super(t);this.cause=r;this.name="ConfigLoadError";}cause};function ot(e){if(!e||typeof e!="string"||!e.trim())throw new C("YAML content must be a non-empty string");let n;try{n=load(e);}catch(o){throw new C(`YAML parse error: ${o.message}`,o)}let t=it(n),r=Ge.safeParse(t);if(!r.success)throw new C(`Config validation error: ${r.error.message}`);return r.data}function it(e){if(!e||typeof e!="object")return {agents:[]};let n=e;if(n.agents&&typeof n.agents=="object"&&!Array.isArray(n.agents)){let t=n.agents,r=Object.entries(t).map(([o,i])=>({id:o,...i&&typeof i=="object"?i:{}}));return {...n,agents:r}}return n.agents?n:{...n,agents:[]}}var st={auto:"default"};function at(e){return st[e]??e}var dt="crewx:fs:",ie=class{prefix;store;constructor(n){this.prefix=n?.prefix??dt,this.store=n?.storage??new Map;}async readFile(n){let t=this.toKey(n),r=this.store.get(t);if(r===void 0)throw new Error(`BrowserFsAdapter: file not found: ${n}`);return r}async exists(n){return this.store.has(this.toKey(n))}resolvePath(...n){let t=n.map(a=>a.replace(/\\/g,"/")).join("/").replace(/\/+/g,"/"),r=t.split("/"),o=[];for(let a of r)a==="."||a===""||(a===".."?o.pop():o.push(a));let i=o.join("/");return t.startsWith("/")?`/${i}`:i}isAbsolute(n){return n.startsWith("/")}setItem(n,t){this.store.set(this.toKey(n),t);}removeItem(n){this.store.delete(this.toKey(n));}keys(){return Array.from(this.store.keys()).filter(n=>n.startsWith(this.prefix)).map(n=>n.slice(this.prefix.length))}async readdir(n){let t=n.replace(/\\/g,"/").replace(/\/$/,""),r=this.toKey(t+"/"),o=[];for(let i of this.store.keys())if(i.startsWith(r)){let s=i.slice(r.length).split("/")[0];s&&!o.includes(s)&&o.push(s);}return o}toKey(n){return `${this.prefix}${n.replace(/\\/g,"/")}`}};var se=["codex","claude","grok","opencode","antigravity","copilot"];function pt(e){let n=e.indexOf("/");return n===-1?e:e.slice(n+1)}function ae(e){let n=pt(e),t=se.indexOf(n);return t===-1?se.length:t}function ct(e,n){return ae(e)-ae(n)}var lt=new Set(["claude","copilot","codex","grok","opencode"]);function ut(e){if(!e)return "";if(e.startsWith("acp/")){let n=e.slice(4);if(lt.has(n))return `cli/${n}`}return e}function B(e){return {mode:e.mode,effort:e.effort}}function ft(e){let n=re.providers[e];if(!n)return;let t=e.startsWith("cli/")?e.slice(4):e,r=L[t]?.models.find(a=>a.recommended===true&&a.tier==="balanced")?.id??n.model,o={query:B(n.query),execute:B(n.execute)},i={query:B(n.query),execute:B(n.execute)};return {planner:{model:n.model,...o},worker:{model:r,...i}}}var Fe=["urgent","high","medium","low"],Ve=["investigating","in-progress","in-review","on-hold","done"],S="custom:";var gt=new Set(Fe),mt=new Set(Ve),yt={urgent:"U \uAE34\uAE09 Urgent",high:"P0 \uAE09\uD568 High",medium:"P1 \uC911\uC694 Medium",low:"P2 \uBCF4\uD1B5 Low"},de={investigating:"\uC870\uC0AC\uC911 Looking into","in-progress":"\uC9C4\uD589\uC911 In progress","in-review":"\uAC80\uD1A0\uC911 In review","on-hold":"\uBCF4\uB958 On hold",done:"\uC644\uB8CC Done"};function Je(e,n){return !n||n.includes(e)?n??e:`${e} ${n}`}function pe(e){return typeof e=="string"&>.has(e)}function ce(e){if(typeof e!="string")return false;if(mt.has(e))return true;if(e.startsWith("c_"))return e.length>2;if(!e.startsWith(S))return false;let n=e.slice(S.length);return n.length>=1&&n.length<=20}function ze(e){if(e.startsWith(S))return e.slice(S.length)}function le(e){if(!e)return null;try{let n=JSON.parse(e);return !n||typeof n!="object"||Array.isArray(n)?null:n}catch{return null}}function At(e){let n=le(e);return !!n&&Object.prototype.hasOwnProperty.call(n,"threadTitle")}function qe(e){let n=le(e);if(!n)return {};let t=n.threadTitle;if(!t||typeof t!="object"||Array.isArray(t))return {};let r=t,o={};return pe(r.priority)&&(o.priority=r.priority),ce(r.state)&&(o.state=r.state),o}function ht(e,n){let t=le(e)??{},r={...qe(e)};return n.priority===null?delete r.priority:n.priority!==void 0&&(r.priority=n.priority),n.state===null?delete r.state:n.state!==void 0&&(r.state=n.state),r.priority===void 0&&r.state===void 0?delete t.threadTitle:t.threadTitle=r,Object.keys(t).length===0?null:JSON.stringify(t)}function _t(e,n=new Map){let t=[];return e.priority&&t.push(Je(yt[e.priority],n.get(e.priority))),e.state&&(e.state.startsWith(S)?t.push(ze(e.state)??""):de[e.state]?t.push(Je(de[e.state],n.get(e.state))):n.has(e.state)?t.push(e.state,n.get(e.state)??""):e.state.startsWith("c_")?t.push(e.state):t.push(de[e.state]??"")),t.filter(Boolean).join(" ")}function We(e,n){if(!e||e.trim().length===0)return;let t=new Set,r=false,o=false;for(let i of e.split(",")){let a=i.trim();if(a){if(a==="none"){r=true,o=true;continue}n(a)&&(t.add(a),o=true);}}if(o)return {values:t,includeNone:r}}function Tt(e){return We(e,pe)}function Et(e){return We(e,ce)}function It(e,n){return n?e?n.values.has(e):n.includeNone:true}var xt=["crewx_app_terminal_connect","crewx_app_html_viewer_open"];var ue=["text/plain","application/json"];var Pt=["__proto__","prototype","constructor","proof","token","secret","password","cookie","authorization","private_key","private-key","stack","exception","plugin_text","url","uri","endpoint","path","filename","filepath","cwd","shell","directory","dir","folder"];new Set(Pt);var $e=/^[A-Za-z][A-Za-z0-9._-]{0,127}$/;var Ct=/^uic_[A-Za-z0-9_-]+$/,Ot=/^[0-9a-f]{64}$/,h="MCP App content declarations are invalid";function k(e){return typeof e=="string"&&ue.includes(e)}function H(e){return typeof e=="string"&&e.length<=128&&Ct.test(e)}function bt(e,n){try{let t=n,r=w(t,"actions");if(!Ye(r))throw new Error(h);let o=[];for(let a of Object.keys(r)){let s=w(r,a);if(s===null||typeof s!="object"||Array.isArray(s))throw new Error(h);let p=Object.getOwnPropertyDescriptor(s,"content");if(p===void 0)continue;if(!Object.hasOwn(p,"value"))throw new Error(h);let l=Mt(p.value);o.push({actionId:a,...l});}if(o.length===0)return;o.sort((a,s)=>a.actionId<s.actionId?-1:a.actionId>s.actionId?1:0);let i={schemaVersion:1,instanceId:e,definition:{id:w(t,"id"),version:w(t,"version"),hash:w(t,"hash")},actions:o};if(!fe(i))throw new Error(h);for(let a of o)a.in!==void 0&&Object.freeze(a.in),a.out!==void 0&&Object.freeze(a.out),Object.freeze(a);return Object.freeze(o),Object.freeze(i.definition),Object.freeze(i)}catch{throw new Error(h)}}function fe(e){try{if(!j(e,["schemaVersion","instanceId","definition","actions"]))return !1;let n=e;if(n.schemaVersion!==1||!H(n.instanceId)||!kt(n.definition))return !1;let t=n.actions;if(!Lt(t)||t.length===0)return !1;let r;for(let o=0;o<t.length;o+=1){let i=t[o];if(!vt(i)||r!==void 0&&!(r<i.actionId))return !1;r=i.actionId;}return !0}catch{return false}}function Rt(e,n,t){return fe(e)?e.instanceId===n&&e.definition.id===t.id&&e.definition.version===t.version&&e.definition.hash===t.hash:false}function Mt(e){if(!v(e,["in","out"]))throw new Error(h);let n=e,t=Object.hasOwn(n,"in"),r=Object.hasOwn(n,"out");if(!t&&!r)throw new Error(h);return {...t?{in:St(n.in)}:{},...r?{out:wt(n.out)}:{}}}function St(e){if(!v(e,["mediaType","required"],["mediaType"]))throw new Error(h);let n=e,t=n.mediaType,r=Object.hasOwn(n,"required")?n.required:false;if(!k(t)||typeof r!="boolean")throw new Error(h);return {mediaType:t,required:r}}function wt(e){if(!v(e,["mediaType","range"],["mediaType"]))throw new Error(h);let n=e,t=n.mediaType,r=Object.hasOwn(n,"range")?n.range:false;if(!k(t)||typeof r!="boolean")throw new Error(h);return {mediaType:t,range:r}}function kt(e){if(!j(e,["id","version","hash"]))return false;let n=e;return Xe(n.id)&&Ut(n.version)&&typeof n.hash=="string"&&Ot.test(n.hash)}function vt(e){if(!v(e,["actionId","in","out"],["actionId"]))return false;let n=e,t=n.actionId,r=Object.hasOwn(n,"in"),o=Object.hasOwn(n,"out");return !(typeof t!="string"||!Xe(t)||!r&&!o||r&&!Dt(n.in)||o&&!Nt(n.out))}function Dt(e){if(!j(e,["mediaType","required"]))return false;let n=e;return k(n.mediaType)&&typeof n.required=="boolean"}function Nt(e){if(!j(e,["mediaType","range"]))return false;let n=e;return k(n.mediaType)&&typeof n.range=="boolean"}function Xe(e){return typeof e=="string"&&$e.test(e)}function Ut(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>0}function Lt(e){if(!Array.isArray(e))return false;let n=Reflect.ownKeys(e);if(n.length!==e.length+1||n[e.length]!=="length")return false;for(let t=0;t<e.length;t+=1){if(n[t]!==String(t))return false;let r=Object.getOwnPropertyDescriptor(e,String(t));if(r===void 0||!Object.hasOwn(r,"value"))return false}return true}function j(e,n){return v(e,n,n)}function v(e,n,t=[]){if(!Ye(e))return false;let r=Reflect.ownKeys(e);if(r.length>n.length||r.length<t.length)return false;for(let o of r){if(typeof o!="string"||!n.includes(o))return false;let i=Object.getOwnPropertyDescriptor(e,o);if(i===void 0||!Object.hasOwn(i,"value"))return false}return t.every(o=>Object.hasOwn(e,o))}function Ye(e){if(e===null||typeof e!="object"||Array.isArray(e))return false;let n=Object.getPrototypeOf(e);return n===Object.prototype||n===null}function w(e,n){if(e===null||typeof e!="object")return;let t=Object.getOwnPropertyDescriptor(e,n);return t!==void 0&&Object.hasOwn(t,"value")?t.value:void 0}var Ke=[5,15,30,60],ge=Object.freeze({min:15e3,max:6e5,default:3e5}),Bt=1;var Ht="exit 78",Ze=["standby","disabled","draining","degraded"],jt=["cron","cron_manual","app_enable"],Gt=/^[A-Z][A-Z0-9_]{0,63}$/u;function Jt(e){return typeof e=="string"&&Gt.test(e)}function Ft(e){return Ke.includes(e)}function Vt(e){return Number.isSafeInteger(e)&&e>=ge.min&&e<=ge.max}function zt(e){return Ze.includes(e)}var me=Object.freeze({min:6e4,max:18e5,default:6e5}),qt=1,Qe="crewx/appJobs",en=1,ye=["starting","running","stopping","finished"],Ae=["succeeded","failed","timed_out","cancelled","shutdown","interrupted"],he=["cancelled","timed_out","shutdown"],_e=["manual","schedule"],Wt=/^[a-z][a-z0-9_]{0,63}$/u,$t=/^[A-Z][A-Z0-9_]{0,63}$/u,nn=["start","status","cancel"],tn=["APP_JOB_NOT_DECLARED","APP_JOB_NOT_AUTHORIZED","APP_JOB_SELF_START","APP_JOB_OWNER_INVALID","APP_JOB_DEFINITION_INVALID","APP_JOB_DEFINITION_CHANGED","APP_JOB_DEADLINE_INVALID","APP_JOB_SHUTTING_DOWN","APP_JOB_OWNER_MISMATCH","APP_JOB_STALE_HANDLE","APP_JOB_NOT_ACTIVE","APP_JOB_NOT_GRANTED"],Xt="APP_JOB_RUN_REQUIRED";function Yt(e){return Number.isSafeInteger(e)&&e>=me.min&&e<=me.max}function Te(e){return typeof e=="string"&&$t.test(e)}function Ee(e){return typeof e=="string"&&Wt.test(e)}function rn(e){return nn.includes(e)}function Kt(e){return e?.some(({name:n,version:t})=>n===Qe&&t===en)===true}var Zt="CREWX_APP_JOB_CHANNEL",Qt=1,er=4096,nr=1e4,tr=5e3;var rr=/^[A-Za-z0-9._:-]{1,128}$/u,or=64,ir=2147483647;function sr(e){return e==="schedule"?"schedule":"manual"}function ar(e){return dr(e)}function dr(e){let n=dn(e)?e:void 0;if(n===void 0||!an(n,["handle","state","stopReason","trigger","outcome","phase","completed","total","resumable","lastHeartbeatAt","startedAt","finishedAt","errorCode","recoverable"],[]))return;let t=pr(n.handle),r=n.stopReason,o=n.outcome,i=n.phase,a=n.errorCode,s=n.recoverable;if(!(t===void 0||!ye.includes(n.state)||!(r===null||he.includes(r))||r!==null&&n.state!=="stopping"||!_e.includes(n.trigger)||!(o===null||Ae.includes(o))||!(i===null||Ee(i))||!(n.completed===null||on(n.completed))||!(n.total===null||on(n.total))||typeof n.resumable!="boolean"||!sn(n.lastHeartbeatAt)||!pn(n.startedAt)||!sn(n.finishedAt)||!(a===null||Te(a))||!(s===null||typeof s=="boolean")))return {handle:t,state:n.state,stopReason:r,trigger:n.trigger,outcome:o,phase:i,completed:n.completed,total:n.total,resumable:n.resumable,lastHeartbeatAt:n.lastHeartbeatAt,startedAt:n.startedAt,finishedAt:n.finishedAt,errorCode:a,recoverable:s}}function pr(e){if(!(!dn(e)||!an(e,["runId","generation"],[]))&&!(typeof e.runId!="string"||!rr.test(e.runId)||!cr(e.generation)))return {runId:e.runId,generation:e.generation}}function an(e,n,t){let r=new Set([...n,...t]);return Object.keys(e).every(o=>r.has(o))&&n.every(o=>Object.hasOwn(e,o))}function dn(e){if(e===null||typeof e!="object"||Array.isArray(e))return false;let n=Object.getPrototypeOf(e);return n===Object.prototype||n===null}function cr(e){return Number.isSafeInteger(e)&&e>=1&&e<=ir}function on(e){return Number.isSafeInteger(e)&&e>=0}function pn(e){return typeof e=="string"&&e.length>0&&e.length<=or}function sn(e){return e===null||pn(e)}var lr="crewx/openApp",xe=1,ur="ui/crewx-open-app",fr="ui/crewx-open-app-status",ln=32768,un=8,Pe=["opened","completed","pending"],Ce=["UI_APP_OPEN_INVALID","UI_APP_OPEN_UNAVAILABLE","UI_APP_OPEN_GESTURE_REQUIRED","UI_APP_OPEN_STALE","UI_APP_OPEN_BUSY","UI_APP_OPEN_REJECTED","UI_APP_OPEN_FAILED","UI_APP_OPEN_REQUEST_ID_CONFLICT"],Oe=["RECEIPT_FAILED","RECEIPT_REJECTED","RECEIPT_CONFLICTED","RECEIPT_EXPIRED","LEDGER_MISSING","LEDGER_EXPIRED"],J=class extends Error{constructor(t,r){super(t);this.errorCode=t;this.causeCode=r;}errorCode;causeCode;name="CrewxOpenAppError"},gr=/^[A-Za-z0-9-]{8,64}$/,mr=/^[A-Za-z0-9_-]{1,128}$/,F=/^[A-Za-z][A-Za-z0-9._-]{0,127}$/,yr=new TextEncoder,cn=/\p{Surrogate}/u,Ar=new Set(["__proto__","constructor","prototype"]);function u(){throw new J("UI_APP_OPEN_INVALID")}function D(e,n){return Object.prototype.hasOwnProperty.call(e,n)}function z(e){if(e===null||typeof e!="object"||Array.isArray(e))return false;let n=Object.getPrototypeOf(e);return n===Object.prototype||n===null}function E(e,n,t=[]){z(e)||u();let r=new Set([...n,...t]);for(let o of Object.keys(e))r.has(o)||u();for(let o of n)D(e,o)||u();return e}function V(e,n){return (typeof e!="string"||!n.test(e))&&u(),e}function q(e){return (typeof e!="string"||!gr.test(e))&&u(),e}function b(e){(typeof e!="string"||!mr.test(e))&&u();let n=e.indexOf("_");return (n<0||n===e.length-1)&&u(),q(e.slice(0,n)),e}function fn(e){return b(e).slice(0,e.indexOf("_"))}function gn(e){return H(e)||u(),e}function O(e,n){let t=n.find(r=>r===e);return t===void 0&&u(),t}function Ie(e,n){if(e===null)return "null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="number")return Number.isFinite(e)||u(),JSON.stringify(e);if(typeof e=="string")return cn.test(e)&&u(),JSON.stringify(e);if(n>un&&u(),Array.isArray(e)){let o=[];for(let i=0;i<e.length;i+=1)D(e,String(i))||u(),o.push(Ie(e[i],n+1));return `[${o.join(",")}]`}z(e)||u();let t=e;return `{${Object.keys(t).sort().map(o=>((Ar.has(o)||cn.test(o))&&u(),`${JSON.stringify(o)}:${Ie(t[o],n+1)}`)).join(",")}}`}function hr(e){let n=E(e,["requestId","appId"],["action"]),t=b(n.requestId),r=V(n.appId,F);if(!D(n,"action"))return {requestId:t,appId:r};let o=E(n.action,["actionId","input"]),i=o.input;return z(i)||u(),{requestId:t,appId:r,action:{actionId:V(o.actionId,F),input:i}}}function mn(e){return {version:xe,sessionId:q(e)}}function _r(e){let n=E(e,["version","sessionId"]);return n.version!==xe&&u(),mn(q(n.sessionId))}function Tr(e,n){return typeof n!="string"&&u(),b(`${q(e)}_${n}`)}function yn(e){let n=Ie(hr(e),1);return yr.encode(n).byteLength>ln&&u(),n}function Er(e){return JSON.parse(yn(e))}function Ir(e){let n=E(e,["requestId"]);return {requestId:b(n.requestId)}}function An(e){return {status:O(e.status,Pe),appId:V(e.appId,F),instanceId:gn(e.instanceId),requestId:b(e.requestId)}}function hn(e,n){let t=O(e,Ce);return n===void 0?{isError:true,_meta:{errorCode:t}}:{isError:true,_meta:{errorCode:t,causeCode:O(n,Oe)}}}function xr(e){if(z(e)||u(),D(e,"isError")){let t=E(e,["isError","_meta"]);t.isError!==true&&u();let r=E(t._meta,["errorCode"],["causeCode"]);return hn(O(r.errorCode,Ce),D(r,"causeCode")?O(r.causeCode,Oe):void 0)}let n=E(e,["status","appId","instanceId","requestId"]);return An({status:O(n.status,Pe),appId:V(n.appId,F),instanceId:gn(n.instanceId),requestId:b(n.requestId)})}function G(e,n){return {state:"failed",errorCode:e,causeCode:n}}function Pr(e){if(e.kind==="pending"||e.status==="requested")return {state:"pending"};if(e.outcome==="succeeded")return {state:"completed"};switch(e.outcome){case "rejected":return G("UI_APP_OPEN_REJECTED","RECEIPT_REJECTED");case "conflicted":return G("UI_APP_OPEN_STALE","RECEIPT_CONFLICTED");case "expired":return G("UI_APP_OPEN_STALE","RECEIPT_EXPIRED");default:return G("UI_APP_OPEN_FAILED","RECEIPT_FAILED")}}function be(e,n){return e.workspaceId===n.workspaceId&&e.threadId===n.threadId&&e.instanceId===n.instanceId&&e.definition.id===n.definition.id&&e.definition.version===n.definition.version&&e.definition.hash===n.definition.hash&&e.entryHash===n.entryHash}function Cr(e){if(fn(e.requestId)!==e.activeSessionId)return "stale";let{lookup:n}=e;return n.kind==="absent"?n.capacity==="full"?"busy":"new":be(n.record.source,e.source)&&n.record.payloadDigest===e.payloadDigest?"known":"conflict"}function Or(e){return fn(e.requestId)!==e.activeSessionId||e.lookup.kind!=="present"?"stale":be(e.lookup.record.source,e.source)?"known":"stale"}export{Le as ANTIGRAVITY_MODEL_COMPATIBILITY,tr as APP_JOB_BRIDGE_DRAIN_TIMEOUT_MS,Zt as APP_JOB_BRIDGE_ENV,er as APP_JOB_BRIDGE_MAX_LINE_BYTES,nr as APP_JOB_BRIDGE_REPLY_TIMEOUT_MS,Qt as APP_JOB_BRIDGE_VERSION,Qe as APP_JOB_CAPABILITY,en as APP_JOB_CAPABILITY_VERSION,me as APP_JOB_DEADLINE_MS,qt as APP_JOB_MAX_PER_APP,nn as APP_JOB_OPERATIONS,Ae as APP_JOB_OUTCOMES,tn as APP_JOB_REFUSAL_CODES,Xt as APP_JOB_RUN_REQUIRED,ye as APP_JOB_STATES,he as APP_JOB_STOP_REASONS,_e as APP_JOB_TRIGGERS,Ht as APP_SCHEDULE_INERT_COMMAND,Ke as APP_SCHEDULE_INTERVALS_MINUTES,Bt as APP_SCHEDULE_MAX_PER_APP,Ze as APP_SCHEDULE_PERIODIC_REASONS,ge as APP_SCHEDULE_TIMEOUT_MS,Ve as BUILTIN_THREAD_STATES,ie as BrowserFsAdapter,Ne as CLAUDE_MODEL_COMPATIBILITY_PAIRS,Vn as CLAUDE_OPUS_4_8_BASE_MODEL_ID,zn as CLAUDE_OPUS_4_8_LEGACY_MODEL_ID,lr as CREWX_OPEN_APP_CAPABILITY,xe as CREWX_OPEN_APP_CAPABILITY_VERSION,un as CREWX_OPEN_APP_MAX_JSON_DEPTH,ln as CREWX_OPEN_APP_MAX_PARAMS_BYTES,ur as CREWX_OPEN_APP_METHOD,fr as CREWX_OPEN_APP_STATUS_METHOD,Pe as CREWX_OPEN_APP_SUCCESS_STATUSES,C as ConfigLoadError,K as Crewx,J as CrewxOpenAppError,jn as EFFORT_LEVELS,xt as MCP_APP_HOST_TOOL_ALLOWLIST,Gn as PROVIDER_ARGV_EFFORTS,se as PROVIDER_ORDER,m as ProviderError,jt as SCHEDULE_TRIGGERS,Fe as THREAD_PRIORITIES,Oe as UI_APP_OPEN_CAUSE_CODES,Ce as UI_APP_OPEN_ERROR_CODES,ue as UI_CONTENT_MEDIA_TYPES,sr as appJobTriggerForActor,bt as buildMcpAppContentActions,yn as canonicalCrewxOpenAppPayload,Sn as classifyTaskError,ct as compareProviders,Rt as contentActionsMatch,mn as createCrewxOpenAppCapabilityDeclaration,hn as createCrewxOpenAppErrorResult,Tr as createCrewxOpenAppRequestId,An as createCrewxOpenAppSuccessResult,N as createProvider,ze as customStateLabel,Cr as decideCrewxOpenAppOpen,Or as decideCrewxOpenAppStatus,ft as getDefaultAgentProfile,Kt as hasAppJobCapability,At as hasThreadTitleKey,Te as isAppJobCode,Yt as isAppJobDeadlineMs,rn as isAppJobOperation,Ee as isAppJobPhase,Jt as isAppScheduleCode,Ft as isAppScheduleIntervalMinutes,zt as isAppSchedulePeriodicReason,Vt as isAppScheduleTimeoutMs,fe as isMcpAppContentActions,be as isSameCrewxOpenAppSourceBinding,pe as isThreadPriority,ce as isThreadState,k as isUiContentMediaType,H as isValidUiAppInstanceId,It as matchesThreadTitleFilter,ht as mergeThreadTitleMeta,at as normalizeClaudeMode,ut as normalizeProviderId,ar as parseAppJobView,_r as parseCrewxOpenAppCapabilityDeclaration,Er as parseCrewxOpenAppRequest,xr as parseCrewxOpenAppResult,Ir as parseCrewxOpenAppStatusRequest,Tt as parseThreadPriorityFilter,Et as parseThreadStateFilter,ot as parseYamlContent,ae as providerRank,qe as readThreadTitleMeta,Z as redactTechnicalMessage,Y as registerProviderFactory,Be as resolveAntigravityModel,Ue as resolveCatalogModelId,Pr as resolveCrewxOpenAppActionOutcome,oe as resolveProviderCatalogModel,_t as threadTitleSearchHaystack};
|
package/dist/index.d.ts
CHANGED
|
@@ -1,57 +1,155 @@
|
|
|
1
|
-
export { Crewx } from './facade/Crewx';
|
|
1
|
+
export { Crewx, loadAgentSkills } from './facade/Crewx';
|
|
2
2
|
export type { ToolDefinition } from './facade/Crewx';
|
|
3
|
+
export { resolveTaskTicketEnv } from './facade/task-ticket.js';
|
|
4
|
+
export type { TaskTicketGrant, TaskTicketIssuer, TaskTicketRequest } from './facade/task-ticket.js';
|
|
5
|
+
export { getVerifiedProductAppBundleExecutable } from './mcp-app/bundle-provenance.js';
|
|
6
|
+
export { isVerifiedProductAppBundleProvenance } from './mcp-app/bundle-provenance.js';
|
|
7
|
+
export { projectAppManifestFiles, projectAppManifestReason } from './mcp-app/diagnostic-reason.js';
|
|
8
|
+
export { discover as discoverSkills, findEntrypoint, resolve as resolveSkill, } from './skills/index.js';
|
|
9
|
+
export type { SkillDefinition, SkillFrontmatter, SkillFrontmatterReadResult } from './skills/index.js';
|
|
10
|
+
export type { ActionReceipt, ActionReceiptResultSummary, ActionExecutionReceipt, ActionReceiptOutcome, CreateUiInstanceInput, JsonObject, JsonPrimitive, JsonValue, UiActionHandlerContext, UiActionHandlerRegistration, UiActionHandlerResult, UiActionEnvelope, UiActionConfirmation, UiActor, UiDefinition, UiDefinitionAction, UiDefinitionDisplayMode, UiDefinitionInput, UiDefinitionLegacyMetadata, UiDefinitionLegacyTool, UiDefinitionLegacyReadTool, UiDefinitionLegacyToolVisibility, UiDefinitionRef, UiDefinitionUsage, UiProjectionPolicy, UiExecutionContext, UiAuthenticatedActor, UiTaskActorSnapshot, UiAuthenticatedExecutionContext, UiApprovalRequestContext, UiApprovalDecisionProvenance, UiApprovalPendingReceipt, UiApprovalRequestReceiptResult, UiAuthenticatedGrantPolicy, UiServerRuntimeFacade, UiServerRuntimeOptions, UiAgentContextProjection, UiExternalActionHandlerRegistration, UiAgentOpenReason, UiAgentOpenRequest, UiInstance, UiInstanceStatus, UiLocalGrantPolicy, UiRuntimeFacade, UiRuntimeOptions, UiStateActionHandlerRegistration, UiSkillBackendEnvironmentKey, } from './ui-instance/types.js';
|
|
11
|
+
export { isUiAuthenticatedActor } from './ui-instance/types.js';
|
|
12
|
+
export type { UiRuntimeStoreOptions } from './ui-instance/runtime.js';
|
|
13
|
+
export { UI_ACTION_INPUT_MAX_BYTES } from './ui-instance/runtime.js';
|
|
14
|
+
export { UiInstanceStore, WORKSPACE_REPIN_ENV, isWorkspaceRepinEnabled, openUiInstanceReadStore, UiRuntimeError, hashUiDefinition, hasUiDefinitionLineageBreak, projectSafeJsonObject, redactJsonPaths, selectUiDefinitionLineageEntry, UiDefinitionLineageError, uiDefinitionStaticCompatibilityViolations, validateUiDefinitionLineage, createUiServerRuntime, resolveUiEffectiveCapabilities, } from './ui-instance/index.js';
|
|
15
|
+
export type { UiAuditSnapshotInput, UiDefinitionLineageEntry, UiDefinitionLineageFailureCode, ValidatedUiDefinitionLineage, UiInstanceReadStore, UiInstanceRepinInput, UiInstanceRepinLedgerEntry, UiInstanceRepinResult, UiInstanceRepinWorkspaceGenerationInput, UiInstanceRepinWorkspaceInput, ReservationInput, } from './ui-instance/index.js';
|
|
16
|
+
export type { UiRuntimeErrorCode } from './ui-instance/index.js';
|
|
17
|
+
export { findProjectionViolations } from './ui-instance/json.js';
|
|
18
|
+
export type { FindProjectionViolationsOptions, ProjectionRule, ProjectionViolation, } from './ui-instance/json.js';
|
|
19
|
+
export { MAX_HTML_LENGTH, MCP_APP_HOST_TOOL_ALLOWLIST, MCP_CORE_TOOL_NAMES, MCP_APP_LOCAL_RESOURCE_MIME_TYPE, MCP_APP_RESOURCE_MIME_TYPE, MCP_APP_RESOURCE_URI_PREFIX, McpAppContractError, resolveAgentAccess, listMcpAppAgentActions, MCP_APP_CARD_HANDLERS, isMcpAppCardHandler, isMcpAppCardAction, MCP_APP_PROJECTION_MAX_BYTES, MCP_APP_MODEL_CONTEXT_MAX_ARRAY_LENGTH, MCP_APP_MODEL_CONTEXT_MAX_BYTES, MCP_APP_MODEL_CONTEXT_MAX_DEPTH, MCP_APP_MODEL_CONTEXT_MAX_STRING_LENGTH, buildMcpAppStateDescriptor, buildMcpAppStateProjections, projectMcpAppSummaryState, attachAvailableApps, buildMcpAppsContext, createBuiltinMcpAppRegistry, buildMcpAppLocalRegistration, buildMcpAppBundleRegistrationInput, buildMcpAppBundleAgentActionDescriptors, planProductBundleLegacyToolNames, productAppBundleReservations, createMcpAppLocalRegistration, registerLocalMcpApp, createMcpAppWorkspaceRegistry, createWorkspaceAppRegistry, createWorkspaceMcpAppRegistry, buildInstalledAppRef, createMcpAppRegistry, createMcpAppToolResult, makeUiUri, resolveMcpAppFixedResultCall, INSTALLED_APP_ENTRY, InstalledAppRefError, registerMcpApp, requireMcpAppResource, resolveLocalMcpAppResource, resolveMcpAppResource, serializeMcpAppStateJson, serializeMcpAppStateXml, sanitizeMcpAppModelContext, serializeMcpAppModelContextXml, toMcpAppToolRegistration, validateInstalledAppRef, AppDiscoveryFsError, NodeAppDiscoveryFs, NodeAppDiscoveryFsAdapter, defaultAppDiscoveryFs, defaultNodeAppDiscoveryFs, deriveWorkspaceAppToolName, deriveWorkspaceAppToolNames, createWorkspaceAppScanCache, discoverWorkspaceAppCandidates, discoverWorkspaceApps, loadProductAppBundleAssets, createWorkspaceAppCatalog, discoverWorkspaceAppCatalog, hashAppDefinition, hashCrewxAppDefinition, listWorkspaceApps, buildWorkspaceAppSnapshot, discoverWorkspaceAppSnapshot, reconfirmWorkspaceAppSnapshot, LOCAL_APP_TOOL_PREFIX, MCP_APP_WORKSPACE_TOOL_PREFIX, scanWorkspaceApps, WORKSPACE_APP_TOOL_PREFIX, SKILL_BACKEND_DEFAULT_TIMEOUT_MS, SKILL_BACKEND_INHERITED_ENV_ALLOWLIST, SKILL_BACKEND_MAX_INPUT_BYTES, SKILL_BACKEND_MAX_OUTPUT_BYTES, SKILL_BACKEND_CONTENT_SCHEMA_VERSION, SKILL_BACKEND_SCHEMA_VERSION, buildSkillBackendHandler, buildSkillBackendChildEnvironment, buildVerifiedBundleSkillBackendHandler, buildMcpAppContentActions, contentActionsMatch, UI_CONTENT_ERROR_CODES, UI_CONTENT_MAX_BYTES, UI_CONTENT_MAX_LINES, UI_CONTENT_MAX_MEMORY_BYTES, UI_CONTENT_MEDIA_TYPES, UI_CONTENT_OUTPUT_TTL_MS, UI_CONTENT_TICKET_TTL_MS, UiContentChannelError, contentBindingMatches, countContentLines, decodeContentUtf8, isUiContentDeclaration, isUiContentMediaType, isMcpAppContentActions, isUiContentRangeRequest, isValidUiAppInstanceId, isValidUiThreadIdentity, sha256Content, validateContentBytes, validateContentFrame, externalResourceCheckItems, appIconCheckItems, readWorkspaceAppIconFile, inspectSkillBackendOutput, scanExternalResources, } from './mcp-app/index.js';
|
|
20
|
+
export type { WorkspaceAppIconBytes, AppDevCheckItem, ExternalResourceFinding, ExternalResourceKind, InspectSkillBackendOutputOptions, ScanExternalResourcesOptions, AppDiscoveryBytes, AppDiscoveryDiagnostic, AppDiscoveryDirectoryEntry, AppDiscoveryDirectoryEntryKind, AppDiscoveryDirectoryListing, AppDiscoveryFileSystem, AppDiscoveryFileFingerprint, AppDiscoveryFsErrorCode, AppDiscoveryMaybePromise, AppDiscoveryRootIdentity, AppDiscoveryOptions, McpAppDiscoveryDiagnostic, WorkspaceAppBuiltinCatalog, WorkspaceAppCandidate, WorkspaceAppDiscoveryIncompleteReason, WorkspaceAppDiscoveryOptions, WorkspaceAppDiscoveryResult, WorkspaceAppDiscoverySource, WorkspaceAppDiagnostic, WorkspaceAppDiagnosticCode, WorkspaceAppResourceSnapshot, WorkspaceAppScanCache, WorkspaceAppReservedCatalog, WorkspaceAppSource, WorkspaceAppToolNames, ProductAppBundleDefinitionIdentity, ProductAppBundleFileHash, ProductAppBundleIndex, ProductAppBundleInput, ProductAppBundlePackageIndex, ProductAppBundleReservations, ProductAppBundleProvenance, ProductAppBundleSnapshotMetadata, ProductAppBundleAsset, ProductAppBundleAssetCatalog, ProductAppBundleAssetLoadOptions, WorkspaceAppAsset, WorkspaceAppAssetCatalog, WorkspaceAppAssetDescriptorV1, WorkspaceAppAssetLocator, CrewxAppBuiltinCatalog, CrewxAppCapability, CrewxAppCatalogOptions, CrewxAppCatalogResult, CrewxAppDefinitionHashInput, CrewxAppDefinitionSummary, CrewxAppDiagnostic, CrewxAppDiagnosticCode, CrewxAppDiagnosticSource, CrewxAppInstalledProjection, CrewxAppLocalDefinitionRef, CrewxAppOrigin, CrewxAppOwnership, CrewxAppShareability, CrewxAppSharingAvailability, CrewxAppSummary, McpAppActionDispatcherToolInput, McpAppActionToolDescriptor, McpAppActionToolInput, McpAppButtonDescriptor, McpAppButtonInput, McpAppContractErrorCode, McpAppDescriptor, McpAppDescriptorInput, McpAppInputSchema, McpAppTone, McpUiResourceCsp, McpAppRegistry, McpAppResource, McpAppServerStateInput, McpAppStateDescriptor, McpAppStateProjections, McpAppLayoutSnapshot, McpAppPromptResult, McpAppPromptStatus, McpAppWindowState, McpAppStateView, McpAppsContext, McpAppsContextOptions, McpAppModelContext, McpAppModelContextInput, McpAppHostToolInput, McpAppHostToolName, McpCoreToolName, McpAppReadToolInput, McpAppSingleActionToolInput, McpAppToolCommonInput, McpAppToolDescriptor, McpAppFixedResult, McpAppFixedResultCall, McpAppFixedResultInvalidParams, McpAppFixedResultResolution, McpAppFixedResultUnavailable, McpAppToolInput, McpAppToolMetadata, McpAppToolRegistration, McpAppToolResult, McpAppToolVisibility, McpAppInstanceResourceBinding, McpAppMcpResourceBinding, McpAppResourceBinding, McpAppLocalResource, McpAppLocalRegistrationInput, McpAppLocalReadToolDescriptor, McpAppLocalActionToolDescriptor, McpAppLocalSingleActionToolDescriptor, McpAppLocalHostToolDescriptor, McpAppLocalToolDiagnostic, McpAppAgentAccess, McpAppAgentAccessAction, McpAppVerifiedBundleAccessContext, McpAppCardHandler, McpAppLocalToolDescriptor, McpAppLocalRegistration, McpAppBuiltinRegistration, McpAppResolvedRegistration, McpAppLocalLauncher, McpAppBuiltinLauncher, McpAppLauncher, WorkspaceAppLauncher, WorkspaceAppResolvedRegistration, McpAppWorkspaceRegistry, WorkspaceAppRegistry, McpAppWorkspaceRegistryInput, WorkspaceAppSnapshot, WorkspaceAppSnapshotBuildOptions, WorkspaceAppSnapshotOptions, WorkspaceAppSnapshotReconfirmResult, WorkspaceAppSnapshotResource, WorkspaceAppSnapshotInitialState, WorkspaceAppInitialState, BuildInstalledAppRefInput, InstalledAppPackageFile, InstalledAppRef, InstalledAppRefErrorCode, SkillBackendExecutionPort, SkillBackendExecutionRequest, SkillBackendExecutionResponse, SkillBackendHandlerBuildInput, SkillBackendInfrastructureErrorCode, SkillBackendPayload, SkillBackendChildEnvironment, VerifiedBundleSkillBackendBuildInput, VerifiedBundleSkillRunnerPort, VerifiedBundleSkillSpawnRequest, McpAppRegistryOptions, McpAppBundleHostToolTemplate, McpAppBundleAgentActionDescriptor, SkillBackendPayloadV1, SkillBackendPayloadV2, SkillBackendContentInputHeader, SkillBackendContentOutputHeader, ContentFrame, McpAppContentActionDeclaration, McpAppContentActions, UiActionContentDeclaration, UiContentBinding, UiContentChannelPort, UiContentErrorCode, UiContentInputDeclaration, UiContentInputTicket, UiContentMediaType, UiContentOutputDeclaration, UiContentRange, UiContentRangeRequest, ValidateContentFrameOptions, } from './mcp-app/index.js';
|
|
21
|
+
export { APP_MANIFEST_FILE, APP_MANIFEST_FILES, APP_TOOLS_FILE, APP_MANIFEST_PASSTHROUGH_KEYS, APP_MANIFEST_REQUIRED_KEYS, CREWX_META_NAMESPACE, CREWX_META_OPTIONAL_KEYS, CREWX_META_REQUIRED_KEYS, LEGACY_APP_MANIFEST_FILE, MCPB_MANIFEST_KEYS, MCPB_MANIFEST_VERSION, appManifestDefinitionHash, canonicalManifestJson, isAppSemver, manifestHash, normalizeManifest, resolveAppManifest, UiPluginValidationError, validateInitialState, validateManifest, validatePayload, } from './ui-plugin/index.js';
|
|
22
|
+
export type { AppManifestFailure, AppManifestFileBytes, AppManifestFileName, AppManifestFileResult, AppManifestIdentity, AppManifestOptions, AppManifestReason, AppManifestRejection, AppManifestRejectionCode, AppManifestResult, AppManifestSource, AppToolsFileName, } from './ui-plugin/index.js';
|
|
23
|
+
export { APP_ICON_MAX_BYTES, classifyAppIconDeclaration, inspectAppIconBytes, resolveAppIcon, } from './ui-plugin/index.js';
|
|
24
|
+
export type { AppIconContentType, AppIconDiagnostic, AppIconFile, AppIconReason, } from './ui-plugin/index.js';
|
|
25
|
+
export { APP_TOOLS_SCHEMA_VERSION, APP_TOOL_ENTRY } from './app/tool-mode.js';
|
|
26
|
+
export { APP_SCHEDULE_INERT_COMMAND, APP_SCHEDULE_INTERVALS_MINUTES, APP_SCHEDULE_MAX_PER_APP, APP_SCHEDULE_PERIODIC_REASONS, APP_SCHEDULE_TIMEOUT_MS, SCHEDULE_TRIGGERS, isAppSchedulePeriodicReason, isAppScheduleCode, isAppScheduleIntervalMinutes, isAppScheduleTimeoutMs, } from './app/schedule-contract.js';
|
|
27
|
+
export type { AppScheduleDirective, AppScheduleIntervalMinutes, AppSchedulePeriodic, AppSchedulePeriodicReason, AppScheduleRunVerdict, AppScheduleSnapshot, AppScheduleStatus, ScheduleTrigger, ToolScheduleDeclaration, } from './app/schedule-contract.js';
|
|
28
|
+
export { appScheduleCommandLabel, cronExpressionForInterval, decideScheduleDirective, planScheduledFire, resolveDeclaredSchedule, scheduleTemplateFor, toScheduledRunVerdict, toScheduleSnapshot, } from './mcp-app/index.js';
|
|
29
|
+
export type { AppScheduleAvailability, AppScheduleBinding, AppScheduleOwner, AppScheduleOwnerSource, AppScheduleRowView, AppScheduleTemplate, AppScheduledRunPayload, AppScheduledRunPlan, ResolvedAppSchedule, ScheduleLifecycleEntry, ScheduleLifecyclePlan, ScheduledAppLaunchRequest, } from './mcp-app/index.js';
|
|
30
|
+
export { APP_JOB_CAPABILITY, APP_JOB_CAPABILITY_VERSION, APP_JOB_DEADLINE_MS, APP_JOB_MAX_PER_APP, APP_JOB_OPERATIONS, APP_JOB_OUTCOMES, APP_JOB_RUN_REQUIRED, APP_JOB_REFUSAL_CODES, APP_JOB_STATES, APP_JOB_STOP_GRACE_MS, APP_JOB_STOP_REASONS, APP_JOB_TRIGGERS, hasAppJobCapability, isAppJobCode, isAppJobDeadlineMs, isAppJobOperation, isAppJobPhase, } from './app/job-contract.js';
|
|
31
|
+
export type { AppJobCapabilityDeclaration, AppJobOperation, AppJobOutcome, AppJobState, AppJobTrigger, ToolJobDeclaration, } from './app/job-contract.js';
|
|
32
|
+
export { APP_JOB_BRIDGE_CHANNEL_MAX_BYTES, APP_JOB_BRIDGE_DRAIN_TIMEOUT_MS, APP_JOB_BRIDGE_ENV, APP_JOB_BRIDGE_ERROR_CODES, APP_JOB_BRIDGE_FD, APP_JOB_BRIDGE_MAX_LINE_BYTES, APP_JOB_BRIDGE_REPLY_TIMEOUT_MS, APP_JOB_BRIDGE_VERSION, AppJobBridge, AppJobLineReader, appJobTriggerForActor, buildAppJobChannelEnvironment, encodeAppJobLine, openInheritedAppJobTransport, parseAppJobChannel, parseAppJobControlReply, parseAppJobControlRequest, parseAppJobRunPush, parseAppJobRunReport, parseAppJobView, readAppJobChannel, } from './app/index.js';
|
|
33
|
+
export type { AppJobBridgeErrorCode, AppJobBridgeOptions, AppJobChannel, AppJobControlReply, AppJobControlRequest, AppJobLineEvent, AppJobLineTransport, AppJobProgress, AppJobRun, AppJobRunPush, AppJobRunReport, AppJobStartOutcome, AppJobStatusOutcome, AppJobStopOutcome, AppJobs, AppJobTransportOpener, AppJobView, AppJobWireHandle, } from './app/index.js';
|
|
34
|
+
export { AppJobCoordinator, appJobOwnerKey, resolveDeclaredJob, } from './mcp-app/index.js';
|
|
35
|
+
export type { AppJobCancelRefusalCode, AppJobCancelResult, AppJobCoordinatorOptions, AppJobError, AppJobEvent, AppJobExecutionPort, AppJobHandle, AppJobLaunchRequest, AppJobOwner, AppJobRecord, AppJobRefusalCode, AppJobReport, AppJobReportResult, AppJobSnapshot, AppJobStartRequest, AppJobStartResult, AppJobStopReason, ResolvedAppJob, AppJobStartRefusalCode, } from './mcp-app/index.js';
|
|
36
|
+
export { answerAppJobControlLine, answerAppJobRunLine, buildAppJobControlChannel, buildAppJobRunChannel, encodeAppJobStopPush, toAppJobView, } from './mcp-app/index.js';
|
|
37
|
+
export type { AppJobControlAnswer, AppJobControlSession, AppJobRunAnswer, AppJobRunBinding, } from './mcp-app/index.js';
|
|
38
|
+
export { normalizeUiPluginCsp, policyHash } from './ui-plugin/csp.js';
|
|
39
|
+
export type { NormalizedUiPluginCsp, UiPluginCspInput, UiPluginCspNormalizeOptions, UiPluginCspNormalizationErrorCode, UiPluginPolicyHashInput, UiPluginPolicyRuntime, } from './ui-plugin/csp.js';
|
|
40
|
+
export { UI_PLUGIN_CAPABILITY_PATTERN, UI_PLUGIN_HANDLER_PATTERN, UI_PLUGIN_IDENTIFIER_PATTERN, UI_PLUGIN_MAX_CANDIDATE_DEPTH, UI_PLUGIN_MAX_ACTIONS, UI_PLUGIN_MAX_ARRAY_LENGTH, UI_PLUGIN_MAX_COMMAND_LENGTH, UI_PLUGIN_MAX_COMMAND_PARTS, UI_PLUGIN_MAX_DISCOVERED_APPS, UI_PLUGIN_MAX_DISCOVERY_TIME_MS, UI_PLUGIN_MAX_HEIGHT, UI_PLUGIN_MAX_INITIAL_STATE_BYTES, UI_PLUGIN_MAX_JSON_DEPTH, UI_PLUGIN_MAX_MANIFEST_BYTES, UI_PLUGIN_MAX_PROJECTION_PATHS, UI_PLUGIN_MAX_SCHEMA_DEPTH, UI_PLUGIN_MAX_SCHEMA_PROPERTIES, UI_PLUGIN_MAX_STRING_LENGTH, UI_PLUGIN_MAX_SUBTREE_BYTES, UI_PLUGIN_MAX_SURFACES, UI_PLUGIN_RESERVED_STATE_KEYS, UI_PLUGIN_SAFE_PATH_PATTERN, UI_PLUGIN_SAFE_PATH_SEGMENT_PATTERN, UI_PLUGIN_SKILL_TOKEN_PATTERN, UI_PLUGIN_SURFACES, UI_PLUGIN_TONES, isUiPluginReservedStateKey, } from './ui-plugin/index.js';
|
|
41
|
+
export type { UiPluginActivation, UiPluginCardShellNode, UiPluginFieldSchema, UiPluginHeadingNode, UiPluginLabeledTextNode, UiPluginLayoutNode, UiPluginLayout, UiPluginManifest, UiPluginAction, UiPluginBackend, UiPluginCoreBackend, UiPluginInputSchema, UiPluginJsonSchema, UiPluginJsonSchemaType, UiPluginManifestMode, UiPluginManifestV1, UiPluginManifestV2, UiPluginCspRequest, UiPluginRuntimeRequest, UiPluginNormalizedManifestV2, UiPluginNormalizedV2, UiPluginMetaBannerNode, UiPluginPayload, UiPluginPayloadValue, UiPluginPrimitive, UiPluginSchemaType, UiPluginSchema, UiPluginStep, UiPluginStepFlowNode, UiPluginStepListSchema, UiPluginTextListNode, UiPluginTextListSchema, UiPluginTextSchema, UiPluginProjectionPolicy, UiPluginResourceMetadata, UiPluginResourceRef, UiPluginSize, UiPluginSkillBackend, UiPluginSurface, UiPluginTone, UiPluginHandlerMetadata, UiPluginValidationErrorCode, UiPluginValidationOptions, } from './ui-plugin/index.js';
|
|
42
|
+
export { DEFAULT_PUBLISH_MAX_BYTES, DEFAULT_PUBLISH_MAX_FILES, packApp, packPublish, packTemplate, planPublish, PublishError, uploadToMarketplace, } from './publish/index.js';
|
|
43
|
+
export type { BuildAppManifestOptions, BuildManifestOptions, CreateArchiveOptions, ExcludedEntry, ManifestFile, PublishAppManifest, PublishErrorCode, PublishManifest, PublishOptions, PublishPlan, PublishTemplateManifest, PublishUploadOptions, PublishUploadResult, ScanResult, SecretFinding, } from './publish/index.js';
|
|
3
44
|
export { CrewxPlugin } from './plugin';
|
|
4
45
|
export { TypedEventEmitter } from './events/TypedEventEmitter';
|
|
5
|
-
export type { CrewxEvents, CrewxEventName, CrewxEventPayload, BaseEvent, TaskStartEvent, TaskEndEvent, TaskOutputEvent, AdapterLifecycleEvent, AdapterMessageEvent, UnsubscribeFn, } from './events/types';
|
|
46
|
+
export type { CrewxEvents, CrewxEventName, CrewxEventPayload, BaseEvent, ActorKind, TaskStartEvent, TaskEndEvent, TaskOutputEvent, TaskProviderInputEvent, AdapterLifecycleEvent, AdapterMessageEvent, UnsubscribeFn, } from './events/types';
|
|
6
47
|
export type { LayoutSpec, RenderAgentPromptOptions, SkillEntry } from './facade/Crewx';
|
|
7
48
|
export { LayoutLoader } from './layout/loader';
|
|
8
49
|
export { LayoutRenderer } from './layout/renderer';
|
|
9
50
|
export type { RenderOptions } from './layout/renderer';
|
|
10
51
|
export { PropsValidator } from './layout/props-validator';
|
|
11
|
-
export type { LayoutDefinition, CustomLayoutDefinition, InlineLayoutSpec, LoaderOptions, RenderContext, PropSchema, ValidationResult, ValidationError, TemplateVars, RawLayoutYaml, } from './layout/types';
|
|
52
|
+
export type { LayoutDefinition, LayoutCapabilities, CustomLayoutDefinition, InlineLayoutSpec, LoaderOptions, RenderContext, PropSchema, ValidationResult, ValidationError, TemplateVars, RawLayoutYaml, } from './layout/types';
|
|
12
53
|
export { LayoutLoadError, PropsValidationError } from './layout/types';
|
|
13
54
|
export { TemplateEngine } from './template/engine';
|
|
14
55
|
export type { ExecPolicy, TemplateContext, TemplateEngineOptions } from './template/types';
|
|
56
|
+
export { PROMPT_TAGS, LEGACY_PROMPT_TAGS } from './prompt/tag-names';
|
|
15
57
|
export { DocumentLoader } from './template/loader/DocumentLoader';
|
|
16
58
|
export type { IFsAdapter } from './platform/IFsAdapter';
|
|
17
59
|
export { NodeFsAdapter, defaultFsAdapter } from './platform/NodeFsAdapter';
|
|
18
60
|
export { BrowserFsAdapter } from './platform/BrowserFsAdapter';
|
|
19
61
|
export { truncateHelper, lengthHelper, escapeHandlebarsHelper, formatFileSizeHelper, formatTimestampHelper, } from './template/helpers/p1p2';
|
|
20
62
|
export { setAuditVerbose } from './template/helpers/exec';
|
|
21
|
-
export type { AgentConfig, CrewxProjectConfig, CrewxOptions, QueryOptions, QueryResult, ExecuteOptions, ExecuteResult, TraceContext, YamlHookEntry, GuideRule, } from './types';
|
|
22
|
-
export { AgentSkillsSchema } from './types';
|
|
63
|
+
export type { AgentConfig, CrewxProjectConfig, CrewxOptions, QueryOptions, QueryResult, ExecuteOptions, ExecuteResult, ContextMode, CanResumeSessionReason, CanResumeSessionParams, CanResumeSessionResult, TraceContext, TaskActor, YamlHookEntry, GuideRule, WiBoardConfig, ProviderRateLimitObservation, } from './types';
|
|
64
|
+
export { AgentSkillsSchema, WiBoardSchema } from './types';
|
|
65
|
+
export { addAiAccount, applyAiAccountEnv, aiAccountEnvPlan, defaultAiAccountDir, getLoginInvocation, getStatusInvocation, listAiAccounts, loadProviderAccountsRegistry, providerAccountsRegistryPath, providerAccountsRoot, removeAiAccount, resolveAiAccountForRun, setActiveAiAccount, AiAccountError, AI_ACCOUNT_PROVIDERS, CLAUDE_ACCOUNT_STRIPPED_ENV, DEFAULT_AI_ACCOUNT_ID, } from './provider-account';
|
|
66
|
+
export type { AddedAiAccount, AiAccountEnvPlan, AiAccountErrorCode, AiAccountInvocation, AiAccountProvider, AiAccountSummary, ProviderAccountsRegistry, RemovedAiAccount, ResolveAiAccountInput, ResolvedAiAccount, StoredAiAccount, } from './provider-account';
|
|
67
|
+
export type { ProviderRateLimitWindow, ProviderRateLimitWindows } from './provider/cli/adapter.types';
|
|
23
68
|
export { loadYamlFile, parseYamlContent, ConfigLoadError } from './config/loader';
|
|
69
|
+
export { AgentInterceptorChain, AgentInterceptorConfigError, parseAgentInterceptorItems, INTERCEPTOR_BLOCKED, INTERCEPTOR_CONFIG_INVALID, } from './agent-interceptor';
|
|
70
|
+
export type { AgentInterceptorItem, InterceptorInvocation, InterceptorLaneRun, InterceptorOutcome, InterceptorPhase, InterceptorRunContext, InterceptorStepLog, InterceptorVerdict, } from './agent-interceptor';
|
|
71
|
+
export { resolveWiBoards, isReservedWiBoardId, WI_BOARD_ID_PATTERN, DEFAULT_WI_BOARD_ID, ARCHIVE_WI_BOARD_ID, DEFAULT_WI_WORKFLOW_ID, WI_PLAN_WORKFLOW_ID, WI_DEFAULT_FLOW_FILENAME, WI_PLAN_FLOW_FILENAME, } from './config/wi-boards';
|
|
72
|
+
export type { ResolvedWiBoard } from './config/wi-boards';
|
|
73
|
+
export { createWorkInstruction, createWorkInstructionBatch, WiCreateError, } from './wi/create';
|
|
74
|
+
export type { WiCreateInput, WiBatchCreateInput, WiBatchCreateResult, WiCreatedDetail, WiCreatedSummary, WiStatus as SdkWiStatus, } from './wi/create';
|
|
75
|
+
export { selectNextWi } from './wi/select';
|
|
76
|
+
export type { SelectNextWiResult, WiSummary as SelectableWiSummary, WiSelectableStatus, } from './wi/select';
|
|
77
|
+
export { createGlobalSettingsStore } from './config/global-settings';
|
|
78
|
+
export type { GlobalSettings, GlobalSettingsStore, DeepPartial, CreateGlobalSettingsStoreOptions } from './config/global-settings';
|
|
79
|
+
export { DEFAULT_LOCAL_SERVER_PROBE_TIMEOUT_MS, isAllowedLocalServerIp, parseLocalServerBaseUrl, probeLocalServer, buildLocalServerOpenCodeOverlay, LocalServerOpenCodeOverlayError, } from './local-server';
|
|
80
|
+
export type { LocalServerBaseUrlErrorCode, LocalServerBaseUrlFailure, LocalServerBaseUrlOptions, LocalServerBaseUrlResult, LocalServerBaseUrlSuccess, LocalServerHostClass, LocalServerDefinition, LocalServerFetch, LocalServerKind, LocalServerModel, LocalServerOpenCodeOverlay, LocalServerOpenCodeOverlayErrorCode, LocalServerProbeOptions, LocalServerProbeReason, LocalServerProbeResponse, LocalServerProbeResult, LocalServerSettings, } from './local-server';
|
|
24
81
|
export { resolveOverdrive, parseOverdriveProfile, parseOverdriveSignal, } from './config/overdrive';
|
|
25
82
|
export type { OverdriveProfile, OverdriveSignal, OverdriveSignalInput, OverdriveResolution, } from './config/overdrive';
|
|
83
|
+
export { migrateGrokLegacyMode } from './config/migrate-grok-mode';
|
|
84
|
+
export type { GrokSandbox, GrokNativeOptions } from './config/migrate-grok-mode';
|
|
85
|
+
export { canonicalizeAgentOptions, normalizeClaudeMode } from './config/canonicalize-agent-options';
|
|
86
|
+
export type { AgentOptionsLike, CanonicalizeAgentOptionsInput, CanonicalizeAgentOptionsResult, } from './config/canonicalize-agent-options';
|
|
87
|
+
export { ANTIGRAVITY_MODEL_COMPATIBILITY, CLAUDE_MODEL_COMPATIBILITY_PAIRS, CLAUDE_OPUS_4_8_BASE_MODEL_ID, CLAUDE_OPUS_4_8_LEGACY_MODEL_ID, resolveAntigravityModel, resolveCatalogModelId, resolveProviderCatalogModel, } from './config/model-compat';
|
|
88
|
+
export type { AntigravityResolvedModel } from './config/model-compat';
|
|
26
89
|
export { initPricingRemote } from './config/pricing.remote';
|
|
90
|
+
export type { ModelApiPricing } from './config/pricing.types';
|
|
27
91
|
export { initModelsRemote } from './config/models.remote';
|
|
28
92
|
export { resolveAgent, AgentNotFoundError } from './agent/resolver';
|
|
29
93
|
export { resolveAgentSkills } from './agent/resolve-skills';
|
|
30
94
|
export { PROVIDER_ORDER, providerRank, compareProviders, normalizeProviderId } from './provider/order';
|
|
31
|
-
export { getProviderModels, getClaudeModels, getCodexModels, getCopilotModels, getAntigravityModels, setModelsOverride, clearModelsOverride, mergeModels, type ModelCatalogEntry, } from './provider/models';
|
|
95
|
+
export { getProviderModels, getClaudeModels, getCodexModels, getCopilotModels, getAntigravityModels, setModelsOverride, clearModelsOverride, mergeModels, type ModelCatalogEntry, type ModelMergeEntry, type ModelTier, type ProviderOptionSpec, } from './provider/models';
|
|
96
|
+
export { getDefaultAgentProfile } from './config/default-agent-models.js';
|
|
97
|
+
export type { DefaultAgentProfile, DefaultAgentStage } from './config/default-agent-models.js';
|
|
98
|
+
export { isProviderAvailable } from './provider/provider-selection';
|
|
99
|
+
export type { ProviderAvailabilityDeps } from './provider/provider-selection';
|
|
100
|
+
export { EFFORT_LEVELS, PROVIDER_ARGV_EFFORTS } from './config/models.generated.js';
|
|
101
|
+
export type { EffortLevel, KnownEffortLevel } from './config/models.generated.js';
|
|
102
|
+
export { DEFAULT_INPUT_BUDGET_PERCENT, MIN_INPUT_BUDGET_PERCENT, MAX_INPUT_BUDGET_PERCENT, INPUT_BUDGET_TOKENIZER_ENCODING, FRESH_PROVIDER_INITIAL_INPUT_FRAMING, RESUME_PROVIDER_INITIAL_INPUT_FRAMING, normalizeInputBudgetProvider, resolveTokenizerMetadata, countTokens, createTokenCounter, resolveInputBudget, } from './context-budget';
|
|
103
|
+
export type { InputBudgetUnresolvedReason, TokenizerFallbackReason, ResolveInputBudgetOptions, TokenizerOptions, TokenizerMetadata, ResolvedInputBudget, UnresolvedInputBudget, ResolveInputBudgetResult, ContextBudgetPhase, ProviderInitialInputFraming, ContextBudgetManifest, TokenCountResult, TokenCounter, ContextBudgetLayoutCapability, ContextBudgetActivityDegradation, ContextBudgetAssemblyErrorCode, } from './context-budget';
|
|
104
|
+
export { ContextBudgetLayoutError, DEFAULT_HIGHLIGHT_BUDGET_PERCENT, DEFAULT_PROTECTED_TURN_COUNT, MAX_ACTIVE_HIGHLIGHT_CHARS, MAX_ACTIVE_HIGHLIGHTS, MAX_THREAD_STATE_VALUE_CHARS, MAX_THREAD_TITLE_CHARS, buildSemanticContinuityContext, buildThreadStateContext, getConversationMessageTaskId, groupConversationTurns, materializeConversationTurn, selectConversationHighlights, selectConversationTurns, } from './context-budget';
|
|
105
|
+
export type { BuildSemanticContinuityContextOptions, ConversationHighlightSelection, ConversationTurn, ConversationTurnSelection, GroupedConversationTurns, SelectConversationHighlightsOptions, SelectConversationTurnsOptions, } from './context-budget';
|
|
106
|
+
export type { ConversationHighlight, ConversationMessage, ConversationSemanticContinuityContext, ConversationThreadState, ConversationThreadStateValue, ConversationThread, FetchHistoryOptions, IConversationHistoryProvider, Platform, SemanticContinuityContext, TemplateMessage, TemplateAppCard, ThreadStateContext, } from './conversation/types.js';
|
|
107
|
+
export { MAX_THREAD_HIGHLIGHTS_PER_THREAD, MAX_THREAD_HIGHLIGHTS_PER_RUN, MAX_THREAD_HIGHLIGHT_REGENERATION_CANDIDATES, MAX_THREAD_HIGHLIGHT_PROMPT_LENGTH, MAX_THREAD_HIGHLIGHT_TURN_TEXT_LENGTH, THREAD_HIGHLIGHT_CONSOLIDATION_PROMPT_INSTRUCTIONS, THREAD_HIGHLIGHT_PROMPT_INSTRUCTIONS, THREAD_HIGHLIGHTER_AGENT_ID, THREAD_HIGHLIGHTER_PROVIDER_ORDER, ThreadHighlightGenerationError, ThreadHighlightGenerator, ThreadHighlighter, ThreadHighlightConsolidationItemSchema, ThreadHighlightConsolidationResponseSchema, ThreadHighlightInputValidationError, ThreadHighlightItemSchema, ThreadHighlightOutputValidationError, ThreadHighlightResponseSchema, buildThreadHighlightPrompt, buildThreadHighlightConsolidationPrompt, consolidateThreadHighlights, detectThreadHighlightBatches, generateThreadHighlightBatches, generateThreadHighlights, parseThreadHighlightResponse, parseThreadHighlightConsolidationResponse, redactThreadHighlightSecrets, } from './highlight/thread-highlighter.js';
|
|
108
|
+
export type { ThreadHighlightConsolidationHighlight, ThreadHighlightConsolidationInput, ThreadHighlightConsolidationItem, ThreadHighlightConsolidationOptions, ThreadHighlightConsolidationResponse, ThreadHighlightConsolidationResult, ThreadHighlightConsolidationSuccess, ThreadHighlightFailureCode, ThreadHighlightBatchDetectionResult, ThreadHighlightBatchDetectionSuccess, ThreadHighlightBatchDetectorOptions, ThreadHighlightGenerationFailure, ThreadHighlightGenerationFailureResult, ThreadHighlightGenerationInput, ThreadHighlightGenerationResult, ThreadHighlightGenerationSuccess, ThreadHighlightGeneratorOptions, ThreadHighlightItem, ThreadHighlightRegenerationInput, ThreadHighlightProviderAttempt, ThreadHighlightProviderAttemptOutcome, ThreadHighlightProviderId, ThreadHighlightResponse, ThreadHighlightTaskTurn, ThreadHighlightWriter, } from './highlight/thread-highlighter.js';
|
|
32
109
|
export { createProvider, ProviderError, ClientToolCallRequiredError, registerProviderFactory, mergeAdditionalArgs } from './provider/bridge';
|
|
33
110
|
export type { ProviderRuntime, ProviderQueryOptions, ProviderFactory, ProviderUsage, ClientToolCall, ContinuationState, AdditionalArgsProvider } from './provider/bridge';
|
|
34
111
|
export { VercelProviderRuntime } from './provider/vercel-runtime';
|
|
35
112
|
export type { VercelProviderConfig } from './provider/vercel-runtime';
|
|
36
113
|
export { registerApiProviders } from './provider/register-api';
|
|
37
114
|
export * from './provider/acp/index.js';
|
|
38
|
-
export type { CliProviderAdapter } from './provider/cli/adapter.types';
|
|
115
|
+
export type { CliProviderAdapter, ParseEventContext } from './provider/cli/adapter.types';
|
|
39
116
|
export { RateLimitError } from './provider/cli/adapter.types';
|
|
40
|
-
export { BUILTIN_ADAPTERS, claudeAdapter, copilotAdapter, codexAdapter, opencodeAdapter } from './provider/cli/adapters/index';
|
|
117
|
+
export { BUILTIN_ADAPTERS, claudeAdapter, copilotAdapter, codexAdapter, opencodeAdapter, grokAdapter } from './provider/cli/adapters/index';
|
|
41
118
|
export { queryAllCliProviderMetas, queryOpencodeModels } from './provider/cli/meta';
|
|
119
|
+
export { isMetadataOnlyProtocolLine, isProtocolOnlyText, shouldSkipRawStdoutJsonFallback, } from './provider/cli/protocol-envelope';
|
|
120
|
+
export { ConsoleDecoder, decodeConsoleBuffer, decodeConsoleBufferAsync, getWindowsConsoleCodePage, parseWindowsConsoleCodePage, primeWindowsConsoleCodePage, } from './internal/console-decoder';
|
|
121
|
+
export type { ConsoleBufferDecodeOptions, ConsoleDecoderOptions, } from './internal/console-decoder';
|
|
42
122
|
export { createDelegateTool } from './tools/delegate';
|
|
43
|
-
export { resolveTemplatesPath, resolveDefaultAgentsYaml } from './paths';
|
|
44
|
-
export { resolveCrewxCli, resolveCrewxWorkspace } from './utils/env-defaults';
|
|
123
|
+
export { resolveTemplatesPath, resolveDefaultAgentsYaml, resolveWorkflowTemplatesPath } from './paths';
|
|
124
|
+
export { resolveCrewxCli, resolveCrewxCliArgv, resolveCrewxCliDisplay, resolveCrewxWorkspace, } from './utils/env-defaults';
|
|
125
|
+
export { createCrewxChildInvocation, crewxCliShimFingerprint, formatCrewxExecutableArgv, formatCrewxExecutableFailure, getCrewxStableEntrypoint, isRotatingInstallPath, isVolatilePath, materializeCrewxCliShim, materializeCrewxStableEntrypoint, resolveCrewxExecutable, } from './utils/crewx-executable';
|
|
126
|
+
export type { CrewxChildInvocation, CrewxChildInvocationOptions, CrewxElectronRuntimeContext, CrewxElectronRuntimePredicate, CrewxExecutableAttempt, CrewxExecutableFailure, CrewxExecutablePathLookupOptions, CrewxExecutablePathLookupResult, CrewxExecutableResolution, CrewxExecutableResolverOptions, CrewxExecutableStage, CrewxExecutableSuccess, CrewxRequiredEnv, CrewxCliShim, CrewxCliShimOptions, CrewxStableEntrypointOptions, } from './utils/crewx-executable';
|
|
127
|
+
export { getCrewxHome } from './utils/crewx-home';
|
|
128
|
+
export { CREWX_RUNNER_IDENTITY_ENV, withoutCrewxRootContext, withoutCrewxRunnerIdentity, } from './utils/runner-env';
|
|
45
129
|
export { generateId, generateFingerprint } from './utils/id';
|
|
46
130
|
export type { EntityPrefix, PrefixedId } from './utils/id';
|
|
47
|
-
export {
|
|
48
|
-
export {
|
|
131
|
+
export { acquireDurableQuiesceMarker, admitDurableTask, DEFAULT_CLI_ADMISSION_TIMEOUT_MS, isDurablyQuiescing, isProcessAlive, readDurableQuiesceMarkerOwner, readUpdateAdmissionReservations, reconcileDurableQuiesceMarkerIfOwnerDead, releaseDurableQuiesceMarker, releaseUpdateAdmissionReservation, reserveUpdateAdmission, resolveUpdateAdmissionReservationDir, resolveUpdateQuiesceLockFile, UPDATE_ADMISSION_RESERVATION_DIRNAME, UPDATE_ADMISSION_SCOPE_ENV, UPDATE_QUIESCE_LOCK_FILENAME, } from './lifecycle/update-admission.js';
|
|
132
|
+
export type { AdmissionMarkerResult, DurableQuiesceMarkerState, DurableTaskAdmission, ReconcileOutcome, UpdateAdmissionReservationEntry, } from './lifecycle/update-admission.js';
|
|
133
|
+
export { acquireProcessLease, getProcessStartIdentity, getProcessStartTime, readProcessLease, reclaimProcessLease, releaseProcessLease, renewProcessLease, resolveProcessLeasePath, PROCESS_LEASE_FILENAME, } from './lifecycle/process-lease.js';
|
|
134
|
+
export type { ProcessLeaseAcquireResult, ProcessLeaseClock, ProcessLeaseHandle, ProcessLeaseMutationOptions, ProcessLeaseOptions, ProcessLeasePathOptions, ProcessLeaseProcessProbe, ProcessLeaseReason, ProcessLeaseReadResult, ProcessLeaseRecord, ProcessLeaseReclaimOptions, } from './lifecycle/process-lease.js';
|
|
135
|
+
export { hashWorkspaceId, normalizeWorkspacePath, resolveWorkspaceOwnerPath, slugify } from './utils/workspace';
|
|
136
|
+
export { formatTimestamp, formatDisplayTimestamp } from './utils/timestamp';
|
|
49
137
|
export type { TaskLogEntry, TaskLogEntryType } from './types/task-log.types';
|
|
138
|
+
export { anchorChildTasks } from './task-log/anchor-child-tasks';
|
|
139
|
+
export type { AnchorChildInput } from './task-log/anchor-child-tasks';
|
|
140
|
+
export { DELEGATION_RESULT_MARKER, DELEGATION_RESULT_PREFIX, consumeDelegationResult, formatDelegationResult, formatDelegationTrailer, isDelegationResult, parseDelegationResult, parseDelegationTrailer, stripDelegationResult, stripDelegationTrailer, } from './task-log/delegation-trailer';
|
|
141
|
+
export type { ConsumedDelegationResult, DelegationResult, DelegationResultInput, ParsedDelegationResult, } from './task-log/delegation-trailer';
|
|
142
|
+
export { extractLegacyWorkflowRunId, scanLegacyUiCardAt, scanLegacyUiCardTags, } from './ui-card/index';
|
|
143
|
+
export type { LegacyUiCardTag } from './ui-card/index';
|
|
144
|
+
export { classifyTaskError } from './provider/classify-task-error';
|
|
145
|
+
export { redactTechnicalMessage } from './provider/redact-technical-message';
|
|
146
|
+
export type { TaskErrorCode, TaskErrorMeta, TaskErrorProjection } from './provider/task-error.types';
|
|
50
147
|
export { SdkBoxService } from './boxing/box.service';
|
|
51
148
|
export { buildContext } from './boxing/context-builder';
|
|
52
149
|
export type { IBoxStorage, ITaskReader, ITokenizer } from './boxing/box-storage.interface';
|
|
53
150
|
export type { BoxRow, BoxSummary, BoxResponse as SdkBoxResponse, InsertBoxData, CreateBoxParams, ThreadMessage as BoxingThreadMessage, ContextBuildParams, ContextBuildResponse, } from './boxing/box.types';
|
|
54
|
-
export { parseStdoutEvent } from './provider/cli/adapters/index.js';
|
|
151
|
+
export { parseStdoutEvent, createLogParseSession } from './provider/cli/adapters/index.js';
|
|
152
|
+
export type { LogParseSession } from './provider/cli/adapters/index.js';
|
|
55
153
|
export { parseUsage } from './provider/parse-usage';
|
|
56
154
|
export type { ParsedUsage } from './provider/parse-usage';
|
|
57
155
|
export { ParallelRunner, ParallelRunnerTimeoutError } from './parallel/parallel-runner';
|
|
@@ -62,17 +160,56 @@ export { AgentRuntime } from './parallel/agent-runtime';
|
|
|
62
160
|
export type { AgentResult, AgentQueryRequest, AgentExecuteRequest } from './parallel/agent-runtime';
|
|
63
161
|
export { PluginProviderRuntime, createPluginProviderFactory } from './plugin/plugin-provider';
|
|
64
162
|
export type { PluginProviderConfig } from './plugin/types';
|
|
65
|
-
export { TaskRepository } from './repository/task.repository.js';
|
|
66
|
-
export type {
|
|
163
|
+
export { DEFAULT_TASK_REAPER_TICK_INTERVAL_MS, mergeTerminalReason, TaskRepository, TASK_HEARTBEAT_HARD_STALE_MS, TASK_HEARTBEAT_INTERVAL_MS, TASK_HEARTBEAT_STALE_MS, resolveTaskHeartbeatHardStaleMs, resolveTaskHeartbeatIntervalMs, resolveTaskHeartbeatStaleMs, } from './repository/task.repository.js';
|
|
164
|
+
export type { ReapOrphanedTasksOptions } from './repository/task.repository.js';
|
|
165
|
+
export { countRatedTasks, listRatedTasks, RATED_TASK_EXCERPT_MAX_CHARS, RATED_TASK_LIST_MAX_LIMIT, setTaskRating, TASK_RATINGS, TaskRatingError, } from './repository/task.repository.js';
|
|
166
|
+
export type { CountRatedTasksInput, ListRatedTasksInput, RatedTaskRow, SetTaskRatingInput, SetTaskRatingResult, TaskRating, TaskRatingErrorCode, } from './repository/task.repository.js';
|
|
167
|
+
export type { FinalizeTaskStopOptions, TaskStopMethod, TaskStopOrigin, TaskStopRequestContext, TaskStopRequestResult, } from './repository/task.repository.js';
|
|
168
|
+
export { INSTRUCTION_STOP_EPOCH_MISMATCH, INSTRUCTION_STOP_GENERATION_ALREADY_SETTLED, INSTRUCTION_STOP_PROCESS_TERMINATION_FAILED, INSTRUCTION_STOP_REQUEST_FAILED, INSTRUCTION_STOP_SETTLE_CAS_FAILED, INSTRUCTION_STOP_TARGET_PID_MISSING, INSTRUCTION_STOP_WORKSPACE_MISMATCH, stopTask, resolveTaskStopMethod, TASK_STOP_DEFAULT_GRACE_MS, TASK_STOP_DEFAULT_POLL_MS, TASK_STOP_OWNED_PROCESS_MARKERS, } from './lifecycle/task-stop.js';
|
|
169
|
+
export type { StopTaskGenerationForInstructionOptions, StopTaskOptions, StopTaskProcessControl, StopTaskResult, StopTaskStatus, } from './lifecycle/task-stop.js';
|
|
170
|
+
export { isTaskRetryableByDefault, LEGACY_TASK_TERMINAL_ERROR_PATTERNS, normalizeTaskRow, normalizeTaskStatus, readTaskTerminalReason, storedTaskStatusesFor, TASK_TERMINAL_STATUSES, TASK_TERMINAL_STORED_STATUSES, } from './repository/task-status.js';
|
|
171
|
+
export type { TaskStatus, TaskStatusInput, TaskTerminalReason, TaskTerminalStatus, } from './repository/task-status.js';
|
|
172
|
+
export type { TaskRow, TaskKillResult, TaskKillStatus } from './repository/task.repository.js';
|
|
173
|
+
export type { ProviderInputEpochEntry, ProviderInputRecord } from './repository/task.repository.js';
|
|
174
|
+
export { runHeartbeatTick, startTaskHeartbeat, stopTaskHeartbeat, TASK_STOP_POLL_INTERVAL_MS, taskHeartbeatRegistry, } from './lifecycle/task-heartbeat.js';
|
|
175
|
+
export type { HeartbeatTickResult, TaskHeartbeatHandle, TaskHeartbeatOptions, TaskHeartbeatRow, } from './lifecycle/task-heartbeat.js';
|
|
176
|
+
export { checkProcessOwnership, checkProcessOwnershipAsync, OWNED_GROUP_KILL_CONFIRM_MS, probeProcessLiveness, terminateOwnedProcessGroup, terminateProcessTree, UNIX_PROCESS_POLL_INTERVAL_MS, UNIX_SIGKILL_CONFIRM_MS, UNIX_SIGTERM_GRACE_MS, } from './process/process-control.js';
|
|
177
|
+
export type { OwnedProcessGroupErrorKind, OwnedProcessGroupSignal, OwnedProcessGroupStatus, OwnedProcessGroupTerminationResult, ProcessCommandLineResult, ProcessCommandResult, ProcessCommandRunner, ProcessCommandRunnerAsync, ProcessControlOptions, ProcessLiveness, ProcessOwnership, ProcessTerminationResult, ProcessTerminationStatus, TerminateOwnedProcessGroupOptions, } from './process/process-control.js';
|
|
67
178
|
export { SpanRepository } from './repository/span.repository.js';
|
|
68
179
|
export type { SpanRow } from './repository/span.repository.js';
|
|
180
|
+
export { COMMON_CODE_COLORS, COMMON_CODE_GROUPS, CommonCodeRepository, CommonCodeRepositoryError, generateCommonCodeId, } from './repository/common-code.repository.js';
|
|
181
|
+
export type { CommonCodeColor, CommonCodeErrorReason, CommonCodeGroup, CreateThreadStateInput, UpdateCommonCodeDisplayInput, } from './repository/common-code.repository.js';
|
|
182
|
+
export type { CommonCode, NewCommonCode } from './schema/common-codes.js';
|
|
183
|
+
export { SIDEBAR_CLOSED_TAB_LIMIT, SIDEBAR_CLOSED_TAB_TTL_MS, SidebarTabRepository, SidebarTabRepositoryError, } from './repository/sidebar-tab.repository.js';
|
|
184
|
+
export type { CreateSidebarGroupInput, CreateSidebarGroupResult, InitSidebarResult, MarkThreadReadResult, MoveSidebarTabInput, OpenSidebarTabOptions, ReopenSidebarTabResult, SidebarGroupSnapshot, SidebarSnapshot, SidebarTabErrorReason, UpdateSidebarGroupPatch, } from './repository/sidebar-tab.repository.js';
|
|
185
|
+
export { SIDEBAR_GROUP_COLORS } from './schema/sidebar-tabs.js';
|
|
186
|
+
export type { SidebarGroupColor } from './schema/sidebar-tabs.js';
|
|
187
|
+
export { StorageMetadataRepository } from './repository/storage-metadata.repository.js';
|
|
188
|
+
export { STORAGE_METADATA_KINDS, STORAGE_METADATA_UNITS, } from './repository/storage-metadata.repository.js';
|
|
189
|
+
export type { StorageMetadataAge, StorageMetadataAggregateRow, StorageMetadataBatchResult, StorageMetadataCutoffs, StorageMetadataKind, StorageMetadataReadiness, StorageMetadataSnapshot, StorageMetadataUnit, StorageMetadataUnitReadiness, StorageMetadataVerificationMismatch, } from './repository/storage-metadata.repository.js';
|
|
190
|
+
export { ThreadRepository, ThreadTitleMetadataPatchError, } from './repository/thread.repository.js';
|
|
191
|
+
export type { UnreadReplyWatermark } from './repository/thread.repository.js';
|
|
192
|
+
export { UNREAD_PREVIEW_MAX_LENGTH, publicTaskAnswerContent, summarizeUnreadReplies, toPreviewPlainText, } from './repository/public-task-answer.js';
|
|
193
|
+
export type { PublicTaskAnswerInput, UnreadReplyCandidate, UnreadReplySummary, } from './repository/public-task-answer.js';
|
|
194
|
+
export { AgentSendHistoryRepository } from './repository/agent-send-history.repository.js';
|
|
195
|
+
export type { RecordAcceptedAgentSendInput, RecentAgentSend } from './repository/agent-send-history.repository.js';
|
|
196
|
+
export type { ThreadRow, NewThread, TaskDescendantList, TaskDescendantListOptions, TaskDescendantRow, TaskDescendantSummary, RespondedAgent, ThreadTitleMetadataPatch, ThreadTitleMetadataPatchResult, ThreadTitleMetadataPatchErrorReason, } from './repository/thread.repository.js';
|
|
197
|
+
export { ThreadHistoryConflictError, ThreadHighlightConflictError, ThreadHighlightRegenerationConflictError, ThreadHistoryRepository, } from './repository/thread-history.repository.js';
|
|
198
|
+
export { THREAD_HIGHLIGHT_DELETION_REASON_REGENERATION_REPLACED, THREAD_HIGHLIGHT_REGENERATION_COMMIT_FAILED, THREAD_HIGHLIGHT_REGENERATION_DETECTION_FAILED, THREAD_HIGHLIGHT_REGENERATION_INTERRUPTED, THREAD_HIGHLIGHT_REGENERATION_NO_ELIGIBLE_TURNS, } from './repository/thread-history.repository.js';
|
|
199
|
+
export type { CompleteThreadHighlightRegenerationInput, CompleteThreadHighlightRegenerationResult, CreateThreadHighlightRegenerationRunInput, CreateThreadHighlightRegenerationRunResult, CreateThreadHighlightInput, DismissThreadHighlightInput, FailThreadHighlightRegenerationRunInput, ListActiveHighlightsOptions, ThreadActorInput, ThreadHighlightDeletionReason, ThreadHighlightEligibleTurn, ThreadHighlightRegenerationCandidate, ThreadHighlightRegenerationErrorCode, ThreadSnapshot, ThreadSnapshotMutationInput, ThreadTimeline, ThreadTimelineOptions, ThreadTimelineQuery, UpdateThreadHighlightInput, } from './repository/thread-history.repository.js';
|
|
200
|
+
export { BUILTIN_THREAD_STATES, THREAD_PRIORITIES, customStateLabel, hasThreadTitleKey, isThreadPriority, isThreadState, matchesThreadTitleFilter, mergeThreadTitleMeta, parseThreadPriorityFilter, parseThreadStateFilter, readThreadTitleMeta, threadTitleSearchHaystack, } from './repository/thread-title.types.js';
|
|
201
|
+
export type { BuiltinThreadState, LegacyThreadState, StableThreadState, ThreadPriority, ThreadState, ThreadTitleFilter, ThreadTitleMeta, ThreadTitlePatch, } from './repository/thread-title.types.js';
|
|
202
|
+
export { THREAD_ACTOR_TYPES, THREAD_EVENT_TYPES, THREAD_HIGHLIGHT_KINDS, THREAD_HIGHLIGHT_SOURCES, THREAD_HIGHLIGHT_STATUSES, THREAD_HIGHLIGHT_RUN_STATUSES, } from './schema/thread-history.js';
|
|
203
|
+
export type { NewThreadEvent, NewThreadHighlight, NewThreadHighlightRun, ThreadActorType, ThreadEvent, ThreadEventType, ThreadHighlight, ThreadHighlightKind, ThreadHighlightSource, ThreadHighlightStatus, ThreadHighlightRun, ThreadHighlightRunStatus, } from './schema/thread-history.js';
|
|
69
204
|
export { RemoteProviderRuntime, createRemoteProviderFactory } from './remote/remote-provider';
|
|
70
205
|
export { RemoteAgentManager } from './remote/remote-agent-manager';
|
|
71
206
|
export { McpHttpTransport } from './remote/remote-transport';
|
|
72
|
-
export
|
|
207
|
+
export { resolveAgentExecutionProfile, resolveAgentExecutionProfiles, } from './remote/execution-profile';
|
|
208
|
+
export type { RemoteTransport, RemoteAgentConfig, RemoteProviderConfig, RemoteAgentQueryRequest, RemoteAgentExecuteRequest, RemoteAgentResponse, McpJsonRpcRequest, McpJsonRpcResponse, RemoteAgentDescriptor, AgentExecutionProfile, AgentExecutionProfileSlot, AgentExecutionProfileStatus, AgentExecutionProfileErrorCode, } from './remote/types';
|
|
73
209
|
export { createHandler } from './server/handler';
|
|
74
210
|
export type { HandlerOptions, CrewxHandler } from './server/handler';
|
|
75
211
|
export type { AuthOptions } from './server/auth';
|
|
212
|
+
export * from './account/index';
|
|
76
213
|
export { YamlHookPlugin, validateHooksSchema } from './hooks/yaml-plugin';
|
|
77
214
|
export type { YamlHookConfig } from './hooks/yaml-plugin';
|
|
78
215
|
export * from './conversation/index.js';
|
|
@@ -83,5 +220,8 @@ export { createScopedAdapterStore } from './adapter/scoped-store';
|
|
|
83
220
|
export { createAdapterContext, runInSyncWindow, getSyncWindowStore } from './adapter/context-builder';
|
|
84
221
|
export type { SyncWindow, AdapterContextOptions } from './adapter/context-builder';
|
|
85
222
|
export type { ChannelAdapterPluginSpec } from './adapter/plugin-helper';
|
|
86
|
-
export { resolveWindowsSpawnProgram, materializeWindowsSpawnProgram, resolveWindowsExecutablePath, } from './internal/windows-spawn';
|
|
223
|
+
export { resolveExecutablePath, resolveWindowsSpawnProgram, materializeWindowsSpawnProgram, resolveWindowsExecutablePath, } from './internal/windows-spawn';
|
|
87
224
|
export type { WindowsSpawnProgram, WindowsSpawnInvocation, ResolveWindowsSpawnProgramParams, } from './internal/windows-spawn';
|
|
225
|
+
export { filterAgentConfigs, formatAgentList } from './agent/agent-list-view';
|
|
226
|
+
export type { AgentListFilters, AgentListSnapshot, AgentListFormatOptions } from './agent/agent-list-view';
|
|
227
|
+
export type { PromptListResolver } from './template/types';
|