@downcity/city 1.1.4 → 1.1.5

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 (1001) hide show
  1. package/README.md +245 -0
  2. package/bin/cli/Index.js +12 -12
  3. package/bin/cli/Index.js.map +1 -1
  4. package/bin/cli/agent/AgentChat.d.ts +22 -0
  5. package/bin/cli/agent/AgentChat.d.ts.map +1 -0
  6. package/bin/cli/agent/AgentChat.js +357 -0
  7. package/bin/cli/agent/AgentChat.js.map +1 -0
  8. package/bin/cli/agent/AgentChatTypes.d.ts +87 -0
  9. package/bin/cli/agent/AgentChatTypes.d.ts.map +1 -0
  10. package/bin/cli/agent/AgentChatTypes.js +12 -0
  11. package/bin/cli/agent/AgentChatTypes.js.map +1 -0
  12. package/bin/cli/agent/AgentHistory.d.ts +14 -0
  13. package/bin/cli/agent/AgentHistory.d.ts.map +1 -0
  14. package/bin/cli/agent/AgentHistory.js +157 -0
  15. package/bin/cli/agent/AgentHistory.js.map +1 -0
  16. package/bin/cli/agent/AgentHistoryTypes.d.ts +36 -0
  17. package/bin/cli/agent/AgentHistoryTypes.d.ts.map +1 -0
  18. package/bin/cli/agent/AgentHistoryTypes.js +9 -0
  19. package/bin/cli/agent/AgentHistoryTypes.js.map +1 -0
  20. package/bin/cli/agent/AgentManager.d.ts.map +1 -0
  21. package/bin/cli/agent/AgentManager.js +602 -0
  22. package/bin/cli/agent/AgentManager.js.map +1 -0
  23. package/bin/cli/agent/AgentManagerTypes.d.ts +13 -0
  24. package/bin/cli/agent/AgentManagerTypes.d.ts.map +1 -0
  25. package/bin/cli/agent/AgentManagerTypes.js +5 -0
  26. package/bin/cli/agent/AgentManagerTypes.js.map +1 -0
  27. package/bin/cli/agent/AgentReset.d.ts +13 -0
  28. package/bin/cli/agent/AgentReset.d.ts.map +1 -0
  29. package/bin/cli/agent/AgentReset.js +167 -0
  30. package/bin/cli/agent/AgentReset.js.map +1 -0
  31. package/bin/cli/agent/AgentSelection.d.ts +43 -0
  32. package/bin/cli/agent/AgentSelection.d.ts.map +1 -0
  33. package/bin/cli/agent/AgentSelection.js +243 -0
  34. package/bin/cli/agent/AgentSelection.js.map +1 -0
  35. package/bin/cli/agent/AgentSelectionTypes.d.ts +30 -0
  36. package/bin/cli/agent/AgentSelectionTypes.d.ts.map +1 -0
  37. package/bin/cli/agent/AgentSelectionTypes.js +5 -0
  38. package/bin/cli/agent/AgentSelectionTypes.js.map +1 -0
  39. package/bin/cli/agent/Init.d.ts.map +1 -0
  40. package/bin/cli/agent/Init.js +252 -0
  41. package/bin/cli/agent/Init.js.map +1 -0
  42. package/bin/cli/agent/Restart.d.ts +19 -0
  43. package/bin/cli/agent/Restart.d.ts.map +1 -0
  44. package/bin/cli/agent/Restart.js +60 -0
  45. package/bin/cli/agent/Restart.js.map +1 -0
  46. package/bin/cli/agent/Run.d.ts +24 -0
  47. package/bin/cli/agent/Run.d.ts.map +1 -0
  48. package/bin/cli/agent/Run.js +119 -0
  49. package/bin/cli/agent/Run.js.map +1 -0
  50. package/bin/cli/agent/Start.d.ts +23 -0
  51. package/bin/cli/agent/Start.d.ts.map +1 -0
  52. package/bin/cli/agent/Start.js +63 -0
  53. package/bin/cli/agent/Start.js.map +1 -0
  54. package/bin/cli/agent/Status.d.ts.map +1 -0
  55. package/bin/cli/agent/Status.js +103 -0
  56. package/bin/cli/agent/Status.js.map +1 -0
  57. package/bin/cli/agent/Stop.d.ts.map +1 -0
  58. package/bin/cli/agent/Stop.js +44 -0
  59. package/bin/cli/agent/Stop.js.map +1 -0
  60. package/bin/cli/control-plane/ControlPlaneAuthBootstrap.d.ts +25 -0
  61. package/bin/cli/control-plane/ControlPlaneAuthBootstrap.d.ts.map +1 -0
  62. package/bin/cli/control-plane/ControlPlaneAuthBootstrap.js +56 -0
  63. package/bin/cli/control-plane/ControlPlaneAuthBootstrap.js.map +1 -0
  64. package/bin/cli/control-plane/ControlPlaneCommand.d.ts +29 -0
  65. package/bin/cli/control-plane/ControlPlaneCommand.d.ts.map +1 -0
  66. package/bin/cli/control-plane/ControlPlaneCommand.js +152 -0
  67. package/bin/cli/control-plane/ControlPlaneCommand.js.map +1 -0
  68. package/bin/cli/control-plane/ControlPlaneInit.d.ts +17 -0
  69. package/bin/cli/control-plane/ControlPlaneInit.d.ts.map +1 -0
  70. package/bin/cli/control-plane/ControlPlaneInit.js +76 -0
  71. package/bin/cli/control-plane/ControlPlaneInit.js.map +1 -0
  72. package/bin/cli/control-plane/ControlPlaneProcess.d.ts +61 -0
  73. package/bin/cli/control-plane/ControlPlaneProcess.d.ts.map +1 -0
  74. package/bin/cli/control-plane/ControlPlaneProcess.js +395 -0
  75. package/bin/cli/control-plane/ControlPlaneProcess.js.map +1 -0
  76. package/bin/cli/control-plane/ControlPlaneRuntime.d.ts +98 -0
  77. package/bin/cli/control-plane/ControlPlaneRuntime.d.ts.map +1 -0
  78. package/bin/cli/control-plane/ControlPlaneRuntime.js +515 -0
  79. package/bin/cli/control-plane/ControlPlaneRuntime.js.map +1 -0
  80. package/bin/cli/control-plane/ControlPlaneStatus.d.ts +27 -0
  81. package/bin/cli/control-plane/ControlPlaneStatus.d.ts.map +1 -0
  82. package/bin/cli/control-plane/ControlPlaneStatus.js +135 -0
  83. package/bin/cli/control-plane/ControlPlaneStatus.js.map +1 -0
  84. package/bin/cli/model/Model.d.ts.map +1 -0
  85. package/bin/cli/model/Model.js.map +1 -0
  86. package/bin/cli/model/ModelCommandShared.d.ts +28 -0
  87. package/bin/cli/model/ModelCommandShared.d.ts.map +1 -0
  88. package/bin/cli/model/ModelCommandShared.js +109 -0
  89. package/bin/cli/model/ModelCommandShared.js.map +1 -0
  90. package/bin/cli/model/ModelCreateCommand.d.ts.map +1 -0
  91. package/bin/cli/model/ModelCreateCommand.js +367 -0
  92. package/bin/cli/model/ModelCreateCommand.js.map +1 -0
  93. package/bin/cli/model/ModelManageCommand.d.ts.map +1 -0
  94. package/bin/cli/model/ModelManageCommand.js.map +1 -0
  95. package/bin/cli/model/ModelManager.d.ts.map +1 -0
  96. package/bin/cli/model/ModelManager.js +588 -0
  97. package/bin/cli/model/ModelManager.js.map +1 -0
  98. package/bin/cli/model/ModelManagerTypes.d.ts +21 -0
  99. package/bin/cli/model/ModelManagerTypes.d.ts.map +1 -0
  100. package/bin/cli/model/ModelManagerTypes.js +5 -0
  101. package/bin/cli/model/ModelManagerTypes.js.map +1 -0
  102. package/bin/cli/model/ModelReadCommand.d.ts +13 -0
  103. package/bin/cli/model/ModelReadCommand.d.ts.map +1 -0
  104. package/bin/cli/model/ModelReadCommand.js +198 -0
  105. package/bin/cli/model/ModelReadCommand.js.map +1 -0
  106. package/bin/cli/model/ModelSupport.d.ts +40 -0
  107. package/bin/cli/model/ModelSupport.d.ts.map +1 -0
  108. package/bin/cli/model/ModelSupport.js +201 -0
  109. package/bin/cli/model/ModelSupport.js.map +1 -0
  110. package/bin/cli/model/preset/ModelPresetManager.d.ts +71 -0
  111. package/bin/cli/model/preset/ModelPresetManager.d.ts.map +1 -0
  112. package/bin/cli/model/preset/ModelPresetManager.js +187 -0
  113. package/bin/cli/model/preset/ModelPresetManager.js.map +1 -0
  114. package/bin/cli/service/ServiceActionCommands.d.ts.map +1 -0
  115. package/bin/cli/service/ServiceActionCommands.js +343 -0
  116. package/bin/cli/service/ServiceActionCommands.js.map +1 -0
  117. package/bin/cli/service/ServiceCommandRemote.d.ts +30 -0
  118. package/bin/cli/service/ServiceCommandRemote.d.ts.map +1 -0
  119. package/bin/cli/service/ServiceCommandRemote.js +200 -0
  120. package/bin/cli/service/ServiceCommandRemote.js.map +1 -0
  121. package/bin/cli/service/ServiceCommandSupport.d.ts +82 -0
  122. package/bin/cli/service/ServiceCommandSupport.d.ts.map +1 -0
  123. package/bin/cli/service/ServiceCommandSupport.js +224 -0
  124. package/bin/cli/service/ServiceCommandSupport.js.map +1 -0
  125. package/bin/cli/service/ServiceScheduleCommand.d.ts +36 -0
  126. package/bin/cli/service/ServiceScheduleCommand.d.ts.map +1 -0
  127. package/bin/cli/service/ServiceScheduleCommand.js +271 -0
  128. package/bin/cli/service/ServiceScheduleCommand.js.map +1 -0
  129. package/bin/cli/service/Services.d.ts.map +1 -0
  130. package/bin/cli/service/Services.js +154 -0
  131. package/bin/cli/service/Services.js.map +1 -0
  132. package/bin/cli/shared/Alias.d.ts.map +1 -0
  133. package/bin/cli/shared/Alias.js.map +1 -0
  134. package/bin/cli/shared/Chat.d.ts.map +1 -0
  135. package/bin/cli/shared/Chat.js.map +1 -0
  136. package/bin/cli/shared/ChatAuth.d.ts.map +1 -0
  137. package/bin/cli/shared/ChatAuth.js +151 -0
  138. package/bin/cli/shared/ChatAuth.js.map +1 -0
  139. package/bin/cli/shared/ChatManager.d.ts.map +1 -0
  140. package/bin/cli/shared/ChatManager.js +383 -0
  141. package/bin/cli/shared/ChatManager.js.map +1 -0
  142. package/bin/cli/shared/ChatManagerTypes.d.ts +6 -0
  143. package/bin/cli/shared/ChatManagerTypes.d.ts.map +1 -0
  144. package/bin/cli/shared/ChatManagerTypes.js +5 -0
  145. package/bin/cli/shared/ChatManagerTypes.js.map +1 -0
  146. package/bin/cli/shared/CliError.d.ts.map +1 -0
  147. package/bin/cli/shared/CliError.js.map +1 -0
  148. package/bin/cli/shared/CliReporter.d.ts +50 -0
  149. package/bin/cli/shared/CliReporter.d.ts.map +1 -0
  150. package/bin/cli/shared/CliReporter.js.map +1 -0
  151. package/bin/cli/shared/CliReporterTypes.d.ts +157 -0
  152. package/bin/cli/shared/CliReporterTypes.d.ts.map +1 -0
  153. package/bin/cli/shared/CliReporterTypes.js +10 -0
  154. package/bin/cli/shared/CliReporterTypes.js.map +1 -0
  155. package/bin/cli/shared/Config.d.ts.map +1 -0
  156. package/bin/cli/shared/Config.js +239 -0
  157. package/bin/cli/shared/Config.js.map +1 -0
  158. package/bin/cli/shared/Env.d.ts +14 -0
  159. package/bin/cli/shared/Env.d.ts.map +1 -0
  160. package/bin/cli/shared/Env.js +419 -0
  161. package/bin/cli/shared/Env.js.map +1 -0
  162. package/bin/cli/shared/IndexAgentCommand.d.ts.map +1 -0
  163. package/bin/cli/shared/IndexAgentCommand.js +218 -0
  164. package/bin/cli/shared/IndexAgentCommand.js.map +1 -0
  165. package/bin/cli/shared/IndexSupport.d.ts.map +1 -0
  166. package/bin/cli/shared/IndexSupport.js +123 -0
  167. package/bin/cli/shared/IndexSupport.js.map +1 -0
  168. package/bin/cli/shared/Plugins.d.ts.map +1 -0
  169. package/bin/cli/shared/Plugins.js +472 -0
  170. package/bin/cli/shared/Plugins.js.map +1 -0
  171. package/bin/cli/shared/PortHints.d.ts +35 -0
  172. package/bin/cli/shared/PortHints.d.ts.map +1 -0
  173. package/bin/cli/shared/PortHints.js +58 -0
  174. package/bin/cli/shared/PortHints.js.map +1 -0
  175. package/bin/cli/shared/PublicAccess.d.ts +24 -0
  176. package/bin/cli/shared/PublicAccess.d.ts.map +1 -0
  177. package/bin/cli/shared/PublicAccess.js +100 -0
  178. package/bin/cli/shared/PublicAccess.js.map +1 -0
  179. package/bin/cli/shared/PublicHostEnv.d.ts +14 -0
  180. package/bin/cli/shared/PublicHostEnv.d.ts.map +1 -0
  181. package/bin/cli/shared/PublicHostEnv.js +104 -0
  182. package/bin/cli/shared/PublicHostEnv.js.map +1 -0
  183. package/bin/cli/shared/PublicHostEnvTypes.d.ts +23 -0
  184. package/bin/cli/shared/PublicHostEnvTypes.d.ts.map +1 -0
  185. package/bin/cli/shared/PublicHostEnvTypes.js +5 -0
  186. package/bin/cli/shared/PublicHostEnvTypes.js.map +1 -0
  187. package/bin/cli/shared/Reset.d.ts.map +1 -0
  188. package/bin/cli/shared/Reset.js.map +1 -0
  189. package/bin/cli/shared/Token.d.ts.map +1 -0
  190. package/bin/cli/shared/Token.js +638 -0
  191. package/bin/cli/shared/Token.js.map +1 -0
  192. package/bin/cli/shared/Update.d.ts.map +1 -0
  193. package/bin/cli/shared/Update.js +150 -0
  194. package/bin/cli/shared/Update.js.map +1 -0
  195. package/bin/config/DowncitySchema.d.ts +3 -0
  196. package/bin/config/DowncitySchema.d.ts.map +1 -0
  197. package/bin/config/DowncitySchema.js +367 -0
  198. package/bin/config/DowncitySchema.js.map +1 -0
  199. package/bin/control/AgentStatusApiRoutes.d.ts +28 -0
  200. package/bin/control/AgentStatusApiRoutes.d.ts.map +1 -0
  201. package/bin/control/AgentStatusApiRoutes.js +165 -0
  202. package/bin/control/AgentStatusApiRoutes.js.map +1 -0
  203. package/bin/control/ChannelAccountApiRoutes.d.ts +15 -0
  204. package/bin/control/ChannelAccountApiRoutes.d.ts.map +1 -0
  205. package/bin/control/ChannelAccountApiRoutes.js +93 -0
  206. package/bin/control/ChannelAccountApiRoutes.js.map +1 -0
  207. package/bin/control/ControlGateway.d.ts +102 -0
  208. package/bin/control/ControlGateway.d.ts.map +1 -0
  209. package/bin/control/ControlGateway.js +283 -0
  210. package/bin/control/ControlGateway.js.map +1 -0
  211. package/bin/control/EnvApiRoutes.d.ts +18 -0
  212. package/bin/control/EnvApiRoutes.d.ts.map +1 -0
  213. package/bin/control/EnvApiRoutes.js +228 -0
  214. package/bin/control/EnvApiRoutes.js.map +1 -0
  215. package/bin/control/ModelApiRoutes.d.ts +35 -0
  216. package/bin/control/ModelApiRoutes.d.ts.map +1 -0
  217. package/bin/control/ModelApiRoutes.js +237 -0
  218. package/bin/control/ModelApiRoutes.js.map +1 -0
  219. package/bin/control/ModelPoolService.d.ts +126 -0
  220. package/bin/control/ModelPoolService.d.ts.map +1 -0
  221. package/bin/control/ModelPoolService.js +327 -0
  222. package/bin/control/ModelPoolService.js.map +1 -0
  223. package/bin/control/PlatformApiRoutes.d.ts +133 -0
  224. package/bin/control/PlatformApiRoutes.d.ts.map +1 -0
  225. package/bin/control/PlatformApiRoutes.js +292 -0
  226. package/bin/control/PlatformApiRoutes.js.map +1 -0
  227. package/bin/control/PluginApiRoutes.d.ts +28 -0
  228. package/bin/control/PluginApiRoutes.d.ts.map +1 -0
  229. package/bin/control/PluginApiRoutes.js +282 -0
  230. package/bin/control/PluginApiRoutes.js.map +1 -0
  231. package/bin/control/gateway/AgentActions.d.ts +107 -0
  232. package/bin/control/gateway/AgentActions.d.ts.map +1 -0
  233. package/bin/control/gateway/AgentActions.js +314 -0
  234. package/bin/control/gateway/AgentActions.js.map +1 -0
  235. package/bin/control/gateway/AgentCatalog.d.ts +83 -0
  236. package/bin/control/gateway/AgentCatalog.d.ts.map +1 -0
  237. package/bin/control/gateway/AgentCatalog.js +484 -0
  238. package/bin/control/gateway/AgentCatalog.js.map +1 -0
  239. package/bin/control/gateway/FrontendAssets.d.ts +21 -0
  240. package/bin/control/gateway/FrontendAssets.d.ts.map +1 -0
  241. package/bin/control/gateway/FrontendAssets.js +77 -0
  242. package/bin/control/gateway/FrontendAssets.js.map +1 -0
  243. package/bin/control/gateway/GatewaySupport.d.ts +34 -0
  244. package/bin/control/gateway/GatewaySupport.d.ts.map +1 -0
  245. package/bin/control/gateway/GatewaySupport.js +32 -0
  246. package/bin/control/gateway/GatewaySupport.js.map +1 -0
  247. package/bin/control/gateway/Proxy.d.ts +16 -0
  248. package/bin/control/gateway/Proxy.d.ts.map +1 -0
  249. package/bin/control/gateway/Proxy.js +47 -0
  250. package/bin/control/gateway/Proxy.js.map +1 -0
  251. package/bin/control/instant/InstantApiRoutes.d.ts +19 -0
  252. package/bin/control/instant/InstantApiRoutes.d.ts.map +1 -0
  253. package/bin/control/instant/InstantApiRoutes.js +58 -0
  254. package/bin/control/instant/InstantApiRoutes.js.map +1 -0
  255. package/bin/control/instant/InstantSessionService.d.ts +36 -0
  256. package/bin/control/instant/InstantSessionService.d.ts.map +1 -0
  257. package/bin/control/instant/InstantSessionService.js +183 -0
  258. package/bin/control/instant/InstantSessionService.js.map +1 -0
  259. package/bin/control/instant/InstantSystemComposer.d.ts +34 -0
  260. package/bin/control/instant/InstantSystemComposer.d.ts.map +1 -0
  261. package/bin/control/instant/InstantSystemComposer.js +38 -0
  262. package/bin/control/instant/InstantSystemComposer.js.map +1 -0
  263. package/bin/http/auth/AuthMiddleware.d.ts +1 -1
  264. package/bin/http/auth/AuthMiddleware.d.ts.map +1 -1
  265. package/bin/http/auth/AuthService.d.ts +2 -2
  266. package/bin/http/auth/AuthService.d.ts.map +1 -1
  267. package/bin/http/auth/AuthService.js +1 -1
  268. package/bin/http/auth/AuthService.js.map +1 -1
  269. package/bin/http/auth/AuthStore.d.ts +4 -4
  270. package/bin/http/auth/AuthStore.d.ts.map +1 -1
  271. package/bin/http/auth/AuthStore.js +7 -7
  272. package/bin/http/auth/AuthStore.js.map +1 -1
  273. package/bin/http/auth/RoutePolicy.d.ts +3 -3
  274. package/bin/http/auth/RoutePolicy.d.ts.map +1 -1
  275. package/bin/http/auth/RoutePolicy.js +6 -6
  276. package/bin/http/auth/RoutePolicy.js.map +1 -1
  277. package/bin/process/daemon/Api.d.ts +60 -0
  278. package/bin/process/daemon/Api.d.ts.map +1 -0
  279. package/bin/process/daemon/Api.js.map +1 -0
  280. package/bin/process/daemon/CliArgs.d.ts +17 -0
  281. package/bin/process/daemon/CliArgs.d.ts.map +1 -0
  282. package/bin/process/daemon/CliArgs.js +30 -0
  283. package/bin/process/daemon/CliArgs.js.map +1 -0
  284. package/bin/process/daemon/Client.d.ts.map +1 -0
  285. package/bin/process/daemon/Client.js +158 -0
  286. package/bin/process/daemon/Client.js.map +1 -0
  287. package/bin/process/daemon/Manager.d.ts +92 -0
  288. package/bin/process/daemon/Manager.d.ts.map +1 -0
  289. package/bin/process/daemon/Manager.js +287 -0
  290. package/bin/process/daemon/Manager.js.map +1 -0
  291. package/bin/process/daemon/PortAllocator.d.ts.map +1 -0
  292. package/bin/process/daemon/PortAllocator.js.map +1 -0
  293. package/bin/process/registry/AgentHostRuntime.d.ts +10 -0
  294. package/bin/process/registry/AgentHostRuntime.d.ts.map +1 -0
  295. package/bin/process/registry/AgentHostRuntime.js +47 -0
  296. package/bin/process/registry/AgentHostRuntime.js.map +1 -0
  297. package/bin/process/registry/CityPaths.d.ts +53 -0
  298. package/bin/process/registry/CityPaths.d.ts.map +1 -0
  299. package/bin/process/registry/CityPaths.js +78 -0
  300. package/bin/process/registry/CityPaths.js.map +1 -0
  301. package/bin/process/registry/CityRegistry.d.ts +51 -0
  302. package/bin/process/registry/CityRegistry.d.ts.map +1 -0
  303. package/bin/process/registry/CityRegistry.js +217 -0
  304. package/bin/process/registry/CityRegistry.js.map +1 -0
  305. package/bin/process/registry/CityRuntime.d.ts +21 -0
  306. package/bin/process/registry/CityRuntime.d.ts.map +1 -0
  307. package/bin/process/registry/CityRuntime.js +45 -0
  308. package/bin/process/registry/CityRuntime.js.map +1 -0
  309. package/bin/process/registry/PluginRuntime.d.ts +24 -0
  310. package/bin/process/registry/PluginRuntime.d.ts.map +1 -0
  311. package/bin/process/registry/PluginRuntime.js.map +1 -0
  312. package/bin/process/registry/ProcessSweep.d.ts +76 -0
  313. package/bin/process/registry/ProcessSweep.d.ts.map +1 -0
  314. package/bin/process/registry/ProcessSweep.js +202 -0
  315. package/bin/process/registry/ProcessSweep.js.map +1 -0
  316. package/bin/process/rpc/Client.d.ts +13 -0
  317. package/bin/process/rpc/Client.d.ts.map +1 -0
  318. package/bin/process/rpc/Client.js.map +1 -0
  319. package/bin/process/rpc/Paths.d.ts.map +1 -0
  320. package/bin/process/rpc/Paths.js +36 -0
  321. package/bin/process/rpc/Paths.js.map +1 -0
  322. package/bin/utils/cli/CliOutput.d.ts +1 -1
  323. package/bin/utils/cli/CliOutput.d.ts.map +1 -1
  324. package/bin/utils/cli/CliOutput.js +1 -1
  325. package/bin/utils/cli/CliOutput.js.map +1 -1
  326. package/bin/utils/storage.d.ts +1 -1
  327. package/bin/utils/storage.d.ts.map +1 -1
  328. package/package.json +2 -2
  329. package/scripts/lint-import-boundaries.mjs +17 -85
  330. package/src/cli/Index.ts +12 -12
  331. package/src/cli/agent/AgentChat.ts +415 -0
  332. package/src/cli/agent/AgentChatTypes.ts +92 -0
  333. package/src/cli/agent/AgentHistory.ts +187 -0
  334. package/src/cli/agent/AgentHistoryTypes.ts +39 -0
  335. package/src/cli/agent/AgentManager.ts +667 -0
  336. package/src/cli/agent/AgentManagerTypes.ts +29 -0
  337. package/src/cli/agent/AgentReset.ts +181 -0
  338. package/src/cli/agent/AgentSelection.ts +297 -0
  339. package/src/cli/agent/AgentSelectionTypes.ts +36 -0
  340. package/src/cli/agent/Init.ts +291 -0
  341. package/src/cli/agent/Restart.ts +68 -0
  342. package/src/cli/agent/Run.ts +148 -0
  343. package/src/cli/agent/Start.ts +72 -0
  344. package/src/cli/agent/Status.ts +116 -0
  345. package/src/cli/agent/Stop.ts +45 -0
  346. package/src/cli/control-plane/ControlPlaneAuthBootstrap.ts +72 -0
  347. package/src/cli/control-plane/ControlPlaneCommand.ts +216 -0
  348. package/src/cli/control-plane/ControlPlaneInit.ts +83 -0
  349. package/src/cli/control-plane/ControlPlaneProcess.ts +497 -0
  350. package/src/cli/control-plane/ControlPlaneRuntime.ts +611 -0
  351. package/src/cli/control-plane/ControlPlaneStatus.ts +152 -0
  352. package/src/cli/model/ModelCommandShared.ts +129 -0
  353. package/src/cli/model/ModelCreateCommand.ts +424 -0
  354. package/src/cli/model/ModelManageCommand.ts +516 -0
  355. package/src/cli/model/ModelManager.ts +631 -0
  356. package/src/cli/model/ModelManagerTypes.ts +37 -0
  357. package/src/cli/model/ModelReadCommand.ts +207 -0
  358. package/src/cli/model/ModelSupport.ts +223 -0
  359. package/src/cli/model/preset/ModelPresetManager.ts +242 -0
  360. package/src/cli/service/ServiceActionCommands.ts +416 -0
  361. package/src/cli/service/ServiceCommandRemote.ts +230 -0
  362. package/src/cli/service/ServiceCommandSupport.ts +275 -0
  363. package/src/cli/service/ServiceScheduleCommand.ts +305 -0
  364. package/src/cli/service/Services.ts +189 -0
  365. package/src/cli/shared/ChatAuth.ts +203 -0
  366. package/src/cli/shared/ChatManager.ts +441 -0
  367. package/src/cli/shared/ChatManagerTypes.ts +19 -0
  368. package/src/cli/shared/CliReporter.ts +362 -0
  369. package/src/cli/shared/CliReporterTypes.ts +167 -0
  370. package/src/cli/shared/Config.ts +301 -0
  371. package/src/cli/shared/Env.ts +556 -0
  372. package/src/cli/shared/IndexAgentCommand.ts +302 -0
  373. package/src/cli/shared/IndexSupport.ts +138 -0
  374. package/src/cli/shared/Plugins.ts +567 -0
  375. package/src/cli/shared/PortHints.ts +80 -0
  376. package/src/cli/shared/PublicAccess.ts +106 -0
  377. package/src/cli/shared/PublicHostEnv.ts +116 -0
  378. package/src/cli/shared/PublicHostEnvTypes.ts +27 -0
  379. package/src/cli/shared/Token.ts +702 -0
  380. package/src/cli/shared/Update.ts +183 -0
  381. package/src/config/DowncitySchema.ts +377 -0
  382. package/src/control/AgentStatusApiRoutes.ts +225 -0
  383. package/src/control/ChannelAccountApiRoutes.ts +119 -0
  384. package/src/control/ControlGateway.ts +463 -0
  385. package/src/control/EnvApiRoutes.ts +257 -0
  386. package/src/control/ModelApiRoutes.ts +336 -0
  387. package/src/control/ModelPoolService.ts +395 -0
  388. package/src/control/PlatformApiRoutes.ts +495 -0
  389. package/src/control/PluginApiRoutes.ts +439 -0
  390. package/src/control/gateway/AgentActions.ts +413 -0
  391. package/src/control/gateway/AgentCatalog.ts +611 -0
  392. package/src/control/gateway/FrontendAssets.ts +79 -0
  393. package/src/control/gateway/GatewaySupport.ts +59 -0
  394. package/src/control/gateway/Proxy.ts +62 -0
  395. package/src/control/instant/InstantApiRoutes.ts +74 -0
  396. package/src/control/instant/InstantSessionService.ts +278 -0
  397. package/src/control/instant/InstantSystemComposer.ts +60 -0
  398. package/src/http/auth/AuthMiddleware.ts +1 -1
  399. package/src/http/auth/AuthService.ts +3 -3
  400. package/src/http/auth/AuthStore.ts +11 -11
  401. package/src/http/auth/RoutePolicy.ts +8 -8
  402. package/src/process/daemon/Api.ts +64 -0
  403. package/src/process/daemon/CliArgs.ts +39 -0
  404. package/src/process/daemon/Client.ts +182 -0
  405. package/src/process/daemon/Manager.ts +344 -0
  406. package/src/process/registry/AgentHostRuntime.ts +65 -0
  407. package/src/process/registry/CityPaths.ts +87 -0
  408. package/src/process/registry/CityRegistry.ts +256 -0
  409. package/src/process/registry/CityRuntime.ts +45 -0
  410. package/src/process/registry/PluginRuntime.ts +42 -0
  411. package/src/process/registry/ProcessSweep.ts +256 -0
  412. package/src/process/rpc/Client.ts +113 -0
  413. package/src/process/rpc/Paths.ts +43 -0
  414. package/src/utils/cli/CliOutput.ts +2 -2
  415. package/src/utils/storage.ts +1 -1
  416. package/tsconfig.json +3 -1
  417. package/bin/cli/AgentChat.d.ts +0 -22
  418. package/bin/cli/AgentChat.d.ts.map +0 -1
  419. package/bin/cli/AgentChat.js +0 -357
  420. package/bin/cli/AgentChat.js.map +0 -1
  421. package/bin/cli/AgentHistory.d.ts +0 -14
  422. package/bin/cli/AgentHistory.d.ts.map +0 -1
  423. package/bin/cli/AgentHistory.js +0 -157
  424. package/bin/cli/AgentHistory.js.map +0 -1
  425. package/bin/cli/AgentManager.d.ts.map +0 -1
  426. package/bin/cli/AgentManager.js +0 -602
  427. package/bin/cli/AgentManager.js.map +0 -1
  428. package/bin/cli/AgentReset.d.ts +0 -13
  429. package/bin/cli/AgentReset.d.ts.map +0 -1
  430. package/bin/cli/AgentReset.js +0 -167
  431. package/bin/cli/AgentReset.js.map +0 -1
  432. package/bin/cli/AgentSelection.d.ts +0 -43
  433. package/bin/cli/AgentSelection.d.ts.map +0 -1
  434. package/bin/cli/AgentSelection.js +0 -243
  435. package/bin/cli/AgentSelection.js.map +0 -1
  436. package/bin/cli/Alias.d.ts.map +0 -1
  437. package/bin/cli/Alias.js.map +0 -1
  438. package/bin/cli/Chat.d.ts.map +0 -1
  439. package/bin/cli/Chat.js.map +0 -1
  440. package/bin/cli/ChatAuth.d.ts.map +0 -1
  441. package/bin/cli/ChatAuth.js +0 -152
  442. package/bin/cli/ChatAuth.js.map +0 -1
  443. package/bin/cli/ChatManager.d.ts.map +0 -1
  444. package/bin/cli/ChatManager.js +0 -383
  445. package/bin/cli/ChatManager.js.map +0 -1
  446. package/bin/cli/CliReporter.d.ts +0 -50
  447. package/bin/cli/CliReporter.d.ts.map +0 -1
  448. package/bin/cli/CliReporter.js.map +0 -1
  449. package/bin/cli/Config.d.ts.map +0 -1
  450. package/bin/cli/Config.js +0 -239
  451. package/bin/cli/Config.js.map +0 -1
  452. package/bin/cli/Console.d.ts +0 -97
  453. package/bin/cli/Console.d.ts.map +0 -1
  454. package/bin/cli/Console.js +0 -514
  455. package/bin/cli/Console.js.map +0 -1
  456. package/bin/cli/ConsoleAuthBootstrap.d.ts +0 -25
  457. package/bin/cli/ConsoleAuthBootstrap.d.ts.map +0 -1
  458. package/bin/cli/ConsoleAuthBootstrap.js +0 -56
  459. package/bin/cli/ConsoleAuthBootstrap.js.map +0 -1
  460. package/bin/cli/ConsoleInit.d.ts +0 -17
  461. package/bin/cli/ConsoleInit.d.ts.map +0 -1
  462. package/bin/cli/ConsoleInit.js +0 -76
  463. package/bin/cli/ConsoleInit.js.map +0 -1
  464. package/bin/cli/Env.d.ts +0 -14
  465. package/bin/cli/Env.d.ts.map +0 -1
  466. package/bin/cli/Env.js +0 -419
  467. package/bin/cli/Env.js.map +0 -1
  468. package/bin/cli/IndexAgentCommand.d.ts.map +0 -1
  469. package/bin/cli/IndexAgentCommand.js +0 -218
  470. package/bin/cli/IndexAgentCommand.js.map +0 -1
  471. package/bin/cli/IndexConsoleCommand.d.ts +0 -24
  472. package/bin/cli/IndexConsoleCommand.d.ts.map +0 -1
  473. package/bin/cli/IndexConsoleCommand.js +0 -147
  474. package/bin/cli/IndexConsoleCommand.js.map +0 -1
  475. package/bin/cli/IndexConsoleProcess.d.ts +0 -61
  476. package/bin/cli/IndexConsoleProcess.d.ts.map +0 -1
  477. package/bin/cli/IndexConsoleProcess.js +0 -395
  478. package/bin/cli/IndexConsoleProcess.js.map +0 -1
  479. package/bin/cli/IndexConsoleStatus.d.ts +0 -27
  480. package/bin/cli/IndexConsoleStatus.d.ts.map +0 -1
  481. package/bin/cli/IndexConsoleStatus.js +0 -135
  482. package/bin/cli/IndexConsoleStatus.js.map +0 -1
  483. package/bin/cli/IndexSupport.d.ts.map +0 -1
  484. package/bin/cli/IndexSupport.js +0 -123
  485. package/bin/cli/IndexSupport.js.map +0 -1
  486. package/bin/cli/Init.d.ts.map +0 -1
  487. package/bin/cli/Init.js +0 -252
  488. package/bin/cli/Init.js.map +0 -1
  489. package/bin/cli/Model.d.ts.map +0 -1
  490. package/bin/cli/Model.js.map +0 -1
  491. package/bin/cli/ModelCommandShared.d.ts +0 -28
  492. package/bin/cli/ModelCommandShared.d.ts.map +0 -1
  493. package/bin/cli/ModelCommandShared.js +0 -109
  494. package/bin/cli/ModelCommandShared.js.map +0 -1
  495. package/bin/cli/ModelCreateCommand.d.ts.map +0 -1
  496. package/bin/cli/ModelCreateCommand.js +0 -367
  497. package/bin/cli/ModelCreateCommand.js.map +0 -1
  498. package/bin/cli/ModelManageCommand.d.ts.map +0 -1
  499. package/bin/cli/ModelManageCommand.js.map +0 -1
  500. package/bin/cli/ModelManager.d.ts.map +0 -1
  501. package/bin/cli/ModelManager.js +0 -588
  502. package/bin/cli/ModelManager.js.map +0 -1
  503. package/bin/cli/ModelReadCommand.d.ts +0 -13
  504. package/bin/cli/ModelReadCommand.d.ts.map +0 -1
  505. package/bin/cli/ModelReadCommand.js +0 -198
  506. package/bin/cli/ModelReadCommand.js.map +0 -1
  507. package/bin/cli/ModelSupport.d.ts +0 -40
  508. package/bin/cli/ModelSupport.d.ts.map +0 -1
  509. package/bin/cli/ModelSupport.js +0 -201
  510. package/bin/cli/ModelSupport.js.map +0 -1
  511. package/bin/cli/Plugins.d.ts.map +0 -1
  512. package/bin/cli/Plugins.js +0 -474
  513. package/bin/cli/Plugins.js.map +0 -1
  514. package/bin/cli/PortHints.d.ts +0 -35
  515. package/bin/cli/PortHints.d.ts.map +0 -1
  516. package/bin/cli/PortHints.js +0 -58
  517. package/bin/cli/PortHints.js.map +0 -1
  518. package/bin/cli/PublicAccess.d.ts +0 -24
  519. package/bin/cli/PublicAccess.d.ts.map +0 -1
  520. package/bin/cli/PublicAccess.js +0 -100
  521. package/bin/cli/PublicAccess.js.map +0 -1
  522. package/bin/cli/PublicHostEnv.d.ts +0 -14
  523. package/bin/cli/PublicHostEnv.d.ts.map +0 -1
  524. package/bin/cli/PublicHostEnv.js +0 -104
  525. package/bin/cli/PublicHostEnv.js.map +0 -1
  526. package/bin/cli/Reset.d.ts.map +0 -1
  527. package/bin/cli/Reset.js.map +0 -1
  528. package/bin/cli/Restart.d.ts +0 -19
  529. package/bin/cli/Restart.d.ts.map +0 -1
  530. package/bin/cli/Restart.js +0 -60
  531. package/bin/cli/Restart.js.map +0 -1
  532. package/bin/cli/Run.d.ts +0 -24
  533. package/bin/cli/Run.d.ts.map +0 -1
  534. package/bin/cli/Run.js +0 -119
  535. package/bin/cli/Run.js.map +0 -1
  536. package/bin/cli/ServiceActionCommands.d.ts.map +0 -1
  537. package/bin/cli/ServiceActionCommands.js +0 -345
  538. package/bin/cli/ServiceActionCommands.js.map +0 -1
  539. package/bin/cli/ServiceCommandRemote.d.ts +0 -30
  540. package/bin/cli/ServiceCommandRemote.d.ts.map +0 -1
  541. package/bin/cli/ServiceCommandRemote.js +0 -200
  542. package/bin/cli/ServiceCommandRemote.js.map +0 -1
  543. package/bin/cli/ServiceCommandSupport.d.ts +0 -82
  544. package/bin/cli/ServiceCommandSupport.d.ts.map +0 -1
  545. package/bin/cli/ServiceCommandSupport.js +0 -224
  546. package/bin/cli/ServiceCommandSupport.js.map +0 -1
  547. package/bin/cli/ServiceScheduleCommand.d.ts +0 -36
  548. package/bin/cli/ServiceScheduleCommand.d.ts.map +0 -1
  549. package/bin/cli/ServiceScheduleCommand.js +0 -271
  550. package/bin/cli/ServiceScheduleCommand.js.map +0 -1
  551. package/bin/cli/Services.d.ts.map +0 -1
  552. package/bin/cli/Services.js +0 -154
  553. package/bin/cli/Services.js.map +0 -1
  554. package/bin/cli/Start.d.ts +0 -23
  555. package/bin/cli/Start.d.ts.map +0 -1
  556. package/bin/cli/Start.js +0 -63
  557. package/bin/cli/Start.js.map +0 -1
  558. package/bin/cli/Status.d.ts.map +0 -1
  559. package/bin/cli/Status.js +0 -103
  560. package/bin/cli/Status.js.map +0 -1
  561. package/bin/cli/Stop.d.ts.map +0 -1
  562. package/bin/cli/Stop.js +0 -44
  563. package/bin/cli/Stop.js.map +0 -1
  564. package/bin/cli/Token.d.ts.map +0 -1
  565. package/bin/cli/Token.js +0 -638
  566. package/bin/cli/Token.js.map +0 -1
  567. package/bin/cli/Update.d.ts.map +0 -1
  568. package/bin/cli/Update.js +0 -150
  569. package/bin/cli/Update.js.map +0 -1
  570. package/bin/console/AgentStatusApiRoutes.d.ts +0 -28
  571. package/bin/console/AgentStatusApiRoutes.d.ts.map +0 -1
  572. package/bin/console/AgentStatusApiRoutes.js +0 -165
  573. package/bin/console/AgentStatusApiRoutes.js.map +0 -1
  574. package/bin/console/ChannelAccountApiRoutes.d.ts +0 -15
  575. package/bin/console/ChannelAccountApiRoutes.d.ts.map +0 -1
  576. package/bin/console/ChannelAccountApiRoutes.js +0 -93
  577. package/bin/console/ChannelAccountApiRoutes.js.map +0 -1
  578. package/bin/console/ConsoleClient.d.ts +0 -53
  579. package/bin/console/ConsoleClient.d.ts.map +0 -1
  580. package/bin/console/ConsoleClient.js +0 -258
  581. package/bin/console/ConsoleClient.js.map +0 -1
  582. package/bin/console/ConsoleGateway.d.ts +0 -102
  583. package/bin/console/ConsoleGateway.d.ts.map +0 -1
  584. package/bin/console/ConsoleGateway.js +0 -283
  585. package/bin/console/ConsoleGateway.js.map +0 -1
  586. package/bin/console/ConsoleGatewayRoutes.d.ts +0 -133
  587. package/bin/console/ConsoleGatewayRoutes.d.ts.map +0 -1
  588. package/bin/console/ConsoleGatewayRoutes.js +0 -292
  589. package/bin/console/ConsoleGatewayRoutes.js.map +0 -1
  590. package/bin/console/EnvApiRoutes.d.ts +0 -18
  591. package/bin/console/EnvApiRoutes.d.ts.map +0 -1
  592. package/bin/console/EnvApiRoutes.js +0 -228
  593. package/bin/console/EnvApiRoutes.js.map +0 -1
  594. package/bin/console/InlineInstantRoutes.d.ts +0 -19
  595. package/bin/console/InlineInstantRoutes.d.ts.map +0 -1
  596. package/bin/console/InlineInstantRoutes.js +0 -58
  597. package/bin/console/InlineInstantRoutes.js.map +0 -1
  598. package/bin/console/InlineInstantSessionService.d.ts +0 -36
  599. package/bin/console/InlineInstantSessionService.d.ts.map +0 -1
  600. package/bin/console/InlineInstantSessionService.js +0 -190
  601. package/bin/console/InlineInstantSessionService.js.map +0 -1
  602. package/bin/console/InlineInstantSystemComposer.d.ts +0 -34
  603. package/bin/console/InlineInstantSystemComposer.d.ts.map +0 -1
  604. package/bin/console/InlineInstantSystemComposer.js +0 -40
  605. package/bin/console/InlineInstantSystemComposer.js.map +0 -1
  606. package/bin/console/ModelApiRoutes.d.ts +0 -35
  607. package/bin/console/ModelApiRoutes.d.ts.map +0 -1
  608. package/bin/console/ModelApiRoutes.js +0 -237
  609. package/bin/console/ModelApiRoutes.js.map +0 -1
  610. package/bin/console/ModelPoolService.d.ts +0 -126
  611. package/bin/console/ModelPoolService.d.ts.map +0 -1
  612. package/bin/console/ModelPoolService.js +0 -327
  613. package/bin/console/ModelPoolService.js.map +0 -1
  614. package/bin/console/PluginApiRoutes.d.ts +0 -28
  615. package/bin/console/PluginApiRoutes.d.ts.map +0 -1
  616. package/bin/console/PluginApiRoutes.js +0 -299
  617. package/bin/console/PluginApiRoutes.js.map +0 -1
  618. package/bin/console/gateway/AgentActions.d.ts +0 -107
  619. package/bin/console/gateway/AgentActions.d.ts.map +0 -1
  620. package/bin/console/gateway/AgentActions.js +0 -314
  621. package/bin/console/gateway/AgentActions.js.map +0 -1
  622. package/bin/console/gateway/AgentCatalog.d.ts +0 -83
  623. package/bin/console/gateway/AgentCatalog.d.ts.map +0 -1
  624. package/bin/console/gateway/AgentCatalog.js +0 -484
  625. package/bin/console/gateway/AgentCatalog.js.map +0 -1
  626. package/bin/console/gateway/FrontendAssets.d.ts +0 -21
  627. package/bin/console/gateway/FrontendAssets.d.ts.map +0 -1
  628. package/bin/console/gateway/FrontendAssets.js +0 -77
  629. package/bin/console/gateway/FrontendAssets.js.map +0 -1
  630. package/bin/console/gateway/GatewaySupport.d.ts +0 -34
  631. package/bin/console/gateway/GatewaySupport.d.ts.map +0 -1
  632. package/bin/console/gateway/GatewaySupport.js +0 -32
  633. package/bin/console/gateway/GatewaySupport.js.map +0 -1
  634. package/bin/console/gateway/Proxy.d.ts +0 -16
  635. package/bin/console/gateway/Proxy.d.ts.map +0 -1
  636. package/bin/console/gateway/Proxy.js +0 -47
  637. package/bin/console/gateway/Proxy.js.map +0 -1
  638. package/bin/constants/DowncitySchema.d.ts +0 -3
  639. package/bin/constants/DowncitySchema.d.ts.map +0 -1
  640. package/bin/constants/DowncitySchema.js +0 -367
  641. package/bin/constants/DowncitySchema.js.map +0 -1
  642. package/bin/daemon/Api.d.ts +0 -60
  643. package/bin/daemon/Api.d.ts.map +0 -1
  644. package/bin/daemon/Api.js.map +0 -1
  645. package/bin/daemon/CliArgs.d.ts +0 -17
  646. package/bin/daemon/CliArgs.d.ts.map +0 -1
  647. package/bin/daemon/CliArgs.js +0 -30
  648. package/bin/daemon/CliArgs.js.map +0 -1
  649. package/bin/daemon/Client.d.ts.map +0 -1
  650. package/bin/daemon/Client.js +0 -158
  651. package/bin/daemon/Client.js.map +0 -1
  652. package/bin/daemon/Manager.d.ts +0 -92
  653. package/bin/daemon/Manager.d.ts.map +0 -1
  654. package/bin/daemon/Manager.js +0 -287
  655. package/bin/daemon/Manager.js.map +0 -1
  656. package/bin/daemon/PortAllocator.d.ts.map +0 -1
  657. package/bin/daemon/PortAllocator.js.map +0 -1
  658. package/bin/http/dashboard/AuthDashboardService.d.ts +0 -30
  659. package/bin/http/dashboard/AuthDashboardService.d.ts.map +0 -1
  660. package/bin/http/dashboard/AuthDashboardService.js +0 -120
  661. package/bin/http/dashboard/AuthDashboardService.js.map +0 -1
  662. package/bin/http/dashboard/CommonHelpers.d.ts +0 -24
  663. package/bin/http/dashboard/CommonHelpers.d.ts.map +0 -1
  664. package/bin/http/dashboard/CommonHelpers.js +0 -46
  665. package/bin/http/dashboard/CommonHelpers.js.map +0 -1
  666. package/bin/http/dashboard/ExecuteInput.d.ts +0 -18
  667. package/bin/http/dashboard/ExecuteInput.d.ts.map +0 -1
  668. package/bin/http/dashboard/ExecuteInput.js +0 -201
  669. package/bin/http/dashboard/ExecuteInput.js.map +0 -1
  670. package/bin/http/dashboard/MessageTimeline.d.ts +0 -22
  671. package/bin/http/dashboard/MessageTimeline.d.ts.map +0 -1
  672. package/bin/http/dashboard/MessageTimeline.js +0 -226
  673. package/bin/http/dashboard/MessageTimeline.js.map +0 -1
  674. package/bin/http/dashboard/SessionSummaryStore.d.ts +0 -19
  675. package/bin/http/dashboard/SessionSummaryStore.d.ts.map +0 -1
  676. package/bin/http/dashboard/SessionSummaryStore.js +0 -62
  677. package/bin/http/dashboard/SessionSummaryStore.js.map +0 -1
  678. package/bin/http/dashboard/TaskStore.d.ts +0 -33
  679. package/bin/http/dashboard/TaskStore.d.ts.map +0 -1
  680. package/bin/http/dashboard/TaskStore.js +0 -157
  681. package/bin/http/dashboard/TaskStore.js.map +0 -1
  682. package/bin/model/ModelCommand.d.ts +0 -60
  683. package/bin/model/ModelCommand.d.ts.map +0 -1
  684. package/bin/model/ModelCommand.js +0 -46
  685. package/bin/model/ModelCommand.js.map +0 -1
  686. package/bin/model/ModelManager.d.ts +0 -71
  687. package/bin/model/ModelManager.d.ts.map +0 -1
  688. package/bin/model/ModelManager.js +0 -187
  689. package/bin/model/ModelManager.js.map +0 -1
  690. package/bin/registry/AgentHostRuntime.d.ts +0 -10
  691. package/bin/registry/AgentHostRuntime.d.ts.map +0 -1
  692. package/bin/registry/AgentHostRuntime.js +0 -47
  693. package/bin/registry/AgentHostRuntime.js.map +0 -1
  694. package/bin/registry/CityPaths.d.ts +0 -61
  695. package/bin/registry/CityPaths.d.ts.map +0 -1
  696. package/bin/registry/CityPaths.js +0 -90
  697. package/bin/registry/CityPaths.js.map +0 -1
  698. package/bin/registry/CityRegistry.d.ts +0 -51
  699. package/bin/registry/CityRegistry.d.ts.map +0 -1
  700. package/bin/registry/CityRegistry.js +0 -217
  701. package/bin/registry/CityRegistry.js.map +0 -1
  702. package/bin/registry/CityRuntime.d.ts +0 -21
  703. package/bin/registry/CityRuntime.d.ts.map +0 -1
  704. package/bin/registry/CityRuntime.js +0 -45
  705. package/bin/registry/CityRuntime.js.map +0 -1
  706. package/bin/registry/PluginRuntime.d.ts +0 -24
  707. package/bin/registry/PluginRuntime.d.ts.map +0 -1
  708. package/bin/registry/PluginRuntime.js.map +0 -1
  709. package/bin/registry/ProcessSweep.d.ts +0 -76
  710. package/bin/registry/ProcessSweep.d.ts.map +0 -1
  711. package/bin/registry/ProcessSweep.js +0 -202
  712. package/bin/registry/ProcessSweep.js.map +0 -1
  713. package/bin/rpc/Client.d.ts +0 -13
  714. package/bin/rpc/Client.d.ts.map +0 -1
  715. package/bin/rpc/Client.js.map +0 -1
  716. package/bin/rpc/Paths.d.ts.map +0 -1
  717. package/bin/rpc/Paths.js +0 -36
  718. package/bin/rpc/Paths.js.map +0 -1
  719. package/bin/sandbox/MacOsSeatbeltSandbox.d.ts +0 -16
  720. package/bin/sandbox/MacOsSeatbeltSandbox.d.ts.map +0 -1
  721. package/bin/sandbox/MacOsSeatbeltSandbox.js +0 -152
  722. package/bin/sandbox/MacOsSeatbeltSandbox.js.map +0 -1
  723. package/bin/sandbox/SandboxConfigResolver.d.ts +0 -31
  724. package/bin/sandbox/SandboxConfigResolver.d.ts.map +0 -1
  725. package/bin/sandbox/SandboxConfigResolver.js +0 -113
  726. package/bin/sandbox/SandboxConfigResolver.js.map +0 -1
  727. package/bin/sandbox/SandboxRunner.d.ts +0 -46
  728. package/bin/sandbox/SandboxRunner.d.ts.map +0 -1
  729. package/bin/sandbox/SandboxRunner.js +0 -70
  730. package/bin/sandbox/SandboxRunner.js.map +0 -1
  731. package/bin/store/StoreChannelAccountRepository.d.ts +0 -34
  732. package/bin/store/StoreChannelAccountRepository.d.ts.map +0 -1
  733. package/bin/store/StoreChannelAccountRepository.js +0 -198
  734. package/bin/store/StoreChannelAccountRepository.js.map +0 -1
  735. package/bin/store/StoreEnvRepository.d.ts +0 -98
  736. package/bin/store/StoreEnvRepository.d.ts.map +0 -1
  737. package/bin/store/StoreEnvRepository.js +0 -334
  738. package/bin/store/StoreEnvRepository.js.map +0 -1
  739. package/bin/store/StoreModelRepository.d.ts +0 -61
  740. package/bin/store/StoreModelRepository.d.ts.map +0 -1
  741. package/bin/store/StoreModelRepository.js +0 -278
  742. package/bin/store/StoreModelRepository.js.map +0 -1
  743. package/bin/store/StoreSchema.d.ts +0 -13
  744. package/bin/store/StoreSchema.d.ts.map +0 -1
  745. package/bin/store/StoreSchema.js +0 -319
  746. package/bin/store/StoreSchema.js.map +0 -1
  747. package/bin/store/StoreSecureSettings.d.ts +0 -33
  748. package/bin/store/StoreSecureSettings.d.ts.map +0 -1
  749. package/bin/store/StoreSecureSettings.js +0 -91
  750. package/bin/store/StoreSecureSettings.js.map +0 -1
  751. package/bin/store/StoreShared.d.ts +0 -44
  752. package/bin/store/StoreShared.d.ts.map +0 -1
  753. package/bin/store/StoreShared.js +0 -40
  754. package/bin/store/StoreShared.js.map +0 -1
  755. package/bin/store/crypto.d.ts +0 -24
  756. package/bin/store/crypto.d.ts.map +0 -1
  757. package/bin/store/crypto.js +0 -101
  758. package/bin/store/crypto.js.map +0 -1
  759. package/bin/store/index.d.ts +0 -230
  760. package/bin/store/index.d.ts.map +0 -1
  761. package/bin/store/index.js +0 -360
  762. package/bin/store/index.js.map +0 -1
  763. package/bin/store/schema.d.ts +0 -690
  764. package/bin/store/schema.d.ts.map +0 -1
  765. package/bin/store/schema.js +0 -81
  766. package/bin/store/schema.js.map +0 -1
  767. package/bin/types/chat/ChatSession.d.ts +0 -30
  768. package/bin/types/chat/ChatSession.d.ts.map +0 -1
  769. package/bin/types/chat/ChatSession.js +0 -9
  770. package/bin/types/chat/ChatSession.js.map +0 -1
  771. package/bin/types/city/PublicHostEnv.d.ts +0 -72
  772. package/bin/types/city/PublicHostEnv.d.ts.map +0 -1
  773. package/bin/types/city/PublicHostEnv.js +0 -9
  774. package/bin/types/city/PublicHostEnv.js.map +0 -1
  775. package/bin/types/cli/AgentChat.d.ts +0 -147
  776. package/bin/types/cli/AgentChat.d.ts.map +0 -1
  777. package/bin/types/cli/AgentChat.js +0 -12
  778. package/bin/types/cli/AgentChat.js.map +0 -1
  779. package/bin/types/cli/AgentHistory.d.ts +0 -127
  780. package/bin/types/cli/AgentHistory.d.ts.map +0 -1
  781. package/bin/types/cli/AgentHistory.js +0 -9
  782. package/bin/types/cli/AgentHistory.js.map +0 -1
  783. package/bin/types/cli/AgentManager.d.ts +0 -113
  784. package/bin/types/cli/AgentManager.d.ts.map +0 -1
  785. package/bin/types/cli/AgentManager.js +0 -9
  786. package/bin/types/cli/AgentManager.js.map +0 -1
  787. package/bin/types/cli/AgentSelection.d.ts +0 -146
  788. package/bin/types/cli/AgentSelection.d.ts.map +0 -1
  789. package/bin/types/cli/AgentSelection.js +0 -9
  790. package/bin/types/cli/AgentSelection.js.map +0 -1
  791. package/bin/types/cli/ChatManager.d.ts +0 -64
  792. package/bin/types/cli/ChatManager.d.ts.map +0 -1
  793. package/bin/types/cli/ChatManager.js +0 -9
  794. package/bin/types/cli/ChatManager.js.map +0 -1
  795. package/bin/types/cli/CliError.d.ts.map +0 -1
  796. package/bin/types/cli/CliError.js.map +0 -1
  797. package/bin/types/cli/CliReporter.d.ts +0 -157
  798. package/bin/types/cli/CliReporter.d.ts.map +0 -1
  799. package/bin/types/cli/CliReporter.js +0 -10
  800. package/bin/types/cli/CliReporter.js.map +0 -1
  801. package/bin/types/cli/ModelManager.d.ts +0 -127
  802. package/bin/types/cli/ModelManager.d.ts.map +0 -1
  803. package/bin/types/cli/ModelManager.js +0 -9
  804. package/bin/types/cli/ModelManager.js.map +0 -1
  805. package/bin/types/contact/Contact.d.ts +0 -78
  806. package/bin/types/contact/Contact.d.ts.map +0 -1
  807. package/bin/types/contact/Contact.js +0 -9
  808. package/bin/types/contact/Contact.js.map +0 -1
  809. package/bin/types/contact/ContactApproval.d.ts +0 -145
  810. package/bin/types/contact/ContactApproval.d.ts.map +0 -1
  811. package/bin/types/contact/ContactApproval.js +0 -9
  812. package/bin/types/contact/ContactApproval.js.map +0 -1
  813. package/bin/types/contact/ContactChat.d.ts +0 -46
  814. package/bin/types/contact/ContactChat.d.ts.map +0 -1
  815. package/bin/types/contact/ContactChat.js +0 -9
  816. package/bin/types/contact/ContactChat.js.map +0 -1
  817. package/bin/types/contact/ContactCheck.d.ts +0 -66
  818. package/bin/types/contact/ContactCheck.d.ts.map +0 -1
  819. package/bin/types/contact/ContactCheck.js +0 -9
  820. package/bin/types/contact/ContactCheck.js.map +0 -1
  821. package/bin/types/contact/ContactCommand.d.ts +0 -93
  822. package/bin/types/contact/ContactCommand.d.ts.map +0 -1
  823. package/bin/types/contact/ContactCommand.js +0 -8
  824. package/bin/types/contact/ContactCommand.js.map +0 -1
  825. package/bin/types/contact/ContactEndpoint.d.ts +0 -12
  826. package/bin/types/contact/ContactEndpoint.d.ts.map +0 -1
  827. package/bin/types/contact/ContactEndpoint.js +0 -9
  828. package/bin/types/contact/ContactEndpoint.js.map +0 -1
  829. package/bin/types/contact/ContactLink.d.ts +0 -160
  830. package/bin/types/contact/ContactLink.d.ts.map +0 -1
  831. package/bin/types/contact/ContactLink.js +0 -9
  832. package/bin/types/contact/ContactLink.js.map +0 -1
  833. package/bin/types/contact/ContactShare.d.ts +0 -163
  834. package/bin/types/contact/ContactShare.d.ts.map +0 -1
  835. package/bin/types/contact/ContactShare.js +0 -9
  836. package/bin/types/contact/ContactShare.js.map +0 -1
  837. package/bin/types/sandbox/SandboxRuntime.d.ts +0 -318
  838. package/bin/types/sandbox/SandboxRuntime.d.ts.map +0 -1
  839. package/bin/types/sandbox/SandboxRuntime.js +0 -10
  840. package/bin/types/sandbox/SandboxRuntime.js.map +0 -1
  841. package/bin/types/store/Store.d.ts +0 -26
  842. package/bin/types/store/Store.d.ts.map +0 -1
  843. package/bin/types/store/Store.js +0 -9
  844. package/bin/types/store/Store.js.map +0 -1
  845. package/bin/types/task/TaskRunner.d.ts +0 -186
  846. package/bin/types/task/TaskRunner.d.ts.map +0 -1
  847. package/bin/types/task/TaskRunner.js +0 -9
  848. package/bin/types/task/TaskRunner.js.map +0 -1
  849. package/src/cli/AgentChat.ts +0 -415
  850. package/src/cli/AgentHistory.ts +0 -187
  851. package/src/cli/AgentManager.ts +0 -667
  852. package/src/cli/AgentReset.ts +0 -181
  853. package/src/cli/AgentSelection.ts +0 -297
  854. package/src/cli/ChatAuth.ts +0 -203
  855. package/src/cli/ChatManager.ts +0 -439
  856. package/src/cli/CliReporter.ts +0 -362
  857. package/src/cli/Config.ts +0 -301
  858. package/src/cli/Console.ts +0 -610
  859. package/src/cli/ConsoleAuthBootstrap.ts +0 -72
  860. package/src/cli/ConsoleInit.ts +0 -83
  861. package/src/cli/Env.ts +0 -556
  862. package/src/cli/IndexAgentCommand.ts +0 -303
  863. package/src/cli/IndexConsoleCommand.ts +0 -211
  864. package/src/cli/IndexConsoleProcess.ts +0 -497
  865. package/src/cli/IndexConsoleStatus.ts +0 -152
  866. package/src/cli/IndexSupport.ts +0 -138
  867. package/src/cli/Init.ts +0 -291
  868. package/src/cli/ModelCommandShared.ts +0 -126
  869. package/src/cli/ModelCreateCommand.ts +0 -424
  870. package/src/cli/ModelManageCommand.ts +0 -516
  871. package/src/cli/ModelManager.ts +0 -631
  872. package/src/cli/ModelReadCommand.ts +0 -207
  873. package/src/cli/ModelSupport.ts +0 -223
  874. package/src/cli/Plugins.ts +0 -568
  875. package/src/cli/PortHints.ts +0 -80
  876. package/src/cli/PublicAccess.ts +0 -106
  877. package/src/cli/PublicHostEnv.ts +0 -116
  878. package/src/cli/Restart.ts +0 -68
  879. package/src/cli/Run.ts +0 -148
  880. package/src/cli/ServiceActionCommands.ts +0 -414
  881. package/src/cli/ServiceCommandRemote.ts +0 -230
  882. package/src/cli/ServiceCommandSupport.ts +0 -275
  883. package/src/cli/ServiceScheduleCommand.ts +0 -305
  884. package/src/cli/Services.ts +0 -189
  885. package/src/cli/Start.ts +0 -72
  886. package/src/cli/Status.ts +0 -116
  887. package/src/cli/Stop.ts +0 -45
  888. package/src/cli/Token.ts +0 -702
  889. package/src/cli/Update.ts +0 -183
  890. package/src/console/AgentStatusApiRoutes.ts +0 -225
  891. package/src/console/ChannelAccountApiRoutes.ts +0 -119
  892. package/src/console/ConsoleClient.ts +0 -293
  893. package/src/console/ConsoleGateway.ts +0 -463
  894. package/src/console/ConsoleGatewayRoutes.ts +0 -495
  895. package/src/console/EnvApiRoutes.ts +0 -257
  896. package/src/console/InlineInstantRoutes.ts +0 -74
  897. package/src/console/InlineInstantSessionService.ts +0 -277
  898. package/src/console/InlineInstantSystemComposer.ts +0 -58
  899. package/src/console/ModelApiRoutes.ts +0 -336
  900. package/src/console/ModelPoolService.ts +0 -395
  901. package/src/console/PluginApiRoutes.ts +0 -453
  902. package/src/console/gateway/AgentActions.ts +0 -413
  903. package/src/console/gateway/AgentCatalog.ts +0 -606
  904. package/src/console/gateway/FrontendAssets.ts +0 -79
  905. package/src/console/gateway/GatewaySupport.ts +0 -59
  906. package/src/console/gateway/Proxy.ts +0 -62
  907. package/src/constants/DowncitySchema.ts +0 -377
  908. package/src/daemon/Api.ts +0 -64
  909. package/src/daemon/CliArgs.ts +0 -39
  910. package/src/daemon/Client.ts +0 -182
  911. package/src/daemon/Manager.ts +0 -344
  912. package/src/http/dashboard/AuthDashboardService.ts +0 -161
  913. package/src/http/dashboard/CommonHelpers.ts +0 -50
  914. package/src/http/dashboard/ExecuteInput.ts +0 -236
  915. package/src/http/dashboard/MessageTimeline.ts +0 -269
  916. package/src/http/dashboard/SessionSummaryStore.ts +0 -77
  917. package/src/http/dashboard/TaskStore.ts +0 -222
  918. package/src/model/ModelCommand.ts +0 -95
  919. package/src/model/ModelManager.ts +0 -242
  920. package/src/registry/AgentHostRuntime.ts +0 -65
  921. package/src/registry/CityPaths.ts +0 -101
  922. package/src/registry/CityRegistry.ts +0 -256
  923. package/src/registry/CityRuntime.ts +0 -45
  924. package/src/registry/PluginRuntime.ts +0 -42
  925. package/src/registry/ProcessSweep.ts +0 -256
  926. package/src/rpc/Client.ts +0 -110
  927. package/src/rpc/Paths.ts +0 -43
  928. package/src/sandbox/MacOsSeatbeltSandbox.ts +0 -196
  929. package/src/sandbox/SandboxConfigResolver.ts +0 -134
  930. package/src/sandbox/SandboxRunner.ts +0 -101
  931. package/src/store/StoreChannelAccountRepository.ts +0 -269
  932. package/src/store/StoreEnvRepository.ts +0 -452
  933. package/src/store/StoreModelRepository.ts +0 -324
  934. package/src/store/StoreSchema.ts +0 -344
  935. package/src/store/StoreSecureSettings.ts +0 -126
  936. package/src/store/StoreShared.ts +0 -67
  937. package/src/store/crypto.ts +0 -112
  938. package/src/store/index.ts +0 -497
  939. package/src/store/schema.ts +0 -103
  940. package/src/types/chat/ChatSession.ts +0 -32
  941. package/src/types/city/PublicHostEnv.ts +0 -76
  942. package/src/types/cli/AgentChat.ts +0 -172
  943. package/src/types/cli/AgentHistory.ts +0 -146
  944. package/src/types/cli/AgentManager.ts +0 -119
  945. package/src/types/cli/AgentSelection.ts +0 -162
  946. package/src/types/cli/ChatManager.ts +0 -65
  947. package/src/types/cli/CliReporter.ts +0 -167
  948. package/src/types/cli/ModelManager.ts +0 -139
  949. package/src/types/contact/Contact.ts +0 -82
  950. package/src/types/contact/ContactApproval.ts +0 -150
  951. package/src/types/contact/ContactChat.ts +0 -47
  952. package/src/types/contact/ContactCheck.ts +0 -67
  953. package/src/types/contact/ContactCommand.ts +0 -98
  954. package/src/types/contact/ContactEndpoint.ts +0 -16
  955. package/src/types/contact/ContactLink.ts +0 -169
  956. package/src/types/contact/ContactShare.ts +0 -172
  957. package/src/types/sandbox/SandboxRuntime.ts +0 -377
  958. package/src/types/store/Store.ts +0 -27
  959. package/src/types/task/TaskRunner.ts +0 -199
  960. /package/bin/cli/{AgentManager.d.ts → agent/AgentManager.d.ts} +0 -0
  961. /package/bin/cli/{Init.d.ts → agent/Init.d.ts} +0 -0
  962. /package/bin/cli/{Status.d.ts → agent/Status.d.ts} +0 -0
  963. /package/bin/cli/{Stop.d.ts → agent/Stop.d.ts} +0 -0
  964. /package/bin/cli/{Model.d.ts → model/Model.d.ts} +0 -0
  965. /package/bin/cli/{Model.js → model/Model.js} +0 -0
  966. /package/bin/cli/{ModelCreateCommand.d.ts → model/ModelCreateCommand.d.ts} +0 -0
  967. /package/bin/cli/{ModelManageCommand.d.ts → model/ModelManageCommand.d.ts} +0 -0
  968. /package/bin/cli/{ModelManageCommand.js → model/ModelManageCommand.js} +0 -0
  969. /package/bin/cli/{ModelManager.d.ts → model/ModelManager.d.ts} +0 -0
  970. /package/bin/cli/{ServiceActionCommands.d.ts → service/ServiceActionCommands.d.ts} +0 -0
  971. /package/bin/cli/{Services.d.ts → service/Services.d.ts} +0 -0
  972. /package/bin/cli/{Alias.d.ts → shared/Alias.d.ts} +0 -0
  973. /package/bin/cli/{Alias.js → shared/Alias.js} +0 -0
  974. /package/bin/cli/{Chat.d.ts → shared/Chat.d.ts} +0 -0
  975. /package/bin/cli/{Chat.js → shared/Chat.js} +0 -0
  976. /package/bin/cli/{ChatAuth.d.ts → shared/ChatAuth.d.ts} +0 -0
  977. /package/bin/cli/{ChatManager.d.ts → shared/ChatManager.d.ts} +0 -0
  978. /package/bin/{types/cli → cli/shared}/CliError.d.ts +0 -0
  979. /package/bin/{types/cli → cli/shared}/CliError.js +0 -0
  980. /package/bin/cli/{CliReporter.js → shared/CliReporter.js} +0 -0
  981. /package/bin/cli/{Config.d.ts → shared/Config.d.ts} +0 -0
  982. /package/bin/cli/{IndexAgentCommand.d.ts → shared/IndexAgentCommand.d.ts} +0 -0
  983. /package/bin/cli/{IndexSupport.d.ts → shared/IndexSupport.d.ts} +0 -0
  984. /package/bin/cli/{Plugins.d.ts → shared/Plugins.d.ts} +0 -0
  985. /package/bin/cli/{Reset.d.ts → shared/Reset.d.ts} +0 -0
  986. /package/bin/cli/{Reset.js → shared/Reset.js} +0 -0
  987. /package/bin/cli/{Token.d.ts → shared/Token.d.ts} +0 -0
  988. /package/bin/cli/{Update.d.ts → shared/Update.d.ts} +0 -0
  989. /package/bin/{daemon → process/daemon}/Api.js +0 -0
  990. /package/bin/{daemon → process/daemon}/Client.d.ts +0 -0
  991. /package/bin/{daemon → process/daemon}/PortAllocator.d.ts +0 -0
  992. /package/bin/{daemon → process/daemon}/PortAllocator.js +0 -0
  993. /package/bin/{registry → process/registry}/PluginRuntime.js +0 -0
  994. /package/bin/{rpc → process/rpc}/Client.js +0 -0
  995. /package/bin/{rpc → process/rpc}/Paths.d.ts +0 -0
  996. /package/src/cli/{Model.ts → model/Model.ts} +0 -0
  997. /package/src/cli/{Alias.ts → shared/Alias.ts} +0 -0
  998. /package/src/cli/{Chat.ts → shared/Chat.ts} +0 -0
  999. /package/src/{types/cli → cli/shared}/CliError.ts +0 -0
  1000. /package/src/cli/{Reset.ts → shared/Reset.ts} +0 -0
  1001. /package/src/{daemon → process/daemon}/PortAllocator.ts +0 -0
@@ -0,0 +1,292 @@
1
+ /**
2
+ * PlatformApiRoutes:平台控制面 API 路由注册。
3
+ *
4
+ * 关键点(中文)
5
+ * - 路由注册从 `ControlGateway` 宿主类中拆出,避免网关门面继续膨胀。
6
+ * - 这里不持有状态,只消费宿主提供的 handlers。
7
+ */
8
+ import { registerPlatformModelRoutes } from "../control/ModelApiRoutes.js";
9
+ import { registerPlatformInstantRoutes } from "../control/instant/InstantApiRoutes.js";
10
+ import { registerPlatformChannelAccountRoutes } from "../control/ChannelAccountApiRoutes.js";
11
+ import { registerPlatformEnvRoutes } from "../control/EnvApiRoutes.js";
12
+ import { registerPlatformAgentStatusRoutes } from "../control/AgentStatusApiRoutes.js";
13
+ import { registerPlatformPluginRoutes } from "../control/PluginApiRoutes.js";
14
+ import { buildPlatformWorkloadBlockPayload } from "../control/gateway/GatewaySupport.js";
15
+ /**
16
+ * 注册平台控制面 API 路由。
17
+ */
18
+ export function registerPlatformApiRoutes(params) {
19
+ const { app, handlers } = params;
20
+ app.get("/health", async (c) => {
21
+ return c.json({
22
+ status: "ok",
23
+ type: "console",
24
+ });
25
+ });
26
+ app.get("/api/ui/agents", async (c) => {
27
+ try {
28
+ const requestedAgentId = handlers.readRequestedAgentId(c.req.raw);
29
+ const payload = await handlers.buildAgentsResponse(requestedAgentId);
30
+ return c.json(payload);
31
+ }
32
+ catch (error) {
33
+ return c.json({ success: false, error: String(error) }, 500);
34
+ }
35
+ });
36
+ app.post("/api/ui/agents/start", async (c) => {
37
+ try {
38
+ const body = (await c.req.json().catch(() => ({})));
39
+ const rawProject = String(body.projectRoot || body.agentId || "").trim();
40
+ if (!rawProject) {
41
+ return c.json({ success: false, error: "projectRoot is required" }, 400);
42
+ }
43
+ const payload = await handlers.startAgentByProjectRoot(rawProject, {
44
+ initializeIfNeeded: body.initializeIfNeeded === true,
45
+ initialization: body.initialization,
46
+ });
47
+ return c.json(payload);
48
+ }
49
+ catch (error) {
50
+ return c.json({ success: false, error: String(error) }, 500);
51
+ }
52
+ });
53
+ app.post("/api/ui/agents/create", async (c) => {
54
+ try {
55
+ const body = (await c.req.json().catch(() => ({})));
56
+ const rawProject = String(body.projectRoot || "").trim();
57
+ if (!rawProject) {
58
+ return c.json({ success: false, error: "projectRoot is required" }, 400);
59
+ }
60
+ const initResult = await handlers.initializeAgentProject(rawProject, {
61
+ agentName: body.agentName,
62
+ modelId: body.modelId,
63
+ forceOverwriteShipJson: body.forceOverwriteShipJson,
64
+ });
65
+ if (body.autoStart === false) {
66
+ return c.json({
67
+ success: true,
68
+ created: true,
69
+ started: false,
70
+ projectRoot: initResult.projectRoot,
71
+ agentName: initResult.agentName,
72
+ message: "created",
73
+ });
74
+ }
75
+ const payload = await handlers.startAgentByProjectRoot(initResult.projectRoot);
76
+ return c.json(payload);
77
+ }
78
+ catch (error) {
79
+ return c.json({ success: false, error: String(error) }, 500);
80
+ }
81
+ });
82
+ app.post("/api/ui/system/pick-directory", async (c) => {
83
+ try {
84
+ const directoryPath = await handlers.pickDirectoryPath();
85
+ return c.json({ success: true, directoryPath });
86
+ }
87
+ catch (error) {
88
+ return c.json({ success: false, error: String(error) }, 500);
89
+ }
90
+ });
91
+ app.post("/api/ui/agents/inspect", async (c) => {
92
+ try {
93
+ const body = (await c.req.json().catch(() => ({})));
94
+ const rawProject = String(body.projectRoot || body.agentId || "").trim();
95
+ if (!rawProject) {
96
+ return c.json({ success: false, error: "projectRoot is required" }, 400);
97
+ }
98
+ const inspection = await handlers.inspectAgentDirectory(rawProject);
99
+ return c.json({ success: true, inspection });
100
+ }
101
+ catch (error) {
102
+ return c.json({ success: false, error: String(error) }, 500);
103
+ }
104
+ });
105
+ app.post("/api/ui/local-models", async (c) => {
106
+ try {
107
+ const body = (await c.req.json().catch(() => ({})));
108
+ const rawProject = String(body.projectRoot || body.agentId || "").trim();
109
+ const payload = await handlers.listLocalModels(rawProject || undefined);
110
+ return c.json(payload);
111
+ }
112
+ catch (error) {
113
+ return c.json({ success: false, error: String(error) }, 500);
114
+ }
115
+ });
116
+ app.post("/api/ui/agents/execution", async (c) => {
117
+ try {
118
+ const body = (await c.req.json().catch(() => ({})));
119
+ const rawProject = String(body.projectRoot || body.agentId || "").trim();
120
+ if (!rawProject) {
121
+ return c.json({ success: false, error: "projectRoot is required" }, 400);
122
+ }
123
+ const payload = await handlers.updateAgentExecution(rawProject, {
124
+ modelId: body.modelId,
125
+ });
126
+ return c.json({
127
+ success: true,
128
+ ...payload,
129
+ restartRequired: true,
130
+ });
131
+ }
132
+ catch (error) {
133
+ return c.json({ success: false, error: String(error) }, 500);
134
+ }
135
+ });
136
+ app.post("/api/ui/agents/restart", async (c) => {
137
+ try {
138
+ const body = (await c.req.json().catch(() => ({})));
139
+ const rawProject = String(body.projectRoot || body.agentId || "").trim();
140
+ if (!rawProject) {
141
+ return c.json({ success: false, error: "projectRoot is required" }, 400);
142
+ }
143
+ const forceRestart = body.force === true;
144
+ const checks = await handlers.inspectAgentRestartSafety(rawProject);
145
+ const hasBlocking = checks.activeContexts.length > 0 || checks.activeTasks.length > 0;
146
+ if (hasBlocking && !forceRestart) {
147
+ return c.json(buildPlatformWorkloadBlockPayload("restart", checks), 409);
148
+ }
149
+ const payload = await handlers.restartAgentByProjectRoot(rawProject);
150
+ return c.json({
151
+ ...payload,
152
+ activeContexts: checks.activeContexts,
153
+ activeTasks: checks.activeTasks,
154
+ });
155
+ }
156
+ catch (error) {
157
+ return c.json({ success: false, error: String(error) }, 500);
158
+ }
159
+ });
160
+ app.post("/api/ui/agents/stop", async (c) => {
161
+ try {
162
+ const body = (await c.req.json().catch(() => ({})));
163
+ const rawProject = String(body.projectRoot || body.agentId || "").trim();
164
+ if (!rawProject) {
165
+ return c.json({ success: false, error: "projectRoot is required" }, 400);
166
+ }
167
+ const forceStop = body.force === true;
168
+ const checks = await handlers.inspectAgentRestartSafety(rawProject);
169
+ const hasBlocking = checks.activeContexts.length > 0 || checks.activeTasks.length > 0;
170
+ if (hasBlocking && !forceStop) {
171
+ return c.json(buildPlatformWorkloadBlockPayload("stop", checks), 409);
172
+ }
173
+ const payload = await handlers.stopAgentByProjectRoot(rawProject);
174
+ return c.json({
175
+ ...payload,
176
+ activeContexts: checks.activeContexts,
177
+ activeTasks: checks.activeTasks,
178
+ });
179
+ }
180
+ catch (error) {
181
+ return c.json({ success: false, error: String(error) }, 500);
182
+ }
183
+ });
184
+ app.get("/api/ui/config-status", async (c) => {
185
+ try {
186
+ const requestedAgentId = handlers.readRequestedAgentId(c.req.raw);
187
+ const payload = await handlers.buildConfigStatusResponse(requestedAgentId);
188
+ return c.json(payload);
189
+ }
190
+ catch (error) {
191
+ return c.json({ success: false, error: String(error) }, 500);
192
+ }
193
+ });
194
+ app.post("/api/ui/command/execute", async (c) => {
195
+ try {
196
+ const body = (await c.req.json().catch(() => ({})));
197
+ const requestedAgentId = String(body.agentId || handlers.readRequestedAgentId(c.req.raw) || "").trim();
198
+ if (!requestedAgentId) {
199
+ return c.json({ success: false, error: "agentId is required" }, 400);
200
+ }
201
+ const command = String(body.command || "").trim();
202
+ if (!command) {
203
+ return c.json({ success: false, error: "command is required" }, 400);
204
+ }
205
+ const selectedAgent = await handlers.resolveAgentById(requestedAgentId);
206
+ if (!selectedAgent) {
207
+ return c.json({
208
+ success: false,
209
+ error: "Agent not found in managed agent registry",
210
+ }, 404);
211
+ }
212
+ const timeoutRaw = Number.parseInt(String(body.timeoutMs || ""), 10);
213
+ const timeoutMs = Number.isFinite(timeoutRaw) && timeoutRaw > 0
214
+ ? Math.min(timeoutRaw, 120_000)
215
+ : 45_000;
216
+ const result = await handlers.executeShellCommand({
217
+ command,
218
+ cwd: selectedAgent.projectRoot,
219
+ timeoutMs,
220
+ });
221
+ return c.json({
222
+ success: true,
223
+ agentId: selectedAgent.id,
224
+ result,
225
+ });
226
+ }
227
+ catch (error) {
228
+ return c.json({ success: false, error: String(error) }, 500);
229
+ }
230
+ });
231
+ registerPlatformModelRoutes({
232
+ app,
233
+ readRequestedAgentId: (request) => handlers.readRequestedAgentId(request),
234
+ resolveSelectedAgent: (requestedAgentId) => handlers.resolveSelectedAgent(requestedAgentId),
235
+ buildModelResponse: (requestedAgentId) => handlers.buildModelResponse(requestedAgentId),
236
+ });
237
+ registerPlatformInstantRoutes({
238
+ app,
239
+ resolveAgentById: (requestedAgentId) => handlers.resolveAgentById(requestedAgentId),
240
+ });
241
+ registerPlatformChannelAccountRoutes({ app });
242
+ registerPlatformEnvRoutes({ app });
243
+ registerPlatformAgentStatusRoutes({
244
+ app,
245
+ readRequestedAgentId: (request) => handlers.readRequestedAgentId(request),
246
+ resolveSelectedAgent: (requestedAgentId) => handlers.resolveSelectedAgent(requestedAgentId),
247
+ });
248
+ registerPlatformPluginRoutes({
249
+ app,
250
+ readRequestedAgentId: (request) => handlers.readRequestedAgentId(request),
251
+ resolveSelectedAgent: (requestedAgentId) => handlers.resolveSelectedAgent(requestedAgentId),
252
+ });
253
+ app.all("/api/*", async (c) => {
254
+ try {
255
+ const reqUrl = new URL(c.req.url);
256
+ if (reqUrl.pathname.startsWith("/api/ui/")) {
257
+ return c.json({ success: false, error: "Not Found" }, 404);
258
+ }
259
+ const requestedAgentId = handlers.readRequestedAgentId(c.req.raw);
260
+ const selection = await handlers.resolveSelectedAgent(requestedAgentId);
261
+ if (!selection) {
262
+ return c.json({
263
+ success: false,
264
+ error: "No running agent found. Start one via `city agent start` first.",
265
+ }, 503);
266
+ }
267
+ if (!selection.baseUrl) {
268
+ return c.json({
269
+ success: false,
270
+ error: "Selected agent endpoint is unavailable.",
271
+ }, 503);
272
+ }
273
+ const upstreamUrl = handlers.buildUpstreamUrl(reqUrl, selection.baseUrl);
274
+ const response = await handlers.forwardRequest(c.req.raw, upstreamUrl);
275
+ return response;
276
+ }
277
+ catch (error) {
278
+ return c.json({
279
+ success: false,
280
+ error: `Proxy request failed: ${String(error)}`,
281
+ }, 500);
282
+ }
283
+ });
284
+ app.get("/*", async (c) => {
285
+ const reqPath = String(c.req.path || "/");
286
+ if (reqPath.startsWith("/api/")) {
287
+ return c.json({ success: false, error: "Not Found" }, 404);
288
+ }
289
+ return handlers.serveFrontendPath(c, reqPath);
290
+ });
291
+ }
292
+ //# sourceMappingURL=PlatformApiRoutes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlatformApiRoutes.js","sourceRoot":"","sources":["../../src/control/PlatformApiRoutes.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,oCAAoC,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,iCAAiC,EAAE,MAAM,mCAAmC,CAAC;AACtF,OAAO,EAAE,4BAA4B,EAAE,MAAM,8BAA8B,CAAC;AAU5E,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AAuHxF;;GAEG;AACH,MAAM,UAAU,yBAAyB,CAAC,MAGzC;IACC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAEjC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC7B,OAAO,CAAC,CAAC,IAAI,CAAC;YACZ,MAAM,EAAE,IAAI;YACZ,IAAI,EAAE,SAAS;SAChB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACpC,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClE,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;YACrE,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC3C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CASjD,CAAC;YACF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACzE,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,uBAAuB,CAAC,UAAU,EAAE;gBACjE,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,KAAK,IAAI;gBACpD,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC,CAAC,CAAC;YACH,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,IAAI,CAAC,uBAAuB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC5C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAMjD,CAAC;YACF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACzD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,sBAAsB,CAAC,UAAU,EAAE;gBACnE,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;aACpD,CAAC,CAAC;YACH,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;gBAC7B,OAAO,CAAC,CAAC,IAAI,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE,UAAU,CAAC,WAAW;oBACnC,SAAS,EAAE,UAAU,CAAC,SAAS;oBAC/B,OAAO,EAAE,SAAS;iBACnB,CAAC,CAAC;YACL,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,uBAAuB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAC/E,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,IAAI,CAAC,+BAA+B,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACpD,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,iBAAiB,EAAE,CAAC;YACzD,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC7C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAGjD,CAAC;YACF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACzE,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;YACpE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC3C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAGjD,CAAC;YACF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACzE,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAC,UAAU,IAAI,SAAS,CAAC,CAAC;YACxE,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,IAAI,CAAC,0BAA0B,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAIjD,CAAC;YACF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACzE,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,oBAAoB,CAAC,UAAU,EAAE;gBAC9D,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;YACH,OAAO,CAAC,CAAC,IAAI,CAAC;gBACZ,OAAO,EAAE,IAAI;gBACb,GAAG,OAAO;gBACV,eAAe,EAAE,IAAI;aACtB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC7C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAIjD,CAAC;YACF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACzE,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC;YACzC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;YACpE,MAAM,WAAW,GACf,MAAM,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;YACpE,IAAI,WAAW,IAAI,CAAC,YAAY,EAAE,CAAC;gBACjC,OAAO,CAAC,CAAC,IAAI,CACX,iCAAiC,CAAC,SAAS,EAAE,MAAM,CAAC,EACpD,GAAG,CACJ,CAAC;YACJ,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;YACrE,OAAO,CAAC,CAAC,IAAI,CAAC;gBACZ,GAAG,OAAO;gBACV,cAAc,EAAE,MAAM,CAAC,cAAc;gBACrC,WAAW,EAAE,MAAM,CAAC,WAAW;aAChC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,IAAI,CAAC,qBAAqB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC1C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAIjD,CAAC;YACF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACzE,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC;YACtC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;YACpE,MAAM,WAAW,GACf,MAAM,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;YACpE,IAAI,WAAW,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC9B,OAAO,CAAC,CAAC,IAAI,CACX,iCAAiC,CAAC,MAAM,EAAE,MAAM,CAAC,EACjD,GAAG,CACJ,CAAC;YACJ,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;YAClE,OAAO,CAAC,CAAC,IAAI,CAAC;gBACZ,GAAG,OAAO;gBACV,cAAc,EAAE,MAAM,CAAC,cAAc;gBACrC,WAAW,EAAE,MAAM,CAAC,WAAW;aAChC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,uBAAuB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC3C,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClE,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,yBAAyB,CAAC,gBAAgB,CAAC,CAAC;YAC3E,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC9C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAIjD,CAAC;YACF,MAAM,gBAAgB,GAAG,MAAM,CAC7B,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAC/D,CAAC,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,GAAG,CAAC,CAAC;YACvE,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAClD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,GAAG,CAAC,CAAC;YACvE,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;YACxE,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,OAAO,CAAC,CAAC,IAAI,CACX;oBACE,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,2CAA2C;iBACnD,EACD,GAAG,CACJ,CAAC;YACJ,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACrE,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC;gBAC7D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC;gBAC/B,CAAC,CAAC,MAAM,CAAC;YAEX,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,mBAAmB,CAAC;gBAChD,OAAO;gBACP,GAAG,EAAE,aAAa,CAAC,WAAW;gBAC9B,SAAS;aACV,CAAC,CAAC;YACH,OAAO,CAAC,CAAC,IAAI,CAAC;gBACZ,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,aAAa,CAAC,EAAE;gBACzB,MAAM;aACP,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,2BAA2B,CAAC;QAC1B,GAAG;QACH,oBAAoB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC,OAAO,CAAC;QACzE,oBAAoB,EAAE,CAAC,gBAAgB,EAAE,EAAE,CACzC,QAAQ,CAAC,oBAAoB,CAAC,gBAAgB,CAAC;QACjD,kBAAkB,EAAE,CAAC,gBAAgB,EAAE,EAAE,CACvC,QAAQ,CAAC,kBAAkB,CAAC,gBAAgB,CAAC;KAChD,CAAC,CAAC;IACH,6BAA6B,CAAC;QAC5B,GAAG;QACH,gBAAgB,EAAE,CAAC,gBAAgB,EAAE,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;KACpF,CAAC,CAAC;IACH,oCAAoC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9C,yBAAyB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnC,iCAAiC,CAAC;QAChC,GAAG;QACH,oBAAoB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC,OAAO,CAAC;QACzE,oBAAoB,EAAE,CAAC,gBAAgB,EAAE,EAAE,CACzC,QAAQ,CAAC,oBAAoB,CAAC,gBAAgB,CAAC;KAClD,CAAC,CAAC;IACH,4BAA4B,CAAC;QAC3B,GAAG;QACH,oBAAoB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC,OAAO,CAAC;QACzE,oBAAoB,EAAE,CAAC,gBAAgB,EAAE,EAAE,CACzC,QAAQ,CAAC,oBAAoB,CAAC,gBAAgB,CAAC;KAClD,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC5B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3C,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;YAC7D,CAAC;YAED,MAAM,gBAAgB,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClE,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;YACxE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,CAAC,CAAC,IAAI,CACX;oBACE,OAAO,EAAE,KAAK;oBACd,KAAK,EACH,iEAAiE;iBACpE,EACD,GAAG,CACJ,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;gBACvB,OAAO,CAAC,CAAC,IAAI,CACX;oBACE,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,yCAAyC;iBACjD,EACD,GAAG,CACJ,CAAC;YACJ,CAAC;YACD,MAAM,WAAW,GAAG,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;YACzE,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YACvE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,IAAI,CACX;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,yBAAyB,MAAM,CAAC,KAAK,CAAC,EAAE;aAChD,EACD,GAAG,CACJ,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACxB,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;QAC1C,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAChC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,QAAQ,CAAC,iBAAiB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * 平台 Plugin 路由。
3
+ *
4
+ * 关键点(中文)
5
+ * - 平台控制面的 plugin 面板首先展示“已注册的内建 plugin 清单”,不应因为 agent 短暂不可用而整块消失。
6
+ * - 当目标 agent 可访问时,再叠加 plugin list + availability,补齐启用态、依赖缺失等动态信息。
7
+ * - 这样能同时满足“架构上 plugin 属于 main/package 注册信息”和“可用性属于 agent 状态”两层语义。
8
+ */
9
+ import type { Hono } from "hono";
10
+ import type { PlatformAgentOption } from "@downcity/agent";
11
+ /**
12
+ * 注册 Plugin 管理 API 路由。
13
+ */
14
+ export declare function registerPlatformPluginRoutes(params: {
15
+ /**
16
+ * Hono 应用实例。
17
+ */
18
+ app: Hono;
19
+ /**
20
+ * 从请求中读取目标 agent id。
21
+ */
22
+ readRequestedAgentId: (request: Request) => string;
23
+ /**
24
+ * 解析当前应使用的 agent。
25
+ */
26
+ resolveSelectedAgent: (requestedAgentId: string) => Promise<PlatformAgentOption | null>;
27
+ }): void;
28
+ //# sourceMappingURL=PluginApiRoutes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PluginApiRoutes.d.ts","sourceRoot":"","sources":["../../src/control/PluginApiRoutes.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAQjC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AA0T3D;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE;IACnD;;OAEG;IACH,GAAG,EAAE,IAAI,CAAC;IACV;;OAEG;IACH,oBAAoB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC;IACnD;;OAEG;IACH,oBAAoB,EAAE,CACpB,gBAAgB,EAAE,MAAM,KACrB,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;CAC1C,GAAG,IAAI,CAyFP"}
@@ -0,0 +1,282 @@
1
+ /**
2
+ * 平台 Plugin 路由。
3
+ *
4
+ * 关键点(中文)
5
+ * - 平台控制面的 plugin 面板首先展示“已注册的内建 plugin 清单”,不应因为 agent 短暂不可用而整块消失。
6
+ * - 当目标 agent 可访问时,再叠加 plugin list + availability,补齐启用态、依赖缺失等动态信息。
7
+ * - 这样能同时满足“架构上 plugin 属于 main/package 注册信息”和“可用性属于 agent 状态”两层语义。
8
+ */
9
+ import { findBuiltinPlugin, isCityPluginEnabled, listStaticPluginViews, runLocalPluginAction, setCityPluginEnabled, } from "@downcity/agent";
10
+ function getErrorMessage(error) {
11
+ if (error instanceof Error) {
12
+ return error.message || String(error);
13
+ }
14
+ return String(error);
15
+ }
16
+ function buildPluginActionConfig(plugin) {
17
+ if (!plugin)
18
+ return [];
19
+ return Object.entries(plugin.actions || {})
20
+ .map(([actionName, action]) => ({
21
+ name: actionName,
22
+ supportsCommand: Boolean(action?.command),
23
+ supportsApi: Boolean(action?.api),
24
+ commandDescription: String(action?.command?.description || "").trim(),
25
+ apiMethod: String(action?.api?.method || "").trim().toUpperCase(),
26
+ apiPath: String(action?.api?.path || "").trim(),
27
+ }))
28
+ .sort((a, b) => a.name.localeCompare(b.name));
29
+ }
30
+ function buildPluginConfigMap() {
31
+ return new Map(listStaticPluginViews().map((view) => [
32
+ view.name,
33
+ {
34
+ actions: buildPluginActionConfig(findBuiltinPlugin(view.name)),
35
+ ...(findBuiltinPlugin(view.name)?.setup
36
+ ? { setup: findBuiltinPlugin(view.name)?.setup }
37
+ : {}),
38
+ ...(findBuiltinPlugin(view.name)?.usage
39
+ ? { usage: findBuiltinPlugin(view.name)?.usage }
40
+ : {}),
41
+ },
42
+ ]));
43
+ }
44
+ function buildGlobalPluginConfigMap() {
45
+ return new Map(listStaticPluginViews().map((view) => [
46
+ view.name,
47
+ {
48
+ actions: buildPluginActionConfig(findBuiltinPlugin(view.name)),
49
+ ...(findBuiltinPlugin(view.name)?.setup
50
+ ? { setup: findBuiltinPlugin(view.name)?.setup }
51
+ : {}),
52
+ },
53
+ ]));
54
+ }
55
+ function buildGlobalPluginPayload() {
56
+ const configMap = buildGlobalPluginConfigMap();
57
+ return {
58
+ success: true,
59
+ runtimeConnected: false,
60
+ plugins: listStaticPluginViews().map((view) => ({
61
+ ...view,
62
+ availability: {
63
+ enabled: isCityPluginEnabled(view.name),
64
+ available: true,
65
+ reasons: [],
66
+ },
67
+ config: configMap.get(view.name) || {
68
+ actions: [],
69
+ },
70
+ })),
71
+ };
72
+ }
73
+ function buildAgentPluginPayload(params) {
74
+ const configMap = buildPluginConfigMap();
75
+ const reason = String(params?.runtimeError || "").trim();
76
+ return {
77
+ success: true,
78
+ runtimeConnected: params?.runtimeConnected === true,
79
+ ...(reason ? { runtimeError: reason } : {}),
80
+ plugins: listStaticPluginViews().map((view) => ({
81
+ ...view,
82
+ availability: {
83
+ enabled: isCityPluginEnabled(view.name),
84
+ available: false,
85
+ reasons: reason
86
+ ? [`Agent server unavailable: ${reason}`]
87
+ : ["Static catalog view only. Agent-side availability is not loaded."],
88
+ },
89
+ config: configMap.get(view.name) || {
90
+ actions: [],
91
+ },
92
+ })),
93
+ };
94
+ }
95
+ async function fetchJson(input, init) {
96
+ const response = await fetch(input, init);
97
+ const payload = (await response.json().catch(() => ({})));
98
+ if (!response.ok || payload?.success === false) {
99
+ const errorMessage = typeof payload?.error === "string"
100
+ ? payload.error
101
+ : typeof payload?.message === "string"
102
+ ? payload.message
103
+ : `${response.status} ${response.statusText}`;
104
+ throw new Error(errorMessage);
105
+ }
106
+ return payload;
107
+ }
108
+ function readRuntimeForwardAuthHeaders(request) {
109
+ const authorization = String(request.headers.get("authorization") || "").trim();
110
+ return authorization ? { authorization } : {};
111
+ }
112
+ function buildRuntimeRequestHeaders(params) {
113
+ const headers = new Headers(params?.headers || {});
114
+ const authorization = String(params?.authHeaders?.authorization || "").trim();
115
+ if (authorization) {
116
+ headers.set("authorization", authorization);
117
+ }
118
+ return headers;
119
+ }
120
+ async function loadPluginViews(baseUrl, authHeaders) {
121
+ const listUrl = new URL("/api/plugins/list", baseUrl).toString();
122
+ const payload = await fetchJson(listUrl, {
123
+ headers: buildRuntimeRequestHeaders({ authHeaders }),
124
+ });
125
+ const plugins = Array.isArray(payload.plugins) ? payload.plugins : [];
126
+ return plugins.sort((a, b) => a.name.localeCompare(b.name));
127
+ }
128
+ async function loadRuntimePluginAvailability(baseUrl, pluginName, authHeaders) {
129
+ const availabilityUrl = new URL("/api/plugins/availability", baseUrl).toString();
130
+ const payload = await fetchJson(availabilityUrl, {
131
+ method: "POST",
132
+ headers: buildRuntimeRequestHeaders({
133
+ authHeaders,
134
+ headers: {
135
+ "content-type": "application/json",
136
+ },
137
+ }),
138
+ body: JSON.stringify({
139
+ pluginName,
140
+ }),
141
+ });
142
+ if (!payload.availability) {
143
+ throw new Error(`Plugin availability is empty: ${pluginName}`);
144
+ }
145
+ return payload.availability;
146
+ }
147
+ async function buildRuntimePluginPayload(selectedAgent, authHeaders) {
148
+ const baseUrl = String(selectedAgent.baseUrl || "").trim();
149
+ const configMap = buildPluginConfigMap();
150
+ const pluginViews = await loadPluginViews(baseUrl, authHeaders);
151
+ const plugins = await Promise.all(pluginViews.map(async (view) => {
152
+ return {
153
+ ...view,
154
+ availability: await loadRuntimePluginAvailability(baseUrl, view.name, authHeaders),
155
+ config: configMap.get(view.name) || {
156
+ actions: [],
157
+ },
158
+ };
159
+ }));
160
+ return {
161
+ success: true,
162
+ runtimeConnected: true,
163
+ plugins,
164
+ };
165
+ }
166
+ async function runGlobalPluginAction(input) {
167
+ const pluginName = String(input.pluginName || "").trim();
168
+ const actionName = String(input.actionName || "").trim();
169
+ const plugin = findBuiltinPlugin(pluginName);
170
+ if (!plugin) {
171
+ return {
172
+ success: false,
173
+ error: `Unknown plugin: ${pluginName}`,
174
+ message: `Unknown plugin: ${pluginName}`,
175
+ };
176
+ }
177
+ if (actionName === "on" || actionName === "off") {
178
+ if (plugin.name === "auth") {
179
+ return {
180
+ success: false,
181
+ error: `Plugin "${plugin.name}" cannot be disabled globally`,
182
+ message: `Plugin "${plugin.name}" cannot be disabled globally`,
183
+ };
184
+ }
185
+ setCityPluginEnabled(plugin.name, actionName === "on");
186
+ return {
187
+ success: true,
188
+ message: `Plugin "${plugin.name}" ${actionName === "on" ? "enabled" : "disabled"} in city config`,
189
+ data: {
190
+ pluginName: plugin.name,
191
+ enabled: actionName === "on",
192
+ },
193
+ };
194
+ }
195
+ const projectRoot = String(input.projectRoot || "").trim();
196
+ if (!projectRoot) {
197
+ return {
198
+ success: false,
199
+ error: `Plugin "${plugin.name}" action "${actionName}" requires a selected agent`,
200
+ message: `Plugin "${plugin.name}" action "${actionName}" requires a selected agent`,
201
+ };
202
+ }
203
+ return runLocalPluginAction({
204
+ projectRoot,
205
+ pluginName: plugin.name,
206
+ actionName,
207
+ payload: input.payload,
208
+ });
209
+ }
210
+ /**
211
+ * 注册 Plugin 管理 API 路由。
212
+ */
213
+ export function registerPlatformPluginRoutes(params) {
214
+ const app = params.app;
215
+ app.get("/api/ui/plugins", async (c) => {
216
+ try {
217
+ const requestedAgentId = params.readRequestedAgentId(c.req.raw);
218
+ if (!requestedAgentId) {
219
+ return c.json(buildGlobalPluginPayload());
220
+ }
221
+ const selectedAgent = await params.resolveSelectedAgent(requestedAgentId);
222
+ if (!selectedAgent || !selectedAgent.baseUrl) {
223
+ return c.json(buildAgentPluginPayload({
224
+ projectRoot: selectedAgent?.projectRoot,
225
+ runtimeConnected: false,
226
+ runtimeError: "No running agent selected.",
227
+ }));
228
+ }
229
+ try {
230
+ return c.json(await buildRuntimePluginPayload(selectedAgent, readRuntimeForwardAuthHeaders(c.req.raw)));
231
+ }
232
+ catch (runtimeError) {
233
+ return c.json(buildAgentPluginPayload({
234
+ projectRoot: selectedAgent.projectRoot,
235
+ runtimeConnected: false,
236
+ runtimeError: getErrorMessage(runtimeError),
237
+ }));
238
+ }
239
+ }
240
+ catch (error) {
241
+ return c.json({
242
+ success: false,
243
+ error: getErrorMessage(error),
244
+ }, 500);
245
+ }
246
+ });
247
+ app.post("/api/ui/plugins/action", async (c) => {
248
+ try {
249
+ const body = await c.req.json().catch(() => null);
250
+ const pluginName = String(body?.pluginName || "").trim();
251
+ const actionName = String(body?.actionName || "").trim();
252
+ if (!pluginName) {
253
+ return c.json({ success: false, error: "pluginName is required" }, 400);
254
+ }
255
+ if (!actionName) {
256
+ return c.json({ success: false, error: "actionName is required" }, 400);
257
+ }
258
+ const requestedAgentId = params.readRequestedAgentId(c.req.raw);
259
+ const selectedAgent = requestedAgentId
260
+ ? await params.resolveSelectedAgent(requestedAgentId)
261
+ : null;
262
+ const result = await runGlobalPluginAction({
263
+ pluginName,
264
+ actionName,
265
+ projectRoot: String(selectedAgent?.projectRoot || "").trim() || undefined,
266
+ payload: body?.payload,
267
+ });
268
+ return c.json({
269
+ ...result,
270
+ pluginName,
271
+ actionName,
272
+ }, result.success ? 200 : 400);
273
+ }
274
+ catch (error) {
275
+ return c.json({
276
+ success: false,
277
+ error: getErrorMessage(error),
278
+ }, 500);
279
+ }
280
+ });
281
+ }
282
+ //# sourceMappingURL=PluginApiRoutes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PluginApiRoutes.js","sourceRoot":"","sources":["../../src/control/PluginApiRoutes.ts"],"names":[],"mappings":"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"}