nolo-cli 0.30.0-alpha.2 → 0.30.0-alpha.3
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-VBHHG7LT.js → _executeModel-FYUR7PQU.js} +17 -17
- package/{agentDeleteCommand-LLGZXUYJ.js → agentDeleteCommand-HHP47ZB2.js} +14 -14
- package/{agentEmailCommands-LC2FPN6G.js → agentEmailCommands-H6KRDTQW.js} +22 -22
- package/{agentListCommands-A6OBQ3QX.js → agentListCommands-GNVFOTB4.js} +16 -16
- package/{agentMachineCommands-4O4Q5B5X.js → agentMachineCommands-4HJHI26F.js} +14 -14
- package/{agentRecordCommands-W22RIQRV.js → agentRecordCommands-W6ITUONM.js} +21 -21
- package/{agentRunCommand-V4OBU4FB.js → agentRunCommand-VDLU4VKR.js} +21 -21
- package/{agentRuntimeLocal-I57YSGH4.js → agentRuntimeLocal-3X3ZTFT2.js} +11 -11
- package/{agentSlice-3ZHY7RAO.js → agentSlice-5HYCSSTE.js} +1 -1
- package/{appDeleteCommands-DJJF466K.js → appDeleteCommands-WFUF34TE.js} +15 -15
- package/{appDeployCommands-WJZGIOEZ.js → appDeployCommands-J2EAE53G.js} +15 -15
- package/{appDeployStatusCommands-ICYXUJNO.js → appDeployStatusCommands-RLXDEHTV.js} +15 -15
- package/{appGetCommands-UOCWYJPV.js → appGetCommands-ZGV3CKCM.js} +15 -15
- package/{appListCommands-EOKWTXPW.js → appListCommands-3VRX3EJI.js} +15 -15
- package/{authCommand-H5KE7K7K.js → authCommand-RR5LAYSW.js} +5 -5
- package/{chunk-TJYWZ3LO.js → chunk-2NYIVLAY.js} +1 -1
- package/{chunk-OYK7PA5U.js → chunk-2TZP235J.js} +3 -3
- package/{chunk-W2YKDXT7.js → chunk-3IPBZISR.js} +1 -1
- package/{chunk-MMCVBEAD.js → chunk-3Z6SPX5X.js} +24 -22
- package/{chunk-GAGUBI42.js → chunk-4ZMTXQFB.js} +3 -3
- package/{chunk-3RIWR23B.js → chunk-5NPAOURO.js} +1 -1
- package/{chunk-SWOTB2TX.js → chunk-6QP7LEI6.js} +10 -10
- package/{chunk-66O5MZYH.js → chunk-72NVMKWA.js} +1 -1
- package/{chunk-UKC5HU2C.js → chunk-7QW64TCG.js} +5 -5
- package/{chunk-GVKTKT3O.js → chunk-CTLXD6HB.js} +3 -3
- package/{chunk-VSTUQGLT.js → chunk-EIQDGAAE.js} +147 -1
- package/{chunk-SZ5CBYMZ.js → chunk-F3A5IZSX.js} +1 -1
- package/{chunk-HLG6GAUD.js → chunk-GABCPUMC.js} +1 -1
- package/{chunk-KW47OSRJ.js → chunk-IUA36RS4.js} +39 -61
- package/{chunk-QLV2GKU5.js → chunk-JRI2BRJY.js} +1 -1
- package/{chunk-KWKD3BCC.js → chunk-KH3JS4D5.js} +9 -9
- package/{chunk-CV6I4HBA.js → chunk-LWP3HB56.js} +1 -1
- package/{chunk-G6VITLCZ.js → chunk-LWYIHJKD.js} +2 -2
- package/{chunk-56IUA7RU.js → chunk-MNUJETMH.js} +1 -1
- package/{chunk-DCWBP2O7.js → chunk-MV6UZXZU.js} +8 -8
- package/{chunk-THTAR67C.js → chunk-O6YCGBJB.js} +9 -9
- package/{chunk-YWGSCF37.js → chunk-PACNSC37.js} +1 -1
- package/{chunk-7CD24PU4.js → chunk-QDNVDGLN.js} +2 -2
- package/{chunk-HI7QZNWX.js → chunk-R2JHVPHL.js} +4 -4
- package/{chunk-UTQZ73QQ.js → chunk-S342XWCB.js} +1 -1
- package/{chunk-L3VQOVKK.js → chunk-TAS3THIF.js} +2 -2
- package/{chunk-2XM5KUNE.js → chunk-V5BWE46D.js} +2 -2
- package/{chunk-T3Y5EMJS.js → chunk-WJD5RNVB.js} +1 -1
- package/{chunk-XD5NQEOH.js → chunk-WTPC3XD4.js} +1 -1
- package/{chunk-MEUZFIAJ.js → chunk-XORE26Z4.js} +1 -1
- package/{chunk-FS5TTXPS.js → chunk-YK2QRWTO.js} +2 -2
- package/{chunk-DI6MXJK5.js → chunk-YX26YZL4.js} +9 -9
- package/{createAgentAutomationAction-3GMH6ORX.js → createAgentAutomationAction-EKABYSSA.js} +3 -3
- package/{createDialogAction-R5MCL4RE.js → createDialogAction-HLP6TV4H.js} +4 -4
- package/{createPageAction-QYTG656R.js → createPageAction-4NEEWW6S.js} +3 -3
- package/{dialogCommands-NUQGIXVZ.js → dialogCommands-XB3ZNSP3.js} +15 -15
- package/{dialogSlice-CFDECXEU.js → dialogSlice-4IWM2WIY.js} +3 -3
- package/{docCreateCommands-UNFCXB5N.js → docCreateCommands-QSPTTAN7.js} +14 -14
- package/{docDeleteCommands-NG5IVKE5.js → docDeleteCommands-2E6JZXCP.js} +15 -15
- package/{docReadCommands-6J7MUUX6.js → docReadCommands-N2DQVLLT.js} +14 -14
- package/{docStore-MZZWJM4F.js → docStore-PFZCPHPC.js} +4 -4
- package/{docUpdateCommands-6AW3VZOX.js → docUpdateCommands-53KFSYEP.js} +14 -14
- package/{getPricing-XQYSSVV6.js → getPricing-67TQVKFV.js} +2 -2
- package/{handleSendMessageAction-IU2QNTLM.js → handleSendMessageAction-4IYJTQAL.js} +3 -3
- package/index.js +47 -47
- package/{machineCommands-Z2QEWTHZ.js → machineCommands-CR34SD5W.js} +20 -20
- package/{machineWsRunDispatch-SJTYHZHN.js → machineWsRunDispatch-G4O3NQ3I.js} +20 -20
- package/package.json +1 -1
- package/{readlineWorkspace-BGKPABK4.js → readlineWorkspace-OOXRR2NG.js} +24 -24
- package/{runAgentClientLoop-N3YDLTMS.js → runAgentClientLoop-R5WNOWHI.js} +13 -13
- package/{spaceCommands-R6AEQNLG.js → spaceCommands-RZN5K5ND.js} +14 -14
- package/{spaceSlice-MCH7RLLP.js → spaceSlice-3BVGRL3V.js} +3 -3
- package/{streamAgentChatTurn-Q4U2CVMI.js → streamAgentChatTurn-RVOJZ2HO.js} +16 -16
- package/{tools-Y3UBLLYW.js → tools-QAKUH2P6.js} +8 -8
- package/{tuiSummaryLlmCaller-4474IBTI.js → tuiSummaryLlmCaller-YQBN5IMG.js} +3 -3
- package/{updateDialogTitleAction-3J7GH67I.js → updateDialogTitleAction-4O5PZVQR.js} +3 -3
|
@@ -4,14 +4,14 @@ import {
|
|
|
4
4
|
providerHttpFailure,
|
|
5
5
|
readSseFrames,
|
|
6
6
|
throwIfChatCompletionStreamFailed
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-XORE26Z4.js";
|
|
8
8
|
import {
|
|
9
9
|
sanitizeForOutbound
|
|
10
10
|
} from "./chunk-T27IEBNQ.js";
|
|
11
11
|
import {
|
|
12
12
|
parseToolArgumentsJson,
|
|
13
13
|
resolveHistoricalToolContentCap
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-IUA36RS4.js";
|
|
15
15
|
import {
|
|
16
16
|
createThinkParserState,
|
|
17
17
|
createToolCallAccumulator,
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
import {
|
|
23
23
|
requiresBareImageUrl,
|
|
24
24
|
toBareImageUrlMessages
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-QDNVDGLN.js";
|
|
26
26
|
import {
|
|
27
27
|
shouldStripReasoningContentForOutbound,
|
|
28
28
|
toOpenAiCompatibleMessages
|
|
@@ -30,7 +30,7 @@ import {
|
|
|
30
30
|
import {
|
|
31
31
|
buildProviderAuthHeaders,
|
|
32
32
|
buildProviderExecutionPlan
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-WTPC3XD4.js";
|
|
34
34
|
import {
|
|
35
35
|
buildDialogFallbackTitleFromUserInput
|
|
36
36
|
} from "./chunk-2MBTWINN.js";
|
|
@@ -39,7 +39,7 @@ import {
|
|
|
39
39
|
buildNoloWorkspaceCommandArgs,
|
|
40
40
|
noloStringArg,
|
|
41
41
|
parseNoloWorkspaceToolArguments
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-2TZP235J.js";
|
|
43
43
|
import {
|
|
44
44
|
toErrorMessage
|
|
45
45
|
} from "./chunk-HNMXYYJR.js";
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
listUserRecordsFromServers,
|
|
3
3
|
readLiveDbRecordAfterTombstoneMerge
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-GABCPUMC.js";
|
|
5
5
|
import {
|
|
6
6
|
agentRecordHasConfiguredCredential
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-MNUJETMH.js";
|
|
8
8
|
import {
|
|
9
9
|
toSafeAgentSummary
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-S342XWCB.js";
|
|
11
11
|
import {
|
|
12
12
|
PUBLIC_AGENT_KEY_PREFIX,
|
|
13
13
|
isOwnedAgentKey,
|
|
@@ -505,6 +505,150 @@ var kimiCodeModels = [
|
|
|
505
505
|
}
|
|
506
506
|
];
|
|
507
507
|
|
|
508
|
+
// packages/integrations/opencode/models.ts
|
|
509
|
+
var opencodeGoModels = [
|
|
510
|
+
// ── OpenAI ──
|
|
511
|
+
{
|
|
512
|
+
name: "gpt-5.6-luna",
|
|
513
|
+
displayName: "GPT-5.6 Luna (Fast)",
|
|
514
|
+
hasVision: true,
|
|
515
|
+
contextWindow: 272e3,
|
|
516
|
+
maxOutputTokens: 128e3,
|
|
517
|
+
jsonOutput: true,
|
|
518
|
+
fnCall: true,
|
|
519
|
+
supportsTool: true,
|
|
520
|
+
price: { input: 0, output: 0 },
|
|
521
|
+
provider: "opencode-go",
|
|
522
|
+
description: "OpenAI GPT-5.6 Luna \u5FEB\u901F\u6A21\u578B\uFF0COpenCode Go \u8BA2\u9605\u542B\u3002"
|
|
523
|
+
},
|
|
524
|
+
// gpt-5.6-sol 不在 Go 订阅内:GET /models 不返回它,直接调用返回
|
|
525
|
+
// 401 "Model gpt-5.6-sol is not supported"(实测 2026-08-03)。
|
|
526
|
+
// ── Grok ──
|
|
527
|
+
{
|
|
528
|
+
name: "grok-4.5",
|
|
529
|
+
displayName: "Grok 4.5",
|
|
530
|
+
hasVision: true,
|
|
531
|
+
contextWindow: 5e5,
|
|
532
|
+
maxOutputTokens: 262144,
|
|
533
|
+
jsonOutput: true,
|
|
534
|
+
fnCall: true,
|
|
535
|
+
supportsTool: true,
|
|
536
|
+
price: { input: 0, output: 0 },
|
|
537
|
+
provider: "opencode-go",
|
|
538
|
+
description: "xAI Grok 4.5\uFF0COpenCode Go \u8BA2\u9605\u542B\u3002"
|
|
539
|
+
},
|
|
540
|
+
// ── Kimi ──
|
|
541
|
+
{
|
|
542
|
+
name: "kimi-k3",
|
|
543
|
+
displayName: "Kimi K3",
|
|
544
|
+
hasVision: true,
|
|
545
|
+
contextWindow: 1e6,
|
|
546
|
+
maxOutputTokens: 262144,
|
|
547
|
+
jsonOutput: true,
|
|
548
|
+
fnCall: true,
|
|
549
|
+
supportsTool: true,
|
|
550
|
+
price: { input: 0, output: 0 },
|
|
551
|
+
provider: "opencode-go",
|
|
552
|
+
description: "Kimi K3 \u65D7\u8230\uFF0COpenCode Go \u8BA2\u9605\u542B\u3002"
|
|
553
|
+
},
|
|
554
|
+
// ── Qwen ──
|
|
555
|
+
{
|
|
556
|
+
name: "qwen3.8-max",
|
|
557
|
+
displayName: "Qwen3.8 Max",
|
|
558
|
+
hasVision: true,
|
|
559
|
+
contextWindow: 262144,
|
|
560
|
+
maxOutputTokens: 32768,
|
|
561
|
+
jsonOutput: true,
|
|
562
|
+
fnCall: true,
|
|
563
|
+
supportsTool: true,
|
|
564
|
+
price: { input: 0, output: 0 },
|
|
565
|
+
provider: "opencode-go",
|
|
566
|
+
description: "\u5343\u95EE 3.8 Max \u65D7\u8230\uFF0COpenCode Go \u8BA2\u9605\u542B\u3002"
|
|
567
|
+
},
|
|
568
|
+
{
|
|
569
|
+
name: "qwen3.7-max",
|
|
570
|
+
displayName: "Qwen3.7 Max",
|
|
571
|
+
hasVision: false,
|
|
572
|
+
contextWindow: 262144,
|
|
573
|
+
maxOutputTokens: 32768,
|
|
574
|
+
jsonOutput: true,
|
|
575
|
+
fnCall: true,
|
|
576
|
+
supportsTool: true,
|
|
577
|
+
price: { input: 0, output: 0 },
|
|
578
|
+
provider: "opencode-go",
|
|
579
|
+
description: "\u5343\u95EE 3.7 Max\uFF0COpenCode Go \u8BA2\u9605\u542B\u3002"
|
|
580
|
+
},
|
|
581
|
+
// ── GLM ──
|
|
582
|
+
{
|
|
583
|
+
name: "glm-5.2",
|
|
584
|
+
displayName: "GLM 5.2",
|
|
585
|
+
hasVision: false,
|
|
586
|
+
contextWindow: 1e6,
|
|
587
|
+
maxOutputTokens: 16384,
|
|
588
|
+
jsonOutput: true,
|
|
589
|
+
fnCall: true,
|
|
590
|
+
supportsTool: true,
|
|
591
|
+
price: { input: 0, output: 0 },
|
|
592
|
+
provider: "opencode-go",
|
|
593
|
+
description: "\u667A\u8C31 GLM 5.2\uFF0COpenCode Go \u8BA2\u9605\u542B\u3002"
|
|
594
|
+
},
|
|
595
|
+
// ── MiMo ──
|
|
596
|
+
{
|
|
597
|
+
name: "mimo-v2.5-pro",
|
|
598
|
+
displayName: "MiMo V2.5 Pro",
|
|
599
|
+
hasVision: false,
|
|
600
|
+
contextWindow: 131072,
|
|
601
|
+
maxOutputTokens: 16384,
|
|
602
|
+
jsonOutput: true,
|
|
603
|
+
fnCall: true,
|
|
604
|
+
supportsTool: true,
|
|
605
|
+
price: { input: 0, output: 0 },
|
|
606
|
+
provider: "opencode-go",
|
|
607
|
+
description: "\u5C0F\u7C73 MiMo V2.5 Pro\uFF0COpenCode Go \u8BA2\u9605\u542B\u3002"
|
|
608
|
+
},
|
|
609
|
+
// ── MiniMax ──
|
|
610
|
+
{
|
|
611
|
+
name: "minimax-m3",
|
|
612
|
+
displayName: "MiniMax M3",
|
|
613
|
+
hasVision: true,
|
|
614
|
+
contextWindow: 1e6,
|
|
615
|
+
maxOutputTokens: 262144,
|
|
616
|
+
jsonOutput: true,
|
|
617
|
+
fnCall: true,
|
|
618
|
+
supportsTool: true,
|
|
619
|
+
price: { input: 0, output: 0 },
|
|
620
|
+
provider: "opencode-go",
|
|
621
|
+
description: "MiniMax M3\uFF0COpenCode Go \u8BA2\u9605\u542B\u3002"
|
|
622
|
+
},
|
|
623
|
+
// ── DeepSeek ──
|
|
624
|
+
{
|
|
625
|
+
name: "deepseek-v4-pro",
|
|
626
|
+
displayName: "DeepSeek V4 Pro",
|
|
627
|
+
hasVision: false,
|
|
628
|
+
contextWindow: 1e6,
|
|
629
|
+
maxOutputTokens: 384e3,
|
|
630
|
+
jsonOutput: true,
|
|
631
|
+
fnCall: true,
|
|
632
|
+
supportsTool: true,
|
|
633
|
+
price: { input: 0, output: 0 },
|
|
634
|
+
provider: "opencode-go",
|
|
635
|
+
description: "DeepSeek V4 Pro\uFF0COpenCode Go \u8BA2\u9605\u542B\u3002"
|
|
636
|
+
},
|
|
637
|
+
{
|
|
638
|
+
name: "deepseek-v4-flash",
|
|
639
|
+
displayName: "DeepSeek V4 Flash",
|
|
640
|
+
hasVision: false,
|
|
641
|
+
contextWindow: 1e6,
|
|
642
|
+
maxOutputTokens: 384e3,
|
|
643
|
+
jsonOutput: true,
|
|
644
|
+
fnCall: true,
|
|
645
|
+
supportsTool: true,
|
|
646
|
+
price: { input: 0, output: 0 },
|
|
647
|
+
provider: "opencode-go",
|
|
648
|
+
description: "DeepSeek V4 Flash\uFF0COpenCode Go \u8BA2\u9605\u542B\u3002"
|
|
649
|
+
}
|
|
650
|
+
];
|
|
651
|
+
|
|
508
652
|
// node_modules/zod/dist/esm/v3/external.js
|
|
509
653
|
var external_exports = {};
|
|
510
654
|
__export(external_exports, {
|
|
@@ -4723,6 +4867,8 @@ var MODEL_MAP = {
|
|
|
4723
4867
|
var MODEL_LOOKUP_MAP = {
|
|
4724
4868
|
anthropic: [...anthropicModels, ...anthropicOAuthModels],
|
|
4725
4869
|
xai: xaiModels,
|
|
4870
|
+
"opencode-go": opencodeGoModels,
|
|
4871
|
+
opencode: opencodeGoModels,
|
|
4726
4872
|
...MODEL_MAP
|
|
4727
4873
|
};
|
|
4728
4874
|
var ANTHROPIC_MODEL_ALIASES = {
|
|
@@ -4856,7 +5002,7 @@ function getModelConfig(provider, name) {
|
|
|
4856
5002
|
return model;
|
|
4857
5003
|
}
|
|
4858
5004
|
function getProviderByModelName(modelName) {
|
|
4859
|
-
for (const [provider, models] of Object.entries(
|
|
5005
|
+
for (const [provider, models] of Object.entries(MODEL_LOOKUP_MAP)) {
|
|
4860
5006
|
if (models.some((m) => m.name === modelName)) {
|
|
4861
5007
|
return provider;
|
|
4862
5008
|
}
|
|
@@ -9,15 +9,15 @@ import {
|
|
|
9
9
|
buildRuntimeGuidanceBlocks,
|
|
10
10
|
fetchReferenceContents,
|
|
11
11
|
resolveToolGuidedSections
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-QDNVDGLN.js";
|
|
13
13
|
import {
|
|
14
14
|
getAllToolRuns,
|
|
15
15
|
resolveAgentRecommendedSkillNames,
|
|
16
16
|
resolveAgentRequiredPackIds
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-2TZP235J.js";
|
|
18
18
|
import {
|
|
19
19
|
getDocState
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-YK2QRWTO.js";
|
|
21
21
|
import {
|
|
22
22
|
resolveToolBaseUrl
|
|
23
23
|
} from "./chunk-44HACRCK.js";
|
|
@@ -26,7 +26,7 @@ import {
|
|
|
26
26
|
getModelPricing,
|
|
27
27
|
getPrices,
|
|
28
28
|
hasExplicitAgentPricing
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-PACNSC37.js";
|
|
30
30
|
import {
|
|
31
31
|
PERSONALIZATION_DIALOG_CATEGORY,
|
|
32
32
|
buildPersonalizationDialogPolicyContext,
|
|
@@ -42,7 +42,7 @@ import {
|
|
|
42
42
|
selectTableRows,
|
|
43
43
|
selectViewMode,
|
|
44
44
|
serializeMessageContent
|
|
45
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-O6YCGBJB.js";
|
|
46
46
|
import {
|
|
47
47
|
clipCompactText
|
|
48
48
|
} from "./chunk-OB6FBSH3.js";
|
|
@@ -56,7 +56,7 @@ import {
|
|
|
56
56
|
findModelConfig,
|
|
57
57
|
getModelConfig,
|
|
58
58
|
getProviderByModelName
|
|
59
|
-
} from "./chunk-
|
|
59
|
+
} from "./chunk-EIQDGAAE.js";
|
|
60
60
|
import {
|
|
61
61
|
PLATFORM_HOSTED_QWEN_37_FLASH_MODEL
|
|
62
62
|
} from "./chunk-CAENRKNJ.js";
|
|
@@ -858,11 +858,6 @@ var buildEditingContextSummary = (state, runtimeOptions) => {
|
|
|
858
858
|
};
|
|
859
859
|
|
|
860
860
|
// packages/ai/llm/agentCapabilities.ts
|
|
861
|
-
var isCustomAgent = (agent) => {
|
|
862
|
-
const apiSource = agent.apiSource?.toLowerCase();
|
|
863
|
-
const provider = agent.provider?.toLowerCase();
|
|
864
|
-
return apiSource === "custom" || provider === "custom";
|
|
865
|
-
};
|
|
866
861
|
var ANTIGRAVITY_EFFORT_SUFFIXES = [
|
|
867
862
|
"-tiered",
|
|
868
863
|
"-extra-low",
|
|
@@ -893,21 +888,21 @@ var lookupKnownModelVision = (provider, model) => {
|
|
|
893
888
|
const strippedPreview = stripPreviewSuffix(model);
|
|
894
889
|
if (strippedPreview !== model) candidates.push(strippedPreview);
|
|
895
890
|
for (const candidate of candidates) {
|
|
896
|
-
if (provider) {
|
|
891
|
+
if (provider && provider !== "custom") {
|
|
897
892
|
const direct = findModelConfig(provider, candidate);
|
|
898
|
-
if (direct) return direct.hasVision;
|
|
893
|
+
if (direct && typeof direct.hasVision === "boolean") return direct.hasVision;
|
|
899
894
|
}
|
|
900
895
|
const detected = getProviderByModelName(candidate);
|
|
901
896
|
if (detected) {
|
|
902
897
|
const found = findModelConfig(detected, candidate)?.hasVision;
|
|
903
898
|
if (found !== void 0) return found;
|
|
904
899
|
}
|
|
905
|
-
if (
|
|
900
|
+
if (candidate.includes("/")) {
|
|
906
901
|
const slash = candidate.indexOf("/");
|
|
907
902
|
const modelProvider = candidate.slice(0, slash).toLowerCase();
|
|
908
903
|
const modelName = candidate.slice(slash + 1);
|
|
909
904
|
const nested = findModelConfig(modelProvider, modelName);
|
|
910
|
-
if (nested) return nested.hasVision;
|
|
905
|
+
if (nested && typeof nested.hasVision === "boolean") return nested.hasVision;
|
|
911
906
|
}
|
|
912
907
|
}
|
|
913
908
|
return void 0;
|
|
@@ -916,18 +911,13 @@ var resolveAgentImageInputSupport = (agent) => {
|
|
|
916
911
|
if (!agent) return true;
|
|
917
912
|
const provider = asTrimmedLowercaseString(agent.provider) || null;
|
|
918
913
|
const model = asOptionalTrimmedString(agent.model) ?? "";
|
|
919
|
-
const custom = isCustomAgent(agent);
|
|
920
914
|
const catalogHasVision = lookupKnownModelVision(
|
|
921
|
-
|
|
915
|
+
provider,
|
|
922
916
|
model
|
|
923
917
|
);
|
|
924
|
-
if (
|
|
918
|
+
if (catalogHasVision !== void 0) {
|
|
925
919
|
return catalogHasVision;
|
|
926
920
|
}
|
|
927
|
-
if (custom) {
|
|
928
|
-
if (catalogHasVision === true) return true;
|
|
929
|
-
return true;
|
|
930
|
-
}
|
|
931
921
|
if (typeof agent.hasVision === "boolean") {
|
|
932
922
|
return agent.hasVision;
|
|
933
923
|
}
|
|
@@ -2887,13 +2877,35 @@ async function runLocalAgentTurn(input) {
|
|
|
2887
2877
|
input: input.input,
|
|
2888
2878
|
contextReferenceResolver: input.adapter.host === "cli" ? input.contextReferenceResolver : void 0
|
|
2889
2879
|
});
|
|
2890
|
-
|
|
2880
|
+
let messages = builtMessages.messages;
|
|
2891
2881
|
const supportsImages = resolveAgentImageInputSupport({
|
|
2892
2882
|
apiSource: agentConfig.apiSource,
|
|
2893
2883
|
provider: agentConfig.provider,
|
|
2894
2884
|
model: agentConfig.model,
|
|
2895
2885
|
hasVision: agentConfig.hasVision
|
|
2896
2886
|
});
|
|
2887
|
+
if (!supportsImages && hasImageInRuntimeMessages(messages)) {
|
|
2888
|
+
const imageUrls = extractImageUrlsFromMessages(messages);
|
|
2889
|
+
const preprocessed = await preprocessImagesForTextOnlyAgent(
|
|
2890
|
+
messages,
|
|
2891
|
+
(urls) => describeImageWithLocalProvider(input.adapter, urls)
|
|
2892
|
+
);
|
|
2893
|
+
if (preprocessed !== messages) {
|
|
2894
|
+
messages = preprocessed;
|
|
2895
|
+
emitLoopEvent(input, {
|
|
2896
|
+
kind: "image-preprocessed",
|
|
2897
|
+
atMs: Date.now(),
|
|
2898
|
+
imageCount: imageUrls.length
|
|
2899
|
+
});
|
|
2900
|
+
} else {
|
|
2901
|
+
messages = filterImagePartsFromMessages(messages, false);
|
|
2902
|
+
emitLoopEvent(input, {
|
|
2903
|
+
kind: "image-downgraded",
|
|
2904
|
+
reason: "no-vision",
|
|
2905
|
+
atMs: Date.now()
|
|
2906
|
+
});
|
|
2907
|
+
}
|
|
2908
|
+
}
|
|
2897
2909
|
const userInputText = extractUserInputText(input.input);
|
|
2898
2910
|
let toolCallCount = 0;
|
|
2899
2911
|
let result;
|
|
@@ -2904,7 +2916,6 @@ async function runLocalAgentTurn(input) {
|
|
|
2904
2916
|
let round = 0;
|
|
2905
2917
|
let emptyAssistantRepairPending = false;
|
|
2906
2918
|
let emptyAssistantRepairUsed = false;
|
|
2907
|
-
let imageDowngradeNotified = false;
|
|
2908
2919
|
let skipFinalAppend = false;
|
|
2909
2920
|
let partialContent = "";
|
|
2910
2921
|
try {
|
|
@@ -2913,43 +2924,10 @@ async function runLocalAgentTurn(input) {
|
|
|
2913
2924
|
partialContent = "";
|
|
2914
2925
|
throwIfAborted(input);
|
|
2915
2926
|
const preparedMessages = prepareMessagesForProviderCall(messages);
|
|
2916
|
-
|
|
2917
|
-
|
|
2918
|
-
|
|
2919
|
-
|
|
2920
|
-
preparedMessages.messages,
|
|
2921
|
-
(urls) => describeImageWithLocalProvider(input.adapter, urls)
|
|
2922
|
-
);
|
|
2923
|
-
if (preprocessed !== preparedMessages.messages) {
|
|
2924
|
-
baseRequestMessages = preprocessed;
|
|
2925
|
-
if (!imageDowngradeNotified) {
|
|
2926
|
-
imageDowngradeNotified = true;
|
|
2927
|
-
emitLoopEvent(input, {
|
|
2928
|
-
kind: "image-preprocessed",
|
|
2929
|
-
atMs: Date.now(),
|
|
2930
|
-
imageCount: imageUrls.length
|
|
2931
|
-
});
|
|
2932
|
-
}
|
|
2933
|
-
} else {
|
|
2934
|
-
baseRequestMessages = filterImagePartsFromMessages(
|
|
2935
|
-
preparedMessages.messages,
|
|
2936
|
-
supportsImages
|
|
2937
|
-
);
|
|
2938
|
-
if (!imageDowngradeNotified) {
|
|
2939
|
-
imageDowngradeNotified = true;
|
|
2940
|
-
emitLoopEvent(input, {
|
|
2941
|
-
kind: "image-downgraded",
|
|
2942
|
-
reason: "no-vision",
|
|
2943
|
-
atMs: Date.now()
|
|
2944
|
-
});
|
|
2945
|
-
}
|
|
2946
|
-
}
|
|
2947
|
-
} else {
|
|
2948
|
-
baseRequestMessages = filterImagePartsFromMessages(
|
|
2949
|
-
preparedMessages.messages,
|
|
2950
|
-
supportsImages
|
|
2951
|
-
);
|
|
2952
|
-
}
|
|
2927
|
+
const baseRequestMessages = filterImagePartsFromMessages(
|
|
2928
|
+
preparedMessages.messages,
|
|
2929
|
+
supportsImages
|
|
2930
|
+
);
|
|
2953
2931
|
const requestMessages = emptyAssistantRepairPending ? [...baseRequestMessages, { role: "user", content: EMPTY_ASSISTANT_REPAIR_PROMPT }] : baseRequestMessages;
|
|
2954
2932
|
const contextMetrics = {
|
|
2955
2933
|
...preparedMessages.metrics,
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
parseAgentRunEvent,
|
|
20
20
|
t,
|
|
21
21
|
toolLabel
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-3Z6SPX5X.js";
|
|
23
23
|
import {
|
|
24
24
|
createRunActivityTracker,
|
|
25
25
|
finalizeRunRecord,
|
|
@@ -38,7 +38,7 @@ import {
|
|
|
38
38
|
normalizeAgentHandle,
|
|
39
39
|
readDbRecord,
|
|
40
40
|
resolveAgentRecordFromHybridStore
|
|
41
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-MNUJETMH.js";
|
|
42
42
|
import {
|
|
43
43
|
NOLO_PROJECT_MANAGER_AGENT_KEY,
|
|
44
44
|
isLocalCliAgentKey
|
|
@@ -58,7 +58,7 @@ import {
|
|
|
58
58
|
LOCAL_TURN_ABORTED_CODE,
|
|
59
59
|
readActionGate,
|
|
60
60
|
readCommandActionGatePayload
|
|
61
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-IUA36RS4.js";
|
|
62
62
|
import {
|
|
63
63
|
createThinkParserState,
|
|
64
64
|
flushThinkParser,
|
|
@@ -73,10 +73,10 @@ import {
|
|
|
73
73
|
} from "./chunk-PJY5AH5A.js";
|
|
74
74
|
import {
|
|
75
75
|
resolvePlatformAuthToken
|
|
76
|
-
} from "./chunk-
|
|
76
|
+
} from "./chunk-WTPC3XD4.js";
|
|
77
77
|
import {
|
|
78
78
|
formatAgentListCard
|
|
79
|
-
} from "./chunk-
|
|
79
|
+
} from "./chunk-6QP7LEI6.js";
|
|
80
80
|
import {
|
|
81
81
|
isGatewayHttpStatus
|
|
82
82
|
} from "./chunk-Z5MXSEOJ.js";
|
|
@@ -95,14 +95,14 @@ import {
|
|
|
95
95
|
chooseMemoryOwners,
|
|
96
96
|
loadMemoryCandidatesFromDb,
|
|
97
97
|
resolveAgentMemoryPolicy
|
|
98
|
-
} from "./chunk-
|
|
98
|
+
} from "./chunk-JRI2BRJY.js";
|
|
99
99
|
import {
|
|
100
100
|
API_REPORTED_COST_MULTIPLIER,
|
|
101
101
|
DEFAULT_CONTEXT_WINDOW,
|
|
102
102
|
getModelContextWindow,
|
|
103
103
|
normalizeUsage,
|
|
104
104
|
parseUiAskChoiceContent
|
|
105
|
-
} from "./chunk-
|
|
105
|
+
} from "./chunk-O6YCGBJB.js";
|
|
106
106
|
import {
|
|
107
107
|
clipCompactText
|
|
108
108
|
} from "./chunk-OB6FBSH3.js";
|
|
@@ -114,7 +114,7 @@ import {
|
|
|
114
114
|
} from "./chunk-DWLEOOGR.js";
|
|
115
115
|
import {
|
|
116
116
|
findModelConfig
|
|
117
|
-
} from "./chunk-
|
|
117
|
+
} from "./chunk-EIQDGAAE.js";
|
|
118
118
|
import {
|
|
119
119
|
readPipeText,
|
|
120
120
|
spawnProcess
|
|
@@ -3538,7 +3538,7 @@ function findCollapsedPasteSpanAt(buffer, pos, opts = {}) {
|
|
|
3538
3538
|
// packages/cli/client/agentRun.ts
|
|
3539
3539
|
import { ulid } from "ulid";
|
|
3540
3540
|
async function loadRunLocalAgentTurn() {
|
|
3541
|
-
const { runLocalAgentTurn } = await import("./agentRuntimeLocal-
|
|
3541
|
+
const { runLocalAgentTurn } = await import("./agentRuntimeLocal-3X3ZTFT2.js");
|
|
3542
3542
|
return runLocalAgentTurn;
|
|
3543
3543
|
}
|
|
3544
3544
|
async function resolveCurrentMachineId(options) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
clearCliLocalRuntimePreparedAgentCache
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3Z6SPX5X.js";
|
|
4
4
|
import {
|
|
5
5
|
getReadableCliDb
|
|
6
6
|
} from "./chunk-WFHXMLHZ.js";
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
resolveAgentRecordFromHybridStore,
|
|
13
13
|
sanitizeAgentRecordForCliOutput,
|
|
14
14
|
writeAgentRecord
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-MNUJETMH.js";
|
|
16
16
|
import {
|
|
17
17
|
resolveCliAgentKeyInput
|
|
18
18
|
} from "./chunk-K6QEHQZ3.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ANTIGRAVITY_CLOUD_CODE_BASE_URL,
|
|
3
3
|
isAntigravityOAuthAgent
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-2NYIVLAY.js";
|
|
5
5
|
import {
|
|
6
6
|
buildCurrentTimeBlock,
|
|
7
7
|
buildIdentityBlock,
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
requiresBareImageUrl,
|
|
10
10
|
resolveToolGuidedSections,
|
|
11
11
|
toBareImageUrlMessages
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-QDNVDGLN.js";
|
|
13
13
|
import {
|
|
14
14
|
convertMessagesToResponsesInput,
|
|
15
15
|
preserveAgentStateFields
|
|
@@ -19,14 +19,14 @@ import {
|
|
|
19
19
|
isOpenAiResponsesModel,
|
|
20
20
|
resolvePlatformChatCompletionsEndpoint,
|
|
21
21
|
resolvePlatformResponsesEndpoint
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-WTPC3XD4.js";
|
|
23
23
|
import {
|
|
24
24
|
MEMORY_USE_GUIDANCE,
|
|
25
25
|
wrapHistoricalSummaryWithReplayGuard
|
|
26
26
|
} from "./chunk-4PWB7JRR.js";
|
|
27
27
|
import {
|
|
28
28
|
waitForAbortableDelay
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-6QP7LEI6.js";
|
|
30
30
|
import {
|
|
31
31
|
createDrainExhaustedResponse,
|
|
32
32
|
isCoreDrainingBody,
|
|
@@ -36,15 +36,15 @@ import {
|
|
|
36
36
|
} from "./chunk-Z5MXSEOJ.js";
|
|
37
37
|
import {
|
|
38
38
|
resolveBuiltinSkillPage
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-2TZP235J.js";
|
|
40
40
|
import {
|
|
41
41
|
estimateTokenCount,
|
|
42
42
|
shouldUseServerProxy
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-O6YCGBJB.js";
|
|
44
44
|
import {
|
|
45
45
|
createFileCredentialBroker,
|
|
46
46
|
fetchServerSyncedCredential
|
|
47
|
-
} from "./chunk-
|
|
47
|
+
} from "./chunk-4ZMTXQFB.js";
|
|
48
48
|
import {
|
|
49
49
|
toErrorMessage
|
|
50
50
|
} from "./chunk-HNMXYYJR.js";
|
|
@@ -52,7 +52,7 @@ import {
|
|
|
52
52
|
clampReasoningEffort,
|
|
53
53
|
getModelConfig,
|
|
54
54
|
isModelSupportReasoningEffort
|
|
55
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-EIQDGAAE.js";
|
|
56
56
|
import {
|
|
57
57
|
isDeepInfraKimiModel,
|
|
58
58
|
isFireworksKimiModel,
|