@downcity/agent 1.1.13 → 1.1.15

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.
Files changed (545) hide show
  1. package/bin/config/Config.js +1 -1
  2. package/bin/config/Config.js.map +1 -1
  3. package/bin/config/Defaults.d.ts +13 -0
  4. package/bin/config/Defaults.d.ts.map +1 -0
  5. package/bin/config/{DowncityDefault.js → Defaults.js} +11 -1
  6. package/bin/config/Defaults.js.map +1 -0
  7. package/bin/{project/ProjectExecutionBinding.d.ts → config/ExecutionBinding.d.ts} +2 -2
  8. package/bin/config/ExecutionBinding.d.ts.map +1 -0
  9. package/bin/{project/ProjectExecutionBinding.js → config/ExecutionBinding.js} +2 -2
  10. package/bin/config/ExecutionBinding.js.map +1 -0
  11. package/bin/{runtime → core}/AgentContextTypes.d.ts +6 -6
  12. package/bin/core/AgentContextTypes.d.ts.map +1 -0
  13. package/bin/{runtime → core}/AgentContextTypes.js +2 -2
  14. package/bin/core/AgentContextTypes.js.map +1 -0
  15. package/bin/core/AgentCore.d.ts +87 -0
  16. package/bin/core/AgentCore.d.ts.map +1 -0
  17. package/bin/core/AgentCore.js +467 -0
  18. package/bin/core/AgentCore.js.map +1 -0
  19. package/bin/{runtime/AgentRuntimeTypes.d.ts → core/AgentCoreTypes.d.ts} +7 -7
  20. package/bin/core/AgentCoreTypes.d.ts.map +1 -0
  21. package/bin/core/AgentCoreTypes.js +10 -0
  22. package/bin/core/AgentCoreTypes.js.map +1 -0
  23. package/bin/host/daemon/ProjectSetup.d.ts.map +1 -1
  24. package/bin/host/daemon/ProjectSetup.js +1 -1
  25. package/bin/host/daemon/ProjectSetup.js.map +1 -1
  26. package/bin/host/runtime/PluginRuntime.d.ts +1 -1
  27. package/bin/host/runtime/PluginRuntime.d.ts.map +1 -1
  28. package/bin/index.d.ts +9 -11
  29. package/bin/index.d.ts.map +1 -1
  30. package/bin/index.js +5 -8
  31. package/bin/index.js.map +1 -1
  32. package/bin/model/CreateModel.js +1 -1
  33. package/bin/model/CreateModel.js.map +1 -1
  34. package/bin/plugin/builtins/asr/InboundAugment.d.ts +1 -1
  35. package/bin/plugin/builtins/asr/InboundAugment.d.ts.map +1 -1
  36. package/bin/plugin/builtins/auth/runtime/AuthorizationConfig.d.ts +1 -1
  37. package/bin/plugin/builtins/auth/runtime/AuthorizationConfig.d.ts.map +1 -1
  38. package/bin/plugin/builtins/auth/runtime/AuthorizationStore.d.ts +1 -1
  39. package/bin/plugin/builtins/auth/runtime/AuthorizationStore.d.ts.map +1 -1
  40. package/bin/plugin/builtins/voice/InboundAugment.d.ts +1 -1
  41. package/bin/plugin/builtins/voice/InboundAugment.d.ts.map +1 -1
  42. package/bin/plugin/builtins/workboard/runtime/Collector.d.ts +1 -1
  43. package/bin/plugin/builtins/workboard/runtime/Collector.d.ts.map +1 -1
  44. package/bin/plugin/builtins/workboard/runtime/Collector.js +1 -1
  45. package/bin/plugin/builtins/workboard/runtime/Collector.js.map +1 -1
  46. package/bin/plugin/builtins/workboard/runtime/Normalizer.d.ts +1 -1
  47. package/bin/plugin/builtins/workboard/runtime/Normalizer.d.ts.map +1 -1
  48. package/bin/plugin/builtins/workboard/runtime/Store.d.ts +1 -1
  49. package/bin/plugin/builtins/workboard/runtime/Store.d.ts.map +1 -1
  50. package/bin/plugin/core/Activation.d.ts +2 -2
  51. package/bin/plugin/core/Activation.d.ts.map +1 -1
  52. package/bin/plugin/core/HookRegistry.d.ts +1 -1
  53. package/bin/plugin/core/HookRegistry.d.ts.map +1 -1
  54. package/bin/plugin/core/HttpRoutes.d.ts +1 -1
  55. package/bin/plugin/core/HttpRoutes.d.ts.map +1 -1
  56. package/bin/plugin/core/LocalExecution.d.ts.map +1 -1
  57. package/bin/plugin/core/LocalExecution.js +18 -20
  58. package/bin/plugin/core/LocalExecution.js.map +1 -1
  59. package/bin/plugin/core/PluginRegistry.d.ts +1 -1
  60. package/bin/plugin/core/PluginRegistry.d.ts.map +1 -1
  61. package/bin/plugin/types/Plugin.d.ts +1 -1
  62. package/bin/plugin/types/Plugin.d.ts.map +1 -1
  63. package/bin/project/AgentInitializer.js +2 -2
  64. package/bin/project/AgentInitializer.js.map +1 -1
  65. package/bin/sandbox/SandboxConfigResolver.d.ts +1 -1
  66. package/bin/sandbox/SandboxConfigResolver.d.ts.map +1 -1
  67. package/bin/sandbox/SandboxRunner.d.ts +1 -1
  68. package/bin/sandbox/SandboxRunner.d.ts.map +1 -1
  69. package/bin/sdk/Agent.d.ts +43 -27
  70. package/bin/sdk/Agent.d.ts.map +1 -1
  71. package/bin/sdk/Agent.js +143 -364
  72. package/bin/sdk/Agent.js.map +1 -1
  73. package/bin/sdk/AgentSdkTypes.d.ts +138 -0
  74. package/bin/sdk/AgentSdkTypes.d.ts.map +1 -1
  75. package/bin/sdk/RemoteAgent.d.ts +1 -1
  76. package/bin/sdk/RemoteAgent.js +1 -1
  77. package/bin/sdk/Session.d.ts +2 -2
  78. package/bin/sdk/Session.d.ts.map +1 -1
  79. package/bin/sdk/Session.js +11 -5
  80. package/bin/sdk/Session.js.map +1 -1
  81. package/bin/sdk/{SessionMetadata.d.ts → session/Metadata.d.ts} +2 -2
  82. package/bin/sdk/session/Metadata.d.ts.map +1 -0
  83. package/bin/sdk/{SessionMetadata.js → session/Metadata.js} +2 -2
  84. package/bin/sdk/session/Metadata.js.map +1 -0
  85. package/bin/sdk/{Paths.d.ts → session/Paths.d.ts} +1 -1
  86. package/bin/sdk/session/Paths.d.ts.map +1 -0
  87. package/bin/sdk/{Paths.js → session/Paths.js} +1 -1
  88. package/bin/sdk/session/Paths.js.map +1 -0
  89. package/bin/sdk/{SessionPersistence.d.ts → session/Persistence.d.ts} +3 -3
  90. package/bin/sdk/session/Persistence.d.ts.map +1 -0
  91. package/bin/sdk/{SessionPersistence.js → session/Persistence.js} +4 -4
  92. package/bin/sdk/session/Persistence.js.map +1 -0
  93. package/bin/sdk/{SessionServicePort.d.ts → session/ServicePort.d.ts} +2 -2
  94. package/bin/sdk/session/ServicePort.d.ts.map +1 -0
  95. package/bin/sdk/{SessionServicePort.js → session/ServicePort.js} +1 -1
  96. package/bin/sdk/session/ServicePort.js.map +1 -0
  97. package/bin/sdk/session/index.d.ts +12 -0
  98. package/bin/sdk/session/index.d.ts.map +1 -0
  99. package/bin/sdk/session/index.js +12 -0
  100. package/bin/sdk/session/index.js.map +1 -0
  101. package/bin/server/http/Server.d.ts +10 -1
  102. package/bin/server/http/Server.d.ts.map +1 -1
  103. package/bin/server/http/Server.js +41 -15
  104. package/bin/server/http/Server.js.map +1 -1
  105. package/bin/server/http/control/AuthControlService.d.ts +1 -1
  106. package/bin/server/http/control/AuthControlService.d.ts.map +1 -1
  107. package/bin/server/http/control/ControlAuthorizationRoutes.d.ts +1 -1
  108. package/bin/server/http/control/ControlAuthorizationRoutes.d.ts.map +1 -1
  109. package/bin/server/http/control/ControlRouter.d.ts +18 -2
  110. package/bin/server/http/control/ControlRouter.d.ts.map +1 -1
  111. package/bin/server/http/control/ControlRouter.js +10 -8
  112. package/bin/server/http/control/ControlRouter.js.map +1 -1
  113. package/bin/server/http/control/ExecuteBySession.d.ts +2 -2
  114. package/bin/server/http/control/ExecuteBySession.d.ts.map +1 -1
  115. package/bin/server/http/control/OverviewRoutes.d.ts.map +1 -1
  116. package/bin/server/http/control/OverviewRoutes.js +6 -2
  117. package/bin/server/http/control/OverviewRoutes.js.map +1 -1
  118. package/bin/server/http/control/SessionSummaryStore.d.ts +1 -1
  119. package/bin/server/http/control/SessionSummaryStore.d.ts.map +1 -1
  120. package/bin/server/http/control/types/ControlRoutes.d.ts +2 -2
  121. package/bin/server/http/control/types/ControlRoutes.d.ts.map +1 -1
  122. package/bin/server/http/execute/execute.d.ts +13 -2
  123. package/bin/server/http/execute/execute.d.ts.map +1 -1
  124. package/bin/server/http/execute/execute.js +73 -71
  125. package/bin/server/http/execute/execute.js.map +1 -1
  126. package/bin/server/http/plugins/plugins.d.ts +13 -2
  127. package/bin/server/http/plugins/plugins.d.ts.map +1 -1
  128. package/bin/server/http/plugins/plugins.js +42 -40
  129. package/bin/server/http/plugins/plugins.js.map +1 -1
  130. package/bin/server/http/services/services.d.ts +12 -8
  131. package/bin/server/http/services/services.d.ts.map +1 -1
  132. package/bin/server/http/services/services.js +57 -64
  133. package/bin/server/http/services/services.js.map +1 -1
  134. package/bin/server/http/static/static.d.ts +13 -2
  135. package/bin/server/http/static/static.d.ts.map +1 -1
  136. package/bin/server/http/static/static.js +81 -79
  137. package/bin/server/http/static/static.js.map +1 -1
  138. package/bin/server/rpc/Server.d.ts +5 -3
  139. package/bin/server/rpc/Server.d.ts.map +1 -1
  140. package/bin/server/rpc/Server.js +22 -12
  141. package/bin/server/rpc/Server.js.map +1 -1
  142. package/bin/service/builtins/BaseService.d.ts +2 -2
  143. package/bin/service/builtins/BaseService.d.ts.map +1 -1
  144. package/bin/service/builtins/chat/Action.d.ts +1 -1
  145. package/bin/service/builtins/chat/Action.d.ts.map +1 -1
  146. package/bin/service/builtins/chat/ChatService.d.ts +2 -2
  147. package/bin/service/builtins/chat/ChatService.d.ts.map +1 -1
  148. package/bin/service/builtins/chat/ChatServiceTypes.d.ts +1 -1
  149. package/bin/service/builtins/chat/ChatServiceTypes.d.ts.map +1 -1
  150. package/bin/service/builtins/chat/channels/BaseChatChannel.d.ts +1 -1
  151. package/bin/service/builtins/chat/channels/BaseChatChannel.d.ts.map +1 -1
  152. package/bin/service/builtins/chat/channels/BaseChatChannelQueue.d.ts +1 -1
  153. package/bin/service/builtins/chat/channels/BaseChatChannelQueue.d.ts.map +1 -1
  154. package/bin/service/builtins/chat/channels/BaseChatChannelSupport.d.ts +1 -1
  155. package/bin/service/builtins/chat/channels/BaseChatChannelSupport.d.ts.map +1 -1
  156. package/bin/service/builtins/chat/channels/feishu/Feishu.d.ts +1 -1
  157. package/bin/service/builtins/chat/channels/feishu/Feishu.d.ts.map +1 -1
  158. package/bin/service/builtins/chat/channels/feishu/FeishuMessageHandler.d.ts +1 -1
  159. package/bin/service/builtins/chat/channels/feishu/FeishuMessageHandler.d.ts.map +1 -1
  160. package/bin/service/builtins/chat/channels/feishu/FeishuPlatformClient.d.ts +1 -1
  161. package/bin/service/builtins/chat/channels/feishu/FeishuPlatformClient.d.ts.map +1 -1
  162. package/bin/service/builtins/chat/channels/qq/QQ.d.ts +1 -1
  163. package/bin/service/builtins/chat/channels/qq/QQ.d.ts.map +1 -1
  164. package/bin/service/builtins/chat/channels/qq/QQMessageHandler.d.ts +1 -1
  165. package/bin/service/builtins/chat/channels/qq/QQMessageHandler.d.ts.map +1 -1
  166. package/bin/service/builtins/chat/channels/qq/QQSupport.d.ts +1 -1
  167. package/bin/service/builtins/chat/channels/qq/QQSupport.d.ts.map +1 -1
  168. package/bin/service/builtins/chat/channels/telegram/Bot.d.ts +1 -1
  169. package/bin/service/builtins/chat/channels/telegram/Bot.d.ts.map +1 -1
  170. package/bin/service/builtins/chat/channels/telegram/TelegramMessageHandler.d.ts +1 -1
  171. package/bin/service/builtins/chat/channels/telegram/TelegramMessageHandler.d.ts.map +1 -1
  172. package/bin/service/builtins/chat/channels/telegram/TelegramPlatformClient.d.ts +1 -1
  173. package/bin/service/builtins/chat/channels/telegram/TelegramPlatformClient.d.ts.map +1 -1
  174. package/bin/service/builtins/chat/runtime/ChannelContextStore.d.ts +1 -1
  175. package/bin/service/builtins/chat/runtime/ChannelContextStore.d.ts.map +1 -1
  176. package/bin/service/builtins/chat/runtime/ChatActionExecution.d.ts +1 -1
  177. package/bin/service/builtins/chat/runtime/ChatActionExecution.d.ts.map +1 -1
  178. package/bin/service/builtins/chat/runtime/ChatActionInput.d.ts +3 -36
  179. package/bin/service/builtins/chat/runtime/ChatActionInput.d.ts.map +1 -1
  180. package/bin/service/builtins/chat/runtime/ChatActionInput.js +3 -118
  181. package/bin/service/builtins/chat/runtime/ChatActionInput.js.map +1 -1
  182. package/bin/service/builtins/chat/runtime/ChatChannelActions.d.ts +1 -1
  183. package/bin/service/builtins/chat/runtime/ChatChannelActions.d.ts.map +1 -1
  184. package/bin/service/builtins/chat/runtime/ChatChannelConfig.d.ts +1 -1
  185. package/bin/service/builtins/chat/runtime/ChatChannelConfig.d.ts.map +1 -1
  186. package/bin/service/builtins/chat/runtime/ChatChannelCore.d.ts +1 -1
  187. package/bin/service/builtins/chat/runtime/ChatChannelCore.d.ts.map +1 -1
  188. package/bin/service/builtins/chat/runtime/ChatChannelLifecycle.d.ts +1 -1
  189. package/bin/service/builtins/chat/runtime/ChatChannelLifecycle.d.ts.map +1 -1
  190. package/bin/service/builtins/chat/runtime/ChatHistoryStore.d.ts +1 -1
  191. package/bin/service/builtins/chat/runtime/ChatHistoryStore.d.ts.map +1 -1
  192. package/bin/service/builtins/chat/runtime/ChatIngressStore.d.ts +1 -1
  193. package/bin/service/builtins/chat/runtime/ChatIngressStore.d.ts.map +1 -1
  194. package/bin/service/builtins/chat/runtime/ChatMetaStore.d.ts +1 -1
  195. package/bin/service/builtins/chat/runtime/ChatMetaStore.d.ts.map +1 -1
  196. package/bin/service/builtins/chat/runtime/ChatQueueReplyDispatch.d.ts +1 -1
  197. package/bin/service/builtins/chat/runtime/ChatQueueReplyDispatch.d.ts.map +1 -1
  198. package/bin/service/builtins/chat/runtime/ChatQueueSessionBridge.d.ts +1 -1
  199. package/bin/service/builtins/chat/runtime/ChatQueueSessionBridge.d.ts.map +1 -1
  200. package/bin/service/builtins/chat/runtime/ChatQueueStore.d.ts +1 -1
  201. package/bin/service/builtins/chat/runtime/ChatQueueStore.d.ts.map +1 -1
  202. package/bin/service/builtins/chat/runtime/ChatQueueWorker.d.ts +1 -1
  203. package/bin/service/builtins/chat/runtime/ChatQueueWorker.d.ts.map +1 -1
  204. package/bin/service/builtins/chat/runtime/ChatServiceActions.d.ts +1 -1
  205. package/bin/service/builtins/chat/runtime/ChatServiceActions.d.ts.map +1 -1
  206. package/bin/service/builtins/chat/runtime/ChatServiceActions.js +2 -109
  207. package/bin/service/builtins/chat/runtime/ChatServiceActions.js.map +1 -1
  208. package/bin/service/builtins/chat/runtime/ChatServiceSystem.d.ts +1 -1
  209. package/bin/service/builtins/chat/runtime/ChatServiceSystem.d.ts.map +1 -1
  210. package/bin/service/builtins/chat/runtime/ChatSessionDelete.d.ts +1 -1
  211. package/bin/service/builtins/chat/runtime/ChatSessionDelete.d.ts.map +1 -1
  212. package/bin/service/builtins/chat/runtime/ChatkeySend.d.ts +1 -1
  213. package/bin/service/builtins/chat/runtime/ChatkeySend.d.ts.map +1 -1
  214. package/bin/service/builtins/chat/runtime/EnqueueDispatch.d.ts +1 -1
  215. package/bin/service/builtins/chat/runtime/EnqueueDispatch.d.ts.map +1 -1
  216. package/bin/service/builtins/chat/runtime/InboundAugment.d.ts +1 -1
  217. package/bin/service/builtins/chat/runtime/InboundAugment.d.ts.map +1 -1
  218. package/bin/service/builtins/chat/runtime/PluginDispatch.d.ts +1 -1
  219. package/bin/service/builtins/chat/runtime/PluginDispatch.d.ts.map +1 -1
  220. package/bin/service/builtins/chat/runtime/ReplyDispatch.d.ts +1 -1
  221. package/bin/service/builtins/chat/runtime/ReplyDispatch.d.ts.map +1 -1
  222. package/bin/service/builtins/chat/runtime/SystemPrompt.d.ts +1 -1
  223. package/bin/service/builtins/chat/runtime/SystemPrompt.d.ts.map +1 -1
  224. package/bin/service/builtins/contact/Action.d.ts +2 -2
  225. package/bin/service/builtins/contact/Action.d.ts.map +1 -1
  226. package/bin/service/builtins/contact/Action.js +2 -58
  227. package/bin/service/builtins/contact/Action.js.map +1 -1
  228. package/bin/service/builtins/contact/ContactService.d.ts +1 -1
  229. package/bin/service/builtins/contact/ContactService.d.ts.map +1 -1
  230. package/bin/service/builtins/contact/runtime/ChatRuntime.d.ts +1 -1
  231. package/bin/service/builtins/contact/runtime/ChatRuntime.d.ts.map +1 -1
  232. package/bin/service/builtins/contact/runtime/ContactPayload.d.ts +0 -7
  233. package/bin/service/builtins/contact/runtime/ContactPayload.d.ts.map +1 -1
  234. package/bin/service/builtins/contact/runtime/ContactPayload.js +0 -9
  235. package/bin/service/builtins/contact/runtime/ContactPayload.js.map +1 -1
  236. package/bin/service/builtins/contact/runtime/RemoteClient.d.ts +1 -1
  237. package/bin/service/builtins/contact/runtime/RemoteClient.d.ts.map +1 -1
  238. package/bin/service/builtins/contact/runtime/RemoteClient.js +37 -19
  239. package/bin/service/builtins/contact/runtime/RemoteClient.js.map +1 -1
  240. package/bin/service/builtins/contact/runtime/ShareBundle.d.ts +1 -1
  241. package/bin/service/builtins/contact/runtime/ShareBundle.d.ts.map +1 -1
  242. package/bin/service/builtins/memory/Action.d.ts +1 -1
  243. package/bin/service/builtins/memory/Action.d.ts.map +1 -1
  244. package/bin/service/builtins/memory/MemoryService.d.ts +1 -1
  245. package/bin/service/builtins/memory/MemoryService.d.ts.map +1 -1
  246. package/bin/service/builtins/memory/MemoryService.js +0 -27
  247. package/bin/service/builtins/memory/MemoryService.js.map +1 -1
  248. package/bin/service/builtins/memory/runtime/Flush.d.ts +1 -1
  249. package/bin/service/builtins/memory/runtime/Flush.d.ts.map +1 -1
  250. package/bin/service/builtins/memory/runtime/Search.d.ts +1 -1
  251. package/bin/service/builtins/memory/runtime/Search.d.ts.map +1 -1
  252. package/bin/service/builtins/memory/runtime/Store.d.ts +1 -1
  253. package/bin/service/builtins/memory/runtime/Store.d.ts.map +1 -1
  254. package/bin/service/builtins/memory/runtime/SystemProvider.d.ts +1 -1
  255. package/bin/service/builtins/memory/runtime/SystemProvider.d.ts.map +1 -1
  256. package/bin/service/builtins/memory/runtime/Writer.d.ts +1 -1
  257. package/bin/service/builtins/memory/runtime/Writer.d.ts.map +1 -1
  258. package/bin/service/builtins/schedule/ScheduleService.d.ts +39 -0
  259. package/bin/service/builtins/schedule/ScheduleService.d.ts.map +1 -0
  260. package/bin/service/builtins/schedule/ScheduleService.js +106 -0
  261. package/bin/service/builtins/schedule/ScheduleService.js.map +1 -0
  262. package/bin/service/builtins/shell/ShellRuntimeTypes.d.ts +1 -1
  263. package/bin/service/builtins/shell/ShellRuntimeTypes.d.ts.map +1 -1
  264. package/bin/service/builtins/shell/ShellService.d.ts +2 -2
  265. package/bin/service/builtins/shell/ShellService.d.ts.map +1 -1
  266. package/bin/service/builtins/shell/runtime/ShellActionResponse.d.ts +1 -1
  267. package/bin/service/builtins/shell/runtime/ShellActionResponse.d.ts.map +1 -1
  268. package/bin/service/builtins/shell/runtime/ShellActionRuntime.d.ts +1 -1
  269. package/bin/service/builtins/shell/runtime/ShellActionRuntime.d.ts.map +1 -1
  270. package/bin/service/builtins/shell/runtime/ShellActionRuntimeSupport.d.ts +1 -1
  271. package/bin/service/builtins/shell/runtime/ShellActionRuntimeSupport.d.ts.map +1 -1
  272. package/bin/service/builtins/shell/runtime/ShellRuntimeEnvironment.d.ts +1 -1
  273. package/bin/service/builtins/shell/runtime/ShellRuntimeEnvironment.d.ts.map +1 -1
  274. package/bin/service/builtins/task/Action.d.ts +1 -1
  275. package/bin/service/builtins/task/Action.d.ts.map +1 -1
  276. package/bin/service/builtins/task/Scheduler.d.ts +1 -1
  277. package/bin/service/builtins/task/Scheduler.d.ts.map +1 -1
  278. package/bin/service/builtins/task/TaskService.d.ts +2 -2
  279. package/bin/service/builtins/task/TaskService.d.ts.map +1 -1
  280. package/bin/service/builtins/task/runtime/CronRuntime.d.ts +1 -1
  281. package/bin/service/builtins/task/runtime/CronRuntime.d.ts.map +1 -1
  282. package/bin/service/builtins/task/runtime/Runner.d.ts +1 -1
  283. package/bin/service/builtins/task/runtime/Runner.d.ts.map +1 -1
  284. package/bin/service/builtins/task/runtime/TaskActionExecution.d.ts +1 -1
  285. package/bin/service/builtins/task/runtime/TaskActionExecution.d.ts.map +1 -1
  286. package/bin/service/builtins/task/runtime/TaskActionInput.d.ts +2 -31
  287. package/bin/service/builtins/task/runtime/TaskActionInput.d.ts.map +1 -1
  288. package/bin/service/builtins/task/runtime/TaskActionInput.js +2 -141
  289. package/bin/service/builtins/task/runtime/TaskActionInput.js.map +1 -1
  290. package/bin/service/builtins/task/runtime/TaskRunChatDispatch.d.ts +1 -1
  291. package/bin/service/builtins/task/runtime/TaskRunChatDispatch.d.ts.map +1 -1
  292. package/bin/service/builtins/task/runtime/TaskRunnerRound.d.ts +1 -1
  293. package/bin/service/builtins/task/runtime/TaskRunnerRound.d.ts.map +1 -1
  294. package/bin/service/builtins/task/runtime/TaskRunnerScript.d.ts +1 -1
  295. package/bin/service/builtins/task/runtime/TaskRunnerScript.d.ts.map +1 -1
  296. package/bin/service/builtins/task/runtime/TaskRunnerSession.d.ts +1 -1
  297. package/bin/service/builtins/task/runtime/TaskRunnerSession.d.ts.map +1 -1
  298. package/bin/service/builtins/task/runtime/TaskServiceActions.d.ts +1 -1
  299. package/bin/service/builtins/task/runtime/TaskServiceActions.d.ts.map +1 -1
  300. package/bin/service/builtins/task/runtime/TaskServiceActions.js +2 -30
  301. package/bin/service/builtins/task/runtime/TaskServiceActions.js.map +1 -1
  302. package/bin/service/core/Manager.d.ts +0 -1
  303. package/bin/service/core/Manager.d.ts.map +1 -1
  304. package/bin/service/core/Manager.js +0 -1
  305. package/bin/service/core/Manager.js.map +1 -1
  306. package/bin/service/core/ServiceActionRunner.d.ts +1 -1
  307. package/bin/service/core/ServiceActionRunner.d.ts.map +1 -1
  308. package/bin/service/core/ServiceActionRunner.js +5 -3
  309. package/bin/service/core/ServiceActionRunner.js.map +1 -1
  310. package/bin/service/core/ServiceClassRegistry.d.ts +1 -1
  311. package/bin/service/core/ServiceClassRegistry.d.ts.map +1 -1
  312. package/bin/service/core/ServiceCommandRequest.d.ts +36 -0
  313. package/bin/service/core/ServiceCommandRequest.d.ts.map +1 -0
  314. package/bin/service/core/ServiceCommandRequest.js +53 -0
  315. package/bin/service/core/ServiceCommandRequest.js.map +1 -0
  316. package/bin/service/core/ServiceStateController.d.ts +20 -7
  317. package/bin/service/core/ServiceStateController.d.ts.map +1 -1
  318. package/bin/service/core/ServiceStateController.js +23 -20
  319. package/bin/service/core/ServiceStateController.js.map +1 -1
  320. package/bin/service/core/ServiceSystemProviders.d.ts +1 -1
  321. package/bin/service/core/ServiceSystemProviders.d.ts.map +1 -1
  322. package/bin/service/core/Services.d.ts +1 -1
  323. package/bin/service/core/Services.d.ts.map +1 -1
  324. package/bin/service/core/Services.js +2 -0
  325. package/bin/service/core/Services.js.map +1 -1
  326. package/bin/service/{schedule → core/schedule}/Executor.d.ts +2 -2
  327. package/bin/service/core/schedule/Executor.d.ts.map +1 -0
  328. package/bin/service/{schedule → core/schedule}/Executor.js +1 -1
  329. package/bin/service/core/schedule/Executor.js.map +1 -0
  330. package/bin/service/{schedule → core/schedule}/Store.d.ts +1 -1
  331. package/bin/service/core/schedule/Store.d.ts.map +1 -0
  332. package/bin/service/{schedule → core/schedule}/Store.js +2 -2
  333. package/bin/service/core/schedule/Store.js.map +1 -0
  334. package/bin/service/core/schedule/Time.d.ts.map +1 -0
  335. package/bin/service/core/schedule/Time.js.map +1 -0
  336. package/bin/service/types/Service.d.ts +2 -24
  337. package/bin/service/types/Service.d.ts.map +1 -1
  338. package/bin/service/types/Service.js +1 -1
  339. package/bin/session/composer/system/default/DefaultSessionSystemComposer.d.ts +1 -1
  340. package/bin/session/composer/system/default/DefaultSessionSystemComposer.d.ts.map +1 -1
  341. package/bin/session/composer/system/default/SystemDomain.d.ts +1 -1
  342. package/bin/session/composer/system/default/SystemDomain.d.ts.map +1 -1
  343. package/bin/session/tools/shell/ShellToolBridge.d.ts +1 -1
  344. package/bin/session/tools/shell/ShellToolBridge.d.ts.map +1 -1
  345. package/package.json +1 -1
  346. package/src/config/Config.ts +1 -1
  347. package/src/config/{DowncityDefault.ts → Defaults.ts} +11 -0
  348. package/src/{project/ProjectExecutionBinding.ts → config/ExecutionBinding.ts} +1 -1
  349. package/src/{runtime → core}/AgentContextTypes.ts +6 -7
  350. package/src/core/AgentCore.ts +527 -0
  351. package/src/{runtime/AgentRuntimeTypes.ts → core/AgentCoreTypes.ts} +6 -6
  352. package/src/host/daemon/ProjectSetup.ts +2 -3
  353. package/src/host/runtime/PluginRuntime.ts +1 -1
  354. package/src/index.ts +27 -24
  355. package/src/model/CreateModel.ts +1 -1
  356. package/src/plugin/builtins/asr/InboundAugment.ts +1 -1
  357. package/src/plugin/builtins/auth/runtime/AuthorizationConfig.ts +1 -1
  358. package/src/plugin/builtins/auth/runtime/AuthorizationStore.ts +1 -1
  359. package/src/plugin/builtins/voice/InboundAugment.ts +1 -1
  360. package/src/plugin/builtins/workboard/runtime/Collector.ts +2 -2
  361. package/src/plugin/builtins/workboard/runtime/Normalizer.ts +1 -1
  362. package/src/plugin/builtins/workboard/runtime/Store.ts +1 -1
  363. package/src/plugin/core/Activation.ts +2 -2
  364. package/src/plugin/core/HookRegistry.ts +1 -1
  365. package/src/plugin/core/HttpRoutes.ts +1 -1
  366. package/src/plugin/core/LocalExecution.ts +21 -20
  367. package/src/plugin/core/PluginRegistry.ts +1 -1
  368. package/src/plugin/types/Plugin.ts +1 -1
  369. package/src/project/AgentInitializer.ts +2 -2
  370. package/src/sandbox/SandboxConfigResolver.ts +1 -1
  371. package/src/sandbox/SandboxRunner.ts +1 -1
  372. package/src/sdk/Agent.ts +163 -391
  373. package/src/sdk/AgentSdkTypes.ts +158 -0
  374. package/src/sdk/RemoteAgent.ts +1 -1
  375. package/src/sdk/Session.ts +16 -6
  376. package/src/sdk/{SessionMetadata.ts → session/Metadata.ts} +1 -1
  377. package/src/sdk/{Paths.ts → session/Paths.ts} +1 -1
  378. package/src/sdk/{SessionPersistence.ts → session/Persistence.ts} +1 -1
  379. package/src/sdk/{SessionServicePort.ts → session/ServicePort.ts} +1 -1
  380. package/src/sdk/session/index.ts +34 -0
  381. package/src/server/http/Server.ts +63 -18
  382. package/src/server/http/control/AuthControlService.ts +1 -1
  383. package/src/server/http/control/ControlAuthorizationRoutes.ts +1 -1
  384. package/src/server/http/control/ControlRouter.ts +27 -11
  385. package/src/server/http/control/ExecuteBySession.ts +2 -2
  386. package/src/server/http/control/OverviewRoutes.ts +6 -2
  387. package/src/server/http/control/SessionSummaryStore.ts +1 -1
  388. package/src/server/http/control/types/ControlRoutes.ts +2 -2
  389. package/src/server/http/execute/execute.ts +107 -91
  390. package/src/server/http/plugins/plugins.ts +60 -44
  391. package/src/server/http/services/services.ts +68 -64
  392. package/src/server/http/static/static.ts +95 -79
  393. package/src/server/rpc/Server.ts +26 -15
  394. package/src/service/builtins/BaseService.ts +2 -2
  395. package/src/service/builtins/chat/Action.ts +1 -1
  396. package/src/service/builtins/chat/ChatService.ts +2 -2
  397. package/src/service/builtins/chat/ChatServiceTypes.ts +1 -1
  398. package/src/service/builtins/chat/channels/BaseChatChannel.ts +1 -1
  399. package/src/service/builtins/chat/channels/BaseChatChannelQueue.ts +1 -1
  400. package/src/service/builtins/chat/channels/BaseChatChannelSupport.ts +1 -1
  401. package/src/service/builtins/chat/channels/feishu/Feishu.ts +1 -1
  402. package/src/service/builtins/chat/channels/feishu/FeishuMessageHandler.ts +1 -1
  403. package/src/service/builtins/chat/channels/feishu/FeishuPlatformClient.ts +1 -1
  404. package/src/service/builtins/chat/channels/qq/QQ.ts +1 -1
  405. package/src/service/builtins/chat/channels/qq/QQMessageHandler.ts +1 -1
  406. package/src/service/builtins/chat/channels/qq/QQSupport.ts +1 -1
  407. package/src/service/builtins/chat/channels/telegram/Bot.ts +1 -1
  408. package/src/service/builtins/chat/channels/telegram/TelegramMessageHandler.ts +1 -1
  409. package/src/service/builtins/chat/channels/telegram/TelegramPlatformClient.ts +1 -1
  410. package/src/service/builtins/chat/runtime/ChannelContextStore.ts +1 -1
  411. package/src/service/builtins/chat/runtime/ChatActionExecution.ts +1 -1
  412. package/src/service/builtins/chat/runtime/ChatActionInput.ts +2 -158
  413. package/src/service/builtins/chat/runtime/ChatChannelActions.ts +1 -1
  414. package/src/service/builtins/chat/runtime/ChatChannelConfig.ts +1 -1
  415. package/src/service/builtins/chat/runtime/ChatChannelCore.ts +1 -1
  416. package/src/service/builtins/chat/runtime/ChatChannelLifecycle.ts +1 -1
  417. package/src/service/builtins/chat/runtime/ChatHistoryStore.ts +1 -1
  418. package/src/service/builtins/chat/runtime/ChatIngressStore.ts +1 -1
  419. package/src/service/builtins/chat/runtime/ChatMetaStore.ts +1 -1
  420. package/src/service/builtins/chat/runtime/ChatQueueReplyDispatch.ts +1 -1
  421. package/src/service/builtins/chat/runtime/ChatQueueSessionBridge.ts +1 -1
  422. package/src/service/builtins/chat/runtime/ChatQueueStore.ts +1 -1
  423. package/src/service/builtins/chat/runtime/ChatQueueWorker.ts +1 -1
  424. package/src/service/builtins/chat/runtime/ChatServiceActions.ts +1 -118
  425. package/src/service/builtins/chat/runtime/ChatServiceSystem.ts +1 -1
  426. package/src/service/builtins/chat/runtime/ChatSessionDelete.ts +1 -1
  427. package/src/service/builtins/chat/runtime/ChatkeySend.ts +1 -1
  428. package/src/service/builtins/chat/runtime/EnqueueDispatch.ts +1 -1
  429. package/src/service/builtins/chat/runtime/InboundAugment.ts +1 -1
  430. package/src/service/builtins/chat/runtime/PluginDispatch.ts +1 -1
  431. package/src/service/builtins/chat/runtime/ReplyDispatch.ts +1 -1
  432. package/src/service/builtins/chat/runtime/SystemPrompt.ts +1 -1
  433. package/src/service/builtins/contact/Action.ts +2 -59
  434. package/src/service/builtins/contact/ContactService.ts +2 -2
  435. package/src/service/builtins/contact/runtime/ChatRuntime.ts +1 -1
  436. package/src/service/builtins/contact/runtime/ContactPayload.ts +0 -12
  437. package/src/service/builtins/contact/runtime/RemoteClient.ts +40 -19
  438. package/src/service/builtins/contact/runtime/ShareBundle.ts +1 -1
  439. package/src/service/builtins/memory/Action.ts +1 -1
  440. package/src/service/builtins/memory/MemoryService.ts +1 -28
  441. package/src/service/builtins/memory/runtime/Flush.ts +1 -1
  442. package/src/service/builtins/memory/runtime/Search.ts +1 -1
  443. package/src/service/builtins/memory/runtime/Store.ts +1 -1
  444. package/src/service/builtins/memory/runtime/SystemProvider.ts +1 -1
  445. package/src/service/builtins/memory/runtime/Writer.ts +1 -1
  446. package/src/service/builtins/schedule/ScheduleService.ts +131 -0
  447. package/src/service/builtins/shell/ShellRuntimeTypes.ts +1 -1
  448. package/src/service/builtins/shell/ShellService.ts +2 -2
  449. package/src/service/builtins/shell/runtime/ShellActionResponse.ts +1 -1
  450. package/src/service/builtins/shell/runtime/ShellActionRuntime.ts +1 -1
  451. package/src/service/builtins/shell/runtime/ShellActionRuntimeSupport.ts +1 -1
  452. package/src/service/builtins/shell/runtime/ShellRuntimeEnvironment.ts +1 -1
  453. package/src/service/builtins/task/Action.ts +1 -1
  454. package/src/service/builtins/task/Scheduler.ts +1 -1
  455. package/src/service/builtins/task/TaskService.ts +2 -2
  456. package/src/service/builtins/task/runtime/CronRuntime.ts +1 -1
  457. package/src/service/builtins/task/runtime/Runner.ts +1 -1
  458. package/src/service/builtins/task/runtime/TaskActionExecution.ts +1 -1
  459. package/src/service/builtins/task/runtime/TaskActionInput.ts +3 -185
  460. package/src/service/builtins/task/runtime/TaskRunChatDispatch.ts +1 -1
  461. package/src/service/builtins/task/runtime/TaskRunnerRound.ts +1 -1
  462. package/src/service/builtins/task/runtime/TaskRunnerScript.ts +1 -1
  463. package/src/service/builtins/task/runtime/TaskRunnerSession.ts +1 -1
  464. package/src/service/builtins/task/runtime/TaskServiceActions.ts +1 -35
  465. package/src/service/core/Manager.ts +0 -1
  466. package/src/service/core/ServiceActionRunner.ts +6 -4
  467. package/src/service/core/ServiceClassRegistry.ts +1 -1
  468. package/src/service/core/ServiceCommandRequest.ts +93 -0
  469. package/src/service/core/ServiceStateController.ts +45 -20
  470. package/src/service/core/ServiceSystemProviders.ts +1 -1
  471. package/src/service/core/Services.ts +3 -1
  472. package/src/service/{schedule → core/schedule}/Executor.ts +2 -2
  473. package/src/service/{schedule → core/schedule}/Store.ts +4 -2
  474. package/src/service/types/Service.ts +2 -25
  475. package/src/session/composer/system/default/DefaultSessionSystemComposer.ts +1 -1
  476. package/src/session/composer/system/default/SystemDomain.ts +1 -1
  477. package/src/session/tools/shell/ShellToolBridge.ts +1 -1
  478. package/tsconfig.tsbuildinfo +1 -1
  479. package/bin/config/DowncityDefault.d.ts +0 -3
  480. package/bin/config/DowncityDefault.d.ts.map +0 -1
  481. package/bin/config/DowncityDefault.js.map +0 -1
  482. package/bin/project/ProjectExecutionBinding.d.ts.map +0 -1
  483. package/bin/project/ProjectExecutionBinding.js.map +0 -1
  484. package/bin/runtime/AgentContext.d.ts +0 -23
  485. package/bin/runtime/AgentContext.d.ts.map +0 -1
  486. package/bin/runtime/AgentContext.js +0 -149
  487. package/bin/runtime/AgentContext.js.map +0 -1
  488. package/bin/runtime/AgentContextTypes.d.ts.map +0 -1
  489. package/bin/runtime/AgentContextTypes.js.map +0 -1
  490. package/bin/runtime/AgentRuntime.d.ts +0 -37
  491. package/bin/runtime/AgentRuntime.d.ts.map +0 -1
  492. package/bin/runtime/AgentRuntime.js +0 -291
  493. package/bin/runtime/AgentRuntime.js.map +0 -1
  494. package/bin/runtime/AgentRuntimeState.d.ts +0 -42
  495. package/bin/runtime/AgentRuntimeState.d.ts.map +0 -1
  496. package/bin/runtime/AgentRuntimeState.js +0 -172
  497. package/bin/runtime/AgentRuntimeState.js.map +0 -1
  498. package/bin/runtime/AgentRuntimeTypes.d.ts.map +0 -1
  499. package/bin/runtime/AgentRuntimeTypes.js +0 -10
  500. package/bin/runtime/AgentRuntimeTypes.js.map +0 -1
  501. package/bin/sdk/HttpServer.d.ts +0 -40
  502. package/bin/sdk/HttpServer.d.ts.map +0 -1
  503. package/bin/sdk/HttpServer.js +0 -189
  504. package/bin/sdk/HttpServer.js.map +0 -1
  505. package/bin/sdk/Paths.d.ts.map +0 -1
  506. package/bin/sdk/Paths.js.map +0 -1
  507. package/bin/sdk/RpcServer.d.ts +0 -31
  508. package/bin/sdk/RpcServer.d.ts.map +0 -1
  509. package/bin/sdk/RpcServer.js +0 -207
  510. package/bin/sdk/RpcServer.js.map +0 -1
  511. package/bin/sdk/SessionMetadata.d.ts.map +0 -1
  512. package/bin/sdk/SessionMetadata.js.map +0 -1
  513. package/bin/sdk/SessionPersistence.d.ts.map +0 -1
  514. package/bin/sdk/SessionPersistence.js.map +0 -1
  515. package/bin/sdk/SessionServicePort.d.ts.map +0 -1
  516. package/bin/sdk/SessionServicePort.js.map +0 -1
  517. package/bin/service/core/ServiceActionApi.d.ts +0 -15
  518. package/bin/service/core/ServiceActionApi.d.ts.map +0 -1
  519. package/bin/service/core/ServiceActionApi.js +0 -234
  520. package/bin/service/core/ServiceActionApi.js.map +0 -1
  521. package/bin/service/core/ServiceManager.d.ts +0 -9
  522. package/bin/service/core/ServiceManager.d.ts.map +0 -1
  523. package/bin/service/core/ServiceManager.js +0 -9
  524. package/bin/service/core/ServiceManager.js.map +0 -1
  525. package/bin/service/schedule/Executor.d.ts.map +0 -1
  526. package/bin/service/schedule/Executor.js.map +0 -1
  527. package/bin/service/schedule/Runtime.d.ts +0 -17
  528. package/bin/service/schedule/Runtime.d.ts.map +0 -1
  529. package/bin/service/schedule/Runtime.js +0 -64
  530. package/bin/service/schedule/Runtime.js.map +0 -1
  531. package/bin/service/schedule/Store.d.ts.map +0 -1
  532. package/bin/service/schedule/Store.js.map +0 -1
  533. package/bin/service/schedule/Time.d.ts.map +0 -1
  534. package/bin/service/schedule/Time.js.map +0 -1
  535. package/src/runtime/AgentContext.ts +0 -182
  536. package/src/runtime/AgentRuntime.ts +0 -366
  537. package/src/runtime/AgentRuntimeState.ts +0 -213
  538. package/src/sdk/HttpServer.ts +0 -231
  539. package/src/sdk/RpcServer.ts +0 -244
  540. package/src/service/core/ServiceActionApi.ts +0 -304
  541. package/src/service/core/ServiceManager.ts +0 -20
  542. package/src/service/schedule/Runtime.ts +0 -78
  543. /package/bin/service/{schedule → core/schedule}/Time.d.ts +0 -0
  544. /package/bin/service/{schedule → core/schedule}/Time.js +0 -0
  545. /package/src/service/{schedule → core/schedule}/Time.ts +0 -0
@@ -7,49 +7,51 @@
7
7
  * 3. 提供 plugin action 桥接接口。
8
8
  */
9
9
  import { Hono } from "hono";
10
- import { getAgentContext } from "../../../runtime/AgentRuntime.js";
11
10
  /**
12
- * Plugin 路由。
11
+ * 创建 plugin 路由。
13
12
  */
14
- export const pluginsRouter = new Hono();
15
- pluginsRouter.get("/api/plugins/list", (c) => {
16
- return c.json({
17
- success: true,
18
- plugins: getAgentContext().plugins.list(),
13
+ export function createPluginsRouter(options) {
14
+ const router = new Hono();
15
+ router.get("/api/plugins/list", (c) => {
16
+ return c.json({
17
+ success: true,
18
+ plugins: options.getAgentContext().plugins.list(),
19
+ });
19
20
  });
20
- });
21
- pluginsRouter.post("/api/plugins/availability", async (c) => {
22
- const body = await c.req.json().catch(() => null);
23
- const pluginName = String(body?.pluginName || "").trim();
24
- if (!pluginName) {
25
- return c.json({ success: false, error: "pluginName is required" }, 400);
26
- }
27
- const availability = await getAgentContext().plugins.availability(pluginName);
28
- return c.json({
29
- success: true,
30
- pluginName,
31
- availability,
21
+ router.post("/api/plugins/availability", async (c) => {
22
+ const body = await c.req.json().catch(() => null);
23
+ const pluginName = String(body?.pluginName || "").trim();
24
+ if (!pluginName) {
25
+ return c.json({ success: false, error: "pluginName is required" }, 400);
26
+ }
27
+ const availability = await options.getAgentContext().plugins.availability(pluginName);
28
+ return c.json({
29
+ success: true,
30
+ pluginName,
31
+ availability,
32
+ });
32
33
  });
33
- });
34
- pluginsRouter.post("/api/plugins/action", async (c) => {
35
- const body = await c.req.json().catch(() => null);
36
- const pluginName = String(body?.pluginName || "").trim();
37
- const actionName = String(body?.actionName || "").trim();
38
- if (!pluginName) {
39
- return c.json({ success: false, error: "pluginName is required" }, 400);
40
- }
41
- if (!actionName) {
42
- return c.json({ success: false, error: "actionName is required" }, 400);
43
- }
44
- const result = await getAgentContext().plugins.runAction({
45
- plugin: pluginName,
46
- action: actionName,
47
- payload: body?.payload,
34
+ router.post("/api/plugins/action", async (c) => {
35
+ const body = await c.req.json().catch(() => null);
36
+ const pluginName = String(body?.pluginName || "").trim();
37
+ const actionName = String(body?.actionName || "").trim();
38
+ if (!pluginName) {
39
+ return c.json({ success: false, error: "pluginName is required" }, 400);
40
+ }
41
+ if (!actionName) {
42
+ return c.json({ success: false, error: "actionName is required" }, 400);
43
+ }
44
+ const result = await options.getAgentContext().plugins.runAction({
45
+ plugin: pluginName,
46
+ action: actionName,
47
+ payload: body?.payload,
48
+ });
49
+ return c.json({
50
+ ...result,
51
+ pluginName,
52
+ actionName,
53
+ }, result.success ? 200 : 400);
48
54
  });
49
- return c.json({
50
- ...result,
51
- pluginName,
52
- actionName,
53
- }, result.success ? 200 : 400);
54
- });
55
+ return router;
56
+ }
55
57
  //# sourceMappingURL=plugins.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../../../src/server/http/plugins/plugins.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,IAAI,EAAE,CAAC;AAExC,aAAa,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE;IAC3C,OAAO,CAAC,CAAC,IAAI,CAAC;QACZ,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,eAAe,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE;KAC1C,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,aAAa,CAAC,IAAI,CAAC,2BAA2B,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAEzD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,GAAG,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,YAAY,GAChB,MAAM,eAAe,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC3D,OAAO,CAAC,CAAC,IAAI,CAAC;QACZ,OAAO,EAAE,IAAI;QACb,UAAU;QACV,YAAY;KACb,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,aAAa,CAAC,IAAI,CAAC,qBAAqB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACpD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACzD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAEzD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,GAAG,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,GAAG,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,eAAe,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;QACvD,MAAM,EAAE,UAAU;QAClB,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE,IAAI,EAAE,OAAO;KACvB,CAAC,CAAC;IACH,OAAO,CAAC,CAAC,IAAI,CACX;QACE,GAAG,MAAM;QACT,UAAU;QACV,UAAU;KACX,EACD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAC3B,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../../../src/server/http/plugins/plugins.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAa5B;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,OAA6B;IAE7B,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;IAE1B,MAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE;QACpC,OAAO,CAAC,CAAC,IAAI,CAAC;YACZ,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE;SAClD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACnD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAEzD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1E,CAAC;QAED,MAAM,YAAY,GAChB,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACnE,OAAO,CAAC,CAAC,IAAI,CAAC;YACZ,OAAO,EAAE,IAAI;YACb,UAAU;YACV,YAAY;SACb,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACzD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAEzD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1E,CAAC;QACD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1E,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;YAC/D,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,UAAU;YAClB,OAAO,EAAE,IAAI,EAAE,OAAO;SACvB,CAAC,CAAC;QACH,OAAO,CAAC,CAAC,IAAI,CACX;YACE,GAAG,MAAM;YACT,UAAU;YACV,UAAU;SACX,EACD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAC3B,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -4,18 +4,22 @@
4
4
  * 职责说明:
5
5
  * 1. 提供 service 状态列表接口。
6
6
  * 2. 提供 service lifecycle 控制接口。
7
- * 3. 提供 service command 桥接,并挂载各 service 自身路由。
7
+ * 3. 提供统一 service command 桥接。
8
8
  */
9
9
  import { Hono } from "hono";
10
+ import type { AgentContext } from "../../../core/AgentContextTypes.js";
10
11
  /**
11
- * Service 路由。
12
+ * Service 路由参数。
12
13
  */
13
- export declare const servicesRouter: Hono<import("hono/types").BlankEnv, import("hono/types").BlankSchema, "/">;
14
+ type ServicesRouterOptions = {
15
+ /**
16
+ * 读取当前 agent 执行上下文。
17
+ */
18
+ getAgentContext: () => AgentContext;
19
+ };
14
20
  /**
15
- * 确保 service action API 路由只注册一次。
16
- *
17
- * 关键点(中文)
18
- * - 延迟到 server 启动阶段再注册,避免 `city agent create` 等无需执行上下文的命令在 import 时触发初始化错误。
21
+ * 创建 service 路由。
19
22
  */
20
- export declare function ensureServiceActionRoutesRegistered(): void;
23
+ export declare function createServicesRouter(options: ServicesRouterOptions): Hono;
24
+ export {};
21
25
  //# sourceMappingURL=services.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../../src/server/http/services/services.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAU5B;;GAEG;AACH,eAAO,MAAM,cAAc,4EAAa,CAAC;AA6DzC;;;;;GAKG;AACH,wBAAgB,mCAAmC,IAAI,IAAI,CAI1D"}
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../../src/server/http/services/services.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAO5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAGhE;;GAEG;AACH,KAAK,qBAAqB,GAAG;IAC3B;;OAEG;IACH,eAAe,EAAE,MAAM,YAAY,CAAC;CACrC,CAAC;AAEF;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,qBAAqB,GAC7B,IAAI,CA+DN"}
@@ -4,76 +4,69 @@
4
4
  * 职责说明:
5
5
  * 1. 提供 service 状态列表接口。
6
6
  * 2. 提供 service lifecycle 控制接口。
7
- * 3. 提供 service command 桥接,并挂载各 service 自身路由。
7
+ * 3. 提供统一 service command 桥接。
8
8
  */
9
9
  import { Hono } from "hono";
10
- import { controlServiceState, listServiceStates, registerAllServicesForServer, runServiceCommand, } from "../../../service/core/Manager.js";
11
- import { getAgentContext } from "../../../runtime/AgentRuntime.js";
10
+ import { controlServiceState, listServiceStates, runServiceCommand, } from "../../../service/core/Manager.js";
11
+ import { parseServiceCommandRequestBody } from "../../../service/core/ServiceCommandRequest.js";
12
12
  /**
13
- * Service 路由。
13
+ * 创建 service 路由。
14
14
  */
15
- export const servicesRouter = new Hono();
16
- let serviceActionRoutesRegistered = false;
17
- servicesRouter.get("/api/services/list", (c) => {
18
- return c.json({
19
- success: true,
20
- services: listServiceStates(),
15
+ export function createServicesRouter(options) {
16
+ const router = new Hono();
17
+ router.get("/api/services/list", (c) => {
18
+ const context = options.getAgentContext();
19
+ return c.json({
20
+ success: true,
21
+ services: listServiceStates({ context }),
22
+ });
21
23
  });
22
- });
23
- servicesRouter.post("/api/services/control", async (c) => {
24
- const body = await c.req.json().catch(() => null);
25
- const serviceName = String(body?.serviceName || "").trim();
26
- const action = String(body?.action || "")
27
- .trim()
28
- .toLowerCase();
29
- if (!serviceName) {
30
- return c.json({ success: false, error: "serviceName is required" }, 400);
31
- }
32
- if (!action) {
33
- return c.json({ success: false, error: "action is required" }, 400);
34
- }
35
- if (!["start", "stop", "restart", "status"].includes(action)) {
36
- return c.json({ success: false, error: "invalid action" }, 400);
37
- }
38
- const result = await controlServiceState({
39
- serviceName,
40
- action: action,
41
- context: getAgentContext(),
24
+ router.post("/api/services/control", async (c) => {
25
+ const body = await c.req.json().catch(() => null);
26
+ const serviceName = String(body?.serviceName || "").trim();
27
+ const action = String(body?.action || "")
28
+ .trim()
29
+ .toLowerCase();
30
+ if (!serviceName) {
31
+ return c.json({ success: false, error: "serviceName is required" }, 400);
32
+ }
33
+ if (!action) {
34
+ return c.json({ success: false, error: "action is required" }, 400);
35
+ }
36
+ if (!["start", "stop", "restart", "status"].includes(action)) {
37
+ return c.json({ success: false, error: "invalid action" }, 400);
38
+ }
39
+ const result = await controlServiceState({
40
+ serviceName,
41
+ action: action,
42
+ context: options.getAgentContext(),
43
+ });
44
+ return c.json(result, result.success ? 200 : 400);
42
45
  });
43
- return c.json(result, result.success ? 200 : 400);
44
- });
45
- servicesRouter.post("/api/services/command", async (c) => {
46
- const body = await c.req.json().catch(() => null);
47
- const serviceName = String(body?.serviceName || "").trim();
48
- const command = String(body?.command || "").trim();
49
- const schedule = body?.schedule && typeof body.schedule === "object" && !Array.isArray(body.schedule)
50
- ? body.schedule
51
- : undefined;
52
- if (!serviceName) {
53
- return c.json({ success: false, error: "serviceName is required" }, 400);
54
- }
55
- if (!command) {
56
- return c.json({ success: false, error: "command is required" }, 400);
57
- }
58
- const result = await runServiceCommand({
59
- serviceName,
60
- command,
61
- payload: body?.payload,
62
- schedule,
63
- context: getAgentContext(),
46
+ router.post("/api/services/command", async (c) => {
47
+ const body = await c.req.json().catch(() => null);
48
+ let requestBody;
49
+ try {
50
+ requestBody = parseServiceCommandRequestBody(body);
51
+ }
52
+ catch (error) {
53
+ return c.json({ success: false, error: String(error) }, 400);
54
+ }
55
+ if (!requestBody.serviceName) {
56
+ return c.json({ success: false, error: "serviceName is required" }, 400);
57
+ }
58
+ if (!requestBody.command) {
59
+ return c.json({ success: false, error: "command is required" }, 400);
60
+ }
61
+ const result = await runServiceCommand({
62
+ serviceName: requestBody.serviceName,
63
+ command: requestBody.command,
64
+ payload: requestBody.payload,
65
+ schedule: requestBody.schedule,
66
+ context: options.getAgentContext(),
67
+ });
68
+ return c.json(result, result.success ? 200 : 400);
64
69
  });
65
- return c.json(result, result.success ? 200 : 400);
66
- });
67
- /**
68
- * 确保 service action API 路由只注册一次。
69
- *
70
- * 关键点(中文)
71
- * - 延迟到 server 启动阶段再注册,避免 `city agent create` 等无需执行上下文的命令在 import 时触发初始化错误。
72
- */
73
- export function ensureServiceActionRoutesRegistered() {
74
- if (serviceActionRoutesRegistered)
75
- return;
76
- registerAllServicesForServer(servicesRouter, getAgentContext());
77
- serviceActionRoutesRegistered = true;
70
+ return router;
78
71
  }
79
72
  //# sourceMappingURL=services.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"services.js","sourceRoot":"","sources":["../../../../src/server/http/services/services.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"services.js","sourceRoot":"","sources":["../../../../src/server/http/services/services.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,19 @@
7
7
  * 3. 只处理静态资源协议,不承载业务逻辑。
8
8
  */
9
9
  import { Hono } from "hono";
10
+ import type { AgentRuntime } from "../../../core/AgentCoreTypes.js";
10
11
  /**
11
- * 静态资源路由。
12
+ * 静态资源路由参数。
12
13
  */
13
- export declare const staticRouter: Hono<import("hono/types").BlankEnv, import("hono/types").BlankSchema, "/">;
14
+ type StaticRouterOptions = {
15
+ /**
16
+ * 读取当前 agent runtime。
17
+ */
18
+ getAgentRuntime: () => AgentRuntime;
19
+ };
20
+ /**
21
+ * 创建静态资源路由。
22
+ */
23
+ export declare function createStaticRouter(options: StaticRouterOptions): Hono;
24
+ export {};
14
25
  //# sourceMappingURL=static.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"static.d.ts","sourceRoot":"","sources":["../../../../src/server/http/static/static.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAM5B;;GAEG;AACH,eAAO,MAAM,YAAY,4EAAa,CAAC"}
1
+ {"version":3,"file":"static.d.ts","sourceRoot":"","sources":["../../../../src/server/http/static/static.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAI5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D;;GAEG;AACH,KAAK,mBAAmB,GAAG;IACzB;;OAEG;IACH,eAAe,EAAE,MAAM,YAAY,CAAC;CACrC,CAAC;AAEF;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,mBAAmB,GAC3B,IAAI,CAyFN"}
@@ -10,88 +10,90 @@ import { Hono } from "hono";
10
10
  import fs from "fs-extra";
11
11
  import path from "path";
12
12
  import { getDowncityPublicDirPath } from "../../../config/Paths.js";
13
- import { getAgentRuntime } from "../../../runtime/AgentRuntime.js";
14
13
  /**
15
- * 静态资源路由。
14
+ * 创建静态资源路由。
16
15
  */
17
- export const staticRouter = new Hono();
18
- staticRouter.get("/", async (c) => {
19
- const indexPath = path.join(getAgentRuntime().rootPath, "public", "index.html");
20
- if (await fs.pathExists(indexPath)) {
21
- const content = await fs.readFile(indexPath, "utf-8");
22
- return c.body(content, 200, {
23
- "Content-Type": "text/html; charset=utf-8",
24
- "Cache-Control": "no-cache",
25
- });
26
- }
27
- return c.text("Downcity Agent Server", 200);
28
- });
29
- staticRouter.get("/styles.css", async (c) => {
30
- const cssPath = path.join(getAgentRuntime().rootPath, "public", "styles.css");
31
- if (await fs.pathExists(cssPath)) {
32
- const content = await fs.readFile(cssPath, "utf-8");
33
- return c.body(content, 200, {
34
- "Content-Type": "text/css; charset=utf-8",
35
- "Cache-Control": "no-cache",
36
- });
37
- }
38
- return c.text("Not Found", 404);
39
- });
40
- staticRouter.get("/app.js", async (c) => {
41
- const jsPath = path.join(getAgentRuntime().rootPath, "public", "app.js");
42
- if (await fs.pathExists(jsPath)) {
43
- const content = await fs.readFile(jsPath, "utf-8");
44
- return c.body(content, 200, {
45
- "Content-Type": "application/javascript; charset=utf-8",
46
- "Cache-Control": "no-cache",
47
- });
48
- }
49
- return c.text("Not Found", 404);
50
- });
51
- staticRouter.get("/downcity/public/*", async (c) => {
52
- const root = getDowncityPublicDirPath(getAgentRuntime().rootPath);
53
- const prefix = "/downcity/public/";
54
- const requestPath = c.req.path;
55
- const rel = requestPath.startsWith(prefix)
56
- ? requestPath.slice(prefix.length)
57
- : "";
58
- if (!rel)
16
+ export function createStaticRouter(options) {
17
+ const router = new Hono();
18
+ router.get("/", async (c) => {
19
+ const indexPath = path.join(options.getAgentRuntime().rootPath, "public", "index.html");
20
+ if (await fs.pathExists(indexPath)) {
21
+ const content = await fs.readFile(indexPath, "utf-8");
22
+ return c.body(content, 200, {
23
+ "Content-Type": "text/html; charset=utf-8",
24
+ "Cache-Control": "no-cache",
25
+ });
26
+ }
27
+ return c.text("Downcity Agent Server", 200);
28
+ });
29
+ router.get("/styles.css", async (c) => {
30
+ const cssPath = path.join(options.getAgentRuntime().rootPath, "public", "styles.css");
31
+ if (await fs.pathExists(cssPath)) {
32
+ const content = await fs.readFile(cssPath, "utf-8");
33
+ return c.body(content, 200, {
34
+ "Content-Type": "text/css; charset=utf-8",
35
+ "Cache-Control": "no-cache",
36
+ });
37
+ }
59
38
  return c.text("Not Found", 404);
60
- const full = path.resolve(root, rel);
61
- const rootResolved = path.resolve(root);
62
- if (full !== rootResolved && !full.startsWith(rootResolved + path.sep)) {
63
- return c.text("Forbidden", 403);
64
- }
65
- try {
66
- const stat = await fs.stat(full);
67
- if (!stat.isFile())
68
- return c.text("Not Found", 404);
69
- }
70
- catch {
39
+ });
40
+ router.get("/app.js", async (c) => {
41
+ const jsPath = path.join(options.getAgentRuntime().rootPath, "public", "app.js");
42
+ if (await fs.pathExists(jsPath)) {
43
+ const content = await fs.readFile(jsPath, "utf-8");
44
+ return c.body(content, 200, {
45
+ "Content-Type": "application/javascript; charset=utf-8",
46
+ "Cache-Control": "no-cache",
47
+ });
48
+ }
71
49
  return c.text("Not Found", 404);
72
- }
73
- const ext = path.extname(full).toLowerCase();
74
- const contentType = ext === ".html"
75
- ? "text/html; charset=utf-8"
76
- : ext === ".css"
77
- ? "text/css; charset=utf-8"
78
- : ext === ".js"
79
- ? "application/javascript; charset=utf-8"
80
- : ext === ".json"
81
- ? "application/json; charset=utf-8"
82
- : ext === ".txt" || ext === ".md"
83
- ? "text/plain; charset=utf-8"
84
- : ext === ".pdf"
85
- ? "application/pdf"
86
- : ext === ".png"
87
- ? "image/png"
88
- : ext === ".jpg" || ext === ".jpeg"
89
- ? "image/jpeg"
90
- : "application/octet-stream";
91
- const buf = await fs.readFile(full);
92
- return c.body(buf, 200, {
93
- "Content-Type": contentType,
94
- "Cache-Control": "no-cache",
95
50
  });
96
- });
51
+ router.get("/downcity/public/*", async (c) => {
52
+ const root = getDowncityPublicDirPath(options.getAgentRuntime().rootPath);
53
+ const prefix = "/downcity/public/";
54
+ const requestPath = c.req.path;
55
+ const rel = requestPath.startsWith(prefix)
56
+ ? requestPath.slice(prefix.length)
57
+ : "";
58
+ if (!rel)
59
+ return c.text("Not Found", 404);
60
+ const full = path.resolve(root, rel);
61
+ const rootResolved = path.resolve(root);
62
+ if (full !== rootResolved && !full.startsWith(rootResolved + path.sep)) {
63
+ return c.text("Forbidden", 403);
64
+ }
65
+ try {
66
+ const stat = await fs.stat(full);
67
+ if (!stat.isFile())
68
+ return c.text("Not Found", 404);
69
+ }
70
+ catch {
71
+ return c.text("Not Found", 404);
72
+ }
73
+ const ext = path.extname(full).toLowerCase();
74
+ const contentType = ext === ".html"
75
+ ? "text/html; charset=utf-8"
76
+ : ext === ".css"
77
+ ? "text/css; charset=utf-8"
78
+ : ext === ".js"
79
+ ? "application/javascript; charset=utf-8"
80
+ : ext === ".json"
81
+ ? "application/json; charset=utf-8"
82
+ : ext === ".txt" || ext === ".md"
83
+ ? "text/plain; charset=utf-8"
84
+ : ext === ".pdf"
85
+ ? "application/pdf"
86
+ : ext === ".png"
87
+ ? "image/png"
88
+ : ext === ".jpg" || ext === ".jpeg"
89
+ ? "image/jpeg"
90
+ : "application/octet-stream";
91
+ const buf = await fs.readFile(full);
92
+ return c.body(buf, 200, {
93
+ "Content-Type": contentType,
94
+ "Cache-Control": "no-cache",
95
+ });
96
+ });
97
+ return router;
98
+ }
97
99
  //# sourceMappingURL=static.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"static.js","sourceRoot":"","sources":["../../../../src/server/http/static/static.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"static.js","sourceRoot":"","sources":["../../../../src/server/http/static/static.ts"],"names":[],"mappings":"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"}
@@ -5,14 +5,16 @@
5
5
  * - 只服务本地受信任进程,不暴露 HTTP 协议。
6
6
  * - 这里承接本机 CLI 访问 agent runtime 的 IPC 路由,并与 HTTP 能力保持语义一致。
7
7
  */
8
- import type { AgentRuntime } from "../../runtime/AgentRuntimeTypes.js";
9
- import type { AgentContext } from "../../runtime/AgentContextTypes.js";
8
+ import type { AgentRuntime } from "../../core/AgentCoreTypes.js";
9
+ import type { AgentContext } from "../../core/AgentContextTypes.js";
10
+ import type { AgentCore } from "../../core/AgentCore.js";
10
11
  import type { LocalRpcServerHandle } from "../../types/rpc/LocalRpc.js";
11
12
  /**
12
13
  * 启动本地 RPC server。
13
14
  */
14
15
  export declare function startLocalRpcServer(params: {
15
- context: AgentContext;
16
+ context?: AgentContext;
16
17
  runtime?: AgentRuntime;
18
+ core?: Pick<AgentCore, "getContext" | "getRuntime">;
17
19
  }): Promise<LocalRpcServerHandle>;
18
20
  //# sourceMappingURL=Server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Server.d.ts","sourceRoot":"","sources":["../../../src/server/rpc/Server.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAEnE,OAAO,KAAK,EAAqC,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AA2VvG;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE;IAChD,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,YAAY,CAAC;CACxB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA2BhC"}
1
+ {"version":3,"file":"Server.d.ts","sourceRoot":"","sources":["../../../src/server/rpc/Server.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,KAAK,EAAqC,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AA+VvG;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE;IAChD,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,IAAI,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,YAAY,GAAG,YAAY,CAAC,CAAC;CACrD,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAgChC"}
@@ -10,6 +10,7 @@ import net from "node:net";
10
10
  import path from "node:path";
11
11
  import { listServiceStates, controlServiceState } from "../../service/core/ServiceStateController.js";
12
12
  import { runServiceCommand } from "../../service/core/ServiceActionRunner.js";
13
+ import { parseServiceCommandRequestBody } from "../../service/core/ServiceCommandRequest.js";
13
14
  import { executeBySessionId } from "../../server/http/control/ExecuteBySession.js";
14
15
  import { getLocalRpcEndpoint } from "../../transport/rpc/Paths.js";
15
16
  async function isSocketEndpointActive(endpoint) {
@@ -68,17 +69,21 @@ async function handleServiceControl(params) {
68
69
  return createSuccessResponse(params.requestId, payload);
69
70
  }
70
71
  async function handleServiceCommand(params) {
71
- const body = isObjectRecord(params.body) ? params.body : {};
72
- const serviceName = String(body.serviceName || "").trim();
73
- const command = String(body.command || "").trim();
74
- if (!serviceName || !command) {
72
+ let body;
73
+ try {
74
+ body = parseServiceCommandRequestBody(params.body);
75
+ }
76
+ catch (error) {
77
+ return createErrorResponse(params.requestId, 400, String(error));
78
+ }
79
+ if (!body.serviceName || !body.command) {
75
80
  return createErrorResponse(params.requestId, 400, "serviceName and command are required");
76
81
  }
77
82
  const result = await runServiceCommand({
78
- serviceName,
79
- command,
80
- payload: (body.payload ?? {}),
81
- ...(body.schedule !== undefined ? { schedule: body.schedule } : {}),
83
+ serviceName: body.serviceName,
84
+ command: body.command,
85
+ payload: body.payload,
86
+ schedule: body.schedule,
82
87
  context: params.context,
83
88
  });
84
89
  const payload = {
@@ -178,7 +183,7 @@ async function dispatchRequest(params) {
178
183
  if (request.method === "GET" && request.path === "/api/services/list") {
179
184
  const payload = {
180
185
  success: true,
181
- services: listServiceStates(),
186
+ services: listServiceStates({ context: params.context }),
182
187
  };
183
188
  return createSuccessResponse(request.requestId, payload);
184
189
  }
@@ -280,13 +285,18 @@ function bindConnectionHandler(params) {
280
285
  * 启动本地 RPC server。
281
286
  */
282
287
  export async function startLocalRpcServer(params) {
283
- const endpoint = getLocalRpcEndpoint(params.context.rootPath);
288
+ const context = params.context || params.core?.getContext();
289
+ if (!context) {
290
+ throw new Error("startLocalRpcServer requires a context or core");
291
+ }
292
+ const runtime = params.runtime || params.core?.getRuntime();
293
+ const endpoint = getLocalRpcEndpoint(context.rootPath);
284
294
  await ensureEndpointReady(endpoint);
285
295
  const server = net.createServer();
286
296
  bindConnectionHandler({
287
297
  server,
288
- context: params.context,
289
- runtime: params.runtime,
298
+ context,
299
+ runtime,
290
300
  });
291
301
  await new Promise((resolve, reject) => {
292
302
  server.once("error", reject);