agim-cli 1.2.44 → 1.2.48

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 (432) hide show
  1. package/CHANGELOG.md +295 -0
  2. package/README.md +39 -5
  3. package/README.zh-CN.md +40 -6
  4. package/dist/cli-ui/config-wizard.js +15 -2
  5. package/dist/cli-ui/config-wizard.js.map +1 -1
  6. package/dist/cli-ui/diag.d.ts +29 -0
  7. package/dist/cli-ui/diag.d.ts.map +1 -0
  8. package/dist/cli-ui/diag.js +135 -0
  9. package/dist/cli-ui/diag.js.map +1 -0
  10. package/dist/cli-ui/i18n.d.ts +36 -0
  11. package/dist/cli-ui/i18n.d.ts.map +1 -1
  12. package/dist/cli-ui/i18n.js +97 -0
  13. package/dist/cli-ui/i18n.js.map +1 -1
  14. package/dist/cli-ui/setup-llm.d.ts +30 -0
  15. package/dist/cli-ui/setup-llm.d.ts.map +1 -0
  16. package/dist/cli-ui/setup-llm.js +460 -0
  17. package/dist/cli-ui/setup-llm.js.map +1 -0
  18. package/dist/cli-ui/setup-mcp.d.ts +19 -0
  19. package/dist/cli-ui/setup-mcp.d.ts.map +1 -0
  20. package/dist/cli-ui/setup-mcp.js +308 -0
  21. package/dist/cli-ui/setup-mcp.js.map +1 -0
  22. package/dist/cli-ui/token-menu.js +2 -2
  23. package/dist/cli-ui/token-menu.js.map +1 -1
  24. package/dist/cli.js +100 -22
  25. package/dist/cli.js.map +1 -1
  26. package/dist/core/access-token.d.ts +16 -5
  27. package/dist/core/access-token.d.ts.map +1 -1
  28. package/dist/core/access-token.js +82 -13
  29. package/dist/core/access-token.js.map +1 -1
  30. package/dist/core/agent-cwd.d.ts.map +1 -1
  31. package/dist/core/agent-cwd.js +46 -0
  32. package/dist/core/agent-cwd.js.map +1 -1
  33. package/dist/core/approval-bus.d.ts +22 -0
  34. package/dist/core/approval-bus.d.ts.map +1 -1
  35. package/dist/core/approval-bus.js +93 -0
  36. package/dist/core/approval-bus.js.map +1 -1
  37. package/dist/core/ask-user-router.d.ts +24 -0
  38. package/dist/core/ask-user-router.d.ts.map +1 -0
  39. package/dist/core/ask-user-router.js +84 -0
  40. package/dist/core/ask-user-router.js.map +1 -0
  41. package/dist/core/ask-user-rpc.d.ts +80 -0
  42. package/dist/core/ask-user-rpc.d.ts.map +1 -0
  43. package/dist/core/ask-user-rpc.js +388 -0
  44. package/dist/core/ask-user-rpc.js.map +1 -0
  45. package/dist/core/audit-log.d.ts +1 -1
  46. package/dist/core/audit-log.d.ts.map +1 -1
  47. package/dist/core/audit-log.js.map +1 -1
  48. package/dist/core/commands/builtin.d.ts.map +1 -1
  49. package/dist/core/commands/builtin.js +21 -5
  50. package/dist/core/commands/builtin.js.map +1 -1
  51. package/dist/core/commands/goal.d.ts +3 -0
  52. package/dist/core/commands/goal.d.ts.map +1 -0
  53. package/dist/core/commands/goal.js +240 -0
  54. package/dist/core/commands/goal.js.map +1 -0
  55. package/dist/core/commands/heartbeat.d.ts +3 -0
  56. package/dist/core/commands/heartbeat.d.ts.map +1 -0
  57. package/dist/core/commands/heartbeat.js +219 -0
  58. package/dist/core/commands/heartbeat.js.map +1 -0
  59. package/dist/core/commands/router-compare.d.ts +3 -0
  60. package/dist/core/commands/router-compare.d.ts.map +1 -0
  61. package/dist/core/commands/router-compare.js +81 -0
  62. package/dist/core/commands/router-compare.js.map +1 -0
  63. package/dist/core/commands/router.d.ts.map +1 -1
  64. package/dist/core/commands/router.js +9 -1
  65. package/dist/core/commands/router.js.map +1 -1
  66. package/dist/core/commands/skill.d.ts +3 -0
  67. package/dist/core/commands/skill.d.ts.map +1 -0
  68. package/dist/core/commands/skill.js +91 -0
  69. package/dist/core/commands/skill.js.map +1 -0
  70. package/dist/core/config-schema.d.ts +28 -0
  71. package/dist/core/config-schema.d.ts.map +1 -1
  72. package/dist/core/config-schema.js +124 -0
  73. package/dist/core/config-schema.js.map +1 -1
  74. package/dist/core/goals.d.ts +81 -0
  75. package/dist/core/goals.d.ts.map +1 -0
  76. package/dist/core/goals.js +361 -0
  77. package/dist/core/goals.js.map +1 -0
  78. package/dist/core/heartbeat-store.d.ts +90 -0
  79. package/dist/core/heartbeat-store.d.ts.map +1 -0
  80. package/dist/core/heartbeat-store.js +302 -0
  81. package/dist/core/heartbeat-store.js.map +1 -0
  82. package/dist/core/heartbeat.d.ts +35 -0
  83. package/dist/core/heartbeat.d.ts.map +1 -0
  84. package/dist/core/heartbeat.js +332 -0
  85. package/dist/core/heartbeat.js.map +1 -0
  86. package/dist/core/intent-llm.d.ts +9 -0
  87. package/dist/core/intent-llm.d.ts.map +1 -1
  88. package/dist/core/intent-llm.js +77 -32
  89. package/dist/core/intent-llm.js.map +1 -1
  90. package/dist/core/llm/agent-loop.d.ts +112 -0
  91. package/dist/core/llm/agent-loop.d.ts.map +1 -0
  92. package/dist/core/llm/agent-loop.js +313 -0
  93. package/dist/core/llm/agent-loop.js.map +1 -0
  94. package/dist/core/llm/anthropic-provider.d.ts +53 -0
  95. package/dist/core/llm/anthropic-provider.d.ts.map +1 -0
  96. package/dist/core/llm/anthropic-provider.js +339 -0
  97. package/dist/core/llm/anthropic-provider.js.map +1 -0
  98. package/dist/core/llm/auto-compact.d.ts +35 -0
  99. package/dist/core/llm/auto-compact.d.ts.map +1 -0
  100. package/dist/core/llm/auto-compact.js +149 -0
  101. package/dist/core/llm/auto-compact.js.map +1 -0
  102. package/dist/core/llm/builtin-dispatcher.d.ts +21 -0
  103. package/dist/core/llm/builtin-dispatcher.d.ts.map +1 -0
  104. package/dist/core/llm/builtin-dispatcher.js +196 -0
  105. package/dist/core/llm/builtin-dispatcher.js.map +1 -0
  106. package/dist/core/llm/imhub-dispatcher.d.ts +27 -0
  107. package/dist/core/llm/imhub-dispatcher.d.ts.map +1 -0
  108. package/dist/core/llm/imhub-dispatcher.js +308 -0
  109. package/dist/core/llm/imhub-dispatcher.js.map +1 -0
  110. package/dist/core/llm/index.d.ts +11 -0
  111. package/dist/core/llm/index.d.ts.map +1 -0
  112. package/dist/core/llm/index.js +16 -0
  113. package/dist/core/llm/index.js.map +1 -0
  114. package/dist/core/llm/introspection.d.ts +73 -0
  115. package/dist/core/llm/introspection.d.ts.map +1 -0
  116. package/dist/core/llm/introspection.js +90 -0
  117. package/dist/core/llm/introspection.js.map +1 -0
  118. package/dist/core/llm/mcp-client.d.ts +80 -0
  119. package/dist/core/llm/mcp-client.d.ts.map +1 -0
  120. package/dist/core/llm/mcp-client.js +270 -0
  121. package/dist/core/llm/mcp-client.js.map +1 -0
  122. package/dist/core/llm/mcp-registry.d.ts +57 -0
  123. package/dist/core/llm/mcp-registry.d.ts.map +1 -0
  124. package/dist/core/llm/mcp-registry.js +155 -0
  125. package/dist/core/llm/mcp-registry.js.map +1 -0
  126. package/dist/core/llm/openai-compat-provider.d.ts +65 -0
  127. package/dist/core/llm/openai-compat-provider.d.ts.map +1 -0
  128. package/dist/core/llm/openai-compat-provider.js +451 -0
  129. package/dist/core/llm/openai-compat-provider.js.map +1 -0
  130. package/dist/core/llm/policy-approval-gate.d.ts +30 -0
  131. package/dist/core/llm/policy-approval-gate.d.ts.map +1 -0
  132. package/dist/core/llm/policy-approval-gate.js +86 -0
  133. package/dist/core/llm/policy-approval-gate.js.map +1 -0
  134. package/dist/core/llm/provider-base.d.ts +302 -0
  135. package/dist/core/llm/provider-base.d.ts.map +1 -0
  136. package/dist/core/llm/provider-base.js +222 -0
  137. package/dist/core/llm/provider-base.js.map +1 -0
  138. package/dist/core/llm/registry.d.ts +44 -0
  139. package/dist/core/llm/registry.d.ts.map +1 -0
  140. package/dist/core/llm/registry.js +160 -0
  141. package/dist/core/llm/registry.js.map +1 -0
  142. package/dist/core/llm/secrets.d.ts +46 -0
  143. package/dist/core/llm/secrets.d.ts.map +1 -0
  144. package/dist/core/llm/secrets.js +157 -0
  145. package/dist/core/llm/secrets.js.map +1 -0
  146. package/dist/core/llm/tool-dispatcher.d.ts +37 -0
  147. package/dist/core/llm/tool-dispatcher.d.ts.map +1 -0
  148. package/dist/core/llm/tool-dispatcher.js +85 -0
  149. package/dist/core/llm/tool-dispatcher.js.map +1 -0
  150. package/dist/core/memory-consolidate.d.ts.map +1 -1
  151. package/dist/core/memory-consolidate.js +38 -23
  152. package/dist/core/memory-consolidate.js.map +1 -1
  153. package/dist/core/memory-distill.d.ts.map +1 -1
  154. package/dist/core/memory-distill.js +51 -25
  155. package/dist/core/memory-distill.js.map +1 -1
  156. package/dist/core/memory-rpc.d.ts.map +1 -1
  157. package/dist/core/memory-rpc.js +6 -0
  158. package/dist/core/memory-rpc.js.map +1 -1
  159. package/dist/core/message-sink.d.ts.map +1 -1
  160. package/dist/core/message-sink.js +76 -0
  161. package/dist/core/message-sink.js.map +1 -1
  162. package/dist/core/notification-evaluator.d.ts +49 -0
  163. package/dist/core/notification-evaluator.d.ts.map +1 -0
  164. package/dist/core/notification-evaluator.js +232 -0
  165. package/dist/core/notification-evaluator.js.map +1 -0
  166. package/dist/core/onboarding.d.ts.map +1 -1
  167. package/dist/core/onboarding.js +10 -0
  168. package/dist/core/onboarding.js.map +1 -1
  169. package/dist/core/persona.d.ts +10 -0
  170. package/dist/core/persona.d.ts.map +1 -1
  171. package/dist/core/persona.js +28 -14
  172. package/dist/core/persona.js.map +1 -1
  173. package/dist/core/push-rpc.d.ts +8 -0
  174. package/dist/core/push-rpc.d.ts.map +1 -1
  175. package/dist/core/push-rpc.js +41 -1
  176. package/dist/core/push-rpc.js.map +1 -1
  177. package/dist/core/registry.d.ts.map +1 -1
  178. package/dist/core/registry.js +6 -0
  179. package/dist/core/registry.js.map +1 -1
  180. package/dist/core/render-router.d.ts.map +1 -1
  181. package/dist/core/render-router.js +23 -6
  182. package/dist/core/render-router.js.map +1 -1
  183. package/dist/core/router-compare.d.ts +76 -0
  184. package/dist/core/router-compare.d.ts.map +1 -0
  185. package/dist/core/router-compare.js +253 -0
  186. package/dist/core/router-compare.js.map +1 -0
  187. package/dist/core/router.d.ts.map +1 -1
  188. package/dist/core/router.js +25 -1
  189. package/dist/core/router.js.map +1 -1
  190. package/dist/core/skills/builtin/agim-self/SKILL.md +81 -0
  191. package/dist/core/skills/loader.d.ts +120 -0
  192. package/dist/core/skills/loader.d.ts.map +1 -0
  193. package/dist/core/skills/loader.js +577 -0
  194. package/dist/core/skills/loader.js.map +1 -0
  195. package/dist/core/skills-rpc.d.ts +44 -0
  196. package/dist/core/skills-rpc.d.ts.map +1 -0
  197. package/dist/core/skills-rpc.js +71 -0
  198. package/dist/core/skills-rpc.js.map +1 -0
  199. package/dist/core/types.d.ts +35 -0
  200. package/dist/core/types.d.ts.map +1 -1
  201. package/dist/core/util/format-age.d.ts +20 -0
  202. package/dist/core/util/format-age.d.ts.map +1 -0
  203. package/dist/core/util/format-age.js +86 -0
  204. package/dist/core/util/format-age.js.map +1 -0
  205. package/dist/core/viewer-config.d.ts +15 -7
  206. package/dist/core/viewer-config.d.ts.map +1 -1
  207. package/dist/core/viewer-config.js +18 -12
  208. package/dist/core/viewer-config.js.map +1 -1
  209. package/dist/plugins/agents/acp/acp-adapter.d.ts +3 -0
  210. package/dist/plugins/agents/acp/acp-adapter.d.ts.map +1 -1
  211. package/dist/plugins/agents/acp/acp-adapter.js +12 -0
  212. package/dist/plugins/agents/acp/acp-adapter.js.map +1 -1
  213. package/dist/plugins/agents/antigravity/index.d.ts +1 -0
  214. package/dist/plugins/agents/antigravity/index.d.ts.map +1 -1
  215. package/dist/plugins/agents/antigravity/index.js +1 -0
  216. package/dist/plugins/agents/antigravity/index.js.map +1 -1
  217. package/dist/plugins/agents/claude-code/index.d.ts +1 -0
  218. package/dist/plugins/agents/claude-code/index.d.ts.map +1 -1
  219. package/dist/plugins/agents/claude-code/index.js +1 -0
  220. package/dist/plugins/agents/claude-code/index.js.map +1 -1
  221. package/dist/plugins/agents/claude-code/mcp-approval-server.d.ts +22 -0
  222. package/dist/plugins/agents/claude-code/mcp-approval-server.d.ts.map +1 -1
  223. package/dist/plugins/agents/claude-code/mcp-approval-server.js +157 -0
  224. package/dist/plugins/agents/claude-code/mcp-approval-server.js.map +1 -1
  225. package/dist/plugins/agents/codex/index.d.ts +1 -0
  226. package/dist/plugins/agents/codex/index.d.ts.map +1 -1
  227. package/dist/plugins/agents/codex/index.js +1 -0
  228. package/dist/plugins/agents/codex/index.js.map +1 -1
  229. package/dist/plugins/agents/native/index.d.ts +34 -0
  230. package/dist/plugins/agents/native/index.d.ts.map +1 -0
  231. package/dist/plugins/agents/native/index.js +598 -0
  232. package/dist/plugins/agents/native/index.js.map +1 -0
  233. package/dist/plugins/agents/opencode/opencode-stdio-adapter.d.ts +1 -0
  234. package/dist/plugins/agents/opencode/opencode-stdio-adapter.d.ts.map +1 -1
  235. package/dist/plugins/agents/opencode/opencode-stdio-adapter.js +1 -0
  236. package/dist/plugins/agents/opencode/opencode-stdio-adapter.js.map +1 -1
  237. package/dist/plugins/messengers/wechat/ilink-adapter.d.ts +4 -0
  238. package/dist/plugins/messengers/wechat/ilink-adapter.d.ts.map +1 -1
  239. package/dist/plugins/messengers/wechat/ilink-adapter.js +26 -1
  240. package/dist/plugins/messengers/wechat/ilink-adapter.js.map +1 -1
  241. package/dist/web/agim-skills-api.d.ts +4 -0
  242. package/dist/web/agim-skills-api.d.ts.map +1 -0
  243. package/dist/web/agim-skills-api.js +150 -0
  244. package/dist/web/agim-skills-api.js.map +1 -0
  245. package/dist/web/background-tasks-api.d.ts +7 -0
  246. package/dist/web/background-tasks-api.d.ts.map +1 -0
  247. package/dist/web/background-tasks-api.js +225 -0
  248. package/dist/web/background-tasks-api.js.map +1 -0
  249. package/dist/web/llm-api.d.ts +8 -0
  250. package/dist/web/llm-api.d.ts.map +1 -0
  251. package/dist/web/llm-api.js +300 -0
  252. package/dist/web/llm-api.js.map +1 -0
  253. package/dist/web/mcp-api.d.ts +8 -0
  254. package/dist/web/mcp-api.d.ts.map +1 -0
  255. package/dist/web/mcp-api.js +205 -0
  256. package/dist/web/mcp-api.js.map +1 -0
  257. package/dist/web/public/assets/{a2a-Bg_mT0z1.js → a2a-Mke0F7ZM.js} +3 -3
  258. package/dist/web/public/assets/{a2a-Bg_mT0z1.js.map → a2a-Mke0F7ZM.js.map} +1 -1
  259. package/dist/web/public/assets/{activity-U9AaNlDt.js → activity-0zGnf1_m.js} +2 -2
  260. package/dist/web/public/assets/{activity-U9AaNlDt.js.map → activity-0zGnf1_m.js.map} +1 -1
  261. package/dist/web/public/assets/{admins-BTC_YEK9.js → admins-DSi3KRky.js} +3 -3
  262. package/dist/web/public/assets/{admins-BTC_YEK9.js.map → admins-DSi3KRky.js.map} +1 -1
  263. package/dist/web/public/assets/agents-BLWe20EJ.js +7 -0
  264. package/dist/web/public/assets/agents-BLWe20EJ.js.map +1 -0
  265. package/dist/web/public/assets/{approvals-Boj7iXz4.js → approvals-Cu_JdM-8.js} +3 -3
  266. package/dist/web/public/assets/{approvals-Boj7iXz4.js.map → approvals-Cu_JdM-8.js.map} +1 -1
  267. package/dist/web/public/assets/asks-DfV8vxey.js +7 -0
  268. package/dist/web/public/assets/asks-DfV8vxey.js.map +1 -0
  269. package/dist/web/public/assets/{audit-MprCFoy_.js → audit-2EVhhvGV.js} +2 -2
  270. package/dist/web/public/assets/{audit-MprCFoy_.js.map → audit-2EVhhvGV.js.map} +1 -1
  271. package/dist/web/public/assets/bell-Wz_wuOa_.js +7 -0
  272. package/dist/web/public/assets/bell-Wz_wuOa_.js.map +1 -0
  273. package/dist/web/public/assets/{bgjobs-B6XvxURz.js → bgjobs-DXROZFAW.js} +2 -2
  274. package/dist/web/public/assets/{bgjobs-B6XvxURz.js.map → bgjobs-DXROZFAW.js.map} +1 -1
  275. package/dist/web/public/assets/{brain-C5HejASN.js → brain-Dh5VOzRL.js} +2 -2
  276. package/dist/web/public/assets/{brain-C5HejASN.js.map → brain-Dh5VOzRL.js.map} +1 -1
  277. package/dist/web/public/assets/{briefcase-DkCTxO1A.js → briefcase-DfxbvM9i.js} +2 -2
  278. package/dist/web/public/assets/{briefcase-DkCTxO1A.js.map → briefcase-DfxbvM9i.js.map} +1 -1
  279. package/dist/web/public/assets/{chevron-right-DEyrYFz4.js → chevron-right-DU8Xla1M.js} +2 -2
  280. package/dist/web/public/assets/{chevron-right-DEyrYFz4.js.map → chevron-right-DU8Xla1M.js.map} +1 -1
  281. package/dist/web/public/assets/{circle-check-bADFEXGw.js → circle-check-Be_S993G.js} +2 -2
  282. package/dist/web/public/assets/{circle-check-bADFEXGw.js.map → circle-check-Be_S993G.js.map} +1 -1
  283. package/dist/web/public/assets/{circle-check-big-U4xrkHiS.js → circle-check-big-CsQkLR1u.js} +2 -2
  284. package/dist/web/public/assets/{circle-check-big-U4xrkHiS.js.map → circle-check-big-CsQkLR1u.js.map} +1 -1
  285. package/dist/web/public/assets/{circle-x-C6qY5UUl.js → circle-x-qkQu1Swu.js} +2 -2
  286. package/dist/web/public/assets/{circle-x-C6qY5UUl.js.map → circle-x-qkQu1Swu.js.map} +1 -1
  287. package/dist/web/public/assets/{confirm-dialog-B53cbWzX.js → confirm-dialog-Bm6MsLXZ.js} +2 -2
  288. package/dist/web/public/assets/{confirm-dialog-B53cbWzX.js.map → confirm-dialog-Bm6MsLXZ.js.map} +1 -1
  289. package/dist/web/public/assets/{data-table-BKTemkw9.js → data-table-Dw4Df09-.js} +5 -5
  290. package/dist/web/public/assets/{data-table-BKTemkw9.js.map → data-table-Dw4Df09-.js.map} +1 -1
  291. package/dist/web/public/assets/{dialog-Cevi7KvQ.js → dialog-CNsc4COh.js} +3 -3
  292. package/dist/web/public/assets/{dialog-Cevi7KvQ.js.map → dialog-CNsc4COh.js.map} +1 -1
  293. package/dist/web/public/assets/{download-DwJNwdwV.js → download-Bnhk_vDY.js} +2 -2
  294. package/dist/web/public/assets/{download-DwJNwdwV.js.map → download-Bnhk_vDY.js.map} +1 -1
  295. package/dist/web/public/assets/{email-CZVaRhG_.js → email-jgAX8liM.js} +3 -3
  296. package/dist/web/public/assets/{email-CZVaRhG_.js.map → email-jgAX8liM.js.map} +1 -1
  297. package/dist/web/public/assets/{empty-state-C87S9Wor.js → empty-state-D8QXQ5y9.js} +2 -2
  298. package/dist/web/public/assets/{empty-state-C87S9Wor.js.map → empty-state-D8QXQ5y9.js.map} +1 -1
  299. package/dist/web/public/assets/{external-link-CIM1wjHP.js → external-link-C8AYvhBb.js} +2 -2
  300. package/dist/web/public/assets/{external-link-CIM1wjHP.js.map → external-link-C8AYvhBb.js.map} +1 -1
  301. package/dist/web/public/assets/{eye-TUAOhz72.js → eye-pmI_4E8x.js} +4 -4
  302. package/dist/web/public/assets/{eye-TUAOhz72.js.map → eye-pmI_4E8x.js.map} +1 -1
  303. package/dist/web/public/assets/{facts-ByM1VHCp.js → facts-BRHLLX2u.js} +2 -2
  304. package/dist/web/public/assets/{facts-ByM1VHCp.js.map → facts-BRHLLX2u.js.map} +1 -1
  305. package/dist/web/public/assets/goals-p7cNp01l.js +17 -0
  306. package/dist/web/public/assets/goals-p7cNp01l.js.map +1 -0
  307. package/dist/web/public/assets/{health-B4GF06J-.js → health-CuGIXg8C.js} +2 -2
  308. package/dist/web/public/assets/{health-B4GF06J-.js.map → health-CuGIXg8C.js.map} +1 -1
  309. package/dist/web/public/assets/heart-pulse-D0AHQl1d.js +7 -0
  310. package/dist/web/public/assets/heart-pulse-D0AHQl1d.js.map +1 -0
  311. package/dist/web/public/assets/heartbeat-DJRDS2GQ.js +7 -0
  312. package/dist/web/public/assets/heartbeat-DJRDS2GQ.js.map +1 -0
  313. package/dist/web/public/assets/hot-B1qKTiGD.js +17 -0
  314. package/dist/web/public/assets/hot-B1qKTiGD.js.map +1 -0
  315. package/dist/web/public/assets/index-B7QRVy9N.css +1 -0
  316. package/dist/web/public/assets/index-XJngV1gH.js +166 -0
  317. package/dist/web/public/assets/index-XJngV1gH.js.map +1 -0
  318. package/dist/web/public/assets/installed-Dz4-KevJ.js +31 -0
  319. package/dist/web/public/assets/installed-Dz4-KevJ.js.map +1 -0
  320. package/dist/web/public/assets/{jobs-DwA9Ip87.js → jobs-kwOypiWd.js} +2 -2
  321. package/dist/web/public/assets/{jobs-DwA9Ip87.js.map → jobs-kwOypiWd.js.map} +1 -1
  322. package/dist/web/public/assets/layout-01n3Aibo.js +2 -0
  323. package/dist/web/public/assets/layout-01n3Aibo.js.map +1 -0
  324. package/dist/web/public/assets/layout-CVYe2vN8.js +2 -0
  325. package/dist/web/public/assets/layout-CVYe2vN8.js.map +1 -0
  326. package/dist/web/public/assets/{layout-CR5gLapT.js → layout-CbHxH58i.js} +2 -2
  327. package/dist/web/public/assets/{layout-CR5gLapT.js.map → layout-CbHxH58i.js.map} +1 -1
  328. package/dist/web/public/assets/layout-DD1Dei48.js +2 -0
  329. package/dist/web/public/assets/layout-DD1Dei48.js.map +1 -0
  330. package/dist/web/public/assets/{layout-zotlJ5fW.js → layout-s11iwkL-.js} +2 -2
  331. package/dist/web/public/assets/{layout-zotlJ5fW.js.map → layout-s11iwkL-.js.map} +1 -1
  332. package/dist/web/public/assets/llm-DPlK10Lg.js +7 -0
  333. package/dist/web/public/assets/llm-DPlK10Lg.js.map +1 -0
  334. package/dist/web/public/assets/{loader-circle-BFp6Oc8_.js → loader-circle-DymEG5Cl.js} +2 -2
  335. package/dist/web/public/assets/{loader-circle-BFp6Oc8_.js.map → loader-circle-DymEG5Cl.js.map} +1 -1
  336. package/dist/web/public/assets/{map-pin-DPqnsBIG.js → map-pin-CyZg1-Jk.js} +2 -2
  337. package/dist/web/public/assets/{map-pin-DPqnsBIG.js.map → map-pin-CyZg1-Jk.js.map} +1 -1
  338. package/dist/web/public/assets/mcp-CiifW_qp.js +7 -0
  339. package/dist/web/public/assets/mcp-CiifW_qp.js.map +1 -0
  340. package/dist/web/public/assets/{memos-DCACQN26.js → memos-Bsiq64qW.js} +2 -2
  341. package/dist/web/public/assets/{memos-DCACQN26.js.map → memos-Bsiq64qW.js.map} +1 -1
  342. package/dist/web/public/assets/{messengers-CwWP1qI4.js → messengers-alGJK9dO.js} +3 -3
  343. package/dist/web/public/assets/{messengers-CwWP1qI4.js.map → messengers-alGJK9dO.js.map} +1 -1
  344. package/dist/web/public/assets/native-agent-CgzcqRsU.js +7 -0
  345. package/dist/web/public/assets/native-agent-CgzcqRsU.js.map +1 -0
  346. package/dist/web/public/assets/{network-CrMEVz4-.js → network-BSRJfeGk.js} +2 -2
  347. package/dist/web/public/assets/{network-CrMEVz4-.js.map → network-BSRJfeGk.js.map} +1 -1
  348. package/dist/web/public/assets/{outbox-C7FpZzwS.js → outbox-DSDls9xU.js} +3 -3
  349. package/dist/web/public/assets/{outbox-C7FpZzwS.js.map → outbox-DSDls9xU.js.map} +1 -1
  350. package/dist/web/public/assets/{pagination-Cgt8W6EX.js → pagination-DVXNZ2ti.js} +3 -3
  351. package/dist/web/public/assets/{pagination-Cgt8W6EX.js.map → pagination-DVXNZ2ti.js.map} +1 -1
  352. package/dist/web/public/assets/{persona-Bjty6uqM.js → persona-BB1gIwTX.js} +2 -2
  353. package/dist/web/public/assets/{persona-Bjty6uqM.js.map → persona-BB1gIwTX.js.map} +1 -1
  354. package/dist/web/public/assets/{play-CEoS1N8t.js → play-CcECAHfL.js} +2 -2
  355. package/dist/web/public/assets/{play-CEoS1N8t.js.map → play-CcECAHfL.js.map} +1 -1
  356. package/dist/web/public/assets/plus-DrStBHss.js +7 -0
  357. package/dist/web/public/assets/plus-DrStBHss.js.map +1 -0
  358. package/dist/web/public/assets/policy-BgDYTxy7.js +2 -0
  359. package/dist/web/public/assets/{policy-DwI-ov9J.js.map → policy-BgDYTxy7.js.map} +1 -1
  360. package/dist/web/public/assets/{refresh-ccw-CPSYEbgh.js → refresh-ccw-BBRPVLH8.js} +2 -2
  361. package/dist/web/public/assets/{refresh-ccw-CPSYEbgh.js.map → refresh-ccw-BBRPVLH8.js.map} +1 -1
  362. package/dist/web/public/assets/{reminders-X-QFSWvZ.js → reminders-jwy196Xw.js} +4 -9
  363. package/dist/web/public/assets/reminders-jwy196Xw.js.map +1 -0
  364. package/dist/web/public/assets/{save-tS3IBPf3.js → save-iBtyruco.js} +2 -2
  365. package/dist/web/public/assets/{save-tS3IBPf3.js.map → save-iBtyruco.js.map} +1 -1
  366. package/dist/web/public/assets/{schedules-CfCNvhCV.js → schedules-DDl_Sr5r.js} +3 -3
  367. package/dist/web/public/assets/{schedules-CfCNvhCV.js.map → schedules-DDl_Sr5r.js.map} +1 -1
  368. package/dist/web/public/assets/{search-BPvPCccn.js → search-Yb1S22sv.js} +2 -2
  369. package/dist/web/public/assets/{search-BPvPCccn.js.map → search-Yb1S22sv.js.map} +1 -1
  370. package/dist/web/public/assets/{service-DSitDFzD.js → service-jrg0kMtK.js} +3 -3
  371. package/dist/web/public/assets/{service-DSitDFzD.js.map → service-jrg0kMtK.js.map} +1 -1
  372. package/dist/web/public/assets/{status-badge-HSHkhdur.js → status-badge-Arxyw3TL.js} +2 -2
  373. package/dist/web/public/assets/{status-badge-HSHkhdur.js.map → status-badge-Arxyw3TL.js.map} +1 -1
  374. package/dist/web/public/assets/{subtasks-eKq_P0v6.js → subtasks-CkyuMv_X.js} +3 -3
  375. package/dist/web/public/assets/{subtasks-eKq_P0v6.js.map → subtasks-CkyuMv_X.js.map} +1 -1
  376. package/dist/web/public/assets/{table-BBISYTH-.js → table-BKdG9tsY.js} +2 -2
  377. package/dist/web/public/assets/{table-BBISYTH-.js.map → table-BKdG9tsY.js.map} +1 -1
  378. package/dist/web/public/assets/{topn-JA8llaUI.js → topn-BpX8BKWS.js} +3 -3
  379. package/dist/web/public/assets/{topn-JA8llaUI.js.map → topn-BpX8BKWS.js.map} +1 -1
  380. package/dist/web/public/assets/{trash-2-D8F96aYm.js → trash-2-DxKJo_-6.js} +3 -3
  381. package/dist/web/public/assets/{trash-2-D8F96aYm.js.map → trash-2-DxKJo_-6.js.map} +1 -1
  382. package/dist/web/public/assets/use-background-tasks-vqoDXiAq.js +2 -0
  383. package/dist/web/public/assets/use-background-tasks-vqoDXiAq.js.map +1 -0
  384. package/dist/web/public/assets/use-llm-admin-D4snixaM.js +2 -0
  385. package/dist/web/public/assets/use-llm-admin-D4snixaM.js.map +1 -0
  386. package/dist/web/public/assets/{use-memory-BDa1R8Tf.js → use-memory-Cqf3xywK.js} +2 -2
  387. package/dist/web/public/assets/{use-memory-BDa1R8Tf.js.map → use-memory-Cqf3xywK.js.map} +1 -1
  388. package/dist/web/public/assets/{use-observability-XgxLMQsY.js → use-observability-Thh7LWoE.js} +2 -2
  389. package/dist/web/public/assets/{use-observability-XgxLMQsY.js.map → use-observability-Thh7LWoE.js.map} +1 -1
  390. package/dist/web/public/assets/{use-settings-Bc4s-JUD.js → use-settings-DRhH8owt.js} +2 -2
  391. package/dist/web/public/assets/{use-settings-Bc4s-JUD.js.map → use-settings-DRhH8owt.js.map} +1 -1
  392. package/dist/web/public/assets/{use-workspace-JalfqH6H.js → use-workspace-iLKz-h_7.js} +2 -2
  393. package/dist/web/public/assets/{use-workspace-JalfqH6H.js.map → use-workspace-iLKz-h_7.js.map} +1 -1
  394. package/dist/web/public/assets/useQuery-gnz30xMJ.js +2 -0
  395. package/dist/web/public/assets/{useQuery-DFryK9Pn.js.map → useQuery-gnz30xMJ.js.map} +1 -1
  396. package/dist/web/public/assets/{vector-G2dN_aut.js → vector-COjljy_4.js} +2 -2
  397. package/dist/web/public/assets/{vector-G2dN_aut.js.map → vector-COjljy_4.js.map} +1 -1
  398. package/dist/web/public/assets/viewer-AQHSc8hZ.js +12 -0
  399. package/dist/web/public/assets/viewer-AQHSc8hZ.js.map +1 -0
  400. package/dist/web/public/assets/{workspace-BaLZIgGn.js → workspace-DRtSCbx5.js} +4 -4
  401. package/dist/web/public/assets/{workspace-BaLZIgGn.js.map → workspace-DRtSCbx5.js.map} +1 -1
  402. package/dist/web/public/assets/{workspaces-cX_rV523.js → workspaces-BLR5ZBu6.js} +3 -3
  403. package/dist/web/public/assets/{workspaces-cX_rV523.js.map → workspaces-BLR5ZBu6.js.map} +1 -1
  404. package/dist/web/public/assets/{x-D5196-9X.js → x-DGQ0qjhc.js} +2 -2
  405. package/dist/web/public/assets/{x-D5196-9X.js.map → x-DGQ0qjhc.js.map} +1 -1
  406. package/dist/web/public/index.html +2 -2
  407. package/dist/web/server.d.ts.map +1 -1
  408. package/dist/web/server.js +45 -0
  409. package/dist/web/server.js.map +1 -1
  410. package/package.json +2 -2
  411. package/dist/web/public/assets/agents-o9odac79.js +0 -12
  412. package/dist/web/public/assets/agents-o9odac79.js.map +0 -1
  413. package/dist/web/public/assets/hot-O9Z19xXa.js +0 -17
  414. package/dist/web/public/assets/hot-O9Z19xXa.js.map +0 -1
  415. package/dist/web/public/assets/index-CITyis5g.js +0 -166
  416. package/dist/web/public/assets/index-CITyis5g.js.map +0 -1
  417. package/dist/web/public/assets/index-Cvacw7Jg.css +0 -1
  418. package/dist/web/public/assets/installed-CM34mlDU.js +0 -7
  419. package/dist/web/public/assets/installed-CM34mlDU.js.map +0 -1
  420. package/dist/web/public/assets/layout-BxrFilDN.js +0 -2
  421. package/dist/web/public/assets/layout-BxrFilDN.js.map +0 -1
  422. package/dist/web/public/assets/layout-CcJQxFci.js +0 -2
  423. package/dist/web/public/assets/layout-CcJQxFci.js.map +0 -1
  424. package/dist/web/public/assets/layout-DRRveTaR.js +0 -2
  425. package/dist/web/public/assets/layout-DRRveTaR.js.map +0 -1
  426. package/dist/web/public/assets/policy-DwI-ov9J.js +0 -2
  427. package/dist/web/public/assets/reminders-X-QFSWvZ.js.map +0 -1
  428. package/dist/web/public/assets/use-skills-DCOYAQ8s.js +0 -2
  429. package/dist/web/public/assets/use-skills-DCOYAQ8s.js.map +0 -1
  430. package/dist/web/public/assets/useQuery-DFryK9Pn.js +0 -2
  431. package/dist/web/public/assets/viewer-DliYQkQQ.js +0 -12
  432. package/dist/web/public/assets/viewer-DliYQkQQ.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"opencode-stdio-adapter.js","sourceRoot":"","sources":["../../../../src/plugins/agents/opencode/opencode-stdio-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opencode-stdio-adapter.js","sourceRoot":"","sources":["../../../../src/plugins/agents/opencode/opencode-stdio-adapter.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,10 @@ export declare class ILinkWeChatAdapter implements MessengerAdapter {
14
14
  stop(): Promise<void>;
15
15
  onMessage(handler: (ctx: MessageContext) => Promise<void>): void;
16
16
  sendMessage(threadId: string, text: string): Promise<void>;
17
+ /** Drop the cached + persisted context-token for a user. Called when
18
+ * wechat rejects a send with INVALID_PARAMS so the next inbound
19
+ * message rebuilds the cache from the fresh polling token. */
20
+ private invalidateContextToken;
17
21
  sendTyping(threadId: string, isTyping: boolean): Promise<void>;
18
22
  /**
19
23
  * Start QR code login flow
@@ -1 +1 @@
1
- {"version":3,"file":"ilink-adapter.d.ts","sourceRoot":"","sources":["../../../../src/plugins/messengers/wechat/ilink-adapter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAW,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEvF,OAAO,KAAK,EAAE,WAAW,EAAiD,MAAM,kBAAkB,CAAA;AAgClG,qBAAa,kBAAmB,YAAW,gBAAgB;IACzD,QAAQ,CAAC,IAAI,kBAAiB;IAC9B,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,cAAc,CAAC,CAAwC;IAC/D,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,SAAS,CAIhB;IACD,OAAO,CAAC,aAAa,CAAuC;IAC5D,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,iBAAiB,CAA4B;;IAU/C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiCtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAW3B,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAI1D,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0C1D,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAoCpE;;;OAGG;IACG,YAAY,IAAI,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAQjE;;;;;;OAMG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAC1C,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM,CAAA;QAC5D,WAAW,CAAC,EAAE;YAAE,SAAS,CAAC,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KACtD,CAAC;IAoBF;;OAEG;IACG,cAAc,CAClB,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAClC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAoD9B,OAAO,CAAC,YAAY;YAON,QAAQ;IAqFtB;;;;OAIG;YACW,iBAAiB;IA6B/B;;;OAGG;YACW,aAAa;YAUb,qBAAqB;IA+EnC;;;;OAIG;YACW,kBAAkB;YA2BlB,eAAe;YA0Bf,eAAe;YAyDf,cAAc;YAgCd,eAAe;IAoC7B,OAAO,CAAC,eAAe;IA2BvB,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,wBAAwB;IAShC;;;;;;;OAOG;IACH,OAAO,CAAC,2BAA2B;YAgBrB,eAAe;YAsBf,eAAe;IAe7B,OAAO,CAAC,YAAY;CAgCrB;AAGD,eAAO,MAAM,kBAAkB,oBAA2B,CAAA"}
1
+ {"version":3,"file":"ilink-adapter.d.ts","sourceRoot":"","sources":["../../../../src/plugins/messengers/wechat/ilink-adapter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAW,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEvF,OAAO,KAAK,EAAE,WAAW,EAAiD,MAAM,kBAAkB,CAAA;AAiClG,qBAAa,kBAAmB,YAAW,gBAAgB;IACzD,QAAQ,CAAC,IAAI,kBAAiB;IAC9B,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,cAAc,CAAC,CAAwC;IAC/D,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,SAAS,CAIhB;IACD,OAAO,CAAC,aAAa,CAAuC;IAC5D,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,iBAAiB,CAA4B;;IAU/C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiCtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAW3B,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAI1D,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuChE;;mEAE+D;IAC/D,OAAO,CAAC,sBAAsB;IAuBxB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAoCpE;;;OAGG;IACG,YAAY,IAAI,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAQjE;;;;;;OAMG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAC1C,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM,CAAA;QAC5D,WAAW,CAAC,EAAE;YAAE,SAAS,CAAC,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KACtD,CAAC;IAoBF;;OAEG;IACG,cAAc,CAClB,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAClC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAoD9B,OAAO,CAAC,YAAY;YAON,QAAQ;IAqFtB;;;;OAIG;YACW,iBAAiB;IA6B/B;;;OAGG;YACW,aAAa;YAUb,qBAAqB;IA+EnC;;;;OAIG;YACW,kBAAkB;YA2BlB,eAAe;YA0Bf,eAAe;YAyDf,cAAc;YAgCd,eAAe;IAoC7B,OAAO,CAAC,eAAe;IA2BvB,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,wBAAwB;IAShC;;;;;;;OAOG;IACH,OAAO,CAAC,2BAA2B;YAgBrB,eAAe;YAsBf,eAAe;IAe7B,OAAO,CAAC,YAAY;CAgCrB;AAGD,eAAO,MAAM,kBAAkB,oBAA2B,CAAA"}
@@ -9,7 +9,7 @@ import { logger as rootLogger } from '../../../core/logger.js';
9
9
  import { Backoff } from '../../../utils/backoff.js';
10
10
  import { downloadWechatMedia, extractCdnMedia, pickExtensionForImage, pickExtensionForVoice, pickExtensionForFile, pickExtensionForVideo, } from './media-download.js';
11
11
  import { transcribe, detectProvider, TranscribeError } from '../../../core/transcribe.js';
12
- import { persistContextToken, loadContextToken, loadAllContextTokens, cleanupExpiredTokens as cleanupExpiredTokensInStore, closeContextStore, } from './context-store.js';
12
+ import { persistContextToken, loadContextToken, loadAllContextTokens, cleanupExpiredTokens as cleanupExpiredTokensInStore, closeContextStore, deleteContextToken, } from './context-store.js';
13
13
  const log = rootLogger.child({ component: 'wechat-ilink' });
14
14
  const CREDENTIALS_FILE = join(AGIM_HOME, 'wechat-credentials.json');
15
15
  const _POLL_TIMEOUT = 30000; // 30 seconds
@@ -94,10 +94,35 @@ export class ILinkWeChatAdapter {
94
94
  if (response.ret === ILINK_ERRORS.SESSION_EXPIRED) {
95
95
  throw new Error('WeChat session expired. Please re-login.');
96
96
  }
97
+ // INVALID_PARAMS (-2) on send almost always means our cached
98
+ // context-token for this user has been invalidated upstream (e.g.
99
+ // the user opened a different chat / wechat rotated the token).
100
+ // Drop it so the next inbound message from this user refreshes
101
+ // the cache + the outbox retry will succeed once they reply.
102
+ // Without this hook, outbox loops forever on the stale token
103
+ // and the user never sees any reply (observed 2026-05-24).
104
+ if (response.ret === ILINK_ERRORS.INVALID_PARAMS) {
105
+ this.invalidateContextToken(userId, 'wechat.send.invalid_params');
106
+ }
97
107
  throw new Error(`Failed to send message: ${response.errmsg || response.ret}`);
98
108
  }
99
109
  }
100
110
  }
111
+ /** Drop the cached + persisted context-token for a user. Called when
112
+ * wechat rejects a send with INVALID_PARAMS so the next inbound
113
+ * message rebuilds the cache from the fresh polling token. */
114
+ invalidateContextToken(userId, reason) {
115
+ this.contextTokens.delete(userId);
116
+ try {
117
+ deleteContextToken(userId);
118
+ }
119
+ catch { /* best-effort */ }
120
+ log.warn({
121
+ event: 'wechat.context.invalidated',
122
+ userId,
123
+ reason,
124
+ }, 'invalidated context token for user — will refresh on next inbound message');
125
+ }
101
126
  // ============================================
102
127
  // Typing Indicator
103
128
  // ============================================
@@ -1 +1 @@
1
- {"version":3,"file":"ilink-adapter.js","sourceRoot":"","sources":["../../../../src/plugins/messengers/wechat/ilink-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ilink-adapter.js","sourceRoot":"","sources":["../../../../src/plugins/messengers/wechat/ilink-adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { IncomingMessage, ServerResponse } from 'node:http';
2
+ /** Dispatcher; returns true when handled. */
3
+ export declare function handleAgimSkillsApi(req: IncomingMessage, res: ServerResponse, url: URL): Promise<boolean>;
4
+ //# sourceMappingURL=agim-skills-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agim-skills-api.d.ts","sourceRoot":"","sources":["../../src/web/agim-skills-api.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAqBhE,6CAA6C;AAC7C,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,GAClD,OAAO,CAAC,OAAO,CAAC,CAqBlB"}
@@ -0,0 +1,150 @@
1
+ // agim-skills-api — admin REST for the in-process agim SKILL.md
2
+ // loader (P1 follow-up). Distinct from the pre-existing
3
+ // `/api/skills` which lists per-agent workspace skills (CLI agents'
4
+ // own SKILL.md trees); this one operates on the agim-owned loader
5
+ // from src/core/skills/loader.ts.
6
+ //
7
+ // Endpoints:
8
+ // GET /api/agim-skills -> { skills, count }
9
+ // GET /api/agim-skills/:name -> { meta, body }
10
+ // POST /api/agim-skills body { name, body } -> 201 { meta }
11
+ // PUT /api/agim-skills/:name body { body } -> 200 { meta }
12
+ // DELETE /api/agim-skills/:name -> 200 / 404
13
+ // POST /api/agim-skills/refresh -> 200 { count }
14
+ //
15
+ // All endpoints are admin-gated upstream in server.ts because SKILL.md
16
+ // bodies are injected into every agent prompt — malicious content
17
+ // here goes straight to every CLI agent + the native agent.
18
+ import { listSkills, getSkillByName, readSkillBody, invalidateSkillsCache, writeSkillFile, deleteSkill, MAX_SKILL_BODY_CHARS, } from '../core/skills/loader.js';
19
+ function send(res, code, body) {
20
+ res.statusCode = code;
21
+ res.setHeader('Content-Type', 'application/json; charset=utf-8');
22
+ res.end(JSON.stringify(body));
23
+ }
24
+ async function readJsonBody(req) {
25
+ const chunks = [];
26
+ for await (const c of req)
27
+ chunks.push(Buffer.isBuffer(c) ? c : Buffer.from(c));
28
+ const raw = Buffer.concat(chunks).toString('utf-8');
29
+ if (!raw.trim())
30
+ return null;
31
+ try {
32
+ return JSON.parse(raw);
33
+ }
34
+ catch {
35
+ return null;
36
+ }
37
+ }
38
+ /** Dispatcher; returns true when handled. */
39
+ export async function handleAgimSkillsApi(req, res, url) {
40
+ const p = url.pathname;
41
+ const m = req.method ?? 'GET';
42
+ if (p === '/api/agim-skills' && m === 'GET') {
43
+ await handleList(res);
44
+ return true;
45
+ }
46
+ if (p === '/api/agim-skills' && m === 'POST') {
47
+ await handleCreate(req, res);
48
+ return true;
49
+ }
50
+ if (p === '/api/agim-skills/refresh' && m === 'POST') {
51
+ invalidateSkillsCache();
52
+ const skills = listSkills();
53
+ send(res, 200, { count: skills.length });
54
+ return true;
55
+ }
56
+ const byName = p.match(/^\/api\/agim-skills\/([A-Za-z0-9._-]+)$/);
57
+ if (byName && m === 'GET') {
58
+ await handleGet(res, byName[1]);
59
+ return true;
60
+ }
61
+ if (byName && m === 'PUT') {
62
+ await handleUpdate(req, res, byName[1]);
63
+ return true;
64
+ }
65
+ if (byName && m === 'DELETE') {
66
+ await handleDelete(res, byName[1]);
67
+ return true;
68
+ }
69
+ return false;
70
+ }
71
+ // ─── handlers ───────────────────────────────────────────────────────
72
+ async function handleList(res) {
73
+ const skills = listSkills().map((s) => ({
74
+ name: s.name,
75
+ description: s.description,
76
+ source: s.source,
77
+ always: s.always,
78
+ available: s.available,
79
+ unavailableReason: s.unavailableReason,
80
+ requiresBins: s.requiresBins,
81
+ requiresEnv: s.requiresEnv,
82
+ dir: s.dir,
83
+ }));
84
+ send(res, 200, { skills, count: skills.length, maxBodyChars: MAX_SKILL_BODY_CHARS });
85
+ }
86
+ async function handleGet(res, name) {
87
+ const meta = getSkillByName(name);
88
+ if (!meta) {
89
+ send(res, 404, { error: `no skill named "${name}"` });
90
+ return;
91
+ }
92
+ const body = readSkillBody(name);
93
+ send(res, 200, { meta, body: body ?? '' });
94
+ }
95
+ async function handleCreate(req, res) {
96
+ const body = await readJsonBody(req);
97
+ if (!body || typeof body.name !== 'string' || typeof body.body !== 'string') {
98
+ send(res, 400, { error: 'body { name, body } required' });
99
+ return;
100
+ }
101
+ if (getSkillByName(body.name)) {
102
+ send(res, 409, { error: `skill "${body.name}" already exists` });
103
+ return;
104
+ }
105
+ const meta = writeSkillFile(body.name, body.body);
106
+ if (!meta) {
107
+ send(res, 400, {
108
+ error: 'write failed — invalid name (safe chars only) or invalid frontmatter (need name + description) or body > limit',
109
+ });
110
+ return;
111
+ }
112
+ send(res, 201, { meta });
113
+ }
114
+ async function handleUpdate(req, res, name) {
115
+ if (!getSkillByName(name)) {
116
+ send(res, 404, { error: `no skill named "${name}"` });
117
+ return;
118
+ }
119
+ const body = await readJsonBody(req);
120
+ if (!body || typeof body.body !== 'string') {
121
+ send(res, 400, { error: 'body { body: string } required' });
122
+ return;
123
+ }
124
+ const meta = writeSkillFile(name, body.body);
125
+ if (!meta) {
126
+ send(res, 400, { error: 'write failed — invalid frontmatter or body > limit' });
127
+ return;
128
+ }
129
+ send(res, 200, { meta });
130
+ }
131
+ async function handleDelete(res, name) {
132
+ const meta = getSkillByName(name);
133
+ if (!meta) {
134
+ send(res, 404, { error: `no skill named "${name}"` });
135
+ return;
136
+ }
137
+ if (meta.source === 'builtin') {
138
+ send(res, 400, {
139
+ error: 'cannot delete builtin skills; shadow with a workspace skill of the same name (POST /api/agim-skills) to override',
140
+ });
141
+ return;
142
+ }
143
+ const ok = deleteSkill(name);
144
+ if (!ok) {
145
+ send(res, 500, { error: 'delete failed' });
146
+ return;
147
+ }
148
+ send(res, 200, { name, deleted: true });
149
+ }
150
+ //# sourceMappingURL=agim-skills-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agim-skills-api.js","sourceRoot":"","sources":["../../src/web/agim-skills-api.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,wDAAwD;AACxD,oEAAoE;AACpE,kEAAkE;AAClE,kCAAkC;AAClC,EAAE;AACF,aAAa;AACb,uEAAuE;AACvE,oEAAoE;AACpE,sFAAsF;AACtF,gFAAgF;AAChF,+DAA+D;AAC/D,mEAAmE;AACnE,EAAE;AACF,uEAAuE;AACvE,kEAAkE;AAClE,4DAA4D;AAG5D,OAAO,EACL,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,qBAAqB,EAChE,cAAc,EAAE,WAAW,EAC3B,oBAAoB,GACrB,MAAM,0BAA0B,CAAA;AAEjC,SAAS,IAAI,CAAC,GAAmB,EAAE,IAAY,EAAE,IAAa;IAC5D,GAAG,CAAC,UAAU,GAAG,IAAI,CAAA;IACrB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,iCAAiC,CAAC,CAAA;IAChE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;AAC/B,CAAC;AAED,KAAK,UAAU,YAAY,CAAc,GAAoB;IAC3D,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,GAAG;QAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/E,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IACnD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;QAAE,OAAO,IAAI,CAAA;IAC5B,IAAI,CAAC;QAAC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAM,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,IAAI,CAAA;IAAC,CAAC;AAC3D,CAAC;AAED,6CAA6C;AAC7C,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,GAAoB,EAAE,GAAmB,EAAE,GAAQ;IAEnD,MAAM,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAA;IACtB,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,KAAK,CAAA;IAE7B,IAAI,CAAC,KAAK,kBAAkB,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;QAC5C,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;QAAC,OAAO,IAAI,CAAA;IACpC,CAAC;IACD,IAAI,CAAC,KAAK,kBAAkB,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;QAC7C,MAAM,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAAC,OAAO,IAAI,CAAA;IAC3C,CAAC;IACD,IAAI,CAAC,KAAK,0BAA0B,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;QACrD,qBAAqB,EAAE,CAAA;QACvB,MAAM,MAAM,GAAG,UAAU,EAAE,CAAA;QAC3B,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;QACxC,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;IACjE,IAAI,MAAM,IAAI,CAAC,KAAK,KAAK,EAAK,CAAC;QAAC,MAAM,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAAI,OAAO,IAAI,CAAA;IAAC,CAAC;IACjF,IAAI,MAAM,IAAI,CAAC,KAAK,KAAK,EAAK,CAAC;QAAC,MAAM,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,OAAO,IAAI,CAAA;IAAC,CAAC;IACtF,IAAI,MAAM,IAAI,CAAC,KAAK,QAAQ,EAAE,CAAC;QAAC,MAAM,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,OAAO,IAAI,CAAA;IAAC,CAAC;IACjF,OAAO,KAAK,CAAA;AACd,CAAC;AAED,uEAAuE;AAEvE,KAAK,UAAU,UAAU,CAAC,GAAmB;IAC3C,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACtC,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;QACtC,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,GAAG,EAAE,CAAC,CAAC,GAAG;KACX,CAAC,CAAC,CAAA;IACH,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE,CAAC,CAAA;AACtF,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,GAAmB,EAAE,IAAY;IACxD,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,CAAA;IACjC,IAAI,CAAC,IAAI,EAAE,CAAC;QAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,mBAAmB,IAAI,GAAG,EAAE,CAAC,CAAC;QAAC,OAAM;IAAC,CAAC;IAC5E,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;IAChC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAA;AAC5C,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,GAAoB,EAAE,GAAmB;IACnE,MAAM,IAAI,GAAG,MAAM,YAAY,CAAqC,GAAG,CAAC,CAAA;IACxE,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC5E,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC,CAAC;QAAC,OAAM;IACnE,CAAC;IACD,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,UAAU,IAAI,CAAC,IAAI,kBAAkB,EAAE,CAAC,CAAC;QAAC,OAAM;IAC1E,CAAC;IACD,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IACjD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;YACb,KAAK,EAAE,gHAAgH;SACxH,CAAC,CAAA;QACF,OAAM;IACR,CAAC;IACD,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;AAC1B,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,GAAoB,EAAE,GAAmB,EAAE,IAAY;IACjF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,mBAAmB,IAAI,GAAG,EAAE,CAAC,CAAC;QAAC,OAAM;IAC/D,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,YAAY,CAAqB,GAAG,CAAC,CAAA;IACxD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3C,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;QAAC,OAAM;IACrE,CAAC;IACD,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IAC5C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,oDAAoD,EAAE,CAAC,CAAA;QAC/E,OAAM;IACR,CAAC;IACD,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;AAC1B,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,GAAmB,EAAE,IAAY;IAC3D,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,CAAA;IACjC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,mBAAmB,IAAI,GAAG,EAAE,CAAC,CAAC;QAAC,OAAM;IAC/D,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;YACb,KAAK,EAAE,kHAAkH;SAC1H,CAAC,CAAA;QACF,OAAM;IACR,CAAC;IACD,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;IAC5B,IAAI,CAAC,EAAE,EAAE,CAAC;QAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;QAAC,OAAM;IAAC,CAAC;IAC/D,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;AACzC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { IncomingMessage, ServerResponse } from 'node:http';
2
+ /**
3
+ * Match-and-handle. Returns true when handled, false when the URL
4
+ * didn't match any background-task endpoint.
5
+ */
6
+ export declare function handleBackgroundTasksApi(req: IncomingMessage, res: ServerResponse, url: URL): Promise<boolean>;
7
+ //# sourceMappingURL=background-tasks-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"background-tasks-api.d.ts","sourceRoot":"","sources":["../../src/web/background-tasks-api.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAqChE;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,GAClD,OAAO,CAAC,OAAO,CAAC,CAwClB"}
@@ -0,0 +1,225 @@
1
+ // background-tasks-api — unified web REST surface for the three
2
+ // per-thread background primitives that previously had IM-only admin
3
+ // (P1 follow-up to Stage 6):
4
+ //
5
+ // * heartbeat bindings — `/api/heartbeat/*`
6
+ // * goals — `/api/goals/*`
7
+ // * pending ask_user — `/api/asks/pending`
8
+ //
9
+ // All three sit under one file so the dispatch + helper plumbing
10
+ // (json body parsing, status mapping) isn't triplicated across three
11
+ // modules. Each endpoint stays small — the routes are essentially
12
+ // thin wrappers around the core/* helpers that already exist.
13
+ //
14
+ // All endpoints are admin-gated upstream in server.ts because the
15
+ // data is global (cross-thread) and includes user-typed content.
16
+ import { listAllBindings as listAllHeartbeats, enableBinding as enableHeartbeat, disableBinding as disableHeartbeat, updateInterval as updateHeartbeatInterval, } from '../core/heartbeat-store.js';
17
+ import { listAllActiveGoals, listGoalsForThread, getGoalById, updateStatus as updateGoalStatus, } from '../core/goals.js';
18
+ import { listPendingAsks, cancelPendingAsk, } from '../core/ask-user-rpc.js';
19
+ // ─── HTTP helpers (mirrors llm-api + mcp-api shape) ─────────────────
20
+ function send(res, code, body) {
21
+ res.statusCode = code;
22
+ res.setHeader('Content-Type', 'application/json; charset=utf-8');
23
+ res.end(JSON.stringify(body));
24
+ }
25
+ async function readJsonBody(req) {
26
+ const chunks = [];
27
+ for await (const c of req)
28
+ chunks.push(Buffer.isBuffer(c) ? c : Buffer.from(c));
29
+ const raw = Buffer.concat(chunks).toString('utf-8');
30
+ if (!raw.trim())
31
+ return null;
32
+ try {
33
+ return JSON.parse(raw);
34
+ }
35
+ catch {
36
+ return null;
37
+ }
38
+ }
39
+ // ─── dispatcher ─────────────────────────────────────────────────────
40
+ /**
41
+ * Match-and-handle. Returns true when handled, false when the URL
42
+ * didn't match any background-task endpoint.
43
+ */
44
+ export async function handleBackgroundTasksApi(req, res, url) {
45
+ const p = url.pathname;
46
+ const m = req.method ?? 'GET';
47
+ // ── heartbeat ──
48
+ if (p === '/api/heartbeat/bindings' && m === 'GET') {
49
+ await handleHeartbeatList(res);
50
+ return true;
51
+ }
52
+ const hbToggle = p.match(/^\/api\/heartbeat\/bindings\/(.+)\/(enable|disable)$/);
53
+ if (hbToggle && m === 'POST') {
54
+ await handleHeartbeatToggle(res, hbToggle[1], hbToggle[2]);
55
+ return true;
56
+ }
57
+ const hbInterval = p.match(/^\/api\/heartbeat\/bindings\/(.+)\/interval$/);
58
+ if (hbInterval && m === 'PUT') {
59
+ await handleHeartbeatInterval(req, res, hbInterval[1]);
60
+ return true;
61
+ }
62
+ // ── goals ──
63
+ if (p === '/api/goals' && m === 'GET') {
64
+ await handleGoalsList(res, url);
65
+ return true;
66
+ }
67
+ const goalById = p.match(/^\/api\/goals\/(\d+)$/);
68
+ if (goalById && m === 'GET') {
69
+ await handleGoalGet(res, Number(goalById[1]));
70
+ return true;
71
+ }
72
+ const goalStatus = p.match(/^\/api\/goals\/(\d+)\/status$/);
73
+ if (goalStatus && m === 'PUT') {
74
+ await handleGoalUpdateStatus(req, res, Number(goalStatus[1]));
75
+ return true;
76
+ }
77
+ // ── asks ──
78
+ if (p === '/api/asks/pending' && m === 'GET') {
79
+ await handleAsksList(res);
80
+ return true;
81
+ }
82
+ const askCancel = p.match(/^\/api\/asks\/pending\/(.+)\/cancel$/);
83
+ if (askCancel && m === 'POST') {
84
+ await handleAskCancel(res, askCancel[1]);
85
+ return true;
86
+ }
87
+ return false;
88
+ }
89
+ // ─── heartbeat handlers ─────────────────────────────────────────────
90
+ async function handleHeartbeatList(res) {
91
+ const rows = listAllHeartbeats().map((r) => ({
92
+ platform: r.platform,
93
+ channelId: r.channelId,
94
+ threadId: r.threadId,
95
+ userId: r.userId,
96
+ body: r.body,
97
+ intervalMinutes: r.intervalMinutes,
98
+ enabled: r.enabled,
99
+ lastTickAt: r.lastTickAt,
100
+ lastStatus: r.lastStatus,
101
+ lastReason: r.lastReason,
102
+ lastTextPreview: r.lastTextPreview,
103
+ createdAt: r.createdAt,
104
+ }));
105
+ send(res, 200, { bindings: rows, count: rows.length });
106
+ }
107
+ /**
108
+ * Toggle key is `platform:channelId:threadId` URL-encoded. Same
109
+ * tri-key shape the heartbeat-store uses internally.
110
+ */
111
+ function parseBindingKey(raw) {
112
+ const parts = decodeURIComponent(raw).split(':');
113
+ if (parts.length < 3)
114
+ return null;
115
+ // threadId may itself contain ':' (e.g. Discord channel IDs). Re-join everything after the second ':'.
116
+ const [platform, channelId, ...rest] = parts;
117
+ return { platform, channelId, threadId: rest.join(':') };
118
+ }
119
+ async function handleHeartbeatToggle(res, rawKey, op) {
120
+ const key = parseBindingKey(rawKey);
121
+ if (!key) {
122
+ send(res, 400, { error: 'malformed key, expected platform:channelId:threadId' });
123
+ return;
124
+ }
125
+ const ok = op === 'enable'
126
+ ? enableHeartbeat(key.platform, key.channelId, key.threadId)
127
+ : disableHeartbeat(key.platform, key.channelId, key.threadId);
128
+ if (!ok) {
129
+ send(res, 404, { error: 'binding not found' });
130
+ return;
131
+ }
132
+ send(res, 200, { ...key, op, ok: true });
133
+ }
134
+ async function handleHeartbeatInterval(req, res, rawKey) {
135
+ const key = parseBindingKey(rawKey);
136
+ if (!key) {
137
+ send(res, 400, { error: 'malformed key' });
138
+ return;
139
+ }
140
+ const body = await readJsonBody(req);
141
+ if (!body || typeof body.intervalMin !== 'number') {
142
+ send(res, 400, { error: 'body.intervalMin (number) required' });
143
+ return;
144
+ }
145
+ const ok = updateHeartbeatInterval(key.platform, key.channelId, key.threadId, body.intervalMin);
146
+ if (!ok) {
147
+ send(res, 404, { error: 'binding not found OR interval out of range' });
148
+ return;
149
+ }
150
+ send(res, 200, { ...key, intervalMin: body.intervalMin });
151
+ }
152
+ // ─── goal handlers ──────────────────────────────────────────────────
153
+ async function handleGoalsList(res, url) {
154
+ // ?platform=...&channelId=...&threadId=... narrows to one thread;
155
+ // omit all three to get all-active (admin overview).
156
+ const platform = url.searchParams.get('platform');
157
+ const channelId = url.searchParams.get('channelId');
158
+ const threadId = url.searchParams.get('threadId');
159
+ if (platform && channelId && threadId) {
160
+ const rows = listGoalsForThread(platform, channelId, threadId);
161
+ send(res, 200, { goals: rows.map(sanitizeGoal), count: rows.length, scope: 'thread' });
162
+ return;
163
+ }
164
+ const rows = listAllActiveGoals();
165
+ send(res, 200, { goals: rows.map(sanitizeGoal), count: rows.length, scope: 'all-active' });
166
+ }
167
+ async function handleGoalGet(res, id) {
168
+ const row = getGoalById(id);
169
+ if (!row) {
170
+ send(res, 404, { error: `no goal #${id}` });
171
+ return;
172
+ }
173
+ send(res, 200, { goal: sanitizeGoal(row) });
174
+ }
175
+ async function handleGoalUpdateStatus(req, res, id) {
176
+ const body = await readJsonBody(req);
177
+ const raw = body?.status;
178
+ if (raw !== 'active' && raw !== 'paused' && raw !== 'completed' && raw !== 'cancelled') {
179
+ send(res, 400, { error: 'body.status must be one of: active | paused | completed | cancelled' });
180
+ return;
181
+ }
182
+ const status = raw;
183
+ const ok = updateGoalStatus(id, status);
184
+ if (!ok) {
185
+ send(res, 404, { error: `no goal #${id}` });
186
+ return;
187
+ }
188
+ send(res, 200, { id, status });
189
+ }
190
+ function sanitizeGoal(g) {
191
+ // Trim the per-row progress log so a noisy goal with 500 notes
192
+ // doesn't blow the wire response — admin UI shows the latest N
193
+ // anyway; full body lives at GET /:id.
194
+ const MAX_NOTES = 10;
195
+ return {
196
+ id: g.id,
197
+ platform: g.platform,
198
+ channelId: g.channelId,
199
+ threadId: g.threadId,
200
+ userId: g.userId,
201
+ title: g.title,
202
+ body: g.body,
203
+ status: g.status,
204
+ progressLog: g.progressLog.slice(-MAX_NOTES),
205
+ progressCount: g.progressLog.length,
206
+ createdAt: g.createdAt,
207
+ updatedAt: g.updatedAt,
208
+ closedAt: g.closedAt,
209
+ };
210
+ }
211
+ // ─── ask handlers ───────────────────────────────────────────────────
212
+ async function handleAsksList(res) {
213
+ const rows = listPendingAsks();
214
+ send(res, 200, { pending: rows, count: rows.length });
215
+ }
216
+ async function handleAskCancel(res, rawReqId) {
217
+ const reqId = decodeURIComponent(rawReqId);
218
+ const ok = cancelPendingAsk(reqId, 'cancelled from admin panel');
219
+ if (!ok) {
220
+ send(res, 404, { error: 'no pending ask with that reqId' });
221
+ return;
222
+ }
223
+ send(res, 200, { reqId, ok: true });
224
+ }
225
+ //# sourceMappingURL=background-tasks-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"background-tasks-api.js","sourceRoot":"","sources":["../../src/web/background-tasks-api.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,qEAAqE;AACrE,6BAA6B;AAC7B,EAAE;AACF,+CAA+C;AAC/C,2CAA2C;AAC3C,gDAAgD;AAChD,EAAE;AACF,iEAAiE;AACjE,qEAAqE;AACrE,kEAAkE;AAClE,8DAA8D;AAC9D,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AAGjE,OAAO,EACL,eAAe,IAAI,iBAAiB,EACpC,aAAa,IAAI,eAAe,EAChC,cAAc,IAAI,gBAAgB,EAClC,cAAc,IAAI,uBAAuB,GAC1C,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,YAAY,IAAI,gBAAgB,GAEjC,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,eAAe,EACf,gBAAgB,GACjB,MAAM,yBAAyB,CAAA;AAEhC,uEAAuE;AAEvE,SAAS,IAAI,CAAC,GAAmB,EAAE,IAAY,EAAE,IAAa;IAC5D,GAAG,CAAC,UAAU,GAAG,IAAI,CAAA;IACrB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,iCAAiC,CAAC,CAAA;IAChE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;AAC/B,CAAC;AAED,KAAK,UAAU,YAAY,CAAc,GAAoB;IAC3D,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,GAAG;QAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/E,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IACnD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;QAAE,OAAO,IAAI,CAAA;IAC5B,IAAI,CAAC;QAAC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAM,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,IAAI,CAAA;IAAC,CAAC;AAC3D,CAAC;AAED,uEAAuE;AAEvE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,GAAoB,EAAE,GAAmB,EAAE,GAAQ;IAEnD,MAAM,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAA;IACtB,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,KAAK,CAAA;IAE7B,kBAAkB;IAClB,IAAI,CAAC,KAAK,yBAAyB,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;QACnD,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAC;QAAC,OAAO,IAAI,CAAA;IAC7C,CAAC;IACD,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAA;IAChF,IAAI,QAAQ,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;QAC7B,MAAM,qBAAqB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAyB,CAAC,CAAC;QAAC,OAAO,IAAI,CAAA;IACjG,CAAC;IACD,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAA;IAC1E,IAAI,UAAU,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;QAC9B,MAAM,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,OAAO,IAAI,CAAA;IACrE,CAAC;IAED,cAAc;IACd,IAAI,CAAC,KAAK,YAAY,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;QACtC,MAAM,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAAC,OAAO,IAAI,CAAA;IAC9C,CAAC;IACD,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAA;IACjD,IAAI,QAAQ,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;QAC5B,MAAM,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,OAAO,IAAI,CAAA;IAC5D,CAAC;IACD,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAC3D,IAAI,UAAU,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;QAC9B,MAAM,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,OAAO,IAAI,CAAA;IAC5E,CAAC;IAED,aAAa;IACb,IAAI,CAAC,KAAK,mBAAmB,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;QAC7C,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;QAAC,OAAO,IAAI,CAAA;IACxC,CAAC;IACD,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAA;IACjE,IAAI,SAAS,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;QAC9B,MAAM,eAAe,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,OAAO,IAAI,CAAA;IACvD,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED,uEAAuE;AAEvE,KAAK,UAAU,mBAAmB,CAAC,GAAmB;IACpD,MAAM,IAAI,GAAG,iBAAiB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3C,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,eAAe,EAAE,CAAC,CAAC,eAAe;QAClC,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,eAAe,EAAE,CAAC,CAAC,eAAe;QAClC,SAAS,EAAE,CAAC,CAAC,SAAS;KACvB,CAAC,CAAC,CAAA;IACH,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;AACxD,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,GAAW;IAClC,MAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAChD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IACjC,uGAAuG;IACvG,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAA;IAC5C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAA;AAC1D,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,GAAmB,EAAE,MAAc,EAAE,EAAwB;IAE7D,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,CAAA;IACnC,IAAI,CAAC,GAAG,EAAE,CAAC;QAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,qDAAqD,EAAE,CAAC,CAAC;QAAC,OAAM;IAAC,CAAC;IACtG,MAAM,EAAE,GAAG,EAAE,KAAK,QAAQ;QACxB,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC;QAC5D,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAA;IAC/D,IAAI,CAAC,EAAE,EAAE,CAAC;QAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAAC,OAAM;IAAC,CAAC;IACnE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;AAC1C,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,GAAoB,EAAE,GAAmB,EAAE,MAAc;IAEzD,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,CAAA;IACnC,IAAI,CAAC,GAAG,EAAE,CAAC;QAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;QAAC,OAAM;IAAC,CAAC;IAChE,MAAM,IAAI,GAAG,MAAM,YAAY,CAA4B,GAAG,CAAC,CAAA;IAC/D,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;QAClD,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,oCAAoC,EAAE,CAAC,CAAC;QAAC,OAAM;IACzE,CAAC;IACD,MAAM,EAAE,GAAG,uBAAuB,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;IAC/F,IAAI,CAAC,EAAE,EAAE,CAAC;QAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,4CAA4C,EAAE,CAAC,CAAC;QAAC,OAAM;IAAC,CAAC;IAC5F,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;AAC3D,CAAC;AAED,uEAAuE;AAEvE,KAAK,UAAU,eAAe,CAAC,GAAmB,EAAE,GAAQ;IAC1D,kEAAkE;IAClE,qDAAqD;IACrD,MAAM,QAAQ,GAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAClD,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;IACnD,MAAM,QAAQ,GAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAClD,IAAI,QAAQ,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,kBAAkB,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;QAC9D,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;QACtF,OAAM;IACR,CAAC;IACD,MAAM,IAAI,GAAG,kBAAkB,EAAE,CAAA;IACjC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAA;AAC5F,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,GAAmB,EAAE,EAAU;IAC1D,MAAM,GAAG,GAAG,WAAW,CAAC,EAAE,CAAC,CAAA;IAC3B,IAAI,CAAC,GAAG,EAAE,CAAC;QAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;QAAC,OAAM;IAAC,CAAC;IACjE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;AAC7C,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,GAAoB,EAAE,GAAmB,EAAE,EAAU;IAErD,MAAM,IAAI,GAAG,MAAM,YAAY,CAAuB,GAAG,CAAC,CAAA;IAC1D,MAAM,GAAG,GAAG,IAAI,EAAE,MAAM,CAAA;IACxB,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;QACvF,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,qEAAqE,EAAE,CAAC,CAAA;QAChG,OAAM;IACR,CAAC;IACD,MAAM,MAAM,GAAe,GAAG,CAAA;IAC9B,MAAM,EAAE,GAAG,gBAAgB,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;IACvC,IAAI,CAAC,EAAE,EAAE,CAAC;QAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;QAAC,OAAM;IAAC,CAAC;IAChE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;AAChC,CAAC;AAED,SAAS,YAAY,CAAC,CAA0C;IAC9D,+DAA+D;IAC/D,+DAA+D;IAC/D,uCAAuC;IACvC,MAAM,SAAS,GAAG,EAAE,CAAA;IACpB,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC;QAC5C,aAAa,EAAE,CAAC,CAAC,WAAW,CAAC,MAAM;QACnC,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;KACrB,CAAA;AACH,CAAC;AAED,uEAAuE;AAEvE,KAAK,UAAU,cAAc,CAAC,GAAmB;IAC/C,MAAM,IAAI,GAAG,eAAe,EAAE,CAAA;IAC9B,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;AACvD,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,GAAmB,EAAE,QAAgB;IAClE,MAAM,KAAK,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAA;IAC1C,MAAM,EAAE,GAAG,gBAAgB,CAAC,KAAK,EAAE,4BAA4B,CAAC,CAAA;IAChE,IAAI,CAAC,EAAE,EAAE,CAAC;QAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;QAAC,OAAM;IAAC,CAAC;IAChF,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;AACrC,CAAC"}