@downcity/agent 1.1.237 → 1.1.258

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 (578) hide show
  1. package/README.md +21 -20
  2. package/bin/agent/{local/Agent.d.ts → Agent.d.ts} +37 -27
  3. package/bin/agent/Agent.d.ts.map +1 -0
  4. package/bin/agent/Agent.js +211 -0
  5. package/bin/agent/Agent.js.map +1 -0
  6. package/bin/agent/AgentContext.d.ts +64 -0
  7. package/bin/agent/AgentContext.d.ts.map +1 -0
  8. package/bin/agent/AgentContext.js +53 -0
  9. package/bin/agent/AgentContext.js.map +1 -0
  10. package/bin/agent/{local/AgentInstructions.d.ts → AgentInstructions.d.ts} +1 -6
  11. package/bin/agent/AgentInstructions.d.ts.map +1 -0
  12. package/bin/agent/{local/AgentInstructions.js → AgentInstructions.js} +1 -10
  13. package/bin/agent/AgentInstructions.js.map +1 -0
  14. package/bin/{model/CityModelAdapter.d.ts → agent/AgentModel.d.ts} +3 -3
  15. package/bin/agent/AgentModel.d.ts.map +1 -0
  16. package/bin/{model/CityModelAdapter.js → agent/AgentModel.js} +11 -4
  17. package/bin/agent/AgentModel.js.map +1 -0
  18. package/bin/agent/{local/services/AgentSessions.d.ts → AgentSessions.d.ts} +30 -40
  19. package/bin/agent/AgentSessions.d.ts.map +1 -0
  20. package/bin/agent/{local/services/AgentSessions.js → AgentSessions.js} +62 -79
  21. package/bin/agent/AgentSessions.js.map +1 -0
  22. package/bin/agent/AgentState.d.ts +64 -0
  23. package/bin/agent/AgentState.d.ts.map +1 -0
  24. package/bin/agent/AgentState.js +118 -0
  25. package/bin/agent/AgentState.js.map +1 -0
  26. package/bin/config/Paths.d.ts +0 -43
  27. package/bin/config/Paths.d.ts.map +1 -1
  28. package/bin/config/Paths.js +0 -79
  29. package/bin/config/Paths.js.map +1 -1
  30. package/bin/config/ProjectSetup.d.ts.map +1 -0
  31. package/bin/{agent/local → config}/ProjectSetup.js +1 -1
  32. package/bin/config/ProjectSetup.js.map +1 -0
  33. package/bin/executor/Executor.d.ts +20 -86
  34. package/bin/executor/Executor.d.ts.map +1 -1
  35. package/bin/executor/Executor.js +109 -260
  36. package/bin/executor/Executor.js.map +1 -1
  37. package/bin/executor/composer/system/default/DefaultSessionSystemComposer.d.ts +1 -1
  38. package/bin/executor/composer/system/default/DefaultSessionSystemComposer.d.ts.map +1 -1
  39. package/bin/executor/composer/system/default/SystemDomain.d.ts +1 -1
  40. package/bin/executor/composer/system/default/SystemDomain.d.ts.map +1 -1
  41. package/bin/executor/composer/system/default/SystemDomain.js +4 -1
  42. package/bin/executor/composer/system/default/SystemDomain.js.map +1 -1
  43. package/bin/executor/composer/system/default/assets/core.prompt.d.ts +1 -1
  44. package/bin/executor/composer/system/default/assets/core.prompt.d.ts.map +1 -1
  45. package/bin/executor/composer/system/default/assets/core.prompt.js +1 -1
  46. package/bin/executor/composer/system/default/assets/core.prompt.js.map +1 -1
  47. package/bin/executor/core-engine/CoreEngineRunner.d.ts +7 -13
  48. package/bin/executor/core-engine/CoreEngineRunner.d.ts.map +1 -1
  49. package/bin/executor/core-engine/CoreEngineRunner.js +81 -34
  50. package/bin/executor/core-engine/CoreEngineRunner.js.map +1 -1
  51. package/bin/executor/services/ExecutorRecoveryPolicy.d.ts +6 -12
  52. package/bin/executor/services/ExecutorRecoveryPolicy.d.ts.map +1 -1
  53. package/bin/executor/services/ExecutorRecoveryPolicy.js +20 -6
  54. package/bin/executor/services/ExecutorRecoveryPolicy.js.map +1 -1
  55. package/bin/executor/tools/file/ReadImageToolBridge.d.ts +21 -0
  56. package/bin/executor/tools/file/ReadImageToolBridge.d.ts.map +1 -0
  57. package/bin/executor/tools/file/ReadImageToolBridge.js +69 -0
  58. package/bin/executor/tools/file/ReadImageToolBridge.js.map +1 -0
  59. package/bin/executor/tools/plugin/PluginToolBridge.d.ts.map +1 -1
  60. package/bin/executor/tools/plugin/PluginToolBridge.js +6 -5
  61. package/bin/executor/tools/plugin/PluginToolBridge.js.map +1 -1
  62. package/bin/executor/tools/plugin/PluginToolDefinition.d.ts.map +1 -1
  63. package/bin/executor/tools/plugin/PluginToolDefinition.js +15 -2
  64. package/bin/executor/tools/plugin/PluginToolDefinition.js.map +1 -1
  65. package/bin/executor/types/SessionHistoryMeta.d.ts +0 -2
  66. package/bin/executor/types/SessionHistoryMeta.d.ts.map +1 -1
  67. package/bin/index.d.ts +17 -21
  68. package/bin/index.d.ts.map +1 -1
  69. package/bin/index.js +9 -11
  70. package/bin/index.js.map +1 -1
  71. package/bin/plugin/core/ActionScheduleExecutor.d.ts +1 -1
  72. package/bin/plugin/core/ActionScheduleExecutor.d.ts.map +1 -1
  73. package/bin/plugin/core/ActionScheduleRuntime.d.ts +1 -1
  74. package/bin/plugin/core/ActionScheduleRuntime.d.ts.map +1 -1
  75. package/bin/plugin/core/BasePlugin.d.ts +4 -3
  76. package/bin/plugin/core/BasePlugin.d.ts.map +1 -1
  77. package/bin/plugin/core/BasePlugin.js.map +1 -1
  78. package/bin/plugin/core/HookRegistry.d.ts +5 -8
  79. package/bin/plugin/core/HookRegistry.d.ts.map +1 -1
  80. package/bin/plugin/core/HookRegistry.js +12 -12
  81. package/bin/plugin/core/HookRegistry.js.map +1 -1
  82. package/bin/plugin/core/PluginActionFactory.d.ts +6 -3
  83. package/bin/plugin/core/PluginActionFactory.d.ts.map +1 -1
  84. package/bin/plugin/core/PluginActionFactory.js.map +1 -1
  85. package/bin/plugin/core/PluginActionRunner.d.ts +1 -1
  86. package/bin/plugin/core/PluginActionRunner.d.ts.map +1 -1
  87. package/bin/plugin/core/PluginCatalog.d.ts +1 -1
  88. package/bin/plugin/core/PluginCatalog.d.ts.map +1 -1
  89. package/bin/plugin/core/PluginHttpRoutes.d.ts +1 -1
  90. package/bin/plugin/core/PluginHttpRoutes.d.ts.map +1 -1
  91. package/bin/plugin/core/PluginLocalExecution.d.ts +4 -5
  92. package/bin/plugin/core/PluginLocalExecution.d.ts.map +1 -1
  93. package/bin/plugin/core/PluginLocalExecution.js +4 -12
  94. package/bin/plugin/core/PluginLocalExecution.js.map +1 -1
  95. package/bin/plugin/core/PluginRegistry.d.ts +16 -12
  96. package/bin/plugin/core/PluginRegistry.d.ts.map +1 -1
  97. package/bin/plugin/core/PluginRegistry.js +43 -22
  98. package/bin/plugin/core/PluginRegistry.js.map +1 -1
  99. package/bin/plugin/core/PluginStateController.d.ts +1 -1
  100. package/bin/plugin/core/PluginStateController.d.ts.map +1 -1
  101. package/bin/{agent/remote → remote}/RemoteAgent.d.ts +4 -4
  102. package/bin/remote/RemoteAgent.d.ts.map +1 -0
  103. package/bin/{agent/remote → remote}/RemoteAgent.js +3 -3
  104. package/bin/remote/RemoteAgent.js.map +1 -0
  105. package/bin/{agent/remote → remote}/RemoteSession.d.ts +9 -11
  106. package/bin/remote/RemoteSession.d.ts.map +1 -0
  107. package/bin/{agent/remote → remote}/RemoteSession.js +3 -33
  108. package/bin/remote/RemoteSession.js.map +1 -0
  109. package/bin/{agent/remote → remote}/RemoteTransport.d.ts +7 -9
  110. package/bin/remote/RemoteTransport.d.ts.map +1 -0
  111. package/bin/remote/RemoteTransport.js.map +1 -0
  112. package/bin/{agent/remote → remote}/TransportFactory.d.ts +1 -1
  113. package/bin/remote/TransportFactory.d.ts.map +1 -0
  114. package/bin/{agent/remote → remote}/TransportFactory.js +2 -2
  115. package/bin/remote/TransportFactory.js.map +1 -0
  116. package/bin/{agent/remote → remote}/transports/HttpRemoteAgentTransport.d.ts +8 -9
  117. package/bin/remote/transports/HttpRemoteAgentTransport.d.ts.map +1 -0
  118. package/bin/{agent/remote → remote}/transports/HttpRemoteAgentTransport.js +0 -13
  119. package/bin/remote/transports/HttpRemoteAgentTransport.js.map +1 -0
  120. package/bin/{rpc/Client.d.ts → remote/transports/RpcClient.d.ts} +15 -22
  121. package/bin/remote/transports/RpcClient.d.ts.map +1 -0
  122. package/bin/{rpc/Client.js → remote/transports/RpcClient.js} +2 -13
  123. package/bin/remote/transports/RpcClient.js.map +1 -0
  124. package/bin/{agent/remote → remote}/transports/RpcRemoteAgentTransport.d.ts +8 -9
  125. package/bin/remote/transports/RpcRemoteAgentTransport.d.ts.map +1 -0
  126. package/bin/{agent/remote → remote}/transports/RpcRemoteAgentTransport.js +1 -4
  127. package/bin/remote/transports/RpcRemoteAgentTransport.js.map +1 -0
  128. package/bin/session/DefaultSessionComposer.d.ts +18 -0
  129. package/bin/session/DefaultSessionComposer.d.ts.map +1 -0
  130. package/bin/session/DefaultSessionComposer.js +62 -0
  131. package/bin/session/DefaultSessionComposer.js.map +1 -0
  132. package/bin/session/Session.d.ts +44 -33
  133. package/bin/session/Session.d.ts.map +1 -1
  134. package/bin/session/Session.js +440 -274
  135. package/bin/session/Session.js.map +1 -1
  136. package/bin/session/SessionMessages.d.ts +117 -0
  137. package/bin/session/SessionMessages.d.ts.map +1 -0
  138. package/bin/session/{recorder/SessionRecorder.js → SessionMessages.js} +194 -284
  139. package/bin/session/SessionMessages.js.map +1 -0
  140. package/bin/session/SessionQueue.d.ts +34 -0
  141. package/bin/session/SessionQueue.d.ts.map +1 -0
  142. package/bin/session/SessionQueue.js +60 -0
  143. package/bin/session/SessionQueue.js.map +1 -0
  144. package/bin/session/SessionState.d.ts +70 -0
  145. package/bin/session/SessionState.d.ts.map +1 -0
  146. package/bin/session/SessionState.js +267 -0
  147. package/bin/session/SessionState.js.map +1 -0
  148. package/bin/session/SessionSystem.d.ts +15 -0
  149. package/bin/session/SessionSystem.d.ts.map +1 -0
  150. package/bin/session/SessionSystem.js +95 -0
  151. package/bin/session/SessionSystem.js.map +1 -0
  152. package/bin/session/SessionTurn.d.ts +84 -0
  153. package/bin/session/SessionTurn.d.ts.map +1 -0
  154. package/bin/session/SessionTurn.js +588 -0
  155. package/bin/session/SessionTurn.js.map +1 -0
  156. package/bin/session/approval/SessionApprovalBroker.d.ts +48 -0
  157. package/bin/session/approval/SessionApprovalBroker.d.ts.map +1 -0
  158. package/bin/session/approval/SessionApprovalBroker.js +126 -0
  159. package/bin/session/approval/SessionApprovalBroker.js.map +1 -0
  160. package/bin/session/browse/Browse.d.ts.map +1 -1
  161. package/bin/session/browse/Browse.js +1 -4
  162. package/bin/session/browse/Browse.js.map +1 -1
  163. package/bin/session/{recorder → messages}/JsonlSessionMessageStore.d.ts.map +1 -1
  164. package/bin/session/{recorder → messages}/JsonlSessionMessageStore.js.map +1 -1
  165. package/bin/session/messages/SessionAssistantMessageWriter.d.ts +62 -0
  166. package/bin/session/messages/SessionAssistantMessageWriter.d.ts.map +1 -0
  167. package/bin/session/messages/SessionAssistantMessageWriter.js +287 -0
  168. package/bin/session/messages/SessionAssistantMessageWriter.js.map +1 -0
  169. package/bin/session/messages/SessionJsonValue.d.ts +10 -0
  170. package/bin/session/messages/SessionJsonValue.d.ts.map +1 -0
  171. package/bin/session/messages/SessionJsonValue.js +23 -0
  172. package/bin/session/messages/SessionJsonValue.js.map +1 -0
  173. package/bin/session/{recorder → messages}/SessionMessageCodec.d.ts +4 -1
  174. package/bin/session/messages/SessionMessageCodec.d.ts.map +1 -0
  175. package/bin/session/{recorder → messages}/SessionMessageCodec.js +33 -19
  176. package/bin/session/messages/SessionMessageCodec.js.map +1 -0
  177. package/bin/session/messages/SessionMessageCompaction.d.ts +22 -0
  178. package/bin/session/messages/SessionMessageCompaction.d.ts.map +1 -0
  179. package/bin/session/{recorder/SessionRecorderCompaction.js → messages/SessionMessageCompaction.js} +19 -51
  180. package/bin/session/messages/SessionMessageCompaction.js.map +1 -0
  181. package/bin/session/runtime/SessionEventHub.d.ts +1 -8
  182. package/bin/session/runtime/SessionEventHub.d.ts.map +1 -1
  183. package/bin/session/runtime/SessionEventHub.js +1 -6
  184. package/bin/session/runtime/SessionEventHub.js.map +1 -1
  185. package/bin/session/storage/Metadata.d.ts +23 -5
  186. package/bin/session/storage/Metadata.d.ts.map +1 -1
  187. package/bin/session/storage/Metadata.js +32 -29
  188. package/bin/session/storage/Metadata.js.map +1 -1
  189. package/bin/session/storage/RuntimeSessionPort.d.ts +5 -10
  190. package/bin/session/storage/RuntimeSessionPort.d.ts.map +1 -1
  191. package/bin/session/storage/RuntimeSessionPort.js +2 -4
  192. package/bin/session/storage/RuntimeSessionPort.js.map +1 -1
  193. package/bin/types/agent/AgentOptions.d.ts +6 -35
  194. package/bin/types/agent/AgentOptions.d.ts.map +1 -1
  195. package/bin/types/agent/AgentState.d.ts +28 -0
  196. package/bin/types/agent/AgentState.d.ts.map +1 -0
  197. package/bin/types/agent/AgentState.js +9 -0
  198. package/bin/types/agent/AgentState.js.map +1 -0
  199. package/bin/types/agent/SessionActor.d.ts +0 -2
  200. package/bin/types/agent/SessionActor.d.ts.map +1 -1
  201. package/bin/types/agent/SessionTypes.d.ts +5 -18
  202. package/bin/types/agent/SessionTypes.d.ts.map +1 -1
  203. package/bin/types/executor/SessionRunContext.d.ts +8 -2
  204. package/bin/types/executor/SessionRunContext.d.ts.map +1 -1
  205. package/bin/types/executor/SessionRunContext.js +1 -1
  206. package/bin/types/executor/SessionToolExecutionContext.d.ts +20 -0
  207. package/bin/types/executor/SessionToolExecutionContext.d.ts.map +1 -0
  208. package/bin/types/executor/SessionToolExecutionContext.js +10 -0
  209. package/bin/types/executor/SessionToolExecutionContext.js.map +1 -0
  210. package/bin/types/plugin/PluginAction.d.ts +10 -1
  211. package/bin/types/plugin/PluginAction.d.ts.map +1 -1
  212. package/bin/types/plugin/PluginCommand.d.ts +3 -11
  213. package/bin/types/plugin/PluginCommand.d.ts.map +1 -1
  214. package/bin/types/plugin/PluginConfig.d.ts +12 -0
  215. package/bin/types/plugin/PluginConfig.d.ts.map +1 -0
  216. package/bin/types/plugin/PluginConfig.js +5 -0
  217. package/bin/types/plugin/PluginConfig.js.map +1 -0
  218. package/bin/types/plugin/PluginDefinition.d.ts +10 -3
  219. package/bin/types/plugin/PluginDefinition.d.ts.map +1 -1
  220. package/bin/types/plugin/PluginHttp.d.ts +1 -1
  221. package/bin/types/plugin/PluginHttp.d.ts.map +1 -1
  222. package/bin/types/plugin/PluginRunContext.d.ts +26 -0
  223. package/bin/types/plugin/PluginRunContext.d.ts.map +1 -0
  224. package/bin/types/plugin/PluginRunContext.js +10 -0
  225. package/bin/types/plugin/PluginRunContext.js.map +1 -0
  226. package/bin/types/plugin/PluginRuntime.d.ts +9 -3
  227. package/bin/types/plugin/PluginRuntime.d.ts.map +1 -1
  228. package/bin/types/plugin/PluginToolRuntime.d.ts +11 -0
  229. package/bin/types/plugin/PluginToolRuntime.d.ts.map +1 -1
  230. package/bin/types/rpc/RpcProtocol.d.ts +1 -13
  231. package/bin/types/rpc/RpcProtocol.d.ts.map +1 -1
  232. package/bin/types/session/SessionApproval.d.ts +4 -38
  233. package/bin/types/session/SessionApproval.d.ts.map +1 -1
  234. package/bin/types/session/SessionApprovalBroker.d.ts +17 -0
  235. package/bin/types/session/SessionApprovalBroker.d.ts.map +1 -0
  236. package/bin/types/session/SessionApprovalBroker.js +7 -0
  237. package/bin/types/session/SessionApprovalBroker.js.map +1 -0
  238. package/bin/types/session/SessionComposer.d.ts +99 -0
  239. package/bin/types/session/SessionComposer.d.ts.map +1 -0
  240. package/bin/types/session/SessionComposer.js +8 -0
  241. package/bin/types/session/SessionComposer.js.map +1 -0
  242. package/bin/types/session/SessionLocalState.d.ts +6 -6
  243. package/bin/types/session/SessionLocalState.d.ts.map +1 -1
  244. package/bin/types/session/SessionLocalState.js +1 -1
  245. package/bin/types/session/SessionMessage.d.ts +3 -2
  246. package/bin/types/session/SessionMessage.d.ts.map +1 -1
  247. package/bin/types/session/SessionMessages.d.ts +115 -0
  248. package/bin/types/session/SessionMessages.d.ts.map +1 -0
  249. package/bin/types/session/SessionMessages.js +7 -0
  250. package/bin/types/session/SessionMessages.js.map +1 -0
  251. package/bin/types/session/SessionMutation.d.ts +1 -10
  252. package/bin/types/session/SessionMutation.d.ts.map +1 -1
  253. package/bin/types/session/SessionMutation.js.map +1 -1
  254. package/bin/types/session/SessionOptions.d.ts +8 -23
  255. package/bin/types/session/SessionOptions.d.ts.map +1 -1
  256. package/bin/types/session/SessionPort.d.ts +72 -0
  257. package/bin/types/session/SessionPort.d.ts.map +1 -0
  258. package/bin/types/session/SessionPort.js +9 -0
  259. package/bin/types/session/SessionPort.js.map +1 -0
  260. package/bin/types/session/SessionQueue.d.ts +104 -0
  261. package/bin/types/session/SessionQueue.d.ts.map +1 -0
  262. package/bin/types/session/SessionQueue.js +7 -0
  263. package/bin/types/session/SessionQueue.js.map +1 -0
  264. package/bin/types/session/SessionState.d.ts +43 -0
  265. package/bin/types/session/SessionState.d.ts.map +1 -0
  266. package/bin/types/session/SessionState.js +7 -0
  267. package/bin/types/session/SessionState.js.map +1 -0
  268. package/bin/types/session/SessionSystem.d.ts +26 -0
  269. package/bin/types/session/SessionSystem.d.ts.map +1 -0
  270. package/bin/types/session/SessionSystem.js +7 -0
  271. package/bin/types/session/SessionSystem.js.map +1 -0
  272. package/bin/types/session/SessionTool.d.ts +23 -0
  273. package/bin/types/session/SessionTool.d.ts.map +1 -0
  274. package/bin/types/session/SessionTool.js +7 -0
  275. package/bin/types/session/SessionTool.js.map +1 -0
  276. package/bin/types/session/SessionTurn.d.ts +52 -0
  277. package/bin/types/session/SessionTurn.d.ts.map +1 -0
  278. package/bin/types/session/SessionTurn.js +7 -0
  279. package/bin/types/session/SessionTurn.js.map +1 -0
  280. package/package.json +3 -3
  281. package/scripts/agent-env.test.mjs +4 -18
  282. package/scripts/agent-ready.test.mjs +33 -2
  283. package/scripts/agent-session-maintenance.test.mjs +52 -0
  284. package/scripts/city-model-tool-loop.test.mjs +3 -4
  285. package/scripts/core-engine-context-compaction.test.mjs +5 -22
  286. package/scripts/image-plugin-job.test.mjs +4 -6
  287. package/scripts/plugin-tool-bridge.test.mjs +44 -36
  288. package/scripts/read-image-tool-bridge.test.mjs +71 -0
  289. package/scripts/remote-session-reconnect.test.mjs +1 -34
  290. package/scripts/session-compaction-prompts.test.mjs +1 -49
  291. package/scripts/session-composer.test.mjs +163 -0
  292. package/scripts/session-config-turn-boundary.test.mjs +2 -5
  293. package/scripts/session-list-title.test.mjs +3 -2
  294. package/scripts/session-messages-error.test.mjs +57 -0
  295. package/scripts/{session-recorder.test.mjs → session-messages.test.mjs} +131 -90
  296. package/scripts/session-queue.test.mjs +64 -0
  297. package/scripts/session-shell-approval.test.mjs +171 -0
  298. package/scripts/session-system-blocks.test.mjs +10 -10
  299. package/scripts/session-title-event.test.mjs +1 -0
  300. package/src/agent/Agent.ts +241 -0
  301. package/src/agent/AgentContext.ts +92 -0
  302. package/src/agent/{local/AgentInstructions.ts → AgentInstructions.ts} +0 -11
  303. package/src/{model/CityModelAdapter.ts → agent/AgentModel.ts} +10 -3
  304. package/src/agent/{local/services/AgentSessions.ts → AgentSessions.ts} +81 -110
  305. package/src/agent/AgentState.ts +151 -0
  306. package/src/config/Paths.ts +0 -91
  307. package/src/executor/Executor.ts +180 -386
  308. package/src/executor/README.md +29 -89
  309. package/src/executor/composer/system/default/DefaultSessionSystemComposer.ts +1 -1
  310. package/src/executor/composer/system/default/SystemDomain.ts +4 -2
  311. package/src/executor/composer/system/default/assets/core.prompt.ts +1 -1
  312. package/src/executor/composer/system/default/assets/core.prompt.ts.txt +15 -2
  313. package/src/executor/core-engine/CoreEngineRunner.ts +95 -54
  314. package/src/executor/services/ExecutorRecoveryPolicy.ts +24 -19
  315. package/src/executor/tools/file/ReadImageToolBridge.ts +79 -0
  316. package/src/executor/tools/plugin/PluginToolBridge.ts +6 -8
  317. package/src/executor/tools/plugin/PluginToolDefinition.ts +23 -3
  318. package/src/executor/types/SessionHistoryMeta.ts +0 -2
  319. package/src/index.ts +34 -53
  320. package/src/plugin/core/ActionScheduleExecutor.ts +1 -1
  321. package/src/plugin/core/ActionScheduleRuntime.ts +1 -1
  322. package/src/plugin/core/BasePlugin.ts +7 -3
  323. package/src/plugin/core/HookRegistry.ts +15 -18
  324. package/src/plugin/core/PluginActionFactory.ts +9 -3
  325. package/src/plugin/core/PluginActionRunner.ts +1 -1
  326. package/src/plugin/core/PluginCatalog.ts +1 -1
  327. package/src/plugin/core/PluginHttpRoutes.ts +1 -1
  328. package/src/plugin/core/PluginLocalExecution.ts +11 -24
  329. package/src/plugin/core/PluginRegistry.ts +55 -32
  330. package/src/plugin/core/PluginStateController.ts +1 -1
  331. package/src/{agent/remote → remote}/RemoteAgent.ts +4 -4
  332. package/src/{agent/remote → remote}/RemoteSession.ts +2 -35
  333. package/src/{agent/remote → remote}/RemoteTransport.ts +0 -3
  334. package/src/{agent/remote → remote}/TransportFactory.ts +3 -3
  335. package/src/{agent/remote → remote}/transports/HttpRemoteAgentTransport.ts +1 -23
  336. package/src/{rpc/Client.ts → remote/transports/RpcClient.ts} +1 -19
  337. package/src/{agent/remote → remote}/transports/RpcRemoteAgentTransport.ts +2 -10
  338. package/src/session/DefaultSessionComposer.ts +79 -0
  339. package/src/session/Session.ts +496 -332
  340. package/src/session/{recorder/SessionRecorder.ts → SessionMessages.ts} +254 -428
  341. package/src/session/SessionQueue.ts +86 -0
  342. package/src/session/SessionState.ts +322 -0
  343. package/src/session/SessionSystem.ts +117 -0
  344. package/src/session/SessionTurn.ts +684 -0
  345. package/src/session/approval/SessionApprovalBroker.ts +164 -0
  346. package/src/session/browse/Browse.ts +1 -4
  347. package/src/session/messages/SessionAssistantMessageWriter.ts +345 -0
  348. package/src/session/messages/SessionJsonValue.ts +25 -0
  349. package/src/session/{recorder → messages}/SessionMessageCodec.ts +38 -20
  350. package/src/session/{recorder/SessionRecorderCompaction.ts → messages/SessionMessageCompaction.ts} +30 -69
  351. package/src/session/runtime/SessionEventHub.ts +1 -14
  352. package/src/session/storage/Metadata.ts +60 -34
  353. package/src/session/storage/RuntimeSessionPort.ts +7 -14
  354. package/src/types/agent/AgentOptions.ts +6 -38
  355. package/src/types/agent/AgentState.ts +33 -0
  356. package/src/types/agent/SessionActor.ts +0 -3
  357. package/src/types/agent/SessionTypes.ts +5 -18
  358. package/src/types/executor/SessionRunContext.ts +10 -2
  359. package/src/types/executor/SessionToolExecutionContext.ts +21 -0
  360. package/src/types/plugin/PluginAction.ts +10 -1
  361. package/src/types/plugin/PluginCommand.ts +3 -14
  362. package/src/types/plugin/PluginConfig.ts +13 -0
  363. package/src/types/plugin/PluginDefinition.ts +13 -6
  364. package/src/types/plugin/PluginHttp.ts +1 -1
  365. package/src/types/plugin/PluginRunContext.ts +31 -0
  366. package/src/types/plugin/PluginRuntime.ts +13 -6
  367. package/src/types/plugin/PluginToolRuntime.ts +13 -1
  368. package/src/types/rpc/RpcProtocol.ts +0 -14
  369. package/src/types/session/SessionApproval.ts +4 -43
  370. package/src/types/session/SessionApprovalBroker.ts +18 -0
  371. package/src/types/session/SessionComposer.ts +114 -0
  372. package/src/types/session/SessionLocalState.ts +6 -6
  373. package/src/types/session/SessionMessage.ts +3 -2
  374. package/src/types/session/SessionMessages.ts +127 -0
  375. package/src/types/session/SessionMutation.ts +0 -11
  376. package/src/types/session/SessionOptions.ts +8 -40
  377. package/src/types/session/SessionPort.ts +97 -0
  378. package/src/types/session/SessionQueue.ts +122 -0
  379. package/src/types/session/SessionState.ts +47 -0
  380. package/src/types/session/SessionSystem.ts +27 -0
  381. package/src/types/session/SessionTool.ts +25 -0
  382. package/src/types/session/SessionTurn.ts +56 -0
  383. package/tsconfig.tsbuildinfo +1 -1
  384. package/bin/agent/local/Agent.d.ts.map +0 -1
  385. package/bin/agent/local/Agent.js +0 -216
  386. package/bin/agent/local/Agent.js.map +0 -1
  387. package/bin/agent/local/AgentInstructions.d.ts.map +0 -1
  388. package/bin/agent/local/AgentInstructions.js.map +0 -1
  389. package/bin/agent/local/AgentPluginFactory.d.ts +0 -26
  390. package/bin/agent/local/AgentPluginFactory.d.ts.map +0 -1
  391. package/bin/agent/local/AgentPluginFactory.js +0 -33
  392. package/bin/agent/local/AgentPluginFactory.js.map +0 -1
  393. package/bin/agent/local/AgentRuntimeAssembly.d.ts +0 -10
  394. package/bin/agent/local/AgentRuntimeAssembly.d.ts.map +0 -1
  395. package/bin/agent/local/AgentRuntimeAssembly.js +0 -43
  396. package/bin/agent/local/AgentRuntimeAssembly.js.map +0 -1
  397. package/bin/agent/local/ProjectSetup.d.ts.map +0 -1
  398. package/bin/agent/local/ProjectSetup.js.map +0 -1
  399. package/bin/agent/local/services/AgentAssemblyService.d.ts +0 -105
  400. package/bin/agent/local/services/AgentAssemblyService.d.ts.map +0 -1
  401. package/bin/agent/local/services/AgentAssemblyService.js +0 -184
  402. package/bin/agent/local/services/AgentAssemblyService.js.map +0 -1
  403. package/bin/agent/local/services/AgentBackgroundService.d.ts +0 -55
  404. package/bin/agent/local/services/AgentBackgroundService.d.ts.map +0 -1
  405. package/bin/agent/local/services/AgentBackgroundService.js +0 -85
  406. package/bin/agent/local/services/AgentBackgroundService.js.map +0 -1
  407. package/bin/agent/local/services/AgentSessions.d.ts.map +0 -1
  408. package/bin/agent/local/services/AgentSessions.js.map +0 -1
  409. package/bin/agent/remote/RemoteAgent.d.ts.map +0 -1
  410. package/bin/agent/remote/RemoteAgent.js.map +0 -1
  411. package/bin/agent/remote/RemoteSession.d.ts.map +0 -1
  412. package/bin/agent/remote/RemoteSession.js.map +0 -1
  413. package/bin/agent/remote/RemoteTransport.d.ts.map +0 -1
  414. package/bin/agent/remote/RemoteTransport.js.map +0 -1
  415. package/bin/agent/remote/TransportFactory.d.ts.map +0 -1
  416. package/bin/agent/remote/TransportFactory.js.map +0 -1
  417. package/bin/agent/remote/transports/HttpRemoteAgentTransport.d.ts.map +0 -1
  418. package/bin/agent/remote/transports/HttpRemoteAgentTransport.js.map +0 -1
  419. package/bin/agent/remote/transports/RpcRemoteAgentTransport.d.ts.map +0 -1
  420. package/bin/agent/remote/transports/RpcRemoteAgentTransport.js.map +0 -1
  421. package/bin/executor/SessionRunScope.d.ts +0 -68
  422. package/bin/executor/SessionRunScope.d.ts.map +0 -1
  423. package/bin/executor/SessionRunScope.js +0 -96
  424. package/bin/executor/SessionRunScope.js.map +0 -1
  425. package/bin/executor/composer/compaction/SessionCompactionComposer.d.ts +0 -74
  426. package/bin/executor/composer/compaction/SessionCompactionComposer.d.ts.map +0 -1
  427. package/bin/executor/composer/compaction/SessionCompactionComposer.js +0 -9
  428. package/bin/executor/composer/compaction/SessionCompactionComposer.js.map +0 -1
  429. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.d.ts +0 -27
  430. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.d.ts.map +0 -1
  431. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.js +0 -39
  432. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.js.map +0 -1
  433. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.d.ts +0 -44
  434. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.d.ts.map +0 -1
  435. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.js +0 -218
  436. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.js.map +0 -1
  437. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionFileOperations.d.ts +0 -27
  438. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionFileOperations.d.ts.map +0 -1
  439. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionFileOperations.js +0 -181
  440. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionFileOperations.js.map +0 -1
  441. package/bin/executor/composer/context/LocalSessionContextComposer.d.ts +0 -50
  442. package/bin/executor/composer/context/LocalSessionContextComposer.d.ts.map +0 -1
  443. package/bin/executor/composer/context/LocalSessionContextComposer.js +0 -108
  444. package/bin/executor/composer/context/LocalSessionContextComposer.js.map +0 -1
  445. package/bin/executor/composer/context/SessionContextComposer.d.ts +0 -67
  446. package/bin/executor/composer/context/SessionContextComposer.d.ts.map +0 -1
  447. package/bin/executor/composer/context/SessionContextComposer.js +0 -9
  448. package/bin/executor/composer/context/SessionContextComposer.js.map +0 -1
  449. package/bin/executor/composer/history/SessionHistoryComposer.d.ts +0 -54
  450. package/bin/executor/composer/history/SessionHistoryComposer.d.ts.map +0 -1
  451. package/bin/executor/composer/history/SessionHistoryComposer.js +0 -10
  452. package/bin/executor/composer/history/SessionHistoryComposer.js.map +0 -1
  453. package/bin/executor/composer/history/SessionHistoryWriter.d.ts +0 -46
  454. package/bin/executor/composer/history/SessionHistoryWriter.d.ts.map +0 -1
  455. package/bin/executor/composer/history/SessionHistoryWriter.js +0 -65
  456. package/bin/executor/composer/history/SessionHistoryWriter.js.map +0 -1
  457. package/bin/executor/composer/history/jsonl/JsonlSessionHistoryComposer.d.ts +0 -35
  458. package/bin/executor/composer/history/jsonl/JsonlSessionHistoryComposer.d.ts.map +0 -1
  459. package/bin/executor/composer/history/jsonl/JsonlSessionHistoryComposer.js +0 -105
  460. package/bin/executor/composer/history/jsonl/JsonlSessionHistoryComposer.js.map +0 -1
  461. package/bin/executor/messages/AssistantResultPersistence.d.ts +0 -66
  462. package/bin/executor/messages/AssistantResultPersistence.d.ts.map +0 -1
  463. package/bin/executor/messages/AssistantResultPersistence.js +0 -44
  464. package/bin/executor/messages/AssistantResultPersistence.js.map +0 -1
  465. package/bin/executor/services/ExecutorInflightService.d.ts +0 -34
  466. package/bin/executor/services/ExecutorInflightService.d.ts.map +0 -1
  467. package/bin/executor/services/ExecutorInflightService.js +0 -73
  468. package/bin/executor/services/ExecutorInflightService.js.map +0 -1
  469. package/bin/executor/store/history/SessionHistoryStore.d.ts +0 -140
  470. package/bin/executor/store/history/SessionHistoryStore.d.ts.map +0 -1
  471. package/bin/executor/store/history/SessionHistoryStore.js +0 -10
  472. package/bin/executor/store/history/SessionHistoryStore.js.map +0 -1
  473. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.d.ts +0 -116
  474. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.d.ts.map +0 -1
  475. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.js +0 -709
  476. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.js.map +0 -1
  477. package/bin/executor/types/SessionHistoryPaths.d.ts +0 -34
  478. package/bin/executor/types/SessionHistoryPaths.d.ts.map +0 -1
  479. package/bin/executor/types/SessionHistoryPaths.js +0 -2
  480. package/bin/executor/types/SessionHistoryPaths.js.map +0 -1
  481. package/bin/model/CityModelAdapter.d.ts.map +0 -1
  482. package/bin/model/CityModelAdapter.js.map +0 -1
  483. package/bin/rpc/Client.d.ts.map +0 -1
  484. package/bin/rpc/Client.js.map +0 -1
  485. package/bin/session/SessionSystemBuilder.d.ts +0 -107
  486. package/bin/session/SessionSystemBuilder.d.ts.map +0 -1
  487. package/bin/session/SessionSystemBuilder.js +0 -148
  488. package/bin/session/SessionSystemBuilder.js.map +0 -1
  489. package/bin/session/recorder/SessionMessageCodec.d.ts.map +0 -1
  490. package/bin/session/recorder/SessionMessageCodec.js.map +0 -1
  491. package/bin/session/recorder/SessionRecorder.d.ts +0 -217
  492. package/bin/session/recorder/SessionRecorder.d.ts.map +0 -1
  493. package/bin/session/recorder/SessionRecorder.js.map +0 -1
  494. package/bin/session/recorder/SessionRecorderCompaction.d.ts +0 -18
  495. package/bin/session/recorder/SessionRecorderCompaction.d.ts.map +0 -1
  496. package/bin/session/recorder/SessionRecorderCompaction.js.map +0 -1
  497. package/bin/session/recorder/SessionRecorderHistoryStore.d.ts +0 -66
  498. package/bin/session/recorder/SessionRecorderHistoryStore.d.ts.map +0 -1
  499. package/bin/session/recorder/SessionRecorderHistoryStore.js +0 -190
  500. package/bin/session/recorder/SessionRecorderHistoryStore.js.map +0 -1
  501. package/bin/session/runtime/SessionPromptRuntime.d.ts +0 -112
  502. package/bin/session/runtime/SessionPromptRuntime.d.ts.map +0 -1
  503. package/bin/session/runtime/SessionPromptRuntime.js +0 -357
  504. package/bin/session/runtime/SessionPromptRuntime.js.map +0 -1
  505. package/bin/session/services/SessionStateService.d.ts +0 -187
  506. package/bin/session/services/SessionStateService.d.ts.map +0 -1
  507. package/bin/session/services/SessionStateService.js +0 -467
  508. package/bin/session/services/SessionStateService.js.map +0 -1
  509. package/bin/session/services/SessionTurnService.d.ts +0 -90
  510. package/bin/session/services/SessionTurnService.d.ts.map +0 -1
  511. package/bin/session/services/SessionTurnService.js +0 -293
  512. package/bin/session/services/SessionTurnService.js.map +0 -1
  513. package/bin/session/services/SessionViewService.d.ts +0 -114
  514. package/bin/session/services/SessionViewService.d.ts.map +0 -1
  515. package/bin/session/services/SessionViewService.js +0 -204
  516. package/bin/session/services/SessionViewService.js.map +0 -1
  517. package/bin/session/storage/Persistence.d.ts +0 -73
  518. package/bin/session/storage/Persistence.d.ts.map +0 -1
  519. package/bin/session/storage/Persistence.js +0 -63
  520. package/bin/session/storage/Persistence.js.map +0 -1
  521. package/bin/types/agent/AgentRuntimeAssembly.d.ts +0 -72
  522. package/bin/types/agent/AgentRuntimeAssembly.d.ts.map +0 -1
  523. package/bin/types/agent/AgentRuntimeAssembly.js +0 -10
  524. package/bin/types/agent/AgentRuntimeAssembly.js.map +0 -1
  525. package/bin/types/runtime/agent/AgentContext.d.ts +0 -306
  526. package/bin/types/runtime/agent/AgentContext.d.ts.map +0 -1
  527. package/bin/types/runtime/agent/AgentContext.js +0 -128
  528. package/bin/types/runtime/agent/AgentContext.js.map +0 -1
  529. package/bin/types/session/SessionComposerOptions.d.ts +0 -90
  530. package/bin/types/session/SessionComposerOptions.d.ts.map +0 -1
  531. package/bin/types/session/SessionComposerOptions.js +0 -10
  532. package/bin/types/session/SessionComposerOptions.js.map +0 -1
  533. package/bin/types/session/SessionQueueCommand.d.ts +0 -68
  534. package/bin/types/session/SessionQueueCommand.d.ts.map +0 -1
  535. package/bin/types/session/SessionQueueCommand.js +0 -10
  536. package/bin/types/session/SessionQueueCommand.js.map +0 -1
  537. package/scripts/session-action-message.test.mjs +0 -410
  538. package/scripts/session-compaction-context-window.test.mjs +0 -96
  539. package/scripts/session-history-inflight.test.mjs +0 -146
  540. package/scripts/session-history-writer-error.test.mjs +0 -57
  541. package/scripts/session-prompt-runtime.test.mjs +0 -390
  542. package/src/agent/local/Agent.ts +0 -250
  543. package/src/agent/local/AgentPluginFactory.ts +0 -51
  544. package/src/agent/local/AgentRuntimeAssembly.ts +0 -65
  545. package/src/agent/local/services/AgentAssemblyService.ts +0 -307
  546. package/src/agent/local/services/AgentBackgroundService.ts +0 -115
  547. package/src/executor/SessionRunScope.ts +0 -122
  548. package/src/executor/composer/compaction/SessionCompactionComposer.ts +0 -84
  549. package/src/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.ts +0 -51
  550. package/src/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.ts +0 -294
  551. package/src/executor/composer/compaction/jsonl/JsonlSessionCompactionFileOperations.ts +0 -197
  552. package/src/executor/composer/context/LocalSessionContextComposer.ts +0 -175
  553. package/src/executor/composer/context/SessionContextComposer.ts +0 -83
  554. package/src/executor/composer/history/SessionHistoryComposer.ts +0 -62
  555. package/src/executor/composer/history/SessionHistoryWriter.ts +0 -100
  556. package/src/executor/composer/history/jsonl/JsonlSessionHistoryComposer.ts +0 -133
  557. package/src/executor/messages/AssistantResultPersistence.ts +0 -106
  558. package/src/executor/services/ExecutorInflightService.ts +0 -95
  559. package/src/executor/store/history/SessionHistoryStore.ts +0 -172
  560. package/src/executor/store/history/jsonl/JsonlSessionHistoryStore.ts +0 -879
  561. package/src/executor/types/SessionHistoryPaths.ts +0 -38
  562. package/src/session/SessionSystemBuilder.ts +0 -262
  563. package/src/session/recorder/SessionRecorderHistoryStore.ts +0 -256
  564. package/src/session/runtime/SessionPromptRuntime.ts +0 -518
  565. package/src/session/services/SessionStateService.ts +0 -628
  566. package/src/session/services/SessionTurnService.ts +0 -368
  567. package/src/session/services/SessionViewService.ts +0 -335
  568. package/src/session/storage/Persistence.ts +0 -137
  569. package/src/types/agent/AgentRuntimeAssembly.ts +0 -74
  570. package/src/types/runtime/agent/AgentContext.ts +0 -387
  571. package/src/types/session/SessionComposerOptions.ts +0 -107
  572. package/src/types/session/SessionQueueCommand.ts +0 -78
  573. /package/bin/{agent/local → config}/ProjectSetup.d.ts +0 -0
  574. /package/bin/{agent/remote → remote}/RemoteTransport.js +0 -0
  575. /package/bin/session/{recorder → messages}/JsonlSessionMessageStore.d.ts +0 -0
  576. /package/bin/session/{recorder → messages}/JsonlSessionMessageStore.js +0 -0
  577. /package/src/{agent/local → config}/ProjectSetup.ts +0 -0
  578. /package/src/session/{recorder → messages}/JsonlSessionMessageStore.ts +0 -0
@@ -1,73 +0,0 @@
1
- /**
2
- * SDK Session 持久化辅助。
3
- *
4
- * 关键点(中文)
5
- * - 集中处理 session meta 更新时间、模型展示标签与 assistant 消息落盘。
6
- * - `Session` 只负责调用这些能力,不直接拼装 meta 结构。
7
- */
8
- import type { SessionRecordV1, SessionMessageRecordV1 } from "../../executor/types/SessionRecords.js";
9
- import type { AgentSessionConfigSnapshot } from "../../types/agent/SessionTypes.js";
10
- /**
11
- * SDK Session 元数据写入参数。
12
- */
13
- export interface TouchSessionMetadataParams {
14
- /**
15
- * 当前项目根目录。
16
- */
17
- projectRoot: string;
18
- /**
19
- * 当前 agent 稳定标识。
20
- */
21
- agentId: string;
22
- /**
23
- * 当前 sessionId。
24
- */
25
- sessionId: string;
26
- /**
27
- * 当前 session 内存配置快照。
28
- */
29
- sessionConfig: AgentSessionConfigSnapshot;
30
- /** 当前 canonical Message 总数。 */
31
- message_count?: number;
32
- /** 当前 Message 日志文件字节数。 */
33
- history_bytes?: number;
34
- /** 最近一条用户可见 Message 的文本摘要。 */
35
- preview_text?: string;
36
- }
37
- /**
38
- * Assistant 结果落盘参数。
39
- */
40
- export interface PersistSdkAssistantResultParams extends TouchSessionMetadataParams {
41
- /**
42
- * 追加 assistant 消息的底层执行编排器。
43
- */
44
- executor: {
45
- append_assistant_message(params: {
46
- /**
47
- * 已构造好的完整消息。
48
- */
49
- message?: SessionRecordV1 | null;
50
- /**
51
- * 兜底文本内容。
52
- */
53
- fallbackText?: string;
54
- }): Promise<void>;
55
- };
56
- /**
57
- * 本轮执行得到的 assistant 消息。
58
- *
59
- * 关键点(中文)
60
- * - stop/abort 且没有 assistant 内容时允许为空。
61
- * - 为空时仅刷新 metadata,不写入伪造 assistant 正文。
62
- */
63
- assistantMessage?: SessionMessageRecordV1 | null;
64
- }
65
- /**
66
- * 刷新 SDK session 元数据。
67
- */
68
- export declare function touchSessionMetadata(params: TouchSessionMetadataParams): Promise<void>;
69
- /**
70
- * 持久化 assistant 结果并同步刷新 session meta。
71
- */
72
- export declare function persistSdkAssistantResult(params: PersistSdkAssistantResultParams): Promise<void>;
73
- //# sourceMappingURL=Persistence.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Persistence.d.ts","sourceRoot":"","sources":["../../../src/session/storage/Persistence.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EACV,eAAe,EACf,sBAAsB,EACvB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAMhF;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,aAAa,EAAE,0BAA0B,CAAC;IAC1C,+BAA+B;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0BAA0B;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8BAA8B;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,+BACf,SAAQ,0BAA0B;IAClC;;OAEG;IACH,QAAQ,EAAE;QACR,wBAAwB,CAAC,MAAM,EAAE;YAC/B;;eAEG;YACH,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;YACjC;;eAEG;YACH,YAAY,CAAC,EAAE,MAAM,CAAC;SACvB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnB,CAAC;IACF;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;CAClD;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,0BAA0B,GACjC,OAAO,CAAC,IAAI,CAAC,CAoCf;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,+BAA+B,GACtC,OAAO,CAAC,IAAI,CAAC,CASf"}
@@ -1,63 +0,0 @@
1
- /**
2
- * SDK Session 持久化辅助。
3
- *
4
- * 关键点(中文)
5
- * - 集中处理 session meta 更新时间、模型展示标签与 assistant 消息落盘。
6
- * - `Session` 只负责调用这些能力,不直接拼装 meta 结构。
7
- */
8
- import { extractTextFromUiMessage } from "../../executor/messages/UIMessageTransformer.js";
9
- import { persistAssistantResult } from "../../executor/messages/AssistantResultPersistence.js";
10
- import { readSessionMetadata, writeSessionMetadata, } from "../../session/storage/Metadata.js";
11
- /**
12
- * 刷新 SDK session 元数据。
13
- */
14
- export async function touchSessionMetadata(params) {
15
- const current = await readSessionMetadata({
16
- projectRoot: params.projectRoot,
17
- agentId: params.agentId,
18
- sessionId: params.sessionId,
19
- });
20
- const next = {
21
- ...current,
22
- agentId: params.agentId,
23
- createdAt: typeof current.createdAt === "number" ? current.createdAt : Date.now(),
24
- updatedAt: Date.now(),
25
- ...(params.sessionConfig.modelLabel
26
- ? {
27
- modelLabel: params.sessionConfig.modelLabel,
28
- }
29
- : {}),
30
- ...(params.sessionConfig.modelId
31
- ? {
32
- modelId: params.sessionConfig.modelId,
33
- }
34
- : {}),
35
- ...(typeof params.message_count === "number"
36
- ? { messageCount: params.message_count }
37
- : {}),
38
- ...(typeof params.history_bytes === "number"
39
- ? { historyBytes: params.history_bytes }
40
- : {}),
41
- ...(params.preview_text ? { previewText: params.preview_text } : {}),
42
- };
43
- await writeSessionMetadata({
44
- projectRoot: params.projectRoot,
45
- agentId: params.agentId,
46
- sessionId: params.sessionId,
47
- meta: next,
48
- });
49
- }
50
- /**
51
- * 持久化 assistant 结果并同步刷新 session meta。
52
- */
53
- export async function persistSdkAssistantResult(params) {
54
- await persistAssistantResult({
55
- writer: params.executor,
56
- assistantMessage: params.assistantMessage,
57
- fallbackText: params.assistantMessage
58
- ? extractTextFromUiMessage(params.assistantMessage)
59
- : undefined,
60
- });
61
- await touchSessionMetadata(params);
62
- }
63
- //# sourceMappingURL=Persistence.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Persistence.js","sourceRoot":"","sources":["../../../src/session/storage/Persistence.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AAMvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAE3F,OAAO,EACL,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,+BAA+B,CAAC;AA4DvC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAkC;IAElC,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC;QACxC,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC;IACH,MAAM,IAAI,GAAyB;QACjC,GAAG,OAAO;QACV,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,SAAS,EACP,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;QACxE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU;YACjC,CAAC,CAAC;gBACE,UAAU,EAAE,MAAM,CAAC,aAAa,CAAC,UAAU;aAC5C;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO;YAC9B,CAAC,CAAC;gBACE,OAAO,EAAE,MAAM,CAAC,aAAa,CAAC,OAAO;aACtC;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,MAAM,CAAC,aAAa,KAAK,QAAQ;YAC1C,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,aAAa,EAAE;YACxC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,MAAM,CAAC,aAAa,KAAK,QAAQ;YAC1C,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,aAAa,EAAE;YACxC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrE,CAAC;IACF,MAAM,oBAAoB,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,IAAI,EAAE,IAAI;KACX,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,MAAuC;IAEvC,MAAM,sBAAsB,CAAC;QAC3B,MAAM,EAAE,MAAM,CAAC,QAAQ;QACvB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,YAAY,EAAE,MAAM,CAAC,gBAAgB;YACnC,CAAC,CAAC,wBAAwB,CAAC,MAAM,CAAC,gBAAgB,CAAC;YACnD,CAAC,CAAC,SAAS;KACd,CAAC,CAAC;IACH,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC"}
@@ -1,72 +0,0 @@
1
- /**
2
- * AgentRuntimeAssembly 类型定义。
3
- *
4
- * 关键点(中文)
5
- * - 这里统一描述由本地 agent 装配、再挂入 AgentRuntime 的能力。
6
- * - plugin runtime / session / plugin 作者 API 只能消费这些稳定能力,不应直接依赖具体宿主实现。
7
- * - 当前先收敛路径与 plugin 配置持久化两类高频能力。
8
- */
9
- import type { DowncityConfig } from "../../types/config/DowncityConfig.js";
10
- /**
11
- * Agent 路径能力集合。
12
- */
13
- export interface AgentPathRuntime {
14
- /**
15
- * 当前项目根目录。
16
- */
17
- projectRoot: string;
18
- /**
19
- * 当前 agent 的稳定标识。
20
- */
21
- agentId: string;
22
- /**
23
- * `.downcity` 根目录路径。
24
- */
25
- getDowncityDirPath(): string;
26
- /**
27
- * `.downcity/.cache` 目录路径。
28
- */
29
- getCacheDirPath(): string;
30
- /**
31
- * `.downcity/channel` 目录路径。
32
- */
33
- getDowncityChannelDirPath(): string;
34
- /**
35
- * `.downcity/channel/meta.json` 文件路径。
36
- */
37
- getDowncityChannelMetaPath(): string;
38
- /**
39
- * `.downcity/chat/<sessionId>/history.jsonl` 文件路径。
40
- */
41
- getDowncityChatHistoryPath(sessionId: string): string;
42
- /**
43
- * `.downcity/memory/MEMORY.md` 文件路径。
44
- */
45
- getDowncityMemoryLongTermPath(): string;
46
- /**
47
- * `.downcity/memory/daily` 目录路径。
48
- */
49
- getDowncityMemoryDailyDirPath(): string;
50
- /**
51
- * `.downcity/memory/daily/<date>.md` 文件路径。
52
- */
53
- getDowncityMemoryDailyPath(date: string): string;
54
- /**
55
- * `.downcity/agents/<agentId>/sessions` 根目录路径。
56
- */
57
- getDowncitySessionRootDirPath(): string;
58
- /**
59
- * `.downcity/agents/<agentId>/sessions/<sessionId>` 目录路径。
60
- */
61
- getDowncitySessionDirPath(sessionId: string): string;
62
- }
63
- /**
64
- * Plugin 配置持久化能力集合。
65
- */
66
- export interface AgentPluginConfigRuntime {
67
- /**
68
- * 将当前 `plugins` 配置块写回宿主配置存储。
69
- */
70
- persistProjectPlugins(plugins: DowncityConfig["plugins"] | undefined): Promise<string>;
71
- }
72
- //# sourceMappingURL=AgentRuntimeAssembly.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AgentRuntimeAssembly.d.ts","sourceRoot":"","sources":["../../../src/types/agent/AgentRuntimeAssembly.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,kBAAkB,IAAI,MAAM,CAAC;IAC7B;;OAEG;IACH,eAAe,IAAI,MAAM,CAAC;IAC1B;;OAEG;IACH,yBAAyB,IAAI,MAAM,CAAC;IACpC;;OAEG;IACH,0BAA0B,IAAI,MAAM,CAAC;IACrC;;OAEG;IACH,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IACtD;;OAEG;IACH,6BAA6B,IAAI,MAAM,CAAC;IACxC;;OAEG;IACH,6BAA6B,IAAI,MAAM,CAAC;IACxC;;OAEG;IACH,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACjD;;OAEG;IACH,6BAA6B,IAAI,MAAM,CAAC;IACxC;;OAEG;IACH,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;CACtD;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,qBAAqB,CAAC,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACxF"}
@@ -1,10 +0,0 @@
1
- /**
2
- * AgentRuntimeAssembly 类型定义。
3
- *
4
- * 关键点(中文)
5
- * - 这里统一描述由本地 agent 装配、再挂入 AgentRuntime 的能力。
6
- * - plugin runtime / session / plugin 作者 API 只能消费这些稳定能力,不应直接依赖具体宿主实现。
7
- * - 当前先收敛路径与 plugin 配置持久化两类高频能力。
8
- */
9
- export {};
10
- //# sourceMappingURL=AgentRuntimeAssembly.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AgentRuntimeAssembly.js","sourceRoot":"","sources":["../../../src/types/agent/AgentRuntimeAssembly.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
@@ -1,306 +0,0 @@
1
- /**
2
- * Agent 执行上下文类型定义。
3
- *
4
- * 职责说明(中文)
5
- * - 这里定义 plugin runtime、plugin、prompt system 共用的统一执行上下文。
6
- * - `AgentContext` 是一个 class,表达"当前一次执行可见的能力面",不是宿主状态本体。
7
- * - 同一 agent 实例全程共享同一个 context;plugin、session、executor 都基于它读写状态。
8
- */
9
- import type { LanguageModel } from "ai";
10
- import type { Logger } from "../../../utils/logger/Logger.js";
11
- import type { AgentPathRuntime, AgentPluginConfigRuntime } from "../../../types/agent/AgentRuntimeAssembly.js";
12
- import type { DowncityConfig } from "../../../types/config/DowncityConfig.js";
13
- import type { JsonValue } from "../../../types/common/Json.js";
14
- import type { AgentPlugins } from "../../../types/plugin/PluginRuntime.js";
15
- import type { Plugin } from "../../../types/plugin/PluginDefinition.js";
16
- import type { SessionMetadataV1, SessionRecordV1 } from "../../../executor/types/SessionRecords.js";
17
- import type { SessionRunInput, SessionRunResult } from "../../../executor/types/SessionRun.js";
18
- import type { SessionHistoryStore } from "../../../executor/store/history/SessionHistoryStore.js";
19
- import type { AgentSessionPromptInput } from "../../../types/sdk/AgentSessionPrompt.js";
20
- import type { AgentSessionStopResult } from "../../../types/sdk/AgentSessionStop.js";
21
- import type { SessionMutationSubscriber, SessionMutationUnsubscribe } from "../../../types/session/SessionMutation.js";
22
- import type { SessionApprovalRuntimeEvent } from "../../../types/session/SessionApproval.js";
23
- import type { AgentSessionTurnHandle } from "../../../types/sdk/AgentSessionTurn.js";
24
- /**
25
- * 跨 plugin runtime 调用参数。
26
- */
27
- export interface InvokePluginParams {
28
- /**
29
- * 目标 plugin 名称。
30
- */
31
- plugin: string;
32
- /**
33
- * 目标 action 名称。
34
- */
35
- action: string;
36
- /**
37
- * 调用时附带的结构化 payload。
38
- */
39
- payload?: JsonValue;
40
- }
41
- /**
42
- * 跨 plugin runtime 调用结果。
43
- */
44
- export interface InvokePluginResult {
45
- /**
46
- * 调用是否成功。
47
- */
48
- success: boolean;
49
- /**
50
- * 成功时返回的数据载荷。
51
- */
52
- data?: JsonValue;
53
- /**
54
- * 失败时的错误信息。
55
- */
56
- error?: string;
57
- }
58
- /**
59
- * 跨 plugin runtime 调用端口。
60
- */
61
- export interface InvokePluginPort {
62
- /**
63
- * 调用指定 plugin action。
64
- */
65
- invoke(params: InvokePluginParams): Promise<InvokePluginResult>;
66
- }
67
- /**
68
- * 单个 Session 执行端口。
69
- */
70
- export interface SessionExecutorPort {
71
- /**
72
- * 执行一次 session run。
73
- */
74
- run(params: SessionRunInput): Promise<SessionRunResult>;
75
- /**
76
- * 请求取消当前正在执行的 turn。
77
- *
78
- * 关键点(中文)
79
- * - 返回 `true` 表示已发出取消请求。
80
- * - 返回 `false` 表示当前没有可取消的执行。
81
- */
82
- stop(): boolean;
83
- }
84
- /**
85
- * 单个 Session 实例端口。
86
- */
87
- export interface SessionPort {
88
- /**
89
- * 当前 session 标识。
90
- */
91
- readonly sessionId: string;
92
- /**
93
- * 获取当前 session 的执行端口。
94
- */
95
- getExecutor(): SessionExecutorPort;
96
- /**
97
- * 获取当前 session 的持久化端口。
98
- */
99
- getHistoryStore(): SessionHistoryStore;
100
- /**
101
- * 向当前 session actor 追加一条新的 prompt。
102
- *
103
- * 关键点(中文)
104
- * - 这是面向 SDK / transport 的统一交互输入入口。
105
- * - 返回值只有在当前输入被绑定到某个 turn 后才会兑现。
106
- */
107
- prompt(input: AgentSessionPromptInput): Promise<AgentSessionTurnHandle>;
108
- /**
109
- * 停止当前 turn,并取消尚未被吸收的排队 prompt。
110
- */
111
- stop(): Promise<AgentSessionStopResult>;
112
- /**
113
- * 订阅当前 session 后续产生的 future 事件。
114
- *
115
- * 关键点(中文)
116
- * - 只广播订阅之后产生的事件。
117
- * - 当前 Message snapshot 通过公开 SDK `session.messages()` 读取。
118
- */
119
- subscribe(subscriber: SessionMutationSubscriber): SessionMutationUnsubscribe;
120
- /**
121
- * 发布一条 session runtime 事件。
122
- *
123
- * 关键点(中文)
124
- * - plugin runtime 用它把审批、外部进度等非模型 chunk 事件推送给订阅方。
125
- * - 历史消息持久化仍由 append_user_message / append_assistant_message 负责。
126
- */
127
- publishEvent(event: SessionApprovalRuntimeEvent): Promise<void>;
128
- /**
129
- * 追加一条 user 消息。
130
- */
131
- append_user_message(params: {
132
- /**
133
- * 已构造好的完整消息。
134
- */
135
- message?: SessionRecordV1 | null;
136
- /**
137
- * 兜底文本内容。
138
- */
139
- text?: string;
140
- /**
141
- * 附加元数据。
142
- */
143
- extra?: SessionMetadataV1["extra"];
144
- }): Promise<void>;
145
- /**
146
- * 追加一条 assistant 消息。
147
- */
148
- append_assistant_message(params: {
149
- /**
150
- * 已构造好的完整消息。
151
- */
152
- message?: SessionRecordV1 | null;
153
- /**
154
- * 兜底文本内容。
155
- */
156
- fallbackText?: string;
157
- /**
158
- * 附加元数据。
159
- */
160
- extra?: SessionMetadataV1["extra"];
161
- }): Promise<void>;
162
- /**
163
- * 返回当前 session 是否正在执行。
164
- */
165
- isExecuting(): boolean;
166
- }
167
- /**
168
- * Session 集合入口。
169
- */
170
- export interface SessionCollectionPort {
171
- /**
172
- * 获取指定 sessionId 对应的 Session 实例。
173
- */
174
- get(sessionId: string): SessionPort;
175
- /**
176
- * 返回当前所有执行中的 sessionId。
177
- */
178
- listExecutingSessionIds(): string[];
179
- /**
180
- * 返回当前执行中的 session 数量。
181
- */
182
- getExecutingSessionCount(): number;
183
- /**
184
- * 解析指定 session 当前绑定的模型实例。
185
- *
186
- * 关键点(中文)
187
- * - 模型归属于 session,而不是 agent 全局运行时。
188
- * - 这里会触发 session 初始化/宿主配置,适合 task 等后台链路按 session 读取模型。
189
- */
190
- resolveModel(sessionId: string): Promise<LanguageModel | undefined>;
191
- }
192
- /**
193
- * AgentContext 构造参数。
194
- *
195
- * 关键点(中文)
196
- * - 装配方负责把 session / plugins 等上层依赖注入进来。
197
- * - `env` 必须传入 agent 持有的 mutable 共享对象引用,不要在这里克隆。
198
- */
199
- export interface AgentContextOptions {
200
- /** 当前命令工作目录。 */
201
- cwd: string;
202
- /** 当前项目根目录。 */
203
- rootPath: string;
204
- /** 统一日志器。 */
205
- logger: Logger;
206
- /** 当前运行时已解析配置。 */
207
- config: DowncityConfig;
208
- /**
209
- * 当前 agent env 共享对象引用。
210
- *
211
- * 关键点(中文)
212
- * - 必须是 Agent 持有的同一个 mutable 引用,不要克隆后再传入。
213
- * - Session step 内优先读取队列已经提交的 effective env。
214
- */
215
- env: Record<string, string>;
216
- /** 当前生效的 system 文本集合。 */
217
- systems: string[];
218
- /** 当前可见的路径能力集合。 */
219
- paths: AgentPathRuntime;
220
- /** 当前可见的 plugin 配置持久化能力集合。 */
221
- pluginConfig: AgentPluginConfigRuntime;
222
- /** 当前 agent 持有的插件实例集合。 */
223
- pluginInstances: Map<string, Plugin>;
224
- /** Session 能力入口。 */
225
- session: SessionCollectionPort;
226
- /** Plugin 调用入口。 */
227
- plugins: AgentPlugins;
228
- }
229
- /**
230
- * 统一执行上下文。
231
- *
232
- * 关键点(中文)
233
- * - 字段全部 readonly,构造一次后语义稳定,避免 plugin 误改。
234
- * - `env` 引用 agent 级共享 mutable 对象,`...ctx.env` / `ctx.env.FOO` 直接可用。
235
- * - `invoke` 是构造期组装的 plugin 调用端口,对外仍以 `InvokePluginPort` 形态暴露。
236
- */
237
- export declare class AgentContext {
238
- /** 当前命令工作目录。 */
239
- readonly cwd: string;
240
- /** 当前项目根目录。 */
241
- readonly rootPath: string;
242
- /** 统一日志器。 */
243
- readonly logger: Logger;
244
- /** 当前运行时已解析配置。 */
245
- readonly config: DowncityConfig;
246
- /** 当前 Agent configured env 共享对象。 */
247
- private readonly configured_env;
248
- /** 当前 Agent configured system 文本。 */
249
- private readonly configured_systems;
250
- /** 当前可见的路径能力集合。 */
251
- readonly paths: AgentPathRuntime;
252
- /** 当前可见的 plugin 配置持久化能力集合。 */
253
- readonly pluginConfig: AgentPluginConfigRuntime;
254
- /** 当前 agent 持有的插件实例集合。 */
255
- readonly pluginInstances: Map<string, Plugin>;
256
- /** Session 能力入口。 */
257
- readonly session: SessionCollectionPort;
258
- /** Plugin 调用入口。 */
259
- readonly plugins: AgentPlugins;
260
- /** 跨 plugin runtime 调用主入口。 */
261
- readonly invoke: InvokePluginPort;
262
- constructor(options: AgentContextOptions);
263
- /**
264
- * 读取当前调用链可见的 Agent env。
265
- *
266
- * 关键点(中文)
267
- * - Session step 内优先返回统一输入队列已经提交的 effective env。
268
- * - Session 运行外返回 Agent 配置 API 最近一次成功写入的 configured env。
269
- */
270
- get env(): Record<string, string>;
271
- /**
272
- * 读取当前调用链可见的 Agent instruction。
273
- */
274
- get systems(): string[];
275
- /**
276
- * 读取指定 sessionId 对应的 session 端口。
277
- *
278
- * 关键点(中文)
279
- * - 返回值是统一的 `SessionPort`,而不是裸 `Executor`。
280
- * - 这样 HTTP / plugin runtime / chat queue / contact 等入口都能复用同一层会话装配与执行兜底。
281
- */
282
- getSession(sessionId: string): SessionPort;
283
- /**
284
- * 返回当前执行中的 sessionId 列表。
285
- */
286
- listExecutingSessionIds(): string[];
287
- /**
288
- * 返回当前执行中的 session 数量。
289
- */
290
- getExecutingSessionCount(): number;
291
- /**
292
- * 跨 plugin runtime 调用 action 的内部实现。
293
- *
294
- * 关键点(中文)
295
- * - 统一把 `runAction` 的成功/失败结果归一化为 `InvokePluginResult`。
296
- * - 这里替代了原 `createAgentContext` 工厂里的胶水匿名函数。
297
- */
298
- private invoke_plugin_action;
299
- }
300
- /**
301
- * 允许 optional 字段的结构化配置对象。
302
- */
303
- export type StructuredConfig = {
304
- [key: string]: JsonValue | undefined;
305
- };
306
- //# sourceMappingURL=AgentContext.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AgentContext.d.ts","sourceRoot":"","sources":["../../../../src/types/runtime/agent/AgentContext.ts"],"names":[],"mappings":"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"}
@@ -1,128 +0,0 @@
1
- /**
2
- * Agent 执行上下文类型定义。
3
- *
4
- * 职责说明(中文)
5
- * - 这里定义 plugin runtime、plugin、prompt system 共用的统一执行上下文。
6
- * - `AgentContext` 是一个 class,表达"当前一次执行可见的能力面",不是宿主状态本体。
7
- * - 同一 agent 实例全程共享同一个 context;plugin、session、executor 都基于它读写状态。
8
- */
9
- import { getSessionRunContext } from "../../../executor/SessionRunScope.js";
10
- /**
11
- * 统一执行上下文。
12
- *
13
- * 关键点(中文)
14
- * - 字段全部 readonly,构造一次后语义稳定,避免 plugin 误改。
15
- * - `env` 引用 agent 级共享 mutable 对象,`...ctx.env` / `ctx.env.FOO` 直接可用。
16
- * - `invoke` 是构造期组装的 plugin 调用端口,对外仍以 `InvokePluginPort` 形态暴露。
17
- */
18
- export class AgentContext {
19
- /** 当前命令工作目录。 */
20
- cwd;
21
- /** 当前项目根目录。 */
22
- rootPath;
23
- /** 统一日志器。 */
24
- logger;
25
- /** 当前运行时已解析配置。 */
26
- config;
27
- /** 当前 Agent configured env 共享对象。 */
28
- configured_env;
29
- /** 当前 Agent configured system 文本。 */
30
- configured_systems;
31
- /** 当前可见的路径能力集合。 */
32
- paths;
33
- /** 当前可见的 plugin 配置持久化能力集合。 */
34
- pluginConfig;
35
- /** 当前 agent 持有的插件实例集合。 */
36
- pluginInstances;
37
- /** Session 能力入口。 */
38
- session;
39
- /** Plugin 调用入口。 */
40
- plugins;
41
- /** 跨 plugin runtime 调用主入口。 */
42
- invoke;
43
- constructor(options) {
44
- this.cwd = options.cwd;
45
- this.rootPath = options.rootPath;
46
- this.logger = options.logger;
47
- this.config = options.config;
48
- this.configured_env = options.env;
49
- this.configured_systems = options.systems;
50
- this.paths = options.paths;
51
- this.pluginConfig = options.pluginConfig;
52
- this.pluginInstances = options.pluginInstances;
53
- this.session = options.session;
54
- this.plugins = options.plugins;
55
- this.invoke = {
56
- invoke: (params) => this.invoke_plugin_action(params),
57
- };
58
- }
59
- /**
60
- * 读取当前调用链可见的 Agent env。
61
- *
62
- * 关键点(中文)
63
- * - Session step 内优先返回统一输入队列已经提交的 effective env。
64
- * - Session 运行外返回 Agent 配置 API 最近一次成功写入的 configured env。
65
- */
66
- get env() {
67
- const effective_env = getSessionRunContext()?.agentEnv;
68
- return effective_env
69
- ? { ...effective_env }
70
- : this.configured_env;
71
- }
72
- /**
73
- * 读取当前调用链可见的 Agent instruction。
74
- */
75
- get systems() {
76
- const effective_systems = getSessionRunContext()?.agentSystems;
77
- return effective_systems
78
- ? [...effective_systems]
79
- : this.configured_systems;
80
- }
81
- /**
82
- * 读取指定 sessionId 对应的 session 端口。
83
- *
84
- * 关键点(中文)
85
- * - 返回值是统一的 `SessionPort`,而不是裸 `Executor`。
86
- * - 这样 HTTP / plugin runtime / chat queue / contact 等入口都能复用同一层会话装配与执行兜底。
87
- */
88
- getSession(sessionId) {
89
- return this.session.get(sessionId);
90
- }
91
- /**
92
- * 返回当前执行中的 sessionId 列表。
93
- */
94
- listExecutingSessionIds() {
95
- return this.session.listExecutingSessionIds();
96
- }
97
- /**
98
- * 返回当前执行中的 session 数量。
99
- */
100
- getExecutingSessionCount() {
101
- return this.session.getExecutingSessionCount();
102
- }
103
- /**
104
- * 跨 plugin runtime 调用 action 的内部实现。
105
- *
106
- * 关键点(中文)
107
- * - 统一把 `runAction` 的成功/失败结果归一化为 `InvokePluginResult`。
108
- * - 这里替代了原 `createAgentContext` 工厂里的胶水匿名函数。
109
- */
110
- async invoke_plugin_action(params) {
111
- const result = await this.plugins.runAction({
112
- plugin: params.plugin,
113
- action: params.action,
114
- ...(params.payload !== undefined ? { payload: params.payload } : {}),
115
- });
116
- if (!result.success) {
117
- return {
118
- success: false,
119
- error: result.error || result.message || "plugin action failed",
120
- };
121
- }
122
- return {
123
- success: true,
124
- ...(result.data !== undefined ? { data: result.data } : {}),
125
- };
126
- }
127
- }
128
- //# sourceMappingURL=AgentContext.js.map