@namzu/sdk 45.1.0 → 48.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +436 -8
- package/README.md +7 -8
- package/dist/advisory/history.d.ts.map +1 -1
- package/dist/advisory/history.js +21 -1
- package/dist/advisory/history.js.map +1 -1
- package/dist/advisory/index.d.ts +1 -1
- package/dist/advisory/index.d.ts.map +1 -1
- package/dist/advisory/index.js +1 -1
- package/dist/advisory/index.js.map +1 -1
- package/dist/advisory/registry.d.ts +17 -0
- package/dist/advisory/registry.d.ts.map +1 -1
- package/dist/advisory/registry.js +26 -0
- package/dist/advisory/registry.js.map +1 -1
- package/dist/agents/PipelineAgent.d.ts +2 -46
- package/dist/agents/PipelineAgent.d.ts.map +1 -1
- package/dist/agents/PipelineAgent.js +2 -242
- package/dist/agents/PipelineAgent.js.map +1 -1
- package/dist/agents/QueryAgent.d.ts +21 -0
- package/dist/agents/QueryAgent.d.ts.map +1 -0
- package/dist/agents/QueryAgent.js +214 -0
- package/dist/agents/QueryAgent.js.map +1 -0
- package/dist/agents/ReactiveAgent.d.ts +4 -16
- package/dist/agents/ReactiveAgent.d.ts.map +1 -1
- package/dist/agents/ReactiveAgent.js +4 -183
- package/dist/agents/ReactiveAgent.js.map +1 -1
- package/dist/agents/RouterAgent.d.ts +2 -20
- package/dist/agents/RouterAgent.d.ts.map +1 -1
- package/dist/agents/RouterAgent.js +2 -266
- package/dist/agents/RouterAgent.js.map +1 -1
- package/dist/agents/SupervisorAgent.d.ts +3 -43
- package/dist/agents/SupervisorAgent.d.ts.map +1 -1
- package/dist/agents/SupervisorAgent.js +3 -418
- package/dist/agents/SupervisorAgent.js.map +1 -1
- package/dist/agents/defineAgent.d.ts +2 -1
- package/dist/agents/defineAgent.d.ts.map +1 -1
- package/dist/agents/defineAgent.js +6 -1
- package/dist/agents/defineAgent.js.map +1 -1
- package/dist/agents/examples/PipelineAgent.d.ts +46 -0
- package/dist/agents/examples/PipelineAgent.d.ts.map +1 -0
- package/dist/agents/examples/PipelineAgent.js +242 -0
- package/dist/agents/examples/PipelineAgent.js.map +1 -0
- package/dist/agents/examples/RouterAgent.d.ts +22 -0
- package/dist/agents/examples/RouterAgent.d.ts.map +1 -0
- package/dist/agents/examples/RouterAgent.js +268 -0
- package/dist/agents/examples/RouterAgent.js.map +1 -0
- package/dist/agents/examples/SupervisorAgent.d.ts +45 -0
- package/dist/agents/examples/SupervisorAgent.d.ts.map +1 -0
- package/dist/agents/examples/SupervisorAgent.js +406 -0
- package/dist/agents/examples/SupervisorAgent.js.map +1 -0
- package/dist/agents/explore.d.ts +6 -3
- package/dist/agents/explore.d.ts.map +1 -1
- package/dist/agents/explore.js +6 -3
- package/dist/agents/explore.js.map +1 -1
- package/dist/agents/forward-options.d.ts +11 -0
- package/dist/agents/forward-options.d.ts.map +1 -0
- package/dist/agents/forward-options.js +15 -0
- package/dist/agents/forward-options.js.map +1 -0
- package/dist/agents/index.d.ts +1 -0
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +2 -0
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/runAgent.d.ts +19 -8
- package/dist/agents/runAgent.d.ts.map +1 -1
- package/dist/agents/runAgent.js +99 -29
- package/dist/agents/runAgent.js.map +1 -1
- package/dist/authorization/command-line.d.ts +2 -0
- package/dist/authorization/command-line.d.ts.map +1 -1
- package/dist/authorization/command-line.js +2 -2
- package/dist/authorization/command-line.js.map +1 -1
- package/dist/authorization/gate.d.ts +13 -2
- package/dist/authorization/gate.d.ts.map +1 -1
- package/dist/authorization/gate.js +37 -5
- package/dist/authorization/gate.js.map +1 -1
- package/dist/authorization/program.d.ts +151 -0
- package/dist/authorization/program.d.ts.map +1 -0
- package/dist/authorization/program.js +713 -0
- package/dist/authorization/program.js.map +1 -0
- package/dist/authorization/reexec-wrapper.d.ts +106 -0
- package/dist/authorization/reexec-wrapper.d.ts.map +1 -0
- package/dist/authorization/reexec-wrapper.js +532 -0
- package/dist/authorization/reexec-wrapper.js.map +1 -0
- package/dist/authorization/rules.d.ts +9 -0
- package/dist/authorization/rules.d.ts.map +1 -1
- package/dist/authorization/rules.js +27 -1
- package/dist/authorization/rules.js.map +1 -1
- package/dist/authorization/shell-lexer.d.ts +39 -0
- package/dist/authorization/shell-lexer.d.ts.map +1 -1
- package/dist/authorization/shell-lexer.js +113 -69
- package/dist/authorization/shell-lexer.js.map +1 -1
- package/dist/bridge/sse/mapper.d.ts.map +1 -1
- package/dist/bridge/sse/mapper.js +6 -0
- package/dist/bridge/sse/mapper.js.map +1 -1
- package/dist/capabilities/index.d.ts +54 -0
- package/dist/capabilities/index.d.ts.map +1 -0
- package/dist/capabilities/index.js +92 -0
- package/dist/capabilities/index.js.map +1 -0
- package/dist/config/registry.d.ts +2 -1
- package/dist/config/registry.d.ts.map +1 -1
- package/dist/config/registry.js +3 -2
- package/dist/config/registry.js.map +1 -1
- package/dist/connector/index.d.ts +4 -4
- package/dist/connector/index.d.ts.map +1 -1
- package/dist/connector/index.js +3 -3
- package/dist/connector/index.js.map +1 -1
- package/dist/connector/mcp/adapter.d.ts +16 -1
- package/dist/connector/mcp/adapter.d.ts.map +1 -1
- package/dist/connector/mcp/adapter.js +60 -4
- package/dist/connector/mcp/adapter.js.map +1 -1
- package/dist/connector/mcp/client.d.ts +13 -4
- package/dist/connector/mcp/client.d.ts.map +1 -1
- package/dist/connector/mcp/client.js +20 -3
- package/dist/connector/mcp/client.js.map +1 -1
- package/dist/connector/mcp/discovery.d.ts +24 -1
- package/dist/connector/mcp/discovery.d.ts.map +1 -1
- package/dist/connector/mcp/discovery.js +44 -0
- package/dist/connector/mcp/discovery.js.map +1 -1
- package/dist/connector/mcp/index.d.ts +2 -0
- package/dist/connector/mcp/index.d.ts.map +1 -1
- package/dist/connector/mcp/index.js +11 -0
- package/dist/connector/mcp/index.js.map +1 -1
- package/dist/connector/mcp/mcp-toolset.d.ts +133 -0
- package/dist/connector/mcp/mcp-toolset.d.ts.map +1 -0
- package/dist/connector/mcp/mcp-toolset.js +399 -0
- package/dist/connector/mcp/mcp-toolset.js.map +1 -0
- package/dist/connector/tools/index.d.ts +2 -2
- package/dist/connector/tools/index.d.ts.map +1 -1
- package/dist/connector/tools/index.js +1 -1
- package/dist/connector/tools/index.js.map +1 -1
- package/dist/connector/tools/router.d.ts +15 -13
- package/dist/connector/tools/router.d.ts.map +1 -1
- package/dist/connector/tools/router.js +30 -51
- package/dist/connector/tools/router.js.map +1 -1
- package/dist/contracts/a2a.d.ts +2 -2
- package/dist/directory/derive-supervisor.d.ts +2 -2
- package/dist/directory/derive-supervisor.d.ts.map +1 -1
- package/dist/directory/derive-supervisor.js +6 -7
- package/dist/directory/derive-supervisor.js.map +1 -1
- package/dist/directory/derive.d.ts.map +1 -1
- package/dist/directory/derive.js +5 -5
- package/dist/directory/derive.js.map +1 -1
- package/dist/execution/code-runtime/types.d.ts +2 -2
- package/dist/execution/code-runtime/types.js +1 -1
- package/dist/invariants/index.d.ts +2 -1
- package/dist/invariants/index.d.ts.map +1 -1
- package/dist/invariants/index.js +3 -2
- package/dist/invariants/index.js.map +1 -1
- package/dist/manager/agent/lifecycle.d.ts.map +1 -1
- package/dist/manager/agent/lifecycle.js +9 -0
- package/dist/manager/agent/lifecycle.js.map +1 -1
- package/dist/manager/connector/environment.d.ts +6 -0
- package/dist/manager/connector/environment.d.ts.map +1 -1
- package/dist/manager/connector/environment.js +11 -4
- package/dist/manager/connector/environment.js.map +1 -1
- package/dist/manager/connector/index.d.ts +2 -2
- package/dist/manager/connector/index.d.ts.map +1 -1
- package/dist/manager/connector/index.js +2 -2
- package/dist/manager/connector/index.js.map +1 -1
- package/dist/manager/connector/tenant.d.ts +6 -0
- package/dist/manager/connector/tenant.d.ts.map +1 -1
- package/dist/manager/connector/tenant.js +11 -4
- package/dist/manager/connector/tenant.js.map +1 -1
- package/dist/manager/index.d.ts +2 -2
- package/dist/manager/index.d.ts.map +1 -1
- package/dist/manager/index.js +2 -2
- package/dist/manager/index.js.map +1 -1
- package/dist/manager/resident/learning-observation.d.ts +4 -4
- package/dist/manager/resident/learning.d.ts +36 -36
- package/dist/manager/session/attribution.d.ts +22 -0
- package/dist/manager/session/attribution.d.ts.map +1 -0
- package/dist/manager/session/attribution.js +64 -0
- package/dist/manager/session/attribution.js.map +1 -0
- package/dist/manager/session/turn-recorder.d.ts +14 -0
- package/dist/manager/session/turn-recorder.d.ts.map +1 -1
- package/dist/manager/session/turn-recorder.js +208 -55
- package/dist/manager/session/turn-recorder.js.map +1 -1
- package/dist/peers/address.d.ts +36 -0
- package/dist/peers/address.d.ts.map +1 -0
- package/dist/peers/address.js +52 -0
- package/dist/peers/address.js.map +1 -0
- package/dist/peers/client.d.ts +47 -0
- package/dist/peers/client.d.ts.map +1 -0
- package/dist/peers/client.js +132 -0
- package/dist/peers/client.js.map +1 -0
- package/dist/peers/dir.d.ts +88 -0
- package/dist/peers/dir.d.ts.map +1 -0
- package/dist/peers/dir.js +139 -0
- package/dist/peers/dir.js.map +1 -0
- package/dist/peers/endpoint.d.ts +144 -0
- package/dist/peers/endpoint.d.ts.map +1 -0
- package/dist/peers/endpoint.js +420 -0
- package/dist/peers/endpoint.js.map +1 -0
- package/dist/peers/envelope.d.ts +42 -0
- package/dist/peers/envelope.d.ts.map +1 -0
- package/dist/peers/envelope.js +110 -0
- package/dist/peers/envelope.js.map +1 -0
- package/dist/peers/index.d.ts +30 -0
- package/dist/peers/index.d.ts.map +1 -0
- package/dist/peers/index.js +22 -0
- package/dist/peers/index.js.map +1 -0
- package/dist/peers/protocol.d.ts +645 -0
- package/dist/peers/protocol.d.ts.map +1 -0
- package/dist/peers/protocol.js +151 -0
- package/dist/peers/protocol.js.map +1 -0
- package/dist/peers/record.d.ts +71 -0
- package/dist/peers/record.d.ts.map +1 -0
- package/dist/peers/record.js +45 -0
- package/dist/peers/record.js.map +1 -0
- package/dist/peers/registry.d.ts +54 -0
- package/dist/peers/registry.d.ts.map +1 -0
- package/dist/peers/registry.js +213 -0
- package/dist/peers/registry.js.map +1 -0
- package/dist/plugin/define.d.ts +24 -0
- package/dist/plugin/define.d.ts.map +1 -0
- package/dist/plugin/define.js +42 -0
- package/dist/plugin/define.js.map +1 -0
- package/dist/plugin/index.d.ts +2 -0
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/index.js +1 -0
- package/dist/plugin/index.js.map +1 -1
- package/dist/plugin/lifecycle.d.ts +27 -3
- package/dist/plugin/lifecycle.d.ts.map +1 -1
- package/dist/plugin/lifecycle.js +242 -92
- package/dist/plugin/lifecycle.js.map +1 -1
- package/dist/plugin/resolver.d.ts +2 -2
- package/dist/plugin/resolver.d.ts.map +1 -1
- package/dist/plugin/resolver.js.map +1 -1
- package/dist/plugin/shell-hook.d.ts.map +1 -1
- package/dist/plugin/shell-hook.js +17 -3
- package/dist/plugin/shell-hook.js.map +1 -1
- package/dist/pricing/catalogue.generated.d.ts.map +1 -1
- package/dist/pricing/catalogue.generated.js +28 -4
- package/dist/pricing/catalogue.generated.js.map +1 -1
- package/dist/probe/errors.d.ts +2 -1
- package/dist/probe/errors.d.ts.map +1 -1
- package/dist/probe/errors.js +3 -2
- package/dist/probe/errors.js.map +1 -1
- package/dist/prompt/coding-agent-doctrine.d.ts +18 -7
- package/dist/prompt/coding-agent-doctrine.d.ts.map +1 -1
- package/dist/prompt/coding-agent-doctrine.js +11 -6
- package/dist/prompt/coding-agent-doctrine.js.map +1 -1
- package/dist/prompt/contributions.d.ts +4 -1
- package/dist/prompt/contributions.d.ts.map +1 -1
- package/dist/prompt/contributions.js +7 -2
- package/dist/prompt/contributions.js.map +1 -1
- package/dist/prompt/index.d.ts +1 -1
- package/dist/prompt/index.d.ts.map +1 -1
- package/dist/prompt/index.js +1 -1
- package/dist/prompt/index.js.map +1 -1
- package/dist/provider/collect-chat-completion.d.ts +6 -1
- package/dist/provider/collect-chat-completion.d.ts.map +1 -1
- package/dist/provider/collect-chat-completion.js +88 -10
- package/dist/provider/collect-chat-completion.js.map +1 -1
- package/dist/provider/mock.d.ts.map +1 -1
- package/dist/provider/mock.js +23 -6
- package/dist/provider/mock.js.map +1 -1
- package/dist/provider/registry.d.ts +2 -1
- package/dist/provider/registry.d.ts.map +1 -1
- package/dist/provider/registry.js +3 -2
- package/dist/provider/registry.js.map +1 -1
- package/dist/provider/tool-call-framing.d.ts +164 -0
- package/dist/provider/tool-call-framing.d.ts.map +1 -0
- package/dist/provider/tool-call-framing.js +163 -0
- package/dist/provider/tool-call-framing.js.map +1 -0
- package/dist/public-runtime.d.ts +27 -14
- package/dist/public-runtime.d.ts.map +1 -1
- package/dist/public-runtime.js +49 -11
- package/dist/public-runtime.js.map +1 -1
- package/dist/public-tools.d.ts +9 -6
- package/dist/public-tools.d.ts.map +1 -1
- package/dist/public-tools.js +13 -5
- package/dist/public-tools.js.map +1 -1
- package/dist/public-types.d.ts +16 -5
- package/dist/public-types.d.ts.map +1 -1
- package/dist/read-model/registry.d.ts +2 -1
- package/dist/read-model/registry.d.ts.map +1 -1
- package/dist/read-model/registry.js +3 -2
- package/dist/read-model/registry.js.map +1 -1
- package/dist/registry/ManagedRegistry.d.ts +30 -0
- package/dist/registry/ManagedRegistry.d.ts.map +1 -1
- package/dist/registry/ManagedRegistry.js +45 -6
- package/dist/registry/ManagedRegistry.js.map +1 -1
- package/dist/registry/collision.d.ts +57 -0
- package/dist/registry/collision.d.ts.map +1 -0
- package/dist/registry/collision.js +41 -0
- package/dist/registry/collision.js.map +1 -0
- package/dist/registry/command/index.d.ts +5 -3
- package/dist/registry/command/index.d.ts.map +1 -1
- package/dist/registry/command/index.js +6 -4
- package/dist/registry/command/index.js.map +1 -1
- package/dist/registry/index.d.ts +3 -4
- package/dist/registry/index.d.ts.map +1 -1
- package/dist/registry/index.js +2 -2
- package/dist/registry/index.js.map +1 -1
- package/dist/registry/plugin/index.d.ts.map +1 -1
- package/dist/registry/plugin/index.js +14 -1
- package/dist/registry/plugin/index.js.map +1 -1
- package/dist/registry/tool/callable.d.ts +22 -0
- package/dist/registry/tool/callable.d.ts.map +1 -0
- package/dist/registry/tool/callable.js +28 -0
- package/dist/registry/tool/callable.js.map +1 -0
- package/dist/registry/tool/execute.d.ts +14 -77
- package/dist/registry/tool/execute.d.ts.map +1 -1
- package/dist/registry/tool/execute.js +15 -720
- package/dist/registry/tool/execute.js.map +1 -1
- package/dist/registry/tool/portable.d.ts +25 -0
- package/dist/registry/tool/portable.d.ts.map +1 -1
- package/dist/registry/tool/portable.js +50 -0
- package/dist/registry/tool/portable.js.map +1 -1
- package/dist/registry/tool/presentation.d.ts +6 -5
- package/dist/registry/tool/presentation.d.ts.map +1 -1
- package/dist/registry/tool/presentation.js +3 -3
- package/dist/registry/tool/presentation.js.map +1 -1
- package/dist/runtime/bidi/session.d.ts +5 -4
- package/dist/runtime/bidi/session.d.ts.map +1 -1
- package/dist/runtime/bidi/session.js +18 -1
- package/dist/runtime/bidi/session.js.map +1 -1
- package/dist/runtime/query/executor/tool-call-admission.d.ts +82 -13
- package/dist/runtime/query/executor/tool-call-admission.d.ts.map +1 -1
- package/dist/runtime/query/executor/tool-call-admission.js +227 -17
- package/dist/runtime/query/executor/tool-call-admission.js.map +1 -1
- package/dist/runtime/query/executor.d.ts +37 -5
- package/dist/runtime/query/executor.d.ts.map +1 -1
- package/dist/runtime/query/executor.js +103 -14
- package/dist/runtime/query/executor.js.map +1 -1
- package/dist/runtime/query/file-evidence-replay.d.ts +1 -1
- package/dist/runtime/query/file-evidence-replay.d.ts.map +1 -1
- package/dist/runtime/query/file-evidence-replay.js +8 -7
- package/dist/runtime/query/file-evidence-replay.js.map +1 -1
- package/dist/runtime/query/fork/prepare.d.ts +4 -1
- package/dist/runtime/query/fork/prepare.d.ts.map +1 -1
- package/dist/runtime/query/fork/prepare.js +4 -0
- package/dist/runtime/query/fork/prepare.js.map +1 -1
- package/dist/runtime/query/guardrail-presets.d.ts +4 -3
- package/dist/runtime/query/guardrail-presets.d.ts.map +1 -1
- package/dist/runtime/query/guardrail-presets.js +4 -3
- package/dist/runtime/query/guardrail-presets.js.map +1 -1
- package/dist/runtime/query/index.d.ts +23 -10
- package/dist/runtime/query/index.d.ts.map +1 -1
- package/dist/runtime/query/index.js +149 -70
- package/dist/runtime/query/index.js.map +1 -1
- package/dist/runtime/query/iteration/index.d.ts.map +1 -1
- package/dist/runtime/query/iteration/index.js +8 -1
- package/dist/runtime/query/iteration/index.js.map +1 -1
- package/dist/runtime/query/iteration/phases/compaction.js +1 -1
- package/dist/runtime/query/iteration/phases/compaction.js.map +1 -1
- package/dist/runtime/query/iteration/phases/context.d.ts +2 -2
- package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/tool-review.js +55 -2
- package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
- package/dist/runtime/query/iteration/stream-turn.d.ts.map +1 -1
- package/dist/runtime/query/iteration/stream-turn.js +342 -116
- package/dist/runtime/query/iteration/stream-turn.js.map +1 -1
- package/dist/runtime/query/iteration/tool-input.d.ts +79 -0
- package/dist/runtime/query/iteration/tool-input.d.ts.map +1 -0
- package/dist/runtime/query/iteration/tool-input.js +291 -0
- package/dist/runtime/query/iteration/tool-input.js.map +1 -0
- package/dist/runtime/query/observation-context.d.ts +2 -2
- package/dist/runtime/query/observation-context.d.ts.map +1 -1
- package/dist/runtime/query/observation-context.js.map +1 -1
- package/dist/runtime/query/prelude-lease.d.ts +18 -0
- package/dist/runtime/query/prelude-lease.d.ts.map +1 -0
- package/dist/runtime/query/prelude-lease.js +121 -0
- package/dist/runtime/query/prelude-lease.js.map +1 -0
- package/dist/runtime/query/prepare-turn.d.ts.map +1 -1
- package/dist/runtime/query/prepare-turn.js +386 -187
- package/dist/runtime/query/prepare-turn.js.map +1 -1
- package/dist/runtime/query/prompt-cache.d.ts +2 -2
- package/dist/runtime/query/prompt-cache.d.ts.map +1 -1
- package/dist/runtime/query/prompt.d.ts +2 -2
- package/dist/runtime/query/prompt.d.ts.map +1 -1
- package/dist/runtime/query/prompt.js +1 -1
- package/dist/runtime/query/prompt.js.map +1 -1
- package/dist/runtime/query/resume-session.d.ts.map +1 -1
- package/dist/runtime/query/resume-session.js +37 -2
- package/dist/runtime/query/resume-session.js.map +1 -1
- package/dist/runtime/query/review-policy.d.ts +65 -3
- package/dist/runtime/query/review-policy.d.ts.map +1 -1
- package/dist/runtime/query/review-policy.js +143 -22
- package/dist/runtime/query/review-policy.js.map +1 -1
- package/dist/runtime/query/tooling.d.ts +3 -2
- package/dist/runtime/query/tooling.d.ts.map +1 -1
- package/dist/runtime/query/tooling.js.map +1 -1
- package/dist/runtime/query/turn-state.d.ts.map +1 -1
- package/dist/runtime/query/turn-state.js +5 -0
- package/dist/runtime/query/turn-state.js.map +1 -1
- package/dist/runtime/system-events.d.ts +112 -0
- package/dist/runtime/system-events.d.ts.map +1 -0
- package/dist/runtime/system-events.js +183 -0
- package/dist/runtime/system-events.js.map +1 -0
- package/dist/scheduler/delegating.d.ts +2 -1
- package/dist/scheduler/delegating.d.ts.map +1 -1
- package/dist/scheduler/delegating.js +3 -2
- package/dist/scheduler/delegating.js.map +1 -1
- package/dist/skills/index.d.ts +1 -1
- package/dist/skills/index.d.ts.map +1 -1
- package/dist/skills/index.js +1 -1
- package/dist/skills/index.js.map +1 -1
- package/dist/skills/registry.d.ts +18 -0
- package/dist/skills/registry.d.ts.map +1 -1
- package/dist/skills/registry.js +20 -0
- package/dist/skills/registry.js.map +1 -1
- package/dist/store/evidence/index-page.d.ts +2 -2
- package/dist/store/session-log/conformance.d.ts +1 -1
- package/dist/store/session-log/conformance.d.ts.map +1 -1
- package/dist/store/session-log/conformance.js +49 -8
- package/dist/store/session-log/conformance.js.map +1 -1
- package/dist/store/session-log/core.d.ts +8 -3
- package/dist/store/session-log/core.d.ts.map +1 -1
- package/dist/store/session-log/core.js +2 -1
- package/dist/store/session-log/core.js.map +1 -1
- package/dist/store/session-log/fold.d.ts +12 -0
- package/dist/store/session-log/fold.d.ts.map +1 -1
- package/dist/store/session-log/fold.js +57 -7
- package/dist/store/session-log/fold.js.map +1 -1
- package/dist/store/session-log/index.d.ts +2 -2
- package/dist/store/session-log/index.d.ts.map +1 -1
- package/dist/store/session-log/index.js +1 -1
- package/dist/store/session-log/index.js.map +1 -1
- package/dist/test-support/toolset.d.ts +19 -0
- package/dist/test-support/toolset.d.ts.map +1 -0
- package/dist/test-support/toolset.js +20 -0
- package/dist/test-support/toolset.js.map +1 -0
- package/dist/tools/builtins/bash.d.ts +29 -0
- package/dist/tools/builtins/bash.d.ts.map +1 -1
- package/dist/tools/builtins/bash.js +19 -9
- package/dist/tools/builtins/bash.js.map +1 -1
- package/dist/tools/builtins/browser-url.d.ts +1 -1
- package/dist/tools/builtins/browser-url.js +1 -1
- package/dist/tools/builtins/browser.d.ts +6 -6
- package/dist/tools/builtins/computer-use-coordinates.d.ts +65 -0
- package/dist/tools/builtins/computer-use-coordinates.d.ts.map +1 -0
- package/dist/tools/builtins/computer-use-coordinates.js +123 -0
- package/dist/tools/builtins/computer-use-coordinates.js.map +1 -0
- package/dist/tools/builtins/computer-use-image.d.ts +77 -0
- package/dist/tools/builtins/computer-use-image.d.ts.map +1 -0
- package/dist/tools/builtins/computer-use-image.js +223 -0
- package/dist/tools/builtins/computer-use-image.js.map +1 -0
- package/dist/tools/builtins/computer-use.d.ts +519 -14
- package/dist/tools/builtins/computer-use.d.ts.map +1 -1
- package/dist/tools/builtins/computer-use.js +1196 -183
- package/dist/tools/builtins/computer-use.js.map +1 -1
- package/dist/tools/builtins/edit.d.ts.map +1 -1
- package/dist/tools/builtins/edit.js +9 -1
- package/dist/tools/builtins/edit.js.map +1 -1
- package/dist/tools/builtins/index.d.ts +2 -1
- package/dist/tools/builtins/index.d.ts.map +1 -1
- package/dist/tools/builtins/index.js +1 -1
- package/dist/tools/builtins/index.js.map +1 -1
- package/dist/tools/builtins/json-string-hint.d.ts +15 -0
- package/dist/tools/builtins/json-string-hint.d.ts.map +1 -0
- package/dist/tools/builtins/json-string-hint.js +17 -0
- package/dist/tools/builtins/json-string-hint.js.map +1 -0
- package/dist/tools/builtins/search-tools.d.ts.map +1 -1
- package/dist/tools/builtins/search-tools.js +7 -15
- package/dist/tools/builtins/search-tools.js.map +1 -1
- package/dist/tools/builtins/skill.d.ts +74 -0
- package/dist/tools/builtins/skill.d.ts.map +1 -1
- package/dist/tools/builtins/skill.js +214 -174
- package/dist/tools/builtins/skill.js.map +1 -1
- package/dist/tools/builtins/write-file.d.ts.map +1 -1
- package/dist/tools/builtins/write-file.js +11 -0
- package/dist/tools/builtins/write-file.js.map +1 -1
- package/dist/tools/command-shell.d.ts +10 -0
- package/dist/tools/command-shell.d.ts.map +1 -1
- package/dist/tools/command-shell.js +45 -1
- package/dist/tools/command-shell.js.map +1 -1
- package/dist/tools/coordinator/agent.d.ts.map +1 -1
- package/dist/tools/coordinator/agent.js +5 -0
- package/dist/tools/coordinator/agent.js.map +1 -1
- package/dist/tools/coordinator/ask-user-question.d.ts.map +1 -1
- package/dist/tools/coordinator/ask-user-question.js +26 -13
- package/dist/tools/coordinator/ask-user-question.js.map +1 -1
- package/dist/tools/coordinator/index.d.ts.map +1 -1
- package/dist/tools/coordinator/index.js +5 -0
- package/dist/tools/coordinator/index.js.map +1 -1
- package/dist/tools/coordinator/question-options.d.ts +78 -0
- package/dist/tools/coordinator/question-options.d.ts.map +1 -0
- package/dist/tools/coordinator/question-options.js +153 -0
- package/dist/tools/coordinator/question-options.js.map +1 -0
- package/dist/tools/defineTool.d.ts +12 -0
- package/dist/tools/defineTool.d.ts.map +1 -1
- package/dist/tools/defineTool.js +24 -0
- package/dist/tools/defineTool.js.map +1 -1
- package/dist/tools/memory/search.d.ts.map +1 -1
- package/dist/tools/memory/search.js +4 -1
- package/dist/tools/memory/search.js.map +1 -1
- package/dist/tools/memory/update.d.ts.map +1 -1
- package/dist/tools/memory/update.js +8 -5
- package/dist/tools/memory/update.js.map +1 -1
- package/dist/tools/render-nonce.d.ts +47 -0
- package/dist/tools/render-nonce.d.ts.map +1 -0
- package/dist/tools/render-nonce.js +63 -0
- package/dist/tools/render-nonce.js.map +1 -0
- package/dist/tools/roster.d.ts +46 -19
- package/dist/tools/roster.d.ts.map +1 -1
- package/dist/tools/roster.js +63 -33
- package/dist/tools/roster.js.map +1 -1
- package/dist/tools/schedules/present.d.ts.map +1 -1
- package/dist/tools/schedules/present.js +2 -0
- package/dist/tools/schedules/present.js.map +1 -1
- package/dist/tools/schedules/schedule-tool.d.ts +6 -5
- package/dist/tools/schedules/schedule-tool.d.ts.map +1 -1
- package/dist/tools/schedules/schedule-tool.js +208 -37
- package/dist/tools/schedules/schedule-tool.js.map +1 -1
- package/dist/tools/schedules/types.d.ts +120 -6
- package/dist/tools/schedules/types.d.ts.map +1 -1
- package/dist/tools/trusted-read-only.d.ts +9 -5
- package/dist/tools/trusted-read-only.d.ts.map +1 -1
- package/dist/tools/trusted-read-only.js +14 -10
- package/dist/tools/trusted-read-only.js.map +1 -1
- package/dist/tools/untrusted-envelope.d.ts +67 -28
- package/dist/tools/untrusted-envelope.d.ts.map +1 -1
- package/dist/tools/untrusted-envelope.js +108 -59
- package/dist/tools/untrusted-envelope.js.map +1 -1
- package/dist/toolsets/combine.d.ts +44 -0
- package/dist/toolsets/combine.d.ts.map +1 -0
- package/dist/toolsets/combine.js +153 -0
- package/dist/toolsets/combine.js.map +1 -0
- package/dist/toolsets/manager.d.ts +201 -0
- package/dist/toolsets/manager.d.ts.map +1 -0
- package/dist/toolsets/manager.js +837 -0
- package/dist/toolsets/manager.js.map +1 -0
- package/dist/toolsets/source-glob.d.ts +15 -0
- package/dist/toolsets/source-glob.d.ts.map +1 -0
- package/dist/toolsets/source-glob.js +23 -0
- package/dist/toolsets/source-glob.js.map +1 -0
- package/dist/toolsets/toolset.d.ts +20 -0
- package/dist/toolsets/toolset.d.ts.map +1 -0
- package/dist/toolsets/toolset.js +28 -0
- package/dist/toolsets/toolset.js.map +1 -0
- package/dist/toolsets/types.d.ts +128 -0
- package/dist/toolsets/types.d.ts.map +1 -0
- package/dist/toolsets/types.js +33 -0
- package/dist/toolsets/types.js.map +1 -0
- package/dist/toolsets/wrappers.d.ts +59 -0
- package/dist/toolsets/wrappers.d.ts.map +1 -0
- package/dist/toolsets/wrappers.js +165 -0
- package/dist/toolsets/wrappers.js.map +1 -0
- package/dist/types/agent/base.d.ts +27 -16
- package/dist/types/agent/base.d.ts.map +1 -1
- package/dist/types/agent/index.d.ts +1 -0
- package/dist/types/agent/index.d.ts.map +1 -1
- package/dist/types/agent/index.js +1 -0
- package/dist/types/agent/index.js.map +1 -1
- package/dist/types/agent/pipeline.d.ts +2 -0
- package/dist/types/agent/pipeline.d.ts.map +1 -1
- package/dist/types/agent/query.d.ts +117 -0
- package/dist/types/agent/query.d.ts.map +1 -0
- package/dist/types/agent/query.js +2 -0
- package/dist/types/agent/query.js.map +1 -0
- package/dist/types/agent/reactive.d.ts +2 -129
- package/dist/types/agent/reactive.d.ts.map +1 -1
- package/dist/types/agent/router.d.ts +2 -0
- package/dist/types/agent/router.d.ts.map +1 -1
- package/dist/types/agent/supervisor.d.ts +5 -2
- package/dist/types/agent/supervisor.d.ts.map +1 -1
- package/dist/types/authorization/index.d.ts +70 -12
- package/dist/types/authorization/index.d.ts.map +1 -1
- package/dist/types/authorization/index.js +11 -0
- package/dist/types/authorization/index.js.map +1 -1
- package/dist/types/computer-use/index.d.ts +176 -0
- package/dist/types/computer-use/index.d.ts.map +1 -1
- package/dist/types/computer-use/index.js.map +1 -1
- package/dist/types/connector/mcp.d.ts +32 -0
- package/dist/types/connector/mcp.d.ts.map +1 -1
- package/dist/types/errors/index.d.ts +15 -0
- package/dist/types/errors/index.d.ts.map +1 -1
- package/dist/types/errors/index.js.map +1 -1
- package/dist/types/hitl/index.d.ts +57 -0
- package/dist/types/hitl/index.d.ts.map +1 -1
- package/dist/types/hitl/index.js.map +1 -1
- package/dist/types/message/index.d.ts +130 -9
- package/dist/types/message/index.d.ts.map +1 -1
- package/dist/types/message/index.js +4 -1
- package/dist/types/message/index.js.map +1 -1
- package/dist/types/plugin/index.d.ts +22 -4
- package/dist/types/plugin/index.d.ts.map +1 -1
- package/dist/types/plugin/index.js +1 -0
- package/dist/types/plugin/index.js.map +1 -1
- package/dist/types/provider/chat.d.ts +5 -0
- package/dist/types/provider/chat.d.ts.map +1 -1
- package/dist/types/provider/config.d.ts +8 -3
- package/dist/types/provider/config.d.ts.map +1 -1
- package/dist/types/provider/stream.d.ts +39 -0
- package/dist/types/provider/stream.d.ts.map +1 -1
- package/dist/types/sandbox/index.d.ts +1 -1
- package/dist/types/session/events.d.ts +14 -3
- package/dist/types/session/events.d.ts.map +1 -1
- package/dist/types/session/events.js.map +1 -1
- package/dist/types/tool/index.d.ts +171 -91
- package/dist/types/tool/index.d.ts.map +1 -1
- package/dist/types/tool/index.js.map +1 -1
- package/dist/types/toolset/index.d.ts +10 -40
- package/dist/types/toolset/index.d.ts.map +1 -1
- package/package.json +3 -1
- package/src/advisory/history.ts +27 -2
- package/src/advisory/index.ts +1 -1
- package/src/advisory/registry.ts +33 -0
- package/src/agents/AGENTS.md +14 -7
- package/src/agents/PipelineAgent.ts +2 -303
- package/src/agents/QueryAgent.ts +269 -0
- package/src/agents/ReactiveAgent.ts +6 -216
- package/src/agents/RouterAgent.ts +2 -337
- package/src/agents/SupervisorAgent.ts +3 -476
- package/src/agents/defineAgent.ts +13 -2
- package/src/agents/examples/PipelineAgent.ts +302 -0
- package/src/agents/examples/RouterAgent.ts +338 -0
- package/src/agents/examples/SupervisorAgent.ts +472 -0
- package/src/agents/explore.ts +6 -3
- package/src/agents/forward-options.ts +37 -0
- package/src/agents/index.ts +2 -0
- package/src/agents/runAgent.ts +144 -37
- package/src/authorization/command-line.ts +2 -2
- package/src/authorization/gate.ts +46 -5
- package/src/authorization/program.ts +773 -0
- package/src/authorization/reexec-wrapper.ts +589 -0
- package/src/authorization/rules.ts +36 -1
- package/src/authorization/shell-lexer.ts +136 -63
- package/src/bridge/sse/mapper.ts +6 -0
- package/src/capabilities/index.ts +157 -0
- package/src/config/registry.ts +4 -1
- package/src/connector/index.ts +9 -2
- package/src/connector/mcp/adapter.ts +58 -3
- package/src/connector/mcp/client.ts +20 -4
- package/src/connector/mcp/discovery.ts +60 -0
- package/src/connector/mcp/index.ts +13 -0
- package/src/connector/mcp/mcp-toolset.ts +515 -0
- package/src/connector/tools/index.ts +2 -2
- package/src/connector/tools/router.ts +35 -58
- package/src/directory/derive-supervisor.ts +12 -8
- package/src/directory/derive.ts +8 -5
- package/src/execution/code-runtime/types.ts +2 -2
- package/src/invariants/index.ts +4 -1
- package/src/manager/agent/lifecycle.ts +9 -0
- package/src/manager/connector/environment.ts +17 -4
- package/src/manager/connector/index.ts +2 -2
- package/src/manager/connector/tenant.ts +17 -4
- package/src/manager/index.ts +2 -2
- package/src/manager/session/attribution.ts +79 -0
- package/src/manager/session/turn-recorder.ts +211 -55
- package/src/peers/address.ts +58 -0
- package/src/peers/client.ts +202 -0
- package/src/peers/dir.ts +176 -0
- package/src/peers/endpoint.ts +564 -0
- package/src/peers/envelope.ts +121 -0
- package/src/peers/index.ts +96 -0
- package/src/peers/protocol.ts +196 -0
- package/src/peers/record.ts +56 -0
- package/src/peers/registry.ts +241 -0
- package/src/plugin/define.ts +68 -0
- package/src/plugin/index.ts +2 -0
- package/src/plugin/lifecycle.ts +286 -106
- package/src/plugin/resolver.ts +6 -3
- package/src/plugin/shell-hook.ts +21 -5
- package/src/pricing/catalogue.generated.ts +28 -4
- package/src/pricing/rates.source.json +27 -6
- package/src/probe/errors.ts +4 -1
- package/src/prompt/coding-agent-doctrine.ts +22 -10
- package/src/prompt/contributions.ts +12 -2
- package/src/prompt/index.ts +1 -0
- package/src/provider/collect-chat-completion.ts +96 -11
- package/src/provider/mock.ts +24 -6
- package/src/provider/registry.ts +4 -1
- package/src/provider/tool-call-framing.ts +226 -0
- package/src/public-runtime.ts +152 -9
- package/src/public-tools.ts +43 -5
- package/src/public-types.ts +65 -6
- package/src/read-model/registry.ts +7 -2
- package/src/registry/ManagedRegistry.ts +57 -6
- package/src/registry/collision.ts +64 -0
- package/src/registry/command/index.ts +7 -3
- package/src/registry/index.ts +3 -9
- package/src/registry/plugin/index.ts +14 -1
- package/src/registry/tool/callable.ts +36 -0
- package/src/registry/tool/execute.ts +16 -839
- package/src/registry/tool/portable.ts +59 -0
- package/src/registry/tool/presentation.ts +6 -5
- package/src/runtime/bidi/session.ts +24 -5
- package/src/runtime/query/executor/tool-call-admission.ts +288 -22
- package/src/runtime/query/executor.ts +129 -16
- package/src/runtime/query/file-evidence-replay.ts +8 -7
- package/src/runtime/query/fork/prepare.ts +6 -1
- package/src/runtime/query/guardrail-presets.ts +4 -3
- package/src/runtime/query/index.ts +199 -101
- package/src/runtime/query/iteration/index.ts +13 -3
- package/src/runtime/query/iteration/phases/compaction.ts +1 -1
- package/src/runtime/query/iteration/phases/context.ts +2 -2
- package/src/runtime/query/iteration/phases/tool-review.ts +59 -2
- package/src/runtime/query/iteration/stream-turn.ts +390 -136
- package/src/runtime/query/iteration/tool-input.ts +284 -0
- package/src/runtime/query/observation-context.ts +2 -2
- package/src/runtime/query/prelude-lease.ts +132 -0
- package/src/runtime/query/prepare-turn.ts +477 -198
- package/src/runtime/query/prompt-cache.ts +2 -2
- package/src/runtime/query/prompt.ts +4 -4
- package/src/runtime/query/resume-session.ts +42 -3
- package/src/runtime/query/review-policy.ts +190 -24
- package/src/runtime/query/tooling.ts +3 -6
- package/src/runtime/query/turn-state.ts +4 -0
- package/src/runtime/system-events.ts +246 -0
- package/src/scheduler/delegating.ts +7 -2
- package/src/skills/index.ts +1 -1
- package/src/skills/registry.ts +33 -0
- package/src/store/session-log/conformance.ts +51 -8
- package/src/store/session-log/core.ts +10 -4
- package/src/store/session-log/fold.ts +33 -7
- package/src/store/session-log/index.ts +2 -0
- package/src/test-support/toolset.ts +23 -0
- package/src/tools/builtins/bash.ts +27 -10
- package/src/tools/builtins/browser-url.ts +1 -1
- package/src/tools/builtins/computer-use-coordinates.ts +144 -0
- package/src/tools/builtins/computer-use-image.ts +278 -0
- package/src/tools/builtins/computer-use.ts +1495 -191
- package/src/tools/builtins/edit.ts +12 -2
- package/src/tools/builtins/index.ts +7 -1
- package/src/tools/builtins/json-string-hint.ts +16 -0
- package/src/tools/builtins/search-tools.ts +7 -20
- package/src/tools/builtins/skill.ts +304 -174
- package/src/tools/builtins/write-file.ts +12 -0
- package/src/tools/command-shell.ts +46 -1
- package/src/tools/coordinator/agent.ts +6 -0
- package/src/tools/coordinator/ask-user-question.ts +29 -15
- package/src/tools/coordinator/index.ts +6 -0
- package/src/tools/coordinator/question-options.ts +195 -0
- package/src/tools/defineTool.ts +38 -0
- package/src/tools/memory/search.ts +4 -1
- package/src/tools/memory/update.ts +8 -5
- package/src/tools/render-nonce.ts +69 -0
- package/src/tools/roster.ts +84 -33
- package/src/tools/schedules/present.ts +2 -0
- package/src/tools/schedules/schedule-tool.ts +238 -39
- package/src/tools/schedules/types.ts +120 -6
- package/src/tools/trusted-read-only.ts +19 -10
- package/src/tools/untrusted-envelope.ts +121 -57
- package/src/toolsets/combine.ts +181 -0
- package/src/toolsets/manager.ts +996 -0
- package/src/toolsets/source-glob.ts +22 -0
- package/src/toolsets/toolset.ts +31 -0
- package/src/toolsets/types.ts +154 -0
- package/src/toolsets/wrappers.ts +191 -0
- package/src/types/agent/base.ts +29 -16
- package/src/types/agent/index.ts +1 -0
- package/src/types/agent/pipeline.ts +2 -0
- package/src/types/agent/query.ts +129 -0
- package/src/types/agent/reactive.ts +5 -142
- package/src/types/agent/router.ts +2 -0
- package/src/types/agent/supervisor.ts +5 -2
- package/src/types/authorization/index.ts +33 -0
- package/src/types/computer-use/index.ts +202 -0
- package/src/types/connector/mcp.ts +32 -0
- package/src/types/errors/index.ts +15 -0
- package/src/types/hitl/index.ts +57 -0
- package/src/types/message/index.ts +135 -7
- package/src/types/plugin/index.ts +44 -21
- package/src/types/provider/chat.ts +5 -0
- package/src/types/provider/config.ts +8 -3
- package/src/types/provider/stream.ts +39 -0
- package/src/types/sandbox/index.ts +1 -1
- package/src/types/session/events.ts +14 -3
- package/src/types/tool/index.ts +173 -105
- package/src/types/toolset/index.ts +10 -47
- package/dist/registry/toolset/catalog.d.ts +0 -42
- package/dist/registry/toolset/catalog.d.ts.map +0 -1
- package/dist/registry/toolset/catalog.js +0 -234
- package/dist/registry/toolset/catalog.js.map +0 -1
- package/src/registry/toolset/catalog.ts +0 -308
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a registry does when a second item claims an id it already holds.
|
|
3
|
+
*
|
|
4
|
+
* Nine `*CollisionError` classes existed across the SDK before this file did
|
|
5
|
+
* (tool, host command, config namespace, prompt contribution, read model,
|
|
6
|
+
* invariant, probe, provider — see `RegistryCollisionError` below), each
|
|
7
|
+
* hand-rolled, and a handful of registries never threw at all —
|
|
8
|
+
* `ManagedRegistry.register` warned and overwrote by default, `AdvisorRegistry`
|
|
9
|
+
* and the two connector managers (`manager/connector/environment.ts`,
|
|
10
|
+
* `tenant.ts`) warned and kept the original, and `SkillRegistry.add` did
|
|
11
|
+
* neither, in total silence. This file gives the concept a shared
|
|
12
|
+
* vocabulary, and every one of those registries now throws on a duplicate id
|
|
13
|
+
* by default (`RegistryCollisionError` or a domain-specific subclass); a
|
|
14
|
+
* caller that genuinely means to replace an existing entry says so
|
|
15
|
+
* explicitly at the call site.
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* A named collision policy for a `ManagedRegistry`.
|
|
19
|
+
*
|
|
20
|
+
* - `'throw'` (default): raise a {@link RegistryCollisionError} naming this
|
|
21
|
+
* registry and the id, and leave the existing item in place. Right for
|
|
22
|
+
* every registry here unless a caller can name a reason a second
|
|
23
|
+
* registration under one id should not be a bug.
|
|
24
|
+
* - `'warn-overwrite'`: log a warning and replace the existing item.
|
|
25
|
+
* `ToolRegistry` used to keep this policy for its own `register`, so a
|
|
26
|
+
* host mounting the same tool twice (once a legitimate, common shape)
|
|
27
|
+
* kept working unchanged; that class is gone now (plan.md v3 §2) — a
|
|
28
|
+
* `ToolManager`'s toolsets throw `ToolsetConflictError` on any collision
|
|
29
|
+
* instead, naming both sources, with no overwrite mode at all.
|
|
30
|
+
* - `'warn-skip'`: log a warning and keep the existing item — the one being
|
|
31
|
+
* registered is discarded.
|
|
32
|
+
*
|
|
33
|
+
* A single call that needs to replace an existing entry on a registry whose
|
|
34
|
+
* policy is `'throw'` passes `{ replace: true }` to that call instead of
|
|
35
|
+
* changing the registry's policy — see `ManagedRegistry.register`.
|
|
36
|
+
*/
|
|
37
|
+
export type RegistryCollisionPolicy = 'throw' | 'warn-overwrite' | 'warn-skip';
|
|
38
|
+
/**
|
|
39
|
+
* A second item claiming an id a registry already holds.
|
|
40
|
+
*
|
|
41
|
+
* The base class every SDK `*CollisionError` extends, so a host that wants
|
|
42
|
+
* to catch "some registry collided" without naming every concrete error
|
|
43
|
+
* class can catch this one instead. Each concrete subclass keeps its own
|
|
44
|
+
* `name`, message and fields exactly as before — this only adds
|
|
45
|
+
* `registryName` and `collidingId`, which every collision shares by
|
|
46
|
+
* definition — and `ManagedRegistry`'s own `'throw'` policy (see
|
|
47
|
+
* {@link RegistryCollisionPolicy}) raises this class directly when a
|
|
48
|
+
* registry has no domain-specific subclass of its own.
|
|
49
|
+
*/
|
|
50
|
+
export declare class RegistryCollisionError extends Error {
|
|
51
|
+
/** Which registry raised this, e.g. `"ToolRegistry"`. */
|
|
52
|
+
readonly registryName: string;
|
|
53
|
+
/** The id or name two registrations collided on. */
|
|
54
|
+
readonly collidingId: string;
|
|
55
|
+
constructor(registryName: string, collidingId: string, message?: string);
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=collision.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collision.d.ts","sourceRoot":"","sources":["../../src/registry/collision.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,uBAAuB,GAAG,OAAO,GAAG,gBAAgB,GAAG,WAAW,CAAA;AAE9E;;;;;;;;;;;GAWG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;IAChD,yDAAyD;IACzD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,oDAAoD;IACpD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;gBAEhB,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAMvE"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a registry does when a second item claims an id it already holds.
|
|
3
|
+
*
|
|
4
|
+
* Nine `*CollisionError` classes existed across the SDK before this file did
|
|
5
|
+
* (tool, host command, config namespace, prompt contribution, read model,
|
|
6
|
+
* invariant, probe, provider — see `RegistryCollisionError` below), each
|
|
7
|
+
* hand-rolled, and a handful of registries never threw at all —
|
|
8
|
+
* `ManagedRegistry.register` warned and overwrote by default, `AdvisorRegistry`
|
|
9
|
+
* and the two connector managers (`manager/connector/environment.ts`,
|
|
10
|
+
* `tenant.ts`) warned and kept the original, and `SkillRegistry.add` did
|
|
11
|
+
* neither, in total silence. This file gives the concept a shared
|
|
12
|
+
* vocabulary, and every one of those registries now throws on a duplicate id
|
|
13
|
+
* by default (`RegistryCollisionError` or a domain-specific subclass); a
|
|
14
|
+
* caller that genuinely means to replace an existing entry says so
|
|
15
|
+
* explicitly at the call site.
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* A second item claiming an id a registry already holds.
|
|
19
|
+
*
|
|
20
|
+
* The base class every SDK `*CollisionError` extends, so a host that wants
|
|
21
|
+
* to catch "some registry collided" without naming every concrete error
|
|
22
|
+
* class can catch this one instead. Each concrete subclass keeps its own
|
|
23
|
+
* `name`, message and fields exactly as before — this only adds
|
|
24
|
+
* `registryName` and `collidingId`, which every collision shares by
|
|
25
|
+
* definition — and `ManagedRegistry`'s own `'throw'` policy (see
|
|
26
|
+
* {@link RegistryCollisionPolicy}) raises this class directly when a
|
|
27
|
+
* registry has no domain-specific subclass of its own.
|
|
28
|
+
*/
|
|
29
|
+
export class RegistryCollisionError extends Error {
|
|
30
|
+
/** Which registry raised this, e.g. `"ToolRegistry"`. */
|
|
31
|
+
registryName;
|
|
32
|
+
/** The id or name two registrations collided on. */
|
|
33
|
+
collidingId;
|
|
34
|
+
constructor(registryName, collidingId, message) {
|
|
35
|
+
super(message ?? `"${collidingId}" is already registered in ${registryName}.`);
|
|
36
|
+
this.name = 'RegistryCollisionError';
|
|
37
|
+
this.registryName = registryName;
|
|
38
|
+
this.collidingId = collidingId;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=collision.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collision.js","sourceRoot":"","sources":["../../src/registry/collision.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAwBH;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAChD,yDAAyD;IAChD,YAAY,CAAQ;IAC7B,oDAAoD;IAC3C,WAAW,CAAQ;IAE5B,YAAY,YAAoB,EAAE,WAAmB,EAAE,OAAgB;QACtE,KAAK,CAAC,OAAO,IAAI,IAAI,WAAW,8BAA8B,YAAY,GAAG,CAAC,CAAA;QAC9E,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAA;QACpC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAC/B,CAAC;CACD"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { HostCommandContext, HostCommandDescriptor, HostCommandOutcome, SerializableHostCommand } from '../../types/command/index.js';
|
|
2
2
|
import { ManagedRegistry } from '../ManagedRegistry.js';
|
|
3
|
+
import { RegistryCollisionError } from '../collision.js';
|
|
3
4
|
/**
|
|
4
5
|
* A second command claiming a name that is already taken.
|
|
5
6
|
*
|
|
@@ -8,7 +9,7 @@ import { ManagedRegistry } from '../ManagedRegistry.js';
|
|
|
8
9
|
* skip, rename, refuse to boot — has to catch it narrowly instead of
|
|
9
10
|
* matching on message text.
|
|
10
11
|
*/
|
|
11
|
-
export declare class HostCommandNameCollisionError extends
|
|
12
|
+
export declare class HostCommandNameCollisionError extends RegistryCollisionError {
|
|
12
13
|
readonly commandName: string;
|
|
13
14
|
constructor(commandName: string);
|
|
14
15
|
}
|
|
@@ -21,8 +22,9 @@ export declare class HostCommandNameCollisionError extends Error {
|
|
|
21
22
|
* right for a tool roster a host assembles deliberately and wrong here.
|
|
22
23
|
* These are operator-facing, and a shadowed command is invisible — it does
|
|
23
24
|
* not fail, it simply never runs, and the one that wins depends on
|
|
24
|
-
* registration order. `
|
|
25
|
-
* same reason one directory over
|
|
25
|
+
* registration order. `ToolManager` (`toolsets/manager.ts`) reaches the
|
|
26
|
+
* same conclusion for the same reason one directory over — a toolset
|
|
27
|
+
* collision throws rather than shadowing silently.
|
|
26
28
|
*/
|
|
27
29
|
export declare class HostCommandRegistry extends ManagedRegistry<HostCommandDescriptor> {
|
|
28
30
|
constructor(logger?: ConstructorParameters<typeof ManagedRegistry>[0]['logger']);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/registry/command/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,uBAAuB,EACvB,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/registry/command/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,uBAAuB,EACvB,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AAExD;;;;;;;GAOG;AACH,qBAAa,6BAA8B,SAAQ,sBAAsB;IACxE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;gBAEhB,WAAW,EAAE,MAAM;CAS/B;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,mBAAoB,SAAQ,eAAe,CAAC,qBAAqB,CAAC;gBAClE,MAAM,CAAC,EAAE,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAItE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,GAAG,IAAI;IACvD,QAAQ,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI;IAC3C,QAAQ,CAAC,KAAK,EAAE,qBAAqB,EAAE,GAAG,IAAI;IAmBvD;;;;;;;;OAQG;IACG,QAAQ,CACb,GAAG,EAAE,MAAM,EACX,GAAG,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAC/B,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAY1C;;;;;;;;OAQG;IACH,QAAQ,IAAI,SAAS,uBAAuB,EAAE;CAK9C"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ManagedRegistry } from '../ManagedRegistry.js';
|
|
2
|
+
import { RegistryCollisionError } from '../collision.js';
|
|
2
3
|
/**
|
|
3
4
|
* A second command claiming a name that is already taken.
|
|
4
5
|
*
|
|
@@ -7,10 +8,10 @@ import { ManagedRegistry } from '../ManagedRegistry.js';
|
|
|
7
8
|
* skip, rename, refuse to boot — has to catch it narrowly instead of
|
|
8
9
|
* matching on message text.
|
|
9
10
|
*/
|
|
10
|
-
export class HostCommandNameCollisionError extends
|
|
11
|
+
export class HostCommandNameCollisionError extends RegistryCollisionError {
|
|
11
12
|
commandName;
|
|
12
13
|
constructor(commandName) {
|
|
13
|
-
super(`Host command "/${commandName}" is already registered. Two commands answering to one name shadow each other silently, and which one wins depends on registration order.`);
|
|
14
|
+
super('HostCommandRegistry', commandName, `Host command "/${commandName}" is already registered. Two commands answering to one name shadow each other silently, and which one wins depends on registration order.`);
|
|
14
15
|
this.name = 'HostCommandNameCollisionError';
|
|
15
16
|
this.commandName = commandName;
|
|
16
17
|
}
|
|
@@ -24,8 +25,9 @@ export class HostCommandNameCollisionError extends Error {
|
|
|
24
25
|
* right for a tool roster a host assembles deliberately and wrong here.
|
|
25
26
|
* These are operator-facing, and a shadowed command is invisible — it does
|
|
26
27
|
* not fail, it simply never runs, and the one that wins depends on
|
|
27
|
-
* registration order. `
|
|
28
|
-
* same reason one directory over
|
|
28
|
+
* registration order. `ToolManager` (`toolsets/manager.ts`) reaches the
|
|
29
|
+
* same conclusion for the same reason one directory over — a toolset
|
|
30
|
+
* collision throws rather than shadowing silently.
|
|
29
31
|
*/
|
|
30
32
|
export class HostCommandRegistry extends ManagedRegistry {
|
|
31
33
|
constructor(logger) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/registry/command/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/registry/command/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AAExD;;;;;;;GAOG;AACH,MAAM,OAAO,6BAA8B,SAAQ,sBAAsB;IAC/D,WAAW,CAAQ;IAE5B,YAAY,WAAmB;QAC9B,KAAK,CACJ,qBAAqB,EACrB,WAAW,EACX,kBAAkB,WAAW,2IAA2I,CACxK,CAAA;QACD,IAAI,CAAC,IAAI,GAAG,+BAA+B,CAAA;QAC3C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAC/B,CAAC;CACD;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,mBAAoB,SAAQ,eAAsC;IAC9E,YAAY,MAAmE;QAC9E,KAAK,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IAC1F,CAAC;IAKQ,QAAQ,CAChB,QAAkE,EAClE,SAAiC;QAEjC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,KAAK,MAAM,IAAI,IAAI,QAAQ;gBAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAChD,OAAM;QACP,CAAC;QACD,MAAM,IAAI,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAA;QACpE,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,6BAA6B,CAAC,IAAI,CAAC,CAAA;QACjE,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAI,CAAC,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;YAC/E,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;YACnC,OAAM;QACP,CAAC;QACD,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACzB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,QAAQ,CACb,GAAW,EACX,GAAiC;QAEjC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;QAC1B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,SAAS,CAAA;QAC9C,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACrD,IAAI,CAAC,IAAI;YAAE,OAAO,SAAS,CAAA;QAE3B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC9B,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAA;QAE9B,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC,CAAA;IACpD,CAAC;IAED;;;;;;;;OAQG;IACH,QAAQ;QACP,OAAO,IAAI,CAAC,MAAM,EAAE;aAClB,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;aAC7C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IAC/C,CAAC;CACD"}
|
package/dist/registry/index.d.ts
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
export { BaseRegistry } from './BaseRegistry.js';
|
|
2
|
+
export { RegistryCollisionError } from './collision.js';
|
|
3
|
+
export type { RegistryCollisionPolicy } from './collision.js';
|
|
2
4
|
export { ManagedRegistry } from './ManagedRegistry.js';
|
|
3
5
|
export type { ManagedRegistryConfig } from './ManagedRegistry.js';
|
|
4
|
-
export { ToolNameCollisionError,
|
|
5
|
-
export type { ToolExecutionResult, ToolRegistryForkOptions } from './tool/execute.js';
|
|
6
|
-
export { ToolCatalog, createToolCatalogFromRegistry, loadingFromAvailability, toolDefinitionToCatalogEntry, } from './toolset/catalog.js';
|
|
7
|
-
export type { ToolCatalogFromRegistryOptions, ToolCatalogSearchOptions } from './toolset/catalog.js';
|
|
6
|
+
export { ToolNameCollisionError, TOOL_NAME_PATTERN, assertToolName } from './tool/execute.js';
|
|
8
7
|
export { ConnectorRegistry } from './connector/definitions.js';
|
|
9
8
|
export { ScopedConnectorRegistry } from './connector/scoped.js';
|
|
10
9
|
export { AgentRegistry } from './agent/definitions.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/registry/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/registry/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AACvD,YAAY,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,YAAY,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAEjE,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAE7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAIlD,OAAO,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACjE,YAAY,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA"}
|
package/dist/registry/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { BaseRegistry } from './BaseRegistry.js';
|
|
2
|
+
export { RegistryCollisionError } from './collision.js';
|
|
2
3
|
export { ManagedRegistry } from './ManagedRegistry.js';
|
|
3
|
-
export { ToolNameCollisionError,
|
|
4
|
-
export { ToolCatalog, createToolCatalogFromRegistry, loadingFromAvailability, toolDefinitionToCatalogEntry, } from './toolset/catalog.js';
|
|
4
|
+
export { ToolNameCollisionError, TOOL_NAME_PATTERN, assertToolName } from './tool/execute.js';
|
|
5
5
|
export { ConnectorRegistry } from './connector/definitions.js';
|
|
6
6
|
export { ScopedConnectorRegistry } from './connector/scoped.js';
|
|
7
7
|
export { AgentRegistry } from './agent/definitions.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/registry/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/registry/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AAEvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAGtD,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAE7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAElD,4EAA4E;AAC5E,4EAA4E;AAC5E,OAAO,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/registry/plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,qBAAa,cAAe,SAAQ,eAAe,CAAC,gBAAgB,CAAC;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/registry/plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,qBAAa,cAAe,SAAQ,eAAe,CAAC,gBAAgB,CAAC;;IAkBpE,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,gBAAgB,EAAE;IAInD,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,gBAAgB,EAAE;IAItD,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;CAGtD"}
|
|
@@ -1,7 +1,20 @@
|
|
|
1
1
|
import { ManagedRegistry } from '../ManagedRegistry.js';
|
|
2
2
|
export class PluginRegistry extends ManagedRegistry {
|
|
3
3
|
constructor() {
|
|
4
|
-
super({
|
|
4
|
+
super({
|
|
5
|
+
componentName: 'PluginRegistry',
|
|
6
|
+
idField: 'id',
|
|
7
|
+
// A public projection a host is meant to be able to overwrite —
|
|
8
|
+
// `PluginLifecycleManager` itself re-registers the same id under
|
|
9
|
+
// a new status on every enable/disable/error transition, and a
|
|
10
|
+
// host may write its own record here directly (executable
|
|
11
|
+
// contribution ownership, not this registry, is the lifecycle's
|
|
12
|
+
// real guard against a forged status — see `enable()`'s comment
|
|
13
|
+
// in `plugin/lifecycle.ts`). `ManagedRegistry`'s own default is
|
|
14
|
+
// `'throw'` now (see `registry/collision.ts`); this registry is
|
|
15
|
+
// one of the named exceptions.
|
|
16
|
+
onCollision: 'warn-overwrite',
|
|
17
|
+
});
|
|
5
18
|
}
|
|
6
19
|
listByScope(scope) {
|
|
7
20
|
return this.getAll().filter((def) => def.scope === scope);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/registry/plugin/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,MAAM,OAAO,cAAe,SAAQ,eAAiC;IACpE;QACC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/registry/plugin/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,MAAM,OAAO,cAAe,SAAQ,eAAiC;IACpE;QACC,KAAK,CAAC;YACL,aAAa,EAAE,gBAAgB;YAC/B,OAAO,EAAE,IAAI;YACb,gEAAgE;YAChE,iEAAiE;YACjE,+DAA+D;YAC/D,0DAA0D;YAC1D,gEAAgE;YAChE,gEAAgE;YAChE,gEAAgE;YAChE,gEAAgE;YAChE,+BAA+B;YAC/B,WAAW,EAAE,gBAAgB;SAC7B,CAAC,CAAA;IACH,CAAC;IAED,WAAW,CAAC,KAAkB;QAC7B,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,CAAA;IAC1D,CAAC;IAED,YAAY,CAAC,MAAoB;QAChC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;IAC5D,CAAC;IAED,UAAU,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;IAC/D,CAAC;CACD"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ToolManager } from '../../toolsets/manager.js';
|
|
2
|
+
/**
|
|
3
|
+
* The tools a call on this step can reach: present in the manager now,
|
|
4
|
+
* active, and on the step's allow-list when it has one. In toolset order.
|
|
5
|
+
*
|
|
6
|
+
* This is what every "Available: …" a model is shown must say, because a
|
|
7
|
+
* model takes it literally and calls the next name on it. Two answers used
|
|
8
|
+
* to build that list separately and disagreed. A refusal echoed the step's
|
|
9
|
+
* allow-list, which is a snapshot taken when the request was built and so
|
|
10
|
+
* can name a tool removed since — a connector that disconnected — or
|
|
11
|
+
* one that is deferred, which the executor refuses. An
|
|
12
|
+
* unknown-tool error listed the whole roster, which on a narrowed step is
|
|
13
|
+
* mostly tools the step refuses. Each sent the model to a name the other
|
|
14
|
+
* one answered, and a run went round between them until it was stopped.
|
|
15
|
+
*
|
|
16
|
+
* `allowed` absent means the step is not narrowed. An EMPTY list is a step
|
|
17
|
+
* that may call nothing, and the answer is then empty too.
|
|
18
|
+
*/
|
|
19
|
+
export declare function callableToolNames(tools: Pick<ToolManager, 'listNames' | 'availability'>, allowed: readonly string[] | undefined): string[];
|
|
20
|
+
/** The list as a model reads it: comma-separated, or `(none)`. */
|
|
21
|
+
export declare function formatToolNames(names: readonly string[]): string;
|
|
22
|
+
//# sourceMappingURL=callable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"callable.d.ts","sourceRoot":"","sources":["../../../src/registry/tool/callable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAE5D;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAChC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,cAAc,CAAC,EACtD,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GACpC,MAAM,EAAE,CAQV;AAED,kEAAkE;AAClE,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAEhE"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The tools a call on this step can reach: present in the manager now,
|
|
3
|
+
* active, and on the step's allow-list when it has one. In toolset order.
|
|
4
|
+
*
|
|
5
|
+
* This is what every "Available: …" a model is shown must say, because a
|
|
6
|
+
* model takes it literally and calls the next name on it. Two answers used
|
|
7
|
+
* to build that list separately and disagreed. A refusal echoed the step's
|
|
8
|
+
* allow-list, which is a snapshot taken when the request was built and so
|
|
9
|
+
* can name a tool removed since — a connector that disconnected — or
|
|
10
|
+
* one that is deferred, which the executor refuses. An
|
|
11
|
+
* unknown-tool error listed the whole roster, which on a narrowed step is
|
|
12
|
+
* mostly tools the step refuses. Each sent the model to a name the other
|
|
13
|
+
* one answered, and a run went round between them until it was stopped.
|
|
14
|
+
*
|
|
15
|
+
* `allowed` absent means the step is not narrowed. An EMPTY list is a step
|
|
16
|
+
* that may call nothing, and the answer is then empty too.
|
|
17
|
+
*/
|
|
18
|
+
export function callableToolNames(tools, allowed) {
|
|
19
|
+
const permitted = allowed === undefined ? undefined : new Set(allowed);
|
|
20
|
+
return tools
|
|
21
|
+
.listNames()
|
|
22
|
+
.filter((name) => (permitted === undefined || permitted.has(name)) && tools.availability(name) === 'active');
|
|
23
|
+
}
|
|
24
|
+
/** The list as a model reads it: comma-separated, or `(none)`. */
|
|
25
|
+
export function formatToolNames(names) {
|
|
26
|
+
return names.length > 0 ? names.join(', ') : '(none)';
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=callable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"callable.js","sourceRoot":"","sources":["../../../src/registry/tool/callable.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,iBAAiB,CAChC,KAAsD,EACtD,OAAsC;IAEtC,MAAM,SAAS,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,CAAA;IACtE,OAAO,KAAK;SACV,SAAS,EAAE;SACX,MAAM,CACN,CAAC,IAAI,EAAE,EAAE,CACR,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,QAAQ,CAC1F,CAAA;AACH,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,eAAe,CAAC,KAAwB;IACvD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;AACtD,CAAC"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
1
|
+
import { RegistryCollisionError } from '../collision.js';
|
|
2
|
+
/**
|
|
3
|
+
* Tool naming and a handful of small, stateless rendering helpers this file
|
|
4
|
+
* used to share with `ToolRegistry`.
|
|
5
|
+
*
|
|
6
|
+
* `ToolRegistry` itself — registration, availability, the execution
|
|
7
|
+
* pipeline — is gone (plan.md v3 §2): a runtime-owned `ToolManager`
|
|
8
|
+
* (`toolsets/manager.ts`) resolves toolsets instead, and carries its own
|
|
9
|
+
* copy of the pipeline this file used to define. What's left here is what
|
|
10
|
+
* had no toolset/manager analogue to move to: a tool name has to be valid
|
|
11
|
+
* regardless of which mechanism resolves it, and `describeWithOutput`/
|
|
12
|
+
* `toolDiscoveryHint` are pure string formatting `ToolManager` still calls.
|
|
13
|
+
*/
|
|
14
14
|
/**
|
|
15
15
|
* What a tool name may be, everywhere it comes from.
|
|
16
16
|
*
|
|
@@ -44,7 +44,7 @@ export declare function assertToolName(name: string): void;
|
|
|
44
44
|
* shadowing-by-name the only way to say "I do not want this tool", which is
|
|
45
45
|
* precisely what now throws.
|
|
46
46
|
*/
|
|
47
|
-
export declare class ToolNameCollisionError extends
|
|
47
|
+
export declare class ToolNameCollisionError extends RegistryCollisionError {
|
|
48
48
|
readonly toolName: string;
|
|
49
49
|
constructor(toolName: string, context: string);
|
|
50
50
|
}
|
|
@@ -63,69 +63,6 @@ export declare class ToolNameCollisionError extends Error {
|
|
|
63
63
|
* rebuilding it and fidelity to lose.
|
|
64
64
|
*/
|
|
65
65
|
export declare function describeWithOutput(description: string, outputSchema: Record<string, unknown> | undefined): string;
|
|
66
|
-
export declare class ToolRegistry extends ManagedRegistry<ToolDefinition> {
|
|
67
|
-
private availability;
|
|
68
|
-
private tierConfig?;
|
|
69
|
-
private resultGuardrails?;
|
|
70
|
-
private readonly preparations;
|
|
71
|
-
constructor(config?: ToolRegistryConfig);
|
|
72
|
-
/**
|
|
73
|
-
* Snapshot membership and availability for another turn without changing this
|
|
74
|
-
* registry. Discovery, registration and suspension then affect only the fork.
|
|
75
|
-
* Definitions, handlers and configuration remain shared; this is not a deep
|
|
76
|
-
* clone or an authorization boundary. Prepared executions belong only to the
|
|
77
|
-
* registry that prepared them and do not transfer to the fork.
|
|
78
|
-
*/
|
|
79
|
-
fork(options?: ToolRegistryForkOptions): ToolRegistry;
|
|
80
|
-
register(id: string, tool: ToolDefinition): void;
|
|
81
|
-
register(tool: ToolDefinition, initialState?: ToolAvailability): void;
|
|
82
|
-
register(tools: ToolDefinition[], initialState?: ToolAvailability): void;
|
|
83
|
-
private registerOne;
|
|
84
|
-
unregister(id: string): boolean;
|
|
85
|
-
clear(): void;
|
|
86
|
-
activate(names: string[]): void;
|
|
87
|
-
defer(names: string[]): void;
|
|
88
|
-
suspendAll(): void;
|
|
89
|
-
hasSuspended(): boolean;
|
|
90
|
-
getAvailability(name: string): ToolAvailability;
|
|
91
|
-
/**
|
|
92
|
-
* Ranked lexical search over DEFERRED tools, score-descending (ties broken
|
|
93
|
-
* by name) so callers can cap activation at a top-k. Each meaningful query
|
|
94
|
-
* term (≥3 chars, not a stop token) is scored against the tool name
|
|
95
|
-
* (exact/substring), description, and argument names; only tools with a
|
|
96
|
-
* positive score are returned. Description matching is safe here precisely
|
|
97
|
-
* because the result is RANKED — the `search_tools` builtin activates only
|
|
98
|
-
* the top slice, so a shared word can no longer drag in the whole catalog.
|
|
99
|
-
*
|
|
100
|
-
* PARKED (phase 5 of the tool-loading plan): an embedding-backed semantic
|
|
101
|
-
* upgrade was evaluated and deliberately NOT built — at ≤~35 deferred
|
|
102
|
-
* in-house tools with distinct names, weighted lexical scoring sits inside
|
|
103
|
-
* the literature's safe zone, and a weak retriever underperforms no
|
|
104
|
-
* retriever at all. Revisit only when (a) the deferred catalog grows past
|
|
105
|
-
* ~75-100 tools (realistic driver: connector-MCP growth), or (b) telemetry
|
|
106
|
-
* shows a search_tools miss-rate above ~10%. Sticky activation is also
|
|
107
|
-
* deliberate: activating inserts the schema into the tools array at its
|
|
108
|
-
* registry position (a one-time prompt-cache prefix bust); re-defer/TTL
|
|
109
|
-
* would churn that prefix repeatedly and is rejected.
|
|
110
|
-
*/
|
|
111
|
-
searchDeferred(query: string): ToolDefinition[];
|
|
112
|
-
/** Active matches use the same ranking, also recognizing exact short or generic names. */
|
|
113
|
-
searchActive(query: string): ToolDefinition[];
|
|
114
|
-
private searchByAvailability;
|
|
115
|
-
assignTiers(mapping: Record<string, string>): void;
|
|
116
|
-
toTierGuidance(): string | null;
|
|
117
|
-
listNames(): string[];
|
|
118
|
-
toPromptSection(toolNames?: string[]): string;
|
|
119
|
-
toLLMTools(toolNames?: string[]): LLMToolSchema[];
|
|
120
|
-
getCallableTools(toolNames?: string[]): ToolDefinition[];
|
|
121
|
-
prepareExecution(toolName: string, rawInput: unknown): ToolPreparationResult;
|
|
122
|
-
executePrepared(prepared: PreparedToolExecution, context: ToolContext): Promise<ToolExecutionResult>;
|
|
123
|
-
execute(toolName: string, rawInput: unknown, context: ToolContext): Promise<ToolExecutionResult>;
|
|
124
|
-
private rejectPreparationWithClosedSpan;
|
|
125
|
-
private executeRetained;
|
|
126
|
-
private validationFailure;
|
|
127
|
-
private getByAvailability;
|
|
128
|
-
}
|
|
129
66
|
/**
|
|
130
67
|
* One-line discoverability hint for a deferred tool: the first sentence of
|
|
131
68
|
* its description, capped at ~100 chars. Used for the `<deferred_tools>`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/registry/tool/execute.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/registry/tool/execute.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AAExD;;;;;;;;;;;GAWG;AAEH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,iBAAiB,QAA0B,CAAA;AAExD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CASjD;AAED;;;;;;;;;;GAUG;AACH,qBAAa,sBAAuB,SAAQ,sBAAsB;IACjE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;gBAEb,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAS7C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CACjC,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAC/C,MAAM,CAGR;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,MAAM,CAO9E"}
|