shipmyagent 1.0.202 → 1.0.209

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 (397) hide show
  1. package/bin/main/agent/Agent.d.ts.map +1 -0
  2. package/bin/main/agent/Agent.js +429 -0
  3. package/bin/main/agent/Agent.js.map +1 -0
  4. package/bin/main/agent/components/AgentComponent.d.ts.map +1 -0
  5. package/bin/main/agent/components/AgentComponent.js +29 -0
  6. package/bin/main/agent/components/AgentComponent.js.map +1 -0
  7. package/bin/main/agent/components/CompactorComponent.d.ts.map +1 -0
  8. package/bin/main/agent/components/CompactorComponent.js +14 -0
  9. package/bin/main/agent/components/CompactorComponent.js.map +1 -0
  10. package/bin/main/agent/components/OrchestratorComponent.d.ts.map +1 -0
  11. package/bin/main/agent/components/OrchestratorComponent.js +14 -0
  12. package/bin/main/agent/components/OrchestratorComponent.js.map +1 -0
  13. package/bin/main/agent/components/PersistorComponent.d.ts.map +1 -0
  14. package/bin/main/agent/components/PersistorComponent.js +14 -0
  15. package/bin/main/agent/components/PersistorComponent.js.map +1 -0
  16. package/bin/main/agent/components/PrompterComponent.d.ts.map +1 -0
  17. package/bin/main/agent/components/PrompterComponent.js +14 -0
  18. package/bin/main/agent/components/PrompterComponent.js.map +1 -0
  19. package/bin/main/context/context-agent/ContextAgent.d.ts.map +1 -0
  20. package/bin/main/context/context-agent/ContextAgent.js +34 -0
  21. package/bin/main/context/context-agent/ContextAgent.js.map +1 -0
  22. package/bin/main/context/context-agent/ContextAgentDispatcher.d.ts.map +1 -0
  23. package/bin/main/context/context-agent/ContextAgentDispatcher.js +78 -0
  24. package/bin/main/context/context-agent/ContextAgentDispatcher.js.map +1 -0
  25. package/bin/main/context/context-agent/components/FilePersistor.d.ts.map +1 -0
  26. package/bin/main/context/context-agent/components/FilePersistor.js +414 -0
  27. package/bin/main/context/context-agent/components/FilePersistor.js.map +1 -0
  28. package/bin/main/context/context-agent/components/RuntimeOrchestrator.d.ts.map +1 -0
  29. package/bin/main/context/context-agent/components/RuntimeOrchestrator.js +43 -0
  30. package/bin/main/context/context-agent/components/RuntimeOrchestrator.js.map +1 -0
  31. package/bin/main/context/context-agent/components/SummaryCompact.d.ts.map +1 -0
  32. package/bin/{core/context/Compact.js → main/context/context-agent/components/SummaryCompact.js} +3 -3
  33. package/bin/main/context/context-agent/components/SummaryCompact.js.map +1 -0
  34. package/bin/main/context/context-agent/components/SummaryCompactor.d.ts.map +1 -0
  35. package/bin/main/context/context-agent/components/SummaryCompactor.js +45 -0
  36. package/bin/main/context/context-agent/components/SummaryCompactor.js.map +1 -0
  37. package/bin/main/context/manager/ContextId.d.ts.map +1 -0
  38. package/bin/main/context/manager/ContextId.js.map +1 -0
  39. package/bin/main/context/manager/ContextManager.d.ts.map +1 -0
  40. package/bin/main/context/manager/ContextManager.js +136 -0
  41. package/bin/main/context/manager/ContextManager.js.map +1 -0
  42. package/bin/main/context/manager/RequestContext.d.ts.map +1 -0
  43. package/bin/main/context/manager/RequestContext.js +22 -0
  44. package/bin/main/context/manager/RequestContext.js.map +1 -0
  45. package/bin/main/context/manager/RuntimeState.d.ts.map +1 -0
  46. package/bin/main/context/manager/RuntimeState.js +328 -0
  47. package/bin/main/context/manager/RuntimeState.js.map +1 -0
  48. package/bin/main/model/CreateModel.d.ts.map +1 -0
  49. package/bin/{core/llm → main/model}/CreateModel.js +20 -1
  50. package/bin/main/model/CreateModel.js.map +1 -0
  51. package/bin/main/model/ModelCommand.d.ts.map +1 -0
  52. package/bin/main/model/ModelCommand.js +46 -0
  53. package/bin/main/model/ModelCommand.js.map +1 -0
  54. package/bin/main/model/ModelManager.d.ts.map +1 -0
  55. package/bin/main/model/ModelManager.js +175 -0
  56. package/bin/main/model/ModelManager.js.map +1 -0
  57. package/bin/main/prompts/PromptRuntime.d.ts.map +1 -0
  58. package/bin/main/prompts/PromptRuntime.js +231 -0
  59. package/bin/main/prompts/PromptRuntime.js.map +1 -0
  60. package/bin/main/prompts/System.d.ts.map +1 -0
  61. package/bin/main/prompts/System.js +11 -0
  62. package/bin/main/prompts/System.js.map +1 -0
  63. package/bin/main/prompts/common/InitPrompts.d.ts.map +1 -0
  64. package/bin/main/{constants/InitTemplates.js → prompts/common/InitPrompts.js} +7 -7
  65. package/bin/main/prompts/common/InitPrompts.js.map +1 -0
  66. package/bin/main/prompts/common/PromptRenderer.d.ts.map +1 -0
  67. package/bin/main/prompts/common/PromptRenderer.js +23 -0
  68. package/bin/main/prompts/common/PromptRenderer.js.map +1 -0
  69. package/bin/main/prompts/system/PromptSystem.d.ts.map +1 -0
  70. package/bin/main/prompts/system/PromptSystem.js +49 -0
  71. package/bin/main/prompts/system/PromptSystem.js.map +1 -0
  72. package/bin/main/prompts/system/SystemDomain.d.ts.map +1 -0
  73. package/bin/main/prompts/system/SystemDomain.js +195 -0
  74. package/bin/main/prompts/system/SystemDomain.js.map +1 -0
  75. package/bin/main/prompts/variables/GeoContext.d.ts.map +1 -0
  76. package/bin/main/prompts/variables/GeoContext.js.map +1 -0
  77. package/bin/main/prompts/variables/PromptTypes.d.ts.map +1 -0
  78. package/bin/{core/prompts/types/PromptVariables.js → main/prompts/variables/PromptTypes.js} +2 -2
  79. package/bin/main/prompts/variables/PromptTypes.js.map +1 -0
  80. package/bin/main/prompts/variables/VariableReplacer.d.ts.map +1 -0
  81. package/bin/main/prompts/variables/VariableReplacer.js +72 -0
  82. package/bin/main/prompts/variables/VariableReplacer.js.map +1 -0
  83. package/bin/main/server/commands/Alias.d.ts.map +1 -0
  84. package/bin/main/server/commands/Alias.js.map +1 -0
  85. package/bin/main/server/commands/Config.d.ts.map +1 -0
  86. package/bin/main/server/commands/Config.js +637 -0
  87. package/bin/main/server/commands/Config.js.map +1 -0
  88. package/bin/main/server/commands/Index.d.ts.map +1 -0
  89. package/bin/main/{commands → server/commands}/Index.js +7 -3
  90. package/bin/main/server/commands/Index.js.map +1 -0
  91. package/bin/main/server/commands/Init.d.ts.map +1 -0
  92. package/bin/main/{commands → server/commands}/Init.js +320 -108
  93. package/bin/main/server/commands/Init.js.map +1 -0
  94. package/bin/main/server/commands/Restart.d.ts.map +1 -0
  95. package/bin/main/{commands → server/commands}/Restart.js +4 -4
  96. package/bin/main/server/commands/Restart.js.map +1 -0
  97. package/bin/main/server/commands/Run.d.ts.map +1 -0
  98. package/bin/main/{commands → server/commands}/Run.js +11 -16
  99. package/bin/main/server/commands/Run.js.map +1 -0
  100. package/bin/main/server/commands/Services.d.ts.map +1 -0
  101. package/bin/main/{commands → server/commands}/Services.js +2 -2
  102. package/bin/main/server/commands/Services.js.map +1 -0
  103. package/bin/main/server/commands/Start.d.ts.map +1 -0
  104. package/bin/main/{commands → server/commands}/Start.js +4 -4
  105. package/bin/main/server/commands/Start.js.map +1 -0
  106. package/bin/main/server/commands/Stop.d.ts.map +1 -0
  107. package/bin/main/{commands → server/commands}/Stop.js +1 -1
  108. package/bin/main/server/commands/Stop.js.map +1 -0
  109. package/bin/main/server/constants/Ship.d.ts.map +1 -0
  110. package/bin/main/{constants → server/constants}/Ship.js +0 -1
  111. package/bin/main/server/constants/Ship.js.map +1 -0
  112. package/bin/main/server/constants/ShipSchema.d.ts.map +1 -0
  113. package/bin/main/{constants → server/constants}/ShipSchema.js +3 -1
  114. package/bin/main/server/constants/ShipSchema.js.map +1 -0
  115. package/bin/main/server/daemon/Api.d.ts.map +1 -0
  116. package/bin/main/{runtime → server/daemon}/Api.js.map +1 -1
  117. package/bin/main/server/daemon/CliArgs.d.ts.map +1 -0
  118. package/bin/main/server/daemon/CliArgs.js.map +1 -0
  119. package/bin/main/server/daemon/Client.d.ts.map +1 -0
  120. package/bin/main/{runtime → server/daemon}/Client.js +2 -2
  121. package/bin/main/server/daemon/Client.js.map +1 -0
  122. package/bin/main/server/daemon/Manager.d.ts.map +1 -0
  123. package/bin/main/{runtime → server/daemon}/Manager.js +2 -2
  124. package/bin/main/server/daemon/Manager.js.map +1 -0
  125. package/bin/main/server/daemon/ProjectSetup.d.ts.map +1 -0
  126. package/bin/main/server/daemon/ProjectSetup.js +49 -0
  127. package/bin/main/server/daemon/ProjectSetup.js.map +1 -0
  128. package/bin/main/server/env/Config.d.ts.map +1 -0
  129. package/bin/main/{runtime → server/env}/Config.js +1 -1
  130. package/bin/main/server/env/Config.js.map +1 -0
  131. package/bin/main/server/env/Paths.d.ts.map +1 -0
  132. package/bin/main/{runtime → server/env}/Paths.js +1 -1
  133. package/bin/main/server/env/Paths.js.map +1 -0
  134. package/bin/main/server/index.d.ts.map +1 -0
  135. package/bin/main/server/index.js +113 -0
  136. package/bin/main/server/index.js.map +1 -0
  137. package/bin/main/server/routes/execute.d.ts.map +1 -0
  138. package/bin/main/server/routes/execute.js +82 -0
  139. package/bin/main/server/routes/execute.js.map +1 -0
  140. package/bin/main/server/routes/health.d.ts.map +1 -0
  141. package/bin/main/server/routes/health.js +24 -0
  142. package/bin/main/server/routes/health.js.map +1 -0
  143. package/bin/main/server/routes/services.d.ts.map +1 -0
  144. package/bin/main/server/routes/services.js +75 -0
  145. package/bin/main/server/routes/services.js.map +1 -0
  146. package/bin/main/server/routes/static.d.ts.map +1 -0
  147. package/bin/main/server/routes/static.js +97 -0
  148. package/bin/main/server/routes/static.js.map +1 -0
  149. package/bin/main/service/Manager.d.ts.map +1 -1
  150. package/bin/main/service/Manager.js +1 -165
  151. package/bin/main/service/Manager.js.map +1 -1
  152. package/bin/main/service/ServiceCommand.d.ts.map +1 -0
  153. package/bin/main/service/ServiceCommand.js +176 -0
  154. package/bin/main/service/ServiceCommand.js.map +1 -0
  155. package/bin/main/service/ServiceRuntime.d.ts.map +1 -1
  156. package/bin/main/tools/shell/ShellContextManager.d.ts.map +1 -0
  157. package/bin/main/tools/shell/ShellContextManager.js.map +1 -0
  158. package/bin/main/tools/shell/ShellHelpers.d.ts.map +1 -0
  159. package/bin/{core → main/tools}/shell/ShellHelpers.js +3 -4
  160. package/bin/main/tools/shell/ShellHelpers.js.map +1 -0
  161. package/bin/main/tools/shell/ShellResponse.d.ts.map +1 -0
  162. package/bin/main/tools/shell/ShellResponse.js.map +1 -0
  163. package/bin/main/tools/shell/Tool.d.ts.map +1 -0
  164. package/bin/{core → main/tools}/shell/Tool.js +16 -4
  165. package/bin/main/tools/shell/Tool.js.map +1 -0
  166. package/bin/main/types/Agent.d.ts.map +1 -0
  167. package/bin/main/types/Agent.js +10 -0
  168. package/bin/main/types/Agent.js.map +1 -0
  169. package/bin/{core → main}/types/ContextMessage.d.ts.map +1 -1
  170. package/bin/main/types/ContextMessage.js.map +1 -0
  171. package/bin/{core → main}/types/ContextMessagesMeta.d.ts.map +1 -1
  172. package/bin/main/types/ContextMessagesMeta.js.map +1 -0
  173. package/bin/main/types/ContextSystemMessage.d.ts.map +1 -0
  174. package/bin/main/types/ContextSystemMessage.js +9 -0
  175. package/bin/main/types/ContextSystemMessage.js.map +1 -0
  176. package/bin/main/types/PersistorPaths.d.ts.map +1 -0
  177. package/bin/main/types/PersistorPaths.js +2 -0
  178. package/bin/main/types/PersistorPaths.js.map +1 -0
  179. package/bin/{core → main}/types/Shell.d.ts.map +1 -1
  180. package/bin/main/types/Shell.js.map +1 -0
  181. package/bin/main/types/ShipConfig.d.ts.map +1 -1
  182. package/bin/main/ui/TuiApi.d.ts.map +1 -0
  183. package/bin/main/ui/TuiApi.js +239 -0
  184. package/bin/main/ui/TuiApi.js.map +1 -0
  185. package/bin/main/ui/tui/Helpers.d.ts.map +1 -0
  186. package/bin/main/{runtime/TuiApi.js → ui/tui/Helpers.js} +71 -290
  187. package/bin/main/ui/tui/Helpers.js.map +1 -0
  188. package/bin/main/ui/tui/Router.d.ts.map +1 -0
  189. package/bin/main/ui/tui/Router.js +21 -0
  190. package/bin/main/ui/tui/Router.js.map +1 -0
  191. package/bin/services/chat/Action.js +1 -1
  192. package/bin/services/chat/Action.js.map +1 -1
  193. package/bin/services/chat/PROMPT.txt +6 -1
  194. package/bin/services/chat/channels/BaseChatChannel.d.ts.map +1 -1
  195. package/bin/services/chat/channels/BaseChatChannel.js +57 -0
  196. package/bin/services/chat/channels/BaseChatChannel.js.map +1 -1
  197. package/bin/services/chat/channels/feishu/Auth.d.ts.map +1 -0
  198. package/bin/services/chat/channels/feishu/Auth.js +33 -0
  199. package/bin/services/chat/channels/feishu/Auth.js.map +1 -0
  200. package/bin/services/chat/channels/feishu/Feishu.js +1 -1
  201. package/bin/services/chat/channels/feishu/Feishu.js.map +1 -1
  202. package/bin/services/chat/channels/qq/Auth.d.ts.map +1 -0
  203. package/bin/services/chat/channels/qq/Auth.js +33 -0
  204. package/bin/services/chat/channels/qq/Auth.js.map +1 -0
  205. package/bin/services/chat/channels/qq/QQInboundDedupe.js +1 -1
  206. package/bin/services/chat/channels/qq/QQInboundDedupe.js.map +1 -1
  207. package/bin/services/chat/channels/telegram/ApiClient.js +1 -1
  208. package/bin/services/chat/channels/telegram/ApiClient.js.map +1 -1
  209. package/bin/services/chat/channels/telegram/Auth.d.ts.map +1 -0
  210. package/bin/services/chat/channels/telegram/Auth.js +34 -0
  211. package/bin/services/chat/channels/telegram/Auth.js.map +1 -0
  212. package/bin/services/chat/channels/telegram/Bot.d.ts.map +1 -1
  213. package/bin/services/chat/channels/telegram/Bot.js +58 -6
  214. package/bin/services/chat/channels/telegram/Bot.js.map +1 -1
  215. package/bin/services/chat/channels/telegram/PROMPT.txt +1 -0
  216. package/bin/services/chat/channels/telegram/Shared.d.ts.map +1 -1
  217. package/bin/services/chat/channels/telegram/Shared.js.map +1 -1
  218. package/bin/services/chat/channels/telegram/StateStore.js +1 -1
  219. package/bin/services/chat/channels/telegram/StateStore.js.map +1 -1
  220. package/bin/services/chat/runtime/ChatHistoryStore.js +1 -1
  221. package/bin/services/chat/runtime/ChatHistoryStore.js.map +1 -1
  222. package/bin/services/chat/runtime/ChatMetaStore.js +1 -1
  223. package/bin/services/chat/runtime/ChatMetaStore.js.map +1 -1
  224. package/bin/services/chat/runtime/ChatQueueWorker.d.ts.map +1 -1
  225. package/bin/services/chat/runtime/ChatQueueWorker.js +6 -10
  226. package/bin/services/chat/runtime/ChatQueueWorker.js.map +1 -1
  227. package/bin/services/chat/types/ChatAuth.d.ts.map +1 -0
  228. package/bin/services/chat/types/ChatAuth.js +9 -0
  229. package/bin/services/chat/types/ChatAuth.js.map +1 -0
  230. package/bin/services/memory/runtime/Extractor.js +2 -2
  231. package/bin/services/memory/runtime/Extractor.js.map +1 -1
  232. package/bin/services/memory/runtime/Manager.js +1 -1
  233. package/bin/services/memory/runtime/Manager.js.map +1 -1
  234. package/bin/services/memory/runtime/Service.js +2 -2
  235. package/bin/services/memory/runtime/Service.js.map +1 -1
  236. package/bin/services/memory/runtime/SystemProvider.js +2 -2
  237. package/bin/services/memory/runtime/SystemProvider.js.map +1 -1
  238. package/bin/services/skills/Action.js +1 -1
  239. package/bin/services/skills/Action.js.map +1 -1
  240. package/bin/services/skills/Command.js +1 -1
  241. package/bin/services/skills/Command.js.map +1 -1
  242. package/bin/services/skills/runtime/Discovery.d.ts.map +1 -1
  243. package/bin/services/skills/runtime/Paths.d.ts.map +1 -1
  244. package/bin/services/skills/runtime/Prompt.d.ts.map +1 -1
  245. package/bin/services/skills/runtime/SystemProvider.d.ts.map +1 -1
  246. package/bin/services/skills/runtime/SystemProvider.js +1 -1
  247. package/bin/services/skills/runtime/SystemProvider.js.map +1 -1
  248. package/bin/services/task/Action.d.ts.map +1 -1
  249. package/bin/services/task/Action.js +51 -23
  250. package/bin/services/task/Action.js.map +1 -1
  251. package/bin/services/task/Index.d.ts.map +1 -1
  252. package/bin/services/task/Index.js +19 -19
  253. package/bin/services/task/Index.js.map +1 -1
  254. package/bin/services/task/runtime/Paths.js +1 -1
  255. package/bin/services/task/runtime/Paths.js.map +1 -1
  256. package/bin/services/task/runtime/Runner.d.ts.map +1 -1
  257. package/bin/services/task/runtime/Runner.js +100 -25
  258. package/bin/services/task/runtime/Runner.js.map +1 -1
  259. package/bin/services/task/types/TaskCommand.d.ts.map +1 -1
  260. package/bin/utils/logger/Format.d.ts.map +1 -1
  261. package/bin/utils/logger/Format.js +15 -2
  262. package/bin/utils/logger/Format.js.map +1 -1
  263. package/bin/utils/logger/Logger.js +1 -1
  264. package/bin/utils/logger/Logger.js.map +1 -1
  265. package/bin/utils/storage/index.d.ts.map +1 -0
  266. package/bin/{main/runtime/Storage.js → utils/storage/index.js} +1 -1
  267. package/bin/utils/storage/index.js.map +1 -0
  268. package/package.json +3 -3
  269. package/scripts/lint-import-boundaries.mjs +6 -15
  270. package/src/services/README.md +4 -4
  271. package/src/services/chat/PROMPT.txt +6 -1
  272. package/src/services/chat/channels/telegram/PROMPT.txt +1 -0
  273. package/src/types/README.md +1 -1
  274. package/src/utils/README.md +2 -2
  275. package/test/core/context-system-prompt.test.mjs +1 -1
  276. package/test/logger/format.test.mjs +23 -0
  277. package/test/main/config-command.test.mjs +234 -0
  278. package/test/model/create-model.test.mjs +1 -1
  279. package/bin/core/context/Compact.d.ts.map +0 -1
  280. package/bin/core/context/Compact.js.map +0 -1
  281. package/bin/core/context/ContextAgent.d.ts.map +0 -1
  282. package/bin/core/context/ContextAgent.js +0 -549
  283. package/bin/core/context/ContextAgent.js.map +0 -1
  284. package/bin/core/context/ContextManager.d.ts.map +0 -1
  285. package/bin/core/context/ContextManager.js +0 -154
  286. package/bin/core/context/ContextManager.js.map +0 -1
  287. package/bin/core/context/ContextStore.d.ts.map +0 -1
  288. package/bin/core/context/ContextStore.js +0 -479
  289. package/bin/core/context/ContextStore.js.map +0 -1
  290. package/bin/core/llm/CreateModel.d.ts.map +0 -1
  291. package/bin/core/llm/CreateModel.js.map +0 -1
  292. package/bin/core/prompts/System.d.ts.map +0 -1
  293. package/bin/core/prompts/System.js +0 -137
  294. package/bin/core/prompts/System.js.map +0 -1
  295. package/bin/core/prompts/runtime/GeoContext.d.ts.map +0 -1
  296. package/bin/core/prompts/runtime/GeoContext.js.map +0 -1
  297. package/bin/core/prompts/types/PromptVariables.d.ts.map +0 -1
  298. package/bin/core/prompts/types/PromptVariables.js.map +0 -1
  299. package/bin/core/shell/ShellContextManager.d.ts.map +0 -1
  300. package/bin/core/shell/ShellContextManager.js.map +0 -1
  301. package/bin/core/shell/ShellHelpers.d.ts.map +0 -1
  302. package/bin/core/shell/ShellHelpers.js.map +0 -1
  303. package/bin/core/shell/ShellResponse.d.ts.map +0 -1
  304. package/bin/core/shell/ShellResponse.js.map +0 -1
  305. package/bin/core/shell/Tool.d.ts.map +0 -1
  306. package/bin/core/shell/Tool.js.map +0 -1
  307. package/bin/core/types/Agent.d.ts.map +0 -1
  308. package/bin/core/types/Agent.js +0 -10
  309. package/bin/core/types/Agent.js.map +0 -1
  310. package/bin/core/types/AgentSystem.d.ts.map +0 -1
  311. package/bin/core/types/AgentSystem.js +0 -9
  312. package/bin/core/types/AgentSystem.js.map +0 -1
  313. package/bin/core/types/ContextMessage.js.map +0 -1
  314. package/bin/core/types/ContextMessagesMeta.js.map +0 -1
  315. package/bin/core/types/ContextStore.d.ts.map +0 -1
  316. package/bin/core/types/ContextStore.js +0 -9
  317. package/bin/core/types/ContextStore.js.map +0 -1
  318. package/bin/core/types/Shell.js.map +0 -1
  319. package/bin/main/commands/Alias.d.ts.map +0 -1
  320. package/bin/main/commands/Alias.js.map +0 -1
  321. package/bin/main/commands/Index.d.ts.map +0 -1
  322. package/bin/main/commands/Index.js.map +0 -1
  323. package/bin/main/commands/Init.d.ts.map +0 -1
  324. package/bin/main/commands/Init.js.map +0 -1
  325. package/bin/main/commands/Restart.d.ts.map +0 -1
  326. package/bin/main/commands/Restart.js.map +0 -1
  327. package/bin/main/commands/Run.d.ts.map +0 -1
  328. package/bin/main/commands/Run.js.map +0 -1
  329. package/bin/main/commands/Services.d.ts.map +0 -1
  330. package/bin/main/commands/Services.js.map +0 -1
  331. package/bin/main/commands/Start.d.ts.map +0 -1
  332. package/bin/main/commands/Start.js.map +0 -1
  333. package/bin/main/commands/Stop.d.ts.map +0 -1
  334. package/bin/main/commands/Stop.js.map +0 -1
  335. package/bin/main/constants/InitTemplates.d.ts.map +0 -1
  336. package/bin/main/constants/InitTemplates.js.map +0 -1
  337. package/bin/main/constants/Model.d.ts.map +0 -1
  338. package/bin/main/constants/Model.js +0 -88
  339. package/bin/main/constants/Model.js.map +0 -1
  340. package/bin/main/constants/Ship.d.ts.map +0 -1
  341. package/bin/main/constants/Ship.js.map +0 -1
  342. package/bin/main/constants/ShipSchema.d.ts.map +0 -1
  343. package/bin/main/constants/ShipSchema.js.map +0 -1
  344. package/bin/main/runtime/AgentServer.d.ts.map +0 -1
  345. package/bin/main/runtime/AgentServer.js +0 -374
  346. package/bin/main/runtime/AgentServer.js.map +0 -1
  347. package/bin/main/runtime/Api.d.ts.map +0 -1
  348. package/bin/main/runtime/CliArgs.d.ts.map +0 -1
  349. package/bin/main/runtime/CliArgs.js.map +0 -1
  350. package/bin/main/runtime/Client.d.ts.map +0 -1
  351. package/bin/main/runtime/Client.js.map +0 -1
  352. package/bin/main/runtime/Config.d.ts.map +0 -1
  353. package/bin/main/runtime/Config.js.map +0 -1
  354. package/bin/main/runtime/ContextId.d.ts.map +0 -1
  355. package/bin/main/runtime/ContextId.js.map +0 -1
  356. package/bin/main/runtime/Manager.d.ts.map +0 -1
  357. package/bin/main/runtime/Manager.js.map +0 -1
  358. package/bin/main/runtime/Paths.d.ts.map +0 -1
  359. package/bin/main/runtime/Paths.js.map +0 -1
  360. package/bin/main/runtime/RuntimeState.d.ts.map +0 -1
  361. package/bin/main/runtime/RuntimeState.js +0 -576
  362. package/bin/main/runtime/RuntimeState.js.map +0 -1
  363. package/bin/main/runtime/Storage.d.ts.map +0 -1
  364. package/bin/main/runtime/Storage.js.map +0 -1
  365. package/bin/main/runtime/TuiApi.d.ts.map +0 -1
  366. package/bin/main/runtime/TuiApi.js.map +0 -1
  367. package/bin/main/service/RequestContext.d.ts.map +0 -1
  368. package/bin/main/service/RequestContext.js +0 -29
  369. package/bin/main/service/RequestContext.js.map +0 -1
  370. package/bin/services/task/runtime/TaskPrompt.d.ts.map +0 -1
  371. package/bin/services/task/runtime/TaskPrompt.js +0 -23
  372. package/bin/services/task/runtime/TaskPrompt.js.map +0 -1
  373. package/src/core/README.md +0 -43
  374. package/src/main/README.md +0 -56
  375. package/src/main/service/README.md +0 -69
  376. /package/bin/main/{runtime → context/manager}/ContextId.js +0 -0
  377. /package/bin/main/{constants/templates → prompts/common/assets/init}/PROFILE.md.txt +0 -0
  378. /package/bin/main/{constants/templates → prompts/common/assets/init}/SOUL.md.txt +0 -0
  379. /package/bin/main/{constants/templates → prompts/common/assets/init}/USER.md.txt +0 -0
  380. /package/bin/{core/prompts/prompt.txt → main/prompts/system/assets/core.prompt.txt} +0 -0
  381. /package/bin/main/{service/PROMPT.txt → prompts/system/assets/service.prompt.txt} +0 -0
  382. /package/bin/{services/task/TASK.prompt.txt → main/prompts/system/assets/task.prompt.txt} +0 -0
  383. /package/bin/{core/prompts/runtime → main/prompts/variables}/GeoContext.js +0 -0
  384. /package/bin/main/{commands → server/commands}/Alias.js +0 -0
  385. /package/bin/main/{runtime → server/daemon}/Api.js +0 -0
  386. /package/bin/main/{runtime → server/daemon}/CliArgs.js +0 -0
  387. /package/bin/{core → main/tools}/shell/ShellContextManager.js +0 -0
  388. /package/bin/{core → main/tools}/shell/ShellResponse.js +0 -0
  389. /package/bin/{core → main}/types/ContextMessage.js +0 -0
  390. /package/bin/{core → main}/types/ContextMessagesMeta.js +0 -0
  391. /package/bin/{core → main}/types/Shell.js +0 -0
  392. /package/src/main/{constants/templates → prompts/common/assets/init}/PROFILE.md.txt +0 -0
  393. /package/src/main/{constants/templates → prompts/common/assets/init}/SOUL.md.txt +0 -0
  394. /package/src/main/{constants/templates → prompts/common/assets/init}/USER.md.txt +0 -0
  395. /package/src/{core/prompts/prompt.txt → main/prompts/system/assets/core.prompt.txt} +0 -0
  396. /package/src/main/{service/PROMPT.txt → prompts/system/assets/service.prompt.txt} +0 -0
  397. /package/src/{services/task/TASK.prompt.txt → main/prompts/system/assets/task.prompt.txt} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../../src/main/agent/Agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAKL,KAAK,aAAa,EAInB,MAAM,IAAI,CAAC;AACZ,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAChF,OAAO,KAAK,EAEV,WAAW,EACX,aAAa,EACd,MAAM,sBAAsB,CAAC;AAmB9B,KAAK,YAAY,GAAG;IAClB;;OAEG;IACH,KAAK,EAAE,aAAa,CAAC;IAErB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,SAAS,EAAE,kBAAkB,CAAC;IAE9B;;OAEG;IACH,SAAS,EAAE,kBAAkB,CAAC;IAE9B;;OAEG;IACH,YAAY,EAAE,qBAAqB,CAAC;IAEpC;;OAEG;IACH,MAAM,EAAE,iBAAiB,CAAC;CAC3B,CAAC;AAEF;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAQ5D;AAED,qBAAa,KAAK;IAChB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgB;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqB;IAC/C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqB;IAC/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;IACrD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;gBAE/B,OAAO,EAAE,YAAY;IASjC;;OAEG;IACG,GAAG,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC;IAMrD;;OAEG;YACW,YAAY;IAmE1B;;OAEG;YACW,mBAAmB;IAoDjC;;OAEG;YACW,kBAAkB;IA6KhC;;OAEG;IACH,OAAO,CAAC,eAAe;IAOvB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAmBhC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAejC;;OAEG;YACW,eAAe;IAiB7B;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAgBrC;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAkBrC;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAwBrC;;OAEG;IACH,OAAO,CAAC,mCAAmC;CAW5C"}
@@ -0,0 +1,429 @@
1
+ /**
2
+ * Agent:通用执行器。
3
+ *
4
+ * 关键点(中文)
5
+ * - 自身负责“调用核心组件装配 -> 执行 tool-loop”。
6
+ * - 组件按运行节点收敛为:Orchestrator / Prompter / Compactor / Persistor。
7
+ * - `AgentExecuteInput` 使用 context 语义消息,内部再转换为模型消息。
8
+ */
9
+ import { convertToModelMessages, isTextUIPart, streamText, stepCountIs, } from "ai";
10
+ const MAX_ERROR_HANDOVER_ATTEMPTS = 2;
11
+ const MAX_CONTEXT_LENGTH_RETRY_ATTEMPTS = 3;
12
+ /**
13
+ * 判断是否为上下文长度超限错误。
14
+ */
15
+ export function isContextLengthError(error) {
16
+ const errorMsg = String(error ?? "");
17
+ return (errorMsg.includes("context_length") ||
18
+ errorMsg.includes("too long") ||
19
+ errorMsg.includes("maximum context") ||
20
+ errorMsg.includes("context window"));
21
+ }
22
+ export class Agent {
23
+ model;
24
+ logger;
25
+ persistor;
26
+ compactor;
27
+ orchestrator;
28
+ system;
29
+ constructor(options) {
30
+ this.model = options.model;
31
+ this.logger = options.logger;
32
+ this.persistor = options.persistor;
33
+ this.compactor = options.compactor;
34
+ this.orchestrator = options.orchestrator;
35
+ this.system = options.system;
36
+ }
37
+ /**
38
+ * 执行一次 Agent run。
39
+ */
40
+ async run(input) {
41
+ return this.runWithState(input, {
42
+ retryCount: 0,
43
+ });
44
+ }
45
+ /**
46
+ * 执行一次 Agent run(带装配重试状态)。
47
+ */
48
+ async runWithState(input, state) {
49
+ const query = String(input.query || "").trim();
50
+ const contextId = String(this.persistor.contextId || "").trim();
51
+ if (!contextId) {
52
+ throw new Error("Agent.run requires persistor.contextId");
53
+ }
54
+ let requestId = "";
55
+ try {
56
+ const prepared = await this.prepareExecuteInput({
57
+ contextId,
58
+ query,
59
+ retryCount: state.retryCount,
60
+ });
61
+ requestId = prepared.requestId;
62
+ return await this.executePreparedRun(prepared, {
63
+ errorHandoverAttempts: 0,
64
+ errorForAgent: "",
65
+ });
66
+ }
67
+ catch (error) {
68
+ if (isContextLengthError(error)) {
69
+ await this.logger.log("warn", "Context length exceeded, retry with messages compaction", {
70
+ contextId,
71
+ error: String(error),
72
+ retryCount: state.retryCount,
73
+ });
74
+ if (state.retryCount >= MAX_CONTEXT_LENGTH_RETRY_ATTEMPTS) {
75
+ return {
76
+ success: false,
77
+ assistantMessage: this.buildFallbackAssistantMessage({
78
+ contextId,
79
+ requestId,
80
+ text: "Context length exceeded and retries failed. Please resend your question.",
81
+ note: "context_length_exceeded",
82
+ }),
83
+ };
84
+ }
85
+ return this.runWithState(input, {
86
+ retryCount: state.retryCount + 1,
87
+ });
88
+ }
89
+ const errorMsg = String(error);
90
+ await this.logger.log("error", "Agent execution failed", {
91
+ contextId,
92
+ error: errorMsg,
93
+ });
94
+ return {
95
+ success: false,
96
+ assistantMessage: this.buildFallbackAssistantMessage({
97
+ contextId,
98
+ requestId,
99
+ text: `Execution failed: ${errorMsg}`,
100
+ note: "agent_execution_failed",
101
+ }),
102
+ };
103
+ }
104
+ }
105
+ /**
106
+ * 调用核心组件组装当前轮执行输入。
107
+ */
108
+ async prepareExecuteInput(params) {
109
+ const runContext = await this.orchestrator.compose({
110
+ contextId: params.contextId,
111
+ });
112
+ const requestId = String(runContext.requestId || "").trim();
113
+ if (!requestId) {
114
+ throw new Error("Agent.prepareExecuteInput requires requestId");
115
+ }
116
+ const tools = this.normalizeRunTools(runContext.tools);
117
+ const system = this.normalizeSystem(await this.system.resolve({
118
+ contextId: params.contextId,
119
+ requestId,
120
+ }));
121
+ try {
122
+ await this.compactor.run({
123
+ persistor: this.persistor,
124
+ model: this.model,
125
+ system,
126
+ retryCount: params.retryCount,
127
+ });
128
+ }
129
+ catch {
130
+ // ignore
131
+ }
132
+ const messages = this.normalizeContextMessages(await this.persistor.prepare({
133
+ query: params.query,
134
+ tools,
135
+ system,
136
+ model: this.model,
137
+ retryCount: params.retryCount,
138
+ }));
139
+ return {
140
+ requestId,
141
+ system,
142
+ messages,
143
+ tools,
144
+ ...(typeof runContext.onStepCallback === "function"
145
+ ? { onStepCallback: runContext.onStepCallback }
146
+ : {}),
147
+ };
148
+ }
149
+ /**
150
+ * 执行一次已装配完成的运行材料。
151
+ */
152
+ async executePreparedRun(input, state) {
153
+ const startTime = Date.now();
154
+ const contextId = String(this.persistor.contextId || "").trim();
155
+ const requestId = String(input.requestId || "").trim();
156
+ const system = this.normalizeSystem(input.system);
157
+ const tools = this.normalizeRunTools(input.tools);
158
+ let baseContextMessages = this.normalizeContextMessages(input.messages);
159
+ const onStepCallback = typeof input.onStepCallback === "function"
160
+ ? input.onStepCallback
161
+ : undefined;
162
+ const { errorForAgent, errorHandoverAttempts } = state;
163
+ if (errorForAgent) {
164
+ baseContextMessages = [
165
+ ...baseContextMessages,
166
+ this.buildErrorHandoverUserMessage({
167
+ contextId,
168
+ requestId,
169
+ errorMessage: errorForAgent,
170
+ handoverAttempt: errorHandoverAttempts,
171
+ }),
172
+ ];
173
+ }
174
+ try {
175
+ let baseModelMessages = await this.toModelMessages(baseContextMessages, tools);
176
+ let lastAppliedBasePrefixLen = baseModelMessages.length;
177
+ const appendMergedUserMessages = async (messages) => {
178
+ const normalized = this.extractMergedUserMessages(messages);
179
+ if (normalized.length === 0)
180
+ return 0;
181
+ baseContextMessages = [...baseContextMessages, ...normalized];
182
+ baseModelMessages = await this.toModelMessages(baseContextMessages, tools);
183
+ return normalized.length;
184
+ };
185
+ const result = streamText({
186
+ model: this.model,
187
+ system,
188
+ prepareStep: async ({ messages }) => {
189
+ const incomingMessages = Array.isArray(messages)
190
+ ? messages
191
+ : [];
192
+ const suffix = incomingMessages.length >= lastAppliedBasePrefixLen
193
+ ? incomingMessages.slice(lastAppliedBasePrefixLen)
194
+ : [];
195
+ let outMessages;
196
+ if (typeof onStepCallback === "function") {
197
+ try {
198
+ const mergedMessages = await onStepCallback();
199
+ const added = await appendMergedUserMessages(Array.isArray(mergedMessages) ? mergedMessages : []);
200
+ if (added > 0) {
201
+ outMessages = [...baseModelMessages, ...suffix];
202
+ lastAppliedBasePrefixLen = baseModelMessages.length;
203
+ }
204
+ }
205
+ catch {
206
+ // ignore merge hook failures
207
+ }
208
+ }
209
+ return {
210
+ system,
211
+ ...(Array.isArray(outMessages) ? { messages: outMessages } : {}),
212
+ };
213
+ },
214
+ messages: baseModelMessages,
215
+ tools,
216
+ providerOptions: this.buildOpenAIResponsesProviderOptions(),
217
+ stopWhen: [stepCountIs(30)],
218
+ });
219
+ let finalAssistantUiMessage = null;
220
+ let uiStreamError = null;
221
+ try {
222
+ const md = this.buildAssistantMessageMetadata({
223
+ contextId,
224
+ requestId,
225
+ note: "ai_sdk_ui_message",
226
+ });
227
+ const uiStream = result.toUIMessageStream({
228
+ sendReasoning: false,
229
+ sendSources: false,
230
+ generateMessageId: () => `a:${contextId}:${Date.now()}`,
231
+ messageMetadata: () => md,
232
+ onFinish: (event) => {
233
+ finalAssistantUiMessage = event.responseMessage ?? null;
234
+ },
235
+ });
236
+ for await (const _ of uiStream) {
237
+ // ignore chunks
238
+ }
239
+ }
240
+ catch (error) {
241
+ uiStreamError = error;
242
+ finalAssistantUiMessage = null;
243
+ }
244
+ if (uiStreamError !== null) {
245
+ throw uiStreamError;
246
+ }
247
+ const duration = Date.now() - startTime;
248
+ await this.logger.log("info", "Agent execution completed", {
249
+ duration,
250
+ });
251
+ if (!finalAssistantUiMessage) {
252
+ let assistantText = "";
253
+ try {
254
+ assistantText = String((await result.text) ?? "").trim();
255
+ }
256
+ catch {
257
+ assistantText = "";
258
+ }
259
+ finalAssistantUiMessage = this.buildFallbackAssistantMessage({
260
+ contextId,
261
+ requestId,
262
+ text: assistantText || "Execution completed",
263
+ note: "assistant_message_fallback",
264
+ });
265
+ }
266
+ return {
267
+ success: true,
268
+ assistantMessage: finalAssistantUiMessage,
269
+ };
270
+ }
271
+ catch (error) {
272
+ if (isContextLengthError(error)) {
273
+ throw error;
274
+ }
275
+ const errorMsg = String(error);
276
+ if (errorHandoverAttempts < MAX_ERROR_HANDOVER_ATTEMPTS) {
277
+ await this.logger.log("warn", "Agent run failed, hand over error back to agent", {
278
+ contextId,
279
+ error: errorMsg,
280
+ errorHandoverAttempts,
281
+ });
282
+ return this.executePreparedRun(input, {
283
+ errorHandoverAttempts: errorHandoverAttempts + 1,
284
+ errorForAgent: errorMsg,
285
+ });
286
+ }
287
+ await this.logger.log("error", "Agent execution failed", {
288
+ contextId,
289
+ error: errorMsg,
290
+ });
291
+ return {
292
+ success: false,
293
+ assistantMessage: this.buildFallbackAssistantMessage({
294
+ contextId,
295
+ requestId,
296
+ text: `Execution failed: ${errorMsg}`,
297
+ note: "agent_execution_failed",
298
+ }),
299
+ };
300
+ }
301
+ }
302
+ /**
303
+ * 归一化 system messages。
304
+ */
305
+ normalizeSystem(system) {
306
+ if (!Array.isArray(system))
307
+ return [];
308
+ return system.filter((item) => item && typeof item === "object");
309
+ }
310
+ /**
311
+ * 归一化工具集合。
312
+ */
313
+ normalizeRunTools(tools) {
314
+ return tools && typeof tools === "object" ? { ...tools } : {};
315
+ }
316
+ /**
317
+ * 归一化 context 消息集合。
318
+ */
319
+ normalizeContextMessages(messages) {
320
+ if (!Array.isArray(messages))
321
+ return [];
322
+ return messages
323
+ .map((message) => {
324
+ const parts = Array.isArray(message.parts)
325
+ ? message.parts.filter((part) => part?.type === "text")
326
+ : [];
327
+ return {
328
+ ...message,
329
+ parts,
330
+ };
331
+ })
332
+ .filter((message) => Array.isArray(message.parts) && message.parts.length > 0);
333
+ }
334
+ /**
335
+ * 从回调返回值中提取可追加的 user 消息。
336
+ */
337
+ extractMergedUserMessages(messages) {
338
+ if (!Array.isArray(messages))
339
+ return [];
340
+ return this.normalizeContextMessages(messages).filter((message) => {
341
+ if (message.role !== "user")
342
+ return false;
343
+ const text = message.parts
344
+ .filter(isTextUIPart)
345
+ .map((part) => String(part.text ?? ""))
346
+ .join("\n")
347
+ .trim();
348
+ return Boolean(text);
349
+ });
350
+ }
351
+ /**
352
+ * 将 context 消息转换为模型消息。
353
+ */
354
+ async toModelMessages(messages, tools) {
355
+ const input = this.normalizeContextMessages(messages).map((message) => {
356
+ const { id: _id, ...rest } = message;
357
+ return rest;
358
+ });
359
+ if (input.length === 0)
360
+ return [];
361
+ return await convertToModelMessages(input, {
362
+ ...(tools && Object.keys(tools).length > 0
363
+ ? { tools: tools }
364
+ : {}),
365
+ ignoreIncompleteToolCalls: true,
366
+ });
367
+ }
368
+ /**
369
+ * 构造 assistant 消息元信息。
370
+ */
371
+ buildAssistantMessageMetadata(params) {
372
+ return {
373
+ v: 1,
374
+ ts: Date.now(),
375
+ contextId: params.contextId,
376
+ requestId: params.requestId,
377
+ source: "egress",
378
+ kind: "normal",
379
+ extra: { note: params.note },
380
+ };
381
+ }
382
+ /**
383
+ * 构造 fallback assistant 消息。
384
+ */
385
+ buildFallbackAssistantMessage(params) {
386
+ return this.persistor.assistantText({
387
+ text: params.text,
388
+ metadata: {
389
+ contextId: params.contextId,
390
+ requestId: params.requestId,
391
+ extra: { note: params.note },
392
+ },
393
+ kind: "normal",
394
+ source: "egress",
395
+ });
396
+ }
397
+ /**
398
+ * 构造错误交接 user 消息。
399
+ */
400
+ buildErrorHandoverUserMessage(params) {
401
+ const normalizedError = String(params.errorMessage || "")
402
+ .trim()
403
+ .slice(0, 1200);
404
+ return this.persistor.userText({
405
+ text: [
406
+ "上一轮执行出现错误,请不要结束,继续推进当前任务。",
407
+ `错误信息:${normalizedError || "(empty error)"}`,
408
+ "要求:分析错误原因,调整执行步骤,并继续调用需要的工具直到任务完成。",
409
+ `错误交接轮次:${params.handoverAttempt + 1}`,
410
+ ].join("\n"),
411
+ metadata: {
412
+ contextId: params.contextId,
413
+ requestId: params.requestId,
414
+ extra: { note: "agent_error_handover" },
415
+ },
416
+ });
417
+ }
418
+ /**
419
+ * 构建 OpenAI Responses providerOptions。
420
+ */
421
+ buildOpenAIResponsesProviderOptions() {
422
+ return {
423
+ openai: {
424
+ store: false,
425
+ },
426
+ };
427
+ }
428
+ }
429
+ //# sourceMappingURL=Agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../../src/main/agent/Agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentComponent.d.ts","sourceRoot":"","sources":["../../../../src/main/agent/components/AgentComponent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,8BAAsB,cAAc;IAClC;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAE/B;;;;;;OAMG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B;;;;;OAKG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAG/B"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * AgentComponent:Agent 能力组件基类。
3
+ *
4
+ * 关键点(中文)
5
+ * - 仅定义最小公共生命周期能力,避免演化为“万能基类”。
6
+ * - 业务行为由子类自行定义(Persistor/Compactor/Orchestrator/Prompter)。
7
+ */
8
+ export class AgentComponent {
9
+ /**
10
+ * 可选初始化钩子。
11
+ *
12
+ * 关键点(中文)
13
+ * - Agent/Runtime 启动时可统一调用。
14
+ * - 无需初始化的组件可不实现。
15
+ */
16
+ async init() {
17
+ // no-op
18
+ }
19
+ /**
20
+ * 可选释放钩子。
21
+ *
22
+ * 关键点(中文)
23
+ * - Runtime 关停时统一释放资源(连接、句柄、缓存等)。
24
+ */
25
+ async dispose() {
26
+ // no-op
27
+ }
28
+ }
29
+ //# sourceMappingURL=AgentComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentComponent.js","sourceRoot":"","sources":["../../../../src/main/agent/components/AgentComponent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,OAAgB,cAAc;IAMlC;;;;;;OAMG;IACH,KAAK,CAAC,IAAI;QACR,QAAQ;IACV,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,OAAO;QACX,QAAQ;IACV,CAAC;CACF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompactorComponent.d.ts","sourceRoot":"","sources":["../../../../src/main/agent/components/CompactorComponent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;OAEG;IACH,SAAS,EAAE,kBAAkB,CAAC;IAE9B;;OAEG;IACH,KAAK,EAAE,aAAa,CAAC;IAErB;;OAEG;IACH,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAE7B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;GAEG;AACH,8BAAsB,kBAAmB,SAAQ,cAAc;IAC7D;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAE/B;;OAEG;IACH,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC;QAC9C,SAAS,EAAE,OAAO,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CAMH"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * CompactorComponent:上下文压缩组件抽象。
3
+ *
4
+ * 关键点(中文)
5
+ * - 负责“何时压缩 + 压缩策略参数”决策。
6
+ * - 具体读写由 Persistor 执行(Compactor 不直接落盘)。
7
+ */
8
+ import { AgentComponent } from "./AgentComponent.js";
9
+ /**
10
+ * Compactor 组件抽象类。
11
+ */
12
+ export class CompactorComponent extends AgentComponent {
13
+ }
14
+ //# sourceMappingURL=CompactorComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompactorComponent.js","sourceRoot":"","sources":["../../../../src/main/agent/components/CompactorComponent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AA4BrD;;GAEG;AACH,MAAM,OAAgB,kBAAmB,SAAQ,cAAc;CAkB9D"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrchestratorComponent.d.ts","sourceRoot":"","sources":["../../../../src/main/agent/components/OrchestratorComponent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE5B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAAC;CAC5D,CAAC;AAEF;;GAEG;AACH,8BAAsB,qBAAsB,SAAQ,cAAc;IAChE;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAE/B;;OAEG;IACH,QAAQ,CAAC,OAAO,CACd,KAAK,EAAE,wBAAwB,GAC9B,OAAO,CAAC,yBAAyB,CAAC;CACtC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * OrchestratorComponent:单次 Agent run 编排组件抽象。
3
+ *
4
+ * 关键点(中文)
5
+ * - 负责 requestId/tools/onStepCallback 等运行时编排。
6
+ * - 不负责历史读写,不负责 system 解析,不负责 compact。
7
+ */
8
+ import { AgentComponent } from "./AgentComponent.js";
9
+ /**
10
+ * Orchestrator 组件抽象类。
11
+ */
12
+ export class OrchestratorComponent extends AgentComponent {
13
+ }
14
+ //# sourceMappingURL=OrchestratorComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrchestratorComponent.js","sourceRoot":"","sources":["../../../../src/main/agent/components/OrchestratorComponent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAgCrD;;GAEG;AACH,MAAM,OAAgB,qBAAsB,SAAQ,cAAc;CAYjE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PersistorComponent.d.ts","sourceRoot":"","sources":["../../../../src/main/agent/components/PersistorComponent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * PersistorComponent:会话历史持久化组件抽象。
3
+ *
4
+ * 关键点(中文)
5
+ * - 负责“历史读写 + 运行输入准备 + 文本消息工厂”。
6
+ * - 不负责模型调用,不负责执行编排。
7
+ */
8
+ import { AgentComponent } from "./AgentComponent.js";
9
+ /**
10
+ * Persistor 组件抽象类。
11
+ */
12
+ export class PersistorComponent extends AgentComponent {
13
+ }
14
+ //# sourceMappingURL=PersistorComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PersistorComponent.js","sourceRoot":"","sources":["../../../../src/main/agent/components/PersistorComponent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAQH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AA8DrD;;GAEG;AACH,MAAM,OAAgB,kBAAmB,SAAQ,cAAc;CAyG9D"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrompterComponent.d.ts","sourceRoot":"","sources":["../../../../src/main/agent/components/PrompterComponent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,8BAAsB,iBAAkB,SAAQ,cAAc;IAC5D;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAE/B;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;CAC7E"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * PrompterComponent:system 管理组件抽象。
3
+ *
4
+ * 关键点(中文)
5
+ * - 专职负责“会话上下文 -> system messages”解析。
6
+ * - 与 tools/requestId/onStep 编排解耦,避免 Orchestrator 过重。
7
+ */
8
+ import { AgentComponent } from "./AgentComponent.js";
9
+ /**
10
+ * Prompter 组件抽象类。
11
+ */
12
+ export class PrompterComponent extends AgentComponent {
13
+ }
14
+ //# sourceMappingURL=PrompterComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrompterComponent.js","sourceRoot":"","sources":["../../../../src/main/agent/components/PrompterComponent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAiBrD;;GAEG;AACH,MAAM,OAAgB,iBAAkB,SAAQ,cAAc;CAU7D"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextAgent.d.ts","sourceRoot":"","sources":["../../../../src/main/context/context-agent/ContextAgent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAEhF,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEvE,KAAK,mBAAmB,GAAG;IACzB;;OAEG;IACH,KAAK,EAAE,aAAa,CAAC;IAErB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,SAAS,EAAE,kBAAkB,CAAC;IAE9B;;OAEG;IACH,SAAS,EAAE,kBAAkB,CAAC;IAE9B;;OAEG;IACH,MAAM,EAAE,iBAAiB,CAAC;IAE1B;;OAEG;IACH,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;CACtC,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;gBAElB,OAAO,EAAE,mBAAmB;IAaxC;;OAEG;IACG,GAAG,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC;CAGtD"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * ContextAgent:Context 场景运行装配器。
3
+ *
4
+ * 关键点(中文)
5
+ * - 负责在当前 `contextId` 作用域内装配 Agent 所需核心组件。
6
+ * - 具体 run loop 仍由 `main/agent/Agent` 执行。
7
+ */
8
+ import { Agent } from "../../agent/Agent.js";
9
+ import { RuntimeOrchestrator } from "../../context/context-agent/components/RuntimeOrchestrator.js";
10
+ /**
11
+ * ContextAgent 默认实现。
12
+ */
13
+ export class ContextAgent {
14
+ agent;
15
+ constructor(options) {
16
+ this.agent = new Agent({
17
+ model: options.model,
18
+ logger: options.logger,
19
+ persistor: options.persistor,
20
+ compactor: options.compactor,
21
+ system: options.system,
22
+ orchestrator: new RuntimeOrchestrator({
23
+ getTools: options.getTools,
24
+ }),
25
+ });
26
+ }
27
+ /**
28
+ * 运行当前 context 的一次请求。
29
+ */
30
+ async run(input) {
31
+ return await this.agent.run(input);
32
+ }
33
+ }
34
+ //# sourceMappingURL=ContextAgent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextAgent.js","sourceRoot":"","sources":["../../../../src/main/context/context-agent/ContextAgent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAI7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,+DAA+D,CAAC;AAmCpG;;GAEG;AACH,MAAM,OAAO,YAAY;IACN,KAAK,CAAQ;IAE9B,YAAY,OAA4B;QACtC,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC;YACrB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,YAAY,EAAE,IAAI,mBAAmB,CAAC;gBACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ;aAC3B,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,KAAoB;QAC5B,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;CACF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextAgentDispatcher.d.ts","sourceRoot":"","sources":["../../../../src/main/context/context-agent/ContextAgentDispatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAE3E;;GAEG;AACH,KAAK,6BAA6B,GAAG;IACnC;;OAEG;IACH,KAAK,EAAE,aAAa,CAAC;IAErB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,kBAAkB,CAAC;IAE3D;;OAEG;IACH,SAAS,EAAE,kBAAkB,CAAC;IAE9B;;OAEG;IACH,MAAM,EAAE,iBAAiB,CAAC;IAE1B;;OAEG;IACH,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;CACtC,CAAC;AAEF;;GAEG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgB;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAmD;IACnF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqB;IAC/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4C;IACrE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAwC;IAC1E,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAC1B;gBAEA,OAAO,EAAE,6BAA6B;IASlD;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,kBAAkB;IAenD;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY;IAsBzC;;OAEG;IACH,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;CAOrC"}