nolo-cli 0.201.0-alpha.2 → 0.202.0-alpha.1
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/{_executeModel-BNYZLAN6.js → _executeModel-IPRTPSW7.js} +34 -33
- package/{agentDeleteCommand-4V4YSAXS.js → agentDeleteCommand-WHT2MMAP.js} +49 -47
- package/{agentEmailCommands-EYIQEH6Z.js → agentEmailCommands-4LW2BFLY.js} +51 -49
- package/{agentListCommands-2KGUT7UB.js → agentListCommands-2KF47HY6.js} +81 -45
- package/{agentMachineCommands-WUN47ILO.js → agentMachineCommands-QQCFQQ4T.js} +28 -26
- package/{agentProviderCommands-T6E3JCR6.js → agentProviderCommands-5ALOQLE5.js} +2 -2
- package/{agentRecordCommands-XL2CON36.js → agentRecordCommands-ARVXF2C2.js} +47 -45
- package/{agentRunCommand-R237ZGMQ.js → agentRunCommand-3IL5PW2S.js} +49 -47
- package/{agentRunControl-6HHESKDB.js → agentRunControl-ABDUPJLX.js} +10 -5
- package/{agentRuntimeLocal-XLLWFAVI.js → agentRuntimeLocal-YXHJV65L.js} +24 -22
- package/{agentSlice-Z5NKGMB7.js → agentSlice-BFDKYW6H.js} +4 -3
- package/{appDeleteCommands-IPF2VI3W.js → appDeleteCommands-OWJO3WFB.js} +29 -27
- package/{appDeployCommands-IBQ7GUXO.js → appDeployCommands-X7HLT27G.js} +29 -27
- package/{appDeployStatusCommands-6ESVU6XE.js → appDeployStatusCommands-CHCZ7ZUD.js} +29 -27
- package/{appGetCommands-VTSYTM4V.js → appGetCommands-AZW2EE4R.js} +29 -27
- package/{appListCommands-VCP5TUX7.js → appListCommands-YFN6DP6K.js} +29 -27
- package/{authCommand-RV5MQDWN.js → authCommand-W34UWJGR.js} +14 -13
- package/{builtinSkillRegistry-7RAJP7FD.js → builtinSkillRegistry-NJVHQIKY.js} +1 -1
- package/{chromeOpsCommands-BA6CS4DI.js → chromeOpsCommands-USKE4B4K.js} +15 -4
- package/{chunk-RE3B2OCC.js → chunk-266E37EL.js} +69 -14
- package/chunk-2BMURXSB.js +1863 -0
- package/{chunk-RRHJJUA3.js → chunk-2PI4QFAL.js} +174 -100
- package/{chunk-NABJEYPJ.js → chunk-2Q3LOAFE.js} +38 -3
- package/{chunk-EOLPKHSB.js → chunk-326HCB6L.js} +28 -24
- package/{chunk-4CEAZRZ4.js → chunk-33W4IFUU.js} +1 -1
- package/{chunk-V3MGT3RF.js → chunk-3CWF2EUZ.js} +8 -8
- package/{chunk-G6OOUQWJ.js → chunk-4KB6WQUL.js} +2 -0
- package/{chunk-DYQXB46J.js → chunk-4KPB3KWX.js} +2 -2
- package/{chunk-SW5AAI5D.js → chunk-4SH22ZG7.js} +5 -5
- package/{chunk-WAZ6BTSC.js → chunk-5E4FSR4J.js} +1 -1
- package/{chunk-PVD7CRYV.js → chunk-6I7ZP7KJ.js} +3 -3
- package/chunk-6UBGXX2W.js +12 -0
- package/{chunk-ZBCBFOWC.js → chunk-A2ZMIRLN.js} +2 -2
- package/{chunk-Z646E5YH.js → chunk-ASG7VWPK.js} +3 -3
- package/{chunk-QWVGFBOQ.js → chunk-BLFZULEQ.js} +3 -3
- package/{chunk-JIFYXQRD.js → chunk-BTYQAODF.js} +26 -8
- package/{chunk-KORCRPLO.js → chunk-C7PKPHK6.js} +334 -12
- package/{chunk-6WZQGT5X.js → chunk-CJ37ZMCQ.js} +6 -2
- package/{chunk-VHGD6FHV.js → chunk-CKAHAVMK.js} +40 -10
- package/{chunk-UNOILAZP.js → chunk-CLTGWJVT.js} +76 -4
- package/{chunk-Q6RMLYSA.js → chunk-CMLBKYEI.js} +4 -2
- package/{chunk-NVOYW6H4.js → chunk-CQHMBWZH.js} +12 -8
- package/{chunk-7KWPNGVJ.js → chunk-CTZ4O3XD.js} +1 -1
- package/{chunk-OHRDHS4N.js → chunk-CVCRAO6Q.js} +9 -4
- package/{chunk-26CRLZFD.js → chunk-D57YYGMD.js} +2 -2
- package/{chunk-TEC5UHQK.js → chunk-DHJXDGC3.js} +2 -2
- package/{chunk-QYOB7RVA.js → chunk-DKZJJ2NQ.js} +3 -2
- package/{chunk-4YX7VQOC.js → chunk-E2FC5RMU.js} +17 -14
- package/{chunk-EH4MNUMF.js → chunk-ETTDZBK5.js} +4 -4
- package/{chunk-BUXH3H5M.js → chunk-FWMOJTGR.js} +3722 -4851
- package/{chunk-ZWQUWF6W.js → chunk-G7Y4GXTY.js} +8 -14
- package/{chunk-5KTQVMCX.js → chunk-GOO6G4PY.js} +85 -0
- package/{chunk-FMOZ57LN.js → chunk-H7HWWNJB.js} +1 -1
- package/{chunk-A5VR65AE.js → chunk-HJS5EIKS.js} +4 -4
- package/{chunk-H44LQSZ2.js → chunk-HKWGI3TM.js} +178 -311
- package/{chunk-BBGYSMUE.js → chunk-JH7KMNGT.js} +143 -19
- package/{chunk-YXMZHGNA.js → chunk-KDUYNEJ5.js} +33 -16
- package/{chunk-O5V7QQAF.js → chunk-LEX6DEH4.js} +114 -2
- package/{chunk-BTBT2566.js → chunk-MNUOMXJH.js} +412 -9
- package/{chunk-N7E3LQ4A.js → chunk-MZXWSY4E.js} +1 -1
- package/{chunk-ZQ3EAOY3.js → chunk-NTLJGRAT.js} +1 -1
- package/{chunk-WFUIXNKC.js → chunk-P4YLK2OD.js} +3 -3
- package/chunk-PRJ473FK.js +63 -0
- package/{chunk-2SHLT6JB.js → chunk-Q7GNBUT4.js} +2 -2
- package/{chunk-C2UXCAMB.js → chunk-RIKSN62L.js} +3 -3
- package/{chunk-GTP6VNWH.js → chunk-RQ22OZD7.js} +3 -3
- package/{chunk-H7NIQGTU.js → chunk-RS66RJLA.js} +2 -2
- package/{chunk-GC64WGMD.js → chunk-SM3NSZJV.js} +16 -5
- package/{chunk-QKDMI22S.js → chunk-SSK4WNJA.js} +1 -1
- package/{chunk-6MAFLMAO.js → chunk-SUBNV2JH.js} +3 -3
- package/{chunk-HLAL63BZ.js → chunk-T43B7LB2.js} +1 -1
- package/{chunk-HTLIKE5U.js → chunk-TWVVTUNG.js} +2 -2
- package/{chunk-X3RWBJDQ.js → chunk-U7HTU2S7.js} +1 -1
- package/{chunk-76YUTLOT.js → chunk-UIOEHFF6.js} +1 -1
- package/{chunk-IIX6VWLW.js → chunk-VCFU3BO5.js} +224 -38
- package/{chunk-QU3TLYBR.js → chunk-VEUSD6OF.js} +35 -11
- package/{chunk-4YMD7B4Y.js → chunk-WPOKOKZA.js} +2 -2
- package/{chunk-K6TZSON4.js → chunk-WTKYP6QO.js} +19 -5
- package/{chunk-FEKMTBKJ.js → chunk-XW6B2RJW.js} +192 -55
- package/{chunk-ZSO5B6SW.js → chunk-Y2WUYX4I.js} +9 -0
- package/{chunk-A3SXTJDE.js → chunk-YAGFPXOX.js} +14 -14
- package/{chunk-TVGX5QIN.js → chunk-YUA6OAH5.js} +2 -2
- package/{chunk-NYE2INIO.js → chunk-YV2RSLM4.js} +13 -13
- package/{chunk-MJWUBTK7.js → chunk-YZGNKHUM.js} +2 -2
- package/{commandRegistry-YFXWA5SF.js → commandRegistry-HEBIO2A4.js} +87 -67
- package/{contentThunks-2BV7CFUP.js → contentThunks-I4IHSDTM.js} +14 -13
- package/{cooldownCommands-KRILPXOZ.js → cooldownCommands-5SJ74DNP.js} +1 -1
- package/{createAgentAutomationAction-T6CGXCSO.js → createAgentAutomationAction-WQCH5HR2.js} +14 -13
- package/{createDialogAction-X27IA3G2.js → createDialogAction-CKMZK5JQ.js} +15 -14
- package/{createPageAction-EHDHNW5P.js → createPageAction-QAZHQGY7.js} +14 -13
- package/{dialogCommands-XZXH3HSQ.js → dialogCommands-YMAHICPJ.js} +30 -28
- package/{dialogSlice-AZNPVOCU.js → dialogSlice-GEGACCH2.js} +13 -12
- package/{docCreateCommands-Z64V5BFZ.js → docCreateCommands-SNMAKBXN.js} +28 -26
- package/{docDeleteCommands-7UFHIM4C.js → docDeleteCommands-K52UESRC.js} +29 -27
- package/{docReadCommands-NLU7Y67R.js → docReadCommands-AG6LLHJ7.js} +28 -26
- package/{docStore-M37Q6JFO.js → docStore-B4EFT53J.js} +1 -1
- package/{docUpdateCommands-S2KGBEG3.js → docUpdateCommands-B5EZ7DYN.js} +28 -26
- package/{fetchMessages-HWBVATSE.js → fetchMessages-YY4SATNR.js} +1 -1
- package/{getPricing-E2PLNWCR.js → getPricing-3PQY3TGI.js} +3 -3
- package/{handleSendMessageAction-KUJQZ6B6.js → handleSendMessageAction-4BACQWOG.js} +70 -29
- package/index.js +7 -7
- package/{lib-4YTWAGY7.js → lib-5KKIBFIT.js} +439 -272
- package/{localDialogRead-CT5HGDMC.js → localDialogRead-FUXGZ57B.js} +1 -1
- package/{localRuntimeAdapter-5BNHO6JZ.js → localRuntimeAdapter-5CVSCXHI.js} +45 -43
- package/{machineCommands-2KDROAVV.js → machineCommands-R7L4IBQL.js} +48 -46
- package/{machineWsRunDispatch-4NP5M574.js → machineWsRunDispatch-KZHTW7DW.js} +46 -44
- package/{models-UUNO6DOL.js → models-PJBE6JDV.js} +2 -2
- package/{oauthTokenStore-PADKLNOC.js → oauthTokenStore-OEERZFUC.js} +2 -1
- package/package.json +1 -1
- package/{providerPresetApply-JGNMO2KX.js → providerPresetApply-HBBUUVJD.js} +6 -6
- package/{providerRegistry-33J3ZYFJ.js → providerRegistry-5LK2NXYE.js} +6 -6
- package/{readlineWorkspace-MKUSR6HA.js → readlineWorkspace-PDPEWRSG.js} +290 -121
- package/{runAgentClientLoop-J32KRVN7.js → runAgentClientLoop-QKV66PX5.js} +31 -30
- package/{runtimeDoctorCommands-NYBOTA6D.js → runtimeDoctorCommands-3VFVTGPI.js} +8 -7
- package/{secretCommands-N6CMCJDZ.js → secretCommands-MKU25CDP.js} +311 -3
- package/{settingThunks-YRYNPWJM.js → settingThunks-4WU7YE62.js} +2 -2
- package/{skillDiscovery-F3TMVQOJ.js → skillDiscovery-BKLWW2EZ.js} +2 -2
- package/{spaceCommands-VV4K7TGI.js → spaceCommands-VD3CZWXM.js} +27 -25
- package/{streamAgentChatTurn-S2Q7STXS.js → streamAgentChatTurn-GM3UNSLS.js} +46 -43
- package/{tools-KOIPW4ZA.js → tools-UJLEQBKI.js} +25 -24
- package/{tuiSummaryLlmCaller-FSOADMXK.js → tuiSummaryLlmCaller-73QO3HAD.js} +12 -12
- package/{updateCommands-KE6LP3QX.js → updateCommands-RVDAFHBT.js} +3 -3
- package/{updateDialogTitleAction-ILS5OIXF.js → updateDialogTitleAction-24QO27NT.js} +14 -13
- package/{windowsSelfUpdate-26TSFXEZ.js → windowsSelfUpdate-N2VH2OBW.js} +2 -2
|
@@ -976,7 +976,9 @@ var secretStrings = {
|
|
|
976
976
|
en: `Usage:
|
|
977
977
|
nolo secret list [--json] List saved secret names (without values; --json outputs machine-readable list)
|
|
978
978
|
nolo secret get <name> Print the value of a secret (for debugging; agents must not read)
|
|
979
|
-
nolo secret set <name>
|
|
979
|
+
nolo secret set <name> --prompt Set a secret via hidden interactive prompt (TTY only; does not echo secret)
|
|
980
|
+
nolo secret set <name> --stdin Set a secret securely from stdin (recommended; prevents leaking secrets in argv)
|
|
981
|
+
nolo secret set <name> <value|json> Set a secret via argv (legacy; discouraged: exposes secrets in shell history and process list)
|
|
980
982
|
nolo secret delete <name> Delete a secret
|
|
981
983
|
nolo secret run --with <names> -- <cmd> Safely inject secret environment variables and run a command
|
|
982
984
|
nolo secret bind <alias> <ref> [--env <ENV_NAME>] Bind a managed credential reference to an alias
|
|
@@ -986,7 +988,9 @@ var secretStrings = {
|
|
|
986
988
|
zh: `\u7528\u6CD5:
|
|
987
989
|
nolo secret list [--json] \u5217\u51FA\u5DF2\u4FDD\u5B58\u7684 secret \u540D\u79F0\uFF08\u4E0D\u663E\u793A\u503C\uFF1B--json \u8F93\u51FA\u673A\u5668\u53EF\u8BFB\u6E05\u5355\uFF09
|
|
988
990
|
nolo secret get <name> \u6253\u5370\u6307\u5B9A secret \u7684\u503C\uFF08\u4F9B\u8C03\u8BD5\uFF1BAgent \u4E0D\u5F97\u8BFB\u53D6\uFF09
|
|
989
|
-
nolo secret set <name>
|
|
991
|
+
nolo secret set <name> --prompt \u901A\u8FC7\u9690\u85CF\u8F93\u5165\u4EA4\u4E92\u8BBE\u7F6E secret\uFF08\u4EC5\u9650 TTY\uFF0C\u4E0D\u56DE\u663E\u51ED\u636E\uFF09
|
|
992
|
+
nolo secret set <name> --stdin \u4ECE stdin \u5B89\u5168\u8BBE\u7F6E secret\uFF08\u63A8\u8350\uFF1B\u907F\u514D\u901A\u8FC7\u547D\u4EE4\u884C\u53C2\u6570\u6CC4\u9732\u51ED\u636E\uFF09
|
|
993
|
+
nolo secret set <name> <value|json> \u901A\u8FC7\u547D\u4EE4\u884C\u53C2\u6570\u8BBE\u7F6E secret\uFF08\u517C\u5BB9\u65E7\u8BED\u6CD5\uFF1B\u4E0D\u63A8\u8350\uFF1A\u51ED\u636E\u4F1A\u66B4\u9732\u5728\u8FDB\u7A0B\u5217\u8868\u4E0E shell \u5386\u53F2\u4E2D\uFF09
|
|
990
994
|
nolo secret delete <name> \u5220\u9664\u6307\u5B9A\u7684 secret
|
|
991
995
|
nolo secret run --with <names> -- <cmd> \u5B89\u5168\u6CE8\u5165 secret \u73AF\u5883\u53D8\u91CF\u5E76\u6267\u884C\u5B50\u547D\u4EE4
|
|
992
996
|
nolo secret bind <alias> <ref> [--env <ENV_NAME>] \u5C06\u53D7\u63A7\u51ED\u636E\u5F15\u7528\u7ED1\u5B9A\u5230\u522B\u540D
|
|
@@ -1101,6 +1105,74 @@ var secretStrings = {
|
|
|
1101
1105
|
"secret.jsonScalar": {
|
|
1102
1106
|
en: "JSON values must be an object or an array, not a scalar",
|
|
1103
1107
|
zh: "JSON \u503C\u5FC5\u987B\u662F\u5BF9\u8C61\u6216\u6570\u7EC4\uFF0C\u4E0D\u80FD\u662F\u6807\u91CF"
|
|
1108
|
+
},
|
|
1109
|
+
"secret.setNameRequired": {
|
|
1110
|
+
en: "Error: Please provide a secret name. Example: nolo secret set <name> --stdin",
|
|
1111
|
+
zh: "\u9519\u8BEF: \u8BF7\u63D0\u4F9B secret \u540D\u79F0\u3002\u4F8B\u5982: nolo secret set <name> --stdin"
|
|
1112
|
+
},
|
|
1113
|
+
"secret.stdinDuplicateFlag": {
|
|
1114
|
+
en: "Error: Duplicate --stdin flag",
|
|
1115
|
+
zh: "\u9519\u8BEF: --stdin \u53C2\u6570\u91CD\u590D"
|
|
1116
|
+
},
|
|
1117
|
+
"secret.stdinMixedWithValue": {
|
|
1118
|
+
en: "Error: Cannot mix --stdin with value arguments. Pass value via stream only",
|
|
1119
|
+
zh: "\u9519\u8BEF: \u4E0D\u80FD\u5C06 --stdin \u4E0E\u503C\u53C2\u6570\u6DF7\u7528\u3002\u8BF7\u4EC5\u901A\u8FC7\u6D41\u8F93\u5165\u63D0\u4F9B\u503C"
|
|
1120
|
+
},
|
|
1121
|
+
"secret.stdinTtyNotSupported": {
|
|
1122
|
+
en: "Error: Interactive terminal (TTY) detected. --stdin is not an interactive prompt; please pipe input via stdin (e.g. pass show secret | nolo secret set <name> --stdin)",
|
|
1123
|
+
zh: "\u9519\u8BEF: \u68C0\u6D4B\u5230\u4EA4\u4E92\u5F0F\u7EC8\u7AEF (TTY)\u3002--stdin \u4E0D\u662F\u4EA4\u4E92\u5F0F\u9690\u85CF\u63D0\u793A\u7B26\uFF1B\u8BF7\u901A\u8FC7\u7BA1\u9053\u63D0\u4F9B\u8F93\u5165\uFF08\u4F8B\u5982: pass show secret | nolo secret set <name> --stdin\uFF09"
|
|
1124
|
+
},
|
|
1125
|
+
"secret.stdinEmpty": {
|
|
1126
|
+
en: "Error: Secret input from stdin cannot be empty or pure whitespace",
|
|
1127
|
+
zh: "\u9519\u8BEF: \u6765\u81EA stdin \u7684 secret \u8F93\u5165\u4E0D\u80FD\u4E3A\u7A7A\u6216\u7EAF\u7A7A\u767D"
|
|
1128
|
+
},
|
|
1129
|
+
"secret.stdinTooLarge": {
|
|
1130
|
+
en: "Error: Secret input from stdin exceeds maximum limit (64 KiB)",
|
|
1131
|
+
zh: "\u9519\u8BEF: \u6765\u81EA stdin \u7684 secret \u8F93\u5165\u8D85\u8FC7\u6700\u5927\u9650\u5236 (64 KiB)"
|
|
1132
|
+
},
|
|
1133
|
+
"secret.stdinTimeout": {
|
|
1134
|
+
en: "Error: Timed out waiting for stdin input (10s limit)",
|
|
1135
|
+
zh: "\u9519\u8BEF: \u7B49\u5F85 stdin \u8F93\u5165\u8D85\u65F6\uFF08\u9650\u5236 10 \u79D2\uFF09"
|
|
1136
|
+
},
|
|
1137
|
+
"secret.stdinReadError": {
|
|
1138
|
+
en: "Error: Failed to read secret from stdin",
|
|
1139
|
+
zh: "\u9519\u8BEF: \u4ECE stdin \u8BFB\u53D6 secret \u5931\u8D25"
|
|
1140
|
+
},
|
|
1141
|
+
"secret.promptDuplicateFlag": {
|
|
1142
|
+
en: "Error: Duplicate --prompt flag",
|
|
1143
|
+
zh: "\u9519\u8BEF: --prompt \u53C2\u6570\u91CD\u590D"
|
|
1144
|
+
},
|
|
1145
|
+
"secret.cannotMixStdinAndPrompt": {
|
|
1146
|
+
en: "Error: Cannot mix --stdin and --prompt flags",
|
|
1147
|
+
zh: "\u9519\u8BEF: \u4E0D\u80FD\u540C\u65F6\u4F7F\u7528 --stdin \u548C --prompt \u53C2\u6570"
|
|
1148
|
+
},
|
|
1149
|
+
"secret.promptMixedWithValue": {
|
|
1150
|
+
en: "Error: Cannot mix --prompt with value arguments. Pass value via interactive prompt only",
|
|
1151
|
+
zh: "\u9519\u8BEF: \u4E0D\u80FD\u5C06 --prompt \u4E0E\u503C\u53C2\u6570\u6DF7\u7528\u3002\u8BF7\u4EC5\u901A\u8FC7\u4EA4\u4E92\u63D0\u793A\u7B26\u63D0\u4F9B\u503C"
|
|
1152
|
+
},
|
|
1153
|
+
"secret.promptNameRequired": {
|
|
1154
|
+
en: "Error: Please provide a secret name. Example: nolo secret set <name> --prompt",
|
|
1155
|
+
zh: "\u9519\u8BEF: \u8BF7\u63D0\u4F9B secret \u540D\u79F0\u3002\u4F8B\u5982: nolo secret set <name> --prompt"
|
|
1156
|
+
},
|
|
1157
|
+
"secret.promptNonTtyNotSupported": {
|
|
1158
|
+
en: "Error: Interactive terminal (TTY) required for --prompt. For automated pipelines use --stdin",
|
|
1159
|
+
zh: "\u9519\u8BEF: --prompt \u9700\u8981\u4EA4\u4E92\u5F0F\u7EC8\u7AEF (TTY)\u3002\u81EA\u52A8\u5316\u6D41\u6C34\u7EBF\u8BF7\u4F7F\u7528 --stdin"
|
|
1160
|
+
},
|
|
1161
|
+
"secret.promptEmpty": {
|
|
1162
|
+
en: "Error: Secret input from prompt cannot be empty or pure whitespace",
|
|
1163
|
+
zh: "\u9519\u8BEF: \u6765\u81EA\u63D0\u793A\u7B26\u7684 secret \u8F93\u5165\u4E0D\u80FD\u4E3A\u7A7A\u6216\u7EAF\u7A7A\u767D"
|
|
1164
|
+
},
|
|
1165
|
+
"secret.promptAborted": {
|
|
1166
|
+
en: "Secret input cancelled",
|
|
1167
|
+
zh: "\u7528\u6237\u53D6\u6D88\u4E86 secret \u8F93\u5165"
|
|
1168
|
+
},
|
|
1169
|
+
"secret.promptLabel": {
|
|
1170
|
+
en: 'Enter secret value for "{0}": ',
|
|
1171
|
+
zh: '\u8BF7\u8F93\u5165 "{0}" \u7684 secret \u503C\uFF08\u8F93\u5165\u5185\u5BB9\u5DF2\u9690\u85CF\uFF09: '
|
|
1172
|
+
},
|
|
1173
|
+
"secret.promptReadError": {
|
|
1174
|
+
en: "Error: Failed to read secret from prompt",
|
|
1175
|
+
zh: "\u9519\u8BEF: \u4ECE\u4EA4\u4E92\u63D0\u793A\u7B26\u8BFB\u53D6 secret \u5931\u8D25"
|
|
1104
1176
|
}
|
|
1105
1177
|
};
|
|
1106
1178
|
|
|
@@ -2594,8 +2666,8 @@ var COMMAND_DESCRIPTIONS = {
|
|
|
2594
2666
|
zh: "\u5217\u51FA\u6D3B\u8DC3\u4E0E\u8FD1\u671F\u7684\u672C\u5730\u667A\u80FD\u4F53\u8FD0\u884C\uFF08--json \u8F93\u51FA\u673A\u5668\u53EF\u8BFB\u683C\u5F0F\uFF09"
|
|
2595
2667
|
},
|
|
2596
2668
|
"agent status": {
|
|
2597
|
-
en: "Show status of a local agent run (--json, --watch, --interval-ms N)",
|
|
2598
|
-
zh: "\u67E5\u770B\u672C\u5730\u667A\u80FD\u4F53\u8FD0\u884C\u72B6\u6001\uFF08--json\u3001--watch\u3001--interval-ms N\uFF09"
|
|
2669
|
+
en: "Show status of a local agent run (--json, --include-checkpoint, --watch, --interval-ms N)",
|
|
2670
|
+
zh: "\u67E5\u770B\u672C\u5730\u667A\u80FD\u4F53\u8FD0\u884C\u72B6\u6001\uFF08--json\u3001--include-checkpoint\u3001--watch\u3001--interval-ms N\uFF09"
|
|
2599
2671
|
},
|
|
2600
2672
|
"agent logs": {
|
|
2601
2673
|
en: "Show logs of a local agent run",
|
|
@@ -295,13 +295,14 @@ var buildSkillDiscoveryCatalogLayer = (catalog) => {
|
|
|
295
295
|
}
|
|
296
296
|
return makeLayer("skill-discovery", lines.join("\n"), "session");
|
|
297
297
|
};
|
|
298
|
+
var buildAgentsMdLayerHeader = (fileName = "AGENTS.md") => `--- \u9879\u76EE\u6307\u4EE4\uFF08${fileName}\uFF09---
|
|
299
|
+
`;
|
|
298
300
|
var buildAgentsMdLayer = (content, fileName = "AGENTS.md") => {
|
|
299
301
|
const trimmed = content.trim();
|
|
300
302
|
if (!trimmed) return null;
|
|
301
303
|
return makeLayer(
|
|
302
304
|
"agents-md",
|
|
303
|
-
|
|
304
|
-
${trimmed}`,
|
|
305
|
+
`${buildAgentsMdLayerHeader(fileName)}${trimmed}`,
|
|
305
306
|
"session"
|
|
306
307
|
);
|
|
307
308
|
};
|
|
@@ -375,6 +376,7 @@ export {
|
|
|
375
376
|
resolveSkillCatalogSync,
|
|
376
377
|
buildSpaceContextLayer,
|
|
377
378
|
buildSkillDiscoveryCatalogLayer,
|
|
379
|
+
buildAgentsMdLayerHeader,
|
|
378
380
|
buildAgentsMdLayer,
|
|
379
381
|
buildLinkedSpacesSection,
|
|
380
382
|
renderTurnContextBlocksWithScope,
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-HNUWUO75.js";
|
|
4
4
|
import {
|
|
5
5
|
resolveToolImagePolicy
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-6I7ZP7KJ.js";
|
|
7
7
|
import {
|
|
8
8
|
accumulateToolCallDelta,
|
|
9
9
|
createThinkParserState,
|
|
@@ -30,7 +30,7 @@ import {
|
|
|
30
30
|
stablePromptCacheKey,
|
|
31
31
|
toOpenAiCompatibleMessages,
|
|
32
32
|
toResponsesTools
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-CVCRAO6Q.js";
|
|
34
34
|
import {
|
|
35
35
|
isMeaningfulChatCompletionOutput,
|
|
36
36
|
isMeaningfulResponsesOutput
|
|
@@ -47,14 +47,14 @@ import {
|
|
|
47
47
|
resolvePlatformAuthToken,
|
|
48
48
|
resolvePlatformServerUrl,
|
|
49
49
|
resolveProviderTransportDecision
|
|
50
|
-
} from "./chunk-
|
|
50
|
+
} from "./chunk-WPOKOKZA.js";
|
|
51
51
|
import {
|
|
52
52
|
isRecord
|
|
53
53
|
} from "./chunk-KUG52IAP.js";
|
|
54
54
|
import {
|
|
55
55
|
NOLO_CLIENT_VERSION_HEADER,
|
|
56
56
|
isPlatformMimoProviderModel
|
|
57
|
-
} from "./chunk-
|
|
57
|
+
} from "./chunk-GOO6G4PY.js";
|
|
58
58
|
|
|
59
59
|
// packages/ai/token/sseUsageExtract.ts
|
|
60
60
|
var TOKEN_FIELDS = [
|
|
@@ -715,7 +715,7 @@ function processPlatformChatSseEvent(event, state) {
|
|
|
715
715
|
if (!payload) continue;
|
|
716
716
|
if (payload === "[DONE]") {
|
|
717
717
|
state.sawDone = true;
|
|
718
|
-
|
|
718
|
+
return;
|
|
719
719
|
}
|
|
720
720
|
let parsed;
|
|
721
721
|
try {
|
|
@@ -782,8 +782,10 @@ function processPlatformChatSseEvent(event, state) {
|
|
|
782
782
|
applyResponsesToolEvent(state.responsesToolCalls, parsed);
|
|
783
783
|
continue;
|
|
784
784
|
}
|
|
785
|
-
if (eventType === "response.completed"
|
|
785
|
+
if (eventType === "response.completed") {
|
|
786
|
+
state.sawResponseCompleted = true;
|
|
786
787
|
state.completedResponsesPayload = parsed.response;
|
|
788
|
+
continue;
|
|
787
789
|
}
|
|
788
790
|
}
|
|
789
791
|
}
|
|
@@ -807,12 +809,14 @@ async function readPlatformChatSseCompletion(args) {
|
|
|
807
809
|
thinkState: createThinkParserState(),
|
|
808
810
|
toolCallTextState: createToolCallTextParserState(),
|
|
809
811
|
finishReason: void 0,
|
|
810
|
-
sawDone: false
|
|
812
|
+
sawDone: false,
|
|
813
|
+
sawResponseCompleted: false
|
|
811
814
|
};
|
|
812
815
|
try {
|
|
813
816
|
for await (const frame of readSseFrames(args.response)) {
|
|
814
817
|
frameCount += 1;
|
|
815
818
|
processPlatformChatSseEvent(frame, state);
|
|
819
|
+
if (state.sawDone) break;
|
|
816
820
|
}
|
|
817
821
|
} catch (cause) {
|
|
818
822
|
if (cause instanceof PlatformStreamInterruptedError) {
|
|
@@ -853,7 +857,7 @@ async function readPlatformChatSseCompletion(args) {
|
|
|
853
857
|
if (dsml.content) state.content += dsml.content;
|
|
854
858
|
}
|
|
855
859
|
throwIfChatCompletionStreamFailed(state);
|
|
856
|
-
const streamComplete = state.sawDone || Boolean(state.usage) || Boolean(state.finishReason);
|
|
860
|
+
const streamComplete = state.sawDone || state.sawResponseCompleted || Boolean(state.usage) || Boolean(state.finishReason);
|
|
857
861
|
const streamTruncated = !streamComplete;
|
|
858
862
|
if (state.usesResponsesApi) {
|
|
859
863
|
const response = state.completedResponsesPayload;
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
mapDiscoveredSkillsToCatalogEntries,
|
|
9
9
|
resolveSkillCatalog,
|
|
10
10
|
resolveSkillCatalogSync
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-CMLBKYEI.js";
|
|
12
12
|
|
|
13
13
|
// packages/agent-runtime/skillDiscovery.ts
|
|
14
14
|
import { existsSync, readFileSync, readdirSync, statSync } from "node:fs";
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
} from "./chunk-E2BESSAW.js";
|
|
11
11
|
import {
|
|
12
12
|
getModelContextWindow
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-BTYQAODF.js";
|
|
14
14
|
import {
|
|
15
15
|
isRecord
|
|
16
16
|
} from "./chunk-KUG52IAP.js";
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
PLATFORM_HOSTED_KIMI_K3_MODEL,
|
|
22
22
|
isFireworksKimiModel,
|
|
23
23
|
isNoloHostedProvider
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-GOO6G4PY.js";
|
|
25
25
|
import {
|
|
26
26
|
asTrimmedLowercaseString
|
|
27
27
|
} from "./chunk-QSJ3HFEF.js";
|
|
@@ -914,7 +914,8 @@ var STREAM_USAGE_PROVIDERS = /* @__PURE__ */ new Set([
|
|
|
914
914
|
// prompt_tokens_details.cached_tokens.
|
|
915
915
|
"opendesign",
|
|
916
916
|
"opencode",
|
|
917
|
-
"opencode-go"
|
|
917
|
+
"opencode-go",
|
|
918
|
+
"longcat"
|
|
918
919
|
]);
|
|
919
920
|
var KIMI_CODE_ENDPOINT_MARKER = "api.kimi.com";
|
|
920
921
|
function extractHostname(endpoint) {
|
|
@@ -929,10 +930,14 @@ var isMiniMaxEndpoint = (endpoint) => {
|
|
|
929
930
|
const host = extractHostname(endpoint);
|
|
930
931
|
return host === "api.minimaxi.com" || host === "api.minimax.chat";
|
|
931
932
|
};
|
|
933
|
+
var isLongCatEndpoint = (endpoint) => {
|
|
934
|
+
const host = extractHostname(endpoint);
|
|
935
|
+
return host === "api.longcat.chat" || host === "api.longcat.ai";
|
|
936
|
+
};
|
|
932
937
|
var isSupportedCustomEndpoint = (endpoint) => {
|
|
933
938
|
if (typeof endpoint !== "string") return false;
|
|
934
939
|
const ep = endpoint.toLowerCase();
|
|
935
|
-
return isMiniMaxEndpoint(endpoint) || ep.includes(KIMI_CODE_ENDPOINT_MARKER) || ep.includes("open-design.ai") || ep.includes("opencode.ai") || isOllamaEndpoint(endpoint);
|
|
940
|
+
return isMiniMaxEndpoint(endpoint) || isLongCatEndpoint(endpoint) || ep.includes(KIMI_CODE_ENDPOINT_MARKER) || ep.includes("open-design.ai") || ep.includes("opencode.ai") || isOllamaEndpoint(endpoint);
|
|
936
941
|
};
|
|
937
942
|
var EXTRA_USAGE_FIELD_PROVIDERS = /* @__PURE__ */ new Set(["openrouter"]);
|
|
938
943
|
var normalizeProviderName = (providerName) => asTrimmedLowercaseString(providerName);
|
|
@@ -333,7 +333,7 @@ async function saveDocState(arg, { dispatch, getState }) {
|
|
|
333
333
|
).unwrap();
|
|
334
334
|
if (dbSpaceId) {
|
|
335
335
|
try {
|
|
336
|
-
const { updateContentTitle } = await import("./contentThunks-
|
|
336
|
+
const { updateContentTitle } = await import("./contentThunks-I4IHSDTM.js");
|
|
337
337
|
await dispatch(
|
|
338
338
|
updateContentTitle({
|
|
339
339
|
spaceId: dbSpaceId,
|
|
@@ -372,7 +372,7 @@ async function saveDocState(arg, { dispatch, getState }) {
|
|
|
372
372
|
}
|
|
373
373
|
}
|
|
374
374
|
async function createDocState(args, thunkApi) {
|
|
375
|
-
const { createPageAction } = await import("./createPageAction-
|
|
375
|
+
const { createPageAction } = await import("./createPageAction-QAZHQGY7.js");
|
|
376
376
|
return createPageAction(args, thunkApi);
|
|
377
377
|
}
|
|
378
378
|
function subscribe(listener) {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
requireTokenUser
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-NTLJGRAT.js";
|
|
4
4
|
import {
|
|
5
5
|
resolveServerUrl
|
|
6
6
|
} from "./chunk-WACI5I6V.js";
|
|
7
7
|
import {
|
|
8
8
|
t
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-CLTGWJVT.js";
|
|
10
10
|
|
|
11
11
|
// packages/cli/cliApiClient.ts
|
|
12
12
|
var CliApiError = class extends Error {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveBuiltinCapability,
|
|
3
3
|
resolveBuiltinSkillEntry
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-LEX6DEH4.js";
|
|
5
5
|
import {
|
|
6
6
|
noloAgentId
|
|
7
7
|
} from "./chunk-Y6ORVLSS.js";
|
|
@@ -186,7 +186,8 @@ var SUPPORTED_USER_SKILL_SLUGS = [
|
|
|
186
186
|
"skill-creator",
|
|
187
187
|
"code-planning",
|
|
188
188
|
"coding",
|
|
189
|
-
"coding-review"
|
|
189
|
+
"coding-review",
|
|
190
|
+
"android-adb"
|
|
190
191
|
];
|
|
191
192
|
var SUPPORTED_USER_SKILL_SLUG_SET = new Set(
|
|
192
193
|
SUPPORTED_USER_SKILL_SLUGS
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
buildStaticUserPolicyContext,
|
|
3
3
|
resolveSpaceContextPreloadPlan
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-Q7GNBUT4.js";
|
|
5
5
|
import {
|
|
6
6
|
fetchReferenceContents,
|
|
7
7
|
mergeReferences,
|
|
8
8
|
resolveReferenceAssets,
|
|
9
9
|
resolveToolsFromKeys
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-RIKSN62L.js";
|
|
11
11
|
import {
|
|
12
12
|
UI_CARD_ENVELOPE_MAX_BYTES,
|
|
13
13
|
getAllToolRuns,
|
|
@@ -18,14 +18,14 @@ import {
|
|
|
18
18
|
selectSpaceContextLevel,
|
|
19
19
|
selectUserTonePreset,
|
|
20
20
|
uiCardFallback
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-C7PKPHK6.js";
|
|
22
22
|
import {
|
|
23
23
|
resolveAgentRecommendedSkillNames,
|
|
24
24
|
resolveAgentRequiredPackIds
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-DKZJJ2NQ.js";
|
|
26
26
|
import {
|
|
27
27
|
getDocState
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-D57YYGMD.js";
|
|
29
29
|
import {
|
|
30
30
|
resolveToolBaseUrl
|
|
31
31
|
} from "./chunk-MYOH447Z.js";
|
|
@@ -34,10 +34,10 @@ import {
|
|
|
34
34
|
getModelPricing,
|
|
35
35
|
getPrices,
|
|
36
36
|
hasExplicitAgentPricing
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-A2ZMIRLN.js";
|
|
38
38
|
import {
|
|
39
39
|
getTableState
|
|
40
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-SSK4WNJA.js";
|
|
41
41
|
import {
|
|
42
42
|
getCurrentSpaceIdRaw,
|
|
43
43
|
getViewMode
|
|
@@ -46,7 +46,7 @@ import {
|
|
|
46
46
|
PERSONALIZATION_DIALOG_CATEGORY,
|
|
47
47
|
buildPersonalizationDialogPolicyContext,
|
|
48
48
|
selectAllMsgs
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-326HCB6L.js";
|
|
50
50
|
import {
|
|
51
51
|
selectPendingFiles
|
|
52
52
|
} from "./chunk-OWYYDMGJ.js";
|
|
@@ -78,11 +78,11 @@ import {
|
|
|
78
78
|
} from "./chunk-WJZOQR2J.js";
|
|
79
79
|
import {
|
|
80
80
|
extractReferenceKeysFromMessage
|
|
81
|
-
} from "./chunk-
|
|
81
|
+
} from "./chunk-WTKYP6QO.js";
|
|
82
82
|
import {
|
|
83
83
|
getModelContextWindow,
|
|
84
84
|
planContextUsage
|
|
85
|
-
} from "./chunk-
|
|
85
|
+
} from "./chunk-BTYQAODF.js";
|
|
86
86
|
import {
|
|
87
87
|
asRecordOrEmpty
|
|
88
88
|
} from "./chunk-KX6YBIHG.js";
|
|
@@ -92,7 +92,7 @@ import {
|
|
|
92
92
|
import {
|
|
93
93
|
buildLinkedSpacesSection,
|
|
94
94
|
buildSpaceContextLayer
|
|
95
|
-
} from "./chunk-
|
|
95
|
+
} from "./chunk-CMLBKYEI.js";
|
|
96
96
|
import {
|
|
97
97
|
canonicalizeToolNames,
|
|
98
98
|
prioritizeToolNames
|
|
@@ -106,7 +106,7 @@ import {
|
|
|
106
106
|
import {
|
|
107
107
|
getModelConfig,
|
|
108
108
|
getProviderByModelName
|
|
109
|
-
} from "./chunk-
|
|
109
|
+
} from "./chunk-SM3NSZJV.js";
|
|
110
110
|
import {
|
|
111
111
|
isRecord
|
|
112
112
|
} from "./chunk-KUG52IAP.js";
|
|
@@ -1257,7 +1257,7 @@ ${content}
|
|
|
1257
1257
|
var validateAccessAndBalance = (agentConfig, state) => {
|
|
1258
1258
|
const userBalance = selectIdentityUserBalance(state);
|
|
1259
1259
|
const currentUserId = selectIdentityUserId(state);
|
|
1260
|
-
const isCustomApi = agentConfig.apiSource === "custom";
|
|
1260
|
+
const isCustomApi = agentConfig.apiSource === "custom" || Boolean(agentConfig.customProviderUrl);
|
|
1261
1261
|
const isCliApi = agentConfig.apiSource === "cli";
|
|
1262
1262
|
const isDeviceLocalOwner = agentConfig.userId === "local" && !currentUserId;
|
|
1263
1263
|
const isOwner = isDeviceLocalOwner || Boolean(currentUserId) && agentConfig.userId === currentUserId;
|
|
@@ -1722,7 +1722,10 @@ async function resolveTurnToolContext(input) {
|
|
|
1722
1722
|
const mentionedToolNames = canonicalizeToolNames(mentionResult.toolNames);
|
|
1723
1723
|
const agentRefs = Array.isArray(input.agentConfig?.references) ? input.agentConfig.references : [];
|
|
1724
1724
|
const dialogExtraRefs = Array.isArray(input.dialogConfig?.extraReferences) ? input.dialogConfig.extraReferences : [];
|
|
1725
|
-
const mergedReferences = mergeReferences(
|
|
1725
|
+
const mergedReferences = mergeReferences(
|
|
1726
|
+
mergeReferences(agentRefs, dialogExtraRefs),
|
|
1727
|
+
input.ephemeralReferences
|
|
1728
|
+
);
|
|
1726
1729
|
let refAssets = {
|
|
1727
1730
|
references: [],
|
|
1728
1731
|
referencedTools: [],
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
} from "./chunk-TRZP7JZ7.js";
|
|
23
23
|
import {
|
|
24
24
|
createFileCredentialBroker
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-UIOEHFF6.js";
|
|
26
26
|
import {
|
|
27
27
|
asRecordOrEmpty
|
|
28
28
|
} from "./chunk-KX6YBIHG.js";
|
|
@@ -458,7 +458,7 @@ var slice = createSliceWithThunks({
|
|
|
458
458
|
const overrides = {};
|
|
459
459
|
if (args.systemPromptOverride !== void 0) overrides.prompt = args.systemPromptOverride;
|
|
460
460
|
if (args.toolsOverride !== void 0) overrides.tools = args.toolsOverride;
|
|
461
|
-
const { _executeModel } = await import("./_executeModel-
|
|
461
|
+
const { _executeModel } = await import("./_executeModel-IPRTPSW7.js");
|
|
462
462
|
return _executeModel(
|
|
463
463
|
{
|
|
464
464
|
isStreaming: args.isStreaming ?? false,
|
|
@@ -479,7 +479,7 @@ var slice = createSliceWithThunks({
|
|
|
479
479
|
* - 循环直到无工具调用或触发其他运行时停止条件
|
|
480
480
|
*/
|
|
481
481
|
runAgent: create.asyncThunk(async (args, thunkApi) => {
|
|
482
|
-
const { runAgentClientLoop } = await import("./runAgentClientLoop-
|
|
482
|
+
const { runAgentClientLoop } = await import("./runAgentClientLoop-QKV66PX5.js");
|
|
483
483
|
const { content: loopContent, toolCallCount } = await runAgentClientLoop(
|
|
484
484
|
{
|
|
485
485
|
agentKey: args.agentKey,
|
|
@@ -495,7 +495,7 @@ var slice = createSliceWithThunks({
|
|
|
495
495
|
* 聊天轮次流式 Agent 调用
|
|
496
496
|
*/
|
|
497
497
|
streamAgentChatTurn: create.asyncThunk(async (args, thunkApi) => {
|
|
498
|
-
const { streamAgentChatTurnHandler } = await import("./streamAgentChatTurn-
|
|
498
|
+
const { streamAgentChatTurnHandler } = await import("./streamAgentChatTurn-GM3UNSLS.js");
|
|
499
499
|
return streamAgentChatTurnHandler(args, thunkApi);
|
|
500
500
|
}),
|
|
501
501
|
/**
|