@zhin.js/agent 0.1.30 → 0.1.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +89 -24
- package/lib/builtin/memory-search-tool.d.ts +2 -0
- package/lib/builtin/memory-search-tool.d.ts.map +1 -0
- package/lib/builtin/memory-search-tool.js +61 -0
- package/lib/builtin/memory-search-tool.js.map +1 -0
- package/lib/builtin/memory-upsert-tool.d.ts +2 -0
- package/lib/builtin/memory-upsert-tool.d.ts.map +1 -0
- package/lib/builtin/memory-upsert-tool.js +75 -0
- package/lib/builtin/memory-upsert-tool.js.map +1 -0
- package/lib/builtin/orchestration-tools.d.ts +7 -0
- package/lib/builtin/orchestration-tools.d.ts.map +1 -0
- package/lib/builtin/orchestration-tools.js +283 -0
- package/lib/builtin/orchestration-tools.js.map +1 -0
- package/lib/builtin/run-deferred-task-tool.d.ts +1 -1
- package/lib/builtin/run-deferred-task-tool.d.ts.map +1 -1
- package/lib/builtin/run-deferred-task-tool.js +1 -1
- package/lib/builtin/run-deferred-task-tool.js.map +1 -1
- package/lib/builtin/run-spec-dry-run-tool.d.ts +6 -0
- package/lib/builtin/run-spec-dry-run-tool.d.ts.map +1 -0
- package/lib/builtin/run-spec-dry-run-tool.js +51 -0
- package/lib/builtin/run-spec-dry-run-tool.js.map +1 -0
- package/lib/builtin/run-validation-spec-tool.d.ts +8 -0
- package/lib/builtin/run-validation-spec-tool.d.ts.map +1 -0
- package/lib/builtin/run-validation-spec-tool.js +44 -0
- package/lib/builtin/run-validation-spec-tool.js.map +1 -0
- package/lib/builtin/spawn-task-tool.d.ts +1 -1
- package/lib/builtin/spawn-task-tool.d.ts.map +1 -1
- package/lib/builtin/spawn-task-tool.js +53 -1
- package/lib/builtin/spawn-task-tool.js.map +1 -1
- package/lib/builtin-tools.d.ts +2 -0
- package/lib/builtin-tools.d.ts.map +1 -1
- package/lib/builtin-tools.js +6 -0
- package/lib/builtin-tools.js.map +1 -1
- package/lib/config/normalize-ai-config.d.ts +4 -0
- package/lib/config/normalize-ai-config.d.ts.map +1 -1
- package/lib/config/normalize-ai-config.js +23 -6
- package/lib/config/normalize-ai-config.js.map +1 -1
- package/lib/config/provider-instance.d.ts.map +1 -1
- package/lib/config/provider-instance.js +26 -7
- package/lib/config/provider-instance.js.map +1 -1
- package/lib/config/types.d.ts +2 -1
- package/lib/config/types.d.ts.map +1 -1
- package/lib/config/types.js.map +1 -1
- package/lib/config/validate-ai-config.d.ts.map +1 -1
- package/lib/config/validate-ai-config.js +5 -0
- package/lib/config/validate-ai-config.js.map +1 -1
- package/lib/create-agent-session.d.ts +16 -0
- package/lib/create-agent-session.d.ts.map +1 -0
- package/lib/create-agent-session.js +15 -0
- package/lib/create-agent-session.js.map +1 -0
- package/lib/deferred-worker-runner.d.ts +2 -0
- package/lib/deferred-worker-runner.d.ts.map +1 -1
- package/lib/deferred-worker-runner.js +17 -34
- package/lib/deferred-worker-runner.js.map +1 -1
- package/lib/discovery/agents.d.ts +5 -0
- package/lib/discovery/agents.d.ts.map +1 -1
- package/lib/discovery/agents.js +7 -0
- package/lib/discovery/agents.js.map +1 -1
- package/lib/discovery/skills.d.ts +1 -1
- package/lib/discovery/skills.d.ts.map +1 -1
- package/lib/discovery/skills.js +2 -9
- package/lib/discovery/skills.js.map +1 -1
- package/lib/discovery/utils.d.ts +7 -1
- package/lib/discovery/utils.d.ts.map +1 -1
- package/lib/discovery/utils.js +66 -5
- package/lib/discovery/utils.js.map +1 -1
- package/lib/index.d.ts +19 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +12 -2
- package/lib/index.js.map +1 -1
- package/lib/init/activate-ai-database-storage.d.ts +1 -1
- package/lib/init/activate-ai-database-storage.d.ts.map +1 -1
- package/lib/init/activate-ai-database-storage.js +38 -13
- package/lib/init/activate-ai-database-storage.js.map +1 -1
- package/lib/init/create-zhin-agent.d.ts.map +1 -1
- package/lib/init/create-zhin-agent.js +86 -9
- package/lib/init/create-zhin-agent.js.map +1 -1
- package/lib/init/introspection-args.d.ts +34 -0
- package/lib/init/introspection-args.d.ts.map +1 -0
- package/lib/init/introspection-args.js +71 -0
- package/lib/init/introspection-args.js.map +1 -0
- package/lib/init/introspection-collectors.d.ts +21 -0
- package/lib/init/introspection-collectors.d.ts.map +1 -0
- package/lib/init/introspection-collectors.js +74 -0
- package/lib/init/introspection-collectors.js.map +1 -0
- package/lib/init/introspection-commands-format.d.ts +1 -1
- package/lib/init/introspection-commands-format.js +4 -4
- package/lib/init/introspection-commands-format.js.map +1 -1
- package/lib/init/introspection-output.d.ts +6 -0
- package/lib/init/introspection-output.d.ts.map +1 -0
- package/lib/init/introspection-output.js +52 -0
- package/lib/init/introspection-output.js.map +1 -0
- package/lib/init/introspection-pagination.d.ts +14 -0
- package/lib/init/introspection-pagination.d.ts.map +1 -0
- package/lib/init/introspection-pagination.js +33 -0
- package/lib/init/introspection-pagination.js.map +1 -0
- package/lib/init/introspection-rest.d.ts +24 -0
- package/lib/init/introspection-rest.d.ts.map +1 -0
- package/lib/init/introspection-rest.js +65 -0
- package/lib/init/introspection-rest.js.map +1 -0
- package/lib/init/register-agent-mesh-mcp.d.ts +2 -0
- package/lib/init/register-agent-mesh-mcp.d.ts.map +1 -0
- package/lib/init/register-agent-mesh-mcp.js +13 -0
- package/lib/init/register-agent-mesh-mcp.js.map +1 -0
- package/lib/init/register-ai-trigger.d.ts.map +1 -1
- package/lib/init/register-ai-trigger.js +29 -4
- package/lib/init/register-ai-trigger.js.map +1 -1
- package/lib/init/register-builtin-tools.d.ts.map +1 -1
- package/lib/init/register-builtin-tools.js +4 -0
- package/lib/init/register-builtin-tools.js.map +1 -1
- package/lib/init/register-db-models.d.ts.map +1 -1
- package/lib/init/register-db-models.js +10 -8
- package/lib/init/register-db-models.js.map +1 -1
- package/lib/init/register-db-upgrade.d.ts +1 -1
- package/lib/init/register-db-upgrade.d.ts.map +1 -1
- package/lib/init/register-db-upgrade.js +22 -3
- package/lib/init/register-db-upgrade.js.map +1 -1
- package/lib/init/register-group-session-passive.d.ts +3 -0
- package/lib/init/register-group-session-passive.d.ts.map +1 -0
- package/lib/init/register-group-session-passive.js +55 -0
- package/lib/init/register-group-session-passive.js.map +1 -0
- package/lib/init/register-introspection-commands.d.ts.map +1 -1
- package/lib/init/register-introspection-commands.js +5 -6
- package/lib/init/register-introspection-commands.js.map +1 -1
- package/lib/init/register-management-tools.d.ts +1 -1
- package/lib/init/register-management-tools.d.ts.map +1 -1
- package/lib/init/register-management-tools.js +57 -36
- package/lib/init/register-management-tools.js.map +1 -1
- package/lib/init/upgrade-agent-db-schema.d.ts +41 -0
- package/lib/init/upgrade-agent-db-schema.d.ts.map +1 -0
- package/lib/init/upgrade-agent-db-schema.js +170 -0
- package/lib/init/upgrade-agent-db-schema.js.map +1 -0
- package/lib/init.d.ts.map +1 -1
- package/lib/init.js +4 -0
- package/lib/init.js.map +1 -1
- package/lib/mcp-server/agent-mesh-tools.d.ts +8 -0
- package/lib/mcp-server/agent-mesh-tools.d.ts.map +1 -0
- package/lib/mcp-server/agent-mesh-tools.js +138 -0
- package/lib/mcp-server/agent-mesh-tools.js.map +1 -0
- package/lib/media/deliver-subagent-result.d.ts +7 -0
- package/lib/media/deliver-subagent-result.d.ts.map +1 -1
- package/lib/media/deliver-subagent-result.js +3 -1
- package/lib/media/deliver-subagent-result.js.map +1 -1
- package/lib/media/media-normalize.d.ts +2 -0
- package/lib/media/media-normalize.d.ts.map +1 -1
- package/lib/media/media-normalize.js +89 -0
- package/lib/media/media-normalize.js.map +1 -1
- package/lib/media/subagent-user-delivery.d.ts +2 -9
- package/lib/media/subagent-user-delivery.d.ts.map +1 -1
- package/lib/media/subagent-user-delivery.js.map +1 -1
- package/lib/memory-entry-registry.d.ts +7 -0
- package/lib/memory-entry-registry.d.ts.map +1 -0
- package/lib/memory-entry-registry.js +8 -0
- package/lib/memory-entry-registry.js.map +1 -0
- package/lib/orchestration-memory-hook.d.ts +3 -0
- package/lib/orchestration-memory-hook.d.ts.map +1 -0
- package/lib/orchestration-memory-hook.js +22 -0
- package/lib/orchestration-memory-hook.js.map +1 -0
- package/lib/orchestration-runtime-registry.d.ts +14 -0
- package/lib/orchestration-runtime-registry.d.ts.map +1 -0
- package/lib/orchestration-runtime-registry.js +15 -0
- package/lib/orchestration-runtime-registry.js.map +1 -0
- package/lib/orchestrator/agent-dispatcher.d.ts +36 -3
- package/lib/orchestrator/agent-dispatcher.d.ts.map +1 -1
- package/lib/orchestrator/agent-dispatcher.js +203 -13
- package/lib/orchestrator/agent-dispatcher.js.map +1 -1
- package/lib/orchestrator/delegation-processor.d.ts +33 -0
- package/lib/orchestrator/delegation-processor.d.ts.map +1 -0
- package/lib/orchestrator/delegation-processor.js +140 -0
- package/lib/orchestrator/delegation-processor.js.map +1 -0
- package/lib/orchestrator/mission-milestone-notify.d.ts +17 -0
- package/lib/orchestrator/mission-milestone-notify.d.ts.map +1 -0
- package/lib/orchestrator/mission-milestone-notify.js +49 -0
- package/lib/orchestrator/mission-milestone-notify.js.map +1 -0
- package/lib/orchestrator/mission-negotiation.d.ts +17 -0
- package/lib/orchestrator/mission-negotiation.d.ts.map +1 -0
- package/lib/orchestrator/mission-negotiation.js +89 -0
- package/lib/orchestrator/mission-negotiation.js.map +1 -0
- package/lib/orchestrator/mission-patch-acl.d.ts +9 -0
- package/lib/orchestrator/mission-patch-acl.d.ts.map +1 -0
- package/lib/orchestrator/mission-patch-acl.js +29 -0
- package/lib/orchestrator/mission-patch-acl.js.map +1 -0
- package/lib/orchestrator/mission-runner.d.ts +24 -0
- package/lib/orchestrator/mission-runner.d.ts.map +1 -0
- package/lib/orchestrator/mission-runner.js +179 -0
- package/lib/orchestrator/mission-runner.js.map +1 -0
- package/lib/orchestrator/mission-spec.d.ts +44 -0
- package/lib/orchestrator/mission-spec.d.ts.map +1 -0
- package/lib/orchestrator/mission-spec.js +121 -0
- package/lib/orchestrator/mission-spec.js.map +1 -0
- package/lib/orchestrator/mission-state.d.ts +48 -0
- package/lib/orchestrator/mission-state.d.ts.map +1 -0
- package/lib/orchestrator/mission-state.js +66 -0
- package/lib/orchestrator/mission-state.js.map +1 -0
- package/lib/orchestrator/orchestration-repository.d.ts +85 -0
- package/lib/orchestrator/orchestration-repository.d.ts.map +1 -0
- package/lib/orchestrator/orchestration-repository.js +325 -0
- package/lib/orchestrator/orchestration-repository.js.map +1 -0
- package/lib/orchestrator/orchestration-service.d.ts +58 -0
- package/lib/orchestrator/orchestration-service.d.ts.map +1 -0
- package/lib/orchestrator/orchestration-service.js +221 -0
- package/lib/orchestrator/orchestration-service.js.map +1 -0
- package/lib/orchestrator/remote-agent-registry.d.ts +32 -0
- package/lib/orchestrator/remote-agent-registry.d.ts.map +1 -0
- package/lib/orchestrator/remote-agent-registry.js +120 -0
- package/lib/orchestrator/remote-agent-registry.js.map +1 -0
- package/lib/orchestrator/remote-task-executor.d.ts +10 -0
- package/lib/orchestrator/remote-task-executor.d.ts.map +1 -0
- package/lib/orchestrator/remote-task-executor.js +142 -0
- package/lib/orchestrator/remote-task-executor.js.map +1 -0
- package/lib/orchestrator/remote-task-poller.d.ts +16 -0
- package/lib/orchestrator/remote-task-poller.d.ts.map +1 -0
- package/lib/orchestrator/remote-task-poller.js +75 -0
- package/lib/orchestrator/remote-task-poller.js.map +1 -0
- package/lib/plugin-loop-hooks.d.ts +32 -0
- package/lib/plugin-loop-hooks.d.ts.map +1 -0
- package/lib/plugin-loop-hooks.js +69 -0
- package/lib/plugin-loop-hooks.js.map +1 -0
- package/lib/service.d.ts +38 -22
- package/lib/service.d.ts.map +1 -1
- package/lib/service.js +61 -19
- package/lib/service.js.map +1 -1
- package/lib/session-tree-runtime-registry.d.ts +20 -0
- package/lib/session-tree-runtime-registry.d.ts.map +1 -0
- package/lib/session-tree-runtime-registry.js +25 -0
- package/lib/session-tree-runtime-registry.js.map +1 -0
- package/lib/subagent-ai-events.d.ts +2 -2
- package/lib/subagent-ai-events.d.ts.map +1 -1
- package/lib/subagent-ai-events.js +17 -21
- package/lib/subagent-ai-events.js.map +1 -1
- package/lib/subagent-artifact.d.ts +7 -0
- package/lib/subagent-artifact.d.ts.map +1 -0
- package/lib/subagent-artifact.js +26 -0
- package/lib/subagent-artifact.js.map +1 -0
- package/lib/subagent-parent-context.d.ts +9 -0
- package/lib/subagent-parent-context.d.ts.map +1 -0
- package/lib/subagent-parent-context.js +50 -0
- package/lib/subagent-parent-context.js.map +1 -0
- package/lib/subagent-preset.d.ts +10 -0
- package/lib/subagent-preset.d.ts.map +1 -0
- package/lib/subagent-preset.js +44 -0
- package/lib/subagent-preset.js.map +1 -0
- package/lib/subagent-prompt.d.ts +7 -0
- package/lib/subagent-prompt.d.ts.map +1 -0
- package/lib/subagent-prompt.js +14 -0
- package/lib/subagent-prompt.js.map +1 -0
- package/lib/subagent.d.ts +19 -0
- package/lib/subagent.d.ts.map +1 -1
- package/lib/subagent.js +175 -92
- package/lib/subagent.js.map +1 -1
- package/lib/typing-indicator/adapter-integration.d.ts +7 -3
- package/lib/typing-indicator/adapter-integration.d.ts.map +1 -1
- package/lib/typing-indicator/adapter-integration.js +30 -6
- package/lib/typing-indicator/adapter-integration.js.map +1 -1
- package/lib/typing-indicator/index.d.ts +26 -3
- package/lib/typing-indicator/index.d.ts.map +1 -1
- package/lib/typing-indicator/index.js +94 -6
- package/lib/typing-indicator/index.js.map +1 -1
- package/lib/typing-indicator/integration.d.ts.map +1 -1
- package/lib/typing-indicator/integration.js +7 -2
- package/lib/typing-indicator/integration.js.map +1 -1
- package/lib/zhin-agent/agent-loop-standalone.d.ts +32 -0
- package/lib/zhin-agent/agent-loop-standalone.d.ts.map +1 -0
- package/lib/zhin-agent/agent-loop-standalone.js +144 -0
- package/lib/zhin-agent/agent-loop-standalone.js.map +1 -0
- package/lib/zhin-agent/agent-loop-turn.d.ts +52 -0
- package/lib/zhin-agent/agent-loop-turn.d.ts.map +1 -0
- package/lib/zhin-agent/agent-loop-turn.js +328 -0
- package/lib/zhin-agent/agent-loop-turn.js.map +1 -0
- package/lib/zhin-agent/branch-summarization-runtime.d.ts +16 -0
- package/lib/zhin-agent/branch-summarization-runtime.d.ts.map +1 -0
- package/lib/zhin-agent/branch-summarization-runtime.js +58 -0
- package/lib/zhin-agent/branch-summarization-runtime.js.map +1 -0
- package/lib/zhin-agent/builtin-tools.d.ts +3 -2
- package/lib/zhin-agent/builtin-tools.d.ts.map +1 -1
- package/lib/zhin-agent/builtin-tools.js +15 -16
- package/lib/zhin-agent/builtin-tools.js.map +1 -1
- package/lib/zhin-agent/compaction-runtime.d.ts +25 -0
- package/lib/zhin-agent/compaction-runtime.d.ts.map +1 -0
- package/lib/zhin-agent/compaction-runtime.js +78 -0
- package/lib/zhin-agent/compaction-runtime.js.map +1 -0
- package/lib/zhin-agent/config.d.ts +22 -2
- package/lib/zhin-agent/config.d.ts.map +1 -1
- package/lib/zhin-agent/config.js +25 -2
- package/lib/zhin-agent/config.js.map +1 -1
- package/lib/zhin-agent/deferred-auto-continue.d.ts +11 -0
- package/lib/zhin-agent/deferred-auto-continue.d.ts.map +1 -0
- package/lib/zhin-agent/deferred-auto-continue.js +41 -0
- package/lib/zhin-agent/deferred-auto-continue.js.map +1 -0
- package/lib/zhin-agent/deferred-delivery.d.ts +9 -0
- package/lib/zhin-agent/deferred-delivery.d.ts.map +1 -0
- package/lib/zhin-agent/deferred-delivery.js +35 -0
- package/lib/zhin-agent/deferred-delivery.js.map +1 -0
- package/lib/zhin-agent/index.d.ts +60 -11
- package/lib/zhin-agent/index.d.ts.map +1 -1
- package/lib/zhin-agent/index.js +264 -22
- package/lib/zhin-agent/index.js.map +1 -1
- package/lib/zhin-agent/model-resolver.d.ts +0 -1
- package/lib/zhin-agent/model-resolver.d.ts.map +1 -1
- package/lib/zhin-agent/model-resolver.js.map +1 -1
- package/lib/zhin-agent/multimodal-message.d.ts +9 -0
- package/lib/zhin-agent/multimodal-message.d.ts.map +1 -0
- package/lib/zhin-agent/multimodal-message.js +69 -0
- package/lib/zhin-agent/multimodal-message.js.map +1 -0
- package/lib/zhin-agent/persist-deferred-context.d.ts +5 -0
- package/lib/zhin-agent/persist-deferred-context.d.ts.map +1 -0
- package/lib/zhin-agent/persist-deferred-context.js +40 -0
- package/lib/zhin-agent/persist-deferred-context.js.map +1 -0
- package/lib/zhin-agent/prompt-access.d.ts +4 -0
- package/lib/zhin-agent/prompt-access.d.ts.map +1 -0
- package/lib/zhin-agent/prompt-access.js +7 -0
- package/lib/zhin-agent/prompt-access.js.map +1 -0
- package/lib/zhin-agent/prompt-builder.d.ts.map +1 -1
- package/lib/zhin-agent/prompt-builder.js +5 -0
- package/lib/zhin-agent/prompt-builder.js.map +1 -1
- package/lib/zhin-agent/prompt-controller.d.ts +53 -0
- package/lib/zhin-agent/prompt-controller.d.ts.map +1 -0
- package/lib/zhin-agent/prompt-controller.js +165 -0
- package/lib/zhin-agent/prompt-controller.js.map +1 -0
- package/lib/zhin-agent/prompt-input.d.ts +3 -0
- package/lib/zhin-agent/prompt-input.d.ts.map +1 -0
- package/lib/zhin-agent/prompt-input.js +8 -0
- package/lib/zhin-agent/prompt-input.js.map +1 -0
- package/lib/zhin-agent/prompt.d.ts.map +1 -1
- package/lib/zhin-agent/prompt.js +4 -0
- package/lib/zhin-agent/prompt.js.map +1 -1
- package/lib/zhin-agent/session-io.d.ts +28 -11
- package/lib/zhin-agent/session-io.d.ts.map +1 -1
- package/lib/zhin-agent/session-io.js +64 -28
- package/lib/zhin-agent/session-io.js.map +1 -1
- package/lib/zhin-agent/session-message-queue.d.ts +20 -0
- package/lib/zhin-agent/session-message-queue.d.ts.map +1 -0
- package/lib/zhin-agent/session-message-queue.js +52 -0
- package/lib/zhin-agent/session-message-queue.js.map +1 -0
- package/lib/zhin-agent/session-tree-commands.d.ts +5 -0
- package/lib/zhin-agent/session-tree-commands.d.ts.map +1 -0
- package/lib/zhin-agent/session-tree-commands.js +44 -0
- package/lib/zhin-agent/session-tree-commands.js.map +1 -0
- package/lib/zhin-agent/tool-calls-user-format.d.ts.map +1 -1
- package/lib/zhin-agent/tool-calls-user-format.js +3 -0
- package/lib/zhin-agent/tool-calls-user-format.js.map +1 -1
- package/lib/zhin-agent/tool-orchestration.d.ts.map +1 -1
- package/lib/zhin-agent/tool-orchestration.js +25 -6
- package/lib/zhin-agent/tool-orchestration.js.map +1 -1
- package/lib/zhin-agent/tool-runtime.d.ts +2 -2
- package/lib/zhin-agent/tool-runtime.d.ts.map +1 -1
- package/lib/zhin-agent/tool-runtime.js +4 -4
- package/lib/zhin-agent/tool-runtime.js.map +1 -1
- package/lib/zhin-agent/tool-search-orchestrator.d.ts.map +1 -1
- package/lib/zhin-agent/tool-search-orchestrator.js +13 -0
- package/lib/zhin-agent/tool-search-orchestrator.js.map +1 -1
- package/lib/zhin-agent/turn-context.d.ts +9 -0
- package/lib/zhin-agent/turn-context.d.ts.map +1 -0
- package/lib/zhin-agent/turn-context.js +12 -0
- package/lib/zhin-agent/turn-context.js.map +1 -0
- package/lib/zhin-agent/turn-pipeline.d.ts +7 -1
- package/lib/zhin-agent/turn-pipeline.d.ts.map +1 -1
- package/lib/zhin-agent/turn-pipeline.js +136 -450
- package/lib/zhin-agent/turn-pipeline.js.map +1 -1
- package/lib/zhin-agent/turn-user-message.d.ts +8 -0
- package/lib/zhin-agent/turn-user-message.d.ts.map +1 -0
- package/lib/zhin-agent/turn-user-message.js +10 -0
- package/lib/zhin-agent/turn-user-message.js.map +1 -0
- package/lib/zhin-agent/zhin-agent-private.d.ts +17 -4
- package/lib/zhin-agent/zhin-agent-private.d.ts.map +1 -1
- package/lib/zhin-agent/zhin-agent-private.js.map +1 -1
- package/package.json +4 -3
- package/lib/zhin-agent/llm-runner.d.ts +0 -18
- package/lib/zhin-agent/llm-runner.d.ts.map +0 -1
- package/lib/zhin-agent/llm-runner.js +0 -163
- package/lib/zhin-agent/llm-runner.js.map +0 -1
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { agentMessagesToOpenAi } from '@zhin.js/ai';
|
|
2
|
+
import { createUserMessage, renderUserMessageForLlm, } from '@zhin.js/ai';
|
|
3
|
+
import { formatSenderRolesForLabel, QUOTE_CONTEXT_BLOCK_EXTRA_KEY, stripUserSpoofedSenderPrefix, } from '@zhin.js/core';
|
|
2
4
|
function sanitizeSenderAttr(value) {
|
|
3
5
|
const trimmed = value.trim().replace(/[\]\s]+/g, '_');
|
|
4
6
|
return trimmed.length > 0 ? trimmed.slice(0, 64) : 'unknown';
|
|
@@ -10,19 +12,51 @@ function resolveSenderDisplayName(message) {
|
|
|
10
12
|
const raw = sender.nickname || sender.name || sender.id;
|
|
11
13
|
return raw != null ? sanitizeSenderAttr(String(raw)) : 'unknown';
|
|
12
14
|
}
|
|
13
|
-
/**
|
|
14
|
-
|
|
15
|
-
*/
|
|
16
|
-
export function formatUserContentForSession(context, rawContent) {
|
|
15
|
+
/** 群/频道 user 消息的 sender 元数据(写入 `agent_messages.extra`) */
|
|
16
|
+
export function buildUserMessageExtra(context) {
|
|
17
17
|
const scope = context.scope || 'private';
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
18
|
+
if (scope !== 'group' && scope !== 'channel')
|
|
19
|
+
return undefined;
|
|
20
|
+
const sender = {
|
|
21
|
+
id: sanitizeSenderAttr(String(context.senderId || 'unknown')),
|
|
22
|
+
name: resolveSenderDisplayName(context.message),
|
|
23
|
+
roles: formatSenderRolesForLabel(context.roles ?? ['user'])
|
|
24
|
+
.split(',')
|
|
25
|
+
.map((r) => r.trim())
|
|
26
|
+
.filter(Boolean),
|
|
27
|
+
scope,
|
|
28
|
+
};
|
|
29
|
+
if (sender.roles.length === 0)
|
|
30
|
+
sender.roles = ['user'];
|
|
31
|
+
return { sender };
|
|
32
|
+
}
|
|
33
|
+
/** 剥离伪造前缀后的用户正文 + 可选 extra(入库 payload 用) */
|
|
34
|
+
export function prepareUserContentForSession(context, rawContent) {
|
|
35
|
+
const content = stripUserSpoofedSenderPrefix(rawContent);
|
|
36
|
+
const extra = buildUserMessageExtra(context);
|
|
37
|
+
return { content, extra };
|
|
38
|
+
}
|
|
39
|
+
/** 本轮 user 消息:干净正文 + extra + LLM 渲染(引用/sender 仅 extra + 加载时拼接) */
|
|
40
|
+
export function resolveTurnUserMessage(context, rawContent) {
|
|
41
|
+
const { content, extra: senderExtra } = prepareUserContentForSession(context, rawContent);
|
|
42
|
+
const quoteBlock = context.extra?.[QUOTE_CONTEXT_BLOCK_EXTRA_KEY];
|
|
43
|
+
const extra = {
|
|
44
|
+
...senderExtra,
|
|
45
|
+
...(typeof quoteBlock === 'string' && quoteBlock.trim()
|
|
46
|
+
? { quote: { block: quoteBlock.trim(), messageId: context.message?.$quote_id } }
|
|
47
|
+
: {}),
|
|
48
|
+
};
|
|
49
|
+
const hasExtra = !!(extra.sender || extra.quote);
|
|
50
|
+
const llmMessage = renderUserMessageForLlm(createUserMessage(content), hasExtra ? extra : undefined);
|
|
51
|
+
return { content, extra: hasExtra ? extra : undefined, llmMessage };
|
|
52
|
+
}
|
|
53
|
+
/** @deprecated 使用 `resolveTurnUserMessage` */
|
|
54
|
+
export function formatUserContentForSession(context, rawContent) {
|
|
55
|
+
const { llmMessage } = resolveTurnUserMessage(context, rawContent);
|
|
56
|
+
if (llmMessage.role !== 'user')
|
|
57
|
+
return rawContent;
|
|
58
|
+
const block = llmMessage.content.find((b) => b.type === 'text');
|
|
59
|
+
return block?.type === 'text' ? block.text : rawContent;
|
|
26
60
|
}
|
|
27
61
|
export function buildSessionCreateInput(sessionKey, context) {
|
|
28
62
|
return {
|
|
@@ -33,33 +67,35 @@ export function buildSessionCreateInput(sessionKey, context) {
|
|
|
33
67
|
scene_type: context.scope || 'private',
|
|
34
68
|
};
|
|
35
69
|
}
|
|
36
|
-
export function
|
|
70
|
+
export function buildImTranscriptQuery(context) {
|
|
37
71
|
return {
|
|
38
|
-
sessionId,
|
|
39
72
|
platform: context.platform || '',
|
|
40
73
|
botId: context.botId || '',
|
|
41
74
|
sceneId: context.sceneId || '',
|
|
42
75
|
};
|
|
43
76
|
}
|
|
44
|
-
export async function
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
: [];
|
|
77
|
+
export async function buildHistoryMessagesFromContext(deps, sessionId, currentUserContent) {
|
|
78
|
+
const loaded = await deps.contextRepository.loadContext(sessionId);
|
|
79
|
+
const history = agentMessagesToOpenAi(loaded.messages);
|
|
48
80
|
return [...history, { role: 'user', content: currentUserContent }];
|
|
49
81
|
}
|
|
50
82
|
/**
|
|
51
83
|
* 在 `getOrCreateActive` 之前调用:是否视为新会话纪元(用于 ai.session.new)。
|
|
52
|
-
* 须在 beginTurnSession 之前判定,否则同轮创建会令 hasAnySession 恒为 true。
|
|
53
84
|
*/
|
|
54
|
-
export async function resolveSessionIsNewBeforeCreate(deps, sessionKey
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
const
|
|
60
|
-
|
|
85
|
+
export async function resolveSessionIsNewBeforeCreate(deps, sessionKey) {
|
|
86
|
+
const active = await deps.agentSessionStore.findActive(sessionKey);
|
|
87
|
+
return !active;
|
|
88
|
+
}
|
|
89
|
+
export async function beginTurnSession(deps, sessionKey, context) {
|
|
90
|
+
const input = buildSessionCreateInput(sessionKey, context);
|
|
91
|
+
const record = await deps.agentSessionStore.getOrCreateActive(input);
|
|
92
|
+
return { sessionKey, sessionId: record.session_id };
|
|
61
93
|
}
|
|
62
94
|
export async function touchSession(deps, sessionId) {
|
|
63
|
-
await deps.
|
|
95
|
+
await deps.agentSessionStore.touch(sessionId);
|
|
96
|
+
}
|
|
97
|
+
export async function archiveSessionByKey(deps, sessionKey) {
|
|
98
|
+
await deps.contextRepository.archiveSession(sessionKey);
|
|
99
|
+
return deps.agentSessionStore.archiveByKey(sessionKey);
|
|
64
100
|
}
|
|
65
101
|
//# sourceMappingURL=session-io.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-io.js","sourceRoot":"","sources":["../../src/zhin-agent/session-io.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"session-io.js","sourceRoot":"","sources":["../../src/zhin-agent/session-io.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { AgentMessage } from '@zhin.js/ai';
|
|
2
|
+
import type { QueueMode } from '@zhin.js/ai';
|
|
3
|
+
/** Per-sessionKey steering / follow-up queues (ADR 0009 D6 / Grill #13). */
|
|
4
|
+
export declare class SessionMessageQueue {
|
|
5
|
+
readonly steeringMode: QueueMode;
|
|
6
|
+
readonly followUpMode: QueueMode;
|
|
7
|
+
private steering;
|
|
8
|
+
private followUp;
|
|
9
|
+
constructor(steeringMode: QueueMode, followUpMode: QueueMode);
|
|
10
|
+
pushSteering(input: AgentMessage | AgentMessage[]): void;
|
|
11
|
+
pushFollowUp(input: AgentMessage | AgentMessage[]): void;
|
|
12
|
+
drainSteering(): AgentMessage[];
|
|
13
|
+
drainFollowUp(): AgentMessage[];
|
|
14
|
+
clearSteering(): void;
|
|
15
|
+
clearFollowUp(): void;
|
|
16
|
+
hasFollowUp(): boolean;
|
|
17
|
+
steeringDepth(): number;
|
|
18
|
+
followUpDepth(): number;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=session-message-queue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-message-queue.d.ts","sourceRoot":"","sources":["../../src/zhin-agent/session-message-queue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAM7C,4EAA4E;AAC5E,qBAAa,mBAAmB;IAK5B,QAAQ,CAAC,YAAY,EAAE,SAAS;IAChC,QAAQ,CAAC,YAAY,EAAE,SAAS;IALlC,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,QAAQ,CAAsB;gBAG3B,YAAY,EAAE,SAAS,EACvB,YAAY,EAAE,SAAS;IAGlC,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,YAAY,EAAE,GAAG,IAAI;IAIxD,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,YAAY,EAAE,GAAG,IAAI;IAIxD,aAAa,IAAI,YAAY,EAAE;IAQ/B,aAAa,IAAI,YAAY,EAAE;IAQ/B,aAAa,IAAI,IAAI;IAIrB,aAAa,IAAI,IAAI;IAIrB,WAAW,IAAI,OAAO;IAItB,aAAa,IAAI,MAAM;IAIvB,aAAa,IAAI,MAAM;CAGxB"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
function normalizeMessages(input) {
|
|
2
|
+
return Array.isArray(input) ? input : [input];
|
|
3
|
+
}
|
|
4
|
+
/** Per-sessionKey steering / follow-up queues (ADR 0009 D6 / Grill #13). */
|
|
5
|
+
export class SessionMessageQueue {
|
|
6
|
+
steeringMode;
|
|
7
|
+
followUpMode;
|
|
8
|
+
steering = [];
|
|
9
|
+
followUp = [];
|
|
10
|
+
constructor(steeringMode, followUpMode) {
|
|
11
|
+
this.steeringMode = steeringMode;
|
|
12
|
+
this.followUpMode = followUpMode;
|
|
13
|
+
}
|
|
14
|
+
pushSteering(input) {
|
|
15
|
+
this.steering.push(...normalizeMessages(input));
|
|
16
|
+
}
|
|
17
|
+
pushFollowUp(input) {
|
|
18
|
+
this.followUp.push(...normalizeMessages(input));
|
|
19
|
+
}
|
|
20
|
+
drainSteering() {
|
|
21
|
+
if (this.steering.length === 0)
|
|
22
|
+
return [];
|
|
23
|
+
if (this.steeringMode === 'all') {
|
|
24
|
+
return this.steering.splice(0);
|
|
25
|
+
}
|
|
26
|
+
return this.steering.splice(0, 1);
|
|
27
|
+
}
|
|
28
|
+
drainFollowUp() {
|
|
29
|
+
if (this.followUp.length === 0)
|
|
30
|
+
return [];
|
|
31
|
+
if (this.followUpMode === 'all') {
|
|
32
|
+
return this.followUp.splice(0);
|
|
33
|
+
}
|
|
34
|
+
return this.followUp.splice(0, 1);
|
|
35
|
+
}
|
|
36
|
+
clearSteering() {
|
|
37
|
+
this.steering = [];
|
|
38
|
+
}
|
|
39
|
+
clearFollowUp() {
|
|
40
|
+
this.followUp = [];
|
|
41
|
+
}
|
|
42
|
+
hasFollowUp() {
|
|
43
|
+
return this.followUp.length > 0;
|
|
44
|
+
}
|
|
45
|
+
steeringDepth() {
|
|
46
|
+
return this.steering.length;
|
|
47
|
+
}
|
|
48
|
+
followUpDepth() {
|
|
49
|
+
return this.followUp.length;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=session-message-queue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-message-queue.js","sourceRoot":"","sources":["../../src/zhin-agent/session-message-queue.ts"],"names":[],"mappings":"AAGA,SAAS,iBAAiB,CAAC,KAAoC;IAC7D,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAChD,CAAC;AAED,4EAA4E;AAC5E,MAAM,OAAO,mBAAmB;IAKnB;IACA;IALH,QAAQ,GAAmB,EAAE,CAAC;IAC9B,QAAQ,GAAmB,EAAE,CAAC;IAEtC,YACW,YAAuB,EACvB,YAAuB;QADvB,iBAAY,GAAZ,YAAY,CAAW;QACvB,iBAAY,GAAZ,YAAY,CAAW;IAC/B,CAAC;IAEJ,YAAY,CAAC,KAAoC;QAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,YAAY,CAAC,KAAoC;QAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,aAAa;QACX,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAC1C,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpC,CAAC;IAED,aAAa;QACX,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAC1C,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpC,CAAC;IAED,aAAa;QACX,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,aAAa;QACX,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAClC,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC9B,CAAC;CACF"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { ToolContext } from '@zhin.js/core';
|
|
2
|
+
import type { ZhinAgentPrivate } from './zhin-agent-private.js';
|
|
3
|
+
export declare function listSessionTreeForContext(host: ZhinAgentPrivate, context: ToolContext): Promise<string>;
|
|
4
|
+
export declare function jumpSessionTreeForContext(host: ZhinAgentPrivate, context: ToolContext, index: number): Promise<string>;
|
|
5
|
+
//# sourceMappingURL=session-tree-commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-tree-commands.d.ts","sourceRoot":"","sources":["../../src/zhin-agent/session-tree-commands.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAShE,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAED,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC,CAgBjB"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { resolveIMSessionIdFromToolContext } from '@zhin.js/ai';
|
|
2
|
+
import { beginTurnSession } from './session-io.js';
|
|
3
|
+
function formatBranchList(points) {
|
|
4
|
+
if (points.length === 0)
|
|
5
|
+
return '当前会话无 user 分支点';
|
|
6
|
+
return points
|
|
7
|
+
.map(p => `${p.index}. ${p.preview}`)
|
|
8
|
+
.join('\n');
|
|
9
|
+
}
|
|
10
|
+
export async function listSessionTreeForContext(host, context) {
|
|
11
|
+
const sessionKey = resolveIMSessionIdFromToolContext({
|
|
12
|
+
platform: context.platform,
|
|
13
|
+
botId: context.botId,
|
|
14
|
+
scope: context.scope,
|
|
15
|
+
sceneId: context.sceneId,
|
|
16
|
+
senderId: context.senderId,
|
|
17
|
+
});
|
|
18
|
+
const deps = {
|
|
19
|
+
imSessionStore: host.imSessionStore,
|
|
20
|
+
agentSessionStore: host.agentSessionStore,
|
|
21
|
+
contextRepository: host.contextRepository,
|
|
22
|
+
};
|
|
23
|
+
const { sessionId } = await beginTurnSession(deps, sessionKey, context);
|
|
24
|
+
const points = await host.contextRepository.listBranchPoints(sessionId);
|
|
25
|
+
return `🌳 会话分支点(/tree N 跳转,/fork N 从该点继续):\n${formatBranchList(points)}`;
|
|
26
|
+
}
|
|
27
|
+
export async function jumpSessionTreeForContext(host, context, index) {
|
|
28
|
+
const sessionKey = resolveIMSessionIdFromToolContext({
|
|
29
|
+
platform: context.platform,
|
|
30
|
+
botId: context.botId,
|
|
31
|
+
scope: context.scope,
|
|
32
|
+
sceneId: context.sceneId,
|
|
33
|
+
senderId: context.senderId,
|
|
34
|
+
});
|
|
35
|
+
const deps = {
|
|
36
|
+
imSessionStore: host.imSessionStore,
|
|
37
|
+
agentSessionStore: host.agentSessionStore,
|
|
38
|
+
contextRepository: host.contextRepository,
|
|
39
|
+
};
|
|
40
|
+
const { sessionId } = await beginTurnSession(deps, sessionKey, context);
|
|
41
|
+
const result = await host.contextRepository.jumpToBranchIndex(sessionId, index);
|
|
42
|
+
return result.ok ? `✅ ${result.message}` : `ℹ️ ${result.message}`;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=session-tree-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-tree-commands.js","sourceRoot":"","sources":["../../src/zhin-agent/session-tree-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;AAGhE,OAAO,EAAE,gBAAgB,EAAsB,MAAM,iBAAiB,CAAC;AAGvE,SAAS,gBAAgB,CAAC,MAA4B;IACpD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,gBAAgB,CAAC;IACjD,OAAO,MAAM;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;SACpC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,IAAsB,EACtB,OAAoB;IAEpB,MAAM,UAAU,GAAG,iCAAiC,CAAC;QACnD,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC,CAAC;IACH,MAAM,IAAI,GAAkB;QAC1B,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;QACzC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;KAC1C,CAAC;IACF,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACxE,OAAO,wCAAwC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;AAC5E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,IAAsB,EACtB,OAAoB,EACpB,KAAa;IAEb,MAAM,UAAU,GAAG,iCAAiC,CAAC;QACnD,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC,CAAC;IACH,MAAM,IAAI,GAAkB;QAC1B,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;QACzC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;KAC1C,CAAC;IACF,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAChF,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;AACpE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-calls-user-format.d.ts","sourceRoot":"","sources":["../../src/zhin-agent/tool-calls-user-format.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB;
|
|
1
|
+
{"version":3,"file":"tool-calls-user-format.d.ts","sourceRoot":"","sources":["../../src/zhin-agent/tool-calls-user-format.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB;AA2ED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG,MAAM,CA6C1E;AAED,2EAA2E;AAC3E,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAS/D"}
|
|
@@ -36,6 +36,9 @@ function formatRunDeferredTaskResult(result) {
|
|
|
36
36
|
const raw = asString(result);
|
|
37
37
|
const parsed = parseRunDeferredPayload(raw);
|
|
38
38
|
if (parsed) {
|
|
39
|
+
if (parsed.status === 'delegated') {
|
|
40
|
+
return undefined;
|
|
41
|
+
}
|
|
39
42
|
if (parsed.status === 'error') {
|
|
40
43
|
return parsed.error || '子任务执行失败。';
|
|
41
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-calls-user-format.js","sourceRoot":"","sources":["../../src/zhin-agent/tool-calls-user-format.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool-calls-user-format.js","sourceRoot":"","sources":["../../src/zhin-agent/tool-calls-user-format.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-orchestration.d.ts","sourceRoot":"","sources":["../../src/zhin-agent/tool-orchestration.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAK5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-orchestration.d.ts","sourceRoot":"","sources":["../../src/zhin-agent/tool-orchestration.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAK5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAGhE,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,gBAAgB,EACvB,QAAQ,EAAE,SAAS,EAAE,EACrB,OAAO,EAAE,WAAW,GACnB;IAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAiBhD;AAED,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,gBAAgB,EACvB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,SAAS,EAAE,GACpB,OAAO,CAAC,MAAM,CAAC,CA8EjB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { randomUUID } from 'node:crypto';
|
|
2
|
-
import { formatCompact, Logger } from '@zhin.js/logger';
|
|
2
|
+
import { formatCompact, Logger, truncatePreview } from '@zhin.js/logger';
|
|
3
3
|
import { notifySubagentGoal, resolveSubagentDisplayLabel } from '../subagent-goal-notify.js';
|
|
4
4
|
import { resolveIMSessionIdFromToolContext } from '@zhin.js/ai';
|
|
5
5
|
import { buildOrchestratorAgentTools } from './tool-search-orchestrator.js';
|
|
@@ -23,10 +23,12 @@ export function resolveAgentToolsForTurn(agent, allTools, context) {
|
|
|
23
23
|
return { tools: built.orchestratorTools, deferredStats: built.domainStats };
|
|
24
24
|
}
|
|
25
25
|
export async function runDeferredWorker(agent, goal, toolQuery, context, allTools) {
|
|
26
|
+
const taskId = randomUUID().slice(0, 8);
|
|
27
|
+
const label = resolveSubagentDisplayLabel(undefined, goal);
|
|
26
28
|
await notifySubagentGoal(context, {
|
|
27
|
-
taskId
|
|
29
|
+
taskId,
|
|
28
30
|
kind: 'deferred',
|
|
29
|
-
label
|
|
31
|
+
label,
|
|
30
32
|
});
|
|
31
33
|
const allByName = new Map(allTools.map(t => [t.name, t]));
|
|
32
34
|
const workerBase = [];
|
|
@@ -35,7 +37,7 @@ export async function runDeferredWorker(agent, goal, toolQuery, context, allTool
|
|
|
35
37
|
if (t)
|
|
36
38
|
workerBase.push(t);
|
|
37
39
|
}
|
|
38
|
-
const
|
|
40
|
+
const runOptions = {
|
|
39
41
|
goal,
|
|
40
42
|
toolQuery,
|
|
41
43
|
deferredCatalog: agent.deferredCatalog,
|
|
@@ -63,6 +65,7 @@ export async function runDeferredWorker(agent, goal, toolQuery, context, allTool
|
|
|
63
65
|
status: event.status,
|
|
64
66
|
iterations: event.iterations,
|
|
65
67
|
error: event.error,
|
|
68
|
+
taskId,
|
|
66
69
|
});
|
|
67
70
|
if (event.phase === 'start') {
|
|
68
71
|
agent.emitter.emit('ai.deferred.start', payload);
|
|
@@ -71,7 +74,23 @@ export async function runDeferredWorker(agent, goal, toolQuery, context, allTool
|
|
|
71
74
|
agent.emitter.emit('ai.deferred.finish', payload);
|
|
72
75
|
}
|
|
73
76
|
},
|
|
74
|
-
}
|
|
75
|
-
|
|
77
|
+
};
|
|
78
|
+
try {
|
|
79
|
+
const result = await agent.deferredWorkerRunner.runSync(runOptions);
|
|
80
|
+
return result.summary;
|
|
81
|
+
}
|
|
82
|
+
catch (err) {
|
|
83
|
+
const errorMsg = err instanceof Error ? err.message : String(err);
|
|
84
|
+
logger.error(formatCompact({
|
|
85
|
+
deferred: 'worker_failed',
|
|
86
|
+
task_id: taskId,
|
|
87
|
+
error: truncatePreview(errorMsg, 200),
|
|
88
|
+
}));
|
|
89
|
+
return JSON.stringify({
|
|
90
|
+
status: 'error',
|
|
91
|
+
task_id: taskId,
|
|
92
|
+
error: errorMsg,
|
|
93
|
+
});
|
|
94
|
+
}
|
|
76
95
|
}
|
|
77
96
|
//# sourceMappingURL=tool-orchestration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-orchestration.js","sourceRoot":"","sources":["../../src/zhin-agent/tool-orchestration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-orchestration.js","sourceRoot":"","sources":["../../src/zhin-agent/tool-orchestration.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { type AgentTool } from '@zhin.js/ai';
|
|
|
2
2
|
import type { Tool, ToolContext } from '../orchestrator/types.js';
|
|
3
3
|
import type { SkillRegistry } from '../orchestrator/skill-registry.js';
|
|
4
4
|
import type { ZhinAgentConfig } from './config.js';
|
|
5
|
-
import type {
|
|
5
|
+
import type { ImTranscriptStore, MemoryImTranscriptStore } from '@zhin.js/ai';
|
|
6
6
|
import type { UserProfileStore } from '../user-profile.js';
|
|
7
7
|
import { type PreExecuteResult } from './pre-exec.js';
|
|
8
8
|
export interface CollectRuntimeToolsOptions {
|
|
@@ -14,7 +14,7 @@ export interface CollectRuntimeToolsOptions {
|
|
|
14
14
|
externalRegistered: Map<string, AgentTool>;
|
|
15
15
|
sessionId: string;
|
|
16
16
|
userId: string;
|
|
17
|
-
|
|
17
|
+
imTranscriptStore: ImTranscriptStore | MemoryImTranscriptStore;
|
|
18
18
|
userProfiles: UserProfileStore;
|
|
19
19
|
/** MCP tools from connected servers (merged after skill/tool selection). */
|
|
20
20
|
mcpTools?: AgentTool[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-runtime.d.ts","sourceRoot":"","sources":["../../src/zhin-agent/tool-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAEjE,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAMnD,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"tool-runtime.d.ts","sourceRoot":"","sources":["../../src/zhin-agent/tool-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAEjE,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAMnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EAAyB,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAM7E,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,WAAW,CAAC;IACrB,aAAa,EAAE,IAAI,EAAE,CAAC;IACtB,MAAM,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC;IAClC,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;IACpC,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,iBAAiB,GAAG,uBAAuB,CAAC;IAC/D,YAAY,EAAE,gBAAgB,CAAC;IAC/B,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC;CACxB;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,0BAA0B,GAAG,SAAS,EAAE,CAqCpF;AAED,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,YAAY,EAAE,gBAAgB,CAAC;IAC/B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,IAAI,EAAE,MAAM,GAAG,oBAAoB,GAAG,OAAO,CAAC;CAC/C;AAED,wBAAsB,WAAW,CAC/B,KAAK,EAAE,SAAS,EAAE,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,WAAW,CAAC,CAWtB;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAOnF"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { isReservedToolName } from '@zhin.js/ai';
|
|
2
2
|
import { Logger } from '@zhin.js/core';
|
|
3
3
|
import { KEYWORD_TRIGGERS } from './config.js';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import { createImTranscriptHistoryTool, createUserProfileTool, } from './builtin-tools.js';
|
|
5
|
+
import { buildImTranscriptQuery } from './session-io.js';
|
|
6
6
|
import { runPreExecutableTools } from './pre-exec.js';
|
|
7
7
|
import { sharedToolSelection } from '../orchestrator/tool-selection.js';
|
|
8
8
|
import { RESERVED_TOOL_NAMES, RESERVED_TOOL_NAME_PREFIXES } from '../reserved-tools.js';
|
|
@@ -20,8 +20,8 @@ export function collectRuntimeTools(options) {
|
|
|
20
20
|
tools.push(tool);
|
|
21
21
|
names.add(tool.name);
|
|
22
22
|
};
|
|
23
|
-
if (KEYWORD_TRIGGERS.chatHistory.test(options.content)
|
|
24
|
-
add(
|
|
23
|
+
if (KEYWORD_TRIGGERS.chatHistory.test(options.content)) {
|
|
24
|
+
add(createImTranscriptHistoryTool(options.imTranscriptStore, buildImTranscriptQuery(options.context)));
|
|
25
25
|
}
|
|
26
26
|
if (KEYWORD_TRIGGERS.userProfile.test(options.content)) {
|
|
27
27
|
add(createUserProfileTool(options.userId, options.userProfiles));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-runtime.js","sourceRoot":"","sources":["../../src/zhin-agent/tool-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAkB,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAIvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"tool-runtime.js","sourceRoot":"","sources":["../../src/zhin-agent/tool-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-search-orchestrator.d.ts","sourceRoot":"","sources":["../../src/zhin-agent/tool-search-orchestrator.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-search-orchestrator.d.ts","sourceRoot":"","sources":["../../src/zhin-agent/tool-search-orchestrator.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAS7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAInD,uDAAuD;AACvD,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAczE;AASD,wBAAgB,uCAAuC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAyB5E;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,EAAE,SAAS,EAAE,CAAC;IACtB,MAAM,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC;IAClC,OAAO,EAAE,WAAW,CAAC;IACrB,kBAAkB,EAAE,MAAM,SAAS,EAAE,CAAC;IACtC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE,iDAAiD;IACjD,eAAe,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;CAC1C;AAED,MAAM,WAAW,4BAA4B;IAC3C,iBAAiB,EAAE,SAAS,EAAE,CAAC;IAC/B,QAAQ,EAAE,SAAS,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,4BAA4B,GAAG,4BAA4B,CAqE9G"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { createRunDeferredTaskTool } from '../builtin/run-deferred-task-tool.js';
|
|
2
2
|
import { createSpawnTaskTool } from '../builtin/spawn-task-tool.js';
|
|
3
|
+
import { createOrchestrationTools, ORCHESTRATION_TOOL_NAMES, } from '../builtin/orchestration-tools.js';
|
|
3
4
|
import { createToolSearchTool } from '../builtin/tool-search-tool.js';
|
|
4
5
|
import { normalizeTool } from '../orchestrator/tool-selection.js';
|
|
5
6
|
import { resolveDeferredTaskToolTimeout } from './config.js';
|
|
@@ -75,6 +76,18 @@ export function buildOrchestratorAgentTools(params) {
|
|
|
75
76
|
&& params.config.orchestratorTools.includes('spawn_task')) {
|
|
76
77
|
byName.set('spawn_task', normalizeTool(createSpawnTaskTool(context, params.subagentManager), context));
|
|
77
78
|
}
|
|
79
|
+
for (const tool of createOrchestrationTools(context)) {
|
|
80
|
+
if (params.config.orchestratorTools.includes(tool.name)) {
|
|
81
|
+
byName.set(tool.name, normalizeTool(tool, context));
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
for (const name of ORCHESTRATION_TOOL_NAMES) {
|
|
85
|
+
if (params.config.orchestratorTools.includes(name) && !byName.has(name)) {
|
|
86
|
+
const found = createOrchestrationTools(context).find((t) => t.name === name);
|
|
87
|
+
if (found)
|
|
88
|
+
byName.set(name, normalizeTool(found, context));
|
|
89
|
+
}
|
|
90
|
+
}
|
|
78
91
|
const orchestratorTools = [];
|
|
79
92
|
for (const name of config.orchestratorTools) {
|
|
80
93
|
let tool = byName.get(name);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-search-orchestrator.js","sourceRoot":"","sources":["../../src/zhin-agent/tool-search-orchestrator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tool-search-orchestrator.js","sourceRoot":"","sources":["../../src/zhin-agent/tool-search-orchestrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { TurnTracker } from './turn-tracker.js';
|
|
2
|
+
export interface TurnContextStore {
|
|
3
|
+
turnId: string;
|
|
4
|
+
tracker: TurnTracker;
|
|
5
|
+
}
|
|
6
|
+
export declare function runInTurnContext<T>(turnId: string, tracker: TurnTracker, fn: () => Promise<T>): Promise<T>;
|
|
7
|
+
export declare function getActiveTurnContext(): TurnContextStore | undefined;
|
|
8
|
+
export declare function getActiveTurnTracker(): TurnTracker | undefined;
|
|
9
|
+
//# sourceMappingURL=turn-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"turn-context.d.ts","sourceRoot":"","sources":["../../src/zhin-agent/turn-context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,WAAW,CAAC;CACtB;AAID,wBAAgB,gBAAgB,CAAC,CAAC,EAChC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,WAAW,EACpB,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED,wBAAgB,oBAAoB,IAAI,gBAAgB,GAAG,SAAS,CAEnE;AAED,wBAAgB,oBAAoB,IAAI,WAAW,GAAG,SAAS,CAE9D"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
2
|
+
const turnContextStorage = new AsyncLocalStorage();
|
|
3
|
+
export function runInTurnContext(turnId, tracker, fn) {
|
|
4
|
+
return turnContextStorage.run({ turnId, tracker }, fn);
|
|
5
|
+
}
|
|
6
|
+
export function getActiveTurnContext() {
|
|
7
|
+
return turnContextStorage.getStore();
|
|
8
|
+
}
|
|
9
|
+
export function getActiveTurnTracker() {
|
|
10
|
+
return turnContextStorage.getStore()?.tracker;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=turn-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"turn-context.js","sourceRoot":"","sources":["../../src/zhin-agent/turn-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAQrD,MAAM,kBAAkB,GAAG,IAAI,iBAAiB,EAAoB,CAAC;AAErE,MAAM,UAAU,gBAAgB,CAC9B,MAAc,EACd,OAAoB,EACpB,EAAoB;IAEpB,OAAO,kBAAkB,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,OAAO,kBAAkB,CAAC,QAAQ,EAAE,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,OAAO,kBAAkB,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC;AAChD,CAAC"}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import type { ContentPart } from '@zhin.js/ai';
|
|
2
2
|
import type { ZhinAgentPrivate, OnChunkCallback, OutputElement, Tool, ToolContext } from './zhin-agent-private.js';
|
|
3
|
-
export
|
|
3
|
+
export interface ProcessTextTurnOptions {
|
|
4
|
+
prebuiltMessages?: import('@zhin.js/ai').AgentMessage[];
|
|
5
|
+
/** Deferred worker 完成后的内部自动续聊 turn(跳过速率限制、不重置续聊深度) */
|
|
6
|
+
deferredAutoContinue?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare function processTextTurn(host: ZhinAgentPrivate, content: string, context: ToolContext, externalTools?: Tool[], onChunk?: OnChunkCallback, extras?: ProcessTextTurnOptions): Promise<OutputElement[]>;
|
|
9
|
+
/** @deprecated 仅保留类型引用;多模态 turn 已统一 agentLoop */
|
|
4
10
|
export declare function processMultimodalTurn(host: ZhinAgentPrivate, parts: ContentPart[], context: ToolContext, onChunk?: OnChunkCallback): Promise<OutputElement[]>;
|
|
5
11
|
//# sourceMappingURL=turn-pipeline.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turn-pipeline.d.ts","sourceRoot":"","sources":["../../src/zhin-agent/turn-pipeline.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"turn-pipeline.d.ts","sourceRoot":"","sources":["../../src/zhin-agent/turn-pipeline.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AA8B/C,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,IAAI,EACJ,WAAW,EACZ,MAAM,yBAAyB,CAAC;AAKjC,MAAM,WAAW,sBAAsB;IACrC,gBAAgB,CAAC,EAAE,OAAO,aAAa,EAAE,YAAY,EAAE,CAAC;IACxD,sDAAsD;IACtD,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAqBD,wBAAsB,eAAe,CACnC,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,WAAW,EACpB,aAAa,GAAE,IAAI,EAAO,EAC1B,OAAO,CAAC,EAAE,eAAe,EACzB,MAAM,CAAC,EAAE,sBAAsB,GAC9B,OAAO,CAAC,aAAa,EAAE,CAAC,CAsM1B;AAED,iDAAiD;AAEjD,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,WAAW,EAAE,EACpB,OAAO,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,aAAa,EAAE,CAAC,CA2H1B"}
|