agim-cli 1.3.2 → 1.3.4

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 (250) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/cli-ui/config-wizard.d.ts.map +1 -1
  3. package/dist/cli-ui/config-wizard.js +222 -98
  4. package/dist/cli-ui/config-wizard.js.map +1 -1
  5. package/dist/cli-ui/i18n.d.ts +42 -8
  6. package/dist/cli-ui/i18n.d.ts.map +1 -1
  7. package/dist/cli-ui/i18n.js +88 -16
  8. package/dist/cli-ui/i18n.js.map +1 -1
  9. package/dist/cli-ui/setup-llm.d.ts.map +1 -1
  10. package/dist/cli-ui/setup-llm.js +38 -13
  11. package/dist/cli-ui/setup-llm.js.map +1 -1
  12. package/dist/cli-ui/setup-mcp.d.ts.map +1 -1
  13. package/dist/cli-ui/setup-mcp.js +31 -2
  14. package/dist/cli-ui/setup-mcp.js.map +1 -1
  15. package/dist/cli-ui/tui/app.d.ts +4 -1
  16. package/dist/cli-ui/tui/app.d.ts.map +1 -1
  17. package/dist/cli-ui/tui/app.js +240 -6
  18. package/dist/cli-ui/tui/app.js.map +1 -1
  19. package/dist/cli-ui/tui/approval-bridge.d.ts +61 -0
  20. package/dist/cli-ui/tui/approval-bridge.d.ts.map +1 -0
  21. package/dist/cli-ui/tui/approval-bridge.js +274 -0
  22. package/dist/cli-ui/tui/approval-bridge.js.map +1 -0
  23. package/dist/cli-ui/tui/approval-view.d.ts +15 -0
  24. package/dist/cli-ui/tui/approval-view.d.ts.map +1 -0
  25. package/dist/cli-ui/tui/approval-view.js +46 -0
  26. package/dist/cli-ui/tui/approval-view.js.map +1 -0
  27. package/dist/cli-ui/tui/index.d.ts.map +1 -1
  28. package/dist/cli-ui/tui/index.js +31 -0
  29. package/dist/cli-ui/tui/index.js.map +1 -1
  30. package/dist/cli.js +56 -2
  31. package/dist/cli.js.map +1 -1
  32. package/dist/core/agent-cwd.js +1 -1
  33. package/dist/core/ask-user-rpc.d.ts +36 -14
  34. package/dist/core/ask-user-rpc.d.ts.map +1 -1
  35. package/dist/core/ask-user-rpc.js +309 -34
  36. package/dist/core/ask-user-rpc.js.map +1 -1
  37. package/dist/core/commands/builtin.d.ts.map +1 -1
  38. package/dist/core/commands/builtin.js +15 -6
  39. package/dist/core/commands/builtin.js.map +1 -1
  40. package/dist/core/llm/imhub-dispatcher.d.ts.map +1 -1
  41. package/dist/core/llm/imhub-dispatcher.js +6 -1
  42. package/dist/core/llm/imhub-dispatcher.js.map +1 -1
  43. package/dist/core/onboarding.js +2 -2
  44. package/dist/core/onboarding.js.map +1 -1
  45. package/dist/core/router.d.ts.map +1 -1
  46. package/dist/core/router.js +12 -9
  47. package/dist/core/router.js.map +1 -1
  48. package/dist/core/types.d.ts +6 -0
  49. package/dist/core/types.d.ts.map +1 -1
  50. package/dist/plugins/agents/claude-code/mcp-approval-server.d.ts +4 -0
  51. package/dist/plugins/agents/claude-code/mcp-approval-server.d.ts.map +1 -1
  52. package/dist/plugins/agents/claude-code/mcp-approval-server.js +11 -6
  53. package/dist/plugins/agents/claude-code/mcp-approval-server.js.map +1 -1
  54. package/dist/plugins/agents/native/index.js +8 -8
  55. package/dist/plugins/agents/native/index.js.map +1 -1
  56. package/dist/plugins/agents/pi-native/factory.d.ts.map +1 -1
  57. package/dist/plugins/agents/pi-native/factory.js +4 -3
  58. package/dist/plugins/agents/pi-native/factory.js.map +1 -1
  59. package/dist/web/llm-api.js +7 -4
  60. package/dist/web/llm-api.js.map +1 -1
  61. package/dist/web/public/assets/{a2a-Dtc6AKjx.js → a2a-Y30Sn8pc.js} +2 -2
  62. package/dist/web/public/assets/{a2a-Dtc6AKjx.js.map → a2a-Y30Sn8pc.js.map} +1 -1
  63. package/dist/web/public/assets/{activity-CWFI_ke7.js → activity--oN7qxFJ.js} +2 -2
  64. package/dist/web/public/assets/{activity-CWFI_ke7.js.map → activity--oN7qxFJ.js.map} +1 -1
  65. package/dist/web/public/assets/{admins-CeQorJdU.js → admins-DONiT3ld.js} +2 -2
  66. package/dist/web/public/assets/{admins-CeQorJdU.js.map → admins-DONiT3ld.js.map} +1 -1
  67. package/dist/web/public/assets/agents-DRbQOH0K.js +7 -0
  68. package/dist/web/public/assets/agents-DRbQOH0K.js.map +1 -0
  69. package/dist/web/public/assets/{approvals-BEPKSyrL.js → approvals-C5jd7Wf9.js} +2 -2
  70. package/dist/web/public/assets/{approvals-BEPKSyrL.js.map → approvals-C5jd7Wf9.js.map} +1 -1
  71. package/dist/web/public/assets/{arrow-down-CzWGZc48.js → arrow-down-x-Lq92tn.js} +2 -2
  72. package/dist/web/public/assets/{arrow-down-CzWGZc48.js.map → arrow-down-x-Lq92tn.js.map} +1 -1
  73. package/dist/web/public/assets/{arrow-up-CXy94NPi.js → arrow-up-Cc28qbjN.js} +2 -2
  74. package/dist/web/public/assets/{arrow-up-CXy94NPi.js.map → arrow-up-Cc28qbjN.js.map} +1 -1
  75. package/dist/web/public/assets/{asks-BszsbhPn.js → asks-CeVcu8SD.js} +2 -2
  76. package/dist/web/public/assets/{asks-BszsbhPn.js.map → asks-CeVcu8SD.js.map} +1 -1
  77. package/dist/web/public/assets/{audit-ACrwMizd.js → audit-Dc9_FDkW.js} +2 -2
  78. package/dist/web/public/assets/{audit-ACrwMizd.js.map → audit-Dc9_FDkW.js.map} +1 -1
  79. package/dist/web/public/assets/{bell-BLwNOhXO.js → bell-CxPf_Xzs.js} +2 -2
  80. package/dist/web/public/assets/{bell-BLwNOhXO.js.map → bell-CxPf_Xzs.js.map} +1 -1
  81. package/dist/web/public/assets/{bgjobs-Cwp0PmTF.js → bgjobs-CYjmAJgs.js} +2 -2
  82. package/dist/web/public/assets/{bgjobs-Cwp0PmTF.js.map → bgjobs-CYjmAJgs.js.map} +1 -1
  83. package/dist/web/public/assets/{brain-5AJBYzXX.js → brain-DjCfwBAT.js} +2 -2
  84. package/dist/web/public/assets/{brain-5AJBYzXX.js.map → brain-DjCfwBAT.js.map} +1 -1
  85. package/dist/web/public/assets/{briefcase-BTDurkZz.js → briefcase-Br1bd_VG.js} +2 -2
  86. package/dist/web/public/assets/{briefcase-BTDurkZz.js.map → briefcase-Br1bd_VG.js.map} +1 -1
  87. package/dist/web/public/assets/chat-uqxuXn2X.js +17 -0
  88. package/dist/web/public/assets/chat-uqxuXn2X.js.map +1 -0
  89. package/dist/web/public/assets/{chevron-left-CnLOhWHE.js → chevron-left-CN-4SIfi.js} +2 -2
  90. package/dist/web/public/assets/{chevron-left-CnLOhWHE.js.map → chevron-left-CN-4SIfi.js.map} +1 -1
  91. package/dist/web/public/assets/{chevron-right-CpWYrqTa.js → chevron-right-BhSTLH2K.js} +2 -2
  92. package/dist/web/public/assets/{chevron-right-CpWYrqTa.js.map → chevron-right-BhSTLH2K.js.map} +1 -1
  93. package/dist/web/public/assets/{circle-check-DhcTh_uP.js → circle-check-B4UdHmdJ.js} +2 -2
  94. package/dist/web/public/assets/{circle-check-DhcTh_uP.js.map → circle-check-B4UdHmdJ.js.map} +1 -1
  95. package/dist/web/public/assets/{circle-check-big-CcknUEHz.js → circle-check-big-CvXnDqiF.js} +2 -2
  96. package/dist/web/public/assets/{circle-check-big-CcknUEHz.js.map → circle-check-big-CvXnDqiF.js.map} +1 -1
  97. package/dist/web/public/assets/{circle-x-QODE2UcL.js → circle-x-B8y8mLHr.js} +2 -2
  98. package/dist/web/public/assets/{circle-x-QODE2UcL.js.map → circle-x-B8y8mLHr.js.map} +1 -1
  99. package/dist/web/public/assets/{clock-BPBx4QWT.js → clock-CK2KO_Rc.js} +2 -2
  100. package/dist/web/public/assets/{clock-BPBx4QWT.js.map → clock-CK2KO_Rc.js.map} +1 -1
  101. package/dist/web/public/assets/{confirm-dialog-HsyBgWxC.js → confirm-dialog-GZyIzSwj.js} +2 -2
  102. package/dist/web/public/assets/{confirm-dialog-HsyBgWxC.js.map → confirm-dialog-GZyIzSwj.js.map} +1 -1
  103. package/dist/web/public/assets/{copy-VJNELMp7.js → copy-CDCgL5Yq.js} +2 -2
  104. package/dist/web/public/assets/{copy-VJNELMp7.js.map → copy-CDCgL5Yq.js.map} +1 -1
  105. package/dist/web/public/assets/{data-table-C0yaCeSS.js → data-table-1cGunUIX.js} +2 -2
  106. package/dist/web/public/assets/{data-table-C0yaCeSS.js.map → data-table-1cGunUIX.js.map} +1 -1
  107. package/dist/web/public/assets/{download-EUh-RXv5.js → download-CuLP0G-q.js} +2 -2
  108. package/dist/web/public/assets/{download-EUh-RXv5.js.map → download-CuLP0G-q.js.map} +1 -1
  109. package/dist/web/public/assets/{email-YUzrp4Tf.js → email-Q-SY9qC9.js} +2 -2
  110. package/dist/web/public/assets/{email-YUzrp4Tf.js.map → email-Q-SY9qC9.js.map} +1 -1
  111. package/dist/web/public/assets/{empty-state-DoiBKL4l.js → empty-state-BRsb30K6.js} +2 -2
  112. package/dist/web/public/assets/{empty-state-DoiBKL4l.js.map → empty-state-BRsb30K6.js.map} +1 -1
  113. package/dist/web/public/assets/{external-link-Bf2430Ji.js → external-link-D-E90Kfw.js} +2 -2
  114. package/dist/web/public/assets/{external-link-Bf2430Ji.js.map → external-link-D-E90Kfw.js.map} +1 -1
  115. package/dist/web/public/assets/{eye-vE4k-Us-.js → eye-DSu_4mW2.js} +2 -2
  116. package/dist/web/public/assets/{eye-vE4k-Us-.js.map → eye-DSu_4mW2.js.map} +1 -1
  117. package/dist/web/public/assets/{facts-BPVTGzM4.js → facts-pmGTfGmv.js} +2 -2
  118. package/dist/web/public/assets/{facts-BPVTGzM4.js.map → facts-pmGTfGmv.js.map} +1 -1
  119. package/dist/web/public/assets/goals-DpRm9-av.js +17 -0
  120. package/dist/web/public/assets/goals-DpRm9-av.js.map +1 -0
  121. package/dist/web/public/assets/{health-CSMAArAj.js → health-mqoH7KDV.js} +2 -2
  122. package/dist/web/public/assets/{health-CSMAArAj.js.map → health-mqoH7KDV.js.map} +1 -1
  123. package/dist/web/public/assets/{heart-pulse-8RDC8GWv.js → heart-pulse-CrCHhXtC.js} +2 -2
  124. package/dist/web/public/assets/{heart-pulse-8RDC8GWv.js.map → heart-pulse-CrCHhXtC.js.map} +1 -1
  125. package/dist/web/public/assets/{heartbeat-BzHZy7Mx.js → heartbeat-EGjLHWU0.js} +2 -2
  126. package/dist/web/public/assets/{heartbeat-BzHZy7Mx.js.map → heartbeat-EGjLHWU0.js.map} +1 -1
  127. package/dist/web/public/assets/hot-B9x1_5yx.js +12 -0
  128. package/dist/web/public/assets/hot-B9x1_5yx.js.map +1 -0
  129. package/dist/web/public/assets/index-BIBWEKxu.js +204 -0
  130. package/dist/web/public/assets/index-BIBWEKxu.js.map +1 -0
  131. package/dist/web/public/assets/{injection-a2kkgRbT.js → injection-CDx5n-mk.js} +2 -2
  132. package/dist/web/public/assets/{injection-a2kkgRbT.js.map → injection-CDx5n-mk.js.map} +1 -1
  133. package/dist/web/public/assets/{installed-XQQEPKh8.js → installed-DV7X4wfv.js} +5 -5
  134. package/dist/web/public/assets/{installed-XQQEPKh8.js.map → installed-DV7X4wfv.js.map} +1 -1
  135. package/dist/web/public/assets/{jobs-Cby1Eq4o.js → jobs-zAigElCl.js} +2 -2
  136. package/dist/web/public/assets/{jobs-Cby1Eq4o.js.map → jobs-zAigElCl.js.map} +1 -1
  137. package/dist/web/public/assets/{layout-BdtJtlu5.js → layout-7wcifbsm.js} +2 -2
  138. package/dist/web/public/assets/{layout-BdtJtlu5.js.map → layout-7wcifbsm.js.map} +1 -1
  139. package/dist/web/public/assets/{layout-BRnEPnky.js → layout-B0RjH6M2.js} +2 -2
  140. package/dist/web/public/assets/{layout-BRnEPnky.js.map → layout-B0RjH6M2.js.map} +1 -1
  141. package/dist/web/public/assets/{layout-Gh29ouFO.js → layout-C6q-GbBZ.js} +2 -2
  142. package/dist/web/public/assets/{layout-Gh29ouFO.js.map → layout-C6q-GbBZ.js.map} +1 -1
  143. package/dist/web/public/assets/layout-CzjqlPxW.js +2 -0
  144. package/dist/web/public/assets/layout-CzjqlPxW.js.map +1 -0
  145. package/dist/web/public/assets/{layout-CbqldDRj.js → layout-DOSpVfND.js} +2 -2
  146. package/dist/web/public/assets/{layout-CbqldDRj.js.map → layout-DOSpVfND.js.map} +1 -1
  147. package/dist/web/public/assets/llm-DwZX5fwY.js +27 -0
  148. package/dist/web/public/assets/llm-DwZX5fwY.js.map +1 -0
  149. package/dist/web/public/assets/{loader-circle-DO3Ni2RJ.js → loader-circle-BQkLEJZw.js} +2 -2
  150. package/dist/web/public/assets/{loader-circle-DO3Ni2RJ.js.map → loader-circle-BQkLEJZw.js.map} +1 -1
  151. package/dist/web/public/assets/{map-pin-BsL35E1s.js → map-pin-B-IMY07m.js} +2 -2
  152. package/dist/web/public/assets/{map-pin-BsL35E1s.js.map → map-pin-B-IMY07m.js.map} +1 -1
  153. package/dist/web/public/assets/{mcp-CWMdxcBf.js → mcp-K0P3-b6q.js} +2 -2
  154. package/dist/web/public/assets/{mcp-CWMdxcBf.js.map → mcp-K0P3-b6q.js.map} +1 -1
  155. package/dist/web/public/assets/{memos-BYQa4d2t.js → memos-DcpDEVN8.js} +2 -2
  156. package/dist/web/public/assets/{memos-BYQa4d2t.js.map → memos-DcpDEVN8.js.map} +1 -1
  157. package/dist/web/public/assets/{messengers-CebazAJ1.js → messengers-DmrNvPMS.js} +2 -2
  158. package/dist/web/public/assets/{messengers-CebazAJ1.js.map → messengers-DmrNvPMS.js.map} +1 -1
  159. package/dist/web/public/assets/{mobile-CMJRNHs2.js → mobile-a-oUiAoR.js} +2 -2
  160. package/dist/web/public/assets/{mobile-CMJRNHs2.js.map → mobile-a-oUiAoR.js.map} +1 -1
  161. package/dist/web/public/assets/{network-pNcx_slv.js → network-Bbh3j5ew.js} +2 -2
  162. package/dist/web/public/assets/{network-pNcx_slv.js.map → network-Bbh3j5ew.js.map} +1 -1
  163. package/dist/web/public/assets/{outbox-87hzZQLn.js → outbox-BP_hfANb.js} +2 -2
  164. package/dist/web/public/assets/{outbox-87hzZQLn.js.map → outbox-BP_hfANb.js.map} +1 -1
  165. package/dist/web/public/assets/{pagination-C4edFAqf.js → pagination-CPLj3V0r.js} +2 -2
  166. package/dist/web/public/assets/{pagination-C4edFAqf.js.map → pagination-CPLj3V0r.js.map} +1 -1
  167. package/dist/web/public/assets/{persona-BcOT3Wms.js → persona-CT38dLd4.js} +2 -2
  168. package/dist/web/public/assets/{persona-BcOT3Wms.js.map → persona-CT38dLd4.js.map} +1 -1
  169. package/dist/web/public/assets/plans-Msw85XkI.js +12 -0
  170. package/dist/web/public/assets/plans-Msw85XkI.js.map +1 -0
  171. package/dist/web/public/assets/{play-Bzdymasn.js → play-tH2nb1Kt.js} +2 -2
  172. package/dist/web/public/assets/{play-Bzdymasn.js.map → play-tH2nb1Kt.js.map} +1 -1
  173. package/dist/web/public/assets/{plus-BxjzY9Wh.js → plus-6MNGQidu.js} +2 -2
  174. package/dist/web/public/assets/{plus-BxjzY9Wh.js.map → plus-6MNGQidu.js.map} +1 -1
  175. package/dist/web/public/assets/{policy-Be-tMZZc.js → policy-BJ7zORVG.js} +2 -2
  176. package/dist/web/public/assets/{policy-Be-tMZZc.js.map → policy-BJ7zORVG.js.map} +1 -1
  177. package/dist/web/public/assets/{qr-code-D1V5cA_X.js → qr-code-DfsxFxoa.js} +2 -2
  178. package/dist/web/public/assets/{qr-code-D1V5cA_X.js.map → qr-code-DfsxFxoa.js.map} +1 -1
  179. package/dist/web/public/assets/{refresh-ccw-BhPAzZAa.js → refresh-ccw-CFPE6zD1.js} +2 -2
  180. package/dist/web/public/assets/{refresh-ccw-BhPAzZAa.js.map → refresh-ccw-CFPE6zD1.js.map} +1 -1
  181. package/dist/web/public/assets/{reminders-DEWtrlH_.js → reminders-CAUNAuDy.js} +2 -2
  182. package/dist/web/public/assets/{reminders-DEWtrlH_.js.map → reminders-CAUNAuDy.js.map} +1 -1
  183. package/dist/web/public/assets/{save-Cye8Vlu5.js → save-CNUmUMEf.js} +2 -2
  184. package/dist/web/public/assets/{save-Cye8Vlu5.js.map → save-CNUmUMEf.js.map} +1 -1
  185. package/dist/web/public/assets/{schedules-CuqRy3t8.js → schedules-C25NyoGh.js} +2 -2
  186. package/dist/web/public/assets/{schedules-CuqRy3t8.js.map → schedules-C25NyoGh.js.map} +1 -1
  187. package/dist/web/public/assets/{search-Dot_W5Eu.js → search-CaRTqZw1.js} +2 -2
  188. package/dist/web/public/assets/{search-Dot_W5Eu.js.map → search-CaRTqZw1.js.map} +1 -1
  189. package/dist/web/public/assets/{search-BQqVArrW.js → search-D9TZs0bG.js} +2 -2
  190. package/dist/web/public/assets/{search-BQqVArrW.js.map → search-D9TZs0bG.js.map} +1 -1
  191. package/dist/web/public/assets/{security-BB-YnetQ.js → security-BMGGzEwr.js} +2 -2
  192. package/dist/web/public/assets/{security-BB-YnetQ.js.map → security-BMGGzEwr.js.map} +1 -1
  193. package/dist/web/public/assets/{service-DgkqlAtM.js → service-BQBoddcT.js} +2 -2
  194. package/dist/web/public/assets/{service-DgkqlAtM.js.map → service-BQBoddcT.js.map} +1 -1
  195. package/dist/web/public/assets/{shield-alert-CBOmgn9W.js → shield-alert-eOBoc2yc.js} +2 -2
  196. package/dist/web/public/assets/{shield-alert-CBOmgn9W.js.map → shield-alert-eOBoc2yc.js.map} +1 -1
  197. package/dist/web/public/assets/{status-badge-9sMFH4uP.js → status-badge-CF1Cya26.js} +2 -2
  198. package/dist/web/public/assets/{status-badge-9sMFH4uP.js.map → status-badge-CF1Cya26.js.map} +1 -1
  199. package/dist/web/public/assets/{subtasks-BrqdQxw_.js → subtasks-CEPB2TSV.js} +2 -2
  200. package/dist/web/public/assets/{subtasks-BrqdQxw_.js.map → subtasks-CEPB2TSV.js.map} +1 -1
  201. package/dist/web/public/assets/{table-CSHCu7pz.js → table-Dww-k14l.js} +2 -2
  202. package/dist/web/public/assets/{table-CSHCu7pz.js.map → table-Dww-k14l.js.map} +1 -1
  203. package/dist/web/public/assets/{topn-DZWbwDge.js → topn-DwgKlIxc.js} +2 -2
  204. package/dist/web/public/assets/{topn-DZWbwDge.js.map → topn-DwgKlIxc.js.map} +1 -1
  205. package/dist/web/public/assets/{trash-2-Cco09tAA.js → trash-2-BF98SY8M.js} +2 -2
  206. package/dist/web/public/assets/{trash-2-Cco09tAA.js.map → trash-2-BF98SY8M.js.map} +1 -1
  207. package/dist/web/public/assets/{use-agim-skills-CJOJKeOZ.js → use-agim-skills-kDpiSMBP.js} +2 -2
  208. package/dist/web/public/assets/{use-agim-skills-CJOJKeOZ.js.map → use-agim-skills-kDpiSMBP.js.map} +1 -1
  209. package/dist/web/public/assets/{use-background-tasks-D77bcfrq.js → use-background-tasks-B1Pxq3JU.js} +2 -2
  210. package/dist/web/public/assets/{use-background-tasks-D77bcfrq.js.map → use-background-tasks-B1Pxq3JU.js.map} +1 -1
  211. package/dist/web/public/assets/{use-memory-CX4B1SYC.js → use-memory-w-EY79Zm.js} +2 -2
  212. package/dist/web/public/assets/{use-memory-CX4B1SYC.js.map → use-memory-w-EY79Zm.js.map} +1 -1
  213. package/dist/web/public/assets/{use-observability-rcc7fRmj.js → use-observability-Cd2dUHb7.js} +2 -2
  214. package/dist/web/public/assets/{use-observability-rcc7fRmj.js.map → use-observability-Cd2dUHb7.js.map} +1 -1
  215. package/dist/web/public/assets/{use-settings-DQnJkPXp.js → use-settings-DG1rm9KU.js} +2 -2
  216. package/dist/web/public/assets/{use-settings-DQnJkPXp.js.map → use-settings-DG1rm9KU.js.map} +1 -1
  217. package/dist/web/public/assets/{use-workspace-J5eeVxw9.js → use-workspace-DvW_xOmj.js} +2 -2
  218. package/dist/web/public/assets/{use-workspace-J5eeVxw9.js.map → use-workspace-DvW_xOmj.js.map} +1 -1
  219. package/dist/web/public/assets/{vector-xRphJ8hW.js → vector-CDJ4p6UI.js} +2 -2
  220. package/dist/web/public/assets/{vector-xRphJ8hW.js.map → vector-CDJ4p6UI.js.map} +1 -1
  221. package/dist/web/public/assets/{viewer-Bq7l2kE8.js → viewer-Bje5-HtQ.js} +2 -2
  222. package/dist/web/public/assets/{viewer-Bq7l2kE8.js.map → viewer-Bje5-HtQ.js.map} +1 -1
  223. package/dist/web/public/assets/workspace-B7QYGLix.js +17 -0
  224. package/dist/web/public/assets/workspace-B7QYGLix.js.map +1 -0
  225. package/dist/web/public/assets/{workspaces-D0pYJfxI.js → workspaces-BlodF0DP.js} +2 -2
  226. package/dist/web/public/assets/{workspaces-D0pYJfxI.js.map → workspaces-BlodF0DP.js.map} +1 -1
  227. package/dist/web/public/index.html +2 -2
  228. package/dist/web/server.js +2 -2
  229. package/dist/web/server.js.map +1 -1
  230. package/package.json +1 -1
  231. package/dist/web/public/assets/agents-DnJruPrS.js +0 -7
  232. package/dist/web/public/assets/agents-DnJruPrS.js.map +0 -1
  233. package/dist/web/public/assets/chat-D7jjr-Rn.js +0 -17
  234. package/dist/web/public/assets/chat-D7jjr-Rn.js.map +0 -1
  235. package/dist/web/public/assets/goals-HsKzf-PG.js +0 -17
  236. package/dist/web/public/assets/goals-HsKzf-PG.js.map +0 -1
  237. package/dist/web/public/assets/hot-DkFvD3H4.js +0 -12
  238. package/dist/web/public/assets/hot-DkFvD3H4.js.map +0 -1
  239. package/dist/web/public/assets/index-D7BuMEIr.js +0 -204
  240. package/dist/web/public/assets/index-D7BuMEIr.js.map +0 -1
  241. package/dist/web/public/assets/layout-0rDvqHCV.js +0 -2
  242. package/dist/web/public/assets/layout-0rDvqHCV.js.map +0 -1
  243. package/dist/web/public/assets/llm-COWnMdB9.js +0 -7
  244. package/dist/web/public/assets/llm-COWnMdB9.js.map +0 -1
  245. package/dist/web/public/assets/native-agent-MGgMeTHN.js +0 -22
  246. package/dist/web/public/assets/native-agent-MGgMeTHN.js.map +0 -1
  247. package/dist/web/public/assets/plans-Ddz5qwqp.js +0 -12
  248. package/dist/web/public/assets/plans-Ddz5qwqp.js.map +0 -1
  249. package/dist/web/public/assets/workspace-BqMuxPFF.js +0 -17
  250. package/dist/web/public/assets/workspace-BqMuxPFF.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"setup-mcp.js","sourceRoot":"","sources":["../../src/cli-ui/setup-mcp.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,gDAAgD;AAChD,EAAE;AACF,oEAAoE;AACpE,mEAAmE;AACnE,oEAAoE;AACpE,kEAAkE;AAClE,mEAAmE;AACnE,EAAE;AACF,uDAAuD;AAEvD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACpE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEvD,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;AAclD,MAAM,OAAO,GAAmB;IAC9B;QACE,KAAK,EAAE,8DAA8D;QACrE,SAAS,EAAE,OAAO;QAClB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,yCAAyC,CAAC;QACvE,IAAI,EAAE,0CAA0C;KACjD;IACD;QACE,KAAK,EAAE,2EAA2E;QAClF,SAAS,EAAE,OAAO;QAClB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,qCAAqC,CAAC;KACpE;IACD;QACE,KAAK,EAAE,sDAAsD;QAC7D,SAAS,EAAE,OAAO;QAClB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,uCAAuC,CAAC;QACrE,IAAI,EAAE,mCAAmC;KAC1C;IACD;QACE,KAAK,EAAE,uCAAuC;QAC9C,SAAS,EAAE,OAAO;QAClB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,2CAA2C,CAAC;KAC1E;IACD;QACE,KAAK,EAAE,4BAA4B;QACnC,SAAS,EAAE,MAAM;KAClB;IACD;QACE,KAAK,EAAE,sBAAsB;QAC7B,SAAS,EAAE,OAAO;KACnB;CACF,CAAA;AAiBD,uEAAuE;AAEvE,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAc;IAC9C,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;IACzC,IAAI,CAAC;QACH,IAAI,GAAG,KAAK,EAAE,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,QAAQ;YAAE,OAAO,QAAQ,EAAE,CAAA;QACvF,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,MAAM,UAAU,EAAE,CAAA;QAC7D,IAAI,GAAG,KAAK,KAAK;YAAmB,OAAO,MAAM,SAAS,EAAE,CAAA;QAC5D,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QACxE,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,MAAM;YAAE,OAAO,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QAC1E,OAAO,QAAQ,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAA;IAC/C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAChG,OAAO,CAAC,CAAA;IACV,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,IAAI,KAAK;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,MAAM,CAAC,CAAA;IAC/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;CAgBtB,CAAC,CAAA;IACA,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACtB,CAAC;AAED,uEAAuE;AAEvE,KAAK,UAAU,UAAU;IACvB,MAAM,GAAG,GAAG,MAAM,UAAU,EAAE,CAAA;IAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,IAAI,EAAE,CAAA;IACpC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAA;QAChF,OAAO,CAAC,CAAA;IACV,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAA;IACnD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;YACnC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK;gBACjC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM;oBAChB,CAAC,CAAC,GAAG,CAAA;QACP,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO;YACtB,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;YACvD,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAA;QAClB,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAA;QACxD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,QAAQ,MAAM,IAAI,CAAC,CAAA;IAChF,CAAC;IACD,OAAO,CAAC,CAAA;AACV,CAAC;AAED,KAAK,UAAU,SAAS;IACtB,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;IACrB,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAA;QACpD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAC/C,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;QAC/E,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,aAAa,OAAO,CAAC,MAAM,KAAK,CAAC,CAAA;QAC9D,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,CAAA;QACpC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YAC9D,OAAO,MAAM,CAAC,oBAAoB,CAAC,CAAA;QACrC,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;QAE3B,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAC7C,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,gBAAgB,WAAW,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,WAAW,CAAA;QACpF,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,OAAO,MAAM,CAAC,4CAA4C,CAAC,CAAA;QAC7D,CAAC;QAED,MAAM,MAAM,GAAiB,EAAE,IAAI,EAAE,CAAA;QAErC,IAAI,MAAM,CAAC,SAAS,KAAK,OAAO,EAAE,CAAC;YACjC,oEAAoE;YACpE,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAA;YACvC,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,UAAU,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,UAAU,CAAA;YACpG,IAAI,CAAC,GAAG;gBAAE,OAAO,MAAM,CAAC,eAAe,CAAC,CAAA;YACxC,MAAM,CAAC,OAAO,GAAG,GAAG,CAAA;YAEpB,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACzD,2DAA2D;YAC3D,4CAA4C;YAC5C,IAAI,QAAQ,GAAG,QAAQ,CAAA;YACvB,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC1C,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,8CAA8C,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBAClF,IAAI,CAAC,GAAG;oBAAE,OAAO,MAAM,CAAC,iBAAiB,CAAC,CAAA;gBAC1C,QAAQ,GAAG,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,IAAI,EAAE,CAAA;YAC7D,CAAC;iBAAM,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC/C,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,gBAAgB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBACtE,IAAI,CAAC,GAAG;oBAAE,OAAO,MAAM,CAAC,oBAAoB,CAAC,CAAA;gBAC7C,QAAQ,GAAG,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,IAAI,EAAE,CAAA;YAC7D,CAAC;YACD,MAAM,QAAQ,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,yBAAyB,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,QAAQ,CAAA;YAClH,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YACrD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,CAAC,IAAI,GAAG,OAAO,CAAA;QAC/C,CAAC;aAAM,CAAC;YACN,aAAa;YACb,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,sDAAsD,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YAC1F,IAAI,CAAC,GAAG;gBAAE,OAAO,MAAM,CAAC,WAAW,CAAC,CAAA;YACpC,MAAM,CAAC,GAAG,GAAG,GAAG,CAAA;YAEhB,MAAM,WAAW,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,mEAAmE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YAC/G,IAAI,WAAW,EAAE,CAAC;gBAChB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAA2B,CAAA;oBAChE,MAAM,CAAC,OAAO,GAAG,MAAM,CAAA;gBACzB,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,MAAM,CAAC,4BAA4B,CAAC,CAAA;gBAC7C,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,UAAU,EAAE,CAAA;QAC9B,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,IAAI,EAAE,CAAA;QACrC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YAC1C,OAAO,MAAM,CAAC,WAAW,IAAI,kDAAkD,IAAI,UAAU,CAAC,CAAA;QAChG,CAAC;QACD,GAAG,CAAC,UAAU,GAAG,CAAC,GAAG,QAAQ,EAAE,MAAM,CAAC,CAAA;QAEtC,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;QAC1C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,MAAM,CAAC,6BAA6B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACpG,CAAC;QAED,MAAM,WAAW,CAAC,GAAG,CAAC,CAAA;QACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,IAAI,MAAM,CAAC,CAAA;QACzD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iDAAiD,IAAI,gCAAgC,CAAC,CAAA;QAC3G,OAAO,CAAC,CAAA;IACV,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAA;IACZ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,SAAkB;IAC5C,MAAM,GAAG,GAAG,MAAM,UAAU,EAAE,CAAA;IAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,IAAI,EAAE,CAAA;IACpC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAA;QACpD,OAAO,CAAC,CAAA;IACV,CAAC;IACD,IAAI,IAAI,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;IACnC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;QACrB,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAA;YACzC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;YAC9E,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,aAAa,OAAO,CAAC,MAAM,KAAK,CAAC,CAAA;YAC9D,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,CAAA;YACpC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,OAAO,CAAC,MAAM;gBAAE,OAAO,MAAM,CAAC,oBAAoB,CAAC,CAAA;YAClG,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAA;QAC1B,CAAC;gBAAS,CAAC;YAAC,EAAE,CAAC,KAAK,EAAE,CAAA;QAAC,CAAC;IAC1B,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;IACnD,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC,oBAAoB,IAAI,GAAG,CAAC,CAAA;IAC9E,GAAG,CAAC,UAAU,GAAG,IAAI,CAAA;IACrB,MAAM,WAAW,CAAC,GAAG,CAAC,CAAA;IACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,IAAI,MAAM,CAAC,CAAA;IACzD,OAAO,CAAC,CAAA;AACV,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,SAAkB;IAC5C,mEAAmE;IACnE,mEAAmE;IACnE,MAAM,GAAG,GAAG,MAAM,UAAU,EAAE,CAAA;IAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,IAAI,EAAE,CAAA;IACpC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAA;QACrD,OAAO,CAAC,CAAA;IACV,CAAC;IACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAA;QAChD,OAAO,MAAM,UAAU,EAAE,CAAA;IAC3B,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAA;IACxD,IAAI,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC,oBAAoB,SAAS,GAAG,CAAC,CAAA;IAC5D,MAAM,EACJ,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,GAChE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAA;IAC/C,OAAO,CAAC,GAAG,CAAC,CAAA;IACZ,IAAI,CAAC;QACH,MAAM,UAAU,EAAE,CAAA;QAClB,MAAM,IAAI,GAAG,gBAAgB,EAAE,CAAA;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAA;QAC1D,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,SAAS,kCAAkC,CAAC,CAAA;YAC5E,OAAO,CAAC,CAAA;QACV,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,CAAC,IAAI,IAAI,CAAC,CAAA;QAC/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAA;QACpE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,SAAS,IAAI,CAAC,CAAA;QACrD,IAAI,GAAG,CAAC,KAAK;YAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,KAAK,IAAI,CAAC,CAAA;QAChE,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC;YAAS,CAAC;QACT,IAAI,CAAC;YAAC,MAAM,QAAQ,EAAE,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;IACjD,CAAC;AACH,CAAC;AAED,uEAAuE;AAEvE,KAAK,UAAU,UAAU;IACvB,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAc,CAAA;IACtE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrD,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,aAAa,EAAE,CAAA;QACpE,CAAC;QACD,MAAM,GAAG,CAAA;IACX,CAAC;AACH,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,GAAc;IACvC,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IACxD,MAAM,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3E,IAAI,CAAC;QAAC,MAAM,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,uBAAuB,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAoB;IAC7C,0DAA0D;IAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,QAAQ,CAAA;IACtE,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAA;AACxC,CAAC;AAED,SAAS,QAAQ;IACf,OAAO,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;AAC1E,CAAC;AAID,SAAS,GAAG,CAAC,EAAsC,EAAE,MAAc,EAAE,OAAgB,EAAE;IACrF,KAAK,IAAI,CAAA,CAAE,mDAAmD;IAC9D,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AACvE,CAAC;AAED,SAAS,MAAM,CAAC,MAAc;IAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,MAAM,IAAI,CAAC,CAAA;IAChD,OAAO,CAAC,CAAA;AACV,CAAC;AAED,sEAAsE;AAEtE,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,iBAAiB;IACjB,OAAO;CACR,CAAA"}
1
+ {"version":3,"file":"setup-mcp.js","sourceRoot":"","sources":["../../src/cli-ui/setup-mcp.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { TuiApprovalBridge } from './approval-bridge.js';
1
2
  export interface ChatMessage {
2
3
  id?: string;
3
4
  role: 'user' | 'assistant' | 'system';
@@ -21,7 +22,9 @@ interface AppProps {
21
22
  sessionId: string;
22
23
  /** Notify entry so exit hint prints the latest in-app session id. */
23
24
  onSessionIdChange?: (id: string) => void;
25
+ /** In-process approval surface used by `agim tui` for tool-call approvals. */
26
+ approvalBridge?: TuiApprovalBridge;
24
27
  }
25
- export declare function TuiApp({ initialAgent, resumed, sessionId, onSessionIdChange }: AppProps): JSX.Element;
28
+ export declare function TuiApp({ initialAgent, resumed, sessionId, onSessionIdChange, approvalBridge }: AppProps): JSX.Element;
26
29
  export {};
27
30
  //# sourceMappingURL=app.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../src/cli-ui/tui/app.tsx"],"names":[],"mappings":"AAqCA,MAAM,WAAW,WAAW;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAA;IACrC,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AA4ED,UAAU,QAAQ;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,uDAAuD;IACvD,OAAO,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,WAAW,EAAE,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAA;IAC7H;uDACmD;IACnD,SAAS,EAAE,MAAM,CAAA;IACjB,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CACzC;AAkDD,wBAAgB,MAAM,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,EAAE,QAAQ,GAAG,GAAG,CAAC,OAAO,CAsxBrG"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../src/cli-ui/tui/app.tsx"],"names":[],"mappings":"AAkCA,OAAO,KAAK,EACV,iBAAiB,EAGlB,MAAM,sBAAsB,CAAA;AAU7B,MAAM,WAAW,WAAW;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAA;IACrC,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AA4ED,UAAU,QAAQ;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,uDAAuD;IACvD,OAAO,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,WAAW,EAAE,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAA;IAC7H;uDACmD;IACnD,SAAS,EAAE,MAAM,CAAA;IACjB,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,8EAA8E;IAC9E,cAAc,CAAC,EAAE,iBAAiB,CAAA;CACnC;AA2LD,wBAAgB,MAAM,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,cAAc,EAAE,EAAE,QAAQ,GAAG,GAAG,CAAC,OAAO,CAs+BrH"}
@@ -30,6 +30,7 @@ import { registry } from '../../core/registry.js';
30
30
  import { logger as rootLogger } from '../../core/logger.js';
31
31
  import { Markdown } from './markdown.js';
32
32
  import { generateSessionId, listSessions, saveSession } from './sessions.js';
33
+ import { approvalActionsFor, toApprovalStatusLine, } from './approval-view.js';
33
34
  const log = rootLogger.child({ component: 'tui' });
34
35
  let messageSeq = 0;
35
36
  function nextMessageId() {
@@ -110,7 +111,46 @@ const ChatHistory = React.memo(function ChatHistory({ messages, agent, chatWidth
110
111
  ? _jsx(Markdown, { source: m.content })
111
112
  : _jsx(Text, { children: m.content || (m.pending ? '…' : '') }), m.role === 'assistant' && !m.pending && m.elapsedMs !== undefined && (_jsxs(Text, { dimColor: true, children: ["\u25A0 ", m.agentName || agent, " \u00B7 ", (m.elapsedMs / 1000).toFixed(1), "s"] }))] }, m.id))) }));
112
113
  });
113
- export function TuiApp({ initialAgent, resumed, sessionId, onSessionIdChange }) {
114
+ function askChoiceLabel(label) {
115
+ return label.replace(/^\d+\.\s*/, '').trim();
116
+ }
117
+ function ApprovalDock({ approval, selectedIndex, actions }) {
118
+ const preview = approval.prompt.inputJson.length > 600
119
+ ? `${approval.prompt.inputJson.slice(0, 600)}…`
120
+ : approval.prompt.inputJson;
121
+ const autoAllowMode = approval.prompt.mode === 'auto-allow';
122
+ const hasSingleDeny = autoAllowMode && actions.length === 1;
123
+ if (hasSingleDeny) {
124
+ const deny = actions[0];
125
+ return (_jsxs(Box, { borderStyle: "single", borderColor: "yellow", paddingX: 1, marginX: 1, marginTop: 1, children: [_jsxs(Text, { children: [_jsx(Text, { bold: true, color: "yellow", children: "\u9ED8\u8BA4\u653E\u884C\u547D\u4E2D " }), _jsx(Text, { children: approval.prompt.toolName }), _jsx(Text, { dimColor: true, children: " \u00B7 \u4EC5\u5728\u4F60\u62D2\u7EDD\u65F6\u4E2D\u65AD\u6267\u884C" })] }), _jsx(Text, { dimColor: true, children: preview }), _jsxs(Text, { children: [_jsx(Text, { color: deny.color, inverse: selectedIndex === 0, bold: selectedIndex === 0, children: selectedIndex === 0 ? `› ${deny.label}` : ` ${deny.label}` }), _jsx(Text, { dimColor: true, children: " \u00B7 Enter \u7ACB\u5373\u62D2\u7EDD \u00B7 \u4ECD\u517C\u5BB9 n \u5FEB\u6377\u8F93\u5165" })] })] }));
126
+ }
127
+ return (_jsxs(Box, { flexDirection: "column", borderStyle: "double", borderColor: "yellow", paddingX: 1, marginX: 1, marginTop: 1, children: [_jsxs(Text, { children: [_jsx(Text, { bold: true, color: "yellow", children: "\u5BA1\u6279\u8BF7\u6C42 " }), _jsx(Text, { children: approval.prompt.toolName })] }), _jsx(Text, { dimColor: true, children: preview }), _jsxs(Box, { flexDirection: "column", children: [_jsx(Box, { children: actions.map((action, index) => (_jsxs(Text, { children: [_jsx(Text, { color: action.color, inverse: index === selectedIndex, bold: index === selectedIndex, children: index === selectedIndex ? `› ${action.label} ` : ` ${action.label} ` }), _jsx(Text, { children: " " })] }, action.choice))) }), _jsx(Text, { dimColor: true, children: "\u2191\u2193/\u2190\u2192/Tab \u9009\u62E9 \u00B7 Enter \u786E\u8BA4 \u00B7 \u4ECD\u517C\u5BB9 y / n / all \u5FEB\u6377\u8F93\u5165" })] })] }));
128
+ }
129
+ function ApprovalStatusBar({ status }) {
130
+ return (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { children: [_jsxs(Text, { dimColor: true, children: ["\u5BA1\u6279\u72B6\u6001 \u00B7 ", status.toolName, " \u00B7 "] }), _jsx(Text, { color: status.color, children: status.label })] }) }));
131
+ }
132
+ function AskDock({ ask, selectedIndex, selectedMulti, customInputMode, }) {
133
+ const hasCustomOption = ask.prompt.choices.some((choice) => choice.data.endsWith(':custom'));
134
+ const options = [...ask.prompt.choices];
135
+ if (ask.allowCustomInput && !hasCustomOption) {
136
+ options.push({
137
+ label: `0. ${ask.customInputLabel}`,
138
+ data: `ask:${ask.reqId}:custom`,
139
+ });
140
+ }
141
+ const selectedSet = new Set(selectedMulti);
142
+ const maxIndex = Math.max(0, options.length - 1);
143
+ const safeIndex = Math.min(selectedIndex, maxIndex);
144
+ return (_jsxs(Box, { flexDirection: "column", borderStyle: "double", borderColor: ask.finalText ? 'gray' : 'cyan', paddingX: 1, marginX: 1, marginTop: 1, children: [_jsxs(Text, { children: [_jsx(Text, { bold: true, color: ask.finalText ? 'gray' : 'cyan', children: "\u7528\u6237\u51B3\u7B56 " }), _jsx(Text, { children: ask.prompt.title || '请选择' }), _jsxs(Text, { dimColor: true, children: [" \u00B7 ", ask.selectionMode === 'multi' ? `多选 ${ask.minSelections}-${ask.maxSelections}` : '单选'] })] }), _jsx(Text, { dimColor: true, children: ask.prompt.body }), ask.finalText ? (_jsxs(Text, { color: "green", children: ["\u2713 ", ask.finalText] })) : customInputMode ? (_jsx(Text, { color: "yellow", children: "\u8F93\u5165\u81EA\u5B9A\u4E49\u56DE\u590D\u540E\u6309 Enter \u63D0\u4EA4\uFF08Esc \u8FD4\u56DE\u9009\u9879\uFF09" })) : (_jsxs(Box, { flexDirection: "column", children: [options.map((choice, index) => {
145
+ const isCustom = choice.data.endsWith(':custom');
146
+ const display = askChoiceLabel(choice.label);
147
+ const selected = ask.selectionMode === 'multi' && !isCustom ? selectedSet.has(index + 1) : false;
148
+ return (_jsxs(Text, { inverse: index === safeIndex, color: index === safeIndex ? 'cyan' : (selected ? 'green' : undefined), children: [ask.selectionMode === 'multi' && !isCustom ? (selected ? '[x] ' : '[ ] ') : ' ', index === safeIndex ? '› ' : ' ', display, isCustom ? ' (自定义输入)' : ''] }, `${choice.data}-${choice.label}`));
149
+ }), _jsx(Text, { dimColor: true, children: ask.selectionMode === 'multi'
150
+ ? '↑↓/Tab 选择 · Space 勾选 · Enter 提交'
151
+ : '↑↓/Tab 选择 · Enter 确认' })] }))] }));
152
+ }
153
+ export function TuiApp({ initialAgent, resumed, sessionId, onSessionIdChange, approvalBridge }) {
114
154
  const { exit } = useApp();
115
155
  const { stdout } = useStdout();
116
156
  const { setRawMode } = useStdin();
@@ -133,12 +173,57 @@ export function TuiApp({ initialAgent, resumed, sessionId, onSessionIdChange })
133
173
  // Cumulative usage this TUI session (fed by sendPrompt's onUsage). pi-native
134
174
  // emits all three; some adapters emit only cost — we accumulate what's there.
135
175
  const [usage, setUsage] = useState({ inTok: 0, outTok: 0, costUsd: 0 });
176
+ const [approval, setApproval] = useState(null);
177
+ const [approvalStatusLine, setApprovalStatusLine] = useState(null);
178
+ const [approvalActionIndex, setApprovalActionIndex] = useState(0);
179
+ const [ask, setAsk] = useState(null);
180
+ const [askActionIndex, setAskActionIndex] = useState(0);
181
+ const [askSelectedIndexes, setAskSelectedIndexes] = useState([]);
182
+ const [askCustomInputMode, setAskCustomInputMode] = useState(false);
183
+ const approvalReqId = approval?.prompt.reqId;
184
+ const approvalOutcome = approval?.outcome;
185
+ const askPending = Boolean(ask && !ask.finalText);
186
+ const activeApprovalPending = Boolean(approvalReqId && !approvalOutcome);
187
+ const activeDecisionPending = askPending || activeApprovalPending;
188
+ const approvalActions = useMemo(() => approvalActionsFor(approval), [approval]);
189
+ const approvalActionSafeIndex = Math.max(0, Math.min(approvalActionIndex, approvalActions.length - 1));
136
190
  useEffect(() => {
137
191
  agentSessionsRef.current = agentSessions;
138
192
  }, [agentSessions]);
139
193
  useEffect(() => {
140
194
  onSessionIdChange?.(activeSessionId);
141
195
  }, [activeSessionId, onSessionIdChange]);
196
+ useEffect(() => {
197
+ if (!approvalBridge)
198
+ return;
199
+ approvalBridge.setSession(activeSessionId);
200
+ const unsubscribeApproval = approvalBridge.subscribe((next) => {
201
+ if (next?.outcome) {
202
+ const status = toApprovalStatusLine(next);
203
+ if (status)
204
+ setApprovalStatusLine(status);
205
+ setApproval(null);
206
+ return;
207
+ }
208
+ if (next) {
209
+ setApprovalActionIndex(0);
210
+ setApprovalStatusLine(null);
211
+ }
212
+ setApproval(next);
213
+ });
214
+ const unsubscribeAsk = approvalBridge.subscribeAsk((next) => {
215
+ if (next && !next.finalText) {
216
+ setAskActionIndex(0);
217
+ setAskSelectedIndexes([]);
218
+ setAskCustomInputMode(false);
219
+ }
220
+ setAsk(next);
221
+ });
222
+ return () => {
223
+ unsubscribeApproval();
224
+ unsubscribeAsk();
225
+ };
226
+ }, [approvalBridge, activeSessionId]);
142
227
  const cwd = useMemo(() => {
143
228
  const home = process.env.HOME;
144
229
  const c = process.cwd();
@@ -147,6 +232,25 @@ export function TuiApp({ initialAgent, resumed, sessionId, onSessionIdChange })
147
232
  const cols = stdout?.columns ?? 80;
148
233
  const chatWidth = Math.min(cols - 4, 120);
149
234
  const currentAgentSession = agent ? agentSessions[agent] : undefined;
235
+ const askOptions = useMemo(() => {
236
+ if (!ask)
237
+ return [];
238
+ const base = ask.prompt.choices.map((choice, i) => ({
239
+ label: choice.label,
240
+ data: choice.data,
241
+ index: i + 1,
242
+ isCustom: choice.data.endsWith(':custom'),
243
+ }));
244
+ if (ask.allowCustomInput && !base.some((item) => item.isCustom)) {
245
+ base.push({
246
+ label: `0. ${ask.customInputLabel}`,
247
+ data: `ask:${ask.reqId}:custom`,
248
+ index: base.length + 1,
249
+ isCustom: true,
250
+ });
251
+ }
252
+ return base;
253
+ }, [ask]);
150
254
  // ── Slash-command popup state ─────────────────────────────────────
151
255
  const slashPopupOpen = input.startsWith('/') && !input.includes(' ');
152
256
  const filteredSlash = useMemo(() => {
@@ -227,6 +331,98 @@ export function TuiApp({ initialAgent, resumed, sessionId, onSessionIdChange })
227
331
  return;
228
332
  }
229
333
  const popupOpen = slashPopupOpen || filePopupOpen || agentArgPopupOpen;
334
+ if (askPending && !palette.open && !helpOpen && !popupOpen && ask) {
335
+ if (!askCustomInputMode) {
336
+ if (key.leftArrow || key.upArrow) {
337
+ setAskActionIndex((index) => (index - 1 + askOptions.length) % Math.max(askOptions.length, 1));
338
+ return;
339
+ }
340
+ if (key.rightArrow || key.downArrow || key.tab) {
341
+ setAskActionIndex((index) => (index + 1) % Math.max(askOptions.length, 1));
342
+ return;
343
+ }
344
+ if (key.escape && ask.allowCustomInput) {
345
+ setAskCustomInputMode(false);
346
+ return;
347
+ }
348
+ if (key.return) {
349
+ const pick = askOptions[askActionIndex];
350
+ if (!pick)
351
+ return;
352
+ if (pick.isCustom) {
353
+ setAskCustomInputMode(true);
354
+ setInput('');
355
+ return;
356
+ }
357
+ if (ask.selectionMode === 'multi') {
358
+ const picks = askSelectedIndexes.length > 0
359
+ ? askSelectedIndexes
360
+ : [pick.index];
361
+ if (picks.length < ask.minSelections || picks.length > ask.maxSelections) {
362
+ setError(`请先选择 ${ask.minSelections}-${ask.maxSelections} 项`);
363
+ return;
364
+ }
365
+ void approvalBridge?.submitAskMulti(picks).then((handled) => {
366
+ if (handled) {
367
+ setInput('');
368
+ setAskCustomInputMode(false);
369
+ setAskSelectedIndexes([]);
370
+ }
371
+ });
372
+ return;
373
+ }
374
+ void approvalBridge?.submitAskSingle(pick.index).then((handled) => {
375
+ if (handled) {
376
+ setInput('');
377
+ setAskCustomInputMode(false);
378
+ setAskSelectedIndexes([]);
379
+ }
380
+ });
381
+ return;
382
+ }
383
+ if (ask.selectionMode === 'multi' && inputCh === ' ') {
384
+ const pick = askOptions[askActionIndex];
385
+ if (!pick || pick.isCustom)
386
+ return;
387
+ setAskSelectedIndexes((prev) => {
388
+ if (prev.includes(pick.index))
389
+ return prev.filter((n) => n !== pick.index);
390
+ if (prev.length >= ask.maxSelections) {
391
+ setError(`最多选择 ${ask.maxSelections} 项`);
392
+ return prev;
393
+ }
394
+ return [...prev, pick.index].sort((a, b) => a - b);
395
+ });
396
+ return;
397
+ }
398
+ }
399
+ else if (key.escape) {
400
+ setAskCustomInputMode(false);
401
+ setInput('');
402
+ return;
403
+ }
404
+ }
405
+ if (activeApprovalPending && !askPending && !palette.open && !helpOpen && !popupOpen && approval) {
406
+ const actionCount = Math.max(approvalActions.length, 1);
407
+ if ((key.leftArrow || key.upArrow) && actionCount > 1) {
408
+ setApprovalActionIndex((index) => (index - 1 + actionCount) % actionCount);
409
+ return;
410
+ }
411
+ if ((key.rightArrow || key.downArrow || key.tab) && actionCount > 1) {
412
+ setApprovalActionIndex((index) => (index + 1) % actionCount);
413
+ return;
414
+ }
415
+ if (key.return) {
416
+ const action = approvalActions[approvalActionSafeIndex] ?? approvalActions[0];
417
+ if (action) {
418
+ void approvalBridge?.submitChoice(action.choice).then((handled) => {
419
+ if (handled)
420
+ setInput('');
421
+ });
422
+ }
423
+ return;
424
+ }
425
+ }
230
426
  // `?` toggles the help overlay when the prompt box is empty so users
231
427
  // can discover keys without `/help` being pushed away by chat history.
232
428
  if (!key.ctrl && !key.meta && inputCh === '?' && !palette.open && !popupOpen && input.trim().length === 0) {
@@ -327,7 +523,7 @@ export function TuiApp({ initialAgent, resumed, sessionId, onSessionIdChange })
327
523
  return;
328
524
  }
329
525
  }
330
- if (!busy && !palette.open && !popupOpen) {
526
+ if (!busy && !palette.open && !popupOpen && !activeDecisionPending) {
331
527
  if (key.upArrow) {
332
528
  const history = inputHistoryRef.current;
333
529
  if (history.length === 0)
@@ -707,9 +903,13 @@ export function TuiApp({ initialAgent, resumed, sessionId, onSessionIdChange })
707
903
  abortRef.current = ac;
708
904
  try {
709
905
  let chunks = '';
710
- for await (const chunk of adapter.sendPrompt(`tui-${process.pid}`, text, history, {
906
+ for await (const chunk of adapter.sendPrompt(`tui-${activeSessionId}`, text, history, {
711
907
  agentSessionId: currentAgentSessionId,
712
908
  agentSessionResume: Boolean(currentAgentSessionId),
909
+ platform: 'tui',
910
+ channelId: 'local',
911
+ threadId: activeSessionId,
912
+ userId: process.env.USER || 'tui',
713
913
  onAgentSessionId: (id) => {
714
914
  const normalized = id.trim();
715
915
  if (!normalized)
@@ -778,7 +978,31 @@ export function TuiApp({ initialAgent, resumed, sessionId, onSessionIdChange })
778
978
  }
779
979
  async function onSubmit(line) {
780
980
  const text = line.trim();
781
- if (!text || busy)
981
+ if (!text)
982
+ return;
983
+ if (askPending && ask) {
984
+ const handled = askCustomInputMode
985
+ ? await approvalBridge?.submitAskCustom(text)
986
+ : await approvalBridge?.submitAskText(text);
987
+ if (handled) {
988
+ setInput('');
989
+ setAskCustomInputMode(false);
990
+ setAskSelectedIndexes([]);
991
+ rememberSubmittedLine(text);
992
+ return;
993
+ }
994
+ setError('未识别该回复,请用方向键选择或输入合法选项');
995
+ return;
996
+ }
997
+ if (approval && !approval.outcome) {
998
+ const handled = await approvalBridge?.submitText(text);
999
+ if (handled) {
1000
+ setInput('');
1001
+ rememberSubmittedLine(text);
1002
+ return;
1003
+ }
1004
+ }
1005
+ if (busy)
782
1006
  return;
783
1007
  // Popup auto-accept on Enter when user clearly wants the suggestion.
784
1008
  if (slashPopupOpen && filteredSlash.length > 0) {
@@ -830,7 +1054,7 @@ export function TuiApp({ initialAgent, resumed, sessionId, onSessionIdChange })
830
1054
  await doSendPrompt(text);
831
1055
  }
832
1056
  // ── render ────────────────────────────────────────────────────────
833
- return (_jsxs(Box, { flexDirection: "column", width: "100%", children: [_jsxs(Box, { paddingX: 1, flexDirection: "column", children: [_jsxs(Text, { children: [_jsx(Text, { bold: true, color: "cyan", children: "agim TUI" }), _jsx(Text, { dimColor: true, children: ' · 会话 ' }), _jsx(Text, { color: "yellow", children: shortSessionId(activeSessionId) }), _jsx(Text, { dimColor: true, children: ' · agent ' }), _jsx(Text, { color: "green", children: agent ?? '<no agent>' }), _jsx(Text, { dimColor: true, children: ' · ' }), _jsx(Text, { color: busy ? 'yellow' : 'green', children: busy ? '生成中' : '就绪' })] }), _jsxs(Text, { dimColor: true, children: ["cwd: ", cwd] })] }), _jsx(ChatHistory, { messages: messages, agent: agent, chatWidth: chatWidth }), error && (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { color: "red", children: ["\u26A0 ", error] }) })), !palette.open && helpOpen && (_jsxs(Box, { flexDirection: "column", borderStyle: "double", borderColor: "cyan", paddingX: 1, children: [_jsxs(Text, { children: [_jsx(Text, { bold: true, children: "\u5FEB\u6377\u952E\u5E2E\u52A9" }), _jsx(Text, { dimColor: true, children: " \u00B7 Esc / ? \u5173\u95ED" })] }), _jsx(Text, { dimColor: true, children: "\u53D1\u9001: Enter \u00B7 \u53D6\u6D88\u751F\u6210: Esc \u00B7 \u5386\u53F2: \u2191\u2193 \u00B7 \u8865\u5168: Tab" }), _jsx(Text, { dimColor: true, children: "\u9762\u677F: Ctrl-P \u00B7 \u9000\u51FA: Ctrl-C \u00B7 \u591A\u884C\u7F16\u8F91: /editor" }), _jsx(Text, { dimColor: true, children: "\u4F1A\u8BDD: /new \u65B0\u4F1A\u8BDD \u00B7 /sessions \u6700\u8FD1\u4F1A\u8BDD \u00B7 /export \u5BFC\u51FA" }), _jsx(Text, { dimColor: true, children: '特殊输入: !<shell> 运行命令 · @<file> 引用文件' })] })), palette.open && (_jsxs(Box, { flexDirection: "column", borderStyle: "double", borderColor: "magenta", paddingX: 1, children: [_jsxs(Text, { children: [_jsx(Text, { bold: true, children: "\u547D\u4EE4\u9762\u677F" }), _jsx(Text, { dimColor: true, children: " \u00B7 \u8F93\u5165\u8FC7\u6EE4 \u00B7 \u2191\u2193 \u9009 \u00B7 Enter \u9009\u4E2D \u00B7 Esc \u5173\u95ED" })] }), _jsxs(Text, { color: "cyan", children: ["\u203A ", palette.query, _jsx(Text, { inverse: true, children: " " })] }), filteredPalette.slice(0, 12).map((c, i) => (_jsxs(Box, { children: [_jsx(Text, { color: i === palette.index ? 'cyan' : undefined, inverse: i === palette.index, children: c.name.padEnd(12) }), _jsxs(Text, { dimColor: true, children: [" ", c.description] })] }, c.id))), filteredPalette.length === 0 && _jsx(Text, { dimColor: true, children: "(\u6CA1\u6709\u5339\u914D\u7684\u547D\u4EE4)" })] })), !palette.open && filePopupOpen && filteredFiles.length > 0 && (_jsxs(Box, { flexDirection: "column", borderStyle: "single", borderColor: "green", paddingX: 1, children: [_jsxs(Text, { dimColor: true, children: ["\u6587\u4EF6\u5F15\u7528\uFF08", filteredFiles.length, " \u4E2A\u5339\u914D\uFF1BTab \u8865\u5168\uFF09"] }), filteredFiles.slice(0, 10).map((f, i) => (_jsxs(Text, { color: i === popupIndex ? 'green' : undefined, inverse: i === popupIndex, children: [f.isDir ? '📁 ' : '📄 ', f.rel] }, f.rel)))] })), !palette.open && slashPopupOpen && filteredSlash.length > 0 && (_jsxs(Box, { flexDirection: "column", borderStyle: "single", borderColor: "cyan", paddingX: 1, children: [filteredSlash.map((c, i) => (_jsxs(Box, { children: [_jsx(Text, { color: i === popupIndex ? 'cyan' : undefined, inverse: i === popupIndex, children: c.name.padEnd(10) }), _jsxs(Text, { dimColor: true, children: [" ", c.description] })] }, c.name))), _jsx(Text, { dimColor: true, children: "\u2191\u2193 \u79FB\u52A8 \u00B7 Tab \u8865\u5168 \u00B7 Enter \u9009\u4E2D" })] })), !palette.open && agentArgPopupOpen && filteredAgentArgs.length > 0 && (_jsxs(Box, { flexDirection: "column", borderStyle: "single", borderColor: "magenta", paddingX: 1, children: [_jsxs(Text, { dimColor: true, children: ["\u5207\u6362 agent\uFF08", filteredAgentArgs.length, " \u4E2A\u5339\u914D\uFF1BTab \u8865\u5168 \u00B7 Enter \u9009\u4E2D\uFF09"] }), filteredAgentArgs.slice(0, 10).map((a, i) => (_jsxs(Text, { color: i === popupIndex ? 'magenta' : undefined, inverse: i === popupIndex, children: [a, a === agent ? ' (当前)' : ''] }, a)))] })), _jsxs(Box, { borderStyle: "single", borderColor: busy ? 'yellow' : 'gray', paddingX: 1, marginTop: (slashPopupOpen || filePopupOpen || agentArgPopupOpen || palette.open || helpOpen) ? 0 : 1, children: [_jsxs(Text, { color: busy ? 'yellow' : 'green', children: [busy ? '⠿' : '›', " "] }), _jsx(TextInput, { value: input, onChange: (next) => {
1057
+ return (_jsxs(Box, { flexDirection: "column", width: "100%", children: [_jsxs(Box, { paddingX: 1, flexDirection: "column", children: [_jsxs(Text, { children: [_jsx(Text, { bold: true, color: "cyan", children: "agim TUI" }), _jsx(Text, { dimColor: true, children: ' · 会话 ' }), _jsx(Text, { color: "yellow", children: shortSessionId(activeSessionId) }), _jsx(Text, { dimColor: true, children: ' · agent ' }), _jsx(Text, { color: "green", children: agent ?? '<no agent>' }), _jsx(Text, { dimColor: true, children: ' · ' }), _jsx(Text, { color: busy ? 'yellow' : 'green', children: busy ? '生成中' : '就绪' })] }), _jsxs(Text, { dimColor: true, children: ["cwd: ", cwd] })] }), _jsx(ChatHistory, { messages: messages, agent: agent, chatWidth: chatWidth }), ask && (_jsx(AskDock, { ask: ask, selectedIndex: askActionIndex, selectedMulti: askSelectedIndexes, customInputMode: askCustomInputMode })), approval && !askPending && (_jsx(ApprovalDock, { approval: approval, selectedIndex: approvalActionSafeIndex, actions: approvalActions })), error && (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { color: "red", children: ["\u26A0 ", error] }) })), !palette.open && helpOpen && (_jsxs(Box, { flexDirection: "column", borderStyle: "double", borderColor: "cyan", paddingX: 1, children: [_jsxs(Text, { children: [_jsx(Text, { bold: true, children: "\u5FEB\u6377\u952E\u5E2E\u52A9" }), _jsx(Text, { dimColor: true, children: " \u00B7 Esc / ? \u5173\u95ED" })] }), _jsx(Text, { dimColor: true, children: "\u53D1\u9001: Enter \u00B7 \u53D6\u6D88\u751F\u6210: Esc \u00B7 \u5386\u53F2: \u2191\u2193 \u00B7 \u8865\u5168: Tab" }), _jsx(Text, { dimColor: true, children: "\u9762\u677F: Ctrl-P \u00B7 \u9000\u51FA: Ctrl-C \u00B7 \u591A\u884C\u7F16\u8F91: /editor" }), _jsx(Text, { dimColor: true, children: "\u4F1A\u8BDD: /new \u65B0\u4F1A\u8BDD \u00B7 /sessions \u6700\u8FD1\u4F1A\u8BDD \u00B7 /export \u5BFC\u51FA" }), _jsx(Text, { dimColor: true, children: '特殊输入: !<shell> 运行命令 · @<file> 引用文件' })] })), palette.open && (_jsxs(Box, { flexDirection: "column", borderStyle: "double", borderColor: "magenta", paddingX: 1, children: [_jsxs(Text, { children: [_jsx(Text, { bold: true, children: "\u547D\u4EE4\u9762\u677F" }), _jsx(Text, { dimColor: true, children: " \u00B7 \u8F93\u5165\u8FC7\u6EE4 \u00B7 \u2191\u2193 \u9009 \u00B7 Enter \u9009\u4E2D \u00B7 Esc \u5173\u95ED" })] }), _jsxs(Text, { color: "cyan", children: ["\u203A ", palette.query, _jsx(Text, { inverse: true, children: " " })] }), filteredPalette.slice(0, 12).map((c, i) => (_jsxs(Box, { children: [_jsx(Text, { color: i === palette.index ? 'cyan' : undefined, inverse: i === palette.index, children: c.name.padEnd(12) }), _jsxs(Text, { dimColor: true, children: [" ", c.description] })] }, c.id))), filteredPalette.length === 0 && _jsx(Text, { dimColor: true, children: "(\u6CA1\u6709\u5339\u914D\u7684\u547D\u4EE4)" })] })), !palette.open && filePopupOpen && filteredFiles.length > 0 && (_jsxs(Box, { flexDirection: "column", borderStyle: "single", borderColor: "green", paddingX: 1, children: [_jsxs(Text, { dimColor: true, children: ["\u6587\u4EF6\u5F15\u7528\uFF08", filteredFiles.length, " \u4E2A\u5339\u914D\uFF1BTab \u8865\u5168\uFF09"] }), filteredFiles.slice(0, 10).map((f, i) => (_jsxs(Text, { color: i === popupIndex ? 'green' : undefined, inverse: i === popupIndex, children: [f.isDir ? '📁 ' : '📄 ', f.rel] }, f.rel)))] })), !palette.open && slashPopupOpen && filteredSlash.length > 0 && (_jsxs(Box, { flexDirection: "column", borderStyle: "single", borderColor: "cyan", paddingX: 1, children: [filteredSlash.map((c, i) => (_jsxs(Box, { children: [_jsx(Text, { color: i === popupIndex ? 'cyan' : undefined, inverse: i === popupIndex, children: c.name.padEnd(10) }), _jsxs(Text, { dimColor: true, children: [" ", c.description] })] }, c.name))), _jsx(Text, { dimColor: true, children: "\u2191\u2193 \u79FB\u52A8 \u00B7 Tab \u8865\u5168 \u00B7 Enter \u9009\u4E2D" })] })), !palette.open && agentArgPopupOpen && filteredAgentArgs.length > 0 && (_jsxs(Box, { flexDirection: "column", borderStyle: "single", borderColor: "magenta", paddingX: 1, children: [_jsxs(Text, { dimColor: true, children: ["\u5207\u6362 agent\uFF08", filteredAgentArgs.length, " \u4E2A\u5339\u914D\uFF1BTab \u8865\u5168 \u00B7 Enter \u9009\u4E2D\uFF09"] }), filteredAgentArgs.slice(0, 10).map((a, i) => (_jsxs(Text, { color: i === popupIndex ? 'magenta' : undefined, inverse: i === popupIndex, children: [a, a === agent ? ' (当前)' : ''] }, a)))] })), _jsxs(Box, { borderStyle: "single", borderColor: busy ? 'yellow' : 'gray', paddingX: 1, marginTop: (slashPopupOpen || filePopupOpen || agentArgPopupOpen || palette.open || helpOpen) ? 0 : 1, children: [_jsxs(Text, { color: busy ? 'yellow' : 'green', children: [busy ? '⠿' : '›', " "] }), _jsx(TextInput, { value: input, onChange: (next) => {
834
1058
  if (next === '?'
835
1059
  && input.length === 0
836
1060
  && !busy
@@ -847,6 +1071,16 @@ export function TuiApp({ initialAgent, resumed, sessionId, onSessionIdChange })
847
1071
  historyDraftRef.current = '';
848
1072
  }
849
1073
  setInput(next);
850
- }, onSubmit: onSubmit, placeholder: busy ? '生成中…(Esc 取消)' : '输入消息 · / 命令 · ! shell · @ 文件 · ↑↓ 历史 · ? 帮助 · Ctrl-P 面板' })] }), _jsx(Box, { paddingX: 1, children: _jsxs(Text, { dimColor: true, children: [_jsxs(Text, { children: ["session ", shortSessionId(activeSessionId)] }), _jsx(Text, { children: ' · ' }), _jsxs(Text, { children: [messages.filter((m) => m.role !== 'system').length, " \u6761\u6D88\u606F"] }), currentAgentSession && (_jsxs(Text, { children: [' · ', "agent-session ", shortSessionId(currentAgentSession)] })), (usage.inTok > 0 || usage.outTok > 0 || usage.costUsd > 0) && (_jsxs(Text, { children: [' · ', "\u21C5 ", fmtTok(usage.inTok), "/", fmtTok(usage.outTok), " tok", usage.costUsd > 0 ? ` · $${usage.costUsd.toFixed(4)}` : ''] })), _jsx(Text, { children: ' · ' }), _jsx(Text, { children: "/help \u00B7 ? \u5E2E\u52A9 \u00B7 Ctrl-P \u9762\u677F \u00B7 Ctrl-C \u9000\u51FA" })] }) })] }));
1074
+ }, onSubmit: onSubmit, placeholder: askPending
1075
+ ? (askCustomInputMode
1076
+ ? '请输入自定义回复,Enter 提交,Esc 返回选项'
1077
+ : (ask?.selectionMode === 'multi'
1078
+ ? '待决策:↑↓ 选择 · Space 勾选 · Enter 提交'
1079
+ : '待决策:↑↓ 选择 · Enter 确认'))
1080
+ : activeApprovalPending
1081
+ ? (approval?.prompt.mode === 'auto-allow'
1082
+ ? '默认放行中:Enter 或输入 n 可拒绝'
1083
+ : '审批待处理:用方向键选择,Enter 确认')
1084
+ : busy ? '生成中…(Esc 取消)' : '输入消息 · / 命令 · ! shell · @ 文件 · ↑↓ 历史 · ? 帮助 · Ctrl-P 面板', focus: !activeDecisionPending || askCustomInputMode })] }), !activeApprovalPending && approvalStatusLine && _jsx(ApprovalStatusBar, { status: approvalStatusLine }), _jsx(Box, { paddingX: 1, children: _jsxs(Text, { dimColor: true, children: [_jsxs(Text, { children: ["session ", shortSessionId(activeSessionId)] }), _jsx(Text, { children: ' · ' }), _jsxs(Text, { children: [messages.filter((m) => m.role !== 'system').length, " \u6761\u6D88\u606F"] }), currentAgentSession && (_jsxs(Text, { children: [' · ', "agent-session ", shortSessionId(currentAgentSession)] })), (usage.inTok > 0 || usage.outTok > 0 || usage.costUsd > 0) && (_jsxs(Text, { children: [' · ', "\u21C5 ", fmtTok(usage.inTok), "/", fmtTok(usage.outTok), " tok", usage.costUsd > 0 ? ` · $${usage.costUsd.toFixed(4)}` : ''] })), _jsx(Text, { children: ' · ' }), _jsx(Text, { children: "/help \u00B7 ? \u5E2E\u52A9 \u00B7 Ctrl-P \u9762\u677F \u00B7 Ctrl-C \u9000\u51FA" })] }) })] }));
851
1085
  }
852
1086
  //# sourceMappingURL=app.js.map