@zhin.js/agent 1.1.36 → 1.1.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/activity-feedback/adapter-integration.d.ts +0 -1
- package/lib/activity-feedback/adapter-integration.js.map +1 -1
- package/lib/activity-feedback/config-resolver.d.ts +0 -1
- package/lib/activity-feedback/config-resolver.js.map +1 -1
- package/lib/activity-feedback/event-context.d.ts +0 -1
- package/lib/activity-feedback/event-context.js.map +1 -1
- package/lib/activity-feedback/index.d.ts +0 -1
- package/lib/activity-feedback/index.js.map +1 -1
- package/lib/activity-feedback/manager.d.ts +0 -1
- package/lib/activity-feedback/manager.js.map +1 -1
- package/lib/activity-feedback/schedule-guard.d.ts +0 -1
- package/lib/activity-feedback/schedule-guard.js.map +1 -1
- package/lib/activity-feedback/subagent-prefix.d.ts +0 -1
- package/lib/activity-feedback/subagent-prefix.js.map +1 -1
- package/lib/activity-feedback/turn-event-projector.d.ts +0 -1
- package/lib/activity-feedback/turn-event-projector.js.map +1 -1
- package/lib/activity-feedback/types.d.ts +0 -1
- package/lib/activity-feedback/types.js.map +1 -1
- package/lib/ai-event-bus.d.ts +0 -1
- package/lib/ai-event-bus.js.map +1 -1
- package/lib/ai-event-contract.d.ts +0 -1
- package/lib/ai-event-contract.js.map +1 -1
- package/lib/ai-event-subscriber.d.ts +0 -1
- package/lib/ai-event-subscriber.js.map +1 -1
- package/lib/ai-hook-runtime-bus.d.ts +0 -1
- package/lib/ai-hook-runtime-bus.js.map +1 -1
- package/lib/assistant/bootstrap-assistant-home.d.ts +0 -1
- package/lib/assistant/bootstrap-assistant-home.js.map +1 -1
- package/lib/assistant/config.d.ts +0 -1
- package/lib/assistant/config.js.map +1 -1
- package/lib/assistant/deliver-schedule-to-adapter.d.ts +0 -1
- package/lib/assistant/deliver-schedule-to-adapter.js.map +1 -1
- package/lib/assistant/domains/ha-home-backend.d.ts +0 -1
- package/lib/assistant/domains/ha-home-backend.js.map +1 -1
- package/lib/assistant/domains/ha-ws-transport.d.ts +0 -1
- package/lib/assistant/domains/ha-ws-transport.js.map +1 -1
- package/lib/assistant/domains/home-entity.d.ts +0 -1
- package/lib/assistant/domains/home-entity.js.map +1 -1
- package/lib/assistant/domains/home-state-watch.d.ts +0 -1
- package/lib/assistant/domains/home-state-watch.js.map +1 -1
- package/lib/assistant/event-ingress.d.ts +0 -1
- package/lib/assistant/event-ingress.js.map +1 -1
- package/lib/assistant/event-types.d.ts +0 -1
- package/lib/assistant/event-types.js.map +1 -1
- package/lib/assistant/home-config.d.ts +0 -1
- package/lib/assistant/home-config.js.map +1 -1
- package/lib/assistant/home-facade.d.ts +0 -1
- package/lib/assistant/home-facade.js.map +1 -1
- package/lib/assistant/home-mcp-bridge.d.ts +0 -1
- package/lib/assistant/home-mcp-bridge.js.map +1 -1
- package/lib/assistant/home-policy.d.ts +0 -1
- package/lib/assistant/home-policy.js.map +1 -1
- package/lib/assistant/home-tools.d.ts +0 -1
- package/lib/assistant/home-tools.js.map +1 -1
- package/lib/assistant/index.d.ts +0 -1
- package/lib/assistant/index.js.map +1 -1
- package/lib/assistant/job-creator.d.ts +0 -1
- package/lib/assistant/job-creator.js.map +1 -1
- package/lib/assistant/job-engine.d.ts +5 -1
- package/lib/assistant/job-engine.js +20 -1
- package/lib/assistant/job-engine.js.map +1 -1
- package/lib/assistant/job-scheduler.d.ts +0 -1
- package/lib/assistant/job-scheduler.js.map +1 -1
- package/lib/assistant/job-store.d.ts +0 -1
- package/lib/assistant/job-store.js.map +1 -1
- package/lib/assistant/job-utils.d.ts +0 -1
- package/lib/assistant/job-utils.js.map +1 -1
- package/lib/assistant/job-worker.d.ts +0 -1
- package/lib/assistant/job-worker.js.map +1 -1
- package/lib/assistant/notification-router.d.ts +0 -1
- package/lib/assistant/notification-router.js.map +1 -1
- package/lib/assistant/profile-loader.d.ts +0 -1
- package/lib/assistant/profile-loader.js.map +1 -1
- package/lib/assistant/profile-types.d.ts +0 -1
- package/lib/assistant/profile-types.js.map +1 -1
- package/lib/assistant/runtime-contract.d.ts +0 -1
- package/lib/assistant/runtime-contract.js.map +1 -1
- package/lib/assistant/schedule-execution.d.ts +0 -1
- package/lib/assistant/schedule-execution.js.map +1 -1
- package/lib/assistant/schedule-job-service.d.ts +0 -1
- package/lib/assistant/schedule-job-service.js.map +1 -1
- package/lib/assistant/schedule-skills.d.ts +0 -1
- package/lib/assistant/schedule-skills.js.map +1 -1
- package/lib/assistant/types.d.ts +0 -1
- package/lib/assistant/types.js.map +1 -1
- package/lib/authoring/bridge.d.ts +0 -1
- package/lib/authoring/bridge.js.map +1 -1
- package/lib/authoring/define-eval.d.ts +0 -1
- package/lib/authoring/define-eval.js.map +1 -1
- package/lib/authoring/define-hook.d.ts +0 -1
- package/lib/authoring/define-hook.js.map +1 -1
- package/lib/authoring/define-skill.d.ts +0 -1
- package/lib/authoring/define-skill.js.map +1 -1
- package/lib/authoring/disable-tool.d.ts +0 -1
- package/lib/authoring/disable-tool.js.map +1 -1
- package/lib/authoring/entries/evals.d.ts +0 -1
- package/lib/authoring/entries/evals.js.map +1 -1
- package/lib/authoring/entries/hooks.d.ts +0 -1
- package/lib/authoring/entries/hooks.js.map +1 -1
- package/lib/authoring/entries/skills.d.ts +0 -1
- package/lib/authoring/entries/skills.js.map +1 -1
- package/lib/authoring/index.d.ts +0 -1
- package/lib/authoring/index.js.map +1 -1
- package/lib/authoring/types.d.ts +0 -1
- package/lib/authoring/types.js.map +1 -1
- package/lib/bootstrap.d.ts +0 -1
- package/lib/bootstrap.js.map +1 -1
- package/lib/builtins/builtin-tool-service.d.ts +0 -1
- package/lib/builtins/builtin-tool-service.js.map +1 -1
- package/lib/common-adapter-tools.d.ts +0 -1
- package/lib/common-adapter-tools.js.map +1 -1
- package/lib/config/agent-binding-registry.d.ts +0 -1
- package/lib/config/agent-binding-registry.js.map +1 -1
- package/lib/config/agent-bindings.d.ts +0 -1
- package/lib/config/agent-bindings.js.map +1 -1
- package/lib/config/agent-interfaces.d.ts +0 -1
- package/lib/config/agent-interfaces.js.map +1 -1
- package/lib/config/deprecated-agent-binding-keys.d.ts +0 -1
- package/lib/config/deprecated-agent-binding-keys.js.map +1 -1
- package/lib/config/deprecated-agent-keys.d.ts +0 -1
- package/lib/config/deprecated-agent-keys.js.map +1 -1
- package/lib/config/fix-ai-config.d.ts +0 -1
- package/lib/config/fix-ai-config.js.map +1 -1
- package/lib/config/index.d.ts +0 -1
- package/lib/config/index.js.map +1 -1
- package/lib/config/keyword-triggers.d.ts +0 -1
- package/lib/config/keyword-triggers.js.map +1 -1
- package/lib/config/model-harness-runtime.d.ts +0 -1
- package/lib/config/model-harness-runtime.js.map +1 -1
- package/lib/config/model-harness.d.ts +0 -1
- package/lib/config/model-harness.js.map +1 -1
- package/lib/config/normalize-ai-config.d.ts +0 -1
- package/lib/config/normalize-ai-config.js.map +1 -1
- package/lib/config/perception-config.d.ts +0 -1
- package/lib/config/perception-config.js.map +1 -1
- package/lib/config/provider-instance.d.ts +0 -1
- package/lib/config/provider-instance.js.map +1 -1
- package/lib/config/resolve-five-agent-binding.d.ts +0 -1
- package/lib/config/resolve-five-agent-binding.js.map +1 -1
- package/lib/config/types.d.ts +0 -1
- package/lib/config/types.js.map +1 -1
- package/lib/config/validate-ai-config.d.ts +0 -1
- package/lib/config/validate-ai-config.js.map +1 -1
- package/lib/config/zhin-agent-config.d.ts +0 -1
- package/lib/config/zhin-agent-config.js.map +1 -1
- package/lib/config/zhin-agent-constants.d.ts +0 -1
- package/lib/config/zhin-agent-constants.js.map +1 -1
- package/lib/config/zhin-agent-defaults.d.ts +0 -1
- package/lib/config/zhin-agent-defaults.js +1 -1
- package/lib/config/zhin-agent-defaults.js.map +1 -1
- package/lib/config/zhin-agent-dependencies.d.ts +0 -1
- package/lib/config/zhin-agent-dependencies.js.map +1 -1
- package/lib/config/zhin-agent-runtime.d.ts +0 -1
- package/lib/config/zhin-agent-runtime.js.map +1 -1
- package/lib/context/agents-instruction.d.ts +0 -1
- package/lib/context/agents-instruction.js.map +1 -1
- package/lib/context/context-system.d.ts +0 -1
- package/lib/context/context-system.js.map +1 -1
- package/lib/context/context-tail-limit.d.ts +0 -1
- package/lib/context/context-tail-limit.js.map +1 -1
- package/lib/context/contracts.d.ts +0 -1
- package/lib/context/contracts.js.map +1 -1
- package/lib/context/default-builders.d.ts +0 -1
- package/lib/context/default-builders.js.map +1 -1
- package/lib/context/envelope-parts.d.ts +0 -1
- package/lib/context/envelope-parts.js.map +1 -1
- package/lib/context/im-turn-context-adapter.d.ts +0 -1
- package/lib/context/im-turn-context-adapter.js.map +1 -1
- package/lib/context/index.d.ts +1 -2
- package/lib/context/index.js +1 -1
- package/lib/context/index.js.map +1 -1
- package/lib/context/model-resolver.d.ts +0 -1
- package/lib/context/model-resolver.js.map +1 -1
- package/lib/context/turn-envelope.d.ts +3 -2
- package/lib/context/turn-envelope.js +6 -0
- package/lib/context/turn-envelope.js.map +1 -1
- package/lib/context/turn-user-message.d.ts +0 -1
- package/lib/context/turn-user-message.js.map +1 -1
- package/lib/core/agent-core-run.d.ts +3 -1
- package/lib/core/agent-core-run.js +40 -36
- package/lib/core/agent-core-run.js.map +1 -1
- package/lib/core/agent-core.d.ts +0 -1
- package/lib/core/agent-core.js.map +1 -1
- package/lib/core/agent-loop-standalone.d.ts +0 -1
- package/lib/core/agent-loop-standalone.js.map +1 -1
- package/lib/core/agent-loop-turn.d.ts +0 -1
- package/lib/core/agent-loop-turn.js.map +1 -1
- package/lib/core/agent-run-shared.d.ts +0 -1
- package/lib/core/agent-run-shared.js.map +1 -1
- package/lib/core/compose-deps.d.ts +0 -1
- package/lib/core/compose-deps.js.map +1 -1
- package/lib/core/contracts.d.ts +0 -1
- package/lib/core/contracts.js.map +1 -1
- package/lib/core/exhausted-turn-reply.d.ts +0 -1
- package/lib/core/exhausted-turn-reply.js.map +1 -1
- package/lib/core/exploration-budget.d.ts +0 -1
- package/lib/core/exploration-budget.js.map +1 -1
- package/lib/core/index.d.ts +0 -1
- package/lib/core/index.js.map +1 -1
- package/lib/core/missing-tool-resolver.d.ts +0 -1
- package/lib/core/missing-tool-resolver.js.map +1 -1
- package/lib/core/progress-reporter.d.ts +0 -1
- package/lib/core/progress-reporter.js.map +1 -1
- package/lib/core/spawn-delegation.d.ts +0 -1
- package/lib/core/spawn-delegation.js.map +1 -1
- package/lib/core/structured-reply-recovery.d.ts +18 -3
- package/lib/core/structured-reply-recovery.js +28 -7
- package/lib/core/structured-reply-recovery.js.map +1 -1
- package/lib/core/text-sanitize.d.ts +0 -1
- package/lib/core/text-sanitize.js.map +1 -1
- package/lib/core/tool-calls-user-format.d.ts +0 -1
- package/lib/core/tool-calls-user-format.js.map +1 -1
- package/lib/core/tool-execution-authority.d.ts +0 -1
- package/lib/core/tool-execution-authority.js.map +1 -1
- package/lib/core/turn-completion-usage.d.ts +0 -1
- package/lib/core/turn-completion-usage.js.map +1 -1
- package/lib/core/turn-event-mapper.d.ts +0 -1
- package/lib/core/turn-event-mapper.js.map +1 -1
- package/lib/core/turn-progress.d.ts +0 -1
- package/lib/core/turn-progress.js.map +1 -1
- package/lib/create-agent-session.d.ts +0 -1
- package/lib/create-agent-session.js.map +1 -1
- package/lib/decision/approval-judgment.d.ts +0 -1
- package/lib/decision/approval-judgment.js.map +1 -1
- package/lib/decision/approval.d.ts +0 -1
- package/lib/decision/approval.js.map +1 -1
- package/lib/decision/config.d.ts +0 -1
- package/lib/decision/config.js.map +1 -1
- package/lib/decision/index.d.ts +0 -1
- package/lib/decision/index.js.map +1 -1
- package/lib/decision/rank.d.ts +0 -1
- package/lib/decision/rank.js.map +1 -1
- package/lib/decision/retrieval.d.ts +0 -1
- package/lib/decision/retrieval.js.map +1 -1
- package/lib/decision/types.d.ts +0 -1
- package/lib/decision/types.js.map +1 -1
- package/lib/deferred-worker-runner.d.ts +0 -1
- package/lib/deferred-worker-runner.js.map +1 -1
- package/lib/deferred-worker-tool-load.d.ts +0 -1
- package/lib/deferred-worker-tool-load.js.map +1 -1
- package/lib/detached-task/index.d.ts +0 -1
- package/lib/detached-task/index.js.map +1 -1
- package/lib/detached-task/interjection.d.ts +0 -1
- package/lib/detached-task/interjection.js.map +1 -1
- package/lib/detached-task/runner.d.ts +0 -1
- package/lib/detached-task/runner.js.map +1 -1
- package/lib/detached-task/store.d.ts +0 -1
- package/lib/detached-task/store.js.map +1 -1
- package/lib/detached-task/token.d.ts +0 -1
- package/lib/detached-task/token.js.map +1 -1
- package/lib/detached-task/types.d.ts +0 -1
- package/lib/detached-task/types.js.map +1 -1
- package/lib/discovery/agent-surface-info.d.ts +0 -1
- package/lib/discovery/agent-surface-info.js.map +1 -1
- package/lib/discovery/agent-surface.d.ts +0 -1
- package/lib/discovery/agent-surface.js.map +1 -1
- package/lib/discovery/agents.d.ts +0 -1
- package/lib/discovery/agents.js.map +1 -1
- package/lib/discovery/utils.d.ts +0 -1
- package/lib/discovery/utils.js.map +1 -1
- package/lib/event/agent-stream-bus.d.ts +0 -1
- package/lib/event/agent-stream-bus.js.map +1 -1
- package/lib/event/agent-stream-hooks.d.ts +0 -1
- package/lib/event/agent-stream-hooks.js.map +1 -1
- package/lib/event/ai-event-bus.d.ts +0 -1
- package/lib/event/ai-event-bus.js.map +1 -1
- package/lib/event/contracts.d.ts +0 -1
- package/lib/event/contracts.js.map +1 -1
- package/lib/event/event-emitter.d.ts +0 -1
- package/lib/event/event-emitter.js.map +1 -1
- package/lib/event/event-system.d.ts +0 -1
- package/lib/event/event-system.js.map +1 -1
- package/lib/event/filtering-middleware.d.ts +0 -1
- package/lib/event/filtering-middleware.js.map +1 -1
- package/lib/event/hook-stream-sink.d.ts +0 -1
- package/lib/event/hook-stream-sink.js.map +1 -1
- package/lib/event/index.d.ts +0 -1
- package/lib/event/index.js.map +1 -1
- package/lib/event/logging-middleware.d.ts +0 -1
- package/lib/event/logging-middleware.js.map +1 -1
- package/lib/event/publish-agent-stream.d.ts +0 -1
- package/lib/event/publish-agent-stream.js.map +1 -1
- package/lib/event/session-events.d.ts +0 -1
- package/lib/event/session-events.js.map +1 -1
- package/lib/event/turn-event.d.ts +0 -1
- package/lib/event/turn-event.js.map +1 -1
- package/lib/event/turn-to-agent-stream.d.ts +0 -1
- package/lib/event/turn-to-agent-stream.js.map +1 -1
- package/lib/index.d.ts +4 -5
- package/lib/index.js +2 -2
- package/lib/index.js.map +1 -1
- package/lib/init/activate-ai-database-storage.d.ts +0 -1
- package/lib/init/activate-ai-database-storage.js.map +1 -1
- package/lib/init/compose-zhin-agent-runtime.d.ts +0 -1
- package/lib/init/compose-zhin-agent-runtime.js.map +1 -1
- package/lib/init/configure-zhin-agent.d.ts +0 -1
- package/lib/init/configure-zhin-agent.js.map +1 -1
- package/lib/init/define-ai-database-models.d.ts +0 -1
- package/lib/init/define-ai-database-models.js.map +1 -1
- package/lib/init/dispose-zhin-agent.d.ts +0 -1
- package/lib/init/dispose-zhin-agent.js.map +1 -1
- package/lib/init/introspection-output.d.ts +0 -1
- package/lib/init/introspection-output.js.map +1 -1
- package/lib/init/runtime-management-commands.d.ts +0 -1
- package/lib/init/runtime-management-commands.js.map +1 -1
- package/lib/interaction/index.d.ts +0 -1
- package/lib/interaction/index.js.map +1 -1
- package/lib/interaction/interaction-router.d.ts +0 -1
- package/lib/interaction/interaction-router.js.map +1 -1
- package/lib/internal/agent-host.d.ts +0 -1
- package/lib/internal/agent-host.js.map +1 -1
- package/lib/internal/ai-service-refs.d.ts +0 -1
- package/lib/internal/ai-service-refs.js.map +1 -1
- package/lib/internal/as-private.d.ts +0 -1
- package/lib/internal/as-private.js.map +1 -1
- package/lib/internal/host-types.d.ts +0 -1
- package/lib/internal/host-types.js.map +1 -1
- package/lib/internal/phase-trace.d.ts +0 -1
- package/lib/internal/phase-trace.js.map +1 -1
- package/lib/internal/prompt-trace.d.ts +0 -1
- package/lib/internal/prompt-trace.js.map +1 -1
- package/lib/internal/turn-context.d.ts +0 -1
- package/lib/internal/turn-context.js.map +1 -1
- package/lib/journal/file-journal-store.d.ts +0 -1
- package/lib/journal/file-journal-store.js.map +1 -1
- package/lib/journal/index.d.ts +0 -1
- package/lib/journal/index.js.map +1 -1
- package/lib/journal/persistent-turn-journal.d.ts +0 -1
- package/lib/journal/persistent-turn-journal.js.map +1 -1
- package/lib/mcp-client/bridge.d.ts +0 -1
- package/lib/mcp-client/bridge.js.map +1 -1
- package/lib/mcp-client/connection.d.ts +0 -1
- package/lib/mcp-client/connection.js.map +1 -1
- package/lib/mcp-client/index.d.ts +0 -1
- package/lib/mcp-client/index.js.map +1 -1
- package/lib/media/deliver-subagent-result.d.ts +0 -1
- package/lib/media/deliver-subagent-result.js +4 -1
- package/lib/media/deliver-subagent-result.js.map +1 -1
- package/lib/media/inbound-refs.d.ts +0 -1
- package/lib/media/inbound-refs.js.map +1 -1
- package/lib/media/index.d.ts +0 -1
- package/lib/media/index.js.map +1 -1
- package/lib/media/media-capabilities.d.ts +0 -1
- package/lib/media/media-capabilities.js.map +1 -1
- package/lib/media/media-normalize.d.ts +31 -3
- package/lib/media/media-normalize.js +38 -5
- package/lib/media/media-normalize.js.map +1 -1
- package/lib/media/media-publisher.d.ts +4 -2
- package/lib/media/media-publisher.js +50 -31
- package/lib/media/media-publisher.js.map +1 -1
- package/lib/media/media-router.d.ts +0 -1
- package/lib/media/media-router.js.map +1 -1
- package/lib/media/media-spool.d.ts +0 -1
- package/lib/media/media-spool.js.map +1 -1
- package/lib/media/media-tool-bridge.d.ts +0 -1
- package/lib/media/media-tool-bridge.js.map +1 -1
- package/lib/media/media-types.d.ts +0 -1
- package/lib/media/media-types.js.map +1 -1
- package/lib/media/perception.d.ts +8 -2
- package/lib/media/perception.js +55 -5
- package/lib/media/perception.js.map +1 -1
- package/lib/media/resolve-config.d.ts +0 -1
- package/lib/media/resolve-config.js.map +1 -1
- package/lib/media/subagent-inbound.d.ts +0 -1
- package/lib/media/subagent-inbound.js.map +1 -1
- package/lib/media/subagent-user-delivery.d.ts +0 -1
- package/lib/media/subagent-user-delivery.js.map +1 -1
- package/lib/media/vision-capability.d.ts +0 -1
- package/lib/media/vision-capability.js.map +1 -1
- package/lib/memory/ai-compaction-strategy.d.ts +0 -1
- package/lib/memory/ai-compaction-strategy.js.map +1 -1
- package/lib/memory/compaction-runtime.d.ts +0 -1
- package/lib/memory/compaction-runtime.js.map +1 -1
- package/lib/memory/context-repository-store.d.ts +0 -1
- package/lib/memory/context-repository-store.js.map +1 -1
- package/lib/memory/contracts.d.ts +0 -1
- package/lib/memory/contracts.js.map +1 -1
- package/lib/memory/index.d.ts +0 -1
- package/lib/memory/index.js.map +1 -1
- package/lib/memory/memory-system.d.ts +0 -1
- package/lib/memory/memory-system.js.map +1 -1
- package/lib/memory/memory-write-policy.d.ts +0 -1
- package/lib/memory/memory-write-policy.js.map +1 -1
- package/lib/memory/semantic-recall.d.ts +0 -1
- package/lib/memory/semantic-recall.js.map +1 -1
- package/lib/memory/told-ledger.d.ts +0 -1
- package/lib/memory/told-ledger.js.map +1 -1
- package/lib/memory-layers.d.ts +0 -1
- package/lib/memory-layers.js.map +1 -1
- package/lib/orchestration/five-agent/index.d.ts +0 -1
- package/lib/orchestration/five-agent/index.js.map +1 -1
- package/lib/orchestration/five-agent/prompts.d.ts +0 -1
- package/lib/orchestration/five-agent/prompts.js.map +1 -1
- package/lib/orchestration/five-agent/role-capability-policy.d.ts +0 -1
- package/lib/orchestration/five-agent/role-capability-policy.js.map +1 -1
- package/lib/orchestration/five-agent/roles.d.ts +0 -1
- package/lib/orchestration/five-agent/roles.js.map +1 -1
- package/lib/outbound/agent-output.d.ts +5 -1
- package/lib/outbound/agent-output.js +14 -0
- package/lib/outbound/agent-output.js.map +1 -1
- package/lib/outbound/send-proactive.d.ts +0 -1
- package/lib/outbound/send-proactive.js.map +1 -1
- package/lib/outbound/structured-reply.d.ts +6 -2
- package/lib/outbound/structured-reply.js +85 -14
- package/lib/outbound/structured-reply.js.map +1 -1
- package/lib/plugin-ai-hook-bus.d.ts +0 -1
- package/lib/plugin-ai-hook-bus.js.map +1 -1
- package/lib/plugin-loop-hooks.d.ts +0 -1
- package/lib/plugin-loop-hooks.js.map +1 -1
- package/lib/plugin-runtime/agent-event-bus.d.ts +0 -1
- package/lib/plugin-runtime/agent-event-bus.js.map +1 -1
- package/lib/plugin-runtime/agent-host-port.d.ts +0 -1
- package/lib/plugin-runtime/agent-host-port.js.map +1 -1
- package/lib/plugin-runtime/agent-runtime.d.ts +0 -1
- package/lib/plugin-runtime/agent-runtime.js.map +1 -1
- package/lib/plugin-runtime/agent-trace-runtime.d.ts +0 -1
- package/lib/plugin-runtime/agent-trace-runtime.js.map +1 -1
- package/lib/plugin-runtime/ai-completion.d.ts +11 -43
- package/lib/plugin-runtime/ai-completion.js +28 -10
- package/lib/plugin-runtime/ai-completion.js.map +1 -1
- package/lib/plugin-runtime/capability-ingress.d.ts +0 -1
- package/lib/plugin-runtime/capability-ingress.js.map +1 -1
- package/lib/plugin-runtime/capability-tools.d.ts +0 -1
- package/lib/plugin-runtime/capability-tools.js.map +1 -1
- package/lib/plugin-runtime/decision-runtime.d.ts +0 -1
- package/lib/plugin-runtime/decision-runtime.js.map +1 -1
- package/lib/plugin-runtime/deferred-capability-plan.d.ts +20 -1
- package/lib/plugin-runtime/deferred-capability-plan.js +40 -0
- package/lib/plugin-runtime/deferred-capability-plan.js.map +1 -1
- package/lib/plugin-runtime/file-edit-quote-utils.d.ts +0 -1
- package/lib/plugin-runtime/file-edit-quote-utils.js.map +1 -1
- package/lib/plugin-runtime/file-search-scope.d.ts +0 -1
- package/lib/plugin-runtime/file-search-scope.js.map +1 -1
- package/lib/plugin-runtime/full-agent-turn-engine.d.ts +0 -1
- package/lib/plugin-runtime/full-agent-turn-engine.js +13 -3
- package/lib/plugin-runtime/full-agent-turn-engine.js.map +1 -1
- package/lib/plugin-runtime/host-mcp-projection.d.ts +0 -1
- package/lib/plugin-runtime/host-mcp-projection.js.map +1 -1
- package/lib/plugin-runtime/host-tool-projection.d.ts +0 -1
- package/lib/plugin-runtime/host-tool-projection.js.map +1 -1
- package/lib/plugin-runtime/index.d.ts +0 -1
- package/lib/plugin-runtime/index.js.map +1 -1
- package/lib/plugin-runtime/native-bash-tool.d.ts +0 -1
- package/lib/plugin-runtime/native-bash-tool.js.map +1 -1
- package/lib/plugin-runtime/native-file-tools.d.ts +0 -1
- package/lib/plugin-runtime/native-file-tools.js.map +1 -1
- package/lib/plugin-runtime/native-image-tool.d.ts +0 -1
- package/lib/plugin-runtime/native-image-tool.js.map +1 -1
- package/lib/plugin-runtime/native-interaction-tools.d.ts +0 -1
- package/lib/plugin-runtime/native-interaction-tools.js.map +1 -1
- package/lib/plugin-runtime/native-knowledge-tool.d.ts +0 -1
- package/lib/plugin-runtime/native-knowledge-tool.js.map +1 -1
- package/lib/plugin-runtime/native-semantic-memory-tools.d.ts +0 -1
- package/lib/plugin-runtime/native-semantic-memory-tools.js.map +1 -1
- package/lib/plugin-runtime/native-todo-tools.d.ts +0 -1
- package/lib/plugin-runtime/native-todo-tools.js.map +1 -1
- package/lib/plugin-runtime/native-tool-suite.d.ts +0 -1
- package/lib/plugin-runtime/native-tool-suite.js.map +1 -1
- package/lib/plugin-runtime/native-web-tools.d.ts +0 -1
- package/lib/plugin-runtime/native-web-tools.js.map +1 -1
- package/lib/plugin-runtime/schedule-capability-plan.d.ts +0 -1
- package/lib/plugin-runtime/schedule-capability-plan.js.map +1 -1
- package/lib/plugin-runtime/subagent-turn-capability.d.ts +0 -1
- package/lib/plugin-runtime/subagent-turn-capability.js.map +1 -1
- package/lib/plugin-runtime/turn-intent-resolver.d.ts +0 -1
- package/lib/plugin-runtime/turn-intent-resolver.js.map +1 -1
- package/lib/prompt/assembly.d.ts +0 -1
- package/lib/prompt/assembly.js +2 -2
- package/lib/prompt/assembly.js.map +1 -1
- package/lib/prompt/estimate-tokens.d.ts +0 -1
- package/lib/prompt/estimate-tokens.js.map +1 -1
- package/lib/prompt/git-context.d.ts +0 -1
- package/lib/prompt/git-context.js.map +1 -1
- package/lib/prompt/index.d.ts +0 -1
- package/lib/prompt/index.js.map +1 -1
- package/lib/prompt/model-aware-builder.d.ts +0 -1
- package/lib/prompt/model-aware-builder.js.map +1 -1
- package/lib/prompt/model-prompt-strategy.d.ts +0 -1
- package/lib/prompt/model-prompt-strategy.js.map +1 -1
- package/lib/prompt/prompt-assembly-registry.d.ts +0 -1
- package/lib/prompt/prompt-assembly-registry.js.map +1 -1
- package/lib/prompt/prompt-budget.d.ts +0 -1
- package/lib/prompt/prompt-budget.js.map +1 -1
- package/lib/prompt/prompt-builder.d.ts +0 -1
- package/lib/prompt/prompt-builder.js.map +1 -1
- package/lib/prompt/rules/chat-rules.d.ts +6 -0
- package/lib/prompt/rules/chat-rules.js +20 -0
- package/lib/prompt/rules/chat-rules.js.map +1 -0
- package/lib/prompt/rules/code-references.d.ts +0 -1
- package/lib/prompt/rules/code-references.js.map +1 -1
- package/lib/prompt/rules/critical-rules.d.ts +0 -1
- package/lib/prompt/rules/critical-rules.js +2 -2
- package/lib/prompt/rules/critical-rules.js.map +1 -1
- package/lib/prompt/rules/editing.d.ts +0 -1
- package/lib/prompt/rules/editing.js.map +1 -1
- package/lib/prompt/rules/error-handling.d.ts +0 -1
- package/lib/prompt/rules/error-handling.js.map +1 -1
- package/lib/prompt/rules/index.d.ts +1 -1
- package/lib/prompt/rules/index.js +1 -0
- package/lib/prompt/rules/index.js.map +1 -1
- package/lib/prompt/rules/memory.d.ts +0 -1
- package/lib/prompt/rules/memory.js.map +1 -1
- package/lib/prompt/rules/task-completion.d.ts +0 -1
- package/lib/prompt/rules/task-completion.js.map +1 -1
- package/lib/prompt/rules/workflow-rules.d.ts +0 -1
- package/lib/prompt/rules/workflow-rules.js.map +1 -1
- package/lib/prompt/system-prompt.d.ts +7 -1
- package/lib/prompt/system-prompt.js +31 -12
- package/lib/prompt/system-prompt.js.map +1 -1
- package/lib/prompt/templates.d.ts +0 -1
- package/lib/prompt/templates.js.map +1 -1
- package/lib/prompt/tokens.d.ts +0 -1
- package/lib/prompt/tokens.js.map +1 -1
- package/lib/prompt/turn-prompt-profile.d.ts +0 -1
- package/lib/prompt/turn-prompt-profile.js.map +1 -1
- package/lib/prompt/workspace-prompt.d.ts +0 -1
- package/lib/prompt/workspace-prompt.js.map +1 -1
- package/lib/reserved-tools.d.ts +0 -1
- package/lib/reserved-tools.js.map +1 -1
- package/lib/resource-hub/hook-registry.d.ts +0 -1
- package/lib/resource-hub/hook-registry.js.map +1 -1
- package/lib/resource-hub/index.d.ts +0 -1
- package/lib/resource-hub/index.js.map +1 -1
- package/lib/resource-hub/mcp-lifecycle.d.ts +0 -1
- package/lib/resource-hub/mcp-lifecycle.js.map +1 -1
- package/lib/resource-hub/mcp-registry.d.ts +0 -1
- package/lib/resource-hub/mcp-registry.js.map +1 -1
- package/lib/resource-hub/public-api.d.ts +0 -1
- package/lib/resource-hub/public-api.js.map +1 -1
- package/lib/resource-hub/resolve-subagent-tools.d.ts +0 -1
- package/lib/resource-hub/resolve-subagent-tools.js.map +1 -1
- package/lib/resource-hub/resource-registry.d.ts +0 -1
- package/lib/resource-hub/resource-registry.js.map +1 -1
- package/lib/resource-hub/role-configs.d.ts +0 -1
- package/lib/resource-hub/role-configs.js.map +1 -1
- package/lib/resource-hub/skill-registry.d.ts +0 -1
- package/lib/resource-hub/skill-registry.js.map +1 -1
- package/lib/resource-hub/subagent-registry.d.ts +0 -1
- package/lib/resource-hub/subagent-registry.js.map +1 -1
- package/lib/resource-hub/tool-selection.d.ts +0 -1
- package/lib/resource-hub/tool-selection.js.map +1 -1
- package/lib/resource-hub/types.d.ts +0 -1
- package/lib/resource-hub/types.js.map +1 -1
- package/lib/routing/runtime-binding.d.ts +0 -1
- package/lib/routing/runtime-binding.js.map +1 -1
- package/lib/routing/subagent-summarize.d.ts +0 -1
- package/lib/routing/subagent-summarize.js.map +1 -1
- package/lib/schedule-cron.d.ts +0 -1
- package/lib/schedule-cron.js.map +1 -1
- package/lib/schedule-domain/audit-logger.d.ts +0 -1
- package/lib/schedule-domain/audit-logger.js.map +1 -1
- package/lib/schedule-domain/budget-guard.d.ts +0 -1
- package/lib/schedule-domain/budget-guard.js.map +1 -1
- package/lib/schedule-domain/execution-domain.d.ts +0 -1
- package/lib/schedule-domain/execution-domain.js.map +1 -1
- package/lib/schedule-domain/index.d.ts +0 -1
- package/lib/schedule-domain/index.js.map +1 -1
- package/lib/schedule-domain/output-validator.d.ts +0 -1
- package/lib/schedule-domain/output-validator.js.map +1 -1
- package/lib/schedule-domain/prompt-assembler.d.ts +0 -1
- package/lib/schedule-domain/prompt-assembler.js.map +1 -1
- package/lib/schedule-domain/schedule-execution-queue.d.ts +0 -1
- package/lib/schedule-domain/schedule-execution-queue.js.map +1 -1
- package/lib/schedule-domain/security-harness.d.ts +0 -1
- package/lib/schedule-domain/security-harness.js.map +1 -1
- package/lib/schedule-manager.d.ts +0 -1
- package/lib/schedule-manager.js.map +1 -1
- package/lib/seam/index.d.ts +0 -1
- package/lib/seam/index.js.map +1 -1
- package/lib/seam/seam-integration.d.ts +0 -1
- package/lib/seam/seam-integration.js.map +1 -1
- package/lib/seam/seam-provider.d.ts +0 -1
- package/lib/seam/seam-provider.js.map +1 -1
- package/lib/seam/skill-service.d.ts +0 -1
- package/lib/seam/skill-service.js.map +1 -1
- package/lib/seam/tokens.d.ts +0 -1
- package/lib/seam/tokens.js.map +1 -1
- package/lib/seam/tool-service.d.ts +0 -1
- package/lib/seam/tool-service.js.map +1 -1
- package/lib/security/anomaly-detection.d.ts +0 -1
- package/lib/security/anomaly-detection.js.map +1 -1
- package/lib/security/audit-logger.d.ts +0 -1
- package/lib/security/audit-logger.js.map +1 -1
- package/lib/security/comm-message-context.d.ts +0 -1
- package/lib/security/comm-message-context.js.map +1 -1
- package/lib/security/dangerous-tool-policy.d.ts +0 -1
- package/lib/security/dangerous-tool-policy.js.map +1 -1
- package/lib/security/exec-policy.d.ts +0 -1
- package/lib/security/exec-policy.js.map +1 -1
- package/lib/security/file-policy.d.ts +0 -1
- package/lib/security/file-policy.js.map +1 -1
- package/lib/security/file-role-policy.d.ts +0 -1
- package/lib/security/file-role-policy.js.map +1 -1
- package/lib/security/index.d.ts +0 -1
- package/lib/security/index.js.map +1 -1
- package/lib/security/network-authority.d.ts +0 -1
- package/lib/security/network-authority.js.map +1 -1
- package/lib/security/network-policy-context.d.ts +0 -1
- package/lib/security/network-policy-context.js.map +1 -1
- package/lib/security/network-policy.d.ts +0 -1
- package/lib/security/network-policy.js.map +1 -1
- package/lib/security/outbound-leak-guard.d.ts +0 -1
- package/lib/security/outbound-leak-guard.js.map +1 -1
- package/lib/security/owner-approval-contracts.d.ts +0 -1
- package/lib/security/owner-approval-contracts.js.map +1 -1
- package/lib/security/owner-approval-runtime.d.ts +0 -1
- package/lib/security/owner-approval-runtime.js.map +1 -1
- package/lib/security/owner-approval-store.d.ts +0 -1
- package/lib/security/owner-approval-store.js.map +1 -1
- package/lib/security/policy-facade.d.ts +0 -1
- package/lib/security/policy-facade.js.map +1 -1
- package/lib/security/policy-narrowing.d.ts +0 -1
- package/lib/security/policy-narrowing.js.map +1 -1
- package/lib/security/provenance.d.ts +0 -1
- package/lib/security/provenance.js.map +1 -1
- package/lib/security/sandbox-docker.d.ts +0 -1
- package/lib/security/sandbox-docker.js.map +1 -1
- package/lib/security/sandbox.d.ts +0 -1
- package/lib/security/sandbox.js.map +1 -1
- package/lib/security/trust-level.d.ts +0 -1
- package/lib/security/trust-level.js.map +1 -1
- package/lib/security/turn-file-authority.d.ts +0 -1
- package/lib/security/turn-file-authority.js.map +1 -1
- package/lib/security/turn-network-client.d.ts +0 -1
- package/lib/security/turn-network-client.js.map +1 -1
- package/lib/security/usage-quota.d.ts +3 -7
- package/lib/security/usage-quota.js.map +1 -1
- package/lib/segment/filter-im-delivery.d.ts +0 -1
- package/lib/segment/filter-im-delivery.js.map +1 -1
- package/lib/service.d.ts +0 -1
- package/lib/service.js.map +1 -1
- package/lib/session/approval-port.d.ts +0 -1
- package/lib/session/approval-port.js.map +1 -1
- package/lib/session/approval-review-agent.d.ts +0 -1
- package/lib/session/approval-review-agent.js.map +1 -1
- package/lib/session/branch-summarization-runtime.d.ts +0 -1
- package/lib/session/branch-summarization-runtime.js.map +1 -1
- package/lib/session/contracts.d.ts +0 -1
- package/lib/session/contracts.js.map +1 -1
- package/lib/session/index.d.ts +0 -1
- package/lib/session/index.js.map +1 -1
- package/lib/session/session-io.d.ts +0 -1
- package/lib/session/session-io.js.map +1 -1
- package/lib/session/session-key.d.ts +0 -1
- package/lib/session/session-key.js.map +1 -1
- package/lib/session/session-system.d.ts +7 -1
- package/lib/session/session-system.js +26 -12
- package/lib/session/session-system.js.map +1 -1
- package/lib/session/session-tree-commands.d.ts +0 -1
- package/lib/session/session-tree-commands.js.map +1 -1
- package/lib/session/strategies.d.ts +0 -1
- package/lib/session/strategies.js.map +1 -1
- package/lib/session/turn-ingress-session.d.ts +0 -1
- package/lib/session/turn-ingress-session.js.map +1 -1
- package/lib/session-tree-runtime.d.ts +0 -1
- package/lib/session-tree-runtime.js.map +1 -1
- package/lib/skill/capability-catalog.d.ts +0 -1
- package/lib/skill/capability-catalog.js.map +1 -1
- package/lib/skill/contracts.d.ts +0 -1
- package/lib/skill/contracts.js.map +1 -1
- package/lib/skill/index.d.ts +0 -1
- package/lib/skill/index.js.map +1 -1
- package/lib/skill/progressive-disclosure.d.ts +0 -1
- package/lib/skill/progressive-disclosure.js.map +1 -1
- package/lib/skill/skill-instruction-reader-factory.d.ts +0 -1
- package/lib/skill/skill-instruction-reader-factory.js.map +1 -1
- package/lib/skill/skill-instruction-reader.d.ts +0 -1
- package/lib/skill/skill-instruction-reader.js.map +1 -1
- package/lib/skill/skill-instructions.d.ts +0 -1
- package/lib/skill/skill-instructions.js.map +1 -1
- package/lib/skill/skill-registry-as-service.d.ts +0 -1
- package/lib/skill/skill-registry-as-service.js.map +1 -1
- package/lib/skill/skill-system.d.ts +0 -1
- package/lib/skill/skill-system.js.map +1 -1
- package/lib/spawn/permission-task.d.ts +0 -1
- package/lib/spawn/permission-task.js.map +1 -1
- package/lib/spawn/spawn-task-tool.d.ts +0 -1
- package/lib/spawn/spawn-task-tool.js.map +1 -1
- package/lib/stability/memory-pressure.d.ts +0 -1
- package/lib/stability/memory-pressure.js.map +1 -1
- package/lib/standalone/standalone-tool-catalog.d.ts +0 -1
- package/lib/standalone/standalone-tool-catalog.js.map +1 -1
- package/lib/subagent/contracts.d.ts +0 -1
- package/lib/subagent/contracts.js.map +1 -1
- package/lib/subagent/im-result-sink.d.ts +0 -1
- package/lib/subagent/im-result-sink.js.map +1 -1
- package/lib/subagent/index.d.ts +0 -1
- package/lib/subagent/index.js.map +1 -1
- package/lib/subagent/subagent-runtime.d.ts +0 -1
- package/lib/subagent/subagent-runtime.js.map +1 -1
- package/lib/subagent/subagent-system-init.d.ts +0 -1
- package/lib/subagent/subagent-system-init.js.map +1 -1
- package/lib/subagent/subagent-system.d.ts +0 -1
- package/lib/subagent/subagent-system.js.map +1 -1
- package/lib/subagent-ai-events.d.ts +0 -1
- package/lib/subagent-ai-events.js.map +1 -1
- package/lib/subagent-artifact.d.ts +0 -1
- package/lib/subagent-artifact.js.map +1 -1
- package/lib/subagent-goal-notify.d.ts +0 -1
- package/lib/subagent-goal-notify.js.map +1 -1
- package/lib/subagent-parent-context.d.ts +0 -1
- package/lib/subagent-parent-context.js.map +1 -1
- package/lib/subagent-preset.d.ts +0 -1
- package/lib/subagent-preset.js.map +1 -1
- package/lib/subagent-prompt.d.ts +0 -1
- package/lib/subagent-prompt.js.map +1 -1
- package/lib/task-executor.d.ts +0 -1
- package/lib/task-executor.js.map +1 -1
- package/lib/tool/builtin-policy-extractors.d.ts +0 -1
- package/lib/tool/builtin-policy-extractors.js.map +1 -1
- package/lib/tool/context-tools.d.ts +0 -1
- package/lib/tool/context-tools.js.map +1 -1
- package/lib/tool/contracts.d.ts +0 -1
- package/lib/tool/contracts.js.map +1 -1
- package/lib/tool/conversation-reference-tool.d.ts +0 -1
- package/lib/tool/conversation-reference-tool.js.map +1 -1
- package/lib/tool/deferred-resolution.d.ts +0 -1
- package/lib/tool/deferred-resolution.js.map +1 -1
- package/lib/tool/executable-tool-registry.d.ts +0 -1
- package/lib/tool/executable-tool-registry.js.map +1 -1
- package/lib/tool/index.d.ts +0 -1
- package/lib/tool/index.js.map +1 -1
- package/lib/tool/pre-exec.d.ts +0 -1
- package/lib/tool/pre-exec.js.map +1 -1
- package/lib/tool/prepare-turn-tools.d.ts +0 -1
- package/lib/tool/prepare-turn-tools.js.map +1 -1
- package/lib/tool/runtime.d.ts +0 -1
- package/lib/tool/runtime.js.map +1 -1
- package/lib/tool/sources.d.ts +0 -1
- package/lib/tool/sources.js.map +1 -1
- package/lib/tool/tool-approval-gate.d.ts +0 -1
- package/lib/tool/tool-approval-gate.js.map +1 -1
- package/lib/tool/tool-approval-once-store.d.ts +0 -1
- package/lib/tool/tool-approval-once-store.js.map +1 -1
- package/lib/tool/tool-execution-authority.d.ts +0 -1
- package/lib/tool/tool-execution-authority.js.map +1 -1
- package/lib/tool/tool-model-output.d.ts +0 -1
- package/lib/tool/tool-model-output.js.map +1 -1
- package/lib/tool/tool-runtime.d.ts +0 -1
- package/lib/tool/tool-runtime.js.map +1 -1
- package/lib/tool/tool-system.d.ts +0 -1
- package/lib/tool/tool-system.js.map +1 -1
- package/lib/tool/turn-tool-runtime.d.ts +0 -1
- package/lib/tool/turn-tool-runtime.js.map +1 -1
- package/lib/tool-bridge.d.ts +0 -1
- package/lib/tool-bridge.js.map +1 -1
- package/lib/tool-catalog/deferred-turn-controller.d.ts +0 -1
- package/lib/tool-catalog/deferred-turn-controller.js.map +1 -1
- package/lib/tool-catalog/index.d.ts +0 -1
- package/lib/tool-catalog/index.js.map +1 -1
- package/lib/tool-catalog/resolve-config.d.ts +0 -1
- package/lib/tool-catalog/resolve-config.js.map +1 -1
- package/lib/tool-catalog/session-deferred-store.d.ts +0 -1
- package/lib/tool-catalog/session-deferred-store.js.map +1 -1
- package/lib/tool-catalog/tool-catalog.d.ts +8 -1
- package/lib/tool-catalog/tool-catalog.js +15 -0
- package/lib/tool-catalog/tool-catalog.js.map +1 -1
- package/lib/tool-catalog/types.d.ts +0 -1
- package/lib/tool-catalog/types.js.map +1 -1
- package/lib/trace/context-budget.d.ts +0 -1
- package/lib/trace/context-budget.js.map +1 -1
- package/lib/trace/index.d.ts +0 -1
- package/lib/trace/index.js.map +1 -1
- package/lib/trace/turn-trace-archive.d.ts +0 -1
- package/lib/trace/turn-trace-archive.js.map +1 -1
- package/lib/trace/turn-trace-format.d.ts +0 -1
- package/lib/trace/turn-trace-format.js.map +1 -1
- package/lib/trace/turn-trace-registry.d.ts +0 -1
- package/lib/trace/turn-trace-registry.js.map +1 -1
- package/lib/trace/turn-trace-store.d.ts +0 -1
- package/lib/trace/turn-trace-store.js.map +1 -1
- package/lib/trace/turn-trace.d.ts +0 -1
- package/lib/trace/turn-trace.js.map +1 -1
- package/lib/turn/agent-turn-context.d.ts +0 -1
- package/lib/turn/agent-turn-context.js.map +1 -1
- package/lib/turn/auto-continue.d.ts +0 -1
- package/lib/turn/auto-continue.js.map +1 -1
- package/lib/turn/cancel-intent.d.ts +0 -1
- package/lib/turn/cancel-intent.js.map +1 -1
- package/lib/turn/deferred-auto-continue.d.ts +0 -1
- package/lib/turn/deferred-auto-continue.js.map +1 -1
- package/lib/turn/deferred-delivery.d.ts +0 -1
- package/lib/turn/deferred-delivery.js.map +1 -1
- package/lib/turn/deferred-turn-state.d.ts +0 -1
- package/lib/turn/deferred-turn-state.js.map +1 -1
- package/lib/turn/execute-agent-turn.d.ts +0 -1
- package/lib/turn/execute-agent-turn.js.map +1 -1
- package/lib/turn/inbound-media.d.ts +3 -2
- package/lib/turn/inbound-media.js +15 -2
- package/lib/turn/inbound-media.js.map +1 -1
- package/lib/turn/inbound-queue-config.d.ts +0 -1
- package/lib/turn/inbound-queue-config.js.map +1 -1
- package/lib/turn/inbound-queue-runtime.d.ts +0 -1
- package/lib/turn/inbound-queue-runtime.js.map +1 -1
- package/lib/turn/inbound-turn-queue.d.ts +0 -1
- package/lib/turn/inbound-turn-queue.js.map +1 -1
- package/lib/turn/index.d.ts +0 -1
- package/lib/turn/index.js.map +1 -1
- package/lib/turn/journal-feed.d.ts +0 -1
- package/lib/turn/journal-feed.js.map +1 -1
- package/lib/turn/journal-integrity.d.ts +0 -1
- package/lib/turn/journal-integrity.js.map +1 -1
- package/lib/turn/persist-deferred-context.d.ts +0 -1
- package/lib/turn/persist-deferred-context.js.map +1 -1
- package/lib/turn/persist-subagent-context.d.ts +0 -1
- package/lib/turn/persist-subagent-context.js.map +1 -1
- package/lib/turn/process-stream.d.ts +0 -1
- package/lib/turn/process-stream.js.map +1 -1
- package/lib/turn/prompt-access.d.ts +0 -1
- package/lib/turn/prompt-access.js.map +1 -1
- package/lib/turn/prompt-api.d.ts +0 -1
- package/lib/turn/prompt-api.js.map +1 -1
- package/lib/turn/prompt-controller.d.ts +0 -1
- package/lib/turn/prompt-controller.js.map +1 -1
- package/lib/turn/prompt-input.d.ts +0 -1
- package/lib/turn/prompt-input.js.map +1 -1
- package/lib/turn/session-message-queue.d.ts +0 -1
- package/lib/turn/session-message-queue.js.map +1 -1
- package/lib/turn/subagent-auto-continue.d.ts +0 -1
- package/lib/turn/subagent-auto-continue.js.map +1 -1
- package/lib/turn/task-continuation.d.ts +0 -1
- package/lib/turn/task-continuation.js.map +1 -1
- package/lib/turn/trigger-cancelled-error.d.ts +0 -1
- package/lib/turn/trigger-cancelled-error.js.map +1 -1
- package/lib/turn/turn-admission-gate.d.ts +0 -1
- package/lib/turn/turn-admission-gate.js.map +1 -1
- package/lib/turn/turn-complete.d.ts +0 -1
- package/lib/turn/turn-complete.js.map +1 -1
- package/lib/turn/turn-context-bridge.d.ts +0 -1
- package/lib/turn/turn-context-bridge.js.map +1 -1
- package/lib/turn/turn-deferred-delta.d.ts +0 -1
- package/lib/turn/turn-deferred-delta.js.map +1 -1
- package/lib/turn/turn-event-source.d.ts +0 -1
- package/lib/turn/turn-event-source.js.map +1 -1
- package/lib/turn/turn-ingress.d.ts +3 -1
- package/lib/turn/turn-ingress.js.map +1 -1
- package/lib/turn/turn-metrics.d.ts +0 -1
- package/lib/turn/turn-metrics.js.map +1 -1
- package/lib/turn/turn-pipeline.d.ts +0 -1
- package/lib/turn/turn-pipeline.js.map +1 -1
- package/lib/turn/turn-terminal.d.ts +0 -1
- package/lib/turn/turn-terminal.js.map +1 -1
- package/lib/turn/turn-tracker.d.ts +0 -1
- package/lib/turn/turn-tracker.js.map +1 -1
- package/lib/types/disposable.d.ts +0 -1
- package/lib/types/disposable.js.map +1 -1
- package/lib/typing-indicator/adapter-integration.d.ts +0 -1
- package/lib/typing-indicator/adapter-integration.js.map +1 -1
- package/lib/typing-indicator/index.d.ts +0 -1
- package/lib/typing-indicator/index.js.map +1 -1
- package/lib/user-profile.d.ts +0 -1
- package/lib/user-profile.js.map +1 -1
- package/lib/utils/config-env.d.ts +0 -1
- package/lib/utils/config-env.js.map +1 -1
- package/lib/utils/keyed-mutex.d.ts +0 -1
- package/lib/utils/keyed-mutex.js.map +1 -1
- package/lib/web/bing-search-html.d.ts +0 -1
- package/lib/web/bing-search-html.js.map +1 -1
- package/lib/web/web-search-locale.d.ts +0 -1
- package/lib/web/web-search-locale.js.map +1 -1
- package/lib/web/web-tool-utils.d.ts +0 -1
- package/lib/web/web-tool-utils.js.map +1 -1
- package/lib/zhin-agent/index.d.ts +0 -1
- package/lib/zhin-agent/index.js.map +1 -1
- package/lib/zhin-agent/runtime-modules.d.ts +0 -1
- package/lib/zhin-agent/runtime-modules.js.map +1 -1
- package/package.json +12 -12
- package/lib/activity-feedback/adapter-integration.d.ts.map +0 -1
- package/lib/activity-feedback/config-resolver.d.ts.map +0 -1
- package/lib/activity-feedback/event-context.d.ts.map +0 -1
- package/lib/activity-feedback/index.d.ts.map +0 -1
- package/lib/activity-feedback/manager.d.ts.map +0 -1
- package/lib/activity-feedback/schedule-guard.d.ts.map +0 -1
- package/lib/activity-feedback/subagent-prefix.d.ts.map +0 -1
- package/lib/activity-feedback/turn-event-projector.d.ts.map +0 -1
- package/lib/activity-feedback/types.d.ts.map +0 -1
- package/lib/ai-event-bus.d.ts.map +0 -1
- package/lib/ai-event-contract.d.ts.map +0 -1
- package/lib/ai-event-subscriber.d.ts.map +0 -1
- package/lib/ai-hook-runtime-bus.d.ts.map +0 -1
- package/lib/assistant/bootstrap-assistant-home.d.ts.map +0 -1
- package/lib/assistant/config.d.ts.map +0 -1
- package/lib/assistant/deliver-schedule-to-adapter.d.ts.map +0 -1
- package/lib/assistant/domains/ha-home-backend.d.ts.map +0 -1
- package/lib/assistant/domains/ha-ws-transport.d.ts.map +0 -1
- package/lib/assistant/domains/home-entity.d.ts.map +0 -1
- package/lib/assistant/domains/home-state-watch.d.ts.map +0 -1
- package/lib/assistant/event-ingress.d.ts.map +0 -1
- package/lib/assistant/event-types.d.ts.map +0 -1
- package/lib/assistant/home-config.d.ts.map +0 -1
- package/lib/assistant/home-facade.d.ts.map +0 -1
- package/lib/assistant/home-mcp-bridge.d.ts.map +0 -1
- package/lib/assistant/home-policy.d.ts.map +0 -1
- package/lib/assistant/home-tools.d.ts.map +0 -1
- package/lib/assistant/index.d.ts.map +0 -1
- package/lib/assistant/job-creator.d.ts.map +0 -1
- package/lib/assistant/job-engine.d.ts.map +0 -1
- package/lib/assistant/job-scheduler.d.ts.map +0 -1
- package/lib/assistant/job-store.d.ts.map +0 -1
- package/lib/assistant/job-utils.d.ts.map +0 -1
- package/lib/assistant/job-worker.d.ts.map +0 -1
- package/lib/assistant/notification-router.d.ts.map +0 -1
- package/lib/assistant/profile-loader.d.ts.map +0 -1
- package/lib/assistant/profile-types.d.ts.map +0 -1
- package/lib/assistant/runtime-contract.d.ts.map +0 -1
- package/lib/assistant/schedule-execution.d.ts.map +0 -1
- package/lib/assistant/schedule-job-service.d.ts.map +0 -1
- package/lib/assistant/schedule-skills.d.ts.map +0 -1
- package/lib/assistant/types.d.ts.map +0 -1
- package/lib/authoring/bridge.d.ts.map +0 -1
- package/lib/authoring/define-eval.d.ts.map +0 -1
- package/lib/authoring/define-hook.d.ts.map +0 -1
- package/lib/authoring/define-skill.d.ts.map +0 -1
- package/lib/authoring/disable-tool.d.ts.map +0 -1
- package/lib/authoring/entries/evals.d.ts.map +0 -1
- package/lib/authoring/entries/hooks.d.ts.map +0 -1
- package/lib/authoring/entries/skills.d.ts.map +0 -1
- package/lib/authoring/index.d.ts.map +0 -1
- package/lib/authoring/types.d.ts.map +0 -1
- package/lib/bootstrap.d.ts.map +0 -1
- package/lib/builtins/builtin-tool-service.d.ts.map +0 -1
- package/lib/common-adapter-tools.d.ts.map +0 -1
- package/lib/config/agent-binding-registry.d.ts.map +0 -1
- package/lib/config/agent-bindings.d.ts.map +0 -1
- package/lib/config/agent-interfaces.d.ts.map +0 -1
- package/lib/config/deprecated-agent-binding-keys.d.ts.map +0 -1
- package/lib/config/deprecated-agent-keys.d.ts.map +0 -1
- package/lib/config/fix-ai-config.d.ts.map +0 -1
- package/lib/config/index.d.ts.map +0 -1
- package/lib/config/keyword-triggers.d.ts.map +0 -1
- package/lib/config/model-harness-runtime.d.ts.map +0 -1
- package/lib/config/model-harness.d.ts.map +0 -1
- package/lib/config/normalize-ai-config.d.ts.map +0 -1
- package/lib/config/perception-config.d.ts.map +0 -1
- package/lib/config/provider-instance.d.ts.map +0 -1
- package/lib/config/resolve-five-agent-binding.d.ts.map +0 -1
- package/lib/config/types.d.ts.map +0 -1
- package/lib/config/validate-ai-config.d.ts.map +0 -1
- package/lib/config/zhin-agent-config.d.ts.map +0 -1
- package/lib/config/zhin-agent-constants.d.ts.map +0 -1
- package/lib/config/zhin-agent-defaults.d.ts.map +0 -1
- package/lib/config/zhin-agent-dependencies.d.ts.map +0 -1
- package/lib/config/zhin-agent-runtime.d.ts.map +0 -1
- package/lib/context/agents-instruction.d.ts.map +0 -1
- package/lib/context/context-system.d.ts.map +0 -1
- package/lib/context/context-tail-limit.d.ts.map +0 -1
- package/lib/context/contracts.d.ts.map +0 -1
- package/lib/context/default-builders.d.ts.map +0 -1
- package/lib/context/envelope-parts.d.ts.map +0 -1
- package/lib/context/im-turn-context-adapter.d.ts.map +0 -1
- package/lib/context/index.d.ts.map +0 -1
- package/lib/context/model-resolver.d.ts.map +0 -1
- package/lib/context/turn-envelope.d.ts.map +0 -1
- package/lib/context/turn-user-message.d.ts.map +0 -1
- package/lib/core/agent-core-run.d.ts.map +0 -1
- package/lib/core/agent-core.d.ts.map +0 -1
- package/lib/core/agent-loop-standalone.d.ts.map +0 -1
- package/lib/core/agent-loop-turn.d.ts.map +0 -1
- package/lib/core/agent-run-shared.d.ts.map +0 -1
- package/lib/core/compose-deps.d.ts.map +0 -1
- package/lib/core/contracts.d.ts.map +0 -1
- package/lib/core/exhausted-turn-reply.d.ts.map +0 -1
- package/lib/core/exploration-budget.d.ts.map +0 -1
- package/lib/core/index.d.ts.map +0 -1
- package/lib/core/missing-tool-resolver.d.ts.map +0 -1
- package/lib/core/progress-reporter.d.ts.map +0 -1
- package/lib/core/spawn-delegation.d.ts.map +0 -1
- package/lib/core/structured-reply-recovery.d.ts.map +0 -1
- package/lib/core/text-sanitize.d.ts.map +0 -1
- package/lib/core/tool-calls-user-format.d.ts.map +0 -1
- package/lib/core/tool-execution-authority.d.ts.map +0 -1
- package/lib/core/turn-completion-usage.d.ts.map +0 -1
- package/lib/core/turn-event-mapper.d.ts.map +0 -1
- package/lib/core/turn-progress.d.ts.map +0 -1
- package/lib/create-agent-session.d.ts.map +0 -1
- package/lib/decision/approval-judgment.d.ts.map +0 -1
- package/lib/decision/approval.d.ts.map +0 -1
- package/lib/decision/config.d.ts.map +0 -1
- package/lib/decision/index.d.ts.map +0 -1
- package/lib/decision/rank.d.ts.map +0 -1
- package/lib/decision/retrieval.d.ts.map +0 -1
- package/lib/decision/types.d.ts.map +0 -1
- package/lib/deferred-worker-runner.d.ts.map +0 -1
- package/lib/deferred-worker-tool-load.d.ts.map +0 -1
- package/lib/detached-task/index.d.ts.map +0 -1
- package/lib/detached-task/interjection.d.ts.map +0 -1
- package/lib/detached-task/runner.d.ts.map +0 -1
- package/lib/detached-task/store.d.ts.map +0 -1
- package/lib/detached-task/token.d.ts.map +0 -1
- package/lib/detached-task/types.d.ts.map +0 -1
- package/lib/discovery/agent-surface-info.d.ts.map +0 -1
- package/lib/discovery/agent-surface.d.ts.map +0 -1
- package/lib/discovery/agents.d.ts.map +0 -1
- package/lib/discovery/utils.d.ts.map +0 -1
- package/lib/event/agent-stream-bus.d.ts.map +0 -1
- package/lib/event/agent-stream-hooks.d.ts.map +0 -1
- package/lib/event/ai-event-bus.d.ts.map +0 -1
- package/lib/event/contracts.d.ts.map +0 -1
- package/lib/event/event-emitter.d.ts.map +0 -1
- package/lib/event/event-system.d.ts.map +0 -1
- package/lib/event/filtering-middleware.d.ts.map +0 -1
- package/lib/event/hook-stream-sink.d.ts.map +0 -1
- package/lib/event/index.d.ts.map +0 -1
- package/lib/event/logging-middleware.d.ts.map +0 -1
- package/lib/event/publish-agent-stream.d.ts.map +0 -1
- package/lib/event/session-events.d.ts.map +0 -1
- package/lib/event/turn-event.d.ts.map +0 -1
- package/lib/event/turn-to-agent-stream.d.ts.map +0 -1
- package/lib/index.d.ts.map +0 -1
- package/lib/init/activate-ai-database-storage.d.ts.map +0 -1
- package/lib/init/compose-zhin-agent-runtime.d.ts.map +0 -1
- package/lib/init/configure-zhin-agent.d.ts.map +0 -1
- package/lib/init/define-ai-database-models.d.ts.map +0 -1
- package/lib/init/dispose-zhin-agent.d.ts.map +0 -1
- package/lib/init/introspection-output.d.ts.map +0 -1
- package/lib/init/runtime-management-commands.d.ts.map +0 -1
- package/lib/interaction/index.d.ts.map +0 -1
- package/lib/interaction/interaction-router.d.ts.map +0 -1
- package/lib/internal/agent-host.d.ts.map +0 -1
- package/lib/internal/ai-service-refs.d.ts.map +0 -1
- package/lib/internal/as-private.d.ts.map +0 -1
- package/lib/internal/host-types.d.ts.map +0 -1
- package/lib/internal/phase-trace.d.ts.map +0 -1
- package/lib/internal/prompt-trace.d.ts.map +0 -1
- package/lib/internal/turn-context.d.ts.map +0 -1
- package/lib/journal/file-journal-store.d.ts.map +0 -1
- package/lib/journal/index.d.ts.map +0 -1
- package/lib/journal/persistent-turn-journal.d.ts.map +0 -1
- package/lib/mcp-client/bridge.d.ts.map +0 -1
- package/lib/mcp-client/connection.d.ts.map +0 -1
- package/lib/mcp-client/index.d.ts.map +0 -1
- package/lib/media/deliver-subagent-result.d.ts.map +0 -1
- package/lib/media/inbound-refs.d.ts.map +0 -1
- package/lib/media/index.d.ts.map +0 -1
- package/lib/media/media-capabilities.d.ts.map +0 -1
- package/lib/media/media-normalize.d.ts.map +0 -1
- package/lib/media/media-publisher.d.ts.map +0 -1
- package/lib/media/media-router.d.ts.map +0 -1
- package/lib/media/media-spool.d.ts.map +0 -1
- package/lib/media/media-tool-bridge.d.ts.map +0 -1
- package/lib/media/media-types.d.ts.map +0 -1
- package/lib/media/perception.d.ts.map +0 -1
- package/lib/media/resolve-config.d.ts.map +0 -1
- package/lib/media/subagent-inbound.d.ts.map +0 -1
- package/lib/media/subagent-user-delivery.d.ts.map +0 -1
- package/lib/media/vision-capability.d.ts.map +0 -1
- package/lib/memory/ai-compaction-strategy.d.ts.map +0 -1
- package/lib/memory/compaction-runtime.d.ts.map +0 -1
- package/lib/memory/context-repository-store.d.ts.map +0 -1
- package/lib/memory/contracts.d.ts.map +0 -1
- package/lib/memory/index.d.ts.map +0 -1
- package/lib/memory/memory-system.d.ts.map +0 -1
- package/lib/memory/memory-write-policy.d.ts.map +0 -1
- package/lib/memory/semantic-recall.d.ts.map +0 -1
- package/lib/memory/told-ledger.d.ts.map +0 -1
- package/lib/memory-layers.d.ts.map +0 -1
- package/lib/orchestration/five-agent/index.d.ts.map +0 -1
- package/lib/orchestration/five-agent/prompts.d.ts.map +0 -1
- package/lib/orchestration/five-agent/role-capability-policy.d.ts.map +0 -1
- package/lib/orchestration/five-agent/roles.d.ts.map +0 -1
- package/lib/outbound/agent-output.d.ts.map +0 -1
- package/lib/outbound/send-proactive.d.ts.map +0 -1
- package/lib/outbound/structured-reply.d.ts.map +0 -1
- package/lib/plugin-ai-hook-bus.d.ts.map +0 -1
- package/lib/plugin-loop-hooks.d.ts.map +0 -1
- package/lib/plugin-runtime/agent-event-bus.d.ts.map +0 -1
- package/lib/plugin-runtime/agent-host-port.d.ts.map +0 -1
- package/lib/plugin-runtime/agent-runtime.d.ts.map +0 -1
- package/lib/plugin-runtime/agent-trace-runtime.d.ts.map +0 -1
- package/lib/plugin-runtime/ai-completion.d.ts.map +0 -1
- package/lib/plugin-runtime/capability-ingress.d.ts.map +0 -1
- package/lib/plugin-runtime/capability-tools.d.ts.map +0 -1
- package/lib/plugin-runtime/decision-runtime.d.ts.map +0 -1
- package/lib/plugin-runtime/deferred-capability-plan.d.ts.map +0 -1
- package/lib/plugin-runtime/file-edit-quote-utils.d.ts.map +0 -1
- package/lib/plugin-runtime/file-search-scope.d.ts.map +0 -1
- package/lib/plugin-runtime/full-agent-turn-engine.d.ts.map +0 -1
- package/lib/plugin-runtime/host-mcp-projection.d.ts.map +0 -1
- package/lib/plugin-runtime/host-tool-projection.d.ts.map +0 -1
- package/lib/plugin-runtime/index.d.ts.map +0 -1
- package/lib/plugin-runtime/native-bash-tool.d.ts.map +0 -1
- package/lib/plugin-runtime/native-file-tools.d.ts.map +0 -1
- package/lib/plugin-runtime/native-image-tool.d.ts.map +0 -1
- package/lib/plugin-runtime/native-interaction-tools.d.ts.map +0 -1
- package/lib/plugin-runtime/native-knowledge-tool.d.ts.map +0 -1
- package/lib/plugin-runtime/native-semantic-memory-tools.d.ts.map +0 -1
- package/lib/plugin-runtime/native-todo-tools.d.ts.map +0 -1
- package/lib/plugin-runtime/native-tool-suite.d.ts.map +0 -1
- package/lib/plugin-runtime/native-web-tools.d.ts.map +0 -1
- package/lib/plugin-runtime/schedule-capability-plan.d.ts.map +0 -1
- package/lib/plugin-runtime/subagent-turn-capability.d.ts.map +0 -1
- package/lib/plugin-runtime/turn-intent-resolver.d.ts.map +0 -1
- package/lib/prompt/assembly.d.ts.map +0 -1
- package/lib/prompt/estimate-tokens.d.ts.map +0 -1
- package/lib/prompt/git-context.d.ts.map +0 -1
- package/lib/prompt/index.d.ts.map +0 -1
- package/lib/prompt/model-aware-builder.d.ts.map +0 -1
- package/lib/prompt/model-prompt-strategy.d.ts.map +0 -1
- package/lib/prompt/prompt-assembly-registry.d.ts.map +0 -1
- package/lib/prompt/prompt-budget.d.ts.map +0 -1
- package/lib/prompt/prompt-builder.d.ts.map +0 -1
- package/lib/prompt/rules/code-references.d.ts.map +0 -1
- package/lib/prompt/rules/critical-rules.d.ts.map +0 -1
- package/lib/prompt/rules/editing.d.ts.map +0 -1
- package/lib/prompt/rules/error-handling.d.ts.map +0 -1
- package/lib/prompt/rules/index.d.ts.map +0 -1
- package/lib/prompt/rules/memory.d.ts.map +0 -1
- package/lib/prompt/rules/task-completion.d.ts.map +0 -1
- package/lib/prompt/rules/workflow-rules.d.ts.map +0 -1
- package/lib/prompt/system-prompt.d.ts.map +0 -1
- package/lib/prompt/templates.d.ts.map +0 -1
- package/lib/prompt/tokens.d.ts.map +0 -1
- package/lib/prompt/turn-prompt-profile.d.ts.map +0 -1
- package/lib/prompt/workspace-prompt.d.ts.map +0 -1
- package/lib/reserved-tools.d.ts.map +0 -1
- package/lib/resource-hub/hook-registry.d.ts.map +0 -1
- package/lib/resource-hub/index.d.ts.map +0 -1
- package/lib/resource-hub/mcp-lifecycle.d.ts.map +0 -1
- package/lib/resource-hub/mcp-registry.d.ts.map +0 -1
- package/lib/resource-hub/public-api.d.ts.map +0 -1
- package/lib/resource-hub/resolve-subagent-tools.d.ts.map +0 -1
- package/lib/resource-hub/resource-registry.d.ts.map +0 -1
- package/lib/resource-hub/role-configs.d.ts.map +0 -1
- package/lib/resource-hub/skill-registry.d.ts.map +0 -1
- package/lib/resource-hub/subagent-registry.d.ts.map +0 -1
- package/lib/resource-hub/tool-selection.d.ts.map +0 -1
- package/lib/resource-hub/types.d.ts.map +0 -1
- package/lib/routing/runtime-binding.d.ts.map +0 -1
- package/lib/routing/subagent-summarize.d.ts.map +0 -1
- package/lib/schedule-cron.d.ts.map +0 -1
- package/lib/schedule-domain/audit-logger.d.ts.map +0 -1
- package/lib/schedule-domain/budget-guard.d.ts.map +0 -1
- package/lib/schedule-domain/execution-domain.d.ts.map +0 -1
- package/lib/schedule-domain/index.d.ts.map +0 -1
- package/lib/schedule-domain/output-validator.d.ts.map +0 -1
- package/lib/schedule-domain/prompt-assembler.d.ts.map +0 -1
- package/lib/schedule-domain/schedule-execution-queue.d.ts.map +0 -1
- package/lib/schedule-domain/security-harness.d.ts.map +0 -1
- package/lib/schedule-manager.d.ts.map +0 -1
- package/lib/seam/index.d.ts.map +0 -1
- package/lib/seam/seam-integration.d.ts.map +0 -1
- package/lib/seam/seam-provider.d.ts.map +0 -1
- package/lib/seam/skill-service.d.ts.map +0 -1
- package/lib/seam/tokens.d.ts.map +0 -1
- package/lib/seam/tool-service.d.ts.map +0 -1
- package/lib/security/anomaly-detection.d.ts.map +0 -1
- package/lib/security/audit-logger.d.ts.map +0 -1
- package/lib/security/comm-message-context.d.ts.map +0 -1
- package/lib/security/dangerous-tool-policy.d.ts.map +0 -1
- package/lib/security/exec-policy.d.ts.map +0 -1
- package/lib/security/file-policy.d.ts.map +0 -1
- package/lib/security/file-role-policy.d.ts.map +0 -1
- package/lib/security/index.d.ts.map +0 -1
- package/lib/security/network-authority.d.ts.map +0 -1
- package/lib/security/network-policy-context.d.ts.map +0 -1
- package/lib/security/network-policy.d.ts.map +0 -1
- package/lib/security/outbound-leak-guard.d.ts.map +0 -1
- package/lib/security/owner-approval-contracts.d.ts.map +0 -1
- package/lib/security/owner-approval-runtime.d.ts.map +0 -1
- package/lib/security/owner-approval-store.d.ts.map +0 -1
- package/lib/security/policy-facade.d.ts.map +0 -1
- package/lib/security/policy-narrowing.d.ts.map +0 -1
- package/lib/security/provenance.d.ts.map +0 -1
- package/lib/security/sandbox-docker.d.ts.map +0 -1
- package/lib/security/sandbox.d.ts.map +0 -1
- package/lib/security/trust-level.d.ts.map +0 -1
- package/lib/security/turn-file-authority.d.ts.map +0 -1
- package/lib/security/turn-network-client.d.ts.map +0 -1
- package/lib/security/usage-quota.d.ts.map +0 -1
- package/lib/segment/filter-im-delivery.d.ts.map +0 -1
- package/lib/service.d.ts.map +0 -1
- package/lib/session/approval-port.d.ts.map +0 -1
- package/lib/session/approval-review-agent.d.ts.map +0 -1
- package/lib/session/branch-summarization-runtime.d.ts.map +0 -1
- package/lib/session/contracts.d.ts.map +0 -1
- package/lib/session/index.d.ts.map +0 -1
- package/lib/session/session-io.d.ts.map +0 -1
- package/lib/session/session-key.d.ts.map +0 -1
- package/lib/session/session-system.d.ts.map +0 -1
- package/lib/session/session-tree-commands.d.ts.map +0 -1
- package/lib/session/strategies.d.ts.map +0 -1
- package/lib/session/turn-ingress-session.d.ts.map +0 -1
- package/lib/session-tree-runtime.d.ts.map +0 -1
- package/lib/skill/capability-catalog.d.ts.map +0 -1
- package/lib/skill/contracts.d.ts.map +0 -1
- package/lib/skill/index.d.ts.map +0 -1
- package/lib/skill/progressive-disclosure.d.ts.map +0 -1
- package/lib/skill/skill-instruction-reader-factory.d.ts.map +0 -1
- package/lib/skill/skill-instruction-reader.d.ts.map +0 -1
- package/lib/skill/skill-instructions.d.ts.map +0 -1
- package/lib/skill/skill-registry-as-service.d.ts.map +0 -1
- package/lib/skill/skill-system.d.ts.map +0 -1
- package/lib/spawn/permission-task.d.ts.map +0 -1
- package/lib/spawn/spawn-task-tool.d.ts.map +0 -1
- package/lib/stability/memory-pressure.d.ts.map +0 -1
- package/lib/standalone/standalone-tool-catalog.d.ts.map +0 -1
- package/lib/subagent/contracts.d.ts.map +0 -1
- package/lib/subagent/im-result-sink.d.ts.map +0 -1
- package/lib/subagent/index.d.ts.map +0 -1
- package/lib/subagent/subagent-runtime.d.ts.map +0 -1
- package/lib/subagent/subagent-system-init.d.ts.map +0 -1
- package/lib/subagent/subagent-system.d.ts.map +0 -1
- package/lib/subagent-ai-events.d.ts.map +0 -1
- package/lib/subagent-artifact.d.ts.map +0 -1
- package/lib/subagent-goal-notify.d.ts.map +0 -1
- package/lib/subagent-parent-context.d.ts.map +0 -1
- package/lib/subagent-preset.d.ts.map +0 -1
- package/lib/subagent-prompt.d.ts.map +0 -1
- package/lib/task-executor.d.ts.map +0 -1
- package/lib/tool/builtin-policy-extractors.d.ts.map +0 -1
- package/lib/tool/context-tools.d.ts.map +0 -1
- package/lib/tool/contracts.d.ts.map +0 -1
- package/lib/tool/conversation-reference-tool.d.ts.map +0 -1
- package/lib/tool/deferred-resolution.d.ts.map +0 -1
- package/lib/tool/executable-tool-registry.d.ts.map +0 -1
- package/lib/tool/index.d.ts.map +0 -1
- package/lib/tool/pre-exec.d.ts.map +0 -1
- package/lib/tool/prepare-turn-tools.d.ts.map +0 -1
- package/lib/tool/runtime.d.ts.map +0 -1
- package/lib/tool/sources.d.ts.map +0 -1
- package/lib/tool/tool-approval-gate.d.ts.map +0 -1
- package/lib/tool/tool-approval-once-store.d.ts.map +0 -1
- package/lib/tool/tool-execution-authority.d.ts.map +0 -1
- package/lib/tool/tool-model-output.d.ts.map +0 -1
- package/lib/tool/tool-runtime.d.ts.map +0 -1
- package/lib/tool/tool-system.d.ts.map +0 -1
- package/lib/tool/turn-tool-runtime.d.ts.map +0 -1
- package/lib/tool-bridge.d.ts.map +0 -1
- package/lib/tool-catalog/deferred-turn-controller.d.ts.map +0 -1
- package/lib/tool-catalog/index.d.ts.map +0 -1
- package/lib/tool-catalog/resolve-config.d.ts.map +0 -1
- package/lib/tool-catalog/session-deferred-store.d.ts.map +0 -1
- package/lib/tool-catalog/tool-catalog.d.ts.map +0 -1
- package/lib/tool-catalog/types.d.ts.map +0 -1
- package/lib/trace/context-budget.d.ts.map +0 -1
- package/lib/trace/index.d.ts.map +0 -1
- package/lib/trace/turn-trace-archive.d.ts.map +0 -1
- package/lib/trace/turn-trace-format.d.ts.map +0 -1
- package/lib/trace/turn-trace-registry.d.ts.map +0 -1
- package/lib/trace/turn-trace-store.d.ts.map +0 -1
- package/lib/trace/turn-trace.d.ts.map +0 -1
- package/lib/turn/agent-turn-context.d.ts.map +0 -1
- package/lib/turn/auto-continue.d.ts.map +0 -1
- package/lib/turn/cancel-intent.d.ts.map +0 -1
- package/lib/turn/deferred-auto-continue.d.ts.map +0 -1
- package/lib/turn/deferred-delivery.d.ts.map +0 -1
- package/lib/turn/deferred-turn-state.d.ts.map +0 -1
- package/lib/turn/execute-agent-turn.d.ts.map +0 -1
- package/lib/turn/inbound-media.d.ts.map +0 -1
- package/lib/turn/inbound-queue-config.d.ts.map +0 -1
- package/lib/turn/inbound-queue-runtime.d.ts.map +0 -1
- package/lib/turn/inbound-turn-queue.d.ts.map +0 -1
- package/lib/turn/index.d.ts.map +0 -1
- package/lib/turn/journal-feed.d.ts.map +0 -1
- package/lib/turn/journal-integrity.d.ts.map +0 -1
- package/lib/turn/persist-deferred-context.d.ts.map +0 -1
- package/lib/turn/persist-subagent-context.d.ts.map +0 -1
- package/lib/turn/process-stream.d.ts.map +0 -1
- package/lib/turn/prompt-access.d.ts.map +0 -1
- package/lib/turn/prompt-api.d.ts.map +0 -1
- package/lib/turn/prompt-controller.d.ts.map +0 -1
- package/lib/turn/prompt-input.d.ts.map +0 -1
- package/lib/turn/session-message-queue.d.ts.map +0 -1
- package/lib/turn/subagent-auto-continue.d.ts.map +0 -1
- package/lib/turn/task-continuation.d.ts.map +0 -1
- package/lib/turn/trigger-cancelled-error.d.ts.map +0 -1
- package/lib/turn/turn-admission-gate.d.ts.map +0 -1
- package/lib/turn/turn-complete.d.ts.map +0 -1
- package/lib/turn/turn-context-bridge.d.ts.map +0 -1
- package/lib/turn/turn-deferred-delta.d.ts.map +0 -1
- package/lib/turn/turn-event-source.d.ts.map +0 -1
- package/lib/turn/turn-ingress.d.ts.map +0 -1
- package/lib/turn/turn-metrics.d.ts.map +0 -1
- package/lib/turn/turn-pipeline.d.ts.map +0 -1
- package/lib/turn/turn-terminal.d.ts.map +0 -1
- package/lib/turn/turn-tracker.d.ts.map +0 -1
- package/lib/types/disposable.d.ts.map +0 -1
- package/lib/typing-indicator/adapter-integration.d.ts.map +0 -1
- package/lib/typing-indicator/index.d.ts.map +0 -1
- package/lib/user-profile.d.ts.map +0 -1
- package/lib/utils/config-env.d.ts.map +0 -1
- package/lib/utils/keyed-mutex.d.ts.map +0 -1
- package/lib/web/bing-search-html.d.ts.map +0 -1
- package/lib/web/web-search-locale.d.ts.map +0 -1
- package/lib/web/web-tool-utils.d.ts.map +0 -1
- package/lib/zhin-agent/index.d.ts.map +0 -1
- package/lib/zhin-agent/runtime-modules.d.ts.map +0 -1
package/lib/tool/contracts.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/tool/contracts.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|
|
1
|
+
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/tool/contracts.ts"],"names":[],"mappings":"AAAA;;;;;GAKG","sourcesContent":["/**\n * Tool System — 模块契约(与实现同步)。\n *\n * 实现:`ToolSystem.collectForTurn` 异步收集 `AgentTool[]`(`ToolSource.collectTools` 返回 `Promise<AgentTool[]>` 或同步 `AgentTool[]`);\n * 每 turn 通过 `createDefaultToolSources` 独立 Source 列表,避免并发 mutate。\n */\n\nimport type { AgentTool } from '@zhin.js/ai';\nimport type { Message } from '@zhin.js/core';\nimport type { ToolScope } from '../resource-hub/types.js';\n\n/**\n * Tool registered on `ZhinAgent.registerTool` (runtime agent tool directory).\n * Extends the IM-agnostic {@link AgentTool} with the same per-message access\n * vocabulary as `@zhin.js/tool` ToolIndex descriptors\n * (platforms / scopes / permissions / hidden). `RegisteredToolSource`\n * enforces it via Core `canAccessTool`, so both registration paths share\n * one access predicate (see docs/advanced/agent-authoring.md).\n */\nexport interface RegisteredAgentTool extends AgentTool {\n platforms?: string[];\n scopes?: ToolScope[];\n hidden?: boolean;\n}\n\nexport interface TurnContext {\n message: Message;\n}\n\nexport interface FilterContext {\n message: Message;\n}\n\nexport interface ToolSource {\n name: string;\n priority: number;\n collectTools(context: TurnContext): AgentTool[] | Promise<AgentTool[]>;\n}\n\nexport interface ToolFilter {\n name: string;\n filter(tools: AgentTool[], context: FilterContext): AgentTool[];\n}\n\nexport interface ToolSystemConfig {\n /** 预留扩展面 */\n}\n"]}
|
|
@@ -2,4 +2,3 @@ import type { PluginId } from '@zhin.js/plugin-runtime';
|
|
|
2
2
|
import type { ToolCapability } from '../plugin-runtime/capability-ingress.js';
|
|
3
3
|
import type { TurnRequest } from '../turn/turn-ingress.js';
|
|
4
4
|
export declare function createConversationReferenceCapability(owner: PluginId, request: TurnRequest): ToolCapability | undefined;
|
|
5
|
-
//# sourceMappingURL=conversation-reference-tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation-reference-tool.js","sourceRoot":"","sources":["../../src/tool/conversation-reference-tool.ts"],"names":[],"mappings":"AAKA,MAAM,SAAS,GAAG,gCAAgC,CAAC;AAEnD,MAAM,UAAU,qCAAqC,CACnD,KAAe,EACf,OAAoB;IAEpB,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC;IAClD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;IACtC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IACvD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IACtE,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,KAAK;QACL,IAAI,EAAE,SAAS;QACf,aAAa,EAAE,SAAS;QACxB,WAAW,EAAE,kKAAkK;QAC/K,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2DAA2D,EAAE;gBACvG,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;aAC1E;YACD,QAAQ,EAAE,CAAC,WAAW,CAAC;SACY;QACrC,gBAAgB,EAAE,OAAO;QACzB,MAAM,EAAE,8BAA8B;QACtC,KAAK,CAAC,OAAO,CAAsC,KAAa;YAC9D,MAAM,IAAI,GAAG,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAgC,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,MAAM,GAAG,GAAG,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACtB,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAY,CAAC;YAC1F,CAAC;YACD,MAAM,cAAc,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;gBAClF,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;gBACxB,CAAC,CAAC,CAAC,CAAC;YACN,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;gBACvB,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;gBAC/C,UAAU,EAAE,EAAE;gBACd,QAAQ,EAAE,MAAM;aACjB,EAAE,OAAO,CAAC,MAAM,CAAqB,CAAC;QACzC,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"conversation-reference-tool.js","sourceRoot":"","sources":["../../src/tool/conversation-reference-tool.ts"],"names":[],"mappings":"AAKA,MAAM,SAAS,GAAG,gCAAgC,CAAC;AAEnD,MAAM,UAAU,qCAAqC,CACnD,KAAe,EACf,OAAoB;IAEpB,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC;IAClD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;IACtC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IACvD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IACtE,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,KAAK;QACL,IAAI,EAAE,SAAS;QACf,aAAa,EAAE,SAAS;QACxB,WAAW,EAAE,kKAAkK;QAC/K,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2DAA2D,EAAE;gBACvG,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;aAC1E;YACD,QAAQ,EAAE,CAAC,WAAW,CAAC;SACY;QACrC,gBAAgB,EAAE,OAAO;QACzB,MAAM,EAAE,8BAA8B;QACtC,KAAK,CAAC,OAAO,CAAsC,KAAa;YAC9D,MAAM,IAAI,GAAG,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAgC,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,MAAM,GAAG,GAAG,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACtB,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAY,CAAC;YAC1F,CAAC;YACD,MAAM,cAAc,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;gBAClF,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;gBACxB,CAAC,CAAC,CAAC,CAAC;YACN,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;gBACvB,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;gBAC/C,UAAU,EAAE,EAAE;gBACd,QAAQ,EAAE,MAAM;aACjB,EAAE,OAAO,CAAC,MAAM,CAAqB,CAAC;QACzC,CAAC;KACF,CAAC,CAAC;AACL,CAAC","sourcesContent":["import type { PluginId } from '@zhin.js/plugin-runtime';\nimport type { ToolInputJsonObjectSchema } from '@zhin.js/tool';\nimport type { ToolCapability } from '../plugin-runtime/capability-ingress.js';\nimport type { TurnRequest } from '../turn/turn-ingress.js';\n\nconst TOOL_NAME = 'inspect_conversation_reference';\n\nexport function createConversationReferenceCapability(\n owner: PluginId,\n request: TurnRequest,\n): ToolCapability | undefined {\n const references = request.input.references ?? [];\n const port = request.ports.references;\n if (references.length === 0 || !port) return undefined;\n const allowed = new Set(references.map((reference) => reference.key));\n return Object.freeze({\n owner,\n name: TOOL_NAME,\n qualifiedName: TOOL_NAME,\n description: 'Read a quoted message, merged-forward record, or media reference from the current conversation. Only references listed in the current user message are accepted.',\n inputSchema: {\n type: 'object',\n properties: {\n reference: { type: 'string', description: 'Scoped reference key shown in the current message context' },\n depth: { type: 'number', description: 'Nested forward depth, maximum 2' },\n },\n required: ['reference'],\n } satisfies ToolInputJsonObjectSchema,\n requiresApproval: 'never',\n source: 'builtin:conversation-context',\n async execute<TInput = unknown, TResult = unknown>(input: TInput): Promise<TResult> {\n const args = input && typeof input === 'object' ? input as Record<string, unknown> : {};\n const key = typeof args.reference === 'string' ? args.reference : '';\n if (!allowed.has(key)) {\n return Object.freeze({ status: 'forbidden', code: 'reference_not_in_turn' }) as TResult;\n }\n const requestedDepth = typeof args.depth === 'number' && Number.isFinite(args.depth)\n ? Math.floor(args.depth)\n : 1;\n return port.resolve(key, {\n depth: Math.max(0, Math.min(requestedDepth, 2)),\n maxEntries: 50,\n maxChars: 12_000,\n }, request.signal) as Promise<TResult>;\n },\n });\n}\n"]}
|
|
@@ -13,4 +13,3 @@ export interface ResolvedToolsForTurn {
|
|
|
13
13
|
export declare function resolveAgentToolsForTurn(agent: ZhinAgentPrivate, allTools: AgentTool[], sessionId: string, platform?: string): Promise<ResolvedToolsForTurn>;
|
|
14
14
|
export declare function persistDeferredToolSnapshot(agent: ZhinAgentPrivate, sessionId: string, snapshot: DeferredToolSessionSnapshot): Promise<void>;
|
|
15
15
|
export declare function buildLlmToolsForProvider(sdk: string | undefined, catalog: ToolCatalogItem[], apiTools: AgentTool[], alwaysLoaded: Set<string>, sessionLoadedNames: string[]): LlmTool[];
|
|
16
|
-
//# sourceMappingURL=deferred-resolution.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deferred-resolution.js","sourceRoot":"","sources":["../../src/tool/deferred-resolution.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"deferred-resolution.js","sourceRoot":"","sources":["../../src/tool/deferred-resolution.ts"],"names":[],"mappings":"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","sourcesContent":["import { type AgentTool, type LlmTool, getLoadedToolNamesFromSnapshot, addSkillToSnapshot, touchToolsInSnapshot, type DeferredToolSessionSnapshot } from '@zhin.js/ai';\nimport { resolveMcpConnectionFromToolName } from '@zhin.js/ai/mcp-qualified-name';\nimport { agentToolToLlmTool } from '../tool-bridge.js';\nimport {\n buildDeferredStats,\n buildToolCatalog,\n resolveDeferredApiTools,\n} from '../tool-catalog/tool-catalog.js';\nimport { DEFERRED_META_TOOL_NAMES, type ToolCatalogItem } from '../tool-catalog/types.js';\nimport { resolveDeferredToolsConfig } from '../tool-catalog/resolve-config.js';\nimport type { ZhinAgentPrivate } from '../internal/agent-host.js';\nimport { createDeferredTurnController, type DeferredTurnController } from '../tool-catalog/deferred-turn-controller.js';\nimport { buildSkillInstructionReaderForAgent } from '../skill/skill-instruction-reader-factory.js';\nexport interface ResolvedToolsForTurn {\n tools: AgentTool[];\n catalog: ToolCatalogItem[];\n deferred: boolean;\n deferredStats?: string;\n sessionSnapshot: DeferredToolSessionSnapshot;\n controller?: DeferredTurnController;\n}\n\nfunction buildMcpServerMap(tools: AgentTool[]): Map<string, string> {\n const map = new Map<string, string>();\n for (const tool of tools) {\n const connection = resolveMcpConnectionFromToolName(tool.name, tool.source);\n if (connection) map.set(tool.name, connection);\n }\n return map;\n}\n\nexport async function resolveAgentToolsForTurn(\n agent: ZhinAgentPrivate,\n allTools: AgentTool[],\n sessionId: string,\n platform?: string,\n): Promise<ResolvedToolsForTurn> {\n const deferredCfg = resolveDeferredToolsConfig(agent.config);\n const alwaysLoaded = new Set(deferredCfg.alwaysLoadedTools);\n const baseTools = allTools.filter(tool => !DEFERRED_META_TOOL_NAMES.has(tool.name));\n const mcpServerByTool = buildMcpServerMap(baseTools);\n\n const baseCatalog = buildToolCatalog({\n tools: baseTools,\n mcpServerByTool,\n alwaysLoaded,\n });\n\n let sessionSnapshot = await agent.contextRepository.getDeferredToolSnapshot(sessionId);\n let touched = false;\n const alwaysSkills = agent.skillSystem?.getAlwaysSkills()\n ?? agent.skillRegistry?.getAlwaysSkills?.()\n ?? [];\n if (alwaysSkills.length > 0) {\n for (const skill of alwaysSkills) {\n sessionSnapshot = addSkillToSnapshot(sessionSnapshot, skill.name);\n sessionSnapshot = touchToolsInSnapshot(\n sessionSnapshot,\n skill.tools.map(t => t.name).filter(name => !alwaysLoaded.has(name)),\n deferredCfg.maxLoadedPerSession,\n );\n touched = true;\n }\n }\n if (touched) {\n await persistDeferredToolSnapshot(agent, sessionId, sessionSnapshot);\n }\n const controller = createDeferredTurnController({\n sessionId,\n platform,\n catalog: baseCatalog,\n skillRegistry: agent.skillRegistry,\n snapshot: sessionSnapshot,\n maxLoadedPerSession: deferredCfg.maxLoadedPerSession,\n pinnedTools: alwaysLoaded,\n discoverTopK: deferredCfg.discoverTopK,\n persistSnapshot: async (snapshot) => {\n agent.deferred.lastSessionSnapshot = snapshot;\n await persistDeferredToolSnapshot(agent, sessionId, snapshot);\n },\n onSkillLoaded: (_name, instructions) => agent.appendActiveSkillsContext(instructions),\n skillInstructions: buildSkillInstructionReaderForAgent(agent),\n });\n const turnTools = [...baseTools, ...controller.tools as unknown as AgentTool[]];\n const catalog = buildToolCatalog({\n tools: turnTools,\n mcpServerByTool,\n alwaysLoaded,\n });\n const sessionLoaded = getLoadedToolNamesFromSnapshot(sessionSnapshot);\n const apiTools = resolveDeferredApiTools(catalog, alwaysLoaded, sessionLoaded);\n const deferredStats = buildDeferredStats(catalog, apiTools);\n\n agent.deferred.catalog = catalog.map(c => c.fullTool);\n\n return {\n tools: apiTools,\n catalog,\n deferred: true,\n deferredStats,\n sessionSnapshot,\n controller,\n };\n}\n\nexport async function persistDeferredToolSnapshot(\n agent: ZhinAgentPrivate,\n sessionId: string,\n snapshot: DeferredToolSessionSnapshot,\n): Promise<void> {\n await agent.contextRepository.setDeferredToolSnapshot(sessionId, snapshot);\n}\n\nexport function buildLlmToolsForProvider(\n sdk: string | undefined,\n catalog: ToolCatalogItem[],\n apiTools: AgentTool[],\n alwaysLoaded: Set<string>,\n sessionLoadedNames: string[],\n): LlmTool[] {\n const loaded = new Set([...alwaysLoaded, ...sessionLoadedNames]);\n if (sdk === 'anthropic') {\n return catalog\n .filter(item => item.source !== 'meta')\n .map(item => ({\n ...agentToolToLlmTool(item.fullTool),\n deferLoading: !loaded.has(item.name),\n }));\n }\n return apiTools.map(t => agentToolToLlmTool(t));\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executable-tool-registry.js","sourceRoot":"","sources":["../../src/tool/executable-tool-registry.ts"],"names":[],"mappings":"AAEA,+FAA+F;AAC/F,MAAM,OAAO,sBAAsB;IACxB,MAAM,GAAG,IAAI,GAAG,EAAqB,CAAC;IAE/C,YAAY,QAA8B,EAAE;QAC1C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,OAAO,CAAC,KAA2B;QACjC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,KAAK,MAAM,IAAI,IAAI,KAAK;YAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED,UAAU,CAAC,KAA0B;QACnC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,OAAO,CAAC,IAAY;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI;QACF,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACnC,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"executable-tool-registry.js","sourceRoot":"","sources":["../../src/tool/executable-tool-registry.ts"],"names":[],"mappings":"AAEA,+FAA+F;AAC/F,MAAM,OAAO,sBAAsB;IACxB,MAAM,GAAG,IAAI,GAAG,EAAqB,CAAC;IAE/C,YAAY,QAA8B,EAAE;QAC1C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,OAAO,CAAC,KAA2B;QACjC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,KAAK,MAAM,IAAI,IAAI,KAAK;YAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED,UAAU,CAAC,KAA0B;QACnC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,OAAO,CAAC,IAAY;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI;QACF,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACnC,CAAC;CACF","sourcesContent":["import type { AgentTool } from '@zhin.js/ai';\n\n/** Turn-owned source of truth for tools visible to the model and executable by the runtime. */\nexport class ExecutableToolRegistry {\n readonly #tools = new Map<string, AgentTool>();\n\n constructor(tools: readonly AgentTool[] = []) {\n this.replace(tools);\n }\n\n replace(tools: readonly AgentTool[]): void {\n this.#tools.clear();\n for (const tool of tools) this.#tools.set(tool.name, tool);\n }\n\n addMissing(tools: Iterable<AgentTool>): void {\n for (const tool of tools) {\n if (!this.#tools.has(tool.name)) this.#tools.set(tool.name, tool);\n }\n }\n\n resolve(name: string): AgentTool | undefined {\n return this.#tools.get(name);\n }\n\n list(): AgentTool[] {\n return [...this.#tools.values()];\n }\n}\n"]}
|
package/lib/tool/index.d.ts
CHANGED
|
@@ -14,4 +14,3 @@ export type { TurnToolsPrep } from './prepare-turn-tools.js';
|
|
|
14
14
|
export { TurnToolExecutionAuthority, TurnToolRuntime } from './turn-tool-runtime.js';
|
|
15
15
|
export type { TurnToolOutcome } from './turn-tool-runtime.js';
|
|
16
16
|
export { createConversationReferenceCapability } from './conversation-reference-tool.js';
|
|
17
|
-
//# sourceMappingURL=index.d.ts.map
|
package/lib/tool/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tool/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAeH,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACxB,WAAW,EACX,0BAA0B,GAC3B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,0BAA0B,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAErF,OAAO,EAAE,qCAAqC,EAAE,MAAM,kCAAkC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tool/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAeH,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACxB,WAAW,EACX,0BAA0B,GAC3B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,0BAA0B,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAErF,OAAO,EAAE,qCAAqC,EAAE,MAAM,kCAAkC,CAAC","sourcesContent":["/**\n * Tool System — ToolSystem + Source + 运行时/延迟解析(契约见 contracts.ts)。\n */\n\nexport type {\n ToolSource,\n ToolFilter,\n ToolSystemConfig,\n TurnContext,\n FilterContext,\n RegisteredAgentTool,\n} from './contracts.js';\n\nexport type { ResolvedToolsForTurn } from './deferred-resolution.js';\nexport type { CollectToolsContext, CollectToolsForTurnInput } from './tool-system.js';\nexport type { CollectRuntimeToolsOptions, ToolRunPlan } from './runtime.js';\n\nexport {\n ToolSystem,\n defaultToolSystem,\n createToolSystem,\n createDefaultToolSources,\n planToolRun,\n buildPreExecFastPathPrompt,\n} from './tool-system.js';\n\nexport {\n ExternalToolSource,\n SkillToolSource,\n RegisteredToolSource,\n BuiltinToolSource,\n McpToolSource,\n DedupeToolFilter,\n} from './sources.js';\n\nexport {\n resolveAgentToolsForTurn,\n persistDeferredToolSnapshot,\n buildLlmToolsForProvider,\n} from './deferred-resolution.js';\n\nexport { collectRuntimeTools } from './runtime.js';\nexport { prepareTurnTools } from './prepare-turn-tools.js';\nexport type { TurnToolsPrep } from './prepare-turn-tools.js';\nexport { TurnToolExecutionAuthority, TurnToolRuntime } from './turn-tool-runtime.js';\nexport type { TurnToolOutcome } from './turn-tool-runtime.js';\nexport { createConversationReferenceCapability } from './conversation-reference-tool.js';\n"]}
|
package/lib/tool/pre-exec.d.ts
CHANGED
package/lib/tool/pre-exec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pre-exec.js","sourceRoot":"","sources":["../../src/tool/pre-exec.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAkB,EAClB,SAAiB;IAEjB,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC9D,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QAC9B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;YAChC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAChB,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAC5B,UAAU,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;SACrD,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IACrC,CAAC,CAAC,CACH,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW;YAAE,SAAS;QACvC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7F,IAAI,CAAC,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YACnB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,qBAAqB,CAAC,CAAC,MAAM,eAAe,CAAC;QACrE,CAAC;QACD,IAAI,IAAI,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;IACpC,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;AACvC,CAAC"}
|
|
1
|
+
{"version":3,"file":"pre-exec.js","sourceRoot":"","sources":["../../src/tool/pre-exec.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAkB,EAClB,SAAiB;IAEjB,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC9D,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QAC9B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;YAChC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAChB,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAC5B,UAAU,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;SACrD,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IACrC,CAAC,CAAC,CACH,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW;YAAE,SAAS;QACvC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7F,IAAI,CAAC,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YACnB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,qBAAqB,CAAC,CAAC,MAAM,eAAe,CAAC;QACrE,CAAC;QACD,IAAI,IAAI,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;IACpC,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;AACvC,CAAC","sourcesContent":["import type { AgentTool } from '@zhin.js/ai';\n\nexport interface PreExecuteResult {\n tools: AgentTool[];\n data: string;\n}\n\nexport async function runPreExecutableTools(\n tools: AgentTool[],\n timeoutMs: number,\n): Promise<PreExecuteResult> {\n const preExecTools = tools.filter(tool => tool.preExecutable);\n let data = '';\n if (preExecTools.length === 0) {\n return { tools: preExecTools, data };\n }\n\n const results = await Promise.allSettled(\n preExecTools.map(async (tool) => {\n const result = await Promise.race([\n tool.execute({}),\n new Promise<never>((_, rej) =>\n setTimeout(() => rej(new Error('超时')), timeoutMs)),\n ]);\n return { name: tool.name, result };\n }),\n );\n\n for (const r of results) {\n if (r.status !== 'fulfilled') continue;\n let s = typeof r.value.result === 'string' ? r.value.result : JSON.stringify(r.value.result);\n if (s.length > 500) {\n s = s.slice(0, 500) + `\\n... (truncated, ${s.length} chars total)`;\n }\n data += `\\n【${r.value.name}】${s}`;\n }\n\n return { tools: preExecTools, data };\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepare-turn-tools.js","sourceRoot":"","sources":["../../src/tool/prepare-turn-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"prepare-turn-tools.js","sourceRoot":"","sources":["../../src/tool/prepare-turn-tools.ts"],"names":[],"mappings":"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","sourcesContent":["import type { AgentTool } from '@zhin.js/ai';\nimport type { Message } from '@zhin.js/core';\nimport {\n ensureMcpConnectionsForBinding,\n getMcpToolsForBinding,\n} from '../resource-hub/mcp-lifecycle.js';\nimport { rehydrateTurnActiveSkills } from '../assistant/schedule-skills.js';\nimport { captureDeferredSnapshotBefore, cloneDeferredSnapshot } from '../internal/turn-context.js';\nimport type { ZhinAgentPrivate, Tool } from '../internal/agent-host.js';\nimport { defaultToolSystem } from '../tool/tool-system.js';\nimport type { ResolvedToolsForTurn } from './deferred-resolution.js';\n\nfunction listSpawnableAgentNames(host: ZhinAgentPrivate): string[] {\n const presets = host.resourceHub?.subagents.getAllPresets().map((p) => p.name) ?? [];\n return [...new Set(presets.filter(Boolean))].sort();\n}\n\nexport interface TurnToolsPrep {\n contextForTools: Message;\n allTools: AgentTool[];\n resolved: ResolvedToolsForTurn;\n resolvedTools: AgentTool[];\n deferredStats?: string;\n catalog: ResolvedToolsForTurn['catalog'];\n sessionSnapshot: ResolvedToolsForTurn['sessionSnapshot'];\n}\n\nexport async function prepareTurnTools(\n host: ZhinAgentPrivate,\n opts: {\n content: string;\n commMessage: Message;\n externalTools: Tool[];\n sessionId: string;\n userId: string;\n mcpServerNames: string[];\n },\n): Promise<TurnToolsPrep> {\n const userId = opts.userId;\n const contextForTools = opts.commMessage;\n\n if (host.resourceHub && opts.mcpServerNames.length > 0) {\n await ensureMcpConnectionsForBinding(host.resourceHub.mcps, opts.mcpServerNames, (event) => {\n const payload = host.emitter.createPayload(opts.sessionId, contextForTools, 'text', {\n path: 'agent',\n serverName: event.serverName,\n loadedToolNames: event.toolNames,\n reason: event.connected === false ? 'disconnected' : undefined,\n error: event.error,\n });\n if (event.phase === 'start') {\n host.emitter.emit('ai.mcp.connect.start', payload);\n } else if (event.phase === 'finish') {\n host.emitter.emit('ai.mcp.connect.finish', payload);\n } else {\n host.emitter.emit('ai.mcp.connect.error', payload);\n }\n });\n }\n\n const mcpTools = host.resourceHub && opts.mcpServerNames.length > 0\n ? getMcpToolsForBinding(host.resourceHub.mcps, opts.mcpServerNames)\n : [];\n\n const toolSystem = host.toolSystem ?? defaultToolSystem;\n const allTools = await toolSystem.collectForTurn({\n host,\n message: contextForTools,\n content: opts.content,\n sessionId: opts.sessionId,\n userId,\n config: host.config,\n skillRegistry: host.skillRegistry,\n externalTools: opts.externalTools,\n externalRegistered: host.externalTools,\n userProfiles: host.userProfiles,\n mcpTools,\n spawnableAgentNames: host.subagentSystem ? listSpawnableAgentNames(host) : undefined,\n });\n\n const resolved = await toolSystem.resolveForTurn(\n host,\n allTools,\n opts.sessionId,\n String(contextForTools.clientAdapter ?? contextForTools.conversation.endpoint.adapter),\n );\n const { tools: resolvedTools, deferredStats, catalog, sessionSnapshot: initialSnapshot } = resolved;\n\n const sessionSnapshot = initialSnapshot;\n captureDeferredSnapshotBefore(sessionSnapshot);\n host.deferred.lastSnapshotBefore = cloneDeferredSnapshot(sessionSnapshot);\n await rehydrateTurnActiveSkills(host, opts.sessionId, host.getAlwaysSkillsBaseline());\n host.deferred.lastSessionSnapshot = sessionSnapshot;\n host.deferred.lastCatalog = catalog;\n host.deferred.lastToolSearchStats = deferredStats;\n\n return {\n contextForTools,\n allTools,\n resolved,\n resolvedTools,\n deferredStats,\n catalog,\n sessionSnapshot,\n };\n}\n"]}
|
package/lib/tool/runtime.d.ts
CHANGED
|
@@ -21,4 +21,3 @@ export interface CollectRuntimeToolsOptions {
|
|
|
21
21
|
export declare function collectRuntimeTools(options: CollectRuntimeToolsOptions): Promise<AgentTool[]>;
|
|
22
22
|
export type { ToolRunPlan };
|
|
23
23
|
export { planToolRun, buildPreExecFastPathPrompt } from './tool-system.js';
|
|
24
|
-
//# sourceMappingURL=runtime.d.ts.map
|
package/lib/tool/runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/tool/runtime.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,wBAAwB,EACxB,iBAAiB,GAIlB,MAAM,kBAAkB,CAAC;AAe1B,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAAmC;IAC3E,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,iBAAiB,CAAC;IAC3D,MAAM,GAAG,GAAwB;QAC/B,OAAO,EAAE,OAAO,CAAC,WAAW;QAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;QAC9C,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC;IACF,OAAO,UAAU,CAAC,YAAY,CAAC,GAAG,EAAE,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC;AACrE,CAAC;AAGD,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/tool/runtime.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,wBAAwB,EACxB,iBAAiB,GAIlB,MAAM,kBAAkB,CAAC;AAe1B,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAAmC;IAC3E,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,iBAAiB,CAAC;IAC3D,MAAM,GAAG,GAAwB;QAC/B,OAAO,EAAE,OAAO,CAAC,WAAW;QAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;QAC9C,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC;IACF,OAAO,UAAU,CAAC,YAAY,CAAC,GAAG,EAAE,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC;AACrE,CAAC;AAGD,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC","sourcesContent":["import type { AgentTool } from '@zhin.js/ai';\nimport type { Tool, Message } from '../resource-hub/types.js';\nimport type { SkillRegistry } from '../resource-hub/skill-registry.js';\nimport type { ZhinAgentConfig } from '../config/zhin-agent-config.js';\nimport type { UserProfileStore } from '../user-profile.js';\nimport type { RegisteredAgentTool } from './contracts.js';\nimport {\n createDefaultToolSources,\n defaultToolSystem,\n type CollectToolsContext,\n type ToolRunPlan,\n type ToolSystem,\n} from './tool-system.js';\nexport interface CollectRuntimeToolsOptions {\n content: string;\n commMessage: Message;\n externalTools: Tool[];\n config: Required<ZhinAgentConfig>;\n skillRegistry: SkillRegistry | null;\n externalRegistered: Map<string, RegisteredAgentTool>;\n sessionId: string;\n userId: string;\n userProfiles: UserProfileStore;\n mcpTools?: AgentTool[];\n toolSystem?: ToolSystem;\n}\n\nexport async function collectRuntimeTools(options: CollectRuntimeToolsOptions): Promise<AgentTool[]> {\n const toolSystem = options.toolSystem ?? defaultToolSystem;\n const ctx: CollectToolsContext = {\n message: options.commMessage,\n content: options.content,\n sessionId: options.sessionId,\n userId: options.userId,\n config: options.config,\n skillRegistry: options.skillRegistry,\n externalTools: options.externalTools,\n externalRegistered: options.externalRegistered,\n userProfiles: options.userProfiles,\n mcpTools: options.mcpTools,\n };\n return toolSystem.collectTools(ctx, createDefaultToolSources(ctx));\n}\n\nexport type { ToolRunPlan };\nexport { planToolRun, buildPreExecFastPathPrompt } from './tool-system.js';\n"]}
|
package/lib/tool/sources.d.ts
CHANGED
package/lib/tool/sources.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sources.js","sourceRoot":"","sources":["../../src/tool/sources.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sources.js","sourceRoot":"","sources":["../../src/tool/sources.ts"],"names":[],"mappings":"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","sourcesContent":["import { isReservedToolName, type AgentTool } from '@zhin.js/ai';\nimport { canAccessTool, type Tool as CoreTool } from '@zhin.js/core';\nimport { getLogger } from '@zhin.js/logger';\nimport type { PermissionHost } from '@zhin.js/permission';\nimport type { Tool, Message } from '../resource-hub/types.js';\nimport type { SkillRegistry } from '../resource-hub/skill-registry.js';\nimport type { ZhinAgentConfig } from '../config/zhin-agent-config.js';\nimport { KEYWORD_TRIGGERS } from '../config/keyword-triggers.js';\nimport { createUserProfileTool } from '../tool/context-tools.js';\nimport type { UserProfileStore } from '../user-profile.js';\nimport { normalizeTool } from '../resource-hub/tool-selection.js';\nimport { RESERVED_TOOL_NAMES, RESERVED_TOOL_NAME_PREFIXES } from '../reserved-tools.js';\nimport type { RegisteredAgentTool, ToolFilter, ToolSource } from './contracts.js';\nconst logger = getLogger('ToolSystem');\n\nexport interface CollectToolsContext {\n message: Message;\n content: string;\n sessionId: string;\n userId: string;\n config: Required<ZhinAgentConfig>;\n skillRegistry: SkillRegistry | null;\n externalTools: Tool[];\n externalRegistered: Map<string, RegisteredAgentTool>;\n userProfiles: UserProfileStore;\n mcpTools?: AgentTool[];\n /** PermissionHost(permit 声明的工具经其判定;缺省 fail-closed)。 */\n permissionHost?: PermissionHost | null;\n}\n\nexport class ExternalToolSource implements ToolSource {\n name = 'external';\n priority = 200;\n\n constructor(private readonly externalTools: Tool[]) {}\n\n async collectTools(context: CollectToolsContext): Promise<AgentTool[]> {\n const tools: AgentTool[] = [];\n for (const tool of this.externalTools) {\n if (!(await canAccessTool(tool as unknown as CoreTool, context.message, context.permissionHost))) continue;\n tools.push(normalizeTool(tool, context.message));\n }\n return tools;\n }\n}\n\nexport class SkillToolSource implements ToolSource {\n name = 'skills';\n priority = 100;\n\n constructor(private readonly skillRegistry: SkillRegistry | null) {}\n\n collectTools(context: CollectToolsContext): AgentTool[] {\n if (!this.skillRegistry) return [];\n return this.skillRegistry.collectAllTools().map((tool) =>\n normalizeTool(tool, context.message),\n );\n }\n}\n\nexport class RegisteredToolSource implements ToolSource {\n name = 'registered';\n priority = 150;\n\n constructor(private readonly externalRegistered: Map<string, RegisteredAgentTool>) {}\n\n /**\n * Same per-message access predicate as {@link ExternalToolSource} — one\n * `canAccessTool` for both registration paths; `hidden` tools stay\n * executable by name but are never offered to the model.\n */\n async collectTools(context: CollectToolsContext): Promise<AgentTool[]> {\n const tools: AgentTool[] = [];\n for (const tool of this.externalRegistered.values()) {\n if (tool.hidden) continue;\n if (!(await canAccessTool(tool as unknown as CoreTool, context.message, context.permissionHost))) continue;\n tools.push(tool);\n }\n return tools;\n }\n}\n\nexport class BuiltinToolSource implements ToolSource {\n name = 'builtin';\n priority = 1000;\n\n collectTools(context: CollectToolsContext): AgentTool[] {\n const tools: AgentTool[] = [];\n if (KEYWORD_TRIGGERS.userProfile.test(context.content)) {\n tools.push(createUserProfileTool(context.userId, context.userProfiles));\n }\n return tools;\n }\n}\n\nexport class McpToolSource implements ToolSource {\n name = 'mcp';\n priority = 50;\n\n collectTools(context: CollectToolsContext): AgentTool[] {\n const tools: AgentTool[] = [];\n for (const mcpTool of context.mcpTools ?? []) {\n if (isReservedToolName(mcpTool.name, {\n reservedNames: RESERVED_TOOL_NAMES,\n reservedPrefixes: RESERVED_TOOL_NAME_PREFIXES,\n })) {\n logger.warn(`[MCP] Skipping tool \"${mcpTool.name}\": conflicts with reserved tool name`);\n continue;\n }\n tools.push(mcpTool);\n }\n return tools;\n }\n}\n\nexport class PermissionToolFilter implements ToolFilter {\n name = 'permission';\n\n filter(tools: AgentTool[]): AgentTool[] {\n return tools;\n }\n}\n\nexport class DedupeToolFilter implements ToolFilter {\n name = 'dedupe';\n\n filter(tools: AgentTool[]): AgentTool[] {\n const names = new Set<string>();\n const out: AgentTool[] = [];\n for (const tool of tools) {\n if (names.has(tool.name)) continue;\n out.push(tool);\n names.add(tool.name);\n }\n return out;\n }\n}\n"]}
|
|
@@ -31,4 +31,3 @@ export interface ToolApprovalGateOptions {
|
|
|
31
31
|
* Returns denial message when approval is required but not granted; otherwise null.
|
|
32
32
|
*/
|
|
33
33
|
export declare function runToolApprovalGate(options: ToolApprovalGateOptions): Promise<string | null>;
|
|
34
|
-
//# sourceMappingURL=tool-approval-gate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-approval-gate.js","sourceRoot":"","sources":["../../src/tool/tool-approval-gate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool-approval-gate.js","sourceRoot":"","sources":["../../src/tool/tool-approval-gate.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Per-tool approval gate — stacks with ExecPolicy (ADR 0039 P1).\n */\nimport type { Message } from '@zhin.js/core';\nimport { AgentRunJournal, AgentStreamEventType, type AgentRunEventInput } from '@zhin.js/ai/agent-stream';\nimport type { ToolApprovalPolicy } from '@zhin.js/ai/tool-policy';\nimport type { AgentStreamBus, AgentStreamPublishContext } from '../event/agent-stream-bus.js';\nimport { isApprovalPortAvailable, type ApprovalPort } from '../session/approval-port.js';\nimport type { ToolApprovalOnceStore } from './tool-approval-once-store.js';\n\nexport type ToolApprovalGatePolicy = ToolApprovalPolicy;\n\nexport async function resolveToolApprovalRequired(\n policy: ToolApprovalGatePolicy | undefined,\n input: { toolName: string; args: Record<string, unknown>; sessionId: string },\n onceStore?: ToolApprovalOnceStore,\n): Promise<boolean> {\n if (!policy || policy === 'never') return false;\n if (policy === 'always' || policy === 'on-risk') return true;\n if (policy === 'once') {\n if (!onceStore) return true;\n return !onceStore.has(input.sessionId, input.toolName);\n }\n return Boolean(await policy({ toolName: input.toolName, args: input.args }));\n}\n\nexport interface ToolApprovalGateOptions {\n toolName: string;\n args: Record<string, unknown>;\n sessionId: string;\n commMessage: Message;\n policy?: ToolApprovalGatePolicy;\n bus?: AgentStreamBus;\n port?: ApprovalPort;\n onceStore?: ToolApprovalOnceStore;\n publishCtx?: AgentStreamPublishContext;\n /** Stream-turn journal; request/result become ordered run events when present. */\n journal?: AgentRunJournal;\n signal: AbortSignal;\n}\n\n/**\n * Returns denial message when approval is required but not granted; otherwise null.\n */\nexport async function runToolApprovalGate(\n options: ToolApprovalGateOptions,\n): Promise<string | null> {\n const required = await resolveToolApprovalRequired(options.policy, {\n toolName: options.toolName,\n args: options.args,\n sessionId: options.sessionId,\n }, options.onceStore);\n if (!required) return null;\n\n if (!isApprovalPortAvailable(options.port)) {\n return 'Error: approval required but ApprovalPort unavailable';\n }\n\n const requestId = `approval_${options.toolName}_${Date.now()}`;\n const publishCtx: AgentStreamPublishContext = {\n sessionId: options.sessionId,\n ...options.publishCtx,\n };\n\n await publishApprovalEvent(options, {\n type: AgentStreamEventType.INPUT_REQUESTED,\n data: {\n sessionId: options.sessionId,\n requestId,\n sessionKey: options.sessionId,\n requesterId: options.commMessage.sender?.id,\n toolName: options.toolName,\n kind: 'approval',\n args: options.args,\n },\n }, publishCtx);\n\n const question = `工具「${options.toolName}」需要确认后执行。是否继续?`;\n let approved = false;\n let failure: string | undefined;\n try {\n approved = await options.port.requestApproval({\n requestId,\n sessionKey: options.sessionId,\n conversationScope: options.commMessage.conversation.kind,\n requesterId: options.commMessage.sender?.id,\n toolName: options.toolName,\n scopeKey: `${options.toolName}:${stableApprovalValue(options.args)}`,\n question,\n signal: options.signal,\n });\n } catch (err) {\n failure = err instanceof Error ? err.message : String(err);\n }\n\n await publishApprovalEvent(options, {\n type: AgentStreamEventType.INPUT_COMPLETED,\n data: {\n sessionId: options.sessionId,\n requestId,\n toolName: options.toolName,\n kind: 'approval',\n approved,\n ...(failure ? { error: failure } : {}),\n },\n }, publishCtx);\n\n if (failure) return `Error: approval wait failed — ${failure}`;\n\n if (!approved) {\n return `Error: tool \"${options.toolName}\" execution denied by user`;\n }\n\n if (options.policy === 'once' && options.onceStore) {\n options.onceStore.add(options.sessionId, options.toolName);\n }\n return null;\n}\n\nfunction stableApprovalValue(value: unknown): string {\n if (Array.isArray(value)) return `[${value.map(stableApprovalValue).join(',')}]`;\n if (value && typeof value === 'object') {\n return `{${Object.entries(value as Record<string, unknown>)\n .sort(([left], [right]) => left.localeCompare(right))\n .map(([key, entry]) => `${JSON.stringify(key)}:${stableApprovalValue(entry)}`)\n .join(',')}}`;\n }\n if (typeof value === 'undefined') return 'undefined';\n try { return JSON.stringify(value); } catch { return String(value); }\n}\n\nasync function publishApprovalEvent(\n options: ToolApprovalGateOptions,\n event: AgentRunEventInput,\n ctx: AgentStreamPublishContext,\n): Promise<void> {\n const journalled = options.journal?.append(event);\n if (options.journal && !journalled) return;\n if (options.bus) await options.bus.publish(journalled ?? event, ctx);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-approval-once-store.js","sourceRoot":"","sources":["../../src/tool/tool-approval-once-store.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,qBAAqB;IACf,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE1C,GAAG,CAAC,SAAiB,EAAE,QAAgB;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,GAAG,CAAC,SAAiB,EAAE,QAAgB;QACrC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"tool-approval-once-store.js","sourceRoot":"","sources":["../../src/tool/tool-approval-once-store.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,qBAAqB;IACf,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE1C,GAAG,CAAC,SAAiB,EAAE,QAAgB;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,GAAG,CAAC,SAAiB,EAAE,QAAgB;QACrC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;CACF","sourcesContent":["/**\n * Per-resource-hub store for policy: 'once' tool approvals (ADR 0039 P1).\n */\nexport class ToolApprovalOnceStore {\n private readonly keys = new Set<string>();\n\n has(sessionId: string, toolName: string): boolean {\n return this.keys.has(`${sessionId}:${toolName}`);\n }\n\n add(sessionId: string, toolName: string): void {\n this.keys.add(`${sessionId}:${toolName}`);\n }\n\n clear(): void {\n this.keys.clear();\n }\n}\n"]}
|
|
@@ -23,4 +23,3 @@ export declare class RuntimeToolExecutionAuthority implements ToolExecutionAutho
|
|
|
23
23
|
constructor(options: ToolExecutionAuthorityOptions);
|
|
24
24
|
execute(tool: AgentTool, input: Readonly<Record<string, unknown>>, toolUseId: string): Promise<AgentCoreToolExecutionOutcome>;
|
|
25
25
|
}
|
|
26
|
-
//# sourceMappingURL=tool-execution-authority.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-execution-authority.js","sourceRoot":"","sources":["../../src/tool/tool-execution-authority.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool-execution-authority.js","sourceRoot":"","sources":["../../src/tool/tool-execution-authority.ts"],"names":[],"mappings":"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","sourcesContent":["import type { AgentTool } from '@zhin.js/ai';\nimport type { AgentRunJournal } from '@zhin.js/ai/agent-stream';\nimport type { Message } from '@zhin.js/core';\nimport type {\n AgentCoreToolExecutionOutcome,\n ToolExecutionAuthority,\n} from '../core/tool-execution-authority.js';\nimport type { ZhinAgentPrivate } from '../internal/agent-host.js';\nimport { runWithCommMessage } from '../security/comm-message-context.js';\nimport { isApprovalPortAvailable } from '../session/approval-port.js';\nimport { runWithDeferredTurnController, type DeferredTurnController } from '../tool-catalog/deferred-turn-controller.js';\nimport { resolveBuiltinToolPolicyInput } from './builtin-policy-extractors.js';\nimport { runToolApprovalGate } from './tool-approval-gate.js';\nimport { ToolRuntime } from './tool-runtime.js';\n\nexport interface ToolExecutionAuthorityOptions {\n readonly host: ZhinAgentPrivate;\n readonly sessionId: string;\n readonly message: Message;\n readonly signal: AbortSignal;\n readonly generation: number;\n readonly rejectApproval: boolean;\n readonly deferredController?: DeferredTurnController;\n readonly journal?: AgentRunJournal;\n}\n\n/**\n * Adapter for the Tool definitions. AgentCore itself never\n * reads Message, policy configuration, or approval transports through this seam.\n */\nexport class RuntimeToolExecutionAuthority implements ToolExecutionAuthority {\n readonly #options: ToolExecutionAuthorityOptions;\n readonly #runtime: ToolRuntime;\n\n constructor(options: ToolExecutionAuthorityOptions) {\n this.#options = options;\n this.#runtime = new ToolRuntime({\n generation: options.generation,\n signal: options.signal,\n sessionId: options.sessionId,\n commMessage: options.message,\n journal: options.journal\n ? { append: (event) => { options.journal!.append(event); } }\n : undefined,\n config: options.host.config,\n policyInputResolver: resolveBuiltinToolPolicyInput,\n });\n }\n\n async execute(\n tool: AgentTool,\n input: Readonly<Record<string, unknown>>,\n toolUseId: string,\n ): Promise<AgentCoreToolExecutionOutcome> {\n const options = this.#options;\n const approvalDenied = options.rejectApproval\n && tool.requiresApproval\n && tool.requiresApproval !== 'never'\n ? 'Error: unattended execution rejects tools that require approval'\n : await runToolApprovalGate({\n toolName: tool.name,\n args: { ...input },\n sessionId: options.sessionId,\n commMessage: options.message,\n policy: tool.requiresApproval,\n bus: options.host.resourceHub?.agentStreamBus,\n port: isApprovalPortAvailable(options.host.approvalPort)\n ? options.host.approvalPort\n : undefined,\n publishCtx: {\n sessionId: options.sessionId,\n },\n onceStore: options.host.resourceHub?.approvalOnce,\n journal: options.journal,\n signal: options.signal,\n });\n if (approvalDenied) return Object.freeze({ status: 'denied', reason: approvalDenied });\n\n try {\n const execute = () => runWithCommMessage(\n options.message,\n () => this.#runtime.execute(tool, { ...input }, { toolCallId: toolUseId }),\n { ownerApprovals: options.host.ownerApprovals },\n );\n const outcome = options.deferredController\n ? await runWithDeferredTurnController(options.deferredController, execute)\n : await execute();\n if (outcome.denied) {\n return Object.freeze({ status: 'denied', reason: String(outcome.output) });\n }\n return Object.freeze({\n status: 'completed',\n output: outcome.output,\n durationMs: outcome.durationMs,\n });\n } catch (error) {\n if (options.signal.aborted) {\n return Object.freeze({\n status: 'cancelled',\n reason: options.signal.reason instanceof Error\n ? options.signal.reason.message\n : String(options.signal.reason ?? 'Tool execution cancelled'),\n });\n }\n return Object.freeze({\n status: 'failed',\n error: error instanceof Error ? error.message : String(error),\n retryable: false,\n });\n }\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-model-output.js","sourceRoot":"","sources":["../../src/tool/tool-model-output.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAsC,EACtC,GAAY,EACZ,IAA6B;IAE7B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QACxB,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;AACnD,CAAC"}
|
|
1
|
+
{"version":3,"file":"tool-model-output.js","sourceRoot":"","sources":["../../src/tool/tool-model-output.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAsC,EACtC,GAAY,EACZ,IAA6B;IAE7B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QACxB,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;AACnD,CAAC","sourcesContent":["import type { AgentTool } from '@zhin.js/ai';\n\nexport async function applyToolToModelOutput(\n tool: Pick<AgentTool, 'toModelOutput'>,\n raw: unknown,\n args: Record<string, unknown>,\n): Promise<string> {\n if (!tool.toModelOutput) {\n return typeof raw === 'string' ? raw : JSON.stringify(raw ?? null);\n }\n return tool.toModelOutput({ result: raw, args });\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-runtime.js","sourceRoot":"","sources":["../../src/tool/tool-runtime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool-runtime.js","sourceRoot":"","sources":["../../src/tool/tool-runtime.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * ToolRuntime — 统一工具执行网关。\n *\n * 所有工具类型(builtin、Host、MCP、Skill、Agent)都必须通过 ToolRuntime 执行:\n * 1. Generation 验证 — 工具的 generation 戳是否仍有效\n * 2. 安全策略 — runToolPolicies() 统一执行(builtin 不再自行调用)\n * 3. 取消感知 — 对齐 turn AbortSignal\n * 4. Journal 事件 — 发射 tool_call / tool_result\n * 5. 审计 — policyAudit 链路记录\n *\n * ToolRuntime 按 turn 实例化,绑定 turn 级上下文。\n */\nimport type { AgentTool } from '@zhin.js/ai';\nimport type { Message } from '@zhin.js/core';\nimport type { ZhinAgentConfig } from '../config/index.js';\nimport {\n runToolPolicies,\n toolPolicyResultToMessage,\n type ToolPolicyInput,\n type ToolPolicyResult,\n type ToolPolicyLayerRecord,\n} from '../security/policy-facade.js';\nimport type { ToolCallEvent, ToolResultEvent } from '../event/turn-event.js';\n\nexport interface ToolRuntimeJournalPort {\n append(event: ToolCallEvent | ToolResultEvent): void | Promise<void>;\n}\n\n// ── 类型定义 ───────────────────────────────────────────────────────\n\nexport interface ToolRuntimeTurnContext {\n readonly generation: number;\n readonly signal: AbortSignal;\n readonly sessionId: string;\n readonly commMessage?: Message;\n readonly journal?: ToolRuntimeJournalPort;\n readonly config?: Required<ZhinAgentConfig>;\n readonly policyInputResolver?: ToolPolicyInputResolver;\n readonly isGenerationValid?: (gen: number) => boolean;\n}\n\nexport interface ToolCallContext {\n readonly toolCallId: string;\n}\n\nexport interface ToolExecutionOutcome {\n readonly output: unknown;\n readonly durationMs: number;\n readonly denied?: string;\n readonly policyAudit: readonly ToolPolicyLayerRecord[];\n}\n\n/**\n * 工具策略输入提取器 — 从工具名和参数派生 ToolPolicyInput。\n * builtin 工具注册自己的提取器;非 builtin 使用默认提取器(仅 toolName)。\n */\nexport type ToolPolicyInputExtractor = (\n toolName: string,\n args: Record<string, unknown>,\n commMessage?: Message,\n) => ToolPolicyInput;\nexport type ToolPolicyInputResolver = ToolPolicyInputExtractor;\n\nfunction defaultExtractor(toolName: string, _args: Record<string, unknown>, commMessage?: Message): ToolPolicyInput {\n return { toolName, commMessage };\n}\n\n// ── ToolRuntime ─────────────────────────────────────────────────────\n\nexport class ToolRuntime {\n readonly #context: ToolRuntimeTurnContext;\n\n constructor(context: ToolRuntimeTurnContext) {\n this.#context = context;\n }\n\n get generation(): number {\n return this.#context.generation;\n }\n\n checkPolicy(input: ToolPolicyInput): ToolPolicyResult {\n return runToolPolicies(input);\n }\n\n async execute(\n tool: AgentTool,\n args: Record<string, unknown>,\n call: ToolCallContext,\n ): Promise<ToolExecutionOutcome> {\n const ctx = this.#context;\n const t0 = performance.now();\n const toolName = tool.name;\n\n // 1. Generation 验证 — context-level and tool-level\n if (ctx.isGenerationValid && !ctx.isGenerationValid(ctx.generation)) {\n return {\n output: `Error: tool「${toolName}」rejected — generation ${ctx.generation} is no longer valid`,\n durationMs: performance.now() - t0,\n denied: 'generation_invalid',\n policyAudit: [],\n };\n }\n if (tool.generation !== undefined && tool.generation !== ctx.generation) {\n return {\n output: `Error: tool「${toolName}」rejected — tool generation ${tool.generation} does not match turn generation ${ctx.generation}`,\n durationMs: performance.now() - t0,\n denied: 'generation_mismatch',\n policyAudit: [],\n };\n }\n\n // 2. 取消检查\n if (ctx.signal.aborted) {\n throw ctx.signal.reason instanceof Error\n ? ctx.signal.reason\n : new Error('Tool execution cancelled');\n }\n\n // 3. 安全策略\n const extractor = ctx.policyInputResolver ?? defaultExtractor;\n const policyInput = extractor(toolName, args, ctx.commMessage);\n if (ctx.config) policyInput.config = ctx.config;\n const policyResult = runToolPolicies(policyInput);\n const policyAudit = policyResult.decisions;\n const denied = toolPolicyResultToMessage(policyResult, toolName);\n if (denied) {\n await emitToolEvents(ctx, toolName, args, call.toolCallId, denied, performance.now() - t0);\n return { output: denied, durationMs: performance.now() - t0, denied, policyAudit };\n }\n\n // 4. Journal: tool_call\n await emitToolCall(ctx, toolName, args, call.toolCallId);\n\n // 5. 执行(取消感知)\n let output: unknown;\n try {\n output = await Promise.resolve().then(() =>\n tool.execute(args, ctx.commMessage, {\n signal: ctx.signal,\n sessionId: ctx.sessionId,\n toolCallId: call.toolCallId,\n toolName,\n }),\n );\n } catch (err) {\n if (ctx.signal.aborted) {\n throw ctx.signal.reason instanceof Error\n ? ctx.signal.reason\n : new Error('Tool execution cancelled');\n }\n throw err;\n }\n\n // 6. 取消后检查\n if (ctx.signal.aborted) {\n throw ctx.signal.reason instanceof Error\n ? ctx.signal.reason\n : new Error('Tool execution cancelled');\n }\n\n const durationMs = performance.now() - t0;\n\n // 7. Journal: tool_result\n await emitToolResult(ctx, toolName, output, call.toolCallId, durationMs);\n\n return { output, durationMs, policyAudit };\n }\n}\n\n// ── Journal 事件辅助 ─────────────────────────────────────────────────\n\nasync function emitToolCall(\n ctx: ToolRuntimeTurnContext,\n toolName: string,\n args: Record<string, unknown>,\n toolUseId: string,\n): Promise<void> {\n await ctx.journal?.append({ type: 'tool_call', toolName, args, toolUseId });\n}\n\nasync function emitToolResult(\n ctx: ToolRuntimeTurnContext,\n toolName: string,\n output: unknown,\n toolUseId: string,\n durationMs: number,\n): Promise<void> {\n await ctx.journal?.append({ type: 'tool_result', toolName, output, toolUseId, durationMs });\n}\n\nasync function emitToolEvents(\n ctx: ToolRuntimeTurnContext,\n toolName: string,\n args: Record<string, unknown>,\n toolUseId: string,\n output: unknown,\n durationMs: number,\n): Promise<void> {\n await emitToolCall(ctx, toolName, args, toolUseId);\n await emitToolResult(ctx, toolName, output, toolUseId, durationMs);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-system.js","sourceRoot":"","sources":["../../src/tool/tool-system.ts"],"names":[],"mappings":"AACA,OAAO,EAAyB,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAG7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,eAAe,GAEhB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,wBAAwB,GAEzB,MAAM,0BAA0B,CAAC;AASlC,qDAAqD;AACrD,MAAM,UAAU,wBAAwB,CAAC,OAA4B;IACnE,OAAO;QACL,IAAI,kBAAkB,CAAC,OAAO,CAAC,aAAa,CAAC;QAC7C,IAAI,eAAe,CAAC,OAAO,CAAC,aAAa,CAAC;QAC1C,IAAI,oBAAoB,CAAC,OAAO,CAAC,kBAAkB,CAAC;QACpD,IAAI,iBAAiB,EAAE;QACvB,IAAI,aAAa,EAAE;KACpB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,SAA2B,EAAE;IAC5D,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,OAAO,UAAU;IACJ,aAAa,GAAiB,EAAE,CAAC;IACjC,OAAO,GAAiB,EAAE,CAAC;IAE5C,YAAY,UAA4B,EAAE;QACxC,IAAI,CAAC,SAAS,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,SAAS,CAAC,MAAkB;QAC1B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC7D,CAAC;IAED,SAAS,CAAC,MAAkB;QAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAA4B,EAAE,OAAsB;QACrE,MAAM,aAAa,GAAG,OAAO,IAAI;YAC/B,GAAG,wBAAwB,CAAC,OAAO,CAAC;YACpC,GAAG,IAAI,CAAC,aAAa;SACtB,CAAC;QACF,IAAI,KAAK,GAAgB,EAAE,CAAC;QAC5B,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;YACnC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACtD,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,KAA+B;QAClD,MAAM,EAAE,IAAI,EAAE,mBAAmB,EAAE,GAAG,GAAG,EAAE,GAAG,KAAK,CAAC;QACpD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC;QAE1E,IAAI,IAAI,CAAC,cAAc,IAAI,mBAAmB,EAAE,CAAC;YAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,EAAE,UAAU,EAAE,IAAI,CAAC;YAC5D,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAC5B,GAAG,CAAC,OAAO,EACX,IAAI,CAAC,cAAc,EACnB;gBACE,aAAa,EAAE,+BAA+B,CAAC,mBAAmB,EAAE,cAAc,CAAC;gBACnF,mBAAmB,EAAE,cAAc;aACpC,CACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,IAAsB,EACtB,QAAqB,EACrB,SAAiB,EACjB,QAAiB;QAEjB,OAAO,wBAAwB,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACvE,CAAC;CACF;AASD,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAAkB,EAClB,SAAiB;IAEjB,MAAM,YAAY,GAAG,MAAM,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACnE,MAAM,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACnE,OAAO;QACL,YAAY,EAAE,YAAY,CAAC,KAAK;QAChC,YAAY;QACZ,kBAAkB;QAClB,IAAI,EAAE,KAAK,CAAC,MAAM,KAAK,CAAC;YACtB,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,CAAC,CAAC,kBAAkB,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC;KAChF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,OAAe,EAAE,OAAe;IACzE,OAAO,GAAG,OAAO;;;EAGjB,OAAO;;sGAE6F,CAAC;AACvG,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,mBAAmB,CACjC,KAAU,EACV,UAAkB;IAElB,KAAK,MAAM,IAAI,IAAI,KAAK;QAAE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACvD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,gDAAgD;AAChD,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"tool-system.js","sourceRoot":"","sources":["../../src/tool/tool-system.ts"],"names":[],"mappings":"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","sourcesContent":["import type { AgentTool } from '@zhin.js/ai';\nimport { type PreExecuteResult, runPreExecutableTools } from './pre-exec.js';\nimport type { ZhinAgentPrivate } from '../internal/agent-host.js';\nimport type { Tool } from '../resource-hub/types.js';\nimport { createSpawnTaskTool } from '../spawn/spawn-task-tool.js';\nimport { filterAgentsForSpawnDescription } from '../spawn/permission-task.js';\nimport type { ToolFilter, ToolSource, ToolSystemConfig } from './contracts.js';\nimport {\n BuiltinToolSource,\n DedupeToolFilter,\n ExternalToolSource,\n McpToolSource,\n RegisteredToolSource,\n SkillToolSource,\n type CollectToolsContext,\n} from './sources.js';\nimport {\n resolveAgentToolsForTurn,\n type ResolvedToolsForTurn,\n} from './deferred-resolution.js';\nexport type { CollectToolsContext } from './sources.js';\nexport type { ResolvedToolsForTurn } from './deferred-resolution.js';\n\nexport interface CollectToolsForTurnInput extends CollectToolsContext {\n host: ZhinAgentPrivate;\n spawnableAgentNames?: string[];\n}\n\n/** 每 turn 独立 Source 列表,不 mutate 共享 ToolSystem 实例。 */\nexport function createDefaultToolSources(context: CollectToolsContext): ToolSource[] {\n return [\n new ExternalToolSource(context.externalTools),\n new SkillToolSource(context.skillRegistry),\n new RegisteredToolSource(context.externalRegistered),\n new BuiltinToolSource(),\n new McpToolSource(),\n ];\n}\n\nexport function createToolSystem(config: ToolSystemConfig = {}): ToolSystem {\n return new ToolSystem(config);\n}\n\nexport class ToolSystem {\n private readonly customSources: ToolSource[] = [];\n private readonly filters: ToolFilter[] = [];\n\n constructor(_config: ToolSystemConfig = {}) {\n this.addFilter(new DedupeToolFilter());\n }\n\n addSource(source: ToolSource): void {\n this.customSources.push(source);\n this.customSources.sort((a, b) => b.priority - a.priority);\n }\n\n addFilter(filter: ToolFilter): void {\n this.filters.push(filter);\n }\n\n async collectTools(context: CollectToolsContext, sources?: ToolSource[]): Promise<AgentTool[]> {\n const activeSources = sources ?? [\n ...createDefaultToolSources(context),\n ...this.customSources,\n ];\n let tools: AgentTool[] = [];\n for (const source of activeSources) {\n tools.push(...(await source.collectTools(context)));\n }\n for (const filter of this.filters) {\n tools = filter.filter(tools, { message: context.message });\n }\n return tools;\n }\n\n async collectForTurn(input: CollectToolsForTurnInput): Promise<AgentTool[]> {\n const { host, spawnableAgentNames, ...ctx } = input;\n const tools = await this.collectTools(ctx, createDefaultToolSources(ctx));\n\n if (host.subagentSystem && spawnableAgentNames) {\n const permissionTask = host.activeBinding?.permission?.task;\n tools.push(createSpawnTaskTool(\n ctx.message,\n host.subagentSystem,\n {\n allowedAgents: filterAgentsForSpawnDescription(spawnableAgentNames, permissionTask),\n permissionTaskRules: permissionTask,\n },\n ));\n }\n\n return tools;\n }\n\n async resolveForTurn(\n host: ZhinAgentPrivate,\n allTools: AgentTool[],\n sessionId: string,\n platform?: string,\n ): Promise<ResolvedToolsForTurn> {\n return resolveAgentToolsForTurn(host, allTools, sessionId, platform);\n }\n}\n\nexport interface ToolRunPlan {\n preExecTools: AgentTool[];\n preExecution: PreExecuteResult;\n hasNonPreExecTools: boolean;\n mode: 'chat' | 'pre-exec-fast-path' | 'agent';\n}\n\nexport async function planToolRun(\n tools: AgentTool[],\n timeoutMs: number,\n): Promise<ToolRunPlan> {\n const preExecution = await runPreExecutableTools(tools, timeoutMs);\n const hasNonPreExecTools = tools.some(tool => !tool.preExecutable);\n return {\n preExecTools: preExecution.tools,\n preExecution,\n hasNonPreExecTools,\n mode: tools.length === 0\n ? 'chat'\n : (!hasNonPreExecTools && preExecution.data ? 'pre-exec-fast-path' : 'agent'),\n };\n}\n\nexport function buildPreExecFastPathPrompt(persona: string, preData: string): string {\n return `${persona}\n\nPre-fetched data (from user's question):\n${preData}\n\nAnswer the user's question based on the data above. Be clear and concise; use emoji when appropriate.`;\n}\n\n/** Stamps the owning generation so ToolRuntime can reject retired-generation tools. */\nexport function stampToolGeneration<T extends { generation?: number }>(\n tools: T[],\n generation: number,\n): T[] {\n for (const tool of tools) tool.generation = generation;\n return tools;\n}\n\n/** 无 per-turn 可变 state;并发 collectForTurn 安全。 */\nexport const defaultToolSystem = createToolSystem();\n"]}
|
|
@@ -43,4 +43,3 @@ export declare class TurnToolExecutionAuthority implements ToolExecutionAuthorit
|
|
|
43
43
|
constructor(runtime: TurnToolRuntime);
|
|
44
44
|
execute(tool: AgentTool, input: Readonly<Record<string, unknown>>, toolUseId: string, cause?: ToolExecutionCause): Promise<TurnToolOutcome>;
|
|
45
45
|
}
|
|
46
|
-
//# sourceMappingURL=turn-tool-runtime.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turn-tool-runtime.js","sourceRoot":"","sources":["../../src/tool/turn-tool-runtime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"turn-tool-runtime.js","sourceRoot":"","sources":["../../src/tool/turn-tool-runtime.ts"],"names":[],"mappings":"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","sourcesContent":["import { runTurnToolPolicies } from '../security/policy-facade.js';\nimport type { ToolCapability } from '../plugin-runtime/capability-ingress.js';\nimport { toolInvocationFromTurn } from '../plugin-runtime/capability-tools.js';\nimport type { TurnIngress } from '../turn/turn-ingress.js';\nimport {\n formatApprovalDenial,\n isApprovalPortAvailable,\n requestApprovalOutcome,\n} from '../session/approval-port.js';\nimport type { AgentTool, ToolExecutionCause } from '@zhin.js/ai';\nimport type { ToolExecutionAuthority } from '../core/tool-execution-authority.js';\nimport { TurnJournalCommitError } from '../turn/journal-integrity.js';\nimport { NetworkAccessDeniedError } from '../security/network-policy.js';\nimport {\n PROVENANCE_POLICY,\n PROVENANCE_UNATTENDED_REASON,\n TurnProvenance,\n classifyHighRiskAction,\n formatProvenanceReason,\n isExternalContentSource,\n resolveInjectionGuard,\n type InjectionGuardSettings,\n} from '../security/provenance.js';\nimport type { OutboundLeakInspector } from '../security/outbound-leak-guard.js';\nimport { resolveTurnTrustLevel } from '../security/trust-level.js';\nimport { safeSessionKey } from '../memory-layers.js';\n\ntype ToolJournalEvent = Extract<import('../event/turn-event.js').TurnEvent, {\n type: 'tool_call' | 'tool_result' | 'tool_denied' | 'tool_failed' | 'tool_cancelled';\n}>;\n\nexport type TurnToolOutcome =\n | Readonly<{ status: 'completed'; output: unknown; durationMs: number }>\n | Readonly<{ status: 'denied'; policy: string; reason: string }>\n | Readonly<{ status: 'cancelled'; reason: string }>\n | Readonly<{ status: 'failed'; error: string; retryable: boolean }>;\n\nexport interface TurnToolRuntimeOptions {\n /** `ai.agent.injectionGuard`; unset keys use the conservative defaults. */\n readonly injectionGuard?: Partial<InjectionGuardSettings>;\n /** Shared with the engine so sources outside tool calls (background events) also count. */\n readonly provenance?: TurnProvenance;\n /** Masks leaks in the text arguments of outbound tools and learns other-session memory reads. */\n readonly leakInspector?: OutboundLeakInspector;\n}\n\n/** Sole execution authority for Tool capabilities within one fixed Turn lease. */\nexport class TurnToolRuntime {\n readonly #tools: ReadonlyMap<string, ToolCapability>;\n readonly #guard: InjectionGuardSettings;\n readonly #leakInspector?: OutboundLeakInspector;\n /** Lower-trust sources that reached the model during this turn (#727). */\n readonly provenance: TurnProvenance;\n\n constructor(\n private readonly turn: TurnIngress,\n tools: readonly ToolCapability[],\n options: TurnToolRuntimeOptions = {},\n ) {\n this.#tools = new Map(tools.map((tool) => [tool.name, tool]));\n this.#guard = resolveInjectionGuard(options.injectionGuard);\n this.provenance = options.provenance ?? new TurnProvenance();\n this.#leakInspector = this.#guard.outboundCheck === 'redact' ? options.leakInspector : undefined;\n }\n\n async execute(\n name: string,\n input: Readonly<Record<string, unknown>>,\n toolUseId: string,\n cause?: ToolExecutionCause,\n ): Promise<TurnToolOutcome> {\n const tool = this.#tools.get(name);\n const causedBy = freezeToolExecutionCause(cause);\n if (!tool) return this.#deny(name, toolUseId, 'capability', `Unknown Tool capability: ${name}`, causedBy);\n await this.#append({ type: 'tool_call', toolName: name, args: { ...input }, toolUseId }, causedBy);\n if (this.turn.signal.aborted) return this.#cancel(name, toolUseId, 0, causedBy);\n const decision = await runTurnToolPolicies({ turn: this.turn, tool, input });\n // File/cwd authorization is asynchronous: cancellation can arrive after\n // the ingress check but before an allowed decision reaches execution.\n if (this.turn.signal.aborted) return this.#cancel(name, toolUseId, 0, causedBy);\n if (decision.status === 'denied') {\n return this.#deny(name, toolUseId, decision.policy, decision.reason, causedBy);\n }\n let effectiveInput = decision.input;\n const highRisk = classifyHighRiskAction(tool);\n const provenanceGate = highRisk !== undefined\n && this.#guard.confirmHighRisk === 'external_content'\n && this.provenance.tainted;\n if (provenanceGate) {\n // #727 M3.3: a high-risk action after lower-trust content always asks\n // first, even when the configured policy would allow it outright.\n if (this.turn.policy.unattended || !isApprovalPortAvailable(this.turn.ports.approval)) {\n return this.#deny(name, toolUseId, PROVENANCE_POLICY, PROVENANCE_UNATTENDED_REASON, causedBy);\n }\n const chain = this.provenance.describeChain(resolveTurnTrustLevel(this.turn), name);\n const approval = await requestApprovalOutcome(this.turn.ports.approval, {\n requestId: `${this.turn.identity.turnId}:${toolUseId}`,\n sessionKey: this.turn.session.key,\n ...(this.turn.origin.kind === 'im'\n ? { conversationScope: this.turn.origin.scope }\n : {}),\n requesterId: this.turn.principal.subjectId,\n toolName: name,\n // Never matches a remembered approval: each tainted call is confirmed on its own.\n scopeKey: `${PROVENANCE_POLICY}:${this.turn.identity.turnId}:${toolUseId}`,\n question: formatApprovalQuestion(name, formatProvenanceReason(highRisk, chain), effectiveInput),\n signal: this.turn.signal,\n });\n if (this.turn.signal.aborted) return this.#cancel(name, toolUseId, 0, causedBy);\n if (approval.status !== 'approved') {\n return this.#deny(name, toolUseId, PROVENANCE_POLICY, formatApprovalDenial(approval), causedBy);\n }\n } else if (decision.status === 'approval_required') {\n if (this.turn.policy.unattended || !isApprovalPortAvailable(this.turn.ports.approval)) {\n return this.#deny(name, toolUseId, decision.policy, 'approval required but ApprovalPort unavailable', causedBy);\n }\n const approval = await requestApprovalOutcome(this.turn.ports.approval, {\n requestId: `${this.turn.identity.turnId}:${toolUseId}`,\n sessionKey: this.turn.session.key,\n ...(this.turn.origin.kind === 'im'\n ? { conversationScope: this.turn.origin.scope }\n : {}),\n requesterId: this.turn.principal.subjectId,\n toolName: name,\n scopeKey: tool.requiresApproval === 'once'\n ? name\n : approvalScopeKey(name, decision.input),\n ...(tool.requiresApproval === 'once' || decision.policy === 'exec-policy'\n ? { remember: 'session' as const }\n : {}),\n question: formatApprovalQuestion(name, decision.reason, decision.input),\n signal: this.turn.signal,\n });\n if (this.turn.signal.aborted) return this.#cancel(name, toolUseId, 0, causedBy);\n if (approval.status !== 'approved') {\n return this.#deny(name, toolUseId, decision.policy, formatApprovalDenial(approval), causedBy);\n }\n }\n\n if (highRisk === 'outbound' && this.#leakInspector) {\n // #727 M3.4: messages to other conversations go through the same leak check as replies.\n effectiveInput = this.#leakInspector.inspectArguments(effectiveInput).input;\n }\n\n const startedAt = Date.now();\n try {\n const output = await tool.execute(effectiveInput, toolInvocationFromTurn(this.turn));\n this.#observeOutput(tool, effectiveInput, output);\n const durationMs = Date.now() - startedAt;\n // A tool that ignores cancellation may already have committed side effects.\n // Record its real settlement so the audit trail never invites an unsafe retry.\n await this.#append({ type: 'tool_result', toolName: name, output, durationMs, toolUseId }, causedBy);\n if (this.turn.signal.aborted) return this.#cancelledOutcome();\n return Object.freeze({ status: 'completed', output, durationMs });\n } catch (error) {\n if (error instanceof TurnJournalCommitError) throw error;\n const durationMs = Date.now() - startedAt;\n if (this.turn.signal.aborted) return this.#cancel(name, toolUseId, durationMs, causedBy);\n if (error instanceof NetworkAccessDeniedError) {\n return this.#deny(name, toolUseId, error.policy, error.message, causedBy);\n }\n const message = error instanceof Error ? error.message : String(error);\n await this.#append({ type: 'tool_failed', toolName: name, toolUseId, error: message, durationMs }, causedBy);\n return Object.freeze({ status: 'failed', error: message, retryable: false });\n }\n }\n\n /** Records where the result came from, and which parts are another session's memory. */\n #observeOutput(tool: ToolCapability, input: Readonly<Record<string, unknown>>, output: unknown): void {\n if (isExternalContentSource(tool, this.#guard)) {\n this.provenance.record(tool.name === 'spawn_task'\n ? { kind: 'subagent_report' }\n : { kind: 'tool_result', toolName: tool.name });\n }\n if (this.#leakInspector && readsOtherSessionMemory(input, this.turn.session.key)) {\n this.#leakInspector.protectOtherSessionMemory(collectText(output));\n }\n }\n\n async #deny(toolName: string, toolUseId: string, policy: string, reason: string, causedBy?: ToolExecutionCause): Promise<TurnToolOutcome> {\n await this.#append({ type: 'tool_denied', toolName, toolUseId, policy, reason }, causedBy);\n return Object.freeze({ status: 'denied', policy, reason });\n }\n\n async #cancel(toolName: string, toolUseId: string, durationMs: number, causedBy?: ToolExecutionCause): Promise<TurnToolOutcome> {\n const outcome = this.#cancelledOutcome();\n await this.#append({ type: 'tool_cancelled', toolName, toolUseId, reason: outcome.reason, durationMs }, causedBy);\n return outcome;\n }\n\n #cancelledOutcome(): Extract<TurnToolOutcome, { status: 'cancelled' }> {\n const reason = this.turn.signal.reason instanceof Error\n ? this.turn.signal.reason.message\n : String(this.turn.signal.reason ?? 'turn cancelled');\n return Object.freeze({ status: 'cancelled', reason });\n }\n\n async #append(event: ToolJournalEvent, causedBy?: ToolExecutionCause): Promise<void> {\n try {\n await this.turn.ports.journal.append(causedBy ? { ...event, causedBy } : event);\n } catch (error) {\n throw new TurnJournalCommitError(error);\n }\n }\n}\n\nfunction formatApprovalQuestion(\n toolName: string,\n reason: string,\n input: Readonly<Record<string, unknown>>,\n): string {\n const command = typeof input.command === 'string' ? input.command.trim() : '';\n const cwd = typeof input.cwd === 'string' ? input.cwd.trim() : '';\n const path = ['file_path', 'path'].map((key) => input[key]).find((value) => typeof value === 'string') as string | undefined;\n return [\n `工具「${toolName}」需要确认后执行。`,\n command ? `命令:${command}` : undefined,\n cwd ? `工作目录:${cwd}` : undefined,\n path ? `目标文件:${path}` : undefined,\n `风险:${reason}`,\n '是否继续?',\n ].filter((line): line is string => Boolean(line)).join('\\n');\n}\n\nconst SESSION_MEMORY_PATH = /(?:^|[\\\\/])data[\\\\/]memory[\\\\/]sessions[\\\\/]([^\\\\/]+)/;\n\n/** True when a file tool's path points into a different session's memory directory. */\nfunction readsOtherSessionMemory(input: Readonly<Record<string, unknown>>, sessionKey: string): boolean {\n const path = ['file_path', 'path', 'filePath'].map((key) => input[key]).find((value) => typeof value === 'string') as string | undefined;\n const match = path ? SESSION_MEMORY_PATH.exec(path) : null;\n return match !== null && match[1] !== safeSessionKey(sessionKey);\n}\n\n/** Every string inside a tool output, one per line (file tools may return structured results). */\nfunction collectText(value: unknown, depth = 0): string {\n if (typeof value === 'string') return value;\n if (depth > 4 || value === null || typeof value !== 'object') return '';\n const entries = Array.isArray(value) ? value : Object.values(value as Record<string, unknown>);\n return entries.map((entry) => collectText(entry, depth + 1)).filter(Boolean).join('\\n');\n}\n\nfunction approvalScopeKey(toolName: string, input: Readonly<Record<string, unknown>>): string {\n return `${toolName}:${stableApprovalValue(input)}`;\n}\n\nfunction stableApprovalValue(value: unknown): string {\n if (Array.isArray(value)) return `[${value.map(stableApprovalValue).join(',')}]`;\n if (value && typeof value === 'object') {\n return `{${Object.entries(value as Record<string, unknown>)\n .sort(([left], [right]) => left.localeCompare(right))\n .map(([key, entry]) => `${JSON.stringify(key)}:${stableApprovalValue(entry)}`)\n .join(',')}}`;\n }\n if (typeof value === 'undefined') return 'undefined';\n try { return JSON.stringify(value); } catch { return String(value); }\n}\n\n/** Adapts canonical capability execution to the full AgentCore seam. */\nexport class TurnToolExecutionAuthority implements ToolExecutionAuthority {\n readonly #runtime: TurnToolRuntime;\n\n constructor(runtime: TurnToolRuntime) {\n this.#runtime = runtime;\n }\n\n execute(\n tool: AgentTool,\n input: Readonly<Record<string, unknown>>,\n toolUseId: string,\n cause?: ToolExecutionCause,\n ) {\n return this.#runtime.execute(tool.name, input, toolUseId, cause);\n }\n}\n\nfunction freezeToolExecutionCause(cause?: ToolExecutionCause): ToolExecutionCause | undefined {\n if (!cause?.principal && !cause?.turn) return undefined;\n return Object.freeze({\n ...(cause.principal ? {\n principal: Object.freeze({\n ...cause.principal,\n ...(cause.principal.roles ? { roles: Object.freeze([...cause.principal.roles]) } : {}),\n }),\n } : {}),\n ...(cause.turn ? { turn: Object.freeze({ ...cause.turn }) } : {}),\n });\n}\n"]}
|
package/lib/tool-bridge.d.ts
CHANGED
|
@@ -8,4 +8,3 @@
|
|
|
8
8
|
export { agentToolToLlmTool, agentToolsToLlmTools, } from '@zhin.js/ai';
|
|
9
9
|
export { normalizeTool as pluginToolToAgentTool, } from './resource-hub/tool-selection.js';
|
|
10
10
|
export type { NormalizableTool } from './resource-hub/tool-selection.js';
|
|
11
|
-
//# sourceMappingURL=tool-bridge.d.ts.map
|
package/lib/tool-bridge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-bridge.js","sourceRoot":"","sources":["../src/tool-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EACL,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,aAAa,IAAI,qBAAqB,GACvC,MAAM,kCAAkC,CAAC"}
|
|
1
|
+
{"version":3,"file":"tool-bridge.js","sourceRoot":"","sources":["../src/tool-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EACL,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,aAAa,IAAI,qBAAqB,GACvC,MAAM,kCAAkC,CAAC","sourcesContent":["/**\n * Tool schema bridge — canonical conversion paths (ADR 0009 / 0019).\n *\n * Authoring SSOT: `@zhin.js/core` Tool (+ Zod/JSON schema)\n * → pluginToolToAgentTool (agent runtime)\n * → agentToolToLlmTool (@zhin.js/ai transport)\n */\nexport {\n agentToolToLlmTool,\n agentToolsToLlmTools,\n} from '@zhin.js/ai';\n\nexport {\n normalizeTool as pluginToolToAgentTool,\n} from './resource-hub/tool-selection.js';\n\nexport type { NormalizableTool } from './resource-hub/tool-selection.js';\n"]}
|
|
@@ -31,4 +31,3 @@ export declare function runWithDeferredTurnController<TResult>(controller: Defer
|
|
|
31
31
|
export declare function getActiveDeferredTurnController(): DeferredTurnController | undefined;
|
|
32
32
|
export declare function createDeferredTurnController(options: DeferredTurnControllerOptions): DeferredTurnController;
|
|
33
33
|
export declare function isToolsMutatedResult(result: ToolResult): boolean;
|
|
34
|
-
//# sourceMappingURL=deferred-turn-controller.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deferred-turn-controller.js","sourceRoot":"","sources":["../../src/tool-catalog/deferred-turn-controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"deferred-turn-controller.js","sourceRoot":"","sources":["../../src/tool-catalog/deferred-turn-controller.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n addSkillToSnapshot,\n getLoadedToolNamesFromSnapshot,\n touchToolInSnapshot,\n touchToolsInSnapshot,\n type AgentTool,\n type DeferredToolSessionSnapshot,\n} from '@zhin.js/ai';\nimport type { Tool, ToolResult } from '@zhin.js/core';\nimport { AsyncLocalStorage } from 'node:async_hooks';\nimport type { SkillRegistry } from '../resource-hub/skill-registry.js';\nimport type { SkillInstructionSource } from '../skill/skill-instruction-reader.js';\nimport { catalogToolByName, discoverInCatalog, type DiscoverKind } from './tool-catalog.js';\nimport type { ToolCatalogItem } from './types.js';\n\nexport const TOOLS_MUTATED_MARKER = '__zhin_tools_mutated__';\n\nexport interface DeferredTurnControllerOptions {\n readonly sessionId: string;\n readonly platform?: string;\n readonly catalog: readonly ToolCatalogItem[];\n readonly skillRegistry: SkillRegistry | null;\n readonly snapshot: DeferredToolSessionSnapshot;\n readonly maxLoadedPerSession: number;\n /** Always-loaded tools: never recorded in the session snapshot, so they never count against or get evicted by `maxLoadedPerSession`. */\n readonly pinnedTools?: ReadonlySet<string>;\n readonly discoverTopK: number;\n readonly persistSnapshot: (snapshot: DeferredToolSessionSnapshot) => Promise<void>;\n readonly onSkillLoaded?: (name: string, instructions: string, toolNames: string[]) => void;\n readonly skillInstructions: SkillInstructionSource;\n}\n\nexport interface DeferredTurnController {\n readonly tools: readonly Tool[];\n snapshot(): DeferredToolSessionSnapshot;\n loadedToolNames(): string[];\n tool(name: string): AgentTool | undefined;\n /** Load a catalog tool into the session. Returns false when the name is not in this turn's catalog. */\n load(name: string): Promise<boolean>;\n fork(): DeferredTurnController;\n}\n\nconst activeController = new AsyncLocalStorage<DeferredTurnController>();\n\nexport function runWithDeferredTurnController<TResult>(\n controller: DeferredTurnController,\n operation: () => Promise<TResult>,\n): Promise<TResult> {\n return activeController.run(controller, operation);\n}\n\nexport function getActiveDeferredTurnController(): DeferredTurnController | undefined {\n return activeController.getStore();\n}\n\nconst MEMORY_HINT_KEYWORDS = ['memory', 'remember', 'recall', 'store', '记忆', '记住', '记下', '回忆', '备忘'];\nconst MEMORY_FALLBACK_HINT =\n 'No matches. 语义记忆工具未启用(需配置 ai.memory.semantic.enabled: true)。'\n + '可使用 write_file 将信息写入 data/memory/sessions/…/MEMORY.md 作为文件记忆替代。';\n\nfunction formatDiscoverResults(items: ReturnType<typeof discoverInCatalog>, query?: string): string {\n if (items.length === 0) {\n if (query && MEMORY_HINT_KEYWORDS.some(keyword => query.toLowerCase().includes(keyword))) {\n return MEMORY_FALLBACK_HINT;\n }\n return 'No matches.';\n }\n return items.map(item => `- [${item.kind}] ${item.name}: ${item.brief}`).join('\\n');\n}\n\nfunction schemaSummary(item: ToolCatalogItem): string {\n const params = item.fullTool.parameters;\n if (!params) return `Loaded tool \"${item.name}\".`;\n return `Loaded tool \"${item.name}\".\\nParameters schema:\\n${JSON.stringify(params, null, 2)}`;\n}\n\nexport function createDeferredTurnController(\n options: DeferredTurnControllerOptions,\n): DeferredTurnController {\n let currentSnapshot = structuredClone(options.snapshot);\n const catalog = [...options.catalog];\n const byName = catalogToolByName(catalog);\n\n const persist = async (next: DeferredToolSessionSnapshot): Promise<void> => {\n currentSnapshot = next;\n await options.persistSnapshot(currentSnapshot);\n };\n\n const isPinned = (name: string): boolean => options.pinnedTools?.has(name) ?? false;\n\n const loadTool = async (name: string): Promise<ToolCatalogItem | undefined> => {\n const item = byName.get(name);\n if (!item) return undefined;\n if (!isPinned(name)) {\n await persist(touchToolInSnapshot(currentSnapshot, name, options.maxLoadedPerSession));\n }\n return item;\n };\n\n const tools: Tool[] = [\n {\n name: 'discover',\n description: 'Search deferred tools and skills by query. kind: tool|skill|all (default all). Empty query returns platform-matched skills.',\n parameters: {\n type: 'object',\n properties: {\n query: { type: 'string', description: 'Search query (user intent keywords)' },\n kind: { type: 'string', enum: ['tool', 'skill', 'all'], description: 'What to search (default all)' },\n mcp_server: { type: 'string', description: 'Filter tools by MCP server name' },\n },\n },\n source: 'builtin:agent',\n execute: async (args): Promise<ToolResult> => {\n const input = args as Record<string, unknown>;\n const kind = (typeof input.kind === 'string' ? input.kind : 'all') as DiscoverKind;\n const query = typeof input.query === 'string' ? input.query : '';\n const mcpServer = typeof input.mcp_server === 'string' ? input.mcp_server : undefined;\n return formatDiscoverResults(discoverInCatalog({\n query,\n kind,\n topK: options.discoverTopK,\n platform: options.platform,\n mcpServer,\n skillRegistry: options.skillRegistry,\n catalog,\n }), query);\n },\n },\n {\n name: 'load_tool',\n description: 'Load a deferred tool schema into this turn so it can be called.',\n parameters: {\n type: 'object',\n properties: { name: { type: 'string', description: 'Tool name from discover results' } },\n required: ['name'],\n },\n source: 'builtin:agent',\n execute: async (args): Promise<ToolResult> => {\n const name = String((args as Record<string, unknown>).name);\n const item = await loadTool(name);\n if (!item) return `Tool \"${name}\" not found in catalog.`;\n return `${schemaSummary(item)}\\n${TOOLS_MUTATED_MARKER}`;\n },\n },\n {\n name: 'load_skill',\n description: 'Load full skill instructions and unlock associated tools for this turn.',\n parameters: {\n type: 'object',\n properties: { name: { type: 'string', description: 'Skill name from discover results' } },\n required: ['name'],\n },\n source: 'builtin:agent',\n execute: async (args): Promise<ToolResult> => {\n const name = String((args as Record<string, unknown>).name);\n const result = await options.skillInstructions.read(name);\n if (result.status === 'missing') return `Skill '${result.name}' not found. Check skills/ directory.`;\n const { instructions } = result;\n let next = addSkillToSnapshot(currentSnapshot, name);\n const toolNames = options.skillRegistry?.getByName(name)?.tools?.map(tool => tool.name) ?? [];\n next = touchToolsInSnapshot(\n next,\n toolNames.filter(toolName => !isPinned(toolName)),\n options.maxLoadedPerSession,\n );\n await persist(next);\n options.onSkillLoaded?.(name, instructions, toolNames);\n const unlock = toolNames.length > 0 ? `\\nUnlocked tools: ${toolNames.join(', ')}` : '';\n return `${instructions}${unlock}\\n${TOOLS_MUTATED_MARKER}`;\n },\n },\n ];\n\n return Object.freeze({\n tools: Object.freeze(tools),\n snapshot: () => currentSnapshot,\n loadedToolNames: () => getLoadedToolNamesFromSnapshot(currentSnapshot),\n tool: (name: string) => byName.get(name)?.fullTool,\n load: async (name: string) => (await loadTool(name)) !== undefined,\n fork: () => createDeferredTurnController({\n ...options,\n snapshot: currentSnapshot,\n persistSnapshot: async () => undefined,\n }),\n });\n}\n\nexport function isToolsMutatedResult(result: ToolResult): boolean {\n const text = typeof result === 'string' ? result : JSON.stringify(result);\n return text.includes(TOOLS_MUTATED_MARKER);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tool-catalog/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tool-catalog/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC","sourcesContent":["export * from './types.js';\nexport * from './tool-catalog.js';\nexport * from './resolve-config.js';\n"]}
|