agim-cli 1.3.9 → 1.4.0

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 (205) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/core/a2a.d.ts +1 -1
  3. package/dist/core/a2a.d.ts.map +1 -1
  4. package/dist/core/a2a.js +7 -12
  5. package/dist/core/a2a.js.map +1 -1
  6. package/dist/core/approval-router.d.ts.map +1 -1
  7. package/dist/core/approval-router.js +8 -11
  8. package/dist/core/approval-router.js.map +1 -1
  9. package/dist/core/ask-user-router.d.ts +13 -1
  10. package/dist/core/ask-user-router.d.ts.map +1 -1
  11. package/dist/core/ask-user-router.js +58 -23
  12. package/dist/core/ask-user-router.js.map +1 -1
  13. package/dist/core/ask-user-rpc.d.ts +33 -6
  14. package/dist/core/ask-user-rpc.d.ts.map +1 -1
  15. package/dist/core/ask-user-rpc.js +251 -65
  16. package/dist/core/ask-user-rpc.js.map +1 -1
  17. package/dist/core/llm/fs-dispatcher.d.ts.map +1 -1
  18. package/dist/core/llm/fs-dispatcher.js +14 -13
  19. package/dist/core/llm/fs-dispatcher.js.map +1 -1
  20. package/dist/core/llm/imhub-dispatcher.d.ts.map +1 -1
  21. package/dist/core/llm/imhub-dispatcher.js +2 -0
  22. package/dist/core/llm/imhub-dispatcher.js.map +1 -1
  23. package/dist/core/skills/builtin/agim-self/SKILL.md +4 -4
  24. package/dist/core/types.d.ts +21 -0
  25. package/dist/core/types.d.ts.map +1 -1
  26. package/dist/plugins/agents/native/index.js +1 -1
  27. package/dist/plugins/agents/native/index.js.map +1 -1
  28. package/dist/plugins/messengers/telegram/telegram-adapter.d.ts +8 -0
  29. package/dist/plugins/messengers/telegram/telegram-adapter.d.ts.map +1 -1
  30. package/dist/plugins/messengers/telegram/telegram-adapter.js +67 -8
  31. package/dist/plugins/messengers/telegram/telegram-adapter.js.map +1 -1
  32. package/dist/web/public/assets/{a2a-D_I9ZX8i.js → a2a-DWibx2v1.js} +2 -2
  33. package/dist/web/public/assets/{a2a-D_I9ZX8i.js.map → a2a-DWibx2v1.js.map} +1 -1
  34. package/dist/web/public/assets/{activity-ZxWknBf9.js → activity-CSppRQoj.js} +2 -2
  35. package/dist/web/public/assets/{activity-ZxWknBf9.js.map → activity-CSppRQoj.js.map} +1 -1
  36. package/dist/web/public/assets/{admins-DFZcKgq0.js → admins-C9uvJ-ek.js} +2 -2
  37. package/dist/web/public/assets/{admins-DFZcKgq0.js.map → admins-C9uvJ-ek.js.map} +1 -1
  38. package/dist/web/public/assets/{agents-DTONSU0R.js → agents-rbtxCOzD.js} +2 -2
  39. package/dist/web/public/assets/{agents-DTONSU0R.js.map → agents-rbtxCOzD.js.map} +1 -1
  40. package/dist/web/public/assets/{approvals-BdDJvH8b.js → approvals-CgRDzZZP.js} +2 -2
  41. package/dist/web/public/assets/{approvals-BdDJvH8b.js.map → approvals-CgRDzZZP.js.map} +1 -1
  42. package/dist/web/public/assets/{arrow-down-Bhl7hNwa.js → arrow-down-DfVXLyJ6.js} +2 -2
  43. package/dist/web/public/assets/{arrow-down-Bhl7hNwa.js.map → arrow-down-DfVXLyJ6.js.map} +1 -1
  44. package/dist/web/public/assets/{arrow-up-DZLw3qr1.js → arrow-up-CMHA89ux.js} +2 -2
  45. package/dist/web/public/assets/{arrow-up-DZLw3qr1.js.map → arrow-up-CMHA89ux.js.map} +1 -1
  46. package/dist/web/public/assets/{asks-Cj2QazUD.js → asks-9JCznWEb.js} +2 -2
  47. package/dist/web/public/assets/{asks-Cj2QazUD.js.map → asks-9JCznWEb.js.map} +1 -1
  48. package/dist/web/public/assets/{audit-sxS7UUa6.js → audit-DM5sKNA4.js} +2 -2
  49. package/dist/web/public/assets/{audit-sxS7UUa6.js.map → audit-DM5sKNA4.js.map} +1 -1
  50. package/dist/web/public/assets/{bell-CqimaF3k.js → bell-BzG0tUiv.js} +2 -2
  51. package/dist/web/public/assets/{bell-CqimaF3k.js.map → bell-BzG0tUiv.js.map} +1 -1
  52. package/dist/web/public/assets/{bgjobs-BnXdz4TP.js → bgjobs-dLxHKjQK.js} +2 -2
  53. package/dist/web/public/assets/{bgjobs-BnXdz4TP.js.map → bgjobs-dLxHKjQK.js.map} +1 -1
  54. package/dist/web/public/assets/{brain-4TIClaVZ.js → brain-9QmMQ6Ap.js} +2 -2
  55. package/dist/web/public/assets/{brain-4TIClaVZ.js.map → brain-9QmMQ6Ap.js.map} +1 -1
  56. package/dist/web/public/assets/{briefcase-iKF60CJd.js → briefcase-BehkRQvT.js} +2 -2
  57. package/dist/web/public/assets/{briefcase-iKF60CJd.js.map → briefcase-BehkRQvT.js.map} +1 -1
  58. package/dist/web/public/assets/{chat-Cjp0ECm5.js → chat-nfyoGDVp.js} +2 -2
  59. package/dist/web/public/assets/{chat-Cjp0ECm5.js.map → chat-nfyoGDVp.js.map} +1 -1
  60. package/dist/web/public/assets/{chevron-left-sZyMkeG-.js → chevron-left-DHpm5XR1.js} +2 -2
  61. package/dist/web/public/assets/{chevron-left-sZyMkeG-.js.map → chevron-left-DHpm5XR1.js.map} +1 -1
  62. package/dist/web/public/assets/{chevron-right-CPHPRLSX.js → chevron-right-BIKADdPm.js} +2 -2
  63. package/dist/web/public/assets/{chevron-right-CPHPRLSX.js.map → chevron-right-BIKADdPm.js.map} +1 -1
  64. package/dist/web/public/assets/{circle-check-BB11MxVm.js → circle-check-BbAeV_k2.js} +2 -2
  65. package/dist/web/public/assets/{circle-check-BB11MxVm.js.map → circle-check-BbAeV_k2.js.map} +1 -1
  66. package/dist/web/public/assets/{circle-check-big-Sj-6H_3x.js → circle-check-big-Cd4Eyz41.js} +2 -2
  67. package/dist/web/public/assets/{circle-check-big-Sj-6H_3x.js.map → circle-check-big-Cd4Eyz41.js.map} +1 -1
  68. package/dist/web/public/assets/{circle-x-DYcD4BUu.js → circle-x-CrmHcrAS.js} +2 -2
  69. package/dist/web/public/assets/{circle-x-DYcD4BUu.js.map → circle-x-CrmHcrAS.js.map} +1 -1
  70. package/dist/web/public/assets/{clock-BVXa81yB.js → clock-jJtwqx8f.js} +2 -2
  71. package/dist/web/public/assets/{clock-BVXa81yB.js.map → clock-jJtwqx8f.js.map} +1 -1
  72. package/dist/web/public/assets/{confirm-dialog-C2melodU.js → confirm-dialog-D4JCDxHT.js} +2 -2
  73. package/dist/web/public/assets/{confirm-dialog-C2melodU.js.map → confirm-dialog-D4JCDxHT.js.map} +1 -1
  74. package/dist/web/public/assets/{copy-D1OIgfLU.js → copy-D9ljWg7b.js} +2 -2
  75. package/dist/web/public/assets/{copy-D1OIgfLU.js.map → copy-D9ljWg7b.js.map} +1 -1
  76. package/dist/web/public/assets/{data-table-BYJ2qMyY.js → data-table-yUuGHUSG.js} +2 -2
  77. package/dist/web/public/assets/{data-table-BYJ2qMyY.js.map → data-table-yUuGHUSG.js.map} +1 -1
  78. package/dist/web/public/assets/{download-BChufhnl.js → download-9zxV6ejH.js} +2 -2
  79. package/dist/web/public/assets/{download-BChufhnl.js.map → download-9zxV6ejH.js.map} +1 -1
  80. package/dist/web/public/assets/{email-exon2FvQ.js → email-C8Fx7GcZ.js} +2 -2
  81. package/dist/web/public/assets/{email-exon2FvQ.js.map → email-C8Fx7GcZ.js.map} +1 -1
  82. package/dist/web/public/assets/{empty-state-De5ls0uC.js → empty-state-B0sJBvsG.js} +2 -2
  83. package/dist/web/public/assets/{empty-state-De5ls0uC.js.map → empty-state-B0sJBvsG.js.map} +1 -1
  84. package/dist/web/public/assets/{external-link-CiJZi5YL.js → external-link-C3fHPbrL.js} +2 -2
  85. package/dist/web/public/assets/{external-link-CiJZi5YL.js.map → external-link-C3fHPbrL.js.map} +1 -1
  86. package/dist/web/public/assets/{eye-DowB5M1R.js → eye-BrcGR1Ln.js} +2 -2
  87. package/dist/web/public/assets/{eye-DowB5M1R.js.map → eye-BrcGR1Ln.js.map} +1 -1
  88. package/dist/web/public/assets/{facts-BdnrzWfV.js → facts-DNcekpR_.js} +2 -2
  89. package/dist/web/public/assets/{facts-BdnrzWfV.js.map → facts-DNcekpR_.js.map} +1 -1
  90. package/dist/web/public/assets/{goals-D6ibCBqb.js → goals-BJ0I0rVU.js} +2 -2
  91. package/dist/web/public/assets/{goals-D6ibCBqb.js.map → goals-BJ0I0rVU.js.map} +1 -1
  92. package/dist/web/public/assets/{health-BA8ydz1A.js → health-DCFAQ615.js} +2 -2
  93. package/dist/web/public/assets/{health-BA8ydz1A.js.map → health-DCFAQ615.js.map} +1 -1
  94. package/dist/web/public/assets/{heart-pulse-ClrbGrB7.js → heart-pulse-CiwiVY1D.js} +2 -2
  95. package/dist/web/public/assets/{heart-pulse-ClrbGrB7.js.map → heart-pulse-CiwiVY1D.js.map} +1 -1
  96. package/dist/web/public/assets/{heartbeat-j03zupAy.js → heartbeat-CYIIkyqM.js} +2 -2
  97. package/dist/web/public/assets/{heartbeat-j03zupAy.js.map → heartbeat-CYIIkyqM.js.map} +1 -1
  98. package/dist/web/public/assets/{hot-D3bwuObi.js → hot-SjwVKjTN.js} +2 -2
  99. package/dist/web/public/assets/{hot-D3bwuObi.js.map → hot-SjwVKjTN.js.map} +1 -1
  100. package/dist/web/public/assets/index-BiXaJRfQ.js +209 -0
  101. package/dist/web/public/assets/index-BiXaJRfQ.js.map +1 -0
  102. package/dist/web/public/assets/{index-CokfQGcz.css → index-DknVjPYB.css} +1 -1
  103. package/dist/web/public/assets/{injection-C89g9123.js → injection-rK-nXEck.js} +2 -2
  104. package/dist/web/public/assets/{injection-C89g9123.js.map → injection-rK-nXEck.js.map} +1 -1
  105. package/dist/web/public/assets/{installed-1Hal8dxW.js → installed-C3GsWhFt.js} +2 -2
  106. package/dist/web/public/assets/{installed-1Hal8dxW.js.map → installed-C3GsWhFt.js.map} +1 -1
  107. package/dist/web/public/assets/{jobs-cQ7V-7ec.js → jobs-Bu20ae1w.js} +2 -2
  108. package/dist/web/public/assets/{jobs-cQ7V-7ec.js.map → jobs-Bu20ae1w.js.map} +1 -1
  109. package/dist/web/public/assets/{layout-U5o6RgqN.js → layout-B4AOR7bx.js} +2 -2
  110. package/dist/web/public/assets/{layout-U5o6RgqN.js.map → layout-B4AOR7bx.js.map} +1 -1
  111. package/dist/web/public/assets/{layout-Y9JSZczb.js → layout-BjiHbubM.js} +2 -2
  112. package/dist/web/public/assets/{layout-Y9JSZczb.js.map → layout-BjiHbubM.js.map} +1 -1
  113. package/dist/web/public/assets/{layout-CZ9hb8_a.js → layout-C0eeaex1.js} +2 -2
  114. package/dist/web/public/assets/{layout-CZ9hb8_a.js.map → layout-C0eeaex1.js.map} +1 -1
  115. package/dist/web/public/assets/{layout-CXGgZCd2.js → layout-CHFdMCNs.js} +2 -2
  116. package/dist/web/public/assets/{layout-CXGgZCd2.js.map → layout-CHFdMCNs.js.map} +1 -1
  117. package/dist/web/public/assets/{layout-BbRAk_tA.js → layout-e2mh2uBC.js} +2 -2
  118. package/dist/web/public/assets/{layout-BbRAk_tA.js.map → layout-e2mh2uBC.js.map} +1 -1
  119. package/dist/web/public/assets/{llm-CumYZM83.js → llm-CgMGyAjF.js} +2 -2
  120. package/dist/web/public/assets/{llm-CumYZM83.js.map → llm-CgMGyAjF.js.map} +1 -1
  121. package/dist/web/public/assets/{loader-circle-CZQXsfz7.js → loader-circle-D_dW2RUZ.js} +2 -2
  122. package/dist/web/public/assets/{loader-circle-CZQXsfz7.js.map → loader-circle-D_dW2RUZ.js.map} +1 -1
  123. package/dist/web/public/assets/{map-pin-CYj0xBbt.js → map-pin-jOOaGCmo.js} +2 -2
  124. package/dist/web/public/assets/{map-pin-CYj0xBbt.js.map → map-pin-jOOaGCmo.js.map} +1 -1
  125. package/dist/web/public/assets/{mcp-DP4Vj1Nh.js → mcp-Ip_omrap.js} +2 -2
  126. package/dist/web/public/assets/{mcp-DP4Vj1Nh.js.map → mcp-Ip_omrap.js.map} +1 -1
  127. package/dist/web/public/assets/{memos-ZDpt1S28.js → memos-yOmAURiM.js} +2 -2
  128. package/dist/web/public/assets/{memos-ZDpt1S28.js.map → memos-yOmAURiM.js.map} +1 -1
  129. package/dist/web/public/assets/{messengers-B007J8et.js → messengers-DdS6Tv_H.js} +2 -2
  130. package/dist/web/public/assets/{messengers-B007J8et.js.map → messengers-DdS6Tv_H.js.map} +1 -1
  131. package/dist/web/public/assets/{mobile-Crm0YJ36.js → mobile-7gRnqslc.js} +2 -2
  132. package/dist/web/public/assets/{mobile-Crm0YJ36.js.map → mobile-7gRnqslc.js.map} +1 -1
  133. package/dist/web/public/assets/{network-BYbGwOEp.js → network-ClaA9iUg.js} +2 -2
  134. package/dist/web/public/assets/{network-BYbGwOEp.js.map → network-ClaA9iUg.js.map} +1 -1
  135. package/dist/web/public/assets/{outbox-D7xZ5y2T.js → outbox-YtiqLz-u.js} +2 -2
  136. package/dist/web/public/assets/{outbox-D7xZ5y2T.js.map → outbox-YtiqLz-u.js.map} +1 -1
  137. package/dist/web/public/assets/{pagination-bzSoQOAd.js → pagination-DU9Lf0rD.js} +2 -2
  138. package/dist/web/public/assets/{pagination-bzSoQOAd.js.map → pagination-DU9Lf0rD.js.map} +1 -1
  139. package/dist/web/public/assets/{persona-VT6A3VYL.js → persona-C9vZYuJJ.js} +2 -2
  140. package/dist/web/public/assets/{persona-VT6A3VYL.js.map → persona-C9vZYuJJ.js.map} +1 -1
  141. package/dist/web/public/assets/{plans-b4DAc_3a.js → plans-doYYvgG_.js} +2 -2
  142. package/dist/web/public/assets/{plans-b4DAc_3a.js.map → plans-doYYvgG_.js.map} +1 -1
  143. package/dist/web/public/assets/{play-SPYhVFeC.js → play-C5MgP1qM.js} +2 -2
  144. package/dist/web/public/assets/{play-SPYhVFeC.js.map → play-C5MgP1qM.js.map} +1 -1
  145. package/dist/web/public/assets/{plus-D__n9IVW.js → plus-BFi9eVCl.js} +2 -2
  146. package/dist/web/public/assets/{plus-D__n9IVW.js.map → plus-BFi9eVCl.js.map} +1 -1
  147. package/dist/web/public/assets/{policy-CWeiR9UO.js → policy-DS3IIL78.js} +2 -2
  148. package/dist/web/public/assets/{policy-CWeiR9UO.js.map → policy-DS3IIL78.js.map} +1 -1
  149. package/dist/web/public/assets/{qr-code-BqDQw03Z.js → qr-code-BL039OK7.js} +2 -2
  150. package/dist/web/public/assets/{qr-code-BqDQw03Z.js.map → qr-code-BL039OK7.js.map} +1 -1
  151. package/dist/web/public/assets/{refresh-ccw-CW2loqyz.js → refresh-ccw-DBNikooZ.js} +2 -2
  152. package/dist/web/public/assets/{refresh-ccw-CW2loqyz.js.map → refresh-ccw-DBNikooZ.js.map} +1 -1
  153. package/dist/web/public/assets/{reminders-BAl8NC0R.js → reminders-BcymTbK9.js} +2 -2
  154. package/dist/web/public/assets/{reminders-BAl8NC0R.js.map → reminders-BcymTbK9.js.map} +1 -1
  155. package/dist/web/public/assets/{save-DzWp78MC.js → save-DZiTNYpH.js} +2 -2
  156. package/dist/web/public/assets/{save-DzWp78MC.js.map → save-DZiTNYpH.js.map} +1 -1
  157. package/dist/web/public/assets/{schedules-6cyfjv0O.js → schedules-C47XYMM0.js} +2 -2
  158. package/dist/web/public/assets/{schedules-6cyfjv0O.js.map → schedules-C47XYMM0.js.map} +1 -1
  159. package/dist/web/public/assets/{search-DVWPME2t.js → search-DSXC_EYz.js} +2 -2
  160. package/dist/web/public/assets/{search-DVWPME2t.js.map → search-DSXC_EYz.js.map} +1 -1
  161. package/dist/web/public/assets/{search-Bh7gD1Aq.js → search-DbPfPYg8.js} +2 -2
  162. package/dist/web/public/assets/{search-Bh7gD1Aq.js.map → search-DbPfPYg8.js.map} +1 -1
  163. package/dist/web/public/assets/{security-DlZ_rDwC.js → security-D7z1GPFd.js} +2 -2
  164. package/dist/web/public/assets/{security-DlZ_rDwC.js.map → security-D7z1GPFd.js.map} +1 -1
  165. package/dist/web/public/assets/{service-DKkji52r.js → service-7mISPUwf.js} +2 -2
  166. package/dist/web/public/assets/{service-DKkji52r.js.map → service-7mISPUwf.js.map} +1 -1
  167. package/dist/web/public/assets/{shield-alert-5pYX52s1.js → shield-alert-C3F8izo0.js} +2 -2
  168. package/dist/web/public/assets/{shield-alert-5pYX52s1.js.map → shield-alert-C3F8izo0.js.map} +1 -1
  169. package/dist/web/public/assets/{status-badge-W8PRNBT2.js → status-badge-CvmA1Y93.js} +2 -2
  170. package/dist/web/public/assets/{status-badge-W8PRNBT2.js.map → status-badge-CvmA1Y93.js.map} +1 -1
  171. package/dist/web/public/assets/{subtasks-DSvOTpF0.js → subtasks-Bkgb9Pkm.js} +2 -2
  172. package/dist/web/public/assets/{subtasks-DSvOTpF0.js.map → subtasks-Bkgb9Pkm.js.map} +1 -1
  173. package/dist/web/public/assets/{table-B695Fh_p.js → table-z7CVpKMe.js} +2 -2
  174. package/dist/web/public/assets/{table-B695Fh_p.js.map → table-z7CVpKMe.js.map} +1 -1
  175. package/dist/web/public/assets/{topn-DqUC9bYh.js → topn-B7GHdOiE.js} +2 -2
  176. package/dist/web/public/assets/{topn-DqUC9bYh.js.map → topn-B7GHdOiE.js.map} +1 -1
  177. package/dist/web/public/assets/{trash-2-DH4UNSUm.js → trash-2-DdjC6QH7.js} +2 -2
  178. package/dist/web/public/assets/{trash-2-DH4UNSUm.js.map → trash-2-DdjC6QH7.js.map} +1 -1
  179. package/dist/web/public/assets/{use-agim-skills-BD17YQCK.js → use-agim-skills-CZkKns-g.js} +2 -2
  180. package/dist/web/public/assets/{use-agim-skills-BD17YQCK.js.map → use-agim-skills-CZkKns-g.js.map} +1 -1
  181. package/dist/web/public/assets/{use-background-tasks-Clyo1IGE.js → use-background-tasks-CVdojnmx.js} +2 -2
  182. package/dist/web/public/assets/{use-background-tasks-Clyo1IGE.js.map → use-background-tasks-CVdojnmx.js.map} +1 -1
  183. package/dist/web/public/assets/{use-memory-BGvVWIQX.js → use-memory-CHARtjQ-.js} +2 -2
  184. package/dist/web/public/assets/{use-memory-BGvVWIQX.js.map → use-memory-CHARtjQ-.js.map} +1 -1
  185. package/dist/web/public/assets/{use-observability-IlURblVq.js → use-observability-BtZPZLvB.js} +2 -2
  186. package/dist/web/public/assets/{use-observability-IlURblVq.js.map → use-observability-BtZPZLvB.js.map} +1 -1
  187. package/dist/web/public/assets/{use-settings-DFTGCq8J.js → use-settings-DHEiuHAv.js} +2 -2
  188. package/dist/web/public/assets/{use-settings-DFTGCq8J.js.map → use-settings-DHEiuHAv.js.map} +1 -1
  189. package/dist/web/public/assets/{use-workspace-DaXX6QdK.js → use-workspace-C1gInLvF.js} +2 -2
  190. package/dist/web/public/assets/{use-workspace-DaXX6QdK.js.map → use-workspace-C1gInLvF.js.map} +1 -1
  191. package/dist/web/public/assets/{vector-CKUwZBiK.js → vector-CLlo9px7.js} +2 -2
  192. package/dist/web/public/assets/{vector-CKUwZBiK.js.map → vector-CLlo9px7.js.map} +1 -1
  193. package/dist/web/public/assets/{viewer-edlHJiVg.js → viewer-BGdrQoJC.js} +2 -2
  194. package/dist/web/public/assets/{viewer-edlHJiVg.js.map → viewer-BGdrQoJC.js.map} +1 -1
  195. package/dist/web/public/assets/{workspace-B0jlv7Gj.js → workspace-zG8AgTev.js} +2 -2
  196. package/dist/web/public/assets/{workspace-B0jlv7Gj.js.map → workspace-zG8AgTev.js.map} +1 -1
  197. package/dist/web/public/assets/{workspaces-_Ho1uiD-.js → workspaces-DT2xLs5G.js} +2 -2
  198. package/dist/web/public/assets/{workspaces-_Ho1uiD-.js.map → workspaces-DT2xLs5G.js.map} +1 -1
  199. package/dist/web/public/index.html +2 -2
  200. package/dist/web/server.d.ts.map +1 -1
  201. package/dist/web/server.js +56 -37
  202. package/dist/web/server.js.map +1 -1
  203. package/package.json +1 -1
  204. package/dist/web/public/assets/index-DvWldAJY.js +0 -204
  205. package/dist/web/public/assets/index-DvWldAJY.js.map +0 -1
@@ -120,6 +120,10 @@ export async function handleAskOp(payload, ctx) {
120
120
  const customInputLabel = normalizeCustomInputLabel(payload.customInputLabel);
121
121
  const timeoutSec = clampTimeout(payload.timeoutSec);
122
122
  const allowTextReply = payload.allowTextReply !== false; // default true
123
+ const detailsUrl = normalizeDetailsUrl(payload.detailsUrl);
124
+ const detailsLabel = typeof payload.detailsLabel === 'string' && payload.detailsLabel.trim()
125
+ ? payload.detailsLabel.trim().slice(0, MAX_CHOICE_LABEL_CHARS)
126
+ : undefined;
123
127
  // Resolve the messenger for the IM thread. If the platform isn't
124
128
  // registered (rare — usually means a misconfigured ACP caller), fall
125
129
  // through to text-only via sink, which will queue and eventually fail
@@ -133,8 +137,18 @@ export async function handleAskOp(payload, ctx) {
133
137
  reason: 'no-messenger',
134
138
  };
135
139
  }
140
+ // Who can host a full-featured card (multi-select + custom input)?
141
+ // - tui / web render the interaction client-side.
142
+ // - adapters implementing updateChoiceCard (Telegram) render a stateful
143
+ // server-side toggle keyboard.
144
+ // Everything else only gets a card for the simple single-select case and
145
+ // falls back to the text-reply path for richer modes.
146
+ const serverSideToggle = Boolean(messenger.updateChoiceCard);
136
147
  const canSendChoiceCard = Boolean(messenger.sendChoiceCard
137
- && (ctx.platform === 'tui' || (selectionMode === 'single' && !allowCustomInput)));
148
+ && (ctx.platform === 'tui'
149
+ || ctx.platform === 'web'
150
+ || serverSideToggle
151
+ || (selectionMode === 'single' && !allowCustomInput)));
138
152
  if (!allowTextReply && !canSendChoiceCard) {
139
153
  return {
140
154
  ok: false,
@@ -159,6 +173,11 @@ export async function handleAskOp(payload, ctx) {
159
173
  allowCustomInput,
160
174
  customInputLabel,
161
175
  allowTextReply,
176
+ timeoutSec,
177
+ detailsUrl,
178
+ detailsLabel,
179
+ selected: new Set(),
180
+ awaitingCustomText: false,
162
181
  resolve: () => { },
163
182
  timer: null,
164
183
  createdAt: Date.now(),
@@ -192,37 +211,14 @@ export async function handleAskOp(payload, ctx) {
192
211
  pending.timer.unref();
193
212
  }
194
213
  // Compose the prompt. Cards on adapters that support them, text on
195
- // everything else. The card's data field encodes reqId + index so
196
- // the button callback can route directly without an extra lookup.
197
- const cardChoices = choices.map((c) => ({
198
- label: `${c.index}. ${c.label}`,
199
- data: `${BTN_PREFIX}${reqId}:${c.index}`,
200
- }));
201
- if (ctx.platform === 'tui' && allowCustomInput) {
202
- cardChoices.push({
203
- label: `0. ${customInputLabel}`,
204
- data: `${BTN_PREFIX}${reqId}:custom`,
205
- });
206
- }
207
- const card = {
208
- title: 'agim · 请选择',
209
- body: question,
210
- choices: cardChoices,
211
- meta: {
212
- kind: 'ask-user',
213
- reqId,
214
- selectionMode,
215
- minSelections,
216
- maxSelections,
217
- allowCustomInput,
218
- customInputLabel,
219
- timeoutSec,
220
- },
221
- };
214
+ // everything else. The card's data field encodes reqId + the button
215
+ // action so the callback can route directly without an extra lookup.
216
+ const card = buildAskCard(pending, serverSideToggle);
222
217
  let cardSent = false;
223
218
  if (canSendChoiceCard && messenger.sendChoiceCard) {
224
219
  try {
225
- await messenger.sendChoiceCard(ctx.threadId, card);
220
+ const sent = await messenger.sendChoiceCard(ctx.threadId, card);
221
+ pending.cardMessageId = sent.messageId;
226
222
  cardSent = true;
227
223
  }
228
224
  catch (err) {
@@ -278,6 +274,87 @@ export async function handleAskOp(payload, ctx) {
278
274
  });
279
275
  return promise;
280
276
  }
277
+ /**
278
+ * Build the ChoiceCardPrompt for a pending ask. Used both for the initial
279
+ * send and for in-place re-render after a toggle tap, so the keyboard stays
280
+ * consistent. Two styles:
281
+ * - client-side (web/tui): plain per-choice buttons; the client renders
282
+ * checkboxes / custom input and assembles `multi:` / `custom:` payloads.
283
+ * - server-side toggle (Telegram): for multi, ☐/☑️ toggle buttons +
284
+ * "✅ 完成 (n)" submit + optional "✍️" custom trigger; for single, plain
285
+ * buttons + optional custom trigger.
286
+ */
287
+ function buildAskCard(p, serverSideToggle) {
288
+ let cardChoices;
289
+ if (!serverSideToggle) {
290
+ cardChoices = p.choices.map((c) => ({
291
+ label: `${c.index}. ${c.label}`,
292
+ data: `${BTN_PREFIX}${p.reqId}:${c.index}`,
293
+ }));
294
+ if (p.platform === 'tui' && p.allowCustomInput) {
295
+ cardChoices.push({ label: `0. ${p.customInputLabel}`, data: `${BTN_PREFIX}${p.reqId}:custom` });
296
+ }
297
+ }
298
+ else if (p.selectionMode === 'multi') {
299
+ cardChoices = p.choices.map((c) => ({
300
+ label: `${p.selected.has(c.index) ? '☑️' : '☐'} ${c.index}. ${c.label}`,
301
+ data: `${BTN_PREFIX}${p.reqId}:t:${c.index}`,
302
+ }));
303
+ cardChoices.push({ label: `✅ 完成 (${p.selected.size})`, data: `${BTN_PREFIX}${p.reqId}:ok` });
304
+ if (p.allowCustomInput) {
305
+ cardChoices.push({ label: `✍️ ${p.customInputLabel}`, data: `${BTN_PREFIX}${p.reqId}:custom` });
306
+ }
307
+ }
308
+ else {
309
+ cardChoices = p.choices.map((c) => ({
310
+ label: `${c.index}. ${c.label}`,
311
+ data: `${BTN_PREFIX}${p.reqId}:${c.index}`,
312
+ }));
313
+ if (p.allowCustomInput) {
314
+ cardChoices.push({ label: `✍️ ${p.customInputLabel}`, data: `${BTN_PREFIX}${p.reqId}:custom` });
315
+ }
316
+ }
317
+ return {
318
+ title: 'agim · 请选择',
319
+ body: p.question,
320
+ choices: cardChoices,
321
+ links: p.detailsUrl ? [{ label: p.detailsLabel ?? '📖 查看详情', url: p.detailsUrl }] : undefined,
322
+ meta: {
323
+ kind: 'ask-user',
324
+ reqId: p.reqId,
325
+ selectionMode: p.selectionMode,
326
+ minSelections: p.minSelections,
327
+ maxSelections: p.maxSelections,
328
+ allowCustomInput: p.allowCustomInput,
329
+ customInputLabel: p.customInputLabel,
330
+ timeoutSec: p.timeoutSec,
331
+ },
332
+ };
333
+ }
334
+ /** Validate an optional details URL: http(s) only, ≤512 chars. Returns
335
+ * undefined (silently dropped) on anything invalid — a bad link should
336
+ * never block the ask. */
337
+ function normalizeDetailsUrl(raw) {
338
+ if (typeof raw !== 'string')
339
+ return undefined;
340
+ const url = raw.trim();
341
+ if (!url || url.length > 512)
342
+ return undefined;
343
+ if (!/^https?:\/\//i.test(url))
344
+ return undefined;
345
+ return url;
346
+ }
347
+ /** Short receipt shown when a card resolves (used for editChoiceCard). */
348
+ function askFinalText(result) {
349
+ if (typeof result.customText === 'string') {
350
+ const t = result.customText.length > 60 ? `${result.customText.slice(0, 59)}…` : result.customText;
351
+ return `✅ 已回答:${t}`;
352
+ }
353
+ if (result.selectionMode === 'multi' && result.labels?.length) {
354
+ return `✅ 已选择:${result.labels.join('、')}`;
355
+ }
356
+ return `✅ 已选择:${result.label}`;
357
+ }
281
358
  /**
282
359
  * Router-side: try to resolve a pending ask for this thread with the
283
360
  * inbound text. Returns true iff the text was consumed (router should
@@ -296,12 +373,22 @@ export function tryResolvePendingAsk(platform, channelId, threadId, rawText) {
296
373
  const p = PENDING.get(reqId);
297
374
  if (!p)
298
375
  continue;
299
- if (!p.allowTextReply)
300
- continue;
301
- const result = resolveTextReply(p, cleaned);
376
+ // If the user tapped the "custom input" button, the next text is taken
377
+ // verbatim (no choice matching, and regardless of allowTextReply — they
378
+ // explicitly opted into typing an answer).
379
+ let result;
380
+ if (p.awaitingCustomText && p.allowCustomInput) {
381
+ result = toCustomResult(cleaned, 'text', cleaned, p);
382
+ }
383
+ else {
384
+ if (!p.allowTextReply)
385
+ continue;
386
+ result = resolveTextReply(p, cleaned);
387
+ }
302
388
  if (!result)
303
389
  continue;
304
390
  p.resolve({ ok: true, result });
391
+ stripCardBestEffort(p, askFinalText(result));
305
392
  log.info({
306
393
  event: 'ask.resolved.text',
307
394
  reqId,
@@ -314,56 +401,141 @@ export function tryResolvePendingAsk(platform, channelId, threadId, rawText) {
314
401
  }
315
402
  return false;
316
403
  }
404
+ /** Best-effort: after a card-backed ask resolves via text, edit the card to
405
+ * its terminal receipt + drop the buttons so a stale tap can't fire. No-op
406
+ * when there's no card or the adapter can't edit. */
407
+ function stripCardBestEffort(p, finalText) {
408
+ if (!p.cardMessageId)
409
+ return;
410
+ const m = resolveMessenger(p.platform);
411
+ if (!m?.editChoiceCard)
412
+ return;
413
+ void m.editChoiceCard(p.threadId, p.cardMessageId, finalText).catch(() => { });
414
+ }
317
415
  /**
318
- * Messenger-side: button callback handler. The data field is the
319
- * card's `data` we stored as one of:
416
+ * Resolve a pending ask from a "terminal" button payload — i.e. one that
417
+ * carries the full answer, as produced client-side by web/tui:
320
418
  * - ask:<reqId>:<index> (single)
321
419
  * - ask:<reqId>:multi:1,3 (multi)
322
420
  * - ask:<reqId>:custom:<base64> (custom text)
323
- * Returns true iff resolved (caller can ack the tap).
421
+ * Returns the result on success. The stateful Telegram kinds (toggle /
422
+ * submit / custom-trigger) are NOT handled here — see handleAskButton.
324
423
  */
325
- export function tryResolvePendingAskByButton(data) {
424
+ function resolveByButton(data) {
326
425
  const parsed = parseAskButtonData(data);
327
426
  if (!parsed)
328
- return false;
427
+ return null;
329
428
  const p = PENDING.get(parsed.reqId);
330
429
  if (!p)
331
- return false;
430
+ return null;
332
431
  if (parsed.kind === 'single') {
333
432
  const choice = p.choices.find((c) => c.index === parsed.index);
334
433
  if (!choice)
335
- return false;
434
+ return null;
336
435
  if (p.selectionMode === 'multi') {
337
436
  if (p.minSelections > 1 || p.maxSelections < 1)
338
- return false;
339
- p.resolve({ ok: true, result: toMultiResult([choice], 'button', data) });
437
+ return null;
438
+ const result = toMultiResult([choice], 'button', data);
439
+ p.resolve({ ok: true, result });
340
440
  log.info({ event: 'ask.resolved.button', reqId: parsed.reqId, mode: 'multi', picks: 1 });
341
- return true;
441
+ return result;
342
442
  }
343
- p.resolve({ ok: true, result: toSingleResult(choice, 'button', data, p.selectionMode) });
443
+ const result = toSingleResult(choice, 'button', data, p.selectionMode);
444
+ p.resolve({ ok: true, result });
344
445
  log.info({ event: 'ask.resolved.button', reqId: parsed.reqId, choice: choice.index, mode: p.selectionMode });
345
- return true;
446
+ return result;
346
447
  }
347
448
  if (parsed.kind === 'multi') {
348
449
  if (p.selectionMode !== 'multi')
349
- return false;
450
+ return null;
350
451
  const picked = getChoicesByIndexes(p.choices, parsed.indexes);
351
452
  if (!picked)
352
- return false;
453
+ return null;
353
454
  if (picked.length < p.minSelections || picked.length > p.maxSelections)
354
- return false;
355
- p.resolve({ ok: true, result: toMultiResult(picked, 'button', data) });
455
+ return null;
456
+ const result = toMultiResult(picked, 'button', data);
457
+ p.resolve({ ok: true, result });
356
458
  log.info({ event: 'ask.resolved.button', reqId: parsed.reqId, mode: 'multi', picks: picked.length });
357
- return true;
459
+ return result;
358
460
  }
359
- if (!p.allowCustomInput)
360
- return false;
361
- const customText = parsed.text.trim();
362
- if (!customText)
363
- return false;
364
- p.resolve({ ok: true, result: toCustomResult(customText, 'button', data, p) });
365
- log.info({ event: 'ask.resolved.button', reqId: parsed.reqId, mode: p.selectionMode, custom: true });
366
- return true;
461
+ if (parsed.kind === 'custom') {
462
+ if (!p.allowCustomInput)
463
+ return null;
464
+ const customText = parsed.text.trim();
465
+ if (!customText)
466
+ return null;
467
+ const result = toCustomResult(customText, 'button', data, p);
468
+ p.resolve({ ok: true, result });
469
+ log.info({ event: 'ask.resolved.button', reqId: parsed.reqId, mode: p.selectionMode, custom: true });
470
+ return result;
471
+ }
472
+ return null;
473
+ }
474
+ /**
475
+ * Messenger-side: resolve a pending ask from a terminal button payload.
476
+ * Returns true iff resolved. Kept for web/tui callers (and tests) that send
477
+ * fully-formed `single` / `multi:` / `custom:<b64>` data.
478
+ */
479
+ export function tryResolvePendingAskByButton(data) {
480
+ return resolveByButton(data) !== null;
481
+ }
482
+ /**
483
+ * Unified ask button dispatch. Handles BOTH the terminal payloads
484
+ * (single / multi: / custom:<b64>, via resolveByButton) AND the stateful
485
+ * Telegram kinds (toggle / submit / custom-trigger) that accumulate
486
+ * server-side. The router maps the returned outcome to an ack + an
487
+ * optional in-place card edit.
488
+ */
489
+ export function handleAskButton(data) {
490
+ const parsed = parseAskButtonData(data);
491
+ if (!parsed)
492
+ return { kind: 'unmatched' };
493
+ const p = PENDING.get(parsed.reqId);
494
+ if (!p)
495
+ return { kind: 'unmatched' };
496
+ if (parsed.kind === 'toggle') {
497
+ if (p.selectionMode !== 'multi')
498
+ return { kind: 'unmatched' };
499
+ if (!p.choices.some((c) => c.index === parsed.index))
500
+ return { kind: 'unmatched' };
501
+ if (p.selected.has(parsed.index)) {
502
+ p.selected.delete(parsed.index);
503
+ }
504
+ else {
505
+ if (p.selected.size >= p.maxSelections) {
506
+ return { kind: 'invalid', hint: `最多选 ${p.maxSelections} 项` };
507
+ }
508
+ p.selected.add(parsed.index);
509
+ }
510
+ return { kind: 'rerender', card: buildAskCard(p, true) };
511
+ }
512
+ if (parsed.kind === 'submit') {
513
+ if (p.selectionMode !== 'multi')
514
+ return { kind: 'unmatched' };
515
+ const idxs = Array.from(p.selected).sort((a, b) => a - b);
516
+ if (idxs.length < p.minSelections || idxs.length > p.maxSelections) {
517
+ return { kind: 'invalid', hint: `请选择 ${p.minSelections}-${p.maxSelections} 项(已选 ${idxs.length})` };
518
+ }
519
+ const picked = getChoicesByIndexes(p.choices, idxs);
520
+ if (!picked)
521
+ return { kind: 'unmatched' };
522
+ const result = toMultiResult(picked, 'button', data);
523
+ p.resolve({ ok: true, result });
524
+ log.info({ event: 'ask.resolved.button', reqId: parsed.reqId, mode: 'multi', picks: picked.length });
525
+ return { kind: 'resolved', finalText: askFinalText(result) };
526
+ }
527
+ if (parsed.kind === 'custom-trigger') {
528
+ if (!p.allowCustomInput)
529
+ return { kind: 'unmatched' };
530
+ p.awaitingCustomText = true;
531
+ log.info({ event: 'ask.await_custom', reqId: parsed.reqId });
532
+ return { kind: 'await-custom', prompt: '请直接输入你的回答(下一条消息将作为答案)' };
533
+ }
534
+ // Terminal payloads (single / multi: / custom:<b64>).
535
+ const result = resolveByButton(data);
536
+ if (!result)
537
+ return { kind: 'unmatched' };
538
+ return { kind: 'resolved', finalText: askFinalText(result) };
367
539
  }
368
540
  /** Diagnostic: pending count per thread. Used by /ask status / future
369
541
  * /tasks#ask web tile. */
@@ -612,12 +784,16 @@ function parseAskButtonData(data) {
612
784
  if (!reqId)
613
785
  return null;
614
786
  const action = parts[1];
615
- // Legacy / default format: ask:<reqId>:<index>
616
- if (action !== 'multi' && action !== 'custom') {
617
- const idx = Number.parseInt(action, 10);
787
+ // Toggle one multi-select index: ask:<reqId>:t:<index>
788
+ if (action === 't') {
789
+ const idx = Number.parseInt(parts[2] ?? '', 10);
618
790
  if (!Number.isFinite(idx))
619
791
  return null;
620
- return { reqId, kind: 'single', index: idx };
792
+ return { reqId, kind: 'toggle', index: idx };
793
+ }
794
+ // Submit the accumulated multi-select: ask:<reqId>:ok
795
+ if (action === 'ok') {
796
+ return { reqId, kind: 'submit' };
621
797
  }
622
798
  if (action === 'multi') {
623
799
  const raw = parts.slice(2).join(':');
@@ -626,11 +802,21 @@ function parseAskButtonData(data) {
626
802
  return null;
627
803
  return { reqId, kind: 'multi', indexes };
628
804
  }
629
- const encoded = parts.slice(2).join(':');
630
- const text = decodeBase64Url(encoded);
631
- if (text === null)
805
+ if (action === 'custom') {
806
+ const encoded = parts.slice(2).join(':');
807
+ // Bare `custom` (no payload) = trigger: enter await-custom-text mode.
808
+ if (!encoded)
809
+ return { reqId, kind: 'custom-trigger' };
810
+ const text = decodeBase64Url(encoded);
811
+ if (text === null)
812
+ return null;
813
+ return { reqId, kind: 'custom', text };
814
+ }
815
+ // Default format: ask:<reqId>:<index> (single).
816
+ const idx = Number.parseInt(action, 10);
817
+ if (!Number.isFinite(idx))
632
818
  return null;
633
- return { reqId, kind: 'custom', text };
819
+ return { reqId, kind: 'single', index: idx };
634
820
  }
635
821
  function parseMultiIndexes(raw) {
636
822
  if (!raw)
@@ -1 +1 @@
1
- {"version":3,"file":"ask-user-rpc.js","sourceRoot":"","sources":["../../src/core/ask-user-rpc.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,wCAAwC;AACxC,EAAE;AACF,gEAAgE;AAChE,sEAAsE;AACtE,uEAAuE;AACvE,kEAAkE;AAClE,qEAAqE;AACrE,+DAA+D;AAC/D,EAAE;AACF,aAAa;AACb,EAAE;AACF,8CAA8C;AAC9C,SAAS;AACT,uGAAuG;AACvG,SAAS;AACT,+DAA+D;AAC/D,SAAS;AACT,kBAAkB;AAClB,0CAA0C;AAC1C,iEAAiE;AACjE,uEAAuE;AACvE,mEAAmE;AACnE,+CAA+C;AAC/C,kDAAkD;AAClD,+DAA+D;AAC/D,qDAAqD;AACrD,sBAAsB;AACtB,uFAAuF;AACvF,EAAE;AACF,wCAAwC;AACxC,0DAA0D;AAC1D,uEAAuE;AACvE,mEAAmE;AACnE,kEAAkE;AAClE,mEAAmE;AACnE,mBAAmB;AAEnB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAGxC,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAE1D,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAA;AAE3D,yEAAyE;AACzE,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAA;AACvC,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAA;AACxC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAA;AAC5B,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAA,CAAG,iDAAiD;AAEhF;uEACuE;AACvE,MAAM,mBAAmB,GAAG,GAAG,CAAA,CAAE,QAAQ;AACzC,MAAM,eAAe,GAAG,CAAC,CAAA;AACzB,MAAM,eAAe,GAAG,EAAE,GAAG,EAAE,CAAA,CAAE,SAAS;AAE1C,yEAAyE;AACzE,MAAM,UAAU,GAAG,MAAM,CAAA;AACzB,MAAM,0BAA0B,GAAG,WAAW,CAAA;AAgF9C,MAAM,OAAO,GAA4B,IAAI,GAAG,EAAE,CAAA;AAElD,SAAS,SAAS,CAAC,QAAgB,EAAE,SAAiB,EAAE,QAAgB;IACtE,OAAO,GAAG,QAAQ,KAAK,SAAS,KAAK,QAAQ,EAAE,CAAA;AACjD,CAAC;AAED;;0CAE0C;AAC1C,MAAM,iBAAiB,GAA6B,IAAI,GAAG,EAAE,CAAA;AAE7D,SAAS,gBAAgB,CAAC,CAAa;IACrC,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAA;IAC1D,IAAI,GAAG,GAAG,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACpC,IAAI,CAAC,GAAG,EAAE,CAAC;QAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAAC,CAAC;IAC9D,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;AAClB,CAAC;AAED,SAAS,qBAAqB,CAAC,CAAa;IAC1C,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAA;IAC1D,MAAM,GAAG,GAAG,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACtC,IAAI,CAAC,GAAG;QAAE,OAAM;IAChB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IACnB,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC;QAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AACnD,CAAC;AAED,wEAAwE;AAExE;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAmB,EAAE,GAAe;IACpE,MAAM,QAAQ,GAAG,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IACpF,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,yCAAyC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;IACxG,IAAI,QAAQ,CAAC,MAAM,GAAG,kBAAkB,EAAE,CAAC;QACzC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,0BAA0B,kBAAkB,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;IACvG,CAAC;IACD,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IACjD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,+BAA+B,WAAW,IAAI,WAAW,oBAAoB,sBAAsB,SAAS;YACnH,MAAM,EAAE,SAAS;SAClB,CAAA;IACH,CAAC;IACD,MAAM,aAAa,GAAG,sBAAsB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;IACnE,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,2CAA2C,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;IAC7F,CAAC;IACD,MAAM,aAAa,GAAG,aAAa,KAAK,OAAO;QAC7C,CAAC,CAAC,uBAAuB,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC,CAAA;IACL,MAAM,aAAa,GAAG,aAAa,KAAK,OAAO;QAC7C,CAAC,CAAC,uBAAuB,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC;QAChE,CAAC,CAAC,CAAC,CAAA;IACL,IAAI,aAAa,KAAK,OAAO,IAAI,CAAC,aAAa,GAAG,aAAa,IAAI,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACnG,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,2CAA2C,aAAa,mBAAmB,aAAa,aAAa,OAAO,CAAC,MAAM,EAAE;YAC5H,MAAM,EAAE,SAAS;SAClB,CAAA;IACH,CAAC;IACD,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,KAAK,IAAI,CAAA;IAC1D,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAC5E,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IACnD,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,KAAK,KAAK,CAAA,CAAE,eAAe;IAExE,iEAAiE;IACjE,qEAAqE;IACrE,sEAAsE;IACtE,qEAAqE;IACrE,yDAAyD;IACzD,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IAChD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,cAAc,GAAG,CAAC,QAAQ,gDAAgD;YACjF,MAAM,EAAE,cAAc;SACvB,CAAA;IACH,CAAC;IACD,MAAM,iBAAiB,GAAG,OAAO,CAC/B,SAAS,CAAC,cAAc;WACrB,CAAC,GAAG,CAAC,QAAQ,KAAK,KAAK,IAAI,CAAC,aAAa,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,CAAC,CACjF,CAAA;IACD,IAAI,CAAC,cAAc,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC1C,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,0EAA0E;YACjF,MAAM,EAAE,SAAS;SAClB,CAAA;IACH,CAAC;IAED,mEAAmE;IACnE,uEAAuE;IACvE,MAAM,KAAK,GAAG,UAAU,EAAE,CAAA;IAC1B,MAAM,OAAO,GAAe;QAC1B,KAAK;QACL,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE;QACxB,QAAQ;QACR,OAAO;QACP,aAAa;QACb,aAAa;QACb,aAAa;QACb,gBAAgB;QAChB,gBAAgB;QAChB,cAAc;QACd,OAAO,EAAE,GAAG,EAAE,GAAqC,CAAC;QACpD,KAAK,EAAE,IAAI;QACX,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;KACtB,CAAA;IAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAY,CAAC,OAAO,EAAE,EAAE;QACjD,OAAO,CAAC,OAAO,GAAG,CAAC,CAAY,EAAE,EAAE;YACjC,8DAA8D;YAC9D,0CAA0C;YAC1C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,OAAM;YAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACrB,qBAAqB,CAAC,OAAO,CAAC,CAAA;YAC9B,IAAI,OAAO,CAAC,KAAK;gBAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YAC9C,OAAO,CAAC,KAAK,GAAG,IAAI,CAAA;YACpB,OAAO,CAAC,CAAC,CAAC,CAAA;QACZ,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAC3B,gBAAgB,CAAC,OAAO,CAAC,CAAA;IAEzB,gEAAgE;IAChE,uDAAuD;IACvD,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;QAC9B,OAAO,CAAC,OAAO,CAAC;YACd,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,+BAA+B,UAAU,GAAG;YACnD,MAAM,EAAE,SAAS;SAClB,CAAC,CAAA;IACJ,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC,CAAA;IACrB,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClF,OAAO,CAAC,KAA+B,CAAC,KAAK,EAAE,CAAA;IAClD,CAAC;IAED,mEAAmE;IACnE,kEAAkE;IAClE,kEAAkE;IAClE,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACtC,KAAK,EAAE,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,EAAE;QAC/B,IAAI,EAAE,GAAG,UAAU,GAAG,KAAK,IAAI,CAAC,CAAC,KAAK,EAAE;KACzC,CAAC,CAAC,CAAA;IACH,IAAI,GAAG,CAAC,QAAQ,KAAK,KAAK,IAAI,gBAAgB,EAAE,CAAC;QAC/C,WAAW,CAAC,IAAI,CAAC;YACf,KAAK,EAAE,MAAM,gBAAgB,EAAE;YAC/B,IAAI,EAAE,GAAG,UAAU,GAAG,KAAK,SAAS;SACrC,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,IAAI,GAAqB;QAC7B,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,WAAW;QACpB,IAAI,EAAE;YACJ,IAAI,EAAE,UAAU;YAChB,KAAK;YACL,aAAa;YACb,aAAa;YACb,aAAa;YACb,gBAAgB;YAChB,gBAAgB;YAChB,UAAU;SACX;KACF,CAAA;IACD,IAAI,QAAQ,GAAG,KAAK,CAAA;IACpB,IAAI,iBAAiB,IAAI,SAAS,CAAC,cAAc,EAAE,CAAC;QAClD,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;YAClD,QAAQ,GAAG,IAAI,CAAA;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC;gBACP,KAAK,EAAE,sBAAsB;gBAC7B,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBAC9C,GAAG,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACtD,CAAC,CAAA;YACF,uCAAuC;QACzC,CAAC;IACH,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,QAAQ,GAAG,mBAAmB,CAAC;YACnC,WAAW,EAAE,OAAO,CAAC,MAAM;YAC3B,aAAa;YACb,aAAa;YACb,aAAa;YACb,gBAAgB;YAChB,cAAc;YACd,UAAU;SACX,CAAC,CAAA;QACF,MAAM,KAAK,GAAG;YACZ,KAAK,QAAQ,EAAE;YACf,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;YACjD,QAAQ;SACT,CAAA;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,OAAO,CAAC;gBACjB,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,SAAS,EAAE,GAAG,CAAC,SAAS;gBACxB,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;gBACzB,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,QAAQ;aACjB,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,iEAAiE;YACjE,gDAAgD;YAChD,OAAO,CAAC,OAAO,CAAC;gBACd,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,+BAA+B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;gBACxF,MAAM,EAAE,cAAc;aACvB,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,GAAG,CAAC,IAAI,CAAC;QACP,KAAK,EAAE,YAAY,EAAE,KAAK;QAC1B,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ;QAC9C,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ;QAC7C,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB;KAC9D,CAAC,CAAA;IAEF,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAClC,QAAgB,EAAE,SAAiB,EAAE,QAAgB,EACrD,OAAe;IAEf,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;IACpD,MAAM,GAAG,GAAG,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACtC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAExC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IAC9B,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAA;IAE1B,gDAAgD;IAChD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACpC,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAC5B,IAAI,CAAC,CAAC;YAAE,SAAQ;QAChB,IAAI,CAAC,CAAC,CAAC,cAAc;YAAE,SAAQ;QAC/B,MAAM,MAAM,GAAG,gBAAgB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;QAC3C,IAAI,CAAC,MAAM;YAAE,SAAQ;QACrB,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QAC/B,GAAG,CAAC,IAAI,CAAC;YACP,KAAK,EAAE,mBAAmB;YAC1B,KAAK;YACL,MAAM,EAAE,MAAM,CAAC,KAAK;YACpB,IAAI,EAAE,MAAM,CAAC,aAAa;YAC1B,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;YAClC,MAAM,EAAE,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ;SAC9C,CAAC,CAAA;QACF,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,4BAA4B,CAAC,IAAY;IACvD,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACvC,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAA;IACzB,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACnC,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAA;IACpB,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,CAAA;QAC9D,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAA;QACzB,IAAI,CAAC,CAAC,aAAa,KAAK,OAAO,EAAE,CAAC;YAChC,IAAI,CAAC,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,CAAC,aAAa,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAA;YAC5D,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;YACxE,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;YACxF,OAAO,IAAI,CAAA;QACb,CAAC;QACD,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;QACxF,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAA;QAC5G,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,CAAC,aAAa,KAAK,OAAO;YAAE,OAAO,KAAK,CAAA;QAC7C,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;QAC7D,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAA;QACzB,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,aAAa,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,aAAa;YAAE,OAAO,KAAK,CAAA;QACpF,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;QACtE,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;QACpG,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,CAAC,CAAC,CAAC,gBAAgB;QAAE,OAAO,KAAK,CAAA;IACrC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;IACrC,IAAI,CAAC,UAAU;QAAE,OAAO,KAAK,CAAA;IAC7B,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;IAC9E,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IACpG,OAAO,IAAI,CAAA;AACb,CAAC;AAED;2BAC2B;AAC3B,MAAM,UAAU,eAAe;IAG7B,MAAM,GAAG,GAEJ,EAAE,CAAA;IACP,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACtB,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACjC,GAAG,CAAC,IAAI,CAAC;YACP,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ;YAC1D,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM;YAC7D,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,SAAS;SACzB,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,MAAM,GAAG,uBAAuB;IAC9E,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAC5B,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAA;IACpB,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;IAC5D,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,2BAA2B,EAAE,KAAK,EAAE,CAAC,CAAA;IACvD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,oBAAoB;IAClC,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC,CAAC,KAAK;YAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;QAClC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;IACpE,CAAC;IACD,OAAO,CAAC,KAAK,EAAE,CAAA;IACf,iBAAiB,CAAC,KAAK,EAAE,CAAA;AAC3B,CAAC;AAED,wEAAwE;AAExE,SAAS,gBAAgB,CAAC,GAAY;IACpC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IACpC,IAAI,GAAG,CAAC,MAAM,GAAG,WAAW,IAAI,GAAG,CAAC,MAAM,GAAG,WAAW;QAAE,OAAO,IAAI,CAAA;IACrE,MAAM,GAAG,GAAgB,EAAE,CAAA;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;QAChB,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAA;QACtC,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,CAAA;QACvD,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAA;QACvB,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IACnC,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,YAAY,CAAC,GAAY;IAChC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,mBAAmB,CAAA;IAChF,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACzB,IAAI,CAAC,GAAG,eAAe;QAAE,OAAO,eAAe,CAAA;IAC/C,IAAI,CAAC,GAAG,eAAe;QAAE,OAAO,eAAe,CAAA;IAC/C,OAAO,CAAC,CAAA;AACV,CAAC;AAED,SAAS,sBAAsB,CAAC,GAAY;IAC1C,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,QAAQ,CAAA;IACpE,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,OAAO;QAAE,OAAO,GAAG,CAAA;IACnD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAY,EAAE,QAAgB;IAC7D,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,QAAQ,CAAA;IACrE,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACzB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACtB,CAAC;AAED,SAAS,yBAAyB,CAAC,GAAY;IAC7C,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,0BAA0B,CAAA;IAC9D,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,CAAA;IACrD,OAAO,CAAC,IAAI,0BAA0B,CAAA;AACxC,CAAC;AAED,SAAS,mBAAmB,CAAC,MAQ5B;IACC,MAAM,EACJ,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EACxD,gBAAgB,EAAE,cAAc,EAAE,UAAU,GAC7C,GAAG,MAAM,CAAA;IACV,IAAI,CAAC,cAAc;QAAE,OAAO,aAAa,UAAU,QAAQ,CAAA;IAC3D,IAAI,aAAa,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,WAAW,WAAW,aAAa,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC,WAAW,CAAA;QACnH,OAAO,gBAAgB;YACrB,CAAC,CAAC,GAAG,IAAI,eAAe,UAAU,QAAQ;YAC1C,CAAC,CAAC,GAAG,IAAI,IAAI,UAAU,QAAQ,CAAA;IACnC,CAAC;IACD,MAAM,KAAK,GAAG,4BAA4B,aAAa,SAAS,aAAa,KAAK,CAAA;IAClF,OAAO,gBAAgB;QACrB,CAAC,CAAC,GAAG,KAAK,eAAe,UAAU,QAAQ;QAC3C,CAAC,CAAC,GAAG,KAAK,IAAI,UAAU,QAAQ,CAAA;AACpC,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAa,EAAE,OAAe;IACtD,IAAI,CAAC,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;QACnD,IAAI,KAAK;YAAE,OAAO,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,aAAa,CAAC,CAAA;QACzE,IAAI,CAAC,CAAC,CAAC,gBAAgB;YAAE,OAAO,IAAI,CAAA;QACpC,OAAO,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;IACpD,CAAC;IACD,MAAM,KAAK,GAAG,kBAAkB,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;IACpD,IAAI,KAAK,EAAE,CAAC;QACV,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,aAAa,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,aAAa;YAAE,OAAO,IAAI,CAAA;QACjF,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;IAC9C,CAAC;IACD,IAAI,CAAC,CAAC,CAAC,gBAAgB;QAAE,OAAO,IAAI,CAAA;IACpC,OAAO,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;AACpD,CAAC;AAED,SAAS,cAAc,CACrB,MAAiB,EACjB,GAA4B,EAC5B,GAAW,EACX,gBAAkC,QAAQ;IAE1C,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,GAAG;QACH,GAAG;QACH,aAAa;KACd,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CACpB,MAAmB,EACnB,GAA4B,EAC5B,GAAW;IAEX,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAA;IACtB,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,GAAG;QACH,GAAG;QACH,aAAa,EAAE,OAAO;QACtB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACnC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;KACnC,CAAA;AACH,CAAC;AAED,SAAS,cAAc,CACrB,UAAkB,EAClB,GAA4B,EAC5B,GAAW,EACX,OAAmB;IAEnB,OAAO;QACL,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,OAAO,CAAC,gBAAgB;QAC/B,GAAG;QACH,GAAG;QACH,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,UAAU;KACX,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAoB,EAAE,OAAiB;IAClE,MAAM,GAAG,GAAgB,EAAE,CAAA;IAC3B,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,CAAA;QACnD,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QACxB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAClB,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,iBAAiB,CAAC,IAAY,EAAE,OAAoB;IAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IAChC,iBAAiB;IACjB,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;IACnD,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACxD,OAAO,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IACvB,CAAC;IACD,sBAAsB;IACtB,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;QACjD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC,CAAC,CAAC,CAAA;IACrD,CAAC;IACD,iBAAiB;IACjB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,CAAA;IAClE,IAAI,KAAK;QAAE,OAAO,KAAK,CAAA;IACvB,qEAAqE;IACrE,sDAAsD;IACtD,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC3E,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YAAE,OAAO,CAAC,CAAA;IACrD,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY,EAAE,OAAoB;IAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IAChC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAqB,CAAA;IAE3C,6DAA6D;IAC7D,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;IACtC,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QACpC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM;YAAE,SAAQ;QAChE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAC/B,CAAC;IAED,qCAAqC;IACrC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAAA;IAC/C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;QACjD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IACjE,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAA;IACtE,CAAC;IAED,mCAAmC;IACnC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACzD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,CAAA;QAClE,IAAI,KAAK;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IAC3C,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAA;IACtE,CAAC;IAED,mCAAmC;IACnC,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;IACnE,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAClC,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAA;AACtE,CAAC;AAOD,SAAS,kBAAkB,CAAC,IAAY;IACtC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAA;IAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACtD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IACjC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IACtB,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAA;IACvB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IAEvB,+CAA+C;IAC/C,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC9C,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACvC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAA;QACtC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,CAAA;IAC9C,CAAC;IAED,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACpC,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAA;QACtC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QACjD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;IAC1C,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACxC,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;IACrC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAC9B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;AACxC,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW;IACpC,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAA;IACrB,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACvD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACpC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAA;IAC7B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QACpC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAA;QAC7C,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACZ,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;AACvD,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAA;IACvB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAC1D,MAAM,MAAM,GAAG,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IACjE,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"ask-user-rpc.js","sourceRoot":"","sources":["../../src/core/ask-user-rpc.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fs-dispatcher.d.ts","sourceRoot":"","sources":["../../../src/core/llm/fs-dispatcher.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,EAAoB,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAmB5E,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,wBAAgB,UAAU,IAAI,OAAO,EAAE,CAsFtC;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,SAAS,GAAG,cAAc,CAkBhE;AA6TD;0DAC0D;AAC1D,wBAAgB,6BAA6B,IAAI,IAAI,CAEpD"}
1
+ {"version":3,"file":"fs-dispatcher.d.ts","sourceRoot":"","sources":["../../../src/core/llm/fs-dispatcher.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,EAAoB,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAmB5E,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,wBAAgB,UAAU,IAAI,OAAO,EAAE,CAsFtC;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,SAAS,GAAG,cAAc,CAkBhE;AA6TD;0DAC0D;AAC1D,wBAAgB,6BAA6B,IAAI,IAAI,CAEpD"}
@@ -7,11 +7,12 @@
7
7
  // CLI sub-agent over A2A — slow, costly, and a 30-min hard timeout
8
8
  // landmine (see the v1.2.56 crash-loop fix).
9
9
  //
10
- // All five tools are constrained by default to the native agent's per-
11
- // thread cwd subtree (typically ~/.agim-workspaces/native/<thread>/).
12
- // Operators who want broader access set IMHUB_NATIVE_FS_RESTRICT=0 —
13
- // even then, the sensitive-paths.ts denylist still applies so
14
- // ~/.agim/, /etc/shadow, etc. remain blocked.
10
+ // By default all five tools have real filesystem access (so the native
11
+ // agent isn't crippled). Operators who want to confine access to the native
12
+ // agent's per-thread cwd subtree (typically ~/.agim-workspaces/native/
13
+ // <thread>/) set IMHUB_NATIVE_FS_RESTRICT=1. Either way, the sensitive-
14
+ // paths.ts denylist always applies so ~/.agim/, /etc/shadow, etc. remain
15
+ // blocked.
15
16
  //
16
17
  // Tools shipped here:
17
18
  // * native_read_file(path, max_bytes?)
@@ -50,8 +51,8 @@ export function getFsTools() {
50
51
  {
51
52
  name: 'native_read_file',
52
53
  description: 'Read a UTF-8 text file by path. Default max 256KB. Paths resolve against the agent cwd; ' +
53
- 'absolute paths are allowed but constrained to the workspace subtree unless ' +
54
- 'IMHUB_NATIVE_FS_RESTRICT=0. Sensitive paths (~/.agim, /etc/shadow, etc.) are always denied.',
54
+ 'absolute paths are allowed by default (set IMHUB_NATIVE_FS_RESTRICT=1 to confine to the ' +
55
+ 'workspace subtree). Sensitive paths (~/.agim, /etc/shadow, etc.) are always denied.',
55
56
  parameters: {
56
57
  type: 'object',
57
58
  properties: {
@@ -155,11 +156,11 @@ async function runOne(name, args, ctx, signal) {
155
156
  }
156
157
  }
157
158
  // ─── path safety ─────────────────────────────────────────────────────
158
- /** Default-on workspace restriction. Operators can set
159
- * IMHUB_NATIVE_FS_RESTRICT=0 to allow paths outside cwd subtree;
160
- * sensitive-paths.ts still applies even when this is off. */
159
+ /** Workspace restriction is OPT-IN (default off, so native agents have real
160
+ * filesystem access). Operators set IMHUB_NATIVE_FS_RESTRICT=1 to confine
161
+ * access to the cwd subtree; sensitive-paths.ts always applies regardless. */
161
162
  function workspaceRestricted() {
162
- return process.env.IMHUB_NATIVE_FS_RESTRICT !== '0';
163
+ return process.env.IMHUB_NATIVE_FS_RESTRICT === '1';
163
164
  }
164
165
  async function resolveAndCheck(input, ctx) {
165
166
  if (typeof input !== 'string' || input.length === 0) {
@@ -181,7 +182,7 @@ async function resolveAndCheck(input, ctx) {
181
182
  abs,
182
183
  ok: false,
183
184
  reason: `path "${abs}" is outside workspace "${ctx.cwd}". ` +
184
- 'Set IMHUB_NATIVE_FS_RESTRICT=0 to allow broader access.',
185
+ 'Unset IMHUB_NATIVE_FS_RESTRICT (or set =0) to allow broader access.',
185
186
  };
186
187
  }
187
188
  }
@@ -206,7 +207,7 @@ async function resolveAndCheck(input, ctx) {
206
207
  abs: real,
207
208
  ok: false,
208
209
  reason: `symlink target "${real}" is outside workspace "${ctx.cwd}". ` +
209
- 'Set IMHUB_NATIVE_FS_RESTRICT=0 to allow broader access.',
210
+ 'Unset IMHUB_NATIVE_FS_RESTRICT (or set =0) to allow broader access.',
210
211
  };
211
212
  }
212
213
  }