agim-cli 1.2.139 → 1.2.141
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.
- package/CHANGELOG.md +122 -0
- package/dist/core/live-config.d.ts.map +1 -1
- package/dist/core/live-config.js +8 -0
- package/dist/core/live-config.js.map +1 -1
- package/dist/core/llm/registry.d.ts.map +1 -1
- package/dist/core/llm/registry.js +9 -1
- package/dist/core/llm/registry.js.map +1 -1
- package/dist/core/llm/secrets.d.ts +29 -3
- package/dist/core/llm/secrets.d.ts.map +1 -1
- package/dist/core/llm/secrets.js +114 -5
- package/dist/core/llm/secrets.js.map +1 -1
- package/dist/web/llm-api.js +12 -2
- package/dist/web/llm-api.js.map +1 -1
- package/dist/web/public/assets/{a2a-COCxV3Cc.js → a2a-DczMMkbl.js} +2 -2
- package/dist/web/public/assets/{a2a-COCxV3Cc.js.map → a2a-DczMMkbl.js.map} +1 -1
- package/dist/web/public/assets/{activity-lssr7XnJ.js → activity-cbLHkzca.js} +2 -2
- package/dist/web/public/assets/{activity-lssr7XnJ.js.map → activity-cbLHkzca.js.map} +1 -1
- package/dist/web/public/assets/{admins-DSW8IUl9.js → admins-C-YsGMj7.js} +2 -2
- package/dist/web/public/assets/{admins-DSW8IUl9.js.map → admins-C-YsGMj7.js.map} +1 -1
- package/dist/web/public/assets/agents-BWfov_1-.js +7 -0
- package/dist/web/public/assets/agents-BWfov_1-.js.map +1 -0
- package/dist/web/public/assets/{approvals-ClzA_Sl1.js → approvals-HSssmXKS.js} +2 -2
- package/dist/web/public/assets/{approvals-ClzA_Sl1.js.map → approvals-HSssmXKS.js.map} +1 -1
- package/dist/web/public/assets/{arrow-down-B6b32UC0.js → arrow-down-BXvC8Al2.js} +2 -2
- package/dist/web/public/assets/{arrow-down-B6b32UC0.js.map → arrow-down-BXvC8Al2.js.map} +1 -1
- package/dist/web/public/assets/{arrow-up-B-nP5kYY.js → arrow-up-63xELY5Q.js} +2 -2
- package/dist/web/public/assets/{arrow-up-B-nP5kYY.js.map → arrow-up-63xELY5Q.js.map} +1 -1
- package/dist/web/public/assets/{asks-DyXhQTTK.js → asks-COLEFOvK.js} +2 -2
- package/dist/web/public/assets/{asks-DyXhQTTK.js.map → asks-COLEFOvK.js.map} +1 -1
- package/dist/web/public/assets/{audit-BI7SCouF.js → audit-D4ZEiZub.js} +2 -2
- package/dist/web/public/assets/{audit-BI7SCouF.js.map → audit-D4ZEiZub.js.map} +1 -1
- package/dist/web/public/assets/{bell-B3N02OLo.js → bell-Cg2Bvv06.js} +2 -2
- package/dist/web/public/assets/{bell-B3N02OLo.js.map → bell-Cg2Bvv06.js.map} +1 -1
- package/dist/web/public/assets/{bgjobs-CicZiNip.js → bgjobs-CEjCzwtd.js} +2 -2
- package/dist/web/public/assets/{bgjobs-CicZiNip.js.map → bgjobs-CEjCzwtd.js.map} +1 -1
- package/dist/web/public/assets/{brain-C6ukvGuf.js → brain-euvl6F6C.js} +2 -2
- package/dist/web/public/assets/{brain-C6ukvGuf.js.map → brain-euvl6F6C.js.map} +1 -1
- package/dist/web/public/assets/{briefcase-hn1X3B5h.js → briefcase-DPWLbCnA.js} +2 -2
- package/dist/web/public/assets/{briefcase-hn1X3B5h.js.map → briefcase-DPWLbCnA.js.map} +1 -1
- package/dist/web/public/assets/{chat-BDQj16Vz.js → chat-Dz9kfaxH.js} +2 -2
- package/dist/web/public/assets/{chat-BDQj16Vz.js.map → chat-Dz9kfaxH.js.map} +1 -1
- package/dist/web/public/assets/{chevron-left-RxNVjq1Y.js → chevron-left-BeIh5thq.js} +2 -2
- package/dist/web/public/assets/{chevron-left-RxNVjq1Y.js.map → chevron-left-BeIh5thq.js.map} +1 -1
- package/dist/web/public/assets/{chevron-right-BUp0DVnl.js → chevron-right-uP_l9MMb.js} +2 -2
- package/dist/web/public/assets/{chevron-right-BUp0DVnl.js.map → chevron-right-uP_l9MMb.js.map} +1 -1
- package/dist/web/public/assets/{circle-check-Bm4WZ21u.js → circle-check-CewnjFgv.js} +2 -2
- package/dist/web/public/assets/{circle-check-Bm4WZ21u.js.map → circle-check-CewnjFgv.js.map} +1 -1
- package/dist/web/public/assets/{circle-check-big-BIrgy-jJ.js → circle-check-big-C2RTc48c.js} +2 -2
- package/dist/web/public/assets/{circle-check-big-BIrgy-jJ.js.map → circle-check-big-C2RTc48c.js.map} +1 -1
- package/dist/web/public/assets/{circle-x-D3x0-M6I.js → circle-x-Ccg1HyV-.js} +2 -2
- package/dist/web/public/assets/{circle-x-D3x0-M6I.js.map → circle-x-Ccg1HyV-.js.map} +1 -1
- package/dist/web/public/assets/{clock-DS7DQ1w2.js → clock-qxbYSynv.js} +2 -2
- package/dist/web/public/assets/{clock-DS7DQ1w2.js.map → clock-qxbYSynv.js.map} +1 -1
- package/dist/web/public/assets/{confirm-dialog-C68_XUSd.js → confirm-dialog-DmJq4Td9.js} +2 -2
- package/dist/web/public/assets/{confirm-dialog-C68_XUSd.js.map → confirm-dialog-DmJq4Td9.js.map} +1 -1
- package/dist/web/public/assets/{copy-Bzjhsg1p.js → copy-DxSHRdbc.js} +2 -2
- package/dist/web/public/assets/{copy-Bzjhsg1p.js.map → copy-DxSHRdbc.js.map} +1 -1
- package/dist/web/public/assets/{data-table-DEXi61Ud.js → data-table-S7rIjwdO.js} +2 -2
- package/dist/web/public/assets/{data-table-DEXi61Ud.js.map → data-table-S7rIjwdO.js.map} +1 -1
- package/dist/web/public/assets/{dialog-gd2B3olO.js → dialog-bAIDaO-6.js} +2 -2
- package/dist/web/public/assets/{dialog-gd2B3olO.js.map → dialog-bAIDaO-6.js.map} +1 -1
- package/dist/web/public/assets/{download-DCcaTdc6.js → download-OhsGtnO-.js} +2 -2
- package/dist/web/public/assets/{download-DCcaTdc6.js.map → download-OhsGtnO-.js.map} +1 -1
- package/dist/web/public/assets/{email-Bp4hAFCc.js → email-C1-HxWLF.js} +2 -2
- package/dist/web/public/assets/{email-Bp4hAFCc.js.map → email-C1-HxWLF.js.map} +1 -1
- package/dist/web/public/assets/{empty-state-Bzkp-ADK.js → empty-state-C-qjOHyu.js} +2 -2
- package/dist/web/public/assets/{empty-state-Bzkp-ADK.js.map → empty-state-C-qjOHyu.js.map} +1 -1
- package/dist/web/public/assets/{external-link-Deer-Lh8.js → external-link-DRVp9-lb.js} +2 -2
- package/dist/web/public/assets/{external-link-Deer-Lh8.js.map → external-link-DRVp9-lb.js.map} +1 -1
- package/dist/web/public/assets/{eye-aJAK4qYW.js → eye-CFhg5BTa.js} +2 -2
- package/dist/web/public/assets/{eye-aJAK4qYW.js.map → eye-CFhg5BTa.js.map} +1 -1
- package/dist/web/public/assets/{facts-CX8Slc_J.js → facts-CGaLWhzi.js} +2 -2
- package/dist/web/public/assets/{facts-CX8Slc_J.js.map → facts-CGaLWhzi.js.map} +1 -1
- package/dist/web/public/assets/{goals-CoO5qR3l.js → goals-C-dJANmn.js} +2 -2
- package/dist/web/public/assets/{goals-CoO5qR3l.js.map → goals-C-dJANmn.js.map} +1 -1
- package/dist/web/public/assets/{health-QRL6KLLZ.js → health-CWcti5h3.js} +2 -2
- package/dist/web/public/assets/{health-QRL6KLLZ.js.map → health-CWcti5h3.js.map} +1 -1
- package/dist/web/public/assets/{heart-pulse-DTuy4Tma.js → heart-pulse-DmGhKR2W.js} +2 -2
- package/dist/web/public/assets/{heart-pulse-DTuy4Tma.js.map → heart-pulse-DmGhKR2W.js.map} +1 -1
- package/dist/web/public/assets/{heartbeat-BLutWB3t.js → heartbeat-kLoGBNCo.js} +2 -2
- package/dist/web/public/assets/{heartbeat-BLutWB3t.js.map → heartbeat-kLoGBNCo.js.map} +1 -1
- package/dist/web/public/assets/{hot-B96_1Z-G.js → hot-BITDoax1.js} +2 -2
- package/dist/web/public/assets/{hot-B96_1Z-G.js.map → hot-BITDoax1.js.map} +1 -1
- package/dist/web/public/assets/{index-wVLKSZpI.js → index-O0BQoyzo.js} +22 -22
- package/dist/web/public/assets/{index-wVLKSZpI.js.map → index-O0BQoyzo.js.map} +1 -1
- package/dist/web/public/assets/{installed-5bpbtNzF.js → installed-Co9WrtQ7.js} +2 -2
- package/dist/web/public/assets/{installed-5bpbtNzF.js.map → installed-Co9WrtQ7.js.map} +1 -1
- package/dist/web/public/assets/{jobs-CPLjCaI5.js → jobs-hdHhBEvi.js} +2 -2
- package/dist/web/public/assets/{jobs-CPLjCaI5.js.map → jobs-hdHhBEvi.js.map} +1 -1
- package/dist/web/public/assets/{layout-Cdi09rZy.js → layout-BMXC1Uh1.js} +2 -2
- package/dist/web/public/assets/{layout-Cdi09rZy.js.map → layout-BMXC1Uh1.js.map} +1 -1
- package/dist/web/public/assets/{layout-CN-hNeUX.js → layout-CQtbOBag.js} +2 -2
- package/dist/web/public/assets/{layout-CN-hNeUX.js.map → layout-CQtbOBag.js.map} +1 -1
- package/dist/web/public/assets/{layout-nYKX1VY4.js → layout-CyBGneZ9.js} +2 -2
- package/dist/web/public/assets/{layout-nYKX1VY4.js.map → layout-CyBGneZ9.js.map} +1 -1
- package/dist/web/public/assets/{layout-DOvroJYL.js → layout-CysVsySh.js} +2 -2
- package/dist/web/public/assets/{layout-DOvroJYL.js.map → layout-CysVsySh.js.map} +1 -1
- package/dist/web/public/assets/{layout-K_oWND8q.js → layout-bDMXIKIR.js} +2 -2
- package/dist/web/public/assets/{layout-K_oWND8q.js.map → layout-bDMXIKIR.js.map} +1 -1
- package/dist/web/public/assets/{llm-BDW-Xpvk.js → llm-CPIRNQU2.js} +2 -2
- package/dist/web/public/assets/{llm-BDW-Xpvk.js.map → llm-CPIRNQU2.js.map} +1 -1
- package/dist/web/public/assets/{loader-circle-DPc6botW.js → loader-circle-9VUMGitw.js} +2 -2
- package/dist/web/public/assets/{loader-circle-DPc6botW.js.map → loader-circle-9VUMGitw.js.map} +1 -1
- package/dist/web/public/assets/{map-pin-ECh-25H3.js → map-pin-BXYvvHry.js} +2 -2
- package/dist/web/public/assets/{map-pin-ECh-25H3.js.map → map-pin-BXYvvHry.js.map} +1 -1
- package/dist/web/public/assets/{mcp-BV-k5VFD.js → mcp-BgLdlwSn.js} +2 -2
- package/dist/web/public/assets/{mcp-BV-k5VFD.js.map → mcp-BgLdlwSn.js.map} +1 -1
- package/dist/web/public/assets/{memos-BTsHVXah.js → memos-CfneX9DH.js} +2 -2
- package/dist/web/public/assets/{memos-BTsHVXah.js.map → memos-CfneX9DH.js.map} +1 -1
- package/dist/web/public/assets/{messengers-fyjNQwDX.js → messengers-7Phqea62.js} +2 -2
- package/dist/web/public/assets/{messengers-fyjNQwDX.js.map → messengers-7Phqea62.js.map} +1 -1
- package/dist/web/public/assets/{mobile-CeRuQZ-W.js → mobile-CV5b6D2W.js} +2 -2
- package/dist/web/public/assets/{mobile-CeRuQZ-W.js.map → mobile-CV5b6D2W.js.map} +1 -1
- package/dist/web/public/assets/{native-agent-Cg-Sab4t.js → native-agent-QvIa6LjE.js} +2 -2
- package/dist/web/public/assets/{native-agent-Cg-Sab4t.js.map → native-agent-QvIa6LjE.js.map} +1 -1
- package/dist/web/public/assets/{network-FK3KNI1a.js → network-BXhEjGhE.js} +2 -2
- package/dist/web/public/assets/{network-FK3KNI1a.js.map → network-BXhEjGhE.js.map} +1 -1
- package/dist/web/public/assets/{outbox-DhlxB8l0.js → outbox-DHQL7TQb.js} +2 -2
- package/dist/web/public/assets/{outbox-DhlxB8l0.js.map → outbox-DHQL7TQb.js.map} +1 -1
- package/dist/web/public/assets/{pagination-DzNnFLlI.js → pagination-VKuPb1Ot.js} +2 -2
- package/dist/web/public/assets/{pagination-DzNnFLlI.js.map → pagination-VKuPb1Ot.js.map} +1 -1
- package/dist/web/public/assets/{persona-B_EkauQB.js → persona-CWug2GLR.js} +2 -2
- package/dist/web/public/assets/{persona-B_EkauQB.js.map → persona-CWug2GLR.js.map} +1 -1
- package/dist/web/public/assets/{plans-D4aczyt4.js → plans-CZoEs5SY.js} +2 -2
- package/dist/web/public/assets/{plans-D4aczyt4.js.map → plans-CZoEs5SY.js.map} +1 -1
- package/dist/web/public/assets/{play-BdTIFReu.js → play-CfSn5Vdl.js} +2 -2
- package/dist/web/public/assets/{play-BdTIFReu.js.map → play-CfSn5Vdl.js.map} +1 -1
- package/dist/web/public/assets/{plus-CjK8x5Ta.js → plus-Z8l4CiqJ.js} +2 -2
- package/dist/web/public/assets/{plus-CjK8x5Ta.js.map → plus-Z8l4CiqJ.js.map} +1 -1
- package/dist/web/public/assets/{policy-D7vnZQeQ.js → policy-CutDSEPW.js} +2 -2
- package/dist/web/public/assets/{policy-D7vnZQeQ.js.map → policy-CutDSEPW.js.map} +1 -1
- package/dist/web/public/assets/{qr-code-CpmzdYE3.js → qr-code-DgU5aiM6.js} +2 -2
- package/dist/web/public/assets/{qr-code-CpmzdYE3.js.map → qr-code-DgU5aiM6.js.map} +1 -1
- package/dist/web/public/assets/{refresh-ccw-C2Q06LWj.js → refresh-ccw-D2CWiyU_.js} +2 -2
- package/dist/web/public/assets/{refresh-ccw-C2Q06LWj.js.map → refresh-ccw-D2CWiyU_.js.map} +1 -1
- package/dist/web/public/assets/{reminders-BW3VfYCD.js → reminders-Cb6Izedg.js} +2 -2
- package/dist/web/public/assets/{reminders-BW3VfYCD.js.map → reminders-Cb6Izedg.js.map} +1 -1
- package/dist/web/public/assets/{save-3XXDgdfD.js → save-DB0BDYTs.js} +2 -2
- package/dist/web/public/assets/{save-3XXDgdfD.js.map → save-DB0BDYTs.js.map} +1 -1
- package/dist/web/public/assets/{schedules-Bg5oBl6i.js → schedules-8mSjE14D.js} +2 -2
- package/dist/web/public/assets/{schedules-Bg5oBl6i.js.map → schedules-8mSjE14D.js.map} +1 -1
- package/dist/web/public/assets/{search-oQrctQNZ.js → search-B4fHilZ0.js} +2 -2
- package/dist/web/public/assets/{search-oQrctQNZ.js.map → search-B4fHilZ0.js.map} +1 -1
- package/dist/web/public/assets/{search-BjW_KGfJ.js → search-Con69NhG.js} +2 -2
- package/dist/web/public/assets/{search-BjW_KGfJ.js.map → search-Con69NhG.js.map} +1 -1
- package/dist/web/public/assets/{security-ongR2bsH.js → security-BTe3zUg8.js} +2 -2
- package/dist/web/public/assets/{security-ongR2bsH.js.map → security-BTe3zUg8.js.map} +1 -1
- package/dist/web/public/assets/{service-CNTTFkAV.js → service-C7SqcwfL.js} +2 -2
- package/dist/web/public/assets/{service-CNTTFkAV.js.map → service-C7SqcwfL.js.map} +1 -1
- package/dist/web/public/assets/{shield-alert-DW0flso9.js → shield-alert-CKFVsGgI.js} +2 -2
- package/dist/web/public/assets/{shield-alert-DW0flso9.js.map → shield-alert-CKFVsGgI.js.map} +1 -1
- package/dist/web/public/assets/{status-badge-CnqMu-7R.js → status-badge-BSkpyN4D.js} +2 -2
- package/dist/web/public/assets/{status-badge-CnqMu-7R.js.map → status-badge-BSkpyN4D.js.map} +1 -1
- package/dist/web/public/assets/{subtasks-ChtI7jpP.js → subtasks-Bel-I1Sk.js} +2 -2
- package/dist/web/public/assets/{subtasks-ChtI7jpP.js.map → subtasks-Bel-I1Sk.js.map} +1 -1
- package/dist/web/public/assets/{table-DVQPjWsi.js → table-CPn1MRcy.js} +2 -2
- package/dist/web/public/assets/{table-DVQPjWsi.js.map → table-CPn1MRcy.js.map} +1 -1
- package/dist/web/public/assets/{topn-Cs-wP6Tf.js → topn-Ba3RjcK1.js} +2 -2
- package/dist/web/public/assets/{topn-Cs-wP6Tf.js.map → topn-Ba3RjcK1.js.map} +1 -1
- package/dist/web/public/assets/{trash-2-BXhBc6TL.js → trash-2-Dfov8aHD.js} +2 -2
- package/dist/web/public/assets/{trash-2-BXhBc6TL.js.map → trash-2-Dfov8aHD.js.map} +1 -1
- package/dist/web/public/assets/{use-background-tasks-DWe_iYgk.js → use-background-tasks-BQrEeUwY.js} +2 -2
- package/dist/web/public/assets/{use-background-tasks-DWe_iYgk.js.map → use-background-tasks-BQrEeUwY.js.map} +1 -1
- package/dist/web/public/assets/{use-llm-admin-SE-2iSIe.js → use-llm-admin-DYekqogG.js} +2 -2
- package/dist/web/public/assets/{use-llm-admin-SE-2iSIe.js.map → use-llm-admin-DYekqogG.js.map} +1 -1
- package/dist/web/public/assets/{use-memory-tCgpqYla.js → use-memory-DbJ4pP2Z.js} +2 -2
- package/dist/web/public/assets/{use-memory-tCgpqYla.js.map → use-memory-DbJ4pP2Z.js.map} +1 -1
- package/dist/web/public/assets/{use-observability-CMUSiy5z.js → use-observability-C2M6WZ9W.js} +2 -2
- package/dist/web/public/assets/{use-observability-CMUSiy5z.js.map → use-observability-C2M6WZ9W.js.map} +1 -1
- package/dist/web/public/assets/{use-settings-BUM0BmtA.js → use-settings-DMdaoWsB.js} +2 -2
- package/dist/web/public/assets/{use-settings-BUM0BmtA.js.map → use-settings-DMdaoWsB.js.map} +1 -1
- package/dist/web/public/assets/{use-workspace-BOUxEbaB.js → use-workspace-BHG7h3jQ.js} +2 -2
- package/dist/web/public/assets/{use-workspace-BOUxEbaB.js.map → use-workspace-BHG7h3jQ.js.map} +1 -1
- package/dist/web/public/assets/{useQuery-II-YwTUw.js → useQuery-PdiC7-sY.js} +2 -2
- package/dist/web/public/assets/{useQuery-II-YwTUw.js.map → useQuery-PdiC7-sY.js.map} +1 -1
- package/dist/web/public/assets/{vector-C83bHtEW.js → vector-DnZM3OXU.js} +2 -2
- package/dist/web/public/assets/{vector-C83bHtEW.js.map → vector-DnZM3OXU.js.map} +1 -1
- package/dist/web/public/assets/{viewer-rMDo9pIb.js → viewer-Dz6k0YKp.js} +2 -2
- package/dist/web/public/assets/{viewer-rMDo9pIb.js.map → viewer-Dz6k0YKp.js.map} +1 -1
- package/dist/web/public/assets/{workspace-tVixiuWJ.js → workspace-BnXrWS3j.js} +2 -2
- package/dist/web/public/assets/{workspace-tVixiuWJ.js.map → workspace-BnXrWS3j.js.map} +1 -1
- package/dist/web/public/assets/{workspaces-CsLKDstm.js → workspaces-CSS_UBEi.js} +2 -2
- package/dist/web/public/assets/{workspaces-CsLKDstm.js.map → workspaces-CSS_UBEi.js.map} +1 -1
- package/dist/web/public/assets/{x-B0lqsHGi.js → x-DG-JKVw_.js} +2 -2
- package/dist/web/public/assets/{x-B0lqsHGi.js.map → x-DG-JKVw_.js.map} +1 -1
- package/dist/web/public/index.html +1 -1
- package/package.json +1 -1
- package/dist/web/public/assets/agents-0IMyFVui.js +0 -7
- package/dist/web/public/assets/agents-0IMyFVui.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,128 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
## [1.2.141] - 2026-06-04
|
|
8
|
+
|
|
9
|
+
### Fixed (LLM secret 解析:识别 vendor 标准 env)
|
|
10
|
+
|
|
11
|
+
用户反馈:环境变量里明明配了 `DEEPSEEK_API_KEY`、`OPENAI_API_KEY`、
|
|
12
|
+
`MOONSHOT_API_KEY` 等 vendor 官方 SDK 都认的标准命名,agim 却报 backend
|
|
13
|
+
"未配置"——只有把同一个 key 再复制一份到 `AGIM_LLM_SECRET_<NAME>` 或写
|
|
14
|
+
入 `~/.agim/llm-secrets.json` 才行。
|
|
15
|
+
|
|
16
|
+
**根因**:`resolveSecret(name)` 只看 agim 私有命名空间,从不读 vendor 标
|
|
17
|
+
准 env。一个装了 12 个 vendor API key 的环境,agim 一个都不识别——只
|
|
18
|
+
要 backend 没单独配过,就一律"未就绪"。
|
|
19
|
+
|
|
20
|
+
**修复**:`resolveSecret` 增加第 3 个 fallback。查找顺序:
|
|
21
|
+
1. `AGIM_LLM_SECRET_<NAME>`(原有,私有命名空间优先级最高)
|
|
22
|
+
2. `~/.agim/llm-secrets.json[name]`(原有,文件次之)
|
|
23
|
+
3. **v1.2.141 新增**:按 backend 的 `baseUrl` 子串 + `provider` 命中内
|
|
24
|
+
置 vendor 表,依次 probe 对应 vendor env。命中即用。
|
|
25
|
+
4. undefined(与之前一致)
|
|
26
|
+
|
|
27
|
+
vendor 表(v1.2.141 出厂内置 17 条规则,覆盖以下):
|
|
28
|
+
- `deepseek.com` → `DEEPSEEK_API_KEY`
|
|
29
|
+
- `api.openai.com` → `OPENAI_API_KEY`
|
|
30
|
+
- `moonshot.cn` → `MOONSHOT_API_KEY` → `KIMI_API_KEY`
|
|
31
|
+
- `dashscope` / `aliyuncs` → `DASHSCOPE_API_KEY` → `QWEN_API_KEY`
|
|
32
|
+
- `siliconflow` → `SILICONFLOW_API_KEY`
|
|
33
|
+
- `openrouter.ai` → `OPENROUTER_API_KEY`
|
|
34
|
+
- `stepfun.com` → `STEPFUN_API_KEY`
|
|
35
|
+
- `bigmodel.cn` / `zhipuai` → `ZHIPUAI_API_KEY` → `GLM_API_KEY`
|
|
36
|
+
- `minimaxi` → `MINIMAX_API_KEY`
|
|
37
|
+
- `baichuan-ai` → `BAICHUAN_API_KEY`
|
|
38
|
+
- `mistral.ai` → `MISTRAL_API_KEY`
|
|
39
|
+
- `groq.com` → `GROQ_API_KEY`
|
|
40
|
+
- `together.xyz` → `TOGETHER_API_KEY`
|
|
41
|
+
- `fireworks.ai` → `FIREWORKS_API_KEY`
|
|
42
|
+
- `provider === 'anthropic'` → `ANTHROPIC_API_KEY`(不需要 baseUrl)
|
|
43
|
+
|
|
44
|
+
**自托管网关**(不命中任何子串)走原 `AGIM_LLM_SECRET_<NAME>` 路径,零行
|
|
45
|
+
为变化——避免把别人的 key 错误地路由进自建 gateway。
|
|
46
|
+
|
|
47
|
+
### 诊断改进
|
|
48
|
+
|
|
49
|
+
- `describeSecretSource(name, hint)` 加 `source: 'vendor'` 这一档,
|
|
50
|
+
当 vendor env 命中时返回 `vendorEnvName: 'DEEPSEEK_API_KEY'`
|
|
51
|
+
- 没命中任何源时返回 `vendorCandidates: [...]`,告诉操作员"你可以
|
|
52
|
+
通过设置这些 vendor env 中任意一个让 agim 自动识别"
|
|
53
|
+
- Web admin `/api/llm` 把 `vendorEnvName` / `vendorCandidates` 透
|
|
54
|
+
出,便于 UI 显示 secret 来源
|
|
55
|
+
|
|
56
|
+
### 测试
|
|
57
|
+
|
|
58
|
+
`test/unit/llm-secrets-vendor.test.ts`(10 case 全绿):
|
|
59
|
+
- 私有 env 仍优先于 vendor env
|
|
60
|
+
- 私有 file 优先于 vendor env
|
|
61
|
+
- DeepSeek / OpenAI / Anthropic / Moonshot 各匹配 baseUrl
|
|
62
|
+
- alias env 兜底(MOONSHOT 没设 → 尝试 KIMI)
|
|
63
|
+
- 自托管 gateway(无匹配规则)→ undefined
|
|
64
|
+
- 不传 hint → 走 legacy 路径(向后兼容)
|
|
65
|
+
- describeSecretSource 报告 source='vendor' + vendorEnvName
|
|
66
|
+
- vendorCandidates 在 source='none' 时列出
|
|
67
|
+
|
|
68
|
+
### 文件
|
|
69
|
+
|
|
70
|
+
- `src/core/llm/secrets.ts` — VendorRule 表 + `resolveVendorEnv` +
|
|
71
|
+
`vendorEnvCandidates` + 拓展 `resolveSecret` / `describeSecretSource`
|
|
72
|
+
- `src/core/llm/registry.ts` — `loadFromConfig` 调 `resolveSecret` 时
|
|
73
|
+
传入 backend hint(provider + baseUrl)
|
|
74
|
+
- `src/web/llm-api.ts` — `/api/llm` GET 返回新字段
|
|
75
|
+
- `test/unit/llm-secrets-vendor.test.ts` — 新增 10 case
|
|
76
|
+
|
|
77
|
+
### 兼容性
|
|
78
|
+
|
|
79
|
+
零破坏:
|
|
80
|
+
- vendor 路径只在前两个私有源都为空时启用
|
|
81
|
+
- 老 install 没设 vendor env → 行为完全等于 v1.2.140
|
|
82
|
+
- 老 install 同时有私有 + vendor → 还是私有赢
|
|
83
|
+
- 设有 vendor env 但 backend 是自建 gateway → 不命中规则,不会误用
|
|
84
|
+
|
|
85
|
+
## [1.2.140] - 2026-06-04
|
|
86
|
+
|
|
87
|
+
### Fixed (admin SPA: native agent 加入 /settings/agents 清单)
|
|
88
|
+
|
|
89
|
+
用户反馈:后台 Agent 管理页(`/settings/agents`)不显示 native 智能体,
|
|
90
|
+
只能通过 IM 内的 `/na` slash 用,操作不便。
|
|
91
|
+
|
|
92
|
+
诊断:
|
|
93
|
+
- 后端 native 早就在 registry 里**无条件注册**,`isAgentEnabled('native')`
|
|
94
|
+
也**永远返回 true**(v1.2.103 兜底);
|
|
95
|
+
- 但 SPA 的 `BUILTIN_AGENTS` 是写死的 4 个 CLI agent
|
|
96
|
+
(claude-code / codex / opencode / cursor),native 没纳入;
|
|
97
|
+
- 后果:管理员看不到 native,无法当默认 Agent,也没办法在 UI 上看它的健康状态。
|
|
98
|
+
|
|
99
|
+
修复(纯 UI,零后端语义变化):
|
|
100
|
+
- `BUILTIN_AGENTS` 加 native 条目,标 `kind: 'in-process'`,别名
|
|
101
|
+
`na / llm / native-llm`;
|
|
102
|
+
- 默认 Agent 下拉的 eligibility 检查对 in-process 类豁免
|
|
103
|
+
「必须在 enabled 列表中」的硬约束——和运行时 `isAgentEnabled` 一致;
|
|
104
|
+
- AgentRow 新加 `kind` prop:
|
|
105
|
+
- 在线/未就绪徽标旁多一个「内置」徽标,hover 提示 in-process 含义;
|
|
106
|
+
- 「未就绪」时不再显示 `npm install -g`(不适用),改成
|
|
107
|
+
「未配置 LLM 后端。前往 设置 → Native Agent 选项卡,配置 OpenAI /
|
|
108
|
+
DeepSeek / Anthropic 等任一即可」;
|
|
109
|
+
- 子标题文案补一句「`native` 是内置 in-process 智能体,无需安装」;
|
|
110
|
+
- `live-config.ts` 注释加 v1.2.140 段落,解释「toggle 是用户偏好不是路由
|
|
111
|
+
kill-switch」——native 即使 toggle 未勾也走得通,避免下次有人删那行
|
|
112
|
+
hardcoded 兜底而忘了对存量配置做迁移。
|
|
113
|
+
|
|
114
|
+
i18n:zh / en 各加 3 个新 key(`nativeInstallHint` / `inProcessBadge` /
|
|
115
|
+
`inProcessHint`),并微调 `subtitle`。
|
|
116
|
+
|
|
117
|
+
### 文件
|
|
118
|
+
- `src/web-app/src/routes/settings/agents.tsx` — BUILTIN_AGENTS 加 native +
|
|
119
|
+
AgentRow 加 kind 分支 + eligibleDefaults 豁免 in-process
|
|
120
|
+
- `src/web-app/src/i18n/locales/zh/settings.json` — 3 新 key + subtitle
|
|
121
|
+
- `src/web-app/src/i18n/locales/en/settings.json` — 同上
|
|
122
|
+
- `src/core/live-config.ts` — 注释补 v1.2.140 段落
|
|
123
|
+
|
|
124
|
+
### 不在范围
|
|
125
|
+
- 不动 `isAgentEnabled('native') === true` 兜底——拆它需要给存量配置加迁移,
|
|
126
|
+
风险/收益不划算
|
|
127
|
+
- 没改后端 `/api/config` schema:native 仍然不强制写进 `config.agents`
|
|
128
|
+
|
|
7
129
|
## [1.2.139] - 2026-06-03
|
|
8
130
|
|
|
9
131
|
### Fixed (子代理派生:P0 安全 + P1 上下文 + 文案/重试)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live-config.d.ts","sourceRoot":"","sources":["../../src/core/live-config.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAIxC;kCACkC;AAClC,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE/C;AAED;sEACsE;AACtE,wBAAgB,aAAa,IAAI,MAAM,GAAG,IAAI,CAE7C;AAED;mEACmE;AACnE,wBAAgB,eAAe,CAAC,QAAQ,SAAgB,GAAG,MAAM,CAEhE;AAED;;4CAE4C;AAC5C,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"live-config.d.ts","sourceRoot":"","sources":["../../src/core/live-config.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAIxC;kCACkC;AAClC,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE/C;AAED;sEACsE;AACtE,wBAAgB,aAAa,IAAI,MAAM,GAAG,IAAI,CAE7C;AAED;mEACmE;AACnE,wBAAgB,eAAe,CAAC,QAAQ,SAAgB,GAAG,MAAM,CAEhE;AAED;;4CAE4C;AAC5C,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAuBpD;AAED;;gBAEgB;AAChB,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C"}
|
package/dist/core/live-config.js
CHANGED
|
@@ -53,6 +53,14 @@ export function isAgentEnabled(name) {
|
|
|
53
53
|
// required to appear in config.agents. Filtering it (v1.2.103
|
|
54
54
|
// regression) broke `/na` and default routing for installs whose
|
|
55
55
|
// enabled list predates native. Never filter it.
|
|
56
|
+
//
|
|
57
|
+
// v1.2.140 — the admin SPA now shows native in /settings/agents with
|
|
58
|
+
// a working toggle. That toggle is a "user preference / default-picker
|
|
59
|
+
// eligibility" signal, NOT a routing kill-switch: native stays
|
|
60
|
+
// reachable via `/na` even with the box unchecked. If a future change
|
|
61
|
+
// wants to honour the toggle as a hard disable, drop this short-
|
|
62
|
+
// circuit AND ship a migration that adds 'native' to existing configs
|
|
63
|
+
// missing the entry.
|
|
56
64
|
if (name === 'native')
|
|
57
65
|
return true;
|
|
58
66
|
if (!current)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live-config.js","sourceRoot":"","sources":["../../src/core/live-config.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,EAAE;AACF,8BAA8B;AAC9B,wEAAwE;AACxE,sCAAsC;AACtC,6CAA6C;AAC7C,6CAA6C;AAC7C,uEAAuE;AACvE,qEAAqE;AACrE,wEAAwE;AACxE,8CAA8C;AAC9C,EAAE;AACF,wEAAwE;AACxE,8DAA8D;AAC9D,kEAAkE;AAClE,sEAAsE;AACtE,2BAA2B;AAC3B,EAAE;AACF,YAAY;AACZ,oEAAoE;AACpE,qEAAqE;AACrE,qEAAqE;AACrE,oEAAoE;AACpE,qEAAqE;AACrE,uEAAuE;AACvE,6CAA6C;AAC7C,EAAE;AACF,wEAAwE;AACxE,wEAAwE;AACxE,qCAAqC;AAIrC,IAAI,OAAO,GAAkB,IAAI,CAAA;AAEjC;kCACkC;AAClC,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,OAAO,GAAG,GAAG,CAAA;AACf,CAAC;AAED;sEACsE;AACtE,MAAM,UAAU,aAAa;IAC3B,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;mEACmE;AACnE,MAAM,UAAU,eAAe,CAAC,QAAQ,GAAG,aAAa;IACtD,OAAO,OAAO,EAAE,YAAY,IAAI,QAAQ,CAAA;AAC1C,CAAC;AAED;;4CAE4C;AAC5C,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,iEAAiE;IACjE,qEAAqE;IACrE,8DAA8D;IAC9D,iEAAiE;IACjE,iDAAiD;IACjD,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IAClC,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAA;IACzB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAA;IAC3B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAC3C,uEAAuE;IACvE,sEAAsE;IACtE,qDAAqD;IACrD,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;QAAE,OAAO,IAAI,CAAA;IACtD,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;AAC5B,CAAC;AAED;;gBAEgB;AAChB,MAAM,UAAU,wBAAwB;IACtC,OAAO,GAAG,IAAI,CAAA;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"live-config.js","sourceRoot":"","sources":["../../src/core/live-config.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,EAAE;AACF,8BAA8B;AAC9B,wEAAwE;AACxE,sCAAsC;AACtC,6CAA6C;AAC7C,6CAA6C;AAC7C,uEAAuE;AACvE,qEAAqE;AACrE,wEAAwE;AACxE,8CAA8C;AAC9C,EAAE;AACF,wEAAwE;AACxE,8DAA8D;AAC9D,kEAAkE;AAClE,sEAAsE;AACtE,2BAA2B;AAC3B,EAAE;AACF,YAAY;AACZ,oEAAoE;AACpE,qEAAqE;AACrE,qEAAqE;AACrE,oEAAoE;AACpE,qEAAqE;AACrE,uEAAuE;AACvE,6CAA6C;AAC7C,EAAE;AACF,wEAAwE;AACxE,wEAAwE;AACxE,qCAAqC;AAIrC,IAAI,OAAO,GAAkB,IAAI,CAAA;AAEjC;kCACkC;AAClC,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,OAAO,GAAG,GAAG,CAAA;AACf,CAAC;AAED;sEACsE;AACtE,MAAM,UAAU,aAAa;IAC3B,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;mEACmE;AACnE,MAAM,UAAU,eAAe,CAAC,QAAQ,GAAG,aAAa;IACtD,OAAO,OAAO,EAAE,YAAY,IAAI,QAAQ,CAAA;AAC1C,CAAC;AAED;;4CAE4C;AAC5C,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,iEAAiE;IACjE,qEAAqE;IACrE,8DAA8D;IAC9D,iEAAiE;IACjE,iDAAiD;IACjD,EAAE;IACF,qEAAqE;IACrE,uEAAuE;IACvE,+DAA+D;IAC/D,sEAAsE;IACtE,iEAAiE;IACjE,sEAAsE;IACtE,qBAAqB;IACrB,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IAClC,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAA;IACzB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAA;IAC3B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAC3C,uEAAuE;IACvE,sEAAsE;IACtE,qDAAqD;IACrD,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;QAAE,OAAO,IAAI,CAAA;IACtD,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;AAC5B,CAAC;AAED;;gBAEgB;AAChB,MAAM,UAAU,wBAAwB;IACtC,OAAO,GAAG,IAAI,CAAA;AAChB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/core/llm/registry.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAG1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAKrD;;gCAEgC;AAChC,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,WAAW,GAAG,aAAa,GAAG,MAAM,CAAA;AAoBpE;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,eAAe,GAAG;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/core/llm/registry.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAG1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAKrD;;gCAEgC;AAChC,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,WAAW,GAAG,aAAa,GAAG,MAAM,CAAA;AAoBpE;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,eAAe,GAAG;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CA6DzG;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW,GAAG,IAAI,CAI7D;AAED;gDACgD;AAChD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAElE;AAED,kEAAkE;AAClE,wBAAgB,aAAa,IAAI;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,CAMvF;AAED;uCACuC;AACvC,wBAAgB,cAAc,IAAI,IAAI,CAErC;AAED,wEAAwE;AACxE,wBAAgB,gBAAgB,IAAI;IAClC,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACjE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC7B,YAAY,EAAE,MAAM,EAAE,CAAA;CACvB,CAMA"}
|
|
@@ -58,7 +58,15 @@ export function loadFromConfig(cfg) {
|
|
|
58
58
|
next.duplicates.add(cfg.name);
|
|
59
59
|
log.warn({ event: 'llm-registry.duplicate_name', name: cfg.name }, `Duplicate llmBackends entry "${cfg.name}"; last wins`);
|
|
60
60
|
}
|
|
61
|
-
|
|
61
|
+
// v1.2.141 — pass backend hint so resolveSecret can fall back to
|
|
62
|
+
// vendor-standard envs (DEEPSEEK_API_KEY / OPENAI_API_KEY / …) when
|
|
63
|
+
// neither AGIM_LLM_SECRET_<NAME> nor llm-secrets.json carries the
|
|
64
|
+
// key. Hint is best-effort — keys missing from cfg leave the hint
|
|
65
|
+
// empty and the vendor fallback simply yields null.
|
|
66
|
+
const apiKey = resolveSecret(cfg.name, secrets, {
|
|
67
|
+
provider: cfg.provider,
|
|
68
|
+
baseUrl: cfg.baseUrl,
|
|
69
|
+
});
|
|
62
70
|
const provider = buildProvider(cfg, apiKey);
|
|
63
71
|
if (!provider)
|
|
64
72
|
continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/core/llm/registry.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,EAAE;AACF,oEAAoE;AACpE,qEAAqE;AACrE,uEAAuE;AACvE,sEAAsE;AACtE,6DAA6D;AAC7D,EAAE;AACF,aAAa;AACb,sEAAsE;AACtE,qEAAqE;AACrE,oEAAoE;AACpE,sEAAsE;AACtE,uEAAuE;AACvE,gDAAgD;AAChD,8DAA8D;AAC9D,EAAE;AACF,oEAAoE;AACpE,gEAAgE;AAChE,kEAAkE;AAClE,2CAA2C;AAE3C,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,cAAc,CAAA;AAEnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAE3D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE7D,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAA;AAc3D,IAAI,KAAK,GAAkB,UAAU,EAAE,CAAA;AAEvC,SAAS,UAAU;IACjB,OAAO;QACL,SAAS,EAAE,IAAI,GAAG,EAAE;QACpB,KAAK,EAAE,IAAI,GAAG,EAAE;QAChB,YAAY,EAAE,IAAI,GAAG,EAAE;QACvB,UAAU,EAAE,IAAI,GAAG,EAAE;KACtB,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,GAAoE;IACjG,MAAM,IAAI,GAAG,UAAU,EAAE,CAAA;IACzB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAE,GAAmC,CAAC,WAAW,CAAC;QAC9E,CAAC,CAAE,GAAkC,CAAC,WAAW;QACjD,CAAC,CAAC,EAAE,CAAA;IAEN,mEAAmE;IACnE,wBAAwB;IACxB,MAAM,OAAO,GAAG,eAAe,EAAE,CAAA;IAEjC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,GAAoB,CAAA;QAChC,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;YAAE,SAAQ;QAC7E,IAAI,GAAG,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAC1B,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,4BAA4B,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;YAClE,SAAQ;QACV,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YAC7B,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,6BAA6B,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,EAC/D,gCAAgC,GAAG,CAAC,IAAI,cAAc,CAAC,CAAA;QAC3D,CAAC;QACD,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/core/llm/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,19 @@ interface SecretsFile {
|
|
|
7
7
|
* of the codebase: non-alphanumeric → underscore, uppercased. So
|
|
8
8
|
* "deepseek-cheap" → "AGIM_LLM_SECRET_DEEPSEEK_CHEAP". */
|
|
9
9
|
export declare function envKeyForBackend(name: string): string;
|
|
10
|
+
/** Vendor hint passed by the registry so we can fall back to standard
|
|
11
|
+
* vendor envs (`DEEPSEEK_API_KEY`, `OPENAI_API_KEY`, …). Optional —
|
|
12
|
+
* callers from CLI tests etc. can omit it and only see the two
|
|
13
|
+
* legacy lookup paths. */
|
|
14
|
+
export interface BackendHint {
|
|
15
|
+
provider?: string;
|
|
16
|
+
baseUrl?: string;
|
|
17
|
+
}
|
|
18
|
+
/** Diagnostic — returns the list of vendor env names that would be
|
|
19
|
+
* probed for a given backend hint. Used by `describeSecretSource` to
|
|
20
|
+
* show the operator which envs are checked when both private slots
|
|
21
|
+
* are empty. */
|
|
22
|
+
export declare function vendorEnvCandidates(hint: BackendHint | undefined): string[];
|
|
10
23
|
/**
|
|
11
24
|
* Read the on-disk secrets file (or return an empty SecretsFile if missing / corrupt).
|
|
12
25
|
* Logs a warning on corrupt files so operators notice — we deliberately
|
|
@@ -18,8 +31,14 @@ export declare function loadSecretsFile(): SecretsFile;
|
|
|
18
31
|
* Resolve a single secret for a backend, applying env-var precedence.
|
|
19
32
|
* Returns undefined when nothing is configured — providers downstream
|
|
20
33
|
* use this to flip `isConfigured()` off.
|
|
34
|
+
*
|
|
35
|
+
* v1.2.141 — `backendHint` enables vendor-env fallback. Callers that
|
|
36
|
+
* have backend config in hand (registry.ts) should pass it so users
|
|
37
|
+
* who exported `DEEPSEEK_API_KEY` / `OPENAI_API_KEY` / etc. via vendor
|
|
38
|
+
* convention don't also need to copy the value into our private
|
|
39
|
+
* `AGIM_LLM_SECRET_*` namespace.
|
|
21
40
|
*/
|
|
22
|
-
export declare function resolveSecret(backendName: string, fileSecrets?: SecretsFile): string | undefined;
|
|
41
|
+
export declare function resolveSecret(backendName: string, fileSecrets?: SecretsFile, backendHint?: BackendHint): string | undefined;
|
|
23
42
|
/**
|
|
24
43
|
* Persist a secret. Idempotent — writes the entire file with 0600
|
|
25
44
|
* perms. Used by the CLI wizard (`agim config llm add`) once we land
|
|
@@ -36,10 +55,17 @@ export declare function listConfiguredBackends(): string[];
|
|
|
36
55
|
* UI doesn't have to guess. The string is operator-facing; keep it
|
|
37
56
|
* succinct and actionable.
|
|
38
57
|
*/
|
|
39
|
-
export declare function describeSecretSource(backendName: string): {
|
|
40
|
-
source: 'env' | 'file' | 'none';
|
|
58
|
+
export declare function describeSecretSource(backendName: string, backendHint?: BackendHint): {
|
|
59
|
+
source: 'env' | 'file' | 'vendor' | 'none';
|
|
41
60
|
envKey: string;
|
|
42
61
|
filePath: string;
|
|
62
|
+
/** v1.2.141 — when source==='vendor', this is the vendor env var
|
|
63
|
+
* name that actually held the secret (e.g. 'DEEPSEEK_API_KEY'). */
|
|
64
|
+
vendorEnvName?: string;
|
|
65
|
+
/** v1.2.141 — when source==='none' but a backendHint was supplied,
|
|
66
|
+
* the candidate vendor envs we tried (helps operators figure out
|
|
67
|
+
* which standard env to set). */
|
|
68
|
+
vendorCandidates?: string[];
|
|
43
69
|
perms?: string;
|
|
44
70
|
};
|
|
45
71
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secrets.d.ts","sourceRoot":"","sources":["../../../src/core/llm/secrets.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"secrets.d.ts","sourceRoot":"","sources":["../../../src/core/llm/secrets.ts"],"names":[],"mappings":"AAqCA,eAAO,MAAM,gBAAgB,QAAsC,CAAA;AAEnE,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC7B;AASD;;2DAE2D;AAC3D,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGrD;AAED;;;2BAG2B;AAC3B,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAmED;;;iBAGiB;AACjB,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,EAAE,CAY3E;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,IAAI,WAAW,CAmB7C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,WAAW,EAAE,MAAM,EACnB,WAAW,CAAC,EAAE,WAAW,EACzB,WAAW,CAAC,EAAE,WAAW,GACxB,MAAM,GAAG,SAAS,CAapB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAMpE;AAED,+DAA+D;AAC/D,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAKtD;AAED,8DAA8D;AAC9D,wBAAgB,sBAAsB,IAAI,MAAM,EAAE,CAEjD;AAoBD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,WAAW,CAAC,EAAE,WAAW,GACxB;IACD,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAA;IAC1C,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB;wEACoE;IACpE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;sCAEkC;IAClC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAuBA"}
|
package/dist/core/llm/secrets.js
CHANGED
|
@@ -19,7 +19,14 @@
|
|
|
19
19
|
// touching the on-disk file. Hyphens in the backend name are
|
|
20
20
|
// converted to underscores for the env var name.
|
|
21
21
|
// 2. ~/.agim/llm-secrets.json `keys.<backend-name>`.
|
|
22
|
-
// 3.
|
|
22
|
+
// 3. v1.2.141 — vendor-standard env (DEEPSEEK_API_KEY / OPENAI_API_KEY /
|
|
23
|
+
// ANTHROPIC_API_KEY / …) when the caller passes a `backendHint` with
|
|
24
|
+
// provider + baseUrl. Matched by baseUrl substring against a small
|
|
25
|
+
// built-in table so a user who already exported the vendor's
|
|
26
|
+
// standard env (which DeepSeek/OpenAI/Moonshot/etc SDKs all read by
|
|
27
|
+
// default) gets agim working out of the box — no separate copy of
|
|
28
|
+
// the same secret under `AGIM_LLM_SECRET_*`.
|
|
29
|
+
// 4. undefined (provider will report isConfigured()=false).
|
|
23
30
|
import { existsSync, readFileSync, writeFileSync, chmodSync, mkdirSync, statSync } from 'node:fs';
|
|
24
31
|
import { dirname, join } from 'node:path';
|
|
25
32
|
import { AGIM_HOME } from '../agim-paths.js';
|
|
@@ -39,6 +46,85 @@ export function envKeyForBackend(name) {
|
|
|
39
46
|
const safe = name.replace(/[^A-Za-z0-9]+/g, '_').toUpperCase();
|
|
40
47
|
return `AGIM_LLM_SECRET_${safe}`;
|
|
41
48
|
}
|
|
49
|
+
/** Built-in mapping of vendor → standard env names. baseUrl substring
|
|
50
|
+
* match is intentionally loose — `deepseek.com`, `api.deepseek.com`,
|
|
51
|
+
* `https://api.deepseek.com/v1` all hit the same rule. Order matters
|
|
52
|
+
* only when two rules overlap (none do today).
|
|
53
|
+
*
|
|
54
|
+
* v1.2.141 — kept short and conservative on purpose. Adding a vendor
|
|
55
|
+
* is one line; over-matching is a footgun (you'd leak the wrong env
|
|
56
|
+
* into the wrong backend). Self-hosted gateways are deliberately NOT
|
|
57
|
+
* here — those operators should use `AGIM_LLM_SECRET_<NAME>`. */
|
|
58
|
+
const VENDOR_RULES = [
|
|
59
|
+
{ match: 'deepseek.com', envNames: ['DEEPSEEK_API_KEY'] },
|
|
60
|
+
{ match: 'api.openai.com', envNames: ['OPENAI_API_KEY'] },
|
|
61
|
+
{ match: 'moonshot.cn', envNames: ['MOONSHOT_API_KEY', 'KIMI_API_KEY'] },
|
|
62
|
+
{ match: 'dashscope', envNames: ['DASHSCOPE_API_KEY', 'QWEN_API_KEY'] },
|
|
63
|
+
{ match: 'aliyuncs', envNames: ['DASHSCOPE_API_KEY', 'QWEN_API_KEY'] },
|
|
64
|
+
{ match: 'siliconflow', envNames: ['SILICONFLOW_API_KEY'] },
|
|
65
|
+
{ match: 'openrouter.ai', envNames: ['OPENROUTER_API_KEY'] },
|
|
66
|
+
{ match: 'stepfun.com', envNames: ['STEPFUN_API_KEY'] },
|
|
67
|
+
{ match: 'bigmodel.cn', envNames: ['ZHIPUAI_API_KEY', 'GLM_API_KEY'] },
|
|
68
|
+
{ match: 'zhipuai', envNames: ['ZHIPUAI_API_KEY'] },
|
|
69
|
+
{ match: 'minimaxi', envNames: ['MINIMAX_API_KEY'] },
|
|
70
|
+
{ match: 'baichuan-ai', envNames: ['BAICHUAN_API_KEY'] },
|
|
71
|
+
{ match: 'mistral.ai', envNames: ['MISTRAL_API_KEY'] },
|
|
72
|
+
{ match: 'groq.com', envNames: ['GROQ_API_KEY'] },
|
|
73
|
+
{ match: 'together.xyz', envNames: ['TOGETHER_API_KEY'] },
|
|
74
|
+
{ match: 'fireworks.ai', envNames: ['FIREWORKS_API_KEY'] },
|
|
75
|
+
// Anthropic — baseUrl might be empty (provider uses its own default),
|
|
76
|
+
// so we additionally key on provider name.
|
|
77
|
+
{ match: 'anthropic.com', provider: 'anthropic', envNames: ['ANTHROPIC_API_KEY'] },
|
|
78
|
+
{ match: '', provider: 'anthropic', envNames: ['ANTHROPIC_API_KEY'] },
|
|
79
|
+
];
|
|
80
|
+
/**
|
|
81
|
+
* Resolve via the vendor table. Returns the matched env name + value, or
|
|
82
|
+
* null when no rule applies / matched rule's envs are all empty. The
|
|
83
|
+
* env-name is surfaced so `describeSecretSource` can report which vendor
|
|
84
|
+
* env was used (useful for the "Test connection" diagnostic).
|
|
85
|
+
*/
|
|
86
|
+
function resolveVendorEnv(hint) {
|
|
87
|
+
if (!hint)
|
|
88
|
+
return null;
|
|
89
|
+
const baseUrl = (hint.baseUrl ?? '').toLowerCase();
|
|
90
|
+
const provider = (hint.provider ?? '').toLowerCase();
|
|
91
|
+
for (const rule of VENDOR_RULES) {
|
|
92
|
+
if (rule.provider && rule.provider !== provider)
|
|
93
|
+
continue;
|
|
94
|
+
if (rule.match && !baseUrl.includes(rule.match))
|
|
95
|
+
continue;
|
|
96
|
+
if (!rule.match && !rule.provider)
|
|
97
|
+
continue;
|
|
98
|
+
for (const envName of rule.envNames) {
|
|
99
|
+
const v = process.env[envName];
|
|
100
|
+
if (v && v.length > 0)
|
|
101
|
+
return { envName, value: v };
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
return null;
|
|
105
|
+
}
|
|
106
|
+
/** Diagnostic — returns the list of vendor env names that would be
|
|
107
|
+
* probed for a given backend hint. Used by `describeSecretSource` to
|
|
108
|
+
* show the operator which envs are checked when both private slots
|
|
109
|
+
* are empty. */
|
|
110
|
+
export function vendorEnvCandidates(hint) {
|
|
111
|
+
if (!hint)
|
|
112
|
+
return [];
|
|
113
|
+
const baseUrl = (hint.baseUrl ?? '').toLowerCase();
|
|
114
|
+
const provider = (hint.provider ?? '').toLowerCase();
|
|
115
|
+
const seen = new Set();
|
|
116
|
+
for (const rule of VENDOR_RULES) {
|
|
117
|
+
if (rule.provider && rule.provider !== provider)
|
|
118
|
+
continue;
|
|
119
|
+
if (rule.match && !baseUrl.includes(rule.match))
|
|
120
|
+
continue;
|
|
121
|
+
if (!rule.match && !rule.provider)
|
|
122
|
+
continue;
|
|
123
|
+
for (const n of rule.envNames)
|
|
124
|
+
seen.add(n);
|
|
125
|
+
}
|
|
126
|
+
return Array.from(seen);
|
|
127
|
+
}
|
|
42
128
|
/**
|
|
43
129
|
* Read the on-disk secrets file (or return an empty SecretsFile if missing / corrupt).
|
|
44
130
|
* Logs a warning on corrupt files so operators notice — we deliberately
|
|
@@ -72,8 +158,14 @@ export function loadSecretsFile() {
|
|
|
72
158
|
* Resolve a single secret for a backend, applying env-var precedence.
|
|
73
159
|
* Returns undefined when nothing is configured — providers downstream
|
|
74
160
|
* use this to flip `isConfigured()` off.
|
|
161
|
+
*
|
|
162
|
+
* v1.2.141 — `backendHint` enables vendor-env fallback. Callers that
|
|
163
|
+
* have backend config in hand (registry.ts) should pass it so users
|
|
164
|
+
* who exported `DEEPSEEK_API_KEY` / `OPENAI_API_KEY` / etc. via vendor
|
|
165
|
+
* convention don't also need to copy the value into our private
|
|
166
|
+
* `AGIM_LLM_SECRET_*` namespace.
|
|
75
167
|
*/
|
|
76
|
-
export function resolveSecret(backendName, fileSecrets) {
|
|
168
|
+
export function resolveSecret(backendName, fileSecrets, backendHint) {
|
|
77
169
|
if (!backendName)
|
|
78
170
|
return undefined;
|
|
79
171
|
const envKey = envKeyForBackend(backendName);
|
|
@@ -82,7 +174,14 @@ export function resolveSecret(backendName, fileSecrets) {
|
|
|
82
174
|
return envVal;
|
|
83
175
|
const file = fileSecrets ?? loadSecretsFile();
|
|
84
176
|
const v = file.keys[backendName];
|
|
85
|
-
|
|
177
|
+
if (typeof v === 'string' && v.length > 0)
|
|
178
|
+
return v;
|
|
179
|
+
// v1.2.141 — vendor env fallback. Only consulted when both private
|
|
180
|
+
// slots came up empty so existing installs see no behavior change.
|
|
181
|
+
const vendor = resolveVendorEnv(backendHint);
|
|
182
|
+
if (vendor)
|
|
183
|
+
return vendor.value;
|
|
184
|
+
return undefined;
|
|
86
185
|
}
|
|
87
186
|
/**
|
|
88
187
|
* Persist a secret. Idempotent — writes the entire file with 0600
|
|
@@ -138,7 +237,7 @@ function _writeFile(file) {
|
|
|
138
237
|
* UI doesn't have to guess. The string is operator-facing; keep it
|
|
139
238
|
* succinct and actionable.
|
|
140
239
|
*/
|
|
141
|
-
export function describeSecretSource(backendName) {
|
|
240
|
+
export function describeSecretSource(backendName, backendHint) {
|
|
142
241
|
const envKey = envKeyForBackend(backendName);
|
|
143
242
|
if (process.env[envKey])
|
|
144
243
|
return { source: 'env', envKey, filePath: LLM_SECRETS_PATH };
|
|
@@ -152,6 +251,16 @@ export function describeSecretSource(backendName) {
|
|
|
152
251
|
catch { /* ignore */ }
|
|
153
252
|
return { source: 'file', envKey, filePath: LLM_SECRETS_PATH, perms };
|
|
154
253
|
}
|
|
155
|
-
|
|
254
|
+
const vendor = resolveVendorEnv(backendHint);
|
|
255
|
+
if (vendor) {
|
|
256
|
+
return {
|
|
257
|
+
source: 'vendor', envKey, filePath: LLM_SECRETS_PATH,
|
|
258
|
+
vendorEnvName: vendor.envName,
|
|
259
|
+
};
|
|
260
|
+
}
|
|
261
|
+
return {
|
|
262
|
+
source: 'none', envKey, filePath: LLM_SECRETS_PATH,
|
|
263
|
+
vendorCandidates: vendorEnvCandidates(backendHint),
|
|
264
|
+
};
|
|
156
265
|
}
|
|
157
266
|
//# sourceMappingURL=secrets.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secrets.js","sourceRoot":"","sources":["../../../src/core/llm/secrets.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,EAAE;AACF,6CAA6C;AAC7C,uEAAuE;AACvE,uEAAuE;AACvE,wEAAwE;AACxE,uEAAuE;AACvE,sBAAsB;AACtB,EAAE;AACF,oCAAoC;AACpC,MAAM;AACN,oBAAoB;AACpB,gDAAgD;AAChD,MAAM;AACN,EAAE;AACF,0DAA0D;AAC1D,kEAAkE;AAClE,kEAAkE;AAClE,kEAAkE;AAClE,sDAAsD;AACtD,uDAAuD;AACvD,8DAA8D;AAE9D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AACjG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,cAAc,CAAA;AAEnD,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CAAA;AAE1D,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAA;AAOnE,SAAS,SAAS;IAChB,sEAAsE;IACtE,mEAAmE;IACnE,gEAAgE;IAChE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;AACjC,CAAC;AAED;;2DAE2D;AAC3D,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;IAC9D,OAAO,mBAAmB,IAAI,EAAE,CAAA;AAClC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe;IAC7B,IAAI,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;YAAE,OAAO,SAAS,EAAE,CAAA;QACrD,MAAM,GAAG,GAAG,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAA;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAyB,CAAA;QACtD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7F,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAA;YACpE,OAAO,SAAS,EAAE,CAAA;QACpB,CAAC;QACD,6DAA6D;QAC7D,MAAM,KAAK,GAA2B,EAAE,CAAA;QACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACjD,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;gBAAE,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QACzD,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;IAC/D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAChE,OAAO,SAAS,EAAE,CAAA;IACpB,CAAC;AACH,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"secrets.js","sourceRoot":"","sources":["../../../src/core/llm/secrets.ts"],"names":[],"mappings":"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"}
|
package/dist/web/llm-api.js
CHANGED
|
@@ -91,13 +91,23 @@ export async function handleLlmApi(req, res, url) {
|
|
|
91
91
|
async function handleList(res) {
|
|
92
92
|
const cfg = await readConfig();
|
|
93
93
|
const backends = (cfg.llmBackends ?? []).map((b) => {
|
|
94
|
-
|
|
94
|
+
// v1.2.141 — pass backend hint so describeSecretSource can report
|
|
95
|
+
// vendor-env fallback (source='vendor') and surface candidate envs
|
|
96
|
+
// when nothing is configured ('vendorCandidates').
|
|
97
|
+
const src = describeSecretSource(b.name, { provider: b.provider, baseUrl: b.baseUrl });
|
|
95
98
|
return {
|
|
96
99
|
name: b.name,
|
|
97
100
|
provider: b.provider,
|
|
98
101
|
baseUrl: b.baseUrl,
|
|
99
102
|
model: b.model,
|
|
100
|
-
secret: {
|
|
103
|
+
secret: {
|
|
104
|
+
source: src.source,
|
|
105
|
+
envKey: src.envKey,
|
|
106
|
+
...(src.vendorEnvName ? { vendorEnvName: src.vendorEnvName } : {}),
|
|
107
|
+
...(src.vendorCandidates && src.vendorCandidates.length > 0
|
|
108
|
+
? { vendorCandidates: src.vendorCandidates }
|
|
109
|
+
: {}),
|
|
110
|
+
},
|
|
101
111
|
};
|
|
102
112
|
});
|
|
103
113
|
send(res, 200, {
|
package/dist/web/llm-api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-api.js","sourceRoot":"","sources":["../../src/web/llm-api.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"llm-api.js","sourceRoot":"","sources":["../../src/web/llm-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import{n as p,a as f,d as o,u as g,j as t,c as m,B as j}from"./index-
|
|
1
|
+
import{n as p,a as f,d as o,u as g,j as t,c as m,B as j}from"./index-O0BQoyzo.js";import{r as N}from"./react-Cb2sDjhD.js";import{D as y}from"./data-table-S7rIjwdO.js";import{E as b}from"./empty-state-C-qjOHyu.js";import{S as w}from"./status-badge-BSkpyN4D.js";import{u as x}from"./useQuery-PdiC7-sY.js";import{u as v}from"./use-event-stream-DgGpGKop.js";import{L as A}from"./loader-circle-9VUMGitw.js";import{R as S}from"./refresh-ccw-D2CWiyU_.js";import"./table-CPn1MRcy.js";import"./arrow-up-63xELY5Q.js";import"./arrow-down-BXvC8Al2.js";/**
|
|
2
2
|
* @license lucide-react v0.469.0 - ISC
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the ISC license.
|
|
5
5
|
* See the LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/const C=p("GitBranch",[["line",{x1:"6",x2:"6",y1:"3",y2:"15",key:"17qcm7"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["path",{d:"M18 9a9 9 0 0 1-9 9",key:"n2h4wq"}]]),l={all:["a2a"],stats:["a2a","stats"],recent:e=>["a2a","recent",e]};function T(){return x({queryKey:l.stats,queryFn:()=>o.getA2AStats()})}function q(e){return x({queryKey:l.recent(e),queryFn:()=>o.getA2ARecent(e)})}function E(){const e=f();return()=>e.invalidateQueries({queryKey:l.all})}const L={connected:"text-success",connecting:"text-text-dim",reconnecting:"text-warning",closed:"text-text-muted"};function V(){const{t:e}=g(["tasks","common"]),s=E(),n=T(),r=q({limit:50}),u=r.data?.rows??[],i=n.data,d=v({job:()=>s()}),h=N.useMemo(()=>[{id:"id",header:e("a2a.col.id"),cell:a=>t.jsxs("span",{className:"tabular-nums text-text-dim",children:["#",a.id]}),headClassName:"w-16"},{id:"agent",header:e("a2a.col.agent"),cell:a=>t.jsx("span",{className:"font-medium",children:a.agent}),headClassName:"w-32"},{id:"parent",header:e("a2a.col.parent"),cell:a=>a.parent_id!=null?t.jsxs("span",{className:"tabular-nums text-text-dim",children:["#",a.parent_id]}):t.jsx("span",{className:"text-text-muted",children:"—"}),headClassName:"w-20"},{id:"depth",header:e("a2a.col.depth"),cell:a=>t.jsx("span",{className:"tabular-nums text-text-dim",children:a.call_depth}),headClassName:"w-16",hideOnMobile:!0},{id:"status",header:e("a2a.col.status"),cell:a=>t.jsx(w,{status:a.status,children:a.status}),headClassName:"w-28"},{id:"prompt",header:e("a2a.col.prompt"),cell:a=>t.jsx("span",{className:"line-clamp-2 text-text-dim",children:a.prompt??"—"}),asCardTitle:!0},{id:"createdAt",header:e("a2a.col.createdAt"),cell:a=>t.jsx("span",{className:"text-text-dim",children:R(a.created_at)}),headClassName:"w-40",hideOnMobile:!0}],[e]);return t.jsxs("div",{className:"mx-auto flex max-w-7xl flex-col gap-4",children:[t.jsxs("header",{className:"flex flex-col gap-1",children:[t.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[t.jsx("h1",{className:"text-xl font-semibold",children:e("a2a.title")}),t.jsx("span",{className:m("text-xs font-medium tabular-nums",L[d]),children:e(`jobs.live.${d}`)}),t.jsxs(j,{variant:"ghost",size:"sm",className:"ml-auto",onClick:()=>{r.refetch(),n.refetch()},disabled:r.isFetching||n.isFetching,"aria-label":e("actions.refresh",{ns:"common"}),children:[r.isFetching?t.jsx(A,{className:"h-4 w-4 animate-spin"}):t.jsx(S,{className:"h-4 w-4"}),t.jsx("span",{className:"hidden sm:inline",children:e("actions.refresh",{ns:"common"})})]})]}),t.jsx("p",{className:"text-sm text-text-dim",children:e("a2a.subtitle")})]}),i&&t.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[t.jsx(c,{label:e("a2a.stats.total"),value:i.total,tone:"info"}),t.jsx(c,{label:e("a2a.stats.recent24h"),value:i.recent24h,tone:"success"}),t.jsx(c,{label:e("a2a.stats.maxDepth"),value:i.maxDepth,tone:"warning"})]}),t.jsx(y,{columns:h,rows:u,getRowId:a=>String(a.id),loading:r.isLoading,emptyState:t.jsx(b,{icon:t.jsx(C,{}),title:e("a2a.empty.title"),description:e("a2a.empty.description")})})]})}const k={info:"border-info/30 text-info",success:"border-success/30 text-success",warning:"border-warning/30 text-warning",danger:"border-danger/30 text-danger"};function c({label:e,value:s,tone:n}){return t.jsxs("div",{className:m("rounded-md border bg-surface px-3 py-2",k[n]),children:[t.jsx("div",{className:"text-xs uppercase tracking-wide text-text-dim",children:e}),t.jsx("div",{className:"text-2xl font-semibold tabular-nums",children:s})]})}function R(e){try{const s=new Date(e);return Number.isNaN(s.getTime())?e:s.toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}catch{return e}}export{V as default};
|
|
7
|
-
//# sourceMappingURL=a2a-
|
|
7
|
+
//# sourceMappingURL=a2a-DczMMkbl.js.map
|