@downcity/agent 1.1.12 → 1.1.14
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/bin/{runtime → core}/AgentContextTypes.d.ts +6 -6
- package/bin/core/AgentContextTypes.d.ts.map +1 -0
- package/bin/{runtime → core}/AgentContextTypes.js +2 -2
- package/bin/core/AgentContextTypes.js.map +1 -0
- package/bin/core/AgentCore.d.ts +87 -0
- package/bin/core/AgentCore.d.ts.map +1 -0
- package/bin/core/AgentCore.js +467 -0
- package/bin/core/AgentCore.js.map +1 -0
- package/bin/{runtime/AgentRuntimeTypes.d.ts → core/AgentCoreTypes.d.ts} +10 -10
- package/bin/core/AgentCoreTypes.d.ts.map +1 -0
- package/bin/core/AgentCoreTypes.js +10 -0
- package/bin/core/AgentCoreTypes.js.map +1 -0
- package/bin/host/runtime/PluginRuntime.d.ts +1 -1
- package/bin/host/runtime/PluginRuntime.d.ts.map +1 -1
- package/bin/index.d.ts +8 -10
- package/bin/index.d.ts.map +1 -1
- package/bin/index.js +4 -7
- package/bin/index.js.map +1 -1
- package/bin/plugin/builtins/asr/InboundAugment.d.ts +1 -1
- package/bin/plugin/builtins/asr/InboundAugment.d.ts.map +1 -1
- package/bin/plugin/builtins/auth/runtime/AuthorizationConfig.d.ts +1 -1
- package/bin/plugin/builtins/auth/runtime/AuthorizationConfig.d.ts.map +1 -1
- package/bin/plugin/builtins/auth/runtime/AuthorizationStore.d.ts +1 -1
- package/bin/plugin/builtins/auth/runtime/AuthorizationStore.d.ts.map +1 -1
- package/bin/plugin/builtins/voice/InboundAugment.d.ts +1 -1
- package/bin/plugin/builtins/voice/InboundAugment.d.ts.map +1 -1
- package/bin/plugin/builtins/workboard/runtime/Collector.d.ts +1 -1
- package/bin/plugin/builtins/workboard/runtime/Collector.d.ts.map +1 -1
- package/bin/plugin/builtins/workboard/runtime/Collector.js +1 -1
- package/bin/plugin/builtins/workboard/runtime/Collector.js.map +1 -1
- package/bin/plugin/builtins/workboard/runtime/Normalizer.d.ts +1 -1
- package/bin/plugin/builtins/workboard/runtime/Normalizer.d.ts.map +1 -1
- package/bin/plugin/builtins/workboard/runtime/Store.d.ts +1 -1
- package/bin/plugin/builtins/workboard/runtime/Store.d.ts.map +1 -1
- package/bin/plugin/core/Activation.d.ts +2 -2
- package/bin/plugin/core/Activation.d.ts.map +1 -1
- package/bin/plugin/core/HookRegistry.d.ts +1 -1
- package/bin/plugin/core/HookRegistry.d.ts.map +1 -1
- package/bin/plugin/core/HttpRoutes.d.ts +1 -1
- package/bin/plugin/core/HttpRoutes.d.ts.map +1 -1
- package/bin/plugin/core/LocalExecution.d.ts.map +1 -1
- package/bin/plugin/core/LocalExecution.js +18 -20
- package/bin/plugin/core/LocalExecution.js.map +1 -1
- package/bin/plugin/core/PluginRegistry.d.ts +1 -1
- package/bin/plugin/core/PluginRegistry.d.ts.map +1 -1
- package/bin/plugin/types/Plugin.d.ts +1 -1
- package/bin/plugin/types/Plugin.d.ts.map +1 -1
- package/bin/sandbox/SandboxConfigResolver.d.ts +1 -1
- package/bin/sandbox/SandboxConfigResolver.d.ts.map +1 -1
- package/bin/sandbox/SandboxRunner.d.ts +1 -1
- package/bin/sandbox/SandboxRunner.d.ts.map +1 -1
- package/bin/sdk/Agent.d.ts +27 -25
- package/bin/sdk/Agent.d.ts.map +1 -1
- package/bin/sdk/Agent.js +86 -365
- package/bin/sdk/Agent.js.map +1 -1
- package/bin/sdk/AgentSdkTypes.d.ts +138 -0
- package/bin/sdk/AgentSdkTypes.d.ts.map +1 -1
- package/bin/sdk/HttpServer.d.ts +9 -19
- package/bin/sdk/HttpServer.d.ts.map +1 -1
- package/bin/sdk/HttpServer.js +26 -156
- package/bin/sdk/HttpServer.js.map +1 -1
- package/bin/sdk/RpcServer.d.ts +9 -10
- package/bin/sdk/RpcServer.d.ts.map +1 -1
- package/bin/sdk/RpcServer.js +22 -178
- package/bin/sdk/RpcServer.js.map +1 -1
- package/bin/sdk/Session.d.ts +8 -8
- package/bin/sdk/Session.d.ts.map +1 -1
- package/bin/sdk/Session.js +48 -54
- package/bin/sdk/Session.js.map +1 -1
- package/bin/sdk/SessionMetadata.d.ts +3 -3
- package/bin/sdk/SessionMetadata.d.ts.map +1 -1
- package/bin/sdk/SessionMetadata.js +5 -5
- package/bin/sdk/SessionMetadata.js.map +1 -1
- package/bin/sdk/SessionPersistence.d.ts +6 -6
- package/bin/sdk/SessionPersistence.d.ts.map +1 -1
- package/bin/sdk/SessionPersistence.js +7 -7
- package/bin/sdk/SessionPersistence.js.map +1 -1
- package/bin/sdk/SessionServicePort.d.ts +6 -6
- package/bin/sdk/SessionServicePort.d.ts.map +1 -1
- package/bin/sdk/SessionServicePort.js +9 -9
- package/bin/sdk/SessionServicePort.js.map +1 -1
- package/bin/sdk/{SdkSessionSystemComposer.d.ts → SessionSystemBuilder.d.ts} +7 -7
- package/bin/sdk/SessionSystemBuilder.d.ts.map +1 -0
- package/bin/sdk/{SdkSessionSystemComposer.js → SessionSystemBuilder.js} +14 -14
- package/bin/sdk/SessionSystemBuilder.js.map +1 -0
- package/bin/server/http/Server.d.ts +10 -1
- package/bin/server/http/Server.d.ts.map +1 -1
- package/bin/server/http/Server.js +41 -15
- package/bin/server/http/Server.js.map +1 -1
- package/bin/server/http/control/AuthControlService.d.ts +1 -1
- package/bin/server/http/control/AuthControlService.d.ts.map +1 -1
- package/bin/server/http/control/ControlAuthorizationRoutes.d.ts +1 -1
- package/bin/server/http/control/ControlAuthorizationRoutes.d.ts.map +1 -1
- package/bin/server/http/control/ControlRouter.d.ts +18 -2
- package/bin/server/http/control/ControlRouter.d.ts.map +1 -1
- package/bin/server/http/control/ControlRouter.js +10 -8
- package/bin/server/http/control/ControlRouter.js.map +1 -1
- package/bin/server/http/control/ExecuteBySession.d.ts +2 -2
- package/bin/server/http/control/ExecuteBySession.d.ts.map +1 -1
- package/bin/server/http/control/OverviewRoutes.d.ts.map +1 -1
- package/bin/server/http/control/OverviewRoutes.js +6 -2
- package/bin/server/http/control/OverviewRoutes.js.map +1 -1
- package/bin/server/http/control/SessionSummaryStore.d.ts +1 -1
- package/bin/server/http/control/SessionSummaryStore.d.ts.map +1 -1
- package/bin/server/http/control/types/ControlRoutes.d.ts +2 -2
- package/bin/server/http/control/types/ControlRoutes.d.ts.map +1 -1
- package/bin/server/http/execute/execute.d.ts +13 -2
- package/bin/server/http/execute/execute.d.ts.map +1 -1
- package/bin/server/http/execute/execute.js +73 -71
- package/bin/server/http/execute/execute.js.map +1 -1
- package/bin/server/http/plugins/plugins.d.ts +13 -2
- package/bin/server/http/plugins/plugins.d.ts.map +1 -1
- package/bin/server/http/plugins/plugins.js +42 -40
- package/bin/server/http/plugins/plugins.js.map +1 -1
- package/bin/server/http/services/services.d.ts +12 -8
- package/bin/server/http/services/services.d.ts.map +1 -1
- package/bin/server/http/services/services.js +57 -64
- package/bin/server/http/services/services.js.map +1 -1
- package/bin/server/http/static/static.d.ts +13 -2
- package/bin/server/http/static/static.d.ts.map +1 -1
- package/bin/server/http/static/static.js +81 -79
- package/bin/server/http/static/static.js.map +1 -1
- package/bin/server/rpc/Server.d.ts +5 -3
- package/bin/server/rpc/Server.d.ts.map +1 -1
- package/bin/server/rpc/Server.js +22 -12
- package/bin/server/rpc/Server.js.map +1 -1
- package/bin/service/builtins/BaseService.d.ts +2 -2
- package/bin/service/builtins/BaseService.d.ts.map +1 -1
- package/bin/service/builtins/chat/Action.d.ts +1 -1
- package/bin/service/builtins/chat/Action.d.ts.map +1 -1
- package/bin/service/builtins/chat/ChatService.d.ts +2 -2
- package/bin/service/builtins/chat/ChatService.d.ts.map +1 -1
- package/bin/service/builtins/chat/ChatServiceTypes.d.ts +1 -1
- package/bin/service/builtins/chat/ChatServiceTypes.d.ts.map +1 -1
- package/bin/service/builtins/chat/channels/BaseChatChannel.d.ts +1 -1
- package/bin/service/builtins/chat/channels/BaseChatChannel.d.ts.map +1 -1
- package/bin/service/builtins/chat/channels/BaseChatChannelQueue.d.ts +1 -1
- package/bin/service/builtins/chat/channels/BaseChatChannelQueue.d.ts.map +1 -1
- package/bin/service/builtins/chat/channels/BaseChatChannelSupport.d.ts +1 -1
- package/bin/service/builtins/chat/channels/BaseChatChannelSupport.d.ts.map +1 -1
- package/bin/service/builtins/chat/channels/feishu/Feishu.d.ts +1 -1
- package/bin/service/builtins/chat/channels/feishu/Feishu.d.ts.map +1 -1
- package/bin/service/builtins/chat/channels/feishu/FeishuMessageHandler.d.ts +1 -1
- package/bin/service/builtins/chat/channels/feishu/FeishuMessageHandler.d.ts.map +1 -1
- package/bin/service/builtins/chat/channels/feishu/FeishuPlatformClient.d.ts +1 -1
- package/bin/service/builtins/chat/channels/feishu/FeishuPlatformClient.d.ts.map +1 -1
- package/bin/service/builtins/chat/channels/qq/QQ.d.ts +1 -1
- package/bin/service/builtins/chat/channels/qq/QQ.d.ts.map +1 -1
- package/bin/service/builtins/chat/channels/qq/QQMessageHandler.d.ts +1 -1
- package/bin/service/builtins/chat/channels/qq/QQMessageHandler.d.ts.map +1 -1
- package/bin/service/builtins/chat/channels/qq/QQSupport.d.ts +1 -1
- package/bin/service/builtins/chat/channels/qq/QQSupport.d.ts.map +1 -1
- package/bin/service/builtins/chat/channels/telegram/Bot.d.ts +1 -1
- package/bin/service/builtins/chat/channels/telegram/Bot.d.ts.map +1 -1
- package/bin/service/builtins/chat/channels/telegram/TelegramMessageHandler.d.ts +1 -1
- package/bin/service/builtins/chat/channels/telegram/TelegramMessageHandler.d.ts.map +1 -1
- package/bin/service/builtins/chat/channels/telegram/TelegramPlatformClient.d.ts +1 -1
- package/bin/service/builtins/chat/channels/telegram/TelegramPlatformClient.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChannelContextStore.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChannelContextStore.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatActionExecution.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatActionExecution.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatActionInput.d.ts +3 -36
- package/bin/service/builtins/chat/runtime/ChatActionInput.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatActionInput.js +3 -118
- package/bin/service/builtins/chat/runtime/ChatActionInput.js.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatChannelActions.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatChannelActions.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatChannelConfig.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatChannelConfig.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatChannelCore.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatChannelCore.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatChannelLifecycle.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatChannelLifecycle.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatHistoryStore.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatHistoryStore.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatIngressStore.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatIngressStore.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatMetaStore.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatMetaStore.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatQueueReplyDispatch.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatQueueReplyDispatch.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatQueueSessionBridge.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatQueueSessionBridge.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatQueueStore.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatQueueStore.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatQueueWorker.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatQueueWorker.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatServiceActions.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatServiceActions.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatServiceActions.js +2 -109
- package/bin/service/builtins/chat/runtime/ChatServiceActions.js.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatServiceSystem.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatServiceSystem.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatSession.d.ts +27 -8
- package/bin/service/builtins/chat/runtime/ChatSession.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatSession.js +9 -4
- package/bin/service/builtins/chat/runtime/ChatSession.js.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatSessionDelete.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatSessionDelete.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ChatkeySend.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ChatkeySend.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/EnqueueDispatch.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/EnqueueDispatch.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/InboundAugment.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/InboundAugment.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/PluginDispatch.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/PluginDispatch.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/ReplyDispatch.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/ReplyDispatch.d.ts.map +1 -1
- package/bin/service/builtins/chat/runtime/SystemPrompt.d.ts +1 -1
- package/bin/service/builtins/chat/runtime/SystemPrompt.d.ts.map +1 -1
- package/bin/service/builtins/contact/Action.d.ts +2 -2
- package/bin/service/builtins/contact/Action.d.ts.map +1 -1
- package/bin/service/builtins/contact/Action.js +2 -58
- package/bin/service/builtins/contact/Action.js.map +1 -1
- package/bin/service/builtins/contact/ContactService.d.ts +1 -1
- package/bin/service/builtins/contact/ContactService.d.ts.map +1 -1
- package/bin/service/builtins/contact/runtime/ChatRuntime.d.ts +1 -1
- package/bin/service/builtins/contact/runtime/ChatRuntime.d.ts.map +1 -1
- package/bin/service/builtins/contact/runtime/ContactPayload.d.ts +0 -7
- package/bin/service/builtins/contact/runtime/ContactPayload.d.ts.map +1 -1
- package/bin/service/builtins/contact/runtime/ContactPayload.js +0 -9
- package/bin/service/builtins/contact/runtime/ContactPayload.js.map +1 -1
- package/bin/service/builtins/contact/runtime/RemoteClient.d.ts +1 -1
- package/bin/service/builtins/contact/runtime/RemoteClient.d.ts.map +1 -1
- package/bin/service/builtins/contact/runtime/RemoteClient.js +37 -19
- package/bin/service/builtins/contact/runtime/RemoteClient.js.map +1 -1
- package/bin/service/builtins/contact/runtime/ShareBundle.d.ts +1 -1
- package/bin/service/builtins/contact/runtime/ShareBundle.d.ts.map +1 -1
- package/bin/service/builtins/memory/Action.d.ts +1 -1
- package/bin/service/builtins/memory/Action.d.ts.map +1 -1
- package/bin/service/builtins/memory/MemoryService.d.ts +1 -1
- package/bin/service/builtins/memory/MemoryService.d.ts.map +1 -1
- package/bin/service/builtins/memory/MemoryService.js +0 -27
- package/bin/service/builtins/memory/MemoryService.js.map +1 -1
- package/bin/service/builtins/memory/runtime/Flush.d.ts +1 -1
- package/bin/service/builtins/memory/runtime/Flush.d.ts.map +1 -1
- package/bin/service/builtins/memory/runtime/Search.d.ts +1 -1
- package/bin/service/builtins/memory/runtime/Search.d.ts.map +1 -1
- package/bin/service/builtins/memory/runtime/Store.d.ts +1 -1
- package/bin/service/builtins/memory/runtime/Store.d.ts.map +1 -1
- package/bin/service/builtins/memory/runtime/SystemProvider.d.ts +1 -1
- package/bin/service/builtins/memory/runtime/SystemProvider.d.ts.map +1 -1
- package/bin/service/builtins/memory/runtime/Writer.d.ts +1 -1
- package/bin/service/builtins/memory/runtime/Writer.d.ts.map +1 -1
- package/bin/service/builtins/schedule/ScheduleService.d.ts +39 -0
- package/bin/service/builtins/schedule/ScheduleService.d.ts.map +1 -0
- package/bin/service/builtins/schedule/ScheduleService.js +106 -0
- package/bin/service/builtins/schedule/ScheduleService.js.map +1 -0
- package/bin/service/builtins/shell/ShellRuntimeTypes.d.ts +1 -1
- package/bin/service/builtins/shell/ShellRuntimeTypes.d.ts.map +1 -1
- package/bin/service/builtins/shell/ShellService.d.ts +2 -2
- package/bin/service/builtins/shell/ShellService.d.ts.map +1 -1
- package/bin/service/builtins/shell/runtime/ShellActionResponse.d.ts +1 -1
- package/bin/service/builtins/shell/runtime/ShellActionResponse.d.ts.map +1 -1
- package/bin/service/builtins/shell/runtime/ShellActionRuntime.d.ts +1 -1
- package/bin/service/builtins/shell/runtime/ShellActionRuntime.d.ts.map +1 -1
- package/bin/service/builtins/shell/runtime/ShellActionRuntimeSupport.d.ts +1 -1
- package/bin/service/builtins/shell/runtime/ShellActionRuntimeSupport.d.ts.map +1 -1
- package/bin/service/builtins/shell/runtime/ShellRuntimeEnvironment.d.ts +1 -1
- package/bin/service/builtins/shell/runtime/ShellRuntimeEnvironment.d.ts.map +1 -1
- package/bin/service/builtins/task/Action.d.ts +1 -1
- package/bin/service/builtins/task/Action.d.ts.map +1 -1
- package/bin/service/builtins/task/Scheduler.d.ts +1 -1
- package/bin/service/builtins/task/Scheduler.d.ts.map +1 -1
- package/bin/service/builtins/task/TaskService.d.ts +2 -2
- package/bin/service/builtins/task/TaskService.d.ts.map +1 -1
- package/bin/service/builtins/task/runtime/CronRuntime.d.ts +1 -1
- package/bin/service/builtins/task/runtime/CronRuntime.d.ts.map +1 -1
- package/bin/service/builtins/task/runtime/Runner.d.ts +2 -2
- package/bin/service/builtins/task/runtime/Runner.d.ts.map +1 -1
- package/bin/service/builtins/task/runtime/Runner.js +1 -1
- package/bin/service/builtins/task/runtime/TaskActionExecution.d.ts +1 -1
- package/bin/service/builtins/task/runtime/TaskActionExecution.d.ts.map +1 -1
- package/bin/service/builtins/task/runtime/TaskActionInput.d.ts +2 -31
- package/bin/service/builtins/task/runtime/TaskActionInput.d.ts.map +1 -1
- package/bin/service/builtins/task/runtime/TaskActionInput.js +2 -141
- package/bin/service/builtins/task/runtime/TaskActionInput.js.map +1 -1
- package/bin/service/builtins/task/runtime/TaskRunChatDispatch.d.ts +1 -1
- package/bin/service/builtins/task/runtime/TaskRunChatDispatch.d.ts.map +1 -1
- package/bin/service/builtins/task/runtime/TaskRunnerRound.d.ts +1 -1
- package/bin/service/builtins/task/runtime/TaskRunnerRound.d.ts.map +1 -1
- package/bin/service/builtins/task/runtime/TaskRunnerScript.d.ts +1 -1
- package/bin/service/builtins/task/runtime/TaskRunnerScript.d.ts.map +1 -1
- package/bin/service/builtins/task/runtime/TaskRunnerSession.d.ts +3 -3
- package/bin/service/builtins/task/runtime/TaskRunnerSession.d.ts.map +1 -1
- package/bin/service/builtins/task/runtime/TaskRunnerSession.js +4 -4
- package/bin/service/builtins/task/runtime/TaskRunnerSession.js.map +1 -1
- package/bin/service/builtins/task/runtime/TaskRunnerTypes.d.ts +1 -1
- package/bin/service/builtins/task/runtime/TaskServiceActions.d.ts +1 -1
- package/bin/service/builtins/task/runtime/TaskServiceActions.d.ts.map +1 -1
- package/bin/service/builtins/task/runtime/TaskServiceActions.js +2 -30
- package/bin/service/builtins/task/runtime/TaskServiceActions.js.map +1 -1
- package/bin/service/core/Manager.d.ts +0 -1
- package/bin/service/core/Manager.d.ts.map +1 -1
- package/bin/service/core/Manager.js +0 -1
- package/bin/service/core/Manager.js.map +1 -1
- package/bin/service/core/ServiceActionRunner.d.ts +1 -1
- package/bin/service/core/ServiceActionRunner.d.ts.map +1 -1
- package/bin/service/core/ServiceActionRunner.js +3 -1
- package/bin/service/core/ServiceActionRunner.js.map +1 -1
- package/bin/service/core/ServiceClassRegistry.d.ts +1 -1
- package/bin/service/core/ServiceClassRegistry.d.ts.map +1 -1
- package/bin/service/core/ServiceCommandRequest.d.ts +36 -0
- package/bin/service/core/ServiceCommandRequest.d.ts.map +1 -0
- package/bin/service/core/ServiceCommandRequest.js +53 -0
- package/bin/service/core/ServiceCommandRequest.js.map +1 -0
- package/bin/service/core/ServiceManager.d.ts +1 -1
- package/bin/service/core/ServiceManager.d.ts.map +1 -1
- package/bin/service/core/ServiceStateController.d.ts +20 -7
- package/bin/service/core/ServiceStateController.d.ts.map +1 -1
- package/bin/service/core/ServiceStateController.js +23 -20
- package/bin/service/core/ServiceStateController.js.map +1 -1
- package/bin/service/core/ServiceSystemProviders.d.ts +1 -1
- package/bin/service/core/ServiceSystemProviders.d.ts.map +1 -1
- package/bin/service/core/Services.d.ts +1 -1
- package/bin/service/core/Services.d.ts.map +1 -1
- package/bin/service/core/Services.js +2 -0
- package/bin/service/core/Services.js.map +1 -1
- package/bin/service/schedule/Executor.d.ts +1 -1
- package/bin/service/schedule/Executor.d.ts.map +1 -1
- package/bin/service/types/Service.d.ts +1 -23
- package/bin/service/types/Service.d.ts.map +1 -1
- package/bin/session/{Session.d.ts → Executor.d.ts} +54 -17
- package/bin/session/Executor.d.ts.map +1 -0
- package/bin/session/{Session.js → Executor.js} +60 -23
- package/bin/session/Executor.js.map +1 -0
- package/bin/session/composer/SessionComposer.d.ts +1 -1
- package/bin/session/composer/SessionComposer.js +1 -1
- package/bin/session/composer/compaction/SessionCompactionComposer.d.ts +2 -2
- package/bin/session/composer/execution/LocalSessionExecutionComposer.d.ts +1 -1
- package/bin/session/composer/execution/LocalSessionExecutionComposer.js +1 -1
- package/bin/session/composer/execution/SessionExecutionComposer.d.ts +1 -1
- package/bin/session/composer/history/SessionHistoryComposer.d.ts +1 -1
- package/bin/session/composer/system/SessionSystemComposer.d.ts +1 -1
- package/bin/session/composer/system/SessionSystemComposer.js +1 -1
- package/bin/session/composer/system/default/DefaultSessionSystemComposer.d.ts +1 -1
- package/bin/session/composer/system/default/DefaultSessionSystemComposer.d.ts.map +1 -1
- package/bin/session/composer/system/default/SystemDomain.d.ts +1 -1
- package/bin/session/composer/system/default/SystemDomain.d.ts.map +1 -1
- package/bin/session/executors/local/{LocalSessionCore.d.ts → Runner.d.ts} +10 -10
- package/bin/session/executors/local/Runner.d.ts.map +1 -0
- package/bin/session/executors/local/{LocalSessionCore.js → Runner.js} +11 -11
- package/bin/session/executors/local/Runner.js.map +1 -0
- package/bin/session/executors/local/SessionExecutionError.d.ts +1 -1
- package/bin/session/executors/local/SessionExecutionError.js +1 -1
- package/bin/session/executors/local/SessionLoopDecision.d.ts +3 -3
- package/bin/session/executors/local/SessionLoopDecision.js +3 -3
- package/bin/session/executors/local/SessionModelMessageState.d.ts +2 -2
- package/bin/session/executors/local/SessionModelMessageState.js +2 -2
- package/bin/session/executors/local/SessionSignals.d.ts +3 -3
- package/bin/session/executors/local/SessionSignals.js +3 -3
- package/bin/session/executors/local/SessionToolLoopRunner.d.ts +1 -1
- package/bin/session/executors/local/SessionToolLoopRunner.js +2 -2
- package/bin/session/executors/local/SessionToolLoopRunner.js.map +1 -1
- package/bin/session/tools/shell/ShellToolBridge.d.ts +1 -1
- package/bin/session/tools/shell/ShellToolBridge.d.ts.map +1 -1
- package/bin/session/types/SessionLoop.d.ts +1 -1
- package/bin/session/types/SessionLoop.js +1 -1
- package/bin/session/types/SessionRun.d.ts +2 -2
- package/bin/session/types/SessionRun.js +1 -1
- package/package.json +1 -1
- package/src/{runtime → core}/AgentContextTypes.ts +6 -7
- package/src/core/AgentCore.ts +527 -0
- package/src/{runtime/AgentRuntimeTypes.ts → core/AgentCoreTypes.ts} +9 -9
- package/src/host/runtime/PluginRuntime.ts +1 -1
- package/src/index.ts +26 -23
- package/src/plugin/builtins/asr/InboundAugment.ts +1 -1
- package/src/plugin/builtins/auth/runtime/AuthorizationConfig.ts +1 -1
- package/src/plugin/builtins/auth/runtime/AuthorizationStore.ts +1 -1
- package/src/plugin/builtins/voice/InboundAugment.ts +1 -1
- package/src/plugin/builtins/workboard/runtime/Collector.ts +2 -2
- package/src/plugin/builtins/workboard/runtime/Normalizer.ts +1 -1
- package/src/plugin/builtins/workboard/runtime/Store.ts +1 -1
- package/src/plugin/core/Activation.ts +2 -2
- package/src/plugin/core/HookRegistry.ts +1 -1
- package/src/plugin/core/HttpRoutes.ts +1 -1
- package/src/plugin/core/LocalExecution.ts +21 -20
- package/src/plugin/core/PluginRegistry.ts +1 -1
- package/src/plugin/types/Plugin.ts +1 -1
- package/src/sandbox/SandboxConfigResolver.ts +1 -1
- package/src/sandbox/SandboxRunner.ts +1 -1
- package/src/sdk/Agent.ts +101 -395
- package/src/sdk/AgentSdkTypes.ts +158 -0
- package/src/sdk/HttpServer.ts +27 -192
- package/src/sdk/RpcServer.ts +24 -211
- package/src/sdk/Session.ts +64 -68
- package/src/sdk/SessionMetadata.ts +5 -5
- package/src/sdk/SessionPersistence.ts +13 -13
- package/src/sdk/SessionServicePort.ts +14 -14
- package/src/sdk/{SdkSessionSystemComposer.ts → SessionSystemBuilder.ts} +24 -24
- package/src/server/http/Server.ts +63 -18
- package/src/server/http/control/AuthControlService.ts +1 -1
- package/src/server/http/control/ControlAuthorizationRoutes.ts +1 -1
- package/src/server/http/control/ControlRouter.ts +27 -11
- package/src/server/http/control/ExecuteBySession.ts +2 -2
- package/src/server/http/control/OverviewRoutes.ts +6 -2
- package/src/server/http/control/SessionSummaryStore.ts +1 -1
- package/src/server/http/control/types/ControlRoutes.ts +2 -2
- package/src/server/http/execute/execute.ts +107 -91
- package/src/server/http/plugins/plugins.ts +60 -44
- package/src/server/http/services/services.ts +68 -64
- package/src/server/http/static/static.ts +95 -79
- package/src/server/rpc/Server.ts +26 -15
- package/src/service/builtins/BaseService.ts +2 -2
- package/src/service/builtins/chat/Action.ts +1 -1
- package/src/service/builtins/chat/ChatService.ts +2 -2
- package/src/service/builtins/chat/ChatServiceTypes.ts +1 -1
- package/src/service/builtins/chat/channels/BaseChatChannel.ts +1 -1
- package/src/service/builtins/chat/channels/BaseChatChannelQueue.ts +1 -1
- package/src/service/builtins/chat/channels/BaseChatChannelSupport.ts +1 -1
- package/src/service/builtins/chat/channels/feishu/Feishu.ts +1 -1
- package/src/service/builtins/chat/channels/feishu/FeishuMessageHandler.ts +1 -1
- package/src/service/builtins/chat/channels/feishu/FeishuPlatformClient.ts +1 -1
- package/src/service/builtins/chat/channels/qq/QQ.ts +1 -1
- package/src/service/builtins/chat/channels/qq/QQMessageHandler.ts +1 -1
- package/src/service/builtins/chat/channels/qq/QQSupport.ts +1 -1
- package/src/service/builtins/chat/channels/telegram/Bot.ts +1 -1
- package/src/service/builtins/chat/channels/telegram/TelegramMessageHandler.ts +1 -1
- package/src/service/builtins/chat/channels/telegram/TelegramPlatformClient.ts +1 -1
- package/src/service/builtins/chat/runtime/ChannelContextStore.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatActionExecution.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatActionInput.ts +2 -158
- package/src/service/builtins/chat/runtime/ChatChannelActions.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatChannelConfig.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatChannelCore.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatChannelLifecycle.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatHistoryStore.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatIngressStore.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatMetaStore.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatQueueReplyDispatch.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatQueueSessionBridge.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatQueueStore.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatQueueWorker.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatServiceActions.ts +1 -118
- package/src/service/builtins/chat/runtime/ChatServiceSystem.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatSession.ts +37 -13
- package/src/service/builtins/chat/runtime/ChatSessionDelete.ts +1 -1
- package/src/service/builtins/chat/runtime/ChatkeySend.ts +1 -1
- package/src/service/builtins/chat/runtime/EnqueueDispatch.ts +1 -1
- package/src/service/builtins/chat/runtime/InboundAugment.ts +1 -1
- package/src/service/builtins/chat/runtime/PluginDispatch.ts +1 -1
- package/src/service/builtins/chat/runtime/ReplyDispatch.ts +1 -1
- package/src/service/builtins/chat/runtime/SystemPrompt.ts +1 -1
- package/src/service/builtins/contact/Action.ts +2 -59
- package/src/service/builtins/contact/ContactService.ts +2 -2
- package/src/service/builtins/contact/runtime/ChatRuntime.ts +1 -1
- package/src/service/builtins/contact/runtime/ContactPayload.ts +0 -12
- package/src/service/builtins/contact/runtime/RemoteClient.ts +40 -19
- package/src/service/builtins/contact/runtime/ShareBundle.ts +1 -1
- package/src/service/builtins/memory/Action.ts +1 -1
- package/src/service/builtins/memory/MemoryService.ts +1 -28
- package/src/service/builtins/memory/runtime/Flush.ts +1 -1
- package/src/service/builtins/memory/runtime/Search.ts +1 -1
- package/src/service/builtins/memory/runtime/Store.ts +1 -1
- package/src/service/builtins/memory/runtime/SystemProvider.ts +1 -1
- package/src/service/builtins/memory/runtime/Writer.ts +1 -1
- package/src/service/builtins/schedule/ScheduleService.ts +131 -0
- package/src/service/builtins/shell/ShellRuntimeTypes.ts +1 -1
- package/src/service/builtins/shell/ShellService.ts +2 -2
- package/src/service/builtins/shell/runtime/ShellActionResponse.ts +1 -1
- package/src/service/builtins/shell/runtime/ShellActionRuntime.ts +1 -1
- package/src/service/builtins/shell/runtime/ShellActionRuntimeSupport.ts +1 -1
- package/src/service/builtins/shell/runtime/ShellRuntimeEnvironment.ts +1 -1
- package/src/service/builtins/task/Action.ts +1 -1
- package/src/service/builtins/task/Scheduler.ts +1 -1
- package/src/service/builtins/task/TaskService.ts +2 -2
- package/src/service/builtins/task/runtime/CronRuntime.ts +1 -1
- package/src/service/builtins/task/runtime/Runner.ts +2 -2
- package/src/service/builtins/task/runtime/TaskActionExecution.ts +1 -1
- package/src/service/builtins/task/runtime/TaskActionInput.ts +3 -185
- package/src/service/builtins/task/runtime/TaskRunChatDispatch.ts +1 -1
- package/src/service/builtins/task/runtime/TaskRunnerRound.ts +1 -1
- package/src/service/builtins/task/runtime/TaskRunnerScript.ts +1 -1
- package/src/service/builtins/task/runtime/TaskRunnerSession.ts +5 -5
- package/src/service/builtins/task/runtime/TaskRunnerTypes.ts +1 -1
- package/src/service/builtins/task/runtime/TaskServiceActions.ts +1 -35
- package/src/service/core/Manager.ts +0 -1
- package/src/service/core/ServiceActionRunner.ts +4 -2
- package/src/service/core/ServiceClassRegistry.ts +1 -1
- package/src/service/core/ServiceCommandRequest.ts +93 -0
- package/src/service/core/ServiceManager.ts +0 -1
- package/src/service/core/ServiceStateController.ts +45 -20
- package/src/service/core/ServiceSystemProviders.ts +1 -1
- package/src/service/core/Services.ts +3 -1
- package/src/service/schedule/Executor.ts +1 -1
- package/src/service/types/Service.ts +1 -24
- package/src/session/{Session.ts → Executor.ts} +96 -26
- package/src/session/composer/SessionComposer.ts +1 -1
- package/src/session/composer/compaction/SessionCompactionComposer.ts +2 -2
- package/src/session/composer/execution/LocalSessionExecutionComposer.ts +1 -1
- package/src/session/composer/execution/SessionExecutionComposer.ts +1 -1
- package/src/session/composer/history/SessionHistoryComposer.ts +1 -1
- package/src/session/composer/system/SessionSystemComposer.ts +1 -1
- package/src/session/composer/system/default/DefaultSessionSystemComposer.ts +1 -1
- package/src/session/composer/system/default/SystemDomain.ts +1 -1
- package/src/session/executors/local/{LocalSessionCore.ts → Runner.ts} +13 -13
- package/src/session/executors/local/SessionExecutionError.ts +1 -1
- package/src/session/executors/local/SessionLoopDecision.ts +3 -3
- package/src/session/executors/local/SessionModelMessageState.ts +2 -2
- package/src/session/executors/local/SessionSignals.ts +3 -3
- package/src/session/executors/local/SessionToolLoopRunner.ts +2 -2
- package/src/session/tools/shell/ShellToolBridge.ts +1 -1
- package/src/session/types/SessionLoop.ts +1 -1
- package/src/session/types/SessionRun.ts +2 -2
- package/tsconfig.tsbuildinfo +1 -1
- package/bin/runtime/AgentContext.d.ts +0 -23
- package/bin/runtime/AgentContext.d.ts.map +0 -1
- package/bin/runtime/AgentContext.js +0 -149
- package/bin/runtime/AgentContext.js.map +0 -1
- package/bin/runtime/AgentContextTypes.d.ts.map +0 -1
- package/bin/runtime/AgentContextTypes.js.map +0 -1
- package/bin/runtime/AgentRuntime.d.ts +0 -37
- package/bin/runtime/AgentRuntime.d.ts.map +0 -1
- package/bin/runtime/AgentRuntime.js +0 -296
- package/bin/runtime/AgentRuntime.js.map +0 -1
- package/bin/runtime/AgentRuntimeState.d.ts +0 -42
- package/bin/runtime/AgentRuntimeState.d.ts.map +0 -1
- package/bin/runtime/AgentRuntimeState.js +0 -172
- package/bin/runtime/AgentRuntimeState.js.map +0 -1
- package/bin/runtime/AgentRuntimeTypes.d.ts.map +0 -1
- package/bin/runtime/AgentRuntimeTypes.js +0 -10
- package/bin/runtime/AgentRuntimeTypes.js.map +0 -1
- package/bin/sdk/SdkSessionSystemComposer.d.ts.map +0 -1
- package/bin/sdk/SdkSessionSystemComposer.js.map +0 -1
- package/bin/service/core/ServiceActionApi.d.ts +0 -15
- package/bin/service/core/ServiceActionApi.d.ts.map +0 -1
- package/bin/service/core/ServiceActionApi.js +0 -234
- package/bin/service/core/ServiceActionApi.js.map +0 -1
- package/bin/service/schedule/Runtime.d.ts +0 -17
- package/bin/service/schedule/Runtime.d.ts.map +0 -1
- package/bin/service/schedule/Runtime.js +0 -64
- package/bin/service/schedule/Runtime.js.map +0 -1
- package/bin/session/Session.d.ts.map +0 -1
- package/bin/session/Session.js.map +0 -1
- package/bin/session/executors/local/LocalSessionCore.d.ts.map +0 -1
- package/bin/session/executors/local/LocalSessionCore.js.map +0 -1
- package/bin/session/executors/local/LocalSessionExecutor.d.ts +0 -61
- package/bin/session/executors/local/LocalSessionExecutor.d.ts.map +0 -1
- package/bin/session/executors/local/LocalSessionExecutor.js +0 -36
- package/bin/session/executors/local/LocalSessionExecutor.js.map +0 -1
- package/src/runtime/AgentContext.ts +0 -182
- package/src/runtime/AgentRuntime.ts +0 -376
- package/src/runtime/AgentRuntimeState.ts +0 -213
- package/src/service/core/ServiceActionApi.ts +0 -304
- package/src/service/schedule/Runtime.ts +0 -78
- package/src/session/executors/local/LocalSessionExecutor.ts +0 -89
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
import path from "node:path";
|
|
10
|
-
import type { AgentContext } from "@/
|
|
10
|
+
import type { AgentContext } from "@/core/AgentContextTypes.js";
|
|
11
11
|
import { stripInvocationAuthEnv } from "@/server/http/auth/AuthEnv.js";
|
|
12
12
|
import { getSessionRunScope } from "@session/SessionRunScope.js";
|
|
13
13
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
import path from "node:path";
|
|
10
10
|
import type { ShipTaskStatus } from "./types/Task.js";
|
|
11
|
-
import type { AgentContext } from "@/
|
|
11
|
+
import type { AgentContext } from "@/core/AgentContextTypes.js";
|
|
12
12
|
import type { JsonValue } from "@/types/common/Json.js";
|
|
13
13
|
import {
|
|
14
14
|
deriveTaskIdFromTitle,
|
|
@@ -7,10 +7,10 @@
|
|
|
7
7
|
* - 当前文件只保留实例骨架与 lifecycle,不再依赖旧的模块级 `taskService` 单例。
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
-
import type { AgentRuntime } from "@/
|
|
10
|
+
import type { AgentRuntime } from "@/core/AgentCoreTypes.js";
|
|
11
11
|
import { BaseService } from "@/service/builtins/BaseService.js";
|
|
12
12
|
import type { ServiceActions } from "@/service/types/Service.js";
|
|
13
|
-
import type { AgentContext } from "@/
|
|
13
|
+
import type { AgentContext } from "@/core/AgentContextTypes.js";
|
|
14
14
|
import type {
|
|
15
15
|
TaskCronRegisterResult,
|
|
16
16
|
TaskSchedulerReloadResult,
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* - 该模块是 task service 内部实现细节,core 只通过 service lifecycle 间接调用。
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import type { AgentContext } from "@/
|
|
9
|
+
import type { AgentContext } from "@/core/AgentContextTypes.js";
|
|
10
10
|
import { registerTaskCronJobs } from "@/service/builtins/task/Scheduler.js";
|
|
11
11
|
import { TaskCronTriggerEngine } from "./CronTrigger.js";
|
|
12
12
|
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
*
|
|
4
4
|
* 职责(中文)
|
|
5
5
|
* - 创建 run 目录(timestamp)。
|
|
6
|
-
* - 以“干净历史”调用当前 runtime 的
|
|
6
|
+
* - 以“干净历史”调用当前 runtime 的 Runner(逻辑与正常 chat 一致)。
|
|
7
7
|
* - 协调 script / agent 两类执行主链。
|
|
8
8
|
* - 把最终产物写入 run 目录的具体格式委托给 `TaskRunArtifacts.ts`。
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import type { AgentContext } from "@/
|
|
11
|
+
import type { AgentContext } from "@/core/AgentContextTypes.js";
|
|
12
12
|
import type {
|
|
13
13
|
DialogueRoundRecord,
|
|
14
14
|
UserSimulatorDecision,
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* - task 定义变更后的 scheduler reload 通过回调注入,避免执行层依赖具体 service 实现。
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import type { AgentContext } from "@/
|
|
9
|
+
import type { AgentContext } from "@/core/AgentContextTypes.js";
|
|
10
10
|
import type {
|
|
11
11
|
TaskCronRegisterResult,
|
|
12
12
|
TaskListActionPayload,
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* TaskActionInput:task service 的 CLI
|
|
2
|
+
* TaskActionInput:task service 的 CLI 输入映射模块。
|
|
3
3
|
*
|
|
4
4
|
* 关键点(中文)
|
|
5
|
-
* -
|
|
5
|
+
* - 统一处理命令行到 task action payload 的转换。
|
|
6
6
|
* - 参数校验尽量前置到输入层,避免进入执行层后才发现字段非法。
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
import { resolveSessionId } from "@session/ids/resolveSessionId.js";
|
|
10
|
-
import type {
|
|
10
|
+
import type { JsonValue } from "@/types/common/Json.js";
|
|
11
11
|
import type { ServiceActionCommandInput } from "@/service/types/Service.js";
|
|
12
12
|
import type { ShipTaskKind, ShipTaskStatus } from "@/service/builtins/task/types/Task.js";
|
|
13
13
|
import type {
|
|
@@ -19,30 +19,6 @@ import type {
|
|
|
19
19
|
} from "@/service/builtins/task/types/TaskCommand.js";
|
|
20
20
|
import type { TaskListActionPayload } from "@/service/builtins/task/types/TaskService.js";
|
|
21
21
|
|
|
22
|
-
function parseJsonBodyObject(rawBody: JsonValue): JsonObject {
|
|
23
|
-
if (rawBody && typeof rawBody === "object" && !Array.isArray(rawBody)) {
|
|
24
|
-
return rawBody as JsonObject;
|
|
25
|
-
}
|
|
26
|
-
return {};
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
function getStringField(body: JsonObject, key: string): string {
|
|
30
|
-
const value = body[key];
|
|
31
|
-
return typeof value === "string" ? value : "";
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
function getOptionalStringField(
|
|
35
|
-
body: JsonObject,
|
|
36
|
-
key: string,
|
|
37
|
-
): string | undefined {
|
|
38
|
-
const value = body[key];
|
|
39
|
-
return typeof value === "string" ? value : undefined;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
function getBooleanField(body: JsonObject, key: string): boolean {
|
|
43
|
-
return body[key] === true;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
22
|
function parseBooleanLike(value: JsonValue | undefined): boolean | undefined {
|
|
47
23
|
if (typeof value === "boolean") return value;
|
|
48
24
|
if (typeof value !== "string") return undefined;
|
|
@@ -53,28 +29,6 @@ function parseBooleanLike(value: JsonValue | undefined): boolean | undefined {
|
|
|
53
29
|
return undefined;
|
|
54
30
|
}
|
|
55
31
|
|
|
56
|
-
function getOptionalTaskStatusField(
|
|
57
|
-
body: JsonObject,
|
|
58
|
-
key: string,
|
|
59
|
-
): ShipTaskStatus | undefined {
|
|
60
|
-
const value = body[key];
|
|
61
|
-
if (value === "enabled" || value === "paused" || value === "disabled") {
|
|
62
|
-
return value;
|
|
63
|
-
}
|
|
64
|
-
return undefined;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
function getOptionalTaskKindField(
|
|
68
|
-
body: JsonObject,
|
|
69
|
-
key: string,
|
|
70
|
-
): ShipTaskKind | undefined {
|
|
71
|
-
const value = body[key];
|
|
72
|
-
if (value === "agent" || value === "script") {
|
|
73
|
-
return value;
|
|
74
|
-
}
|
|
75
|
-
return undefined;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
32
|
function getStringOpt(
|
|
79
33
|
opts: Record<string, JsonValue>,
|
|
80
34
|
key: string,
|
|
@@ -253,101 +207,6 @@ function mapTaskDeleteCommandInput(titleInput: string): TaskDeleteRequest {
|
|
|
253
207
|
return { title };
|
|
254
208
|
}
|
|
255
209
|
|
|
256
|
-
function mapTaskListApiInput(query: { status?: string }): TaskListActionPayload {
|
|
257
|
-
const status = readTaskStatusOrThrow(
|
|
258
|
-
typeof query.status === "string" ? query.status.trim() : undefined,
|
|
259
|
-
);
|
|
260
|
-
return status ? { status } : {};
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
function mapTaskCreateApiInput(body: JsonObject): TaskCreateRequest {
|
|
264
|
-
const status = getOptionalTaskStatusField(body, "status");
|
|
265
|
-
const activate = getBooleanField(body, "activate");
|
|
266
|
-
if (activate && status && status !== "enabled") {
|
|
267
|
-
throw new Error("`activate` conflicts with `status` unless status=enabled");
|
|
268
|
-
}
|
|
269
|
-
const resolvedStatus = activate ? "enabled" : status;
|
|
270
|
-
|
|
271
|
-
return {
|
|
272
|
-
title: getStringField(body, "title"),
|
|
273
|
-
when: getStringField(body, "when"),
|
|
274
|
-
description: getStringField(body, "description"),
|
|
275
|
-
sessionId: getStringField(body, "sessionId"),
|
|
276
|
-
kind: getOptionalTaskKindField(body, "kind"),
|
|
277
|
-
...(typeof parseBooleanLike(body.review) === "boolean"
|
|
278
|
-
? { review: parseBooleanLike(body.review) }
|
|
279
|
-
: {}),
|
|
280
|
-
status: resolvedStatus,
|
|
281
|
-
body: getOptionalStringField(body, "body"),
|
|
282
|
-
overwrite: getBooleanField(body, "overwrite"),
|
|
283
|
-
};
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
function mapTaskRunApiInput(body: JsonObject): TaskRunRequest {
|
|
287
|
-
return {
|
|
288
|
-
title: getStringField(body, "title"),
|
|
289
|
-
...(getOptionalStringField(body, "reason")
|
|
290
|
-
? { reason: getOptionalStringField(body, "reason") }
|
|
291
|
-
: {}),
|
|
292
|
-
};
|
|
293
|
-
}
|
|
294
|
-
|
|
295
|
-
function mapTaskUpdateApiInput(body: JsonObject): TaskUpdateRequest {
|
|
296
|
-
const status = getOptionalTaskStatusField(body, "status");
|
|
297
|
-
const activate = getBooleanField(body, "activate");
|
|
298
|
-
if (activate && status && status !== "enabled") {
|
|
299
|
-
throw new Error("`activate` conflicts with `status` unless status=enabled");
|
|
300
|
-
}
|
|
301
|
-
const resolvedStatus = activate ? "enabled" : status;
|
|
302
|
-
|
|
303
|
-
return {
|
|
304
|
-
title: getStringField(body, "title"),
|
|
305
|
-
...(getOptionalStringField(body, "titleNext")
|
|
306
|
-
? { titleNext: getOptionalStringField(body, "titleNext") }
|
|
307
|
-
: {}),
|
|
308
|
-
...(getOptionalStringField(body, "description")
|
|
309
|
-
? { description: getOptionalStringField(body, "description") }
|
|
310
|
-
: {}),
|
|
311
|
-
...(getOptionalStringField(body, "when")
|
|
312
|
-
? { when: getOptionalStringField(body, "when") }
|
|
313
|
-
: {}),
|
|
314
|
-
...(getOptionalStringField(body, "sessionId")
|
|
315
|
-
? { sessionId: getOptionalStringField(body, "sessionId") }
|
|
316
|
-
: {}),
|
|
317
|
-
...(getOptionalTaskKindField(body, "kind")
|
|
318
|
-
? { kind: getOptionalTaskKindField(body, "kind") }
|
|
319
|
-
: {}),
|
|
320
|
-
...(typeof parseBooleanLike(body.review) === "boolean"
|
|
321
|
-
? { review: parseBooleanLike(body.review) }
|
|
322
|
-
: {}),
|
|
323
|
-
...(getBooleanField(body, "clearWhen") ? { clearWhen: true } : {}),
|
|
324
|
-
...(resolvedStatus ? { status: resolvedStatus } : {}),
|
|
325
|
-
...(getOptionalStringField(body, "body")
|
|
326
|
-
? { body: getOptionalStringField(body, "body") }
|
|
327
|
-
: {}),
|
|
328
|
-
...(getBooleanField(body, "clearBody") ? { clearBody: true } : {}),
|
|
329
|
-
};
|
|
330
|
-
}
|
|
331
|
-
|
|
332
|
-
function mapTaskStatusApiInput(body: JsonObject): TaskSetStatusRequest {
|
|
333
|
-
const status = getOptionalTaskStatusField(body, "status");
|
|
334
|
-
if (!status) {
|
|
335
|
-
throw new Error("Missing or invalid status");
|
|
336
|
-
}
|
|
337
|
-
return {
|
|
338
|
-
title: getStringField(body, "title"),
|
|
339
|
-
status,
|
|
340
|
-
};
|
|
341
|
-
}
|
|
342
|
-
|
|
343
|
-
function mapTaskDeleteApiInput(body: JsonObject): TaskDeleteRequest {
|
|
344
|
-
const title = getStringField(body, "title");
|
|
345
|
-
if (!String(title || "").trim()) {
|
|
346
|
-
throw new Error("Missing title");
|
|
347
|
-
}
|
|
348
|
-
return { title };
|
|
349
|
-
}
|
|
350
|
-
|
|
351
210
|
export function mapTaskListCommandPayload(
|
|
352
211
|
input: ServiceActionCommandInput,
|
|
353
212
|
): TaskListActionPayload {
|
|
@@ -420,44 +279,3 @@ export function mapTaskDisableCommandPayload(
|
|
|
420
279
|
status: "disabled",
|
|
421
280
|
});
|
|
422
281
|
}
|
|
423
|
-
|
|
424
|
-
export function mapTaskListApiPayload(query: {
|
|
425
|
-
status?: string;
|
|
426
|
-
}): TaskListActionPayload {
|
|
427
|
-
return mapTaskListApiInput(query);
|
|
428
|
-
}
|
|
429
|
-
|
|
430
|
-
export async function mapTaskCreateApiPayload(c: {
|
|
431
|
-
req: { json: () => Promise<JsonValue> };
|
|
432
|
-
}): Promise<TaskCreateRequest> {
|
|
433
|
-
const body = parseJsonBodyObject(await c.req.json());
|
|
434
|
-
return mapTaskCreateApiInput(body);
|
|
435
|
-
}
|
|
436
|
-
|
|
437
|
-
export async function mapTaskRunApiPayload(c: {
|
|
438
|
-
req: { json: () => Promise<JsonValue> };
|
|
439
|
-
}): Promise<TaskRunRequest> {
|
|
440
|
-
const body = parseJsonBodyObject(await c.req.json());
|
|
441
|
-
return mapTaskRunApiInput(body);
|
|
442
|
-
}
|
|
443
|
-
|
|
444
|
-
export async function mapTaskUpdateApiPayload(c: {
|
|
445
|
-
req: { json: () => Promise<JsonValue> };
|
|
446
|
-
}): Promise<TaskUpdateRequest> {
|
|
447
|
-
const body = parseJsonBodyObject(await c.req.json());
|
|
448
|
-
return mapTaskUpdateApiInput(body);
|
|
449
|
-
}
|
|
450
|
-
|
|
451
|
-
export async function mapTaskStatusApiPayload(c: {
|
|
452
|
-
req: { json: () => Promise<JsonValue> };
|
|
453
|
-
}): Promise<TaskSetStatusRequest> {
|
|
454
|
-
const body = parseJsonBodyObject(await c.req.json());
|
|
455
|
-
return mapTaskStatusApiInput(body);
|
|
456
|
-
}
|
|
457
|
-
|
|
458
|
-
export async function mapTaskDeleteApiPayload(c: {
|
|
459
|
-
req: { json: () => Promise<JsonValue> };
|
|
460
|
-
}): Promise<TaskDeleteRequest> {
|
|
461
|
-
const body = parseJsonBodyObject(await c.req.json());
|
|
462
|
-
return mapTaskDeleteApiInput(body);
|
|
463
|
-
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* - 回发失败只记录日志,不影响 task run 自身状态。
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
-
import type { AgentContext } from "@/
|
|
10
|
+
import type { AgentContext } from "@/core/AgentContextTypes.js";
|
|
11
11
|
import type { ShipTaskDefinitionV1 } from "@/service/builtins/task/types/Task.js";
|
|
12
12
|
|
|
13
13
|
function resolveTaskFinalText(params: {
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
import path from "node:path";
|
|
10
10
|
import fs from "fs-extra";
|
|
11
11
|
import { stripInvocationAuthEnv } from "@/server/http/auth/AuthEnv.js";
|
|
12
|
-
import type { AgentContext } from "@/
|
|
12
|
+
import type { AgentContext } from "@/core/AgentContextTypes.js";
|
|
13
13
|
import { runSandboxCommand } from "@/sandbox/SandboxRunner.js";
|
|
14
14
|
import type { SessionRunResult } from "@/session/types/SessionRun.js";
|
|
15
15
|
import type { JsonObject } from "@/types/common/Json.js";
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* - 这里集中处理 script 执行、结果校验与进度更新,Runner 主链只消费归一化结果。
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import type { AgentContext } from "@/
|
|
9
|
+
import type { AgentContext } from "@/core/AgentContextTypes.js";
|
|
10
10
|
import type {
|
|
11
11
|
ShipTaskRunExecutionStatusV1,
|
|
12
12
|
ShipTaskRunResultStatusV1,
|
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
* TaskRunnerSession:task runner 的 session 装配模块。
|
|
3
3
|
*
|
|
4
4
|
* 关键点(中文)
|
|
5
|
-
* - 负责构建 task 专用
|
|
5
|
+
* - 负责构建 task 专用 Runner / JsonlSessionHistoryComposer 运行时。
|
|
6
6
|
* - 负责把每轮 user/assistant 消息写入 run 目录对应的 messages.jsonl。
|
|
7
7
|
* - 这些能力与任务编排逻辑解耦后,Runner 主流程会更聚焦于状态流转。
|
|
8
8
|
* - 当前只有 api 执行模式。
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import path from "node:path";
|
|
12
|
-
import type { AgentContext } from "@/
|
|
12
|
+
import type { AgentContext } from "@/core/AgentContextTypes.js";
|
|
13
13
|
import type { SessionRunResult } from "@/session/types/SessionRun.js";
|
|
14
14
|
import type { TaskSessionRuntimePort } from "@/service/builtins/task/runtime/TaskRunnerTypes.js";
|
|
15
|
-
import {
|
|
15
|
+
import { Runner } from "@session/executors/local/Runner.js";
|
|
16
16
|
import { drainDeferredPersistedUserMessages } from "@session/SessionRunScope.js";
|
|
17
17
|
import { JsonlSessionHistoryComposer } from "@session/composer/history/jsonl/JsonlSessionHistoryComposer.js";
|
|
18
18
|
import { JsonlSessionCompactionComposer } from "@session/composer/compaction/jsonl/JsonlSessionCompactionComposer.js";
|
|
@@ -54,7 +54,7 @@ export async function appendTaskRoundUserMessage(params: {
|
|
|
54
54
|
* 构建 task 专用 Session 运行时(独立于普通 Session 实例缓存)。
|
|
55
55
|
*
|
|
56
56
|
* 关键点(中文)
|
|
57
|
-
* - 使用
|
|
57
|
+
* - 使用 Runner 执行,模型来自 context.session.model(agent 级模型)。
|
|
58
58
|
*/
|
|
59
59
|
export function createTaskSessionRuntimePort(params: {
|
|
60
60
|
context: AgentContext;
|
|
@@ -132,7 +132,7 @@ export function createTaskSessionRuntimePort(params: {
|
|
|
132
132
|
sessionId: key,
|
|
133
133
|
getTools: () => shellTools,
|
|
134
134
|
});
|
|
135
|
-
const created = new
|
|
135
|
+
const created = new Runner({
|
|
136
136
|
model: context.session.model,
|
|
137
137
|
logger: context.logger,
|
|
138
138
|
historyComposer,
|
|
@@ -170,7 +170,7 @@ export type ScriptExecutionResult = {
|
|
|
170
170
|
* task 运行专用的 session runtime 端口。
|
|
171
171
|
*
|
|
172
172
|
* 关键点(中文)
|
|
173
|
-
* - task runner 不直接依赖具体 `
|
|
173
|
+
* - task runner 不直接依赖具体 SDK `Session` 实现。
|
|
174
174
|
* - 这里暴露的是 task 场景最小可用端口:执行器 + history Composer。
|
|
175
175
|
*/
|
|
176
176
|
export type TaskSessionRuntimePort = {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* TaskServiceActions:task service 的 action 注册表模块。
|
|
3
3
|
*
|
|
4
4
|
* 关键点(中文)
|
|
5
|
-
* - 这里专门负责把 task 的 CLI/
|
|
5
|
+
* - 这里专门负责把 task 的 CLI/execute 定义装配成 `ServiceActions`。
|
|
6
6
|
* - TaskService 本体只保留实例状态与 lifecycle,不再承载大段 action 声明。
|
|
7
7
|
*/
|
|
8
8
|
|
|
@@ -26,19 +26,13 @@ import {
|
|
|
26
26
|
type TaskSchedulerReloadPort,
|
|
27
27
|
} from "./TaskActionExecution.js";
|
|
28
28
|
import {
|
|
29
|
-
mapTaskCreateApiPayload,
|
|
30
29
|
mapTaskCreateCommandPayload,
|
|
31
|
-
mapTaskDeleteApiPayload,
|
|
32
30
|
mapTaskDeleteCommandPayload,
|
|
33
31
|
mapTaskDisableCommandPayload,
|
|
34
32
|
mapTaskEnableCommandPayload,
|
|
35
|
-
mapTaskListApiPayload,
|
|
36
33
|
mapTaskListCommandPayload,
|
|
37
|
-
mapTaskRunApiPayload,
|
|
38
34
|
mapTaskRunCommandPayload,
|
|
39
|
-
mapTaskStatusApiPayload,
|
|
40
35
|
mapTaskStatusCommandPayload,
|
|
41
|
-
mapTaskUpdateApiPayload,
|
|
42
36
|
mapTaskUpdateCommandPayload,
|
|
43
37
|
} from "./TaskActionInput.js";
|
|
44
38
|
|
|
@@ -60,14 +54,6 @@ export function createTaskServiceActions(params: {
|
|
|
60
54
|
},
|
|
61
55
|
mapInput: mapTaskListCommandPayload,
|
|
62
56
|
},
|
|
63
|
-
api: {
|
|
64
|
-
method: "GET",
|
|
65
|
-
mapInput(c) {
|
|
66
|
-
return mapTaskListApiPayload({
|
|
67
|
-
status: c.req.query("status"),
|
|
68
|
-
});
|
|
69
|
-
},
|
|
70
|
-
},
|
|
71
57
|
execute: async (actionParams) => {
|
|
72
58
|
return executeTaskListAction({
|
|
73
59
|
context: actionParams.context,
|
|
@@ -103,10 +89,6 @@ export function createTaskServiceActions(params: {
|
|
|
103
89
|
},
|
|
104
90
|
mapInput: mapTaskCreateCommandPayload,
|
|
105
91
|
},
|
|
106
|
-
api: {
|
|
107
|
-
method: "POST",
|
|
108
|
-
mapInput: mapTaskCreateApiPayload,
|
|
109
|
-
},
|
|
110
92
|
execute: async (actionParams) => {
|
|
111
93
|
return executeTaskCreateAction({
|
|
112
94
|
context: actionParams.context,
|
|
@@ -125,10 +107,6 @@ export function createTaskServiceActions(params: {
|
|
|
125
107
|
},
|
|
126
108
|
mapInput: mapTaskRunCommandPayload,
|
|
127
109
|
},
|
|
128
|
-
api: {
|
|
129
|
-
method: "POST",
|
|
130
|
-
mapInput: mapTaskRunApiPayload,
|
|
131
|
-
},
|
|
132
110
|
execute: async (actionParams) => {
|
|
133
111
|
return executeTaskRunAction({
|
|
134
112
|
context: actionParams.context,
|
|
@@ -144,10 +122,6 @@ export function createTaskServiceActions(params: {
|
|
|
144
122
|
},
|
|
145
123
|
mapInput: mapTaskDeleteCommandPayload,
|
|
146
124
|
},
|
|
147
|
-
api: {
|
|
148
|
-
method: "DELETE",
|
|
149
|
-
mapInput: mapTaskDeleteApiPayload,
|
|
150
|
-
},
|
|
151
125
|
execute: async (actionParams) => {
|
|
152
126
|
return executeTaskDeleteAction({
|
|
153
127
|
context: actionParams.context,
|
|
@@ -180,10 +154,6 @@ export function createTaskServiceActions(params: {
|
|
|
180
154
|
},
|
|
181
155
|
mapInput: mapTaskUpdateCommandPayload,
|
|
182
156
|
},
|
|
183
|
-
api: {
|
|
184
|
-
method: "PUT",
|
|
185
|
-
mapInput: mapTaskUpdateApiPayload,
|
|
186
|
-
},
|
|
187
157
|
execute: async (actionParams) => {
|
|
188
158
|
return executeTaskUpdateAction({
|
|
189
159
|
context: actionParams.context,
|
|
@@ -200,10 +170,6 @@ export function createTaskServiceActions(params: {
|
|
|
200
170
|
},
|
|
201
171
|
mapInput: mapTaskStatusCommandPayload,
|
|
202
172
|
},
|
|
203
|
-
api: {
|
|
204
|
-
method: "PUT",
|
|
205
|
-
mapInput: mapTaskStatusApiPayload,
|
|
206
|
-
},
|
|
207
173
|
execute: async (actionParams) => {
|
|
208
174
|
return executeTaskStatusAction({
|
|
209
175
|
context: actionParams.context,
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
import type { JsonValue } from "@/types/common/Json.js";
|
|
11
|
-
import type { AgentContext } from "@/
|
|
11
|
+
import type { AgentContext } from "@/core/AgentContextTypes.js";
|
|
12
12
|
import type { ServiceCommandScheduleInput } from "@/service/types/ServiceSchedule.js";
|
|
13
13
|
import type {
|
|
14
14
|
ServiceStateControlAction,
|
|
@@ -147,7 +147,9 @@ export async function runServiceCommand(params: {
|
|
|
147
147
|
schedule?: JsonValue | ServiceCommandScheduleInput;
|
|
148
148
|
context: AgentContext;
|
|
149
149
|
}): Promise<ServiceCommandResult & { service?: ServiceStateSnapshot }> {
|
|
150
|
-
const service = resolveServiceByName(params.serviceName
|
|
150
|
+
const service = resolveServiceByName(params.serviceName, {
|
|
151
|
+
context: params.context,
|
|
152
|
+
});
|
|
151
153
|
if (!service) {
|
|
152
154
|
return {
|
|
153
155
|
success: false,
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* - CLI / 只读场景也复用这里构造无宿主实例,避免维护第二套静态 definition。
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
-
import type { AgentRuntime } from "@/
|
|
10
|
+
import type { AgentRuntime } from "@/core/AgentCoreTypes.js";
|
|
11
11
|
import { SERVICE_CLASSES } from "@/service/core/Services.js";
|
|
12
12
|
import { BaseService } from "@/service/builtins/BaseService.js";
|
|
13
13
|
import type { Service } from "@/service/types/Service.js";
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ServiceCommandRequest:统一 service command 请求解析模块。
|
|
3
|
+
*
|
|
4
|
+
* 关键点(中文)
|
|
5
|
+
* - 统一收口 HTTP / RPC 两种入口的请求体解析。
|
|
6
|
+
* - service 远程调用只保留 `/api/services/command` 一种协议,不再让 action 自带 HTTP route。
|
|
7
|
+
* - 通用调度参数(`schedule` / `delay` / `time`)也在这里一次性归一化。
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import type { JsonValue } from "@/types/common/Json.js";
|
|
11
|
+
import type { ServiceCommandScheduleInput } from "@/service/types/ServiceSchedule.js";
|
|
12
|
+
import {
|
|
13
|
+
normalizeRunAtMsOrThrow,
|
|
14
|
+
parseScheduledRunAtMsOrThrow,
|
|
15
|
+
} from "@/service/schedule/Time.js";
|
|
16
|
+
|
|
17
|
+
type JsonRecord = Record<string, unknown>;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* 统一 service command 请求体。
|
|
21
|
+
*/
|
|
22
|
+
export type ServiceCommandRequestBody = {
|
|
23
|
+
/**
|
|
24
|
+
* 目标 service 名称。
|
|
25
|
+
*/
|
|
26
|
+
serviceName: string;
|
|
27
|
+
/**
|
|
28
|
+
* 目标 command / action 名称。
|
|
29
|
+
*/
|
|
30
|
+
command: string;
|
|
31
|
+
/**
|
|
32
|
+
* 结构化 payload。
|
|
33
|
+
*/
|
|
34
|
+
payload?: JsonValue;
|
|
35
|
+
/**
|
|
36
|
+
* 可选调度信息。
|
|
37
|
+
*/
|
|
38
|
+
schedule?: ServiceCommandScheduleInput;
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
function isJsonRecord(value: unknown): value is JsonRecord {
|
|
42
|
+
return Boolean(value && typeof value === "object" && !Array.isArray(value));
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* 从统一请求体中提取调度输入。
|
|
47
|
+
*/
|
|
48
|
+
function readScheduleInput(
|
|
49
|
+
body: JsonRecord,
|
|
50
|
+
): ServiceCommandScheduleInput | undefined {
|
|
51
|
+
const nestedSchedule = isJsonRecord(body.schedule) ? body.schedule : undefined;
|
|
52
|
+
const nestedRunAtMs = nestedSchedule?.runAtMs;
|
|
53
|
+
const topLevelDelay = body.delayMs ?? body.delay;
|
|
54
|
+
const topLevelTime = body.sendAtMs ?? body.sendAt ?? body.time;
|
|
55
|
+
|
|
56
|
+
if (body.schedule !== undefined && !nestedSchedule) {
|
|
57
|
+
throw new Error("schedule must be an object");
|
|
58
|
+
}
|
|
59
|
+
if (nestedRunAtMs !== undefined && (topLevelDelay !== undefined || topLevelTime !== undefined)) {
|
|
60
|
+
throw new Error("`schedule.runAtMs` cannot be used together with `delay/time`.");
|
|
61
|
+
}
|
|
62
|
+
if (nestedRunAtMs !== undefined) {
|
|
63
|
+
return {
|
|
64
|
+
runAtMs: normalizeRunAtMsOrThrow(
|
|
65
|
+
nestedRunAtMs as string | number | undefined,
|
|
66
|
+
"schedule.runAtMs",
|
|
67
|
+
),
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
const runAtMs = parseScheduledRunAtMsOrThrow({
|
|
72
|
+
delay: topLevelDelay as string | number | undefined,
|
|
73
|
+
time: topLevelTime as string | number | undefined,
|
|
74
|
+
});
|
|
75
|
+
if (typeof runAtMs !== "number") return undefined;
|
|
76
|
+
return { runAtMs };
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* 解析统一 service command 请求体。
|
|
81
|
+
*/
|
|
82
|
+
export function parseServiceCommandRequestBody(
|
|
83
|
+
rawBody: JsonValue | undefined,
|
|
84
|
+
): ServiceCommandRequestBody {
|
|
85
|
+
const body = isJsonRecord(rawBody) ? rawBody : {};
|
|
86
|
+
const schedule = readScheduleInput(body);
|
|
87
|
+
return {
|
|
88
|
+
serviceName: String(body.serviceName || "").trim(),
|
|
89
|
+
command: String(body.command || "").trim(),
|
|
90
|
+
...(body.payload !== undefined ? { payload: body.payload as JsonValue } : {}),
|
|
91
|
+
...(schedule ? { schedule } : {}),
|
|
92
|
+
};
|
|
93
|
+
}
|