@downcity/agent 1.1.437 → 1.1.445

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 (702) hide show
  1. package/README.md +25 -18
  2. package/bin/agent/Agent.d.ts +44 -20
  3. package/bin/agent/Agent.d.ts.map +1 -1
  4. package/bin/agent/Agent.js +114 -69
  5. package/bin/agent/Agent.js.map +1 -1
  6. package/bin/agent/AgentInstructions.d.ts +18 -4
  7. package/bin/agent/AgentInstructions.d.ts.map +1 -1
  8. package/bin/agent/AgentInstructions.js +33 -14
  9. package/bin/agent/AgentInstructions.js.map +1 -1
  10. package/bin/agent/AgentMemoryStorage.d.ts +1 -1
  11. package/bin/agent/AgentMemoryStorage.d.ts.map +1 -1
  12. package/bin/agent/AgentMemoryStorage.js.map +1 -1
  13. package/bin/agent/AgentSessions.d.ts +29 -16
  14. package/bin/agent/AgentSessions.d.ts.map +1 -1
  15. package/bin/agent/AgentSessions.js +42 -22
  16. package/bin/agent/AgentSessions.js.map +1 -1
  17. package/bin/group/Group.d.ts +13 -12
  18. package/bin/group/Group.d.ts.map +1 -1
  19. package/bin/group/Group.js +24 -23
  20. package/bin/group/Group.js.map +1 -1
  21. package/bin/group/GroupSession.d.ts.map +1 -1
  22. package/bin/group/GroupSession.js +13 -9
  23. package/bin/group/GroupSession.js.map +1 -1
  24. package/bin/group/GroupSessions.d.ts +27 -2
  25. package/bin/group/GroupSessions.d.ts.map +1 -1
  26. package/bin/group/GroupSessions.js +68 -21
  27. package/bin/group/GroupSessions.js.map +1 -1
  28. package/bin/group/storage/LocalGroupSessionDataStore.d.ts +8 -0
  29. package/bin/group/storage/LocalGroupSessionDataStore.d.ts.map +1 -1
  30. package/bin/group/storage/LocalGroupSessionDataStore.js +1 -1
  31. package/bin/group/storage/LocalGroupSessionDataStore.js.map +1 -1
  32. package/bin/group/storage/LocalGroupSessionStore.d.ts +64 -5
  33. package/bin/group/storage/LocalGroupSessionStore.d.ts.map +1 -1
  34. package/bin/group/storage/LocalGroupSessionStore.js +114 -23
  35. package/bin/group/storage/LocalGroupSessionStore.js.map +1 -1
  36. package/bin/index.d.ts +25 -30
  37. package/bin/index.d.ts.map +1 -1
  38. package/bin/index.js +14 -14
  39. package/bin/index.js.map +1 -1
  40. package/bin/{executor/model → model}/ModelGenerate.d.ts +1 -1
  41. package/bin/model/ModelGenerate.d.ts.map +1 -0
  42. package/bin/model/ModelGenerate.js.map +1 -0
  43. package/bin/{executor/model → model}/ModelRequestRunner.d.ts +1 -1
  44. package/bin/model/ModelRequestRunner.d.ts.map +1 -0
  45. package/bin/model/ModelRequestRunner.js.map +1 -0
  46. package/bin/{executor/model → model}/ModelStepRunner.d.ts +6 -7
  47. package/bin/model/ModelStepRunner.d.ts.map +1 -0
  48. package/bin/{executor/model → model}/ModelStepRunner.js +16 -10
  49. package/bin/model/ModelStepRunner.js.map +1 -0
  50. package/bin/model/ModelStreamConsumer.d.ts.map +1 -0
  51. package/bin/model/ModelStreamConsumer.js.map +1 -0
  52. package/bin/model/ModelStreamFailure.d.ts.map +1 -0
  53. package/bin/model/ModelStreamFailure.js.map +1 -0
  54. package/bin/model/ToolInputValidation.d.ts +28 -0
  55. package/bin/model/ToolInputValidation.d.ts.map +1 -0
  56. package/bin/model/ToolInputValidation.js +37 -0
  57. package/bin/model/ToolInputValidation.js.map +1 -0
  58. package/bin/model/messages/ChatMessageMarkup.d.ts.map +1 -0
  59. package/bin/model/messages/ChatMessageMarkup.js.map +1 -0
  60. package/bin/{executor → model}/messages/ChatMessageMarkupTypes.d.ts +1 -1
  61. package/bin/model/messages/ChatMessageMarkupTypes.d.ts.map +1 -0
  62. package/bin/{executor → model}/messages/ChatMessageMarkupTypes.js +1 -1
  63. package/bin/model/messages/ChatMessageMarkupTypes.js.map +1 -0
  64. package/bin/model/messages/SessionAttachmentMapper.d.ts.map +1 -0
  65. package/bin/model/messages/SessionAttachmentMapper.js.map +1 -0
  66. package/bin/model/messages/SessionMessageLog.d.ts.map +1 -0
  67. package/bin/model/messages/SessionMessageLog.js.map +1 -0
  68. package/bin/model/messages/SessionModelMessages.d.ts.map +1 -0
  69. package/bin/{executor → model}/messages/SessionModelMessages.js +0 -1
  70. package/bin/model/messages/SessionModelMessages.js.map +1 -0
  71. package/bin/model/prompts/SystemPromptAssets.d.ts.map +1 -0
  72. package/bin/{executor/composer/system/default → model/prompts}/SystemPromptAssets.js +1 -1
  73. package/bin/model/prompts/SystemPromptAssets.js.map +1 -0
  74. package/bin/model/prompts/assets/core.prompt.d.ts +7 -0
  75. package/bin/model/prompts/assets/core.prompt.d.ts.map +1 -0
  76. package/bin/model/prompts/assets/core.prompt.js +8 -0
  77. package/bin/model/prompts/assets/core.prompt.js.map +1 -0
  78. package/bin/session/Session.d.ts +29 -17
  79. package/bin/session/Session.d.ts.map +1 -1
  80. package/bin/session/Session.js +161 -134
  81. package/bin/session/Session.js.map +1 -1
  82. package/bin/session/input/SessionHookRunner.d.ts +52 -0
  83. package/bin/session/input/SessionHookRunner.d.ts.map +1 -0
  84. package/bin/session/input/SessionHookRunner.js +51 -0
  85. package/bin/session/input/SessionHookRunner.js.map +1 -0
  86. package/bin/session/input/SessionSystem.d.ts +26 -0
  87. package/bin/session/input/SessionSystem.d.ts.map +1 -0
  88. package/bin/session/{SessionSystem.js → input/SessionSystem.js} +27 -23
  89. package/bin/session/input/SessionSystem.js.map +1 -0
  90. package/bin/session/input/StepInput.d.ts +77 -0
  91. package/bin/session/input/StepInput.d.ts.map +1 -0
  92. package/bin/session/input/StepInput.js +429 -0
  93. package/bin/session/input/StepInput.js.map +1 -0
  94. package/bin/session/input/composer/AdaptiveContextCheckpoint.d.ts +33 -0
  95. package/bin/session/input/composer/AdaptiveContextCheckpoint.d.ts.map +1 -0
  96. package/bin/session/input/composer/AdaptiveContextCheckpoint.js +83 -0
  97. package/bin/session/input/composer/AdaptiveContextCheckpoint.js.map +1 -0
  98. package/bin/session/input/composer/AdaptiveContextParts.d.ts +26 -0
  99. package/bin/session/input/composer/AdaptiveContextParts.d.ts.map +1 -0
  100. package/bin/session/input/composer/AdaptiveContextParts.js +124 -0
  101. package/bin/session/input/composer/AdaptiveContextParts.js.map +1 -0
  102. package/bin/session/input/composer/ComposerAssembly.d.ts +21 -0
  103. package/bin/session/input/composer/ComposerAssembly.d.ts.map +1 -0
  104. package/bin/session/input/composer/ComposerAssembly.js +64 -0
  105. package/bin/session/input/composer/ComposerAssembly.js.map +1 -0
  106. package/bin/session/{composer/policies/SessionSummaryPrompts.d.ts → input/composer/ContextSummaryPrompts.d.ts} +5 -3
  107. package/bin/session/input/composer/ContextSummaryPrompts.d.ts.map +1 -0
  108. package/bin/session/{composer/policies/SessionSummaryPrompts.js → input/composer/ContextSummaryPrompts.js} +5 -3
  109. package/bin/session/input/composer/ContextSummaryPrompts.js.map +1 -0
  110. package/bin/session/input/composer/DefaultSessionComposer.d.ts +24 -0
  111. package/bin/session/input/composer/DefaultSessionComposer.d.ts.map +1 -0
  112. package/bin/session/input/composer/DefaultSessionComposer.js +108 -0
  113. package/bin/session/input/composer/DefaultSessionComposer.js.map +1 -0
  114. package/bin/session/input/composer/FullHistorySessionComposer.d.ts +19 -0
  115. package/bin/session/input/composer/FullHistorySessionComposer.d.ts.map +1 -0
  116. package/bin/session/input/composer/FullHistorySessionComposer.js +36 -0
  117. package/bin/session/input/composer/FullHistorySessionComposer.js.map +1 -0
  118. package/bin/session/{SessionLoop.d.ts → loop/SessionLoop.d.ts} +34 -7
  119. package/bin/session/loop/SessionLoop.d.ts.map +1 -0
  120. package/bin/session/{SessionLoop.js → loop/SessionLoop.js} +79 -16
  121. package/bin/session/loop/SessionLoop.js.map +1 -0
  122. package/bin/session/{SessionQueue.d.ts → loop/SessionQueue.d.ts} +9 -1
  123. package/bin/session/loop/SessionQueue.d.ts.map +1 -0
  124. package/bin/session/{SessionQueue.js → loop/SessionQueue.js} +19 -0
  125. package/bin/session/loop/SessionQueue.js.map +1 -0
  126. package/bin/session/{SessionState.d.ts → loop/SessionState.d.ts} +4 -5
  127. package/bin/session/loop/SessionState.d.ts.map +1 -0
  128. package/bin/session/{SessionState.js → loop/SessionState.js} +6 -25
  129. package/bin/session/loop/SessionState.js.map +1 -0
  130. package/bin/session/{SessionTitle.d.ts → loop/SessionTitle.d.ts} +4 -4
  131. package/bin/session/loop/SessionTitle.d.ts.map +1 -0
  132. package/bin/session/{SessionTitle.js → loop/SessionTitle.js} +3 -3
  133. package/bin/session/loop/SessionTitle.js.map +1 -0
  134. package/bin/session/loop/SessionTitleTask.d.ts.map +1 -0
  135. package/bin/session/loop/SessionTitleTask.js.map +1 -0
  136. package/bin/session/{runtime → loop}/SessionTurnCompletion.d.ts +7 -0
  137. package/bin/session/loop/SessionTurnCompletion.d.ts.map +1 -0
  138. package/bin/session/{runtime → loop}/SessionTurnCompletion.js +25 -6
  139. package/bin/session/loop/SessionTurnCompletion.js.map +1 -0
  140. package/bin/session/loop/SessionTurnContext.d.ts +12 -0
  141. package/bin/session/loop/SessionTurnContext.d.ts.map +1 -0
  142. package/bin/session/{runtime → loop}/SessionTurnContext.js +14 -67
  143. package/bin/session/loop/SessionTurnContext.js.map +1 -0
  144. package/bin/session/loop/SessionTurnFileDiff.d.ts.map +1 -0
  145. package/bin/session/{runtime → loop}/SessionTurnFileDiff.js +1 -1
  146. package/bin/session/loop/SessionTurnFileDiff.js.map +1 -0
  147. package/bin/session/{messages → loop}/SessionTurnFileDiffBuilder.d.ts +3 -3
  148. package/bin/session/loop/SessionTurnFileDiffBuilder.d.ts.map +1 -0
  149. package/bin/session/loop/SessionTurnFileDiffBuilder.js.map +1 -0
  150. package/bin/session/messages/ApprovalInteraction.d.ts +30 -0
  151. package/bin/session/messages/ApprovalInteraction.d.ts.map +1 -0
  152. package/bin/session/messages/ApprovalInteraction.js +61 -0
  153. package/bin/session/messages/ApprovalInteraction.js.map +1 -0
  154. package/bin/session/messages/SessionAgentMessageState.d.ts +47 -18
  155. package/bin/session/messages/SessionAgentMessageState.d.ts.map +1 -1
  156. package/bin/session/messages/SessionAgentMessageState.js +224 -86
  157. package/bin/session/messages/SessionAgentMessageState.js.map +1 -1
  158. package/bin/session/messages/SessionAgentMessageWriter.d.ts +15 -4
  159. package/bin/session/messages/SessionAgentMessageWriter.d.ts.map +1 -1
  160. package/bin/session/messages/SessionAgentMessageWriter.js +57 -37
  161. package/bin/session/messages/SessionAgentMessageWriter.js.map +1 -1
  162. package/bin/session/messages/SessionAgentParts.d.ts +14 -0
  163. package/bin/session/messages/SessionAgentParts.d.ts.map +1 -0
  164. package/bin/session/messages/SessionAgentParts.js +20 -0
  165. package/bin/session/messages/SessionAgentParts.js.map +1 -0
  166. package/bin/session/{execution → messages}/SessionAssistantOutputAdapter.d.ts +2 -2
  167. package/bin/session/messages/SessionAssistantOutputAdapter.d.ts.map +1 -0
  168. package/bin/session/messages/SessionAssistantOutputAdapter.js.map +1 -0
  169. package/bin/session/messages/SessionEventHub.d.ts.map +1 -0
  170. package/bin/session/messages/SessionEventHub.js.map +1 -0
  171. package/bin/session/messages/SessionInteractions.d.ts +57 -0
  172. package/bin/session/messages/SessionInteractions.d.ts.map +1 -0
  173. package/bin/session/messages/SessionInteractions.js +178 -0
  174. package/bin/session/messages/SessionInteractions.js.map +1 -0
  175. package/bin/session/messages/SessionJsonValue.d.ts +1 -3
  176. package/bin/session/messages/SessionJsonValue.d.ts.map +1 -1
  177. package/bin/session/messages/SessionJsonValue.js +0 -19
  178. package/bin/session/messages/SessionJsonValue.js.map +1 -1
  179. package/bin/session/messages/SessionMessageCache.d.ts +55 -0
  180. package/bin/session/messages/SessionMessageCache.d.ts.map +1 -0
  181. package/bin/session/messages/SessionMessageCache.js +133 -0
  182. package/bin/session/messages/SessionMessageCache.js.map +1 -0
  183. package/bin/session/messages/SessionMessageState.d.ts +17 -0
  184. package/bin/session/messages/SessionMessageState.d.ts.map +1 -0
  185. package/bin/session/messages/SessionMessageState.js +34 -0
  186. package/bin/session/messages/SessionMessageState.js.map +1 -0
  187. package/bin/session/messages/SessionMessageTimeline.d.ts.map +1 -0
  188. package/bin/session/{browse → messages}/SessionMessageTimeline.js +0 -1
  189. package/bin/session/messages/SessionMessageTimeline.js.map +1 -0
  190. package/bin/session/{SessionMessages.d.ts → messages/SessionMessages.d.ts} +35 -43
  191. package/bin/session/messages/SessionMessages.d.ts.map +1 -0
  192. package/bin/session/{SessionMessages.js → messages/SessionMessages.js} +178 -196
  193. package/bin/session/messages/SessionMessages.js.map +1 -0
  194. package/bin/session/messages/SessionModelRequestWarning.d.ts.map +1 -0
  195. package/bin/session/messages/SessionModelRequestWarning.js.map +1 -0
  196. package/bin/session/messages/SessionMutationFactory.d.ts +26 -0
  197. package/bin/session/messages/SessionMutationFactory.d.ts.map +1 -0
  198. package/bin/session/messages/SessionMutationFactory.js +38 -0
  199. package/bin/session/messages/SessionMutationFactory.js.map +1 -0
  200. package/bin/session/messages/SessionUserMessage.d.ts +5 -7
  201. package/bin/session/messages/SessionUserMessage.d.ts.map +1 -1
  202. package/bin/session/messages/SessionUserMessage.js +5 -28
  203. package/bin/session/messages/SessionUserMessage.js.map +1 -1
  204. package/bin/{executor/core-engine/CoreEngineSignals.d.ts → session/runner/AssistantParts.d.ts} +4 -9
  205. package/bin/session/runner/AssistantParts.d.ts.map +1 -0
  206. package/bin/{executor/core-engine/CoreEngineSignals.js → session/runner/AssistantParts.js} +4 -17
  207. package/bin/session/runner/AssistantParts.js.map +1 -0
  208. package/bin/session/runner/ContextPressure.d.ts +15 -0
  209. package/bin/session/runner/ContextPressure.d.ts.map +1 -0
  210. package/bin/{executor/core-engine/CoreEngineContextCompaction.js → session/runner/ContextPressure.js} +11 -11
  211. package/bin/session/runner/ContextPressure.js.map +1 -0
  212. package/bin/session/runner/ContextRetry.d.ts +39 -0
  213. package/bin/session/runner/ContextRetry.d.ts.map +1 -0
  214. package/bin/{executor/services/ExecutorRecoveryPolicy.js → session/runner/ContextRetry.js} +19 -19
  215. package/bin/session/runner/ContextRetry.js.map +1 -0
  216. package/bin/{executor/core-engine/CoreEngineError.d.ts → session/runner/ModelFailure.d.ts} +4 -4
  217. package/bin/session/runner/ModelFailure.d.ts.map +1 -0
  218. package/bin/{executor/core-engine/CoreEngineError.js → session/runner/ModelFailure.js} +4 -4
  219. package/bin/session/runner/ModelFailure.js.map +1 -0
  220. package/bin/session/runner/SessionExecutor.d.ts +108 -0
  221. package/bin/session/runner/SessionExecutor.d.ts.map +1 -0
  222. package/bin/session/runner/SessionExecutor.js +430 -0
  223. package/bin/session/runner/SessionExecutor.js.map +1 -0
  224. package/bin/session/runner/ToolLoopDecision.d.ts +60 -0
  225. package/bin/session/runner/ToolLoopDecision.d.ts.map +1 -0
  226. package/bin/{executor/core-engine/CoreEngineLoopDecision.js → session/runner/ToolLoopDecision.js} +5 -5
  227. package/bin/session/runner/ToolLoopDecision.js.map +1 -0
  228. package/bin/session/runner/ToolLoopLimits.d.ts +30 -0
  229. package/bin/session/runner/ToolLoopLimits.d.ts.map +1 -0
  230. package/bin/session/runner/ToolLoopLimits.js +46 -0
  231. package/bin/session/runner/ToolLoopLimits.js.map +1 -0
  232. package/bin/session/{browse → storage}/Browse.d.ts +1 -1
  233. package/bin/session/storage/Browse.d.ts.map +1 -0
  234. package/bin/session/{browse → storage}/Browse.js +1 -1
  235. package/bin/session/storage/Browse.js.map +1 -0
  236. package/bin/session/storage/LocalSessionStore.js +1 -1
  237. package/bin/session/storage/LocalSessionStore.js.map +1 -1
  238. package/bin/session/storage/LocalStorePaths.d.ts +0 -2
  239. package/bin/session/storage/LocalStorePaths.d.ts.map +1 -1
  240. package/bin/session/storage/LocalStorePaths.js +1 -1
  241. package/bin/session/storage/LocalStorePaths.js.map +1 -1
  242. package/bin/session/storage/Metadata.d.ts +1 -23
  243. package/bin/session/storage/Metadata.d.ts.map +1 -1
  244. package/bin/session/storage/Metadata.js +0 -18
  245. package/bin/session/storage/Metadata.js.map +1 -1
  246. package/bin/session/storage/RuntimeSessionPort.d.ts +0 -4
  247. package/bin/session/storage/RuntimeSessionPort.d.ts.map +1 -1
  248. package/bin/session/storage/RuntimeSessionPort.js +0 -1
  249. package/bin/session/storage/RuntimeSessionPort.js.map +1 -1
  250. package/bin/session/{preview → storage}/SessionMessagePreview.d.ts.map +1 -1
  251. package/bin/session/{preview → storage}/SessionMessagePreview.js +0 -1
  252. package/bin/session/{preview → storage}/SessionMessagePreview.js.map +1 -1
  253. package/bin/session/storage/SessionStorageCodec.d.ts.map +1 -1
  254. package/bin/session/storage/SessionStorageCodec.js +36 -18
  255. package/bin/session/storage/SessionStorageCodec.js.map +1 -1
  256. package/bin/session/storage/SessionStorageSchema.d.ts +1 -1
  257. package/bin/session/storage/SessionStorageSchema.js +1 -1
  258. package/bin/session/storage/SqliteSessionStorage.d.ts +6 -4
  259. package/bin/session/storage/SqliteSessionStorage.d.ts.map +1 -1
  260. package/bin/session/storage/SqliteSessionStorage.js +21 -18
  261. package/bin/session/storage/SqliteSessionStorage.js.map +1 -1
  262. package/bin/tools/ask/AskQuestionAnswers.d.ts +20 -0
  263. package/bin/tools/ask/AskQuestionAnswers.d.ts.map +1 -0
  264. package/bin/tools/ask/AskQuestionAnswers.js +99 -0
  265. package/bin/tools/ask/AskQuestionAnswers.js.map +1 -0
  266. package/bin/tools/ask/AskQuestionsTool.d.ts +5 -2
  267. package/bin/tools/ask/AskQuestionsTool.d.ts.map +1 -1
  268. package/bin/tools/ask/AskQuestionsTool.js +23 -31
  269. package/bin/tools/ask/AskQuestionsTool.js.map +1 -1
  270. package/bin/tools/ask/AskQuestionsToolSchemas.d.ts +1 -1
  271. package/bin/types/agent/AgentOptions.d.ts +16 -8
  272. package/bin/types/agent/AgentOptions.d.ts.map +1 -1
  273. package/bin/types/agent/AgentSessionCollection.d.ts +8 -0
  274. package/bin/types/agent/AgentSessionCollection.d.ts.map +1 -1
  275. package/bin/types/agent/SessionActor.d.ts +3 -3
  276. package/bin/types/agent/SessionActor.d.ts.map +1 -1
  277. package/bin/types/group/DispatchStrategy.js +1 -1
  278. package/bin/types/group/DispatchStrategy.js.map +1 -1
  279. package/bin/types/group/GroupSession.d.ts +41 -1
  280. package/bin/types/group/GroupSession.d.ts.map +1 -1
  281. package/bin/types/group/GroupSessionStore.d.ts +30 -3
  282. package/bin/types/group/GroupSessionStore.d.ts.map +1 -1
  283. package/bin/types/model/ModelRequest.d.ts.map +1 -0
  284. package/bin/types/model/ModelRequest.js.map +1 -0
  285. package/bin/types/sdk/AgentSessionAction.d.ts +1 -9
  286. package/bin/types/sdk/AgentSessionAction.d.ts.map +1 -1
  287. package/bin/types/session/{AdaptivePartContextPolicy.d.ts → ContextCheckpoint.d.ts} +10 -9
  288. package/bin/types/session/ContextCheckpoint.d.ts.map +1 -0
  289. package/bin/types/session/ContextCheckpoint.js +8 -0
  290. package/bin/types/session/ContextCheckpoint.js.map +1 -0
  291. package/bin/types/session/SessionAgentMessageState.d.ts +6 -10
  292. package/bin/types/session/SessionAgentMessageState.d.ts.map +1 -1
  293. package/bin/types/session/SessionAgentMessageState.js +3 -2
  294. package/bin/types/session/SessionAgentMessageState.js.map +1 -1
  295. package/bin/types/session/SessionComposer.d.ts +65 -36
  296. package/bin/types/session/SessionComposer.d.ts.map +1 -1
  297. package/bin/types/session/SessionComposer.js +7 -2
  298. package/bin/types/session/SessionComposer.js.map +1 -1
  299. package/bin/types/session/SessionExecution.d.ts +15 -11
  300. package/bin/types/session/SessionExecution.d.ts.map +1 -1
  301. package/bin/types/session/SessionExecution.js +1 -1
  302. package/bin/types/session/SessionInteractions.d.ts +0 -2
  303. package/bin/types/session/SessionInteractions.d.ts.map +1 -1
  304. package/bin/types/session/SessionLocalState.d.ts +0 -4
  305. package/bin/types/session/SessionLocalState.d.ts.map +1 -1
  306. package/bin/types/session/SessionLoop.d.ts +33 -12
  307. package/bin/types/session/SessionLoop.d.ts.map +1 -1
  308. package/bin/types/session/SessionMessages.d.ts +3 -29
  309. package/bin/types/session/SessionMessages.d.ts.map +1 -1
  310. package/bin/types/session/SessionOptions.d.ts +16 -13
  311. package/bin/types/session/SessionOptions.d.ts.map +1 -1
  312. package/bin/types/session/SessionPort.d.ts +0 -3
  313. package/bin/types/session/SessionPort.d.ts.map +1 -1
  314. package/bin/types/session/SessionState.d.ts +0 -1
  315. package/bin/types/session/SessionState.d.ts.map +1 -1
  316. package/bin/types/session/SessionSystem.d.ts +10 -12
  317. package/bin/types/session/SessionSystem.d.ts.map +1 -1
  318. package/bin/types/session/SessionTool.d.ts +2 -2
  319. package/bin/types/session/SessionTool.d.ts.map +1 -1
  320. package/bin/types/session/SessionTurnCompletion.d.ts +12 -2
  321. package/bin/types/session/SessionTurnCompletion.d.ts.map +1 -1
  322. package/bin/types/session/SessionTurnFileDiff.d.ts +4 -4
  323. package/bin/types/session/SessionTurnFileDiff.d.ts.map +1 -1
  324. package/bin/types/session/{SessionComposition.d.ts → StepInput.d.ts} +17 -15
  325. package/bin/types/session/StepInput.d.ts.map +1 -0
  326. package/bin/types/session/StepInput.js +8 -0
  327. package/bin/types/session/StepInput.js.map +1 -0
  328. package/bin/types/store/SessionHistoryMeta.d.ts.map +1 -0
  329. package/bin/types/store/SessionHistoryMeta.js.map +1 -0
  330. package/bin/types/store/SessionStorage.d.ts +17 -12
  331. package/bin/types/store/SessionStorage.d.ts.map +1 -1
  332. package/bin/types/tool/BoundAgentTool.d.ts +36 -0
  333. package/bin/types/tool/BoundAgentTool.d.ts.map +1 -0
  334. package/bin/types/tool/BoundAgentTool.js +13 -0
  335. package/bin/types/tool/BoundAgentTool.js.map +1 -0
  336. package/bin/types/tools/ask/AskQuestionsTool.d.ts +9 -13
  337. package/bin/types/tools/ask/AskQuestionsTool.d.ts.map +1 -1
  338. package/bin/types/tools/ask/AskQuestionsTool.js +3 -2
  339. package/bin/types/tools/ask/AskQuestionsTool.js.map +1 -1
  340. package/bin/types/turn/SessionAssistantOutput.d.ts.map +1 -0
  341. package/bin/types/turn/SessionAssistantOutput.js.map +1 -0
  342. package/bin/types/{executor → turn}/SessionTurnContext.d.ts +10 -28
  343. package/bin/types/turn/SessionTurnContext.d.ts.map +1 -0
  344. package/bin/types/turn/SessionTurnContext.js.map +1 -0
  345. package/bin/{executor/ids/resolveSessionId.d.ts → utils/ResolveSessionId.d.ts} +1 -1
  346. package/bin/utils/ResolveSessionId.d.ts.map +1 -0
  347. package/bin/{executor/ids/resolveSessionId.js → utils/ResolveSessionId.js} +1 -1
  348. package/bin/utils/ResolveSessionId.js.map +1 -0
  349. package/bin/utils/Time.d.ts +5 -8
  350. package/bin/utils/Time.d.ts.map +1 -1
  351. package/bin/utils/Time.js +5 -54
  352. package/bin/utils/Time.js.map +1 -1
  353. package/package.json +2 -2
  354. package/scripts/ask-question-answers.test.mjs +132 -0
  355. package/scripts/group-session-archive.test.mjs +193 -0
  356. package/scripts/{core-engine-model-stream.test.mjs → model-step-runner.test.mjs} +97 -4
  357. package/scripts/rewrite-build-aliases.mjs +3 -4
  358. package/scripts/session-action-part.test.mjs +172 -0
  359. package/scripts/session-agent-message-part-order.test.mjs +13 -7
  360. package/scripts/{core-engine-context-compaction.test.mjs → session-executor-context-pressure.test.mjs} +40 -32
  361. package/scripts/{executor-failure-result.test.mjs → session-executor-failure-result.test.mjs} +17 -14
  362. package/scripts/session-executor-max-steps.test.mjs +143 -0
  363. package/scripts/session-initialization.test.mjs +3 -4
  364. package/scripts/session-interaction-migration.test.mjs +145 -0
  365. package/scripts/session-interaction-mutation.test.mjs +202 -0
  366. package/scripts/session-messages-error-part.test.mjs +1 -1
  367. package/scripts/session-messages-error.test.mjs +1 -1
  368. package/scripts/session-prompt-idempotency.test.mjs +4 -2
  369. package/scripts/session-queue.test.mjs +21 -1
  370. package/scripts/session-storage-sqlite.test.mjs +3 -3
  371. package/scripts/session-system-blocks.test.mjs +61 -39
  372. package/scripts/session-turn-context.test.mjs +37 -40
  373. package/scripts/verify-build-aliases.mjs +1 -1
  374. package/src/agent/Agent.ts +137 -80
  375. package/src/agent/AgentInstructions.ts +48 -15
  376. package/src/agent/AgentMemoryStorage.ts +1 -1
  377. package/src/agent/AgentSessions.ts +60 -38
  378. package/src/group/Group.ts +27 -24
  379. package/src/group/GroupSession.ts +12 -8
  380. package/src/group/GroupSessions.ts +79 -20
  381. package/src/group/storage/LocalGroupSessionDataStore.ts +9 -1
  382. package/src/group/storage/LocalGroupSessionStore.ts +138 -28
  383. package/src/index.ts +35 -52
  384. package/src/{executor/model → model}/ModelGenerate.ts +3 -3
  385. package/src/{executor/model → model}/ModelRequestRunner.ts +2 -2
  386. package/src/{executor/model → model}/ModelStepRunner.ts +22 -19
  387. package/src/{executor/model → model}/ModelStreamConsumer.ts +1 -1
  388. package/src/model/README.md +117 -0
  389. package/src/model/ToolInputValidation.ts +58 -0
  390. package/src/{executor → model}/messages/ChatMessageMarkupTypes.ts +1 -1
  391. package/src/{executor → model}/messages/SessionModelMessages.ts +0 -1
  392. package/src/{executor/composer/system/default → model/prompts}/SystemPromptAssets.ts +1 -1
  393. package/src/model/prompts/assets/core.prompt.ts +9 -0
  394. package/src/{executor/composer/system/default → model/prompts}/assets/core.prompt.ts.txt +26 -25
  395. package/src/session/Session.ts +185 -151
  396. package/src/session/input/SessionHookRunner.ts +100 -0
  397. package/src/session/{SessionSystem.ts → input/SessionSystem.ts} +31 -29
  398. package/src/session/input/StepInput.ts +507 -0
  399. package/src/session/input/composer/AdaptiveContextCheckpoint.ts +115 -0
  400. package/src/session/input/composer/AdaptiveContextParts.ts +166 -0
  401. package/src/session/input/composer/ComposerAssembly.ts +81 -0
  402. package/src/session/{composer/policies/SessionSummaryPrompts.ts → input/composer/ContextSummaryPrompts.ts} +5 -2
  403. package/src/session/input/composer/DefaultSessionComposer.ts +147 -0
  404. package/src/session/input/composer/FullHistorySessionComposer.ts +55 -0
  405. package/src/session/loop/README.md +28 -0
  406. package/src/session/{SessionLoop.ts → loop/SessionLoop.ts} +100 -24
  407. package/src/session/{SessionQueue.ts → loop/SessionQueue.ts} +18 -0
  408. package/src/session/{SessionState.ts → loop/SessionState.ts} +4 -21
  409. package/src/session/{SessionTitle.ts → loop/SessionTitle.ts} +3 -3
  410. package/src/session/{runtime → loop}/SessionTurnCompletion.ts +27 -8
  411. package/src/session/{runtime → loop}/SessionTurnContext.ts +19 -93
  412. package/src/session/{runtime → loop}/SessionTurnFileDiff.ts +1 -1
  413. package/src/session/{messages → loop}/SessionTurnFileDiffBuilder.ts +4 -4
  414. package/src/session/messages/ApprovalInteraction.ts +77 -0
  415. package/src/session/messages/README.md +27 -0
  416. package/src/session/messages/SessionAgentMessageState.ts +324 -113
  417. package/src/session/messages/SessionAgentMessageWriter.ts +82 -45
  418. package/src/session/messages/SessionAgentParts.ts +39 -0
  419. package/src/session/{execution → messages}/SessionAssistantOutputAdapter.ts +2 -2
  420. package/src/session/messages/SessionInteractions.ts +227 -0
  421. package/src/session/messages/SessionJsonValue.ts +1 -18
  422. package/src/session/messages/SessionMessageCache.ts +171 -0
  423. package/src/session/messages/SessionMessageState.ts +42 -0
  424. package/src/session/{browse → messages}/SessionMessageTimeline.ts +0 -1
  425. package/src/session/{SessionMessages.ts → messages/SessionMessages.ts} +225 -284
  426. package/src/session/messages/SessionMutationFactory.ts +58 -0
  427. package/src/session/messages/SessionUserMessage.ts +7 -32
  428. package/src/{executor/core-engine/CoreEngineSignals.ts → session/runner/AssistantParts.ts} +3 -21
  429. package/src/{executor/core-engine/CoreEngineContextCompaction.ts → session/runner/ContextPressure.ts} +10 -10
  430. package/src/{executor/services/ExecutorRecoveryPolicy.ts → session/runner/ContextRetry.ts} +25 -25
  431. package/src/{executor/core-engine/CoreEngineError.ts → session/runner/ModelFailure.ts} +3 -3
  432. package/src/session/runner/SessionExecutor.ts +633 -0
  433. package/src/session/runner/ToolLoopDecision.ts +98 -0
  434. package/src/session/runner/ToolLoopLimits.ts +53 -0
  435. package/src/session/{browse → storage}/Browse.ts +2 -2
  436. package/src/session/storage/LocalSessionStore.ts +1 -1
  437. package/src/session/storage/LocalStorePaths.ts +1 -1
  438. package/src/session/storage/Metadata.ts +1 -44
  439. package/src/session/storage/RuntimeSessionPort.ts +0 -5
  440. package/src/session/{preview → storage}/SessionMessagePreview.ts +0 -1
  441. package/src/session/storage/SessionStorageCodec.ts +54 -28
  442. package/src/session/storage/SessionStorageSchema.ts +1 -1
  443. package/src/session/storage/SqliteSessionStorage.ts +29 -22
  444. package/src/tools/ask/AskQuestionAnswers.ts +125 -0
  445. package/src/tools/ask/AskQuestionsTool.ts +32 -37
  446. package/src/types/agent/AgentOptions.ts +17 -8
  447. package/src/types/agent/AgentSessionCollection.ts +9 -0
  448. package/src/types/agent/SessionActor.ts +3 -4
  449. package/src/types/group/DispatchStrategy.ts +1 -1
  450. package/src/types/group/GroupSession.ts +44 -1
  451. package/src/types/group/GroupSessionStore.ts +30 -3
  452. package/src/types/sdk/AgentSessionAction.ts +1 -14
  453. package/src/types/session/{AdaptivePartContextPolicy.ts → ContextCheckpoint.ts} +9 -8
  454. package/src/types/session/SessionAgentMessageState.ts +6 -16
  455. package/src/types/session/SessionComposer.ts +67 -39
  456. package/src/types/session/SessionExecution.ts +15 -13
  457. package/src/types/session/SessionInteractions.ts +0 -2
  458. package/src/types/session/SessionLocalState.ts +0 -5
  459. package/src/types/session/SessionLoop.ts +37 -12
  460. package/src/types/session/SessionMessages.ts +3 -34
  461. package/src/types/session/SessionOptions.ts +18 -13
  462. package/src/types/session/SessionPort.ts +0 -4
  463. package/src/types/session/SessionState.ts +0 -1
  464. package/src/types/session/SessionSystem.ts +10 -16
  465. package/src/types/session/SessionTool.ts +2 -2
  466. package/src/types/session/SessionTurnCompletion.ts +12 -2
  467. package/src/types/session/SessionTurnFileDiff.ts +4 -4
  468. package/src/types/session/{SessionComposition.ts → StepInput.ts} +22 -14
  469. package/src/types/store/SessionStorage.ts +17 -12
  470. package/src/types/tool/BoundAgentTool.ts +38 -0
  471. package/src/types/tools/ask/AskQuestionsTool.ts +11 -13
  472. package/src/types/{executor → turn}/SessionTurnContext.ts +8 -34
  473. package/src/utils/Time.ts +12 -64
  474. package/tsconfig.json +1 -2
  475. package/tsconfig.tsbuildinfo +1 -1
  476. package/bin/executor/Executor.d.ts +0 -92
  477. package/bin/executor/Executor.d.ts.map +0 -1
  478. package/bin/executor/Executor.js +0 -232
  479. package/bin/executor/Executor.js.map +0 -1
  480. package/bin/executor/composer/system/default/SystemPromptAssets.d.ts.map +0 -1
  481. package/bin/executor/composer/system/default/SystemPromptAssets.js.map +0 -1
  482. package/bin/executor/composer/system/default/assets/core.prompt.d.ts +0 -7
  483. package/bin/executor/composer/system/default/assets/core.prompt.d.ts.map +0 -1
  484. package/bin/executor/composer/system/default/assets/core.prompt.js +0 -8
  485. package/bin/executor/composer/system/default/assets/core.prompt.js.map +0 -1
  486. package/bin/executor/core-engine/CoreEngineContextCompaction.d.ts +0 -15
  487. package/bin/executor/core-engine/CoreEngineContextCompaction.d.ts.map +0 -1
  488. package/bin/executor/core-engine/CoreEngineContextCompaction.js.map +0 -1
  489. package/bin/executor/core-engine/CoreEngineError.d.ts.map +0 -1
  490. package/bin/executor/core-engine/CoreEngineError.js.map +0 -1
  491. package/bin/executor/core-engine/CoreEngineLoopDecision.d.ts +0 -26
  492. package/bin/executor/core-engine/CoreEngineLoopDecision.d.ts.map +0 -1
  493. package/bin/executor/core-engine/CoreEngineLoopDecision.js.map +0 -1
  494. package/bin/executor/core-engine/CoreEngineRunner.d.ts +0 -48
  495. package/bin/executor/core-engine/CoreEngineRunner.d.ts.map +0 -1
  496. package/bin/executor/core-engine/CoreEngineRunner.js +0 -343
  497. package/bin/executor/core-engine/CoreEngineRunner.js.map +0 -1
  498. package/bin/executor/core-engine/CoreEngineSignals.d.ts.map +0 -1
  499. package/bin/executor/core-engine/CoreEngineSignals.js.map +0 -1
  500. package/bin/executor/ids/resolveSessionId.d.ts.map +0 -1
  501. package/bin/executor/ids/resolveSessionId.js.map +0 -1
  502. package/bin/executor/messages/ChatMessageMarkup.d.ts.map +0 -1
  503. package/bin/executor/messages/ChatMessageMarkup.js.map +0 -1
  504. package/bin/executor/messages/ChatMessageMarkupTypes.d.ts.map +0 -1
  505. package/bin/executor/messages/ChatMessageMarkupTypes.js.map +0 -1
  506. package/bin/executor/messages/SessionAttachmentMapper.d.ts.map +0 -1
  507. package/bin/executor/messages/SessionAttachmentMapper.js.map +0 -1
  508. package/bin/executor/messages/SessionMessageLog.d.ts.map +0 -1
  509. package/bin/executor/messages/SessionMessageLog.js.map +0 -1
  510. package/bin/executor/messages/SessionModelMessages.d.ts.map +0 -1
  511. package/bin/executor/messages/SessionModelMessages.js.map +0 -1
  512. package/bin/executor/model/ModelGenerate.d.ts.map +0 -1
  513. package/bin/executor/model/ModelGenerate.js.map +0 -1
  514. package/bin/executor/model/ModelRequestRunner.d.ts.map +0 -1
  515. package/bin/executor/model/ModelRequestRunner.js.map +0 -1
  516. package/bin/executor/model/ModelStepRunner.d.ts.map +0 -1
  517. package/bin/executor/model/ModelStepRunner.js.map +0 -1
  518. package/bin/executor/model/ModelStreamConsumer.d.ts.map +0 -1
  519. package/bin/executor/model/ModelStreamConsumer.js.map +0 -1
  520. package/bin/executor/model/ModelStreamFailure.d.ts.map +0 -1
  521. package/bin/executor/model/ModelStreamFailure.js.map +0 -1
  522. package/bin/executor/services/ExecutorRecoveryPolicy.d.ts +0 -39
  523. package/bin/executor/services/ExecutorRecoveryPolicy.d.ts.map +0 -1
  524. package/bin/executor/services/ExecutorRecoveryPolicy.js.map +0 -1
  525. package/bin/executor/types/SessionHistoryMeta.d.ts.map +0 -1
  526. package/bin/executor/types/SessionHistoryMeta.js.map +0 -1
  527. package/bin/executor/types/SessionLoop.d.ts +0 -59
  528. package/bin/executor/types/SessionLoop.d.ts.map +0 -1
  529. package/bin/executor/types/SessionLoop.js +0 -9
  530. package/bin/executor/types/SessionLoop.js.map +0 -1
  531. package/bin/executor/types/SessionPrompts.d.ts +0 -14
  532. package/bin/executor/types/SessionPrompts.d.ts.map +0 -1
  533. package/bin/executor/types/SessionPrompts.js +0 -8
  534. package/bin/executor/types/SessionPrompts.js.map +0 -1
  535. package/bin/session/DefaultSessionComposer.d.ts +0 -24
  536. package/bin/session/DefaultSessionComposer.d.ts.map +0 -1
  537. package/bin/session/DefaultSessionComposer.js +0 -99
  538. package/bin/session/DefaultSessionComposer.js.map +0 -1
  539. package/bin/session/SessionComposition.d.ts +0 -49
  540. package/bin/session/SessionComposition.d.ts.map +0 -1
  541. package/bin/session/SessionComposition.js +0 -309
  542. package/bin/session/SessionComposition.js.map +0 -1
  543. package/bin/session/SessionHookPoints.d.ts +0 -15
  544. package/bin/session/SessionHookPoints.d.ts.map +0 -1
  545. package/bin/session/SessionHookPoints.js +0 -15
  546. package/bin/session/SessionHookPoints.js.map +0 -1
  547. package/bin/session/SessionHooks.d.ts +0 -38
  548. package/bin/session/SessionHooks.d.ts.map +0 -1
  549. package/bin/session/SessionHooks.js +0 -71
  550. package/bin/session/SessionHooks.js.map +0 -1
  551. package/bin/session/SessionLoop.d.ts.map +0 -1
  552. package/bin/session/SessionLoop.js.map +0 -1
  553. package/bin/session/SessionMessages.d.ts.map +0 -1
  554. package/bin/session/SessionMessages.js.map +0 -1
  555. package/bin/session/SessionQueue.d.ts.map +0 -1
  556. package/bin/session/SessionQueue.js.map +0 -1
  557. package/bin/session/SessionState.d.ts.map +0 -1
  558. package/bin/session/SessionState.js.map +0 -1
  559. package/bin/session/SessionSystem.d.ts +0 -19
  560. package/bin/session/SessionSystem.d.ts.map +0 -1
  561. package/bin/session/SessionSystem.js.map +0 -1
  562. package/bin/session/SessionTitle.d.ts.map +0 -1
  563. package/bin/session/SessionTitle.js.map +0 -1
  564. package/bin/session/browse/Browse.d.ts.map +0 -1
  565. package/bin/session/browse/Browse.js.map +0 -1
  566. package/bin/session/browse/SessionMessageTimeline.d.ts.map +0 -1
  567. package/bin/session/browse/SessionMessageTimeline.js.map +0 -1
  568. package/bin/session/composer/policies/AdaptivePartContextPolicy.d.ts +0 -35
  569. package/bin/session/composer/policies/AdaptivePartContextPolicy.d.ts.map +0 -1
  570. package/bin/session/composer/policies/AdaptivePartContextPolicy.js +0 -256
  571. package/bin/session/composer/policies/AdaptivePartContextPolicy.js.map +0 -1
  572. package/bin/session/composer/policies/FullHistoryContextPolicy.d.ts +0 -24
  573. package/bin/session/composer/policies/FullHistoryContextPolicy.d.ts.map +0 -1
  574. package/bin/session/composer/policies/FullHistoryContextPolicy.js +0 -31
  575. package/bin/session/composer/policies/FullHistoryContextPolicy.js.map +0 -1
  576. package/bin/session/composer/policies/SessionSummaryPrompts.d.ts.map +0 -1
  577. package/bin/session/composer/policies/SessionSummaryPrompts.js.map +0 -1
  578. package/bin/session/control/SessionInteractions.d.ts +0 -39
  579. package/bin/session/control/SessionInteractions.d.ts.map +0 -1
  580. package/bin/session/control/SessionInteractions.js +0 -255
  581. package/bin/session/control/SessionInteractions.js.map +0 -1
  582. package/bin/session/execution/SessionAssistantOutputAdapter.d.ts.map +0 -1
  583. package/bin/session/execution/SessionAssistantOutputAdapter.js.map +0 -1
  584. package/bin/session/execution/tools/SessionShellApprovalAdapter.d.ts +0 -28
  585. package/bin/session/execution/tools/SessionShellApprovalAdapter.d.ts.map +0 -1
  586. package/bin/session/execution/tools/SessionShellApprovalAdapter.js +0 -87
  587. package/bin/session/execution/tools/SessionShellApprovalAdapter.js.map +0 -1
  588. package/bin/session/messages/SessionAgentActionPartWriter.d.ts +0 -22
  589. package/bin/session/messages/SessionAgentActionPartWriter.d.ts.map +0 -1
  590. package/bin/session/messages/SessionAgentActionPartWriter.js +0 -36
  591. package/bin/session/messages/SessionAgentActionPartWriter.js.map +0 -1
  592. package/bin/session/messages/SessionMessageInteractionWriter.d.ts +0 -46
  593. package/bin/session/messages/SessionMessageInteractionWriter.d.ts.map +0 -1
  594. package/bin/session/messages/SessionMessageInteractionWriter.js +0 -183
  595. package/bin/session/messages/SessionMessageInteractionWriter.js.map +0 -1
  596. package/bin/session/messages/SessionTurnFileDiffBuilder.d.ts.map +0 -1
  597. package/bin/session/messages/SessionTurnFileDiffBuilder.js.map +0 -1
  598. package/bin/session/runtime/SessionEventHub.d.ts.map +0 -1
  599. package/bin/session/runtime/SessionEventHub.js.map +0 -1
  600. package/bin/session/runtime/SessionModelRequestWarning.d.ts.map +0 -1
  601. package/bin/session/runtime/SessionModelRequestWarning.js.map +0 -1
  602. package/bin/session/runtime/SessionTitleTask.d.ts.map +0 -1
  603. package/bin/session/runtime/SessionTitleTask.js.map +0 -1
  604. package/bin/session/runtime/SessionTurnCompletion.d.ts.map +0 -1
  605. package/bin/session/runtime/SessionTurnCompletion.js.map +0 -1
  606. package/bin/session/runtime/SessionTurnContext.d.ts +0 -29
  607. package/bin/session/runtime/SessionTurnContext.d.ts.map +0 -1
  608. package/bin/session/runtime/SessionTurnContext.js.map +0 -1
  609. package/bin/session/runtime/SessionTurnFileDiff.d.ts.map +0 -1
  610. package/bin/session/runtime/SessionTurnFileDiff.js.map +0 -1
  611. package/bin/types/action/ActionResult.d.ts +0 -35
  612. package/bin/types/action/ActionResult.d.ts.map +0 -1
  613. package/bin/types/action/ActionResult.js +0 -18
  614. package/bin/types/action/ActionResult.js.map +0 -1
  615. package/bin/types/executor/ModelRequest.d.ts.map +0 -1
  616. package/bin/types/executor/ModelRequest.js.map +0 -1
  617. package/bin/types/executor/SessionAssistantOutput.d.ts.map +0 -1
  618. package/bin/types/executor/SessionAssistantOutput.js.map +0 -1
  619. package/bin/types/executor/SessionToolExecutionContext.d.ts +0 -23
  620. package/bin/types/executor/SessionToolExecutionContext.d.ts.map +0 -1
  621. package/bin/types/executor/SessionToolExecutionContext.js +0 -10
  622. package/bin/types/executor/SessionToolExecutionContext.js.map +0 -1
  623. package/bin/types/executor/SessionTurnContext.d.ts.map +0 -1
  624. package/bin/types/executor/SessionTurnContext.js.map +0 -1
  625. package/bin/types/session/AdaptivePartContextPolicy.d.ts.map +0 -1
  626. package/bin/types/session/AdaptivePartContextPolicy.js +0 -7
  627. package/bin/types/session/AdaptivePartContextPolicy.js.map +0 -1
  628. package/bin/types/session/SessionComposition.d.ts.map +0 -1
  629. package/bin/types/session/SessionComposition.js +0 -8
  630. package/bin/types/session/SessionComposition.js.map +0 -1
  631. package/bin/types/session/SessionContextPolicy.d.ts +0 -70
  632. package/bin/types/session/SessionContextPolicy.d.ts.map +0 -1
  633. package/bin/types/session/SessionContextPolicy.js +0 -8
  634. package/bin/types/session/SessionContextPolicy.js.map +0 -1
  635. package/bin/types/tools/ToolActionExecutionContext.d.ts +0 -30
  636. package/bin/types/tools/ToolActionExecutionContext.d.ts.map +0 -1
  637. package/bin/types/tools/ToolActionExecutionContext.js +0 -8
  638. package/bin/types/tools/ToolActionExecutionContext.js.map +0 -1
  639. package/src/executor/Executor.ts +0 -319
  640. package/src/executor/README.md +0 -92
  641. package/src/executor/composer/system/default/assets/core.prompt.ts +0 -9
  642. package/src/executor/core-engine/CoreEngineLoopDecision.ts +0 -63
  643. package/src/executor/core-engine/CoreEngineRunner.ts +0 -458
  644. package/src/executor/types/SessionLoop.ts +0 -69
  645. package/src/executor/types/SessionPrompts.ts +0 -14
  646. package/src/session/DefaultSessionComposer.ts +0 -123
  647. package/src/session/SessionComposition.ts +0 -370
  648. package/src/session/SessionHookPoints.ts +0 -17
  649. package/src/session/SessionHooks.ts +0 -85
  650. package/src/session/composer/policies/AdaptivePartContextPolicy.ts +0 -307
  651. package/src/session/composer/policies/FullHistoryContextPolicy.ts +0 -36
  652. package/src/session/control/SessionInteractions.ts +0 -311
  653. package/src/session/execution/tools/SessionShellApprovalAdapter.ts +0 -105
  654. package/src/session/messages/SessionAgentActionPartWriter.ts +0 -54
  655. package/src/session/messages/SessionMessageInteractionWriter.ts +0 -279
  656. package/src/types/action/ActionResult.ts +0 -50
  657. package/src/types/executor/SessionToolExecutionContext.ts +0 -26
  658. package/src/types/session/SessionContextPolicy.ts +0 -77
  659. package/src/types/tools/ToolActionExecutionContext.ts +0 -32
  660. /package/bin/{executor/model → model}/ModelGenerate.js +0 -0
  661. /package/bin/{executor/model → model}/ModelRequestRunner.js +0 -0
  662. /package/bin/{executor/model → model}/ModelStreamConsumer.d.ts +0 -0
  663. /package/bin/{executor/model → model}/ModelStreamConsumer.js +0 -0
  664. /package/bin/{executor/model → model}/ModelStreamFailure.d.ts +0 -0
  665. /package/bin/{executor/model → model}/ModelStreamFailure.js +0 -0
  666. /package/bin/{executor → model}/messages/ChatMessageMarkup.d.ts +0 -0
  667. /package/bin/{executor → model}/messages/ChatMessageMarkup.js +0 -0
  668. /package/bin/{executor → model}/messages/SessionAttachmentMapper.d.ts +0 -0
  669. /package/bin/{executor → model}/messages/SessionAttachmentMapper.js +0 -0
  670. /package/bin/{executor → model}/messages/SessionMessageLog.d.ts +0 -0
  671. /package/bin/{executor → model}/messages/SessionMessageLog.js +0 -0
  672. /package/bin/{executor → model}/messages/SessionModelMessages.d.ts +0 -0
  673. /package/bin/{executor/composer/system/default → model/prompts}/SystemPromptAssets.d.ts +0 -0
  674. /package/bin/session/{runtime → loop}/SessionTitleTask.d.ts +0 -0
  675. /package/bin/session/{runtime → loop}/SessionTitleTask.js +0 -0
  676. /package/bin/session/{runtime → loop}/SessionTurnFileDiff.d.ts +0 -0
  677. /package/bin/session/{messages → loop}/SessionTurnFileDiffBuilder.js +0 -0
  678. /package/bin/session/{execution → messages}/SessionAssistantOutputAdapter.js +0 -0
  679. /package/bin/session/{runtime → messages}/SessionEventHub.d.ts +0 -0
  680. /package/bin/session/{runtime → messages}/SessionEventHub.js +0 -0
  681. /package/bin/session/{browse → messages}/SessionMessageTimeline.d.ts +0 -0
  682. /package/bin/session/{runtime → messages}/SessionModelRequestWarning.d.ts +0 -0
  683. /package/bin/session/{runtime → messages}/SessionModelRequestWarning.js +0 -0
  684. /package/bin/session/{preview → storage}/SessionMessagePreview.d.ts +0 -0
  685. /package/bin/types/{executor → model}/ModelRequest.d.ts +0 -0
  686. /package/bin/types/{executor → model}/ModelRequest.js +0 -0
  687. /package/bin/{executor/types → types/store}/SessionHistoryMeta.d.ts +0 -0
  688. /package/bin/{executor/types → types/store}/SessionHistoryMeta.js +0 -0
  689. /package/bin/types/{executor → turn}/SessionAssistantOutput.d.ts +0 -0
  690. /package/bin/types/{executor → turn}/SessionAssistantOutput.js +0 -0
  691. /package/bin/types/{executor → turn}/SessionTurnContext.js +0 -0
  692. /package/src/{executor/model → model}/ModelStreamFailure.ts +0 -0
  693. /package/src/{executor → model}/messages/ChatMessageMarkup.ts +0 -0
  694. /package/src/{executor → model}/messages/SessionAttachmentMapper.ts +0 -0
  695. /package/src/{executor → model}/messages/SessionMessageLog.ts +0 -0
  696. /package/src/session/{runtime → loop}/SessionTitleTask.ts +0 -0
  697. /package/src/session/{runtime → messages}/SessionEventHub.ts +0 -0
  698. /package/src/session/{runtime → messages}/SessionModelRequestWarning.ts +0 -0
  699. /package/src/types/{executor → model}/ModelRequest.ts +0 -0
  700. /package/src/{executor/types → types/store}/SessionHistoryMeta.ts +0 -0
  701. /package/src/types/{executor → turn}/SessionAssistantOutput.ts +0 -0
  702. /package/src/{executor/ids/resolveSessionId.ts → utils/ResolveSessionId.ts} +0 -0
package/README.md CHANGED
@@ -71,7 +71,7 @@ src/
71
71
  ├── index.ts # 包公开入口
72
72
  ├── agent/ # Agent facade、状态、模型、环境与执行绑定
73
73
  ├── group/ # Group 主体、GroupSession 和消息调度策略
74
- ├── executor/ # LLM/Tool Loop、usage 观测与执行恢复
74
+ ├── model/ # 模型请求与 Tool Loop 内核、消息转换与 prompt 资产
75
75
  ├── host/ # Agent 宿主端口
76
76
  ├── internal/ # Agent 与 Group 的内部运行时装配
77
77
  ├── plugin/ # Agent 使用的 Plugin 执行协议辅助
@@ -91,27 +91,34 @@ src/
91
91
  - `ExecutionBinding.ts` 负责 Agent 执行目标绑定
92
92
 
93
93
  - `src/session/`
94
- - `Session.ts` 是公开 facade 与 Session 对象装配入口
95
- - `SessionState.ts` 管理配置与 metadata
96
- - `SessionLoop.ts` 是 Command Queue 的唯一消费者,并管理 Turn 生命周期
97
- - Prompt Command 创建或加入 Turn;配置与压缩等 Maintenance Command 在空闲期独立执行
98
- - `SessionComposition.ts` 管理 system snapshot、检查点 env/hook 与 Composer 输入
99
- - `session.db` 是 canonical Message 唯一事实源,`SessionMessages.ts` 负责领域写入、恢复和有界运行态投影
100
- - `DefaultSessionComposer.ts` 负责 system/history/tools,并默认使用 Part 级上下文策略
101
- - `SessionTurnContext.effects` 只负责按发生顺序收集当前 Turn 的 Tool 副作用,不解释具体业务
102
- - `messages/` 放 Assistant 状态转换与 writer、Message codec、Tool effect 投影与结构化文件编辑 Diff
103
- - `composer/policies/` 放只读 canonical Message 并管理自有派生表的上下文策略
104
- - `storage/` 负责 Session SQLite、附件和事务;只使用 AgentStorage,不访问项目 Workspace
94
+ - 目录分两类:执行链(`loop` → `input` → `runner`)与支撑层(`messages`、`storage`)
95
+ - `Session.ts` 是公开 facade 与 Session 对象装配入口(顶层)
96
+ - `loop/` 轮次编排:`SessionLoop`(队列消费与 Turn 生命周期)、`SessionQueue`、
97
+ `SessionTurnContext`、`SessionTurnCompletion`、`SessionTurnFileDiff`,以及驱动它
98
+ 所需的跨轮配置状态(`SessionState`、`SessionTitle`、`SessionTitleTask`)
99
+ - `input/` 组装模型输入:`StepInput`(每步输入与冻结 system)、`SessionSystem`、
100
+ `SessionHooks`、`SessionHookPoints`,以及 `composer/`(Composer 实现、组装原语、
101
+ 压缩算法与 checkpoint 表读写)
102
+ - `runner/` 发请求与跑工具:`SessionExecutor` 及上限、决策、诊断、错误归一、
103
+ usage 阈值与上下文重试等纯逻辑
104
+ - `messages/` 消息领域:`SessionMessages` 领域入口、Assistant 状态转换与 writer、
105
+ Message codec、Tool effect 投影、文件 Diff、Mutation 广播、用户交互、时间线投影
106
+ (见目录 README)
107
+ - `storage/` 持久化与列表读取:Session SQLite、codec、schema、本地存储、附件,
108
+ 以及 `Browse`(列表页轻量状态)与 `SessionMessagePreview`;只使用 AgentStorage,
109
+ 不访问项目 Workspace
110
+ - `session.db` 是 canonical Message 唯一事实源
105
111
  - Session 由 `AgentSessions` 统一持有;Workspace 只作为 `agent.sessions.create({ workspace })` 或 `agent.sessions.get(session_id, origin_type, { workspace })` 的单次执行输入
106
112
 
107
113
  - `src/group/`
108
114
  - `storage/` 负责 GroupSession 的 metadata、共享消息和调度记录持久化
109
115
 
110
- - `src/executor/`
111
- - 内部执行内核
112
- - `Executor` 只负责单轮 LLM/Tool Loop、Step 状态和上下文恢复
113
- - 不持有 History Store,不负责 Message 或 metadata 持久化
114
- - 默认 system block 只由 `session/SessionSystem.ts` 组装,不维护第二套 system composer
116
+ - `src/model/`
117
+ - 模型协议与 Provider 请求的低层内核,不持有 History Store,也不负责 Message 或 metadata 持久化
118
+ - `ModelStepRunner` / `ModelRequestRunner` 负责单步模型请求与重试;`ModelGenerate` 是共享的一次性生成入口
119
+ - `messages/` 负责 Session Message 与 Model Protocol 之间的转换
120
+ - `prompts/` 放默认 core system prompt 资产及相关生成模块
121
+ - 模型请求与 Tool Loop 的执行编排在 `session/runner/`;模型输入组装在 `session/input/`
115
122
 
116
123
  - `src/plugin/`
117
124
  - 只保留 Agent 公开的 Action schedule 与 Plugin 协议辅助
@@ -125,7 +132,7 @@ src/
125
132
  - 跨模块、跨包共享协议类型
126
133
  - `config/` 放 LLM、execution binding、plugin 配置、start options 等宿主配置契约
127
134
  - `runtime/` 放 auth、agent、host、platform 等运行时与控制面共享协议
128
- - 领域内部类型仍保留在对应领域目录,例如 `plugin/types/`、`executor/types/`
135
+ - 领域内部类型统一放在 `types/` 下的领域目录,例如 `types/session/`、`types/turn/`;实现目录不再自建 `types/` 子目录
129
136
 
130
137
  - `src/utils/`
131
138
  - 包内通用工具、日志、CLI 输出与存储辅助
@@ -3,14 +3,14 @@
3
3
  *
4
4
  * 职责说明(中文)
5
5
  * - Agent 不绑定 Workspace;调用方通过 `agent.sessions.create({ workspace })` 选择本次执行环境。
6
- * - Plugin 与 Transport 由 City 持有,Agent 只通过 CityRuntime 使用最小执行能力。
6
+ * - 能力与 Transport 由容器持有,Agent 只收下容器在绑定时推送的能力,不持有容器引用。
7
7
  * - Session 由 AgentSessions 统一持有;Workspace 只在单个 Session 创建时提供执行资源。
8
8
  */
9
- import type { CityRuntime, ModelClient, RuntimeTool as Tool, WorkspaceRuntime } from "@downcity/type";
9
+ import type { CityRuntime, ModelClient, AgentTool as Tool, WorkspaceRuntime } from "@downcity/type";
10
10
  import type { AgentOptions, AgentSessionConstructor } from "../types/agent/AgentOptions.js";
11
11
  import type { AgentSessionCollection } from "../types/agent/AgentSessionCollection.js";
12
12
  import { Logger } from "../utils/logger/Logger.js";
13
- import type { SessionSystemMessage } from "../executor/types/SessionPrompts.js";
13
+ import type { SessionSystemMessage } from "@downcity/type";
14
14
  import type { SessionComposer } from "../types/session/SessionComposer.js";
15
15
  /** SDK Agent 主体。 */
16
16
  export declare class Agent {
@@ -28,24 +28,24 @@ export declare class Agent {
28
28
  readonly custom_tools: Record<string, Tool>;
29
29
  /** Agent 使用的 Session 类。 */
30
30
  readonly session_class?: AgentSessionConstructor;
31
- /** 为每个 Session 创建独立 Composer 的工厂。 */
32
- readonly session_composer?: () => SessionComposer;
31
+ /** 当前 Agent 使用的 Session Composer;其所有 Session 共享该实例。 */
32
+ readonly session_composer?: SessionComposer;
33
33
  /** Agent 级日志器,不绑定任何 Workspace。 */
34
34
  private readonly logger;
35
35
  /** 当前 Agent configured instruction。 */
36
36
  private readonly instruction;
37
+ /** Agent 自有检查点处理器;与容器提供的 Power hooks 合并使用。 */
38
+ private readonly custom_hooks;
37
39
  /** Agent 释放状态。 */
38
40
  private dispose_promise?;
39
41
  /** Agent 唯一的 Session 集合。 */
40
42
  private readonly session_manager;
41
- /** 未加入宿主时使用的隔离进程内存储。 */
43
+ /** 未加入容器时使用的隔离进程内存储。 */
42
44
  private storage_provider;
43
- /** Agent 当前所属的唯一 City;独立运行时为空。 */
44
- private city?;
45
+ /** 当前绑定的容器运行环境;独立运行时为空。 */
46
+ private host?;
45
47
  /** 延迟创建的 Agent 私有持久化视图。 */
46
48
  private agent_storage?;
47
- /** 是否已经在无宿主存储中创建或恢复过 Session。 */
48
- private memory_session_started;
49
49
  constructor(options: AgentOptions);
50
50
  /** 更新 Agent 的静态基础指令。 */
51
51
  set_instruction(input: string | string[]): void;
@@ -53,10 +53,22 @@ export declare class Agent {
53
53
  get_instructions(): readonly string[];
54
54
  /** 返回 Agent 级日志器。 */
55
55
  get_logger(): Logger;
56
- /** 将 Agent 加入 City;必须在创建或恢复 Session 前完成。 */
57
- attach(city: CityRuntime): void;
58
- /** 解除指定 City 关系;其他 City 不能解除当前绑定。 */
59
- detach(city: CityRuntime): void;
56
+ /**
57
+ * 绑定容器运行环境;必须在创建或恢复 Session 前完成。
58
+ *
59
+ * 关键点(中文)
60
+ * - 主体只收下容器推送的存储能力,不持有容器引用。
61
+ * - 存储一旦在独立模式下被使用就不能再切换,否则已有 Session 会写入两个事实源。
62
+ */
63
+ bind(host: CityRuntime): void;
64
+ /**
65
+ * 解除容器绑定,主体回到独立运行状态。
66
+ *
67
+ * 关键点(中文)
68
+ * - 由容器在放下引用后调用;主体不反向通知容器。
69
+ * - 已解析的存储视图同时丢弃,避免解绑后继续写旧容器存储。
70
+ */
71
+ unbind(): void;
60
72
  /** 停止绑定到指定 Workspace 的运行中 Session,并释放后台标题任务。 */
61
73
  release_workspace(workspace_id: string): Promise<void>;
62
74
  /** 解析指定 Workspace 下一个 Session 当前可见的 system messages。 */
@@ -64,15 +76,27 @@ export declare class Agent {
64
76
  /** 目标 Session 稳定标识。 */
65
77
  session_id: string;
66
78
  }): Promise<SessionSystemMessage[]>;
67
- /** 释放 Agent 的 Session 后台任务、存储与宿主引用。 */
79
+ /** 构造不属任何 Turn 的调用环境;用于 system 查询。 */
80
+ private create_session_call_context;
81
+ /**
82
+ * 释放 Agent 的 Session 后台任务、存储与运行环境。
83
+ *
84
+ * 关键点(中文)
85
+ * - 已绑定的 Agent 不能自行释放:容器仍持有引用,必须走 `city.agents.remove(id)`。
86
+ * - 这把「已注册主体不能自行释放」变成可检查的不变量,而不是靠时序掩盖。
87
+ */
68
88
  dispose(): Promise<void>;
69
- /** 等待 Agent 自身运行时 ready,供内部运行时使用。 */
70
- ensure_ready(): Promise<void>;
71
89
  /** 获取或创建 Agent 唯一的 Session 存储。 */
72
90
  private resolve_storage;
73
- /** 校验宿主模式下使用的 Workspace 来自当前宿主事实源。 */
74
- private assert_workspace;
75
- /** 在明确检查点合并 Workspace、宿主扩展和 Agent Tool。 */
91
+ /**
92
+ * 返回当前生效的工具集合:Workspace 工具 + 容器 Power 工具 + Agent 自有工具。
93
+ *
94
+ * 关键点(中文)
95
+ * - 容器 Power 工具从环境句柄实时读取,不缓存;容器增删 Power 后下一次求值即生效。
96
+ * - 静态 Workspace Tool 与 Agent Tool 的命名冲突属于 Session 创建不变量,装配时立即失败。
97
+ */
76
98
  private resolve_tools;
99
+ /** 合并容器 Power hooks 与 Agent 自有 hooks。 */
100
+ private resolve_hooks;
77
101
  }
78
102
  //# sourceMappingURL=Agent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,WAAW,EACX,WAAW,IAAI,IAAI,EAEnB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAKxB,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,sBAAsB,EACvB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAMlD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAQ1E,oBAAoB;AACpB,qBAAa,KAAK;IAChB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,qBAAqB;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,sCAAsC;IACtC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,iCAAiC;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;IAE7B,gCAAgC;IAChC,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC;IAE1C,kDAAkD;IAClD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE5C,2BAA2B;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,uBAAuB,CAAC;IAEjD,qCAAqC;IACrC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,eAAe,CAAC;IAElD,kCAAkC;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IAEvC,uCAAuC;IACvC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAW;IAEvC,kBAAkB;IAClB,OAAO,CAAC,eAAe,CAAC,CAAgB;IAExC,4BAA4B;IAC5B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgB;IAEhD,wBAAwB;IACxB,OAAO,CAAC,gBAAgB,CAAqD;IAE7E,kCAAkC;IAClC,OAAO,CAAC,IAAI,CAAC,CAAc;IAE3B,2BAA2B;IAC3B,OAAO,CAAC,aAAa,CAAC,CAAe;IAErC,iCAAiC;IACjC,OAAO,CAAC,sBAAsB,CAAS;gBAE3B,OAAO,EAAE,YAAY;IAoDjC,wBAAwB;IACxB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAK/C,qBAAqB;IACrB,gBAAgB,IAAI,SAAS,MAAM,EAAE;IAIrC,qBAAqB;IACrB,UAAU,IAAI,MAAM;IAIpB,4CAA4C;IAC5C,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAe/B,qCAAqC;IACrC,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAI/B,gDAAgD;IAC1C,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5D,wDAAwD;IAClD,uBAAuB,CAC3B,SAAS,EAAE,gBAAgB,EAC3B,KAAK,EAAE;QACL,uBAAuB;QACvB,UAAU,EAAE,MAAM,CAAC;KACpB,GACA,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAqClC,uCAAuC;IACjC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB9B,qCAAqC;IAC/B,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAInC,kCAAkC;IAClC,OAAO,CAAC,eAAe;IAkBvB,sCAAsC;IACtC,OAAO,CAAC,gBAAgB;IAQxB,2CAA2C;IAC3C,OAAO,CAAC,aAAa;CAYtB"}
1
+ {"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,WAAW,EACX,SAAS,IAAI,IAAI,EAIjB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAKxB,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,sBAAsB,EACvB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAMlD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAQ1E,oBAAoB;AACpB,qBAAa,KAAK;IAChB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,qBAAqB;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,sCAAsC;IACtC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,iCAAiC;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;IAE7B,gCAAgC;IAChC,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC;IAE1C,kDAAkD;IAClD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE5C,2BAA2B;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,uBAAuB,CAAC;IAEjD,uDAAuD;IACvD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,eAAe,CAAC;IAE5C,kCAAkC;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IAEvC,uCAAuC;IACvC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAW;IAEvC,8CAA8C;IAC9C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAE3C,kBAAkB;IAClB,OAAO,CAAC,eAAe,CAAC,CAAgB;IAExC,4BAA4B;IAC5B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgB;IAEhD,wBAAwB;IACxB,OAAO,CAAC,gBAAgB,CAAqD;IAE7E,2BAA2B;IAC3B,OAAO,CAAC,IAAI,CAAC,CAAc;IAE3B,2BAA2B;IAC3B,OAAO,CAAC,aAAa,CAAC,CAAe;gBAEzB,OAAO,EAAE,YAAY;IAmDjC,wBAAwB;IACxB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAK/C,qBAAqB;IACrB,gBAAgB,IAAI,SAAS,MAAM,EAAE;IAIrC,qBAAqB;IACrB,UAAU,IAAI,MAAM;IAIpB;;;;;;OAMG;IACH,IAAI,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAc7B;;;;;;OAMG;IACH,MAAM,IAAI,IAAI;IAMd,gDAAgD;IAC1C,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5D,wDAAwD;IAClD,uBAAuB,CAC3B,SAAS,EAAE,gBAAgB,EAC3B,KAAK,EAAE;QACL,uBAAuB;QACvB,UAAU,EAAE,MAAM,CAAC;KACpB,GACA,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAiClC,sCAAsC;IACtC,OAAO,CAAC,2BAA2B;IAuBnC;;;;;;OAMG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAsB9B,kCAAkC;IAClC,OAAO,CAAC,eAAe;IAkBvB;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAQrB,yCAAyC;IACzC,OAAO,CAAC,aAAa;CAOtB"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * 职责说明(中文)
5
5
  * - Agent 不绑定 Workspace;调用方通过 `agent.sessions.create({ workspace })` 选择本次执行环境。
6
- * - Plugin 与 Transport 由 City 持有,Agent 只通过 CityRuntime 使用最小执行能力。
6
+ * - 能力与 Transport 由容器持有,Agent 只收下容器在绑定时推送的能力,不持有容器引用。
7
7
  * - Session 由 AgentSessions 统一持有;Workspace 只在单个 Session 创建时提供执行资源。
8
8
  */
9
9
  import { create_instruction_system_blocks, normalize_instruction_input, } from "../agent/AgentInstructions.js";
@@ -11,9 +11,8 @@ import { Logger } from "../utils/logger/Logger.js";
11
11
  import { AgentSessions } from "../agent/AgentSessions.js";
12
12
  import { AgentMemoryStorageProvider } from "../agent/AgentMemoryStorage.js";
13
13
  import { LocalSessionStore } from "../session/storage/LocalSessionStore.js";
14
- import { EMPTY_SESSION_HOOKS } from "../session/SessionHooks.js";
15
- import { build_session_system_blocks, resolve_session_plugin_system_blocks, } from "../session/SessionSystem.js";
16
- import { create_session_hook_context } from "../session/runtime/SessionTurnContext.js";
14
+ import { EMPTY_TOOL_HOOK_SET } from "@downcity/type";
15
+ import { build_session_system_blocks, resolve_session_power_system_blocks, } from "../session/input/SessionSystem.js";
17
16
  import { resolve_system_timezone } from "../session/storage/Metadata.js";
18
17
  /** SDK Agent 主体。 */
19
18
  export class Agent {
@@ -31,24 +30,24 @@ export class Agent {
31
30
  custom_tools;
32
31
  /** Agent 使用的 Session 类。 */
33
32
  session_class;
34
- /** 为每个 Session 创建独立 Composer 的工厂。 */
33
+ /** 当前 Agent 使用的 Session Composer;其所有 Session 共享该实例。 */
35
34
  session_composer;
36
35
  /** Agent 级日志器,不绑定任何 Workspace。 */
37
36
  logger = new Logger();
38
37
  /** 当前 Agent configured instruction。 */
39
38
  instruction;
39
+ /** Agent 自有检查点处理器;与容器提供的 Power hooks 合并使用。 */
40
+ custom_hooks;
40
41
  /** Agent 释放状态。 */
41
42
  dispose_promise;
42
43
  /** Agent 唯一的 Session 集合。 */
43
44
  session_manager;
44
- /** 未加入宿主时使用的隔离进程内存储。 */
45
+ /** 未加入容器时使用的隔离进程内存储。 */
45
46
  storage_provider = new AgentMemoryStorageProvider();
46
- /** Agent 当前所属的唯一 City;独立运行时为空。 */
47
- city;
47
+ /** 当前绑定的容器运行环境;独立运行时为空。 */
48
+ host;
48
49
  /** 延迟创建的 Agent 私有持久化视图。 */
49
50
  agent_storage;
50
- /** 是否已经在无宿主存储中创建或恢复过 Session。 */
51
- memory_session_started = false;
52
51
  constructor(options) {
53
52
  this.id = String(options.id || "").trim();
54
53
  if (!this.id)
@@ -62,30 +61,28 @@ export class Agent {
62
61
  this.custom_tools = options.tools && typeof options.tools === "object"
63
62
  ? { ...options.tools }
64
63
  : {};
64
+ this.custom_hooks = options.hooks ?? EMPTY_TOOL_HOOK_SET;
65
65
  this.session_manager = new AgentSessions({
66
66
  agent_id: this.id,
67
+ agent_name: this.name,
68
+ agent_description: this.description,
67
69
  logger: this.logger,
68
70
  get_instruction: () => [...this.get_instructions()],
69
- ensure_agent_ready: async () => await this.ensure_ready(),
70
71
  get_agent_model: () => this.model,
71
72
  session_class: this.session_class,
72
- create_session_composer: this.session_composer,
73
- on_session_routed: () => {
74
- if (!this.city)
75
- this.memory_session_started = true;
76
- },
73
+ session_composer: this.session_composer,
77
74
  resolve_session_context: (workspace) => {
78
75
  const storage = this.resolve_storage();
79
76
  if (!workspace)
80
77
  return {
81
78
  workspace_path: ".",
82
79
  logger: this.logger,
83
- get_tools: () => ({ ...this.custom_tools }),
80
+ get_tools: () => this.resolve_tools(),
84
81
  get_workspace_env: () => ({}),
85
- get_hooks: () => EMPTY_SESSION_HOOKS,
82
+ get_workspace: () => undefined,
83
+ get_hooks: () => this.resolve_hooks(),
86
84
  store: storage.sessions,
87
85
  };
88
- this.assert_workspace(workspace);
89
86
  // 静态 Workspace Tool 与 Agent Tool 的命名冲突属于 Session 创建不变量,
90
87
  // 在装配时立即失败;执行时仍通过 getter 读取最新宿主扩展。
91
88
  this.resolve_tools(workspace);
@@ -95,8 +92,8 @@ export class Agent {
95
92
  logger: this.logger,
96
93
  get_tools: () => this.resolve_tools(workspace),
97
94
  get_workspace_env: () => workspace.get_env(),
98
- get_hooks: () => this.city?.get_session_hooks(this.id, workspace)
99
- ?? EMPTY_SESSION_HOOKS,
95
+ get_workspace: () => workspace,
96
+ get_hooks: () => this.resolve_hooks(),
100
97
  store: storage.sessions,
101
98
  };
102
99
  },
@@ -116,25 +113,36 @@ export class Agent {
116
113
  get_logger() {
117
114
  return this.logger;
118
115
  }
119
- /** 将 Agent 加入 City;必须在创建或恢复 Session 前完成。 */
120
- attach(city) {
121
- if (this.dispose_promise)
122
- throw new Error(`Agent "${this.id}" is disposing`);
123
- if (this.city) {
124
- if (this.city === city)
116
+ /**
117
+ * 绑定容器运行环境;必须在创建或恢复 Session 前完成。
118
+ *
119
+ * 关键点(中文)
120
+ * - 主体只收下容器推送的存储能力,不持有容器引用。
121
+ * - 存储一旦在独立模式下被使用就不能再切换,否则已有 Session 会写入两个事实源。
122
+ */
123
+ bind(host) {
124
+ if (this.host) {
125
+ if (this.host === host)
125
126
  return;
126
- throw new Error(`Agent "${this.id}" already belongs to another City`);
127
+ throw new Error(`Agent "${this.id}" is already bound to another container`);
127
128
  }
128
- if (this.memory_session_started || this.agent_storage) {
129
- throw new Error(`Agent "${this.id}" already used standalone storage; attach it before using Sessions`);
129
+ if (this.agent_storage) {
130
+ throw new Error(`Agent "${this.id}" already used standalone storage; bind it before using Sessions`);
130
131
  }
131
- this.city = city;
132
- this.storage_provider = city.storage;
132
+ this.host = host;
133
+ this.storage_provider = host.storage;
133
134
  }
134
- /** 解除指定 City 关系;其他 City 不能解除当前绑定。 */
135
- detach(city) {
136
- if (this.city === city)
137
- this.city = undefined;
135
+ /**
136
+ * 解除容器绑定,主体回到独立运行状态。
137
+ *
138
+ * 关键点(中文)
139
+ * - 由容器在放下引用后调用;主体不反向通知容器。
140
+ * - 已解析的存储视图同时丢弃,避免解绑后继续写旧容器存储。
141
+ */
142
+ unbind() {
143
+ this.host = undefined;
144
+ this.storage_provider = new AgentMemoryStorageProvider();
145
+ this.agent_storage = undefined;
138
146
  }
139
147
  /** 停止绑定到指定 Workspace 的运行中 Session,并释放后台标题任务。 */
140
148
  async release_workspace(workspace_id) {
@@ -143,25 +151,25 @@ export class Agent {
143
151
  }
144
152
  /** 解析指定 Workspace 下一个 Session 当前可见的 system messages。 */
145
153
  async resolve_system_messages(workspace, input) {
146
- this.assert_workspace(workspace);
147
154
  const session_id = String(input.session_id || "").trim();
148
155
  if (!session_id) {
149
156
  throw new Error("resolve_system_messages requires a non-empty session_id");
150
157
  }
151
- const instruction_system_blocks = create_instruction_system_blocks([...this.get_instructions()], workspace.path);
152
- const hooks = this.city?.get_session_hooks(this.id, workspace)
153
- ?? EMPTY_SESSION_HOOKS;
154
- const hook_context = create_session_hook_context({
158
+ const instruction_system_blocks = create_instruction_system_blocks({
159
+ agent_id: this.id,
160
+ agent_name: this.name,
161
+ instruction: [...this.get_instructions()],
162
+ });
163
+ const hooks = this.resolve_hooks();
164
+ const context = this.create_session_call_context({
155
165
  session_id,
156
- session_origin: { type: "chat" },
157
- project_root: workspace.path,
158
- workspace_env: Object.freeze({ ...workspace.get_env() }),
159
- agent_systems: instruction_system_blocks.map((block) => block.content),
166
+ workspace,
167
+ instruction_system_blocks,
160
168
  });
161
- const plugin_system_blocks = await resolve_session_plugin_system_blocks({
169
+ const power_system_blocks = await resolve_session_power_system_blocks({
162
170
  session_id,
163
171
  hooks,
164
- context: hook_context,
172
+ context,
165
173
  });
166
174
  const blocks = await build_session_system_blocks({
167
175
  agent_id: this.id,
@@ -170,36 +178,51 @@ export class Agent {
170
178
  created_at: Date.now(),
171
179
  timezone: resolve_system_timezone(),
172
180
  get_instruction_system_blocks: () => instruction_system_blocks,
173
- get_managed_plugin_system_blocks: async () => [],
174
- get_plugin_system_blocks: async () => plugin_system_blocks,
181
+ get_power_system_blocks: async () => power_system_blocks,
175
182
  });
176
183
  return blocks.map((block) => ({ role: "system", content: block.content }));
177
184
  }
178
- /** 释放 Agent 的 Session 后台任务、存储与宿主引用。 */
185
+ /** 构造不属任何 Turn 的调用环境;用于 system 查询。 */
186
+ create_session_call_context(input) {
187
+ return Object.freeze({
188
+ agent_id: this.id,
189
+ agent_name: this.name,
190
+ agent_description: this.description,
191
+ agent_instructions: Object.freeze(input.instruction_system_blocks.map((block) => block.content)),
192
+ session_id: input.session_id,
193
+ session_origin: { type: "chat" },
194
+ workspace: input.workspace,
195
+ messages: Object.freeze([]),
196
+ workspace_env: Object.freeze({ ...input.workspace.get_env() }),
197
+ });
198
+ }
199
+ /**
200
+ * 释放 Agent 的 Session 后台任务、存储与运行环境。
201
+ *
202
+ * 关键点(中文)
203
+ * - 已绑定的 Agent 不能自行释放:容器仍持有引用,必须走 `city.agents.remove(id)`。
204
+ * - 这把「已注册主体不能自行释放」变成可检查的不变量,而不是靠时序掩盖。
205
+ */
179
206
  async dispose() {
207
+ if (this.host) {
208
+ throw new Error(`Agent "${this.id}" is bound to a container; release it with city.agents.remove(id)`);
209
+ }
180
210
  this.dispose_promise ??= (async () => {
181
211
  const results = await Promise.allSettled([
182
212
  this.session_manager.stop_executing_sessions(),
183
213
  ]);
184
214
  this.session_manager.dispose_title_generation();
185
- const city = this.city;
186
215
  results.push(...await Promise.allSettled([
187
- city?.release_agent(this) ?? Promise.resolve(),
188
216
  this.agent_storage?.sessions.dispose() ?? Promise.resolve(),
189
217
  this.logger.save_all_logs(),
190
218
  ]));
191
219
  const errors = results.flatMap((result) => result.status === "rejected" ? [result.reason] : []);
192
- this.city = undefined;
193
220
  this.agent_storage = undefined;
194
221
  if (errors.length > 0)
195
222
  throw new AggregateError(errors, "Agent dispose failed");
196
223
  })();
197
224
  await this.dispose_promise;
198
225
  }
199
- /** 等待 Agent 自身运行时 ready,供内部运行时使用。 */
200
- async ensure_ready() {
201
- await this.city?.ensure_ready();
202
- }
203
226
  /** 获取或创建 Agent 唯一的 Session 存储。 */
204
227
  resolve_storage() {
205
228
  if (this.agent_storage)
@@ -219,23 +242,45 @@ export class Agent {
219
242
  };
220
243
  return this.agent_storage;
221
244
  }
222
- /** 校验宿主模式下使用的 Workspace 来自当前宿主事实源。 */
223
- assert_workspace(workspace) {
224
- const workspace_id = String(workspace?.id || "").trim();
225
- if (!workspace_id)
226
- throw new Error("Agent sessions require a Workspace with a stable id");
227
- if (this.city && this.city.workspaces.get(workspace_id) !== workspace) {
228
- throw new Error(`Workspace "${workspace_id}" does not belong to the Agent City`);
229
- }
230
- }
231
- /** 在明确检查点合并 Workspace、宿主扩展和 Agent Tool。 */
245
+ /**
246
+ * 返回当前生效的工具集合:Workspace 工具 + 容器 Power 工具 + Agent 自有工具。
247
+ *
248
+ * 关键点(中文)
249
+ * - 容器 Power 工具从环境句柄实时读取,不缓存;容器增删 Power 后下一次求值即生效。
250
+ * - 静态 Workspace Tool 与 Agent Tool 的命名冲突属于 Session 创建不变量,装配时立即失败。
251
+ */
232
252
  resolve_tools(workspace) {
233
253
  const tools = {};
234
- register_tools(tools, workspace.tools, "WorkspaceTools");
235
- register_tools(tools, this.city?.get_session_tools(this.id, workspace) ?? {}, "City");
254
+ if (workspace)
255
+ register_tools(tools, workspace.tools, "WorkspaceTools");
256
+ register_tools(tools, this.host?.power_tools ?? {}, "Power");
236
257
  register_tools(tools, this.custom_tools, "AgentOptions.tools");
237
258
  return tools;
238
259
  }
260
+ /** 合并容器 Power hooks 与 Agent 自有 hooks。 */
261
+ resolve_hooks() {
262
+ const power_hooks = this.host?.power_hooks;
263
+ if (!power_hooks)
264
+ return this.custom_hooks;
265
+ if (this.custom_hooks === EMPTY_TOOL_HOOK_SET)
266
+ return power_hooks;
267
+ return merge_tool_hook_sets(power_hooks, this.custom_hooks);
268
+ }
269
+ }
270
+ /** 按检查点合并两组 hooks;同名检查点按容器在前、自有在后的顺序拼接。 */
271
+ function merge_tool_hook_sets(base, extra) {
272
+ const merge_points = (left, right) => {
273
+ const merged = { ...left };
274
+ for (const [point_name, handlers] of Object.entries(right)) {
275
+ merged[point_name] = [...(merged[point_name] ?? []), ...handlers];
276
+ }
277
+ return merged;
278
+ };
279
+ return {
280
+ pipeline: merge_points(base.pipeline, extra.pipeline),
281
+ guard: merge_points(base.guard, extra.guard),
282
+ effect: merge_points(base.effect, extra.effect),
283
+ };
239
284
  }
240
285
  /** 注册 Tool 集合,并拒绝不同来源静默覆盖。 */
241
286
  function register_tools(target, source, source_name) {
@@ -1 +1 @@
1
- {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"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"}
@@ -2,17 +2,31 @@
2
2
  * Agent instruction 组装工具。
3
3
  *
4
4
  * 关键点(中文)
5
- * - 这里只处理静态 instruction 与默认 core prompt。
6
- * - instruction 永远在 core 前面;core 不会被调用方 instruction 替代。
7
- * - 不读取 Session、Plugin 或 runtime 状态,保持为纯函数。
5
+ * - 这里只处理 Agent 身份、静态 instruction 与默认 core prompt。
6
+ * - 顺序固定为 identity → instruction → core;core 不会被调用方 instruction 替代。
7
+ * - identity 与 core 都由 SDK 注入,调用方 instruction 只决定中间一段。
8
+ * - 不读取 Session、Power 或 runtime 状态,保持为纯函数。
8
9
  */
9
10
  import type { AgentSessionSystemBlock } from "../types/agent/SessionTypes.js";
11
+ /** 构造 instruction system block 所需的 Agent 身份与调用方指令。 */
12
+ export interface CreateInstructionSystemBlocksInput {
13
+ /** 当前 Agent 的稳定标识。 */
14
+ agent_id: string;
15
+ /** 当前 Agent 的用户可见名称;为空时回退到 agent_id。 */
16
+ agent_name: string;
17
+ /** 调用方传入的静态 instruction,应已由 `normalize_instruction_input` 归一化。 */
18
+ instruction: readonly string[];
19
+ }
10
20
  /**
11
21
  * 归一化调用方传入的静态 instruction。
12
22
  */
13
23
  export declare function normalize_instruction_input(input: string | string[] | undefined): string[];
14
24
  /**
15
25
  * 构造进入 session system prompt 的 instruction block。
26
+ *
27
+ * 关键点(中文)
28
+ * - 顺序为 identity → instruction → core。
29
+ * - identity 复用 `instruction` 来源,但块名独立为 `identity`,便于消费端区分。
16
30
  */
17
- export declare function create_instruction_system_blocks(instruction: string[], project_root: string): AgentSessionSystemBlock[];
31
+ export declare function create_instruction_system_blocks(input: CreateInstructionSystemBlocksInput): AgentSessionSystemBlock[];
18
32
  //# sourceMappingURL=AgentInstructions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AgentInstructions.d.ts","sourceRoot":"","sources":["../../src/agent/AgentInstructions.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAG7E;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,GACnC,MAAM,EAAE,CASV;AAUD;;GAEG;AACH,wBAAgB,gCAAgC,CAC9C,WAAW,EAAE,MAAM,EAAE,EACrB,YAAY,EAAE,MAAM,GACnB,uBAAuB,EAAE,CAc3B"}
1
+ {"version":3,"file":"AgentInstructions.d.ts","sourceRoot":"","sources":["../../src/agent/AgentInstructions.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAG7E,sDAAsD;AACtD,MAAM,WAAW,kCAAkC;IACjD,sBAAsB;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,GACnC,MAAM,EAAE,CASV;AAwBD;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,kCAAkC,GACxC,uBAAuB,EAAE,CAmB3B"}