@vibeapi/cli 0.0.159 → 0.0.161
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/client-config.snapshot.json +203 -43
- package/dist/client-config.snapshot.json +203 -43
- package/dist/lib/model-registry.d.ts +3 -0
- package/dist/lib/model-registry.js +1 -1
- package/dist/lib/tools/codebuddy-models.d.ts +8 -4
- package/dist/lib/tools/codebuddy-models.js +1 -1
- package/dist/lib/tools/workbuddy.js +1 -1
- package/dist/models.json +3 -0
- package/models.json +3 -0
- package/package.json +1 -1
|
@@ -386,7 +386,6 @@
|
|
|
386
386
|
"low",
|
|
387
387
|
"medium",
|
|
388
388
|
"high",
|
|
389
|
-
"xhigh",
|
|
390
389
|
"max"
|
|
391
390
|
]
|
|
392
391
|
},
|
|
@@ -425,7 +424,6 @@
|
|
|
425
424
|
"low",
|
|
426
425
|
"medium",
|
|
427
426
|
"high",
|
|
428
|
-
"xhigh",
|
|
429
427
|
"max"
|
|
430
428
|
]
|
|
431
429
|
},
|
|
@@ -495,7 +493,6 @@
|
|
|
495
493
|
"outputModalities": [
|
|
496
494
|
"text"
|
|
497
495
|
],
|
|
498
|
-
"knowledgeCutoff": "2025-05-31",
|
|
499
496
|
"reasoningEfforts": [
|
|
500
497
|
"none",
|
|
501
498
|
"low",
|
|
@@ -523,7 +520,7 @@
|
|
|
523
520
|
"reasoning": true,
|
|
524
521
|
"imageOutput": false,
|
|
525
522
|
"video": false,
|
|
526
|
-
"structuredOutput":
|
|
523
|
+
"structuredOutput": true,
|
|
527
524
|
"contextWindowTokens": 1000000,
|
|
528
525
|
"maxOutput": 384000,
|
|
529
526
|
"inputModalities": [
|
|
@@ -533,8 +530,8 @@
|
|
|
533
530
|
"outputModalities": [
|
|
534
531
|
"text"
|
|
535
532
|
],
|
|
536
|
-
"knowledgeCutoff": "2025-05-31",
|
|
537
533
|
"reasoningEfforts": [
|
|
534
|
+
"none",
|
|
538
535
|
"low",
|
|
539
536
|
"high",
|
|
540
537
|
"max"
|
|
@@ -570,7 +567,6 @@
|
|
|
570
567
|
"outputModalities": [
|
|
571
568
|
"text"
|
|
572
569
|
],
|
|
573
|
-
"knowledgeCutoff": "2025-05-31",
|
|
574
570
|
"reasoningEfforts": [
|
|
575
571
|
"low",
|
|
576
572
|
"high",
|
|
@@ -613,7 +609,8 @@
|
|
|
613
609
|
]
|
|
614
610
|
},
|
|
615
611
|
"endpoint_types": [
|
|
616
|
-
"openai"
|
|
612
|
+
"openai",
|
|
613
|
+
"anthropic"
|
|
617
614
|
]
|
|
618
615
|
},
|
|
619
616
|
{
|
|
@@ -649,7 +646,8 @@
|
|
|
649
646
|
]
|
|
650
647
|
},
|
|
651
648
|
"endpoint_types": [
|
|
652
|
-
"openai"
|
|
649
|
+
"openai",
|
|
650
|
+
"anthropic"
|
|
653
651
|
]
|
|
654
652
|
},
|
|
655
653
|
{
|
|
@@ -677,7 +675,9 @@
|
|
|
677
675
|
"text"
|
|
678
676
|
],
|
|
679
677
|
"reasoningEfforts": [
|
|
680
|
-
"
|
|
678
|
+
"none",
|
|
679
|
+
"high",
|
|
680
|
+
"max"
|
|
681
681
|
]
|
|
682
682
|
},
|
|
683
683
|
"endpoint_types": [
|
|
@@ -747,6 +747,11 @@
|
|
|
747
747
|
],
|
|
748
748
|
"outputModalities": [
|
|
749
749
|
"text"
|
|
750
|
+
],
|
|
751
|
+
"reasoningEfforts": [
|
|
752
|
+
"low",
|
|
753
|
+
"high",
|
|
754
|
+
"max"
|
|
750
755
|
]
|
|
751
756
|
},
|
|
752
757
|
"endpoint_types": [
|
|
@@ -763,7 +768,32 @@
|
|
|
763
768
|
"recommended": false,
|
|
764
769
|
"hidden": false,
|
|
765
770
|
"context_window": 1000000,
|
|
771
|
+
"capabilities": {
|
|
772
|
+
"functionCall": true,
|
|
773
|
+
"vision": true,
|
|
774
|
+
"reasoning": true,
|
|
775
|
+
"imageOutput": false,
|
|
776
|
+
"video": true,
|
|
777
|
+
"structuredOutput": true,
|
|
778
|
+
"contextWindowTokens": 1000000,
|
|
779
|
+
"maxOutput": 131072,
|
|
780
|
+
"inputModalities": [
|
|
781
|
+
"text",
|
|
782
|
+
"image",
|
|
783
|
+
"video"
|
|
784
|
+
],
|
|
785
|
+
"outputModalities": [
|
|
786
|
+
"text"
|
|
787
|
+
],
|
|
788
|
+
"reasoningEfforts": [
|
|
789
|
+
"none",
|
|
790
|
+
"low",
|
|
791
|
+
"medium",
|
|
792
|
+
"xhigh"
|
|
793
|
+
]
|
|
794
|
+
},
|
|
766
795
|
"endpoint_types": [
|
|
796
|
+
"anthropic",
|
|
767
797
|
"openai"
|
|
768
798
|
]
|
|
769
799
|
},
|
|
@@ -776,6 +806,30 @@
|
|
|
776
806
|
"recommended": false,
|
|
777
807
|
"hidden": false,
|
|
778
808
|
"context_window": 1000000,
|
|
809
|
+
"capabilities": {
|
|
810
|
+
"functionCall": true,
|
|
811
|
+
"vision": true,
|
|
812
|
+
"reasoning": true,
|
|
813
|
+
"imageOutput": false,
|
|
814
|
+
"video": true,
|
|
815
|
+
"structuredOutput": true,
|
|
816
|
+
"contextWindowTokens": 1000000,
|
|
817
|
+
"maxOutput": 131072,
|
|
818
|
+
"inputModalities": [
|
|
819
|
+
"text",
|
|
820
|
+
"image",
|
|
821
|
+
"video"
|
|
822
|
+
],
|
|
823
|
+
"outputModalities": [
|
|
824
|
+
"text"
|
|
825
|
+
],
|
|
826
|
+
"reasoningEfforts": [
|
|
827
|
+
"none",
|
|
828
|
+
"low",
|
|
829
|
+
"medium",
|
|
830
|
+
"xhigh"
|
|
831
|
+
]
|
|
832
|
+
},
|
|
779
833
|
"endpoint_types": [
|
|
780
834
|
"openai"
|
|
781
835
|
]
|
|
@@ -789,9 +843,24 @@
|
|
|
789
843
|
"recommended": false,
|
|
790
844
|
"hidden": true,
|
|
791
845
|
"context_window": 1000000,
|
|
846
|
+
"capabilities": {
|
|
847
|
+
"functionCall": true,
|
|
848
|
+
"vision": false,
|
|
849
|
+
"reasoning": true,
|
|
850
|
+
"imageOutput": false,
|
|
851
|
+
"video": false,
|
|
852
|
+
"contextWindowTokens": 1000000,
|
|
853
|
+
"maxOutput": 131072,
|
|
854
|
+
"inputModalities": [
|
|
855
|
+
"text"
|
|
856
|
+
],
|
|
857
|
+
"outputModalities": [
|
|
858
|
+
"text"
|
|
859
|
+
]
|
|
860
|
+
},
|
|
792
861
|
"endpoint_types": [
|
|
793
|
-
"
|
|
794
|
-
"
|
|
862
|
+
"anthropic",
|
|
863
|
+
"openai"
|
|
795
864
|
]
|
|
796
865
|
},
|
|
797
866
|
{
|
|
@@ -803,9 +872,27 @@
|
|
|
803
872
|
"recommended": false,
|
|
804
873
|
"hidden": true,
|
|
805
874
|
"context_window": 1000000,
|
|
875
|
+
"capabilities": {
|
|
876
|
+
"functionCall": true,
|
|
877
|
+
"vision": true,
|
|
878
|
+
"reasoning": true,
|
|
879
|
+
"imageOutput": false,
|
|
880
|
+
"video": true,
|
|
881
|
+
"structuredOutput": true,
|
|
882
|
+
"contextWindowTokens": 1000000,
|
|
883
|
+
"maxOutput": 131072,
|
|
884
|
+
"inputModalities": [
|
|
885
|
+
"text",
|
|
886
|
+
"image",
|
|
887
|
+
"video"
|
|
888
|
+
],
|
|
889
|
+
"outputModalities": [
|
|
890
|
+
"text"
|
|
891
|
+
]
|
|
892
|
+
},
|
|
806
893
|
"endpoint_types": [
|
|
807
|
-
"
|
|
808
|
-
"
|
|
894
|
+
"anthropic",
|
|
895
|
+
"openai"
|
|
809
896
|
]
|
|
810
897
|
},
|
|
811
898
|
{
|
|
@@ -824,7 +911,7 @@
|
|
|
824
911
|
"imageOutput": false,
|
|
825
912
|
"video": true,
|
|
826
913
|
"contextWindowTokens": 1000000,
|
|
827
|
-
"maxOutput":
|
|
914
|
+
"maxOutput": 524288,
|
|
828
915
|
"inputModalities": [
|
|
829
916
|
"text",
|
|
830
917
|
"image",
|
|
@@ -832,11 +919,6 @@
|
|
|
832
919
|
],
|
|
833
920
|
"outputModalities": [
|
|
834
921
|
"text"
|
|
835
|
-
],
|
|
836
|
-
"knowledgeCutoff": "2026-01-31",
|
|
837
|
-
"reasoningEfforts": [
|
|
838
|
-
"low",
|
|
839
|
-
"high"
|
|
840
922
|
]
|
|
841
923
|
},
|
|
842
924
|
"endpoint_types": [
|
|
@@ -885,9 +967,6 @@
|
|
|
885
967
|
"xhigh",
|
|
886
968
|
"max"
|
|
887
969
|
],
|
|
888
|
-
"functionCallEndpoints": [
|
|
889
|
-
"openai-response"
|
|
890
|
-
],
|
|
891
970
|
"settings": {
|
|
892
971
|
"disabledParams": [
|
|
893
972
|
"temperature",
|
|
@@ -946,9 +1025,6 @@
|
|
|
946
1025
|
"max"
|
|
947
1026
|
],
|
|
948
1027
|
"defaultReasoningEffort": "medium",
|
|
949
|
-
"functionCallEndpoints": [
|
|
950
|
-
"openai-response"
|
|
951
|
-
],
|
|
952
1028
|
"settings": {
|
|
953
1029
|
"disabledParams": [
|
|
954
1030
|
"temperature",
|
|
@@ -1251,7 +1327,6 @@
|
|
|
1251
1327
|
"outputModalities": [
|
|
1252
1328
|
"text"
|
|
1253
1329
|
],
|
|
1254
|
-
"knowledgeCutoff": "2025-05-31",
|
|
1255
1330
|
"reasoningEfforts": [
|
|
1256
1331
|
"none",
|
|
1257
1332
|
"low",
|
|
@@ -1279,7 +1354,7 @@
|
|
|
1279
1354
|
"reasoning": true,
|
|
1280
1355
|
"imageOutput": false,
|
|
1281
1356
|
"video": false,
|
|
1282
|
-
"structuredOutput":
|
|
1357
|
+
"structuredOutput": true,
|
|
1283
1358
|
"contextWindowTokens": 1000000,
|
|
1284
1359
|
"maxOutput": 384000,
|
|
1285
1360
|
"inputModalities": [
|
|
@@ -1289,8 +1364,8 @@
|
|
|
1289
1364
|
"outputModalities": [
|
|
1290
1365
|
"text"
|
|
1291
1366
|
],
|
|
1292
|
-
"knowledgeCutoff": "2025-05-31",
|
|
1293
1367
|
"reasoningEfforts": [
|
|
1368
|
+
"none",
|
|
1294
1369
|
"low",
|
|
1295
1370
|
"high",
|
|
1296
1371
|
"max"
|
|
@@ -1326,7 +1401,6 @@
|
|
|
1326
1401
|
"outputModalities": [
|
|
1327
1402
|
"text"
|
|
1328
1403
|
],
|
|
1329
|
-
"knowledgeCutoff": "2025-05-31",
|
|
1330
1404
|
"reasoningEfforts": [
|
|
1331
1405
|
"low",
|
|
1332
1406
|
"high",
|
|
@@ -1369,7 +1443,8 @@
|
|
|
1369
1443
|
]
|
|
1370
1444
|
},
|
|
1371
1445
|
"endpoint_types": [
|
|
1372
|
-
"openai"
|
|
1446
|
+
"openai",
|
|
1447
|
+
"anthropic"
|
|
1373
1448
|
]
|
|
1374
1449
|
},
|
|
1375
1450
|
{
|
|
@@ -1405,7 +1480,8 @@
|
|
|
1405
1480
|
]
|
|
1406
1481
|
},
|
|
1407
1482
|
"endpoint_types": [
|
|
1408
|
-
"openai"
|
|
1483
|
+
"openai",
|
|
1484
|
+
"anthropic"
|
|
1409
1485
|
]
|
|
1410
1486
|
},
|
|
1411
1487
|
{
|
|
@@ -1433,7 +1509,9 @@
|
|
|
1433
1509
|
"text"
|
|
1434
1510
|
],
|
|
1435
1511
|
"reasoningEfforts": [
|
|
1436
|
-
"
|
|
1512
|
+
"none",
|
|
1513
|
+
"high",
|
|
1514
|
+
"max"
|
|
1437
1515
|
]
|
|
1438
1516
|
},
|
|
1439
1517
|
"endpoint_types": [
|
|
@@ -1503,6 +1581,11 @@
|
|
|
1503
1581
|
],
|
|
1504
1582
|
"outputModalities": [
|
|
1505
1583
|
"text"
|
|
1584
|
+
],
|
|
1585
|
+
"reasoningEfforts": [
|
|
1586
|
+
"low",
|
|
1587
|
+
"high",
|
|
1588
|
+
"max"
|
|
1506
1589
|
]
|
|
1507
1590
|
},
|
|
1508
1591
|
"endpoint_types": [
|
|
@@ -1519,7 +1602,32 @@
|
|
|
1519
1602
|
"recommended": false,
|
|
1520
1603
|
"hidden": false,
|
|
1521
1604
|
"context_window": 1000000,
|
|
1605
|
+
"capabilities": {
|
|
1606
|
+
"functionCall": true,
|
|
1607
|
+
"vision": true,
|
|
1608
|
+
"reasoning": true,
|
|
1609
|
+
"imageOutput": false,
|
|
1610
|
+
"video": true,
|
|
1611
|
+
"structuredOutput": true,
|
|
1612
|
+
"contextWindowTokens": 1000000,
|
|
1613
|
+
"maxOutput": 131072,
|
|
1614
|
+
"inputModalities": [
|
|
1615
|
+
"text",
|
|
1616
|
+
"image",
|
|
1617
|
+
"video"
|
|
1618
|
+
],
|
|
1619
|
+
"outputModalities": [
|
|
1620
|
+
"text"
|
|
1621
|
+
],
|
|
1622
|
+
"reasoningEfforts": [
|
|
1623
|
+
"none",
|
|
1624
|
+
"low",
|
|
1625
|
+
"medium",
|
|
1626
|
+
"xhigh"
|
|
1627
|
+
]
|
|
1628
|
+
},
|
|
1522
1629
|
"endpoint_types": [
|
|
1630
|
+
"anthropic",
|
|
1523
1631
|
"openai"
|
|
1524
1632
|
]
|
|
1525
1633
|
},
|
|
@@ -1532,6 +1640,30 @@
|
|
|
1532
1640
|
"recommended": false,
|
|
1533
1641
|
"hidden": false,
|
|
1534
1642
|
"context_window": 1000000,
|
|
1643
|
+
"capabilities": {
|
|
1644
|
+
"functionCall": true,
|
|
1645
|
+
"vision": true,
|
|
1646
|
+
"reasoning": true,
|
|
1647
|
+
"imageOutput": false,
|
|
1648
|
+
"video": true,
|
|
1649
|
+
"structuredOutput": true,
|
|
1650
|
+
"contextWindowTokens": 1000000,
|
|
1651
|
+
"maxOutput": 131072,
|
|
1652
|
+
"inputModalities": [
|
|
1653
|
+
"text",
|
|
1654
|
+
"image",
|
|
1655
|
+
"video"
|
|
1656
|
+
],
|
|
1657
|
+
"outputModalities": [
|
|
1658
|
+
"text"
|
|
1659
|
+
],
|
|
1660
|
+
"reasoningEfforts": [
|
|
1661
|
+
"none",
|
|
1662
|
+
"low",
|
|
1663
|
+
"medium",
|
|
1664
|
+
"xhigh"
|
|
1665
|
+
]
|
|
1666
|
+
},
|
|
1535
1667
|
"endpoint_types": [
|
|
1536
1668
|
"openai"
|
|
1537
1669
|
]
|
|
@@ -1545,9 +1677,24 @@
|
|
|
1545
1677
|
"recommended": false,
|
|
1546
1678
|
"hidden": true,
|
|
1547
1679
|
"context_window": 1000000,
|
|
1680
|
+
"capabilities": {
|
|
1681
|
+
"functionCall": true,
|
|
1682
|
+
"vision": false,
|
|
1683
|
+
"reasoning": true,
|
|
1684
|
+
"imageOutput": false,
|
|
1685
|
+
"video": false,
|
|
1686
|
+
"contextWindowTokens": 1000000,
|
|
1687
|
+
"maxOutput": 131072,
|
|
1688
|
+
"inputModalities": [
|
|
1689
|
+
"text"
|
|
1690
|
+
],
|
|
1691
|
+
"outputModalities": [
|
|
1692
|
+
"text"
|
|
1693
|
+
]
|
|
1694
|
+
},
|
|
1548
1695
|
"endpoint_types": [
|
|
1549
|
-
"
|
|
1550
|
-
"
|
|
1696
|
+
"anthropic",
|
|
1697
|
+
"openai"
|
|
1551
1698
|
]
|
|
1552
1699
|
},
|
|
1553
1700
|
{
|
|
@@ -1559,9 +1706,27 @@
|
|
|
1559
1706
|
"recommended": false,
|
|
1560
1707
|
"hidden": true,
|
|
1561
1708
|
"context_window": 1000000,
|
|
1709
|
+
"capabilities": {
|
|
1710
|
+
"functionCall": true,
|
|
1711
|
+
"vision": true,
|
|
1712
|
+
"reasoning": true,
|
|
1713
|
+
"imageOutput": false,
|
|
1714
|
+
"video": true,
|
|
1715
|
+
"structuredOutput": true,
|
|
1716
|
+
"contextWindowTokens": 1000000,
|
|
1717
|
+
"maxOutput": 131072,
|
|
1718
|
+
"inputModalities": [
|
|
1719
|
+
"text",
|
|
1720
|
+
"image",
|
|
1721
|
+
"video"
|
|
1722
|
+
],
|
|
1723
|
+
"outputModalities": [
|
|
1724
|
+
"text"
|
|
1725
|
+
]
|
|
1726
|
+
},
|
|
1562
1727
|
"endpoint_types": [
|
|
1563
|
-
"
|
|
1564
|
-
"
|
|
1728
|
+
"anthropic",
|
|
1729
|
+
"openai"
|
|
1565
1730
|
]
|
|
1566
1731
|
},
|
|
1567
1732
|
{
|
|
@@ -1580,7 +1745,7 @@
|
|
|
1580
1745
|
"imageOutput": false,
|
|
1581
1746
|
"video": true,
|
|
1582
1747
|
"contextWindowTokens": 1000000,
|
|
1583
|
-
"maxOutput":
|
|
1748
|
+
"maxOutput": 524288,
|
|
1584
1749
|
"inputModalities": [
|
|
1585
1750
|
"text",
|
|
1586
1751
|
"image",
|
|
@@ -1588,11 +1753,6 @@
|
|
|
1588
1753
|
],
|
|
1589
1754
|
"outputModalities": [
|
|
1590
1755
|
"text"
|
|
1591
|
-
],
|
|
1592
|
-
"knowledgeCutoff": "2026-01-31",
|
|
1593
|
-
"reasoningEfforts": [
|
|
1594
|
-
"low",
|
|
1595
|
-
"high"
|
|
1596
1756
|
]
|
|
1597
1757
|
},
|
|
1598
1758
|
"endpoint_types": [
|
|
@@ -1657,7 +1817,7 @@
|
|
|
1657
1817
|
"video": true,
|
|
1658
1818
|
"structuredOutput": true,
|
|
1659
1819
|
"contextWindowTokens": 1048576,
|
|
1660
|
-
"maxOutput":
|
|
1820
|
+
"maxOutput": 65536,
|
|
1661
1821
|
"inputModalities": [
|
|
1662
1822
|
"text",
|
|
1663
1823
|
"image",
|
|
@@ -386,7 +386,6 @@
|
|
|
386
386
|
"low",
|
|
387
387
|
"medium",
|
|
388
388
|
"high",
|
|
389
|
-
"xhigh",
|
|
390
389
|
"max"
|
|
391
390
|
]
|
|
392
391
|
},
|
|
@@ -425,7 +424,6 @@
|
|
|
425
424
|
"low",
|
|
426
425
|
"medium",
|
|
427
426
|
"high",
|
|
428
|
-
"xhigh",
|
|
429
427
|
"max"
|
|
430
428
|
]
|
|
431
429
|
},
|
|
@@ -495,7 +493,6 @@
|
|
|
495
493
|
"outputModalities": [
|
|
496
494
|
"text"
|
|
497
495
|
],
|
|
498
|
-
"knowledgeCutoff": "2025-05-31",
|
|
499
496
|
"reasoningEfforts": [
|
|
500
497
|
"none",
|
|
501
498
|
"low",
|
|
@@ -523,7 +520,7 @@
|
|
|
523
520
|
"reasoning": true,
|
|
524
521
|
"imageOutput": false,
|
|
525
522
|
"video": false,
|
|
526
|
-
"structuredOutput":
|
|
523
|
+
"structuredOutput": true,
|
|
527
524
|
"contextWindowTokens": 1000000,
|
|
528
525
|
"maxOutput": 384000,
|
|
529
526
|
"inputModalities": [
|
|
@@ -533,8 +530,8 @@
|
|
|
533
530
|
"outputModalities": [
|
|
534
531
|
"text"
|
|
535
532
|
],
|
|
536
|
-
"knowledgeCutoff": "2025-05-31",
|
|
537
533
|
"reasoningEfforts": [
|
|
534
|
+
"none",
|
|
538
535
|
"low",
|
|
539
536
|
"high",
|
|
540
537
|
"max"
|
|
@@ -570,7 +567,6 @@
|
|
|
570
567
|
"outputModalities": [
|
|
571
568
|
"text"
|
|
572
569
|
],
|
|
573
|
-
"knowledgeCutoff": "2025-05-31",
|
|
574
570
|
"reasoningEfforts": [
|
|
575
571
|
"low",
|
|
576
572
|
"high",
|
|
@@ -613,7 +609,8 @@
|
|
|
613
609
|
]
|
|
614
610
|
},
|
|
615
611
|
"endpoint_types": [
|
|
616
|
-
"openai"
|
|
612
|
+
"openai",
|
|
613
|
+
"anthropic"
|
|
617
614
|
]
|
|
618
615
|
},
|
|
619
616
|
{
|
|
@@ -649,7 +646,8 @@
|
|
|
649
646
|
]
|
|
650
647
|
},
|
|
651
648
|
"endpoint_types": [
|
|
652
|
-
"openai"
|
|
649
|
+
"openai",
|
|
650
|
+
"anthropic"
|
|
653
651
|
]
|
|
654
652
|
},
|
|
655
653
|
{
|
|
@@ -677,7 +675,9 @@
|
|
|
677
675
|
"text"
|
|
678
676
|
],
|
|
679
677
|
"reasoningEfforts": [
|
|
680
|
-
"
|
|
678
|
+
"none",
|
|
679
|
+
"high",
|
|
680
|
+
"max"
|
|
681
681
|
]
|
|
682
682
|
},
|
|
683
683
|
"endpoint_types": [
|
|
@@ -747,6 +747,11 @@
|
|
|
747
747
|
],
|
|
748
748
|
"outputModalities": [
|
|
749
749
|
"text"
|
|
750
|
+
],
|
|
751
|
+
"reasoningEfforts": [
|
|
752
|
+
"low",
|
|
753
|
+
"high",
|
|
754
|
+
"max"
|
|
750
755
|
]
|
|
751
756
|
},
|
|
752
757
|
"endpoint_types": [
|
|
@@ -763,7 +768,32 @@
|
|
|
763
768
|
"recommended": false,
|
|
764
769
|
"hidden": false,
|
|
765
770
|
"context_window": 1000000,
|
|
771
|
+
"capabilities": {
|
|
772
|
+
"functionCall": true,
|
|
773
|
+
"vision": true,
|
|
774
|
+
"reasoning": true,
|
|
775
|
+
"imageOutput": false,
|
|
776
|
+
"video": true,
|
|
777
|
+
"structuredOutput": true,
|
|
778
|
+
"contextWindowTokens": 1000000,
|
|
779
|
+
"maxOutput": 131072,
|
|
780
|
+
"inputModalities": [
|
|
781
|
+
"text",
|
|
782
|
+
"image",
|
|
783
|
+
"video"
|
|
784
|
+
],
|
|
785
|
+
"outputModalities": [
|
|
786
|
+
"text"
|
|
787
|
+
],
|
|
788
|
+
"reasoningEfforts": [
|
|
789
|
+
"none",
|
|
790
|
+
"low",
|
|
791
|
+
"medium",
|
|
792
|
+
"xhigh"
|
|
793
|
+
]
|
|
794
|
+
},
|
|
766
795
|
"endpoint_types": [
|
|
796
|
+
"anthropic",
|
|
767
797
|
"openai"
|
|
768
798
|
]
|
|
769
799
|
},
|
|
@@ -776,6 +806,30 @@
|
|
|
776
806
|
"recommended": false,
|
|
777
807
|
"hidden": false,
|
|
778
808
|
"context_window": 1000000,
|
|
809
|
+
"capabilities": {
|
|
810
|
+
"functionCall": true,
|
|
811
|
+
"vision": true,
|
|
812
|
+
"reasoning": true,
|
|
813
|
+
"imageOutput": false,
|
|
814
|
+
"video": true,
|
|
815
|
+
"structuredOutput": true,
|
|
816
|
+
"contextWindowTokens": 1000000,
|
|
817
|
+
"maxOutput": 131072,
|
|
818
|
+
"inputModalities": [
|
|
819
|
+
"text",
|
|
820
|
+
"image",
|
|
821
|
+
"video"
|
|
822
|
+
],
|
|
823
|
+
"outputModalities": [
|
|
824
|
+
"text"
|
|
825
|
+
],
|
|
826
|
+
"reasoningEfforts": [
|
|
827
|
+
"none",
|
|
828
|
+
"low",
|
|
829
|
+
"medium",
|
|
830
|
+
"xhigh"
|
|
831
|
+
]
|
|
832
|
+
},
|
|
779
833
|
"endpoint_types": [
|
|
780
834
|
"openai"
|
|
781
835
|
]
|
|
@@ -789,9 +843,24 @@
|
|
|
789
843
|
"recommended": false,
|
|
790
844
|
"hidden": true,
|
|
791
845
|
"context_window": 1000000,
|
|
846
|
+
"capabilities": {
|
|
847
|
+
"functionCall": true,
|
|
848
|
+
"vision": false,
|
|
849
|
+
"reasoning": true,
|
|
850
|
+
"imageOutput": false,
|
|
851
|
+
"video": false,
|
|
852
|
+
"contextWindowTokens": 1000000,
|
|
853
|
+
"maxOutput": 131072,
|
|
854
|
+
"inputModalities": [
|
|
855
|
+
"text"
|
|
856
|
+
],
|
|
857
|
+
"outputModalities": [
|
|
858
|
+
"text"
|
|
859
|
+
]
|
|
860
|
+
},
|
|
792
861
|
"endpoint_types": [
|
|
793
|
-
"
|
|
794
|
-
"
|
|
862
|
+
"anthropic",
|
|
863
|
+
"openai"
|
|
795
864
|
]
|
|
796
865
|
},
|
|
797
866
|
{
|
|
@@ -803,9 +872,27 @@
|
|
|
803
872
|
"recommended": false,
|
|
804
873
|
"hidden": true,
|
|
805
874
|
"context_window": 1000000,
|
|
875
|
+
"capabilities": {
|
|
876
|
+
"functionCall": true,
|
|
877
|
+
"vision": true,
|
|
878
|
+
"reasoning": true,
|
|
879
|
+
"imageOutput": false,
|
|
880
|
+
"video": true,
|
|
881
|
+
"structuredOutput": true,
|
|
882
|
+
"contextWindowTokens": 1000000,
|
|
883
|
+
"maxOutput": 131072,
|
|
884
|
+
"inputModalities": [
|
|
885
|
+
"text",
|
|
886
|
+
"image",
|
|
887
|
+
"video"
|
|
888
|
+
],
|
|
889
|
+
"outputModalities": [
|
|
890
|
+
"text"
|
|
891
|
+
]
|
|
892
|
+
},
|
|
806
893
|
"endpoint_types": [
|
|
807
|
-
"
|
|
808
|
-
"
|
|
894
|
+
"anthropic",
|
|
895
|
+
"openai"
|
|
809
896
|
]
|
|
810
897
|
},
|
|
811
898
|
{
|
|
@@ -824,7 +911,7 @@
|
|
|
824
911
|
"imageOutput": false,
|
|
825
912
|
"video": true,
|
|
826
913
|
"contextWindowTokens": 1000000,
|
|
827
|
-
"maxOutput":
|
|
914
|
+
"maxOutput": 524288,
|
|
828
915
|
"inputModalities": [
|
|
829
916
|
"text",
|
|
830
917
|
"image",
|
|
@@ -832,11 +919,6 @@
|
|
|
832
919
|
],
|
|
833
920
|
"outputModalities": [
|
|
834
921
|
"text"
|
|
835
|
-
],
|
|
836
|
-
"knowledgeCutoff": "2026-01-31",
|
|
837
|
-
"reasoningEfforts": [
|
|
838
|
-
"low",
|
|
839
|
-
"high"
|
|
840
922
|
]
|
|
841
923
|
},
|
|
842
924
|
"endpoint_types": [
|
|
@@ -885,9 +967,6 @@
|
|
|
885
967
|
"xhigh",
|
|
886
968
|
"max"
|
|
887
969
|
],
|
|
888
|
-
"functionCallEndpoints": [
|
|
889
|
-
"openai-response"
|
|
890
|
-
],
|
|
891
970
|
"settings": {
|
|
892
971
|
"disabledParams": [
|
|
893
972
|
"temperature",
|
|
@@ -946,9 +1025,6 @@
|
|
|
946
1025
|
"max"
|
|
947
1026
|
],
|
|
948
1027
|
"defaultReasoningEffort": "medium",
|
|
949
|
-
"functionCallEndpoints": [
|
|
950
|
-
"openai-response"
|
|
951
|
-
],
|
|
952
1028
|
"settings": {
|
|
953
1029
|
"disabledParams": [
|
|
954
1030
|
"temperature",
|
|
@@ -1251,7 +1327,6 @@
|
|
|
1251
1327
|
"outputModalities": [
|
|
1252
1328
|
"text"
|
|
1253
1329
|
],
|
|
1254
|
-
"knowledgeCutoff": "2025-05-31",
|
|
1255
1330
|
"reasoningEfforts": [
|
|
1256
1331
|
"none",
|
|
1257
1332
|
"low",
|
|
@@ -1279,7 +1354,7 @@
|
|
|
1279
1354
|
"reasoning": true,
|
|
1280
1355
|
"imageOutput": false,
|
|
1281
1356
|
"video": false,
|
|
1282
|
-
"structuredOutput":
|
|
1357
|
+
"structuredOutput": true,
|
|
1283
1358
|
"contextWindowTokens": 1000000,
|
|
1284
1359
|
"maxOutput": 384000,
|
|
1285
1360
|
"inputModalities": [
|
|
@@ -1289,8 +1364,8 @@
|
|
|
1289
1364
|
"outputModalities": [
|
|
1290
1365
|
"text"
|
|
1291
1366
|
],
|
|
1292
|
-
"knowledgeCutoff": "2025-05-31",
|
|
1293
1367
|
"reasoningEfforts": [
|
|
1368
|
+
"none",
|
|
1294
1369
|
"low",
|
|
1295
1370
|
"high",
|
|
1296
1371
|
"max"
|
|
@@ -1326,7 +1401,6 @@
|
|
|
1326
1401
|
"outputModalities": [
|
|
1327
1402
|
"text"
|
|
1328
1403
|
],
|
|
1329
|
-
"knowledgeCutoff": "2025-05-31",
|
|
1330
1404
|
"reasoningEfforts": [
|
|
1331
1405
|
"low",
|
|
1332
1406
|
"high",
|
|
@@ -1369,7 +1443,8 @@
|
|
|
1369
1443
|
]
|
|
1370
1444
|
},
|
|
1371
1445
|
"endpoint_types": [
|
|
1372
|
-
"openai"
|
|
1446
|
+
"openai",
|
|
1447
|
+
"anthropic"
|
|
1373
1448
|
]
|
|
1374
1449
|
},
|
|
1375
1450
|
{
|
|
@@ -1405,7 +1480,8 @@
|
|
|
1405
1480
|
]
|
|
1406
1481
|
},
|
|
1407
1482
|
"endpoint_types": [
|
|
1408
|
-
"openai"
|
|
1483
|
+
"openai",
|
|
1484
|
+
"anthropic"
|
|
1409
1485
|
]
|
|
1410
1486
|
},
|
|
1411
1487
|
{
|
|
@@ -1433,7 +1509,9 @@
|
|
|
1433
1509
|
"text"
|
|
1434
1510
|
],
|
|
1435
1511
|
"reasoningEfforts": [
|
|
1436
|
-
"
|
|
1512
|
+
"none",
|
|
1513
|
+
"high",
|
|
1514
|
+
"max"
|
|
1437
1515
|
]
|
|
1438
1516
|
},
|
|
1439
1517
|
"endpoint_types": [
|
|
@@ -1503,6 +1581,11 @@
|
|
|
1503
1581
|
],
|
|
1504
1582
|
"outputModalities": [
|
|
1505
1583
|
"text"
|
|
1584
|
+
],
|
|
1585
|
+
"reasoningEfforts": [
|
|
1586
|
+
"low",
|
|
1587
|
+
"high",
|
|
1588
|
+
"max"
|
|
1506
1589
|
]
|
|
1507
1590
|
},
|
|
1508
1591
|
"endpoint_types": [
|
|
@@ -1519,7 +1602,32 @@
|
|
|
1519
1602
|
"recommended": false,
|
|
1520
1603
|
"hidden": false,
|
|
1521
1604
|
"context_window": 1000000,
|
|
1605
|
+
"capabilities": {
|
|
1606
|
+
"functionCall": true,
|
|
1607
|
+
"vision": true,
|
|
1608
|
+
"reasoning": true,
|
|
1609
|
+
"imageOutput": false,
|
|
1610
|
+
"video": true,
|
|
1611
|
+
"structuredOutput": true,
|
|
1612
|
+
"contextWindowTokens": 1000000,
|
|
1613
|
+
"maxOutput": 131072,
|
|
1614
|
+
"inputModalities": [
|
|
1615
|
+
"text",
|
|
1616
|
+
"image",
|
|
1617
|
+
"video"
|
|
1618
|
+
],
|
|
1619
|
+
"outputModalities": [
|
|
1620
|
+
"text"
|
|
1621
|
+
],
|
|
1622
|
+
"reasoningEfforts": [
|
|
1623
|
+
"none",
|
|
1624
|
+
"low",
|
|
1625
|
+
"medium",
|
|
1626
|
+
"xhigh"
|
|
1627
|
+
]
|
|
1628
|
+
},
|
|
1522
1629
|
"endpoint_types": [
|
|
1630
|
+
"anthropic",
|
|
1523
1631
|
"openai"
|
|
1524
1632
|
]
|
|
1525
1633
|
},
|
|
@@ -1532,6 +1640,30 @@
|
|
|
1532
1640
|
"recommended": false,
|
|
1533
1641
|
"hidden": false,
|
|
1534
1642
|
"context_window": 1000000,
|
|
1643
|
+
"capabilities": {
|
|
1644
|
+
"functionCall": true,
|
|
1645
|
+
"vision": true,
|
|
1646
|
+
"reasoning": true,
|
|
1647
|
+
"imageOutput": false,
|
|
1648
|
+
"video": true,
|
|
1649
|
+
"structuredOutput": true,
|
|
1650
|
+
"contextWindowTokens": 1000000,
|
|
1651
|
+
"maxOutput": 131072,
|
|
1652
|
+
"inputModalities": [
|
|
1653
|
+
"text",
|
|
1654
|
+
"image",
|
|
1655
|
+
"video"
|
|
1656
|
+
],
|
|
1657
|
+
"outputModalities": [
|
|
1658
|
+
"text"
|
|
1659
|
+
],
|
|
1660
|
+
"reasoningEfforts": [
|
|
1661
|
+
"none",
|
|
1662
|
+
"low",
|
|
1663
|
+
"medium",
|
|
1664
|
+
"xhigh"
|
|
1665
|
+
]
|
|
1666
|
+
},
|
|
1535
1667
|
"endpoint_types": [
|
|
1536
1668
|
"openai"
|
|
1537
1669
|
]
|
|
@@ -1545,9 +1677,24 @@
|
|
|
1545
1677
|
"recommended": false,
|
|
1546
1678
|
"hidden": true,
|
|
1547
1679
|
"context_window": 1000000,
|
|
1680
|
+
"capabilities": {
|
|
1681
|
+
"functionCall": true,
|
|
1682
|
+
"vision": false,
|
|
1683
|
+
"reasoning": true,
|
|
1684
|
+
"imageOutput": false,
|
|
1685
|
+
"video": false,
|
|
1686
|
+
"contextWindowTokens": 1000000,
|
|
1687
|
+
"maxOutput": 131072,
|
|
1688
|
+
"inputModalities": [
|
|
1689
|
+
"text"
|
|
1690
|
+
],
|
|
1691
|
+
"outputModalities": [
|
|
1692
|
+
"text"
|
|
1693
|
+
]
|
|
1694
|
+
},
|
|
1548
1695
|
"endpoint_types": [
|
|
1549
|
-
"
|
|
1550
|
-
"
|
|
1696
|
+
"anthropic",
|
|
1697
|
+
"openai"
|
|
1551
1698
|
]
|
|
1552
1699
|
},
|
|
1553
1700
|
{
|
|
@@ -1559,9 +1706,27 @@
|
|
|
1559
1706
|
"recommended": false,
|
|
1560
1707
|
"hidden": true,
|
|
1561
1708
|
"context_window": 1000000,
|
|
1709
|
+
"capabilities": {
|
|
1710
|
+
"functionCall": true,
|
|
1711
|
+
"vision": true,
|
|
1712
|
+
"reasoning": true,
|
|
1713
|
+
"imageOutput": false,
|
|
1714
|
+
"video": true,
|
|
1715
|
+
"structuredOutput": true,
|
|
1716
|
+
"contextWindowTokens": 1000000,
|
|
1717
|
+
"maxOutput": 131072,
|
|
1718
|
+
"inputModalities": [
|
|
1719
|
+
"text",
|
|
1720
|
+
"image",
|
|
1721
|
+
"video"
|
|
1722
|
+
],
|
|
1723
|
+
"outputModalities": [
|
|
1724
|
+
"text"
|
|
1725
|
+
]
|
|
1726
|
+
},
|
|
1562
1727
|
"endpoint_types": [
|
|
1563
|
-
"
|
|
1564
|
-
"
|
|
1728
|
+
"anthropic",
|
|
1729
|
+
"openai"
|
|
1565
1730
|
]
|
|
1566
1731
|
},
|
|
1567
1732
|
{
|
|
@@ -1580,7 +1745,7 @@
|
|
|
1580
1745
|
"imageOutput": false,
|
|
1581
1746
|
"video": true,
|
|
1582
1747
|
"contextWindowTokens": 1000000,
|
|
1583
|
-
"maxOutput":
|
|
1748
|
+
"maxOutput": 524288,
|
|
1584
1749
|
"inputModalities": [
|
|
1585
1750
|
"text",
|
|
1586
1751
|
"image",
|
|
@@ -1588,11 +1753,6 @@
|
|
|
1588
1753
|
],
|
|
1589
1754
|
"outputModalities": [
|
|
1590
1755
|
"text"
|
|
1591
|
-
],
|
|
1592
|
-
"knowledgeCutoff": "2026-01-31",
|
|
1593
|
-
"reasoningEfforts": [
|
|
1594
|
-
"low",
|
|
1595
|
-
"high"
|
|
1596
1756
|
]
|
|
1597
1757
|
},
|
|
1598
1758
|
"endpoint_types": [
|
|
@@ -1657,7 +1817,7 @@
|
|
|
1657
1817
|
"video": true,
|
|
1658
1818
|
"structuredOutput": true,
|
|
1659
1819
|
"contextWindowTokens": 1048576,
|
|
1660
|
-
"maxOutput":
|
|
1820
|
+
"maxOutput": 65536,
|
|
1661
1821
|
"inputModalities": [
|
|
1662
1822
|
"text",
|
|
1663
1823
|
"image",
|
|
@@ -87,6 +87,8 @@ export interface ModelRegistryData {
|
|
|
87
87
|
defaultToolModel?: string;
|
|
88
88
|
/** Per-tool default model. Empty string (e.g. claude-code) means "use the tool's built-in default". */
|
|
89
89
|
toolDefaults?: Record<string, string>;
|
|
90
|
+
/** Models a tool's short menu lists on top of its usual picks (tool id → model ids). */
|
|
91
|
+
toolMenuModels?: Record<string, string[]>;
|
|
90
92
|
presets: ModelPreset[];
|
|
91
93
|
claudeCode?: Partial<ClaudeCodeRules>;
|
|
92
94
|
claudeDesktop?: Partial<ClaudeDesktopRules>;
|
|
@@ -120,6 +122,7 @@ export declare function getDefaultToolModel(): string;
|
|
|
120
122
|
* tool's own built-in default"), otherwise the global default tool model.
|
|
121
123
|
*/
|
|
122
124
|
export declare function getToolDefaultModel(toolName: string): string;
|
|
125
|
+
export declare function getToolMenuModels(toolName: string): string[];
|
|
123
126
|
export declare function getPresets(): ModelPreset[];
|
|
124
127
|
export declare function resolvePreset(preset: ModelPreset): Models;
|
|
125
128
|
export declare function getClaudeCodeTierChains(): Record<string, string[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{dirname as e,join as
|
|
1
|
+
import{dirname as e,join as o}from"path";import{fileURLToPath as t}from"url";import{existsSync as l,readFileSync as n}from"fs";import{currentClientConfig as r,usableClientSection as s}from"./client-config.js";import{brand as a}from"./brand.js";const i=e(t(import.meta.url)),d=(e=[],o=[])=>[...new Set([...e,...o])];export function overlayClientSection(e,o){if(!o)return e;const t={...e.retiredDefaultModels??{}};for(const[e,l]of Object.entries(o.retiredDefaultModels??{}))t[e]=d(t[e],l);return{...e,defaultModels:{...e.defaultModels,...o.defaultModels??{}},retiredDefaultModels:t,toolDefaults:{...e.toolDefaults??{},...o.toolDefaults??{}},claudeCode:o.tierChains?{...e.claudeCode??{},tierChains:{...e.claudeCode?.tierChains??{},...o.tierChains}}:e.claudeCode,claudeDesktop:o.oneMillionFallback?{...e.claudeDesktop??{},oneMillionFallback:[...o.oneMillionFallback]}:e.claudeDesktop,gatewayModels:o.retiredModels?{...e.gatewayModels??{},retired:d(e.gatewayModels?.retired,o.retiredModels)}:e.gatewayModels,toolMinVersions:{...e.toolMinVersions??{},...o.toolMinVersions??{}},agy:o.agyModels?{...e.agy??{},gatewayModels:[...o.agyModels]}:e.agy}}let u=null;function c(){return u||(u=overlayClientSection(function(){const e=[o(i,"..","..","models.json"),o(i,"..","models.json"),o(i,"models.json")];for(const o of e)if(l(o))return JSON.parse(n(o,"utf-8"));throw new Error(`models.json not found, searched: ${e.join(", ")}`)}(),s(r()?.config))),u}export function getDefaultModels(){return{...c().defaultModels}}export function isRetiredDefaultModel(e,o){return c().retiredDefaultModels?.[e]?.includes(o)??!1}export function getRetiredDefaultModelIds(){return[...new Set(Object.values(c().retiredDefaultModels??{}).flat())]}export function getDefaultToolModel(){return c().defaultToolModel?.trim()||"gpt-5.5"}export function getToolDefaultModel(e){const o=c().toolDefaults;return o&&Object.prototype.hasOwnProperty.call(o,e)?(o[e]??"").trim():getDefaultToolModel()}export function getToolMenuModels(e){return[...c().toolMenuModels?.[e]??[]]}export function getPresets(){return[...c().presets]}export function resolvePreset(e){return e.models?{...e.models}:e.model?{haiku:e.model,sonnet:e.model,opus:e.model,reasoning:e.model}:getDefaultModels()}export function getClaudeCodeTierChains(){const e=c().claudeCode?.tierChains??{};return Object.fromEntries(Object.entries(e).map(([e,o])=>[e,[...o]]))}export function getClaudeDesktopRules(){const e=c().claudeDesktop??{};return{oneMillionFallback:[...e.oneMillionFallback??[]],oneMillionExclusions:(e.oneMillionExclusions??[]).map(e=>({...e,models:[...e.models]}))}}export function getGatewayModelRules(){const e=c().gatewayModels??{};return{autoCompactRatio:e.autoCompactRatio??.8,models:(e.models??[]).map(e=>({...e})),retired:[...e.retired??[]]}}export function getBuiltinGatewayAddresses(){return a().gatewayAddresses.map(e=>({...e}))}export function getCodexRules(){return{standardContextWindow:c().codex?.standardContextWindow??272e3}}export function getAgyRules(){return{gatewayModels:[...c().agy?.gatewayModels??[]]}}export function compareVersions(e,o){const t=e.split(".").map(e=>parseInt(e,10)||0),l=o.split(".").map(e=>parseInt(e,10)||0);for(let e=0;e<Math.max(t.length,l.length);e++){const o=(t[e]??0)-(l[e]??0);if(0!==o)return o}return 0}export function getToolMinVersion(e){return c().toolMinVersions?.[e]?.trim()||null}export function reloadRegistry(){u=null}
|
|
@@ -27,9 +27,12 @@ export declare function writeModelsFile(path: string, file: ModelsFile, entries:
|
|
|
27
27
|
/** Strip Claude Code's `[1m]` window suffix: the gateway's model id has none. */
|
|
28
28
|
export declare const bareModelId: (id: string) => string;
|
|
29
29
|
/**
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
30
|
+
* GPT goes to the Responses API (like Codex): only there does the engine replay the encrypted
|
|
31
|
+
* reasoning across tool turns; it falls back to Chat Completions only when the gateway says it
|
|
32
|
+
* doesn't serve the model on Responses. Other models use Chat Completions unless Responses is
|
|
33
|
+
* all the gateway serves. Tool calls work on both for GPT (checked 2026-11-03 on GPT-6 Astra,
|
|
34
|
+
* 6.1 Sol, 6 Sol, 6.1 Terra, 5.6 Sol), whatever `functionCallEndpoints` says. The engine has no
|
|
35
|
+
* Anthropic protocol for custom models (`api: "anthropic-messages"` is sent as Chat Completions).
|
|
33
36
|
*/
|
|
34
37
|
export declare function usesResponses(spec: GatewayModelSpec): boolean;
|
|
35
38
|
/** The engine's entry for one model, capabilities from the gateway's metadata. */
|
|
@@ -45,8 +48,9 @@ export declare function modelEntry(spec: GatewayModelSpec, baseUrl: string, apiK
|
|
|
45
48
|
* models the gateway serves over an OpenAI-style interface. The default comes first, the rest
|
|
46
49
|
* keep the gateway's order; reordering or marking models in the gateway console changes the menu.
|
|
47
50
|
* When the key's owner chose models in the console (`personal`), every chosen model is written.
|
|
51
|
+
* `extras` are a tool's own additions to the short menu, under the same limits.
|
|
48
52
|
*/
|
|
49
|
-
export declare function menuSpecs(catalog: ModelCatalog | undefined, picked: string): GatewayModelSpec[];
|
|
53
|
+
export declare function menuSpecs(catalog: ModelCatalog | undefined, picked: string, extras?: string[]): GatewayModelSpec[];
|
|
50
54
|
/**
|
|
51
55
|
* Replace our entries with `specs`; the user's own entries keep their place. A user entry with
|
|
52
56
|
* the same id as one of ours is replaced (its id now means our model); returned as `replaced`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{existsSync as e,readFileSync as t}from"fs";import{BRAND_NAME as r}from"../brand.js";import{gatewayModelSpecs as n,modelFamily as o,prettyModelName as i,vendorNames as s}from"../gateway-models.js";import{backupBeforeWrite as a,atomicWriteFile as
|
|
1
|
+
import{existsSync as e,readFileSync as t}from"fs";import{BRAND_NAME as r}from"../brand.js";import{gatewayModelSpecs as n,modelFamily as o,prettyModelName as i,vendorNames as s}from"../gateway-models.js";import{backupBeforeWrite as a,atomicWriteFile as d}from"./backup.js";import{withV1 as p}from"./types.js";export const CUSTOM_MODEL_PREFIX="custom-local:";const u="openai",l="openai-response",c=e=>!!e&&"object"==typeof e&&!Array.isArray(e);export const isOurEntry=e=>c(e)&&e.vendor===r;export function readModelsFile(r){if(!e(r))return{entries:[],wrap:e=>({models:e})};const n=t(r,"utf-8");if(!n.trim())return{entries:[],wrap:e=>({models:e})};let o;try{o=JSON.parse(n)}catch(e){throw new Error(`Existing ${r} cannot be parsed; back it up and fix it first: ${e instanceof Error?e.message:String(e)}`)}if(Array.isArray(o))return{entries:o,wrap:e=>e};if(c(o))return{entries:Array.isArray(o.models)?o.models:[],wrap:e=>({...o,models:e})};throw new Error(`Existing ${r} must hold a JSON object or array`)}export function writeModelsFile(r,n,o){const i=`${JSON.stringify(n.wrap(o),null,2)}\n`;e(r)&&t(r,"utf-8")===i||(a(r),d(r,i,384))}export const bareModelId=e=>e.replace(/\[[^\]]*\]$/,"");export function usesResponses(e){const t=e.endpointTypes??[];return"gpt"===o(e.id)?0===t.length||t.includes(l):t.length>0&&!t.includes(u)&&t.includes(l)}function f(e){const t=e.endpointTypes;return!t||0===t.length||t.includes(u)||t.includes(l)}export function modelEntry(e,t,n,s=!1){const a=e.capabilities??{},d=usesResponses(e),u=o(e.id),l={id:e.id,name:s?e.id:e.name??i(e.id),vendor:r,url:d?p(t):`${p(t)}/chat/completions`,apiKey:n};d&&(l.api="openai-responses");const c=a.contextWindow??e.contextWindow;c&&(l.maxInputTokens=c);const f=a.maxOutput??e.maxOutputTokens;return f&&(l.maxOutputTokens=f),l.supportsToolCall=a.toolCall??!0,l.supportsImages=a.vision??"other"!==u,void 0!==a.reasoning&&(l.supportsReasoning=a.reasoning),a.reasoning&&a.reasoningEfforts&&(l.reasoning={...a.defaultReasoningEffort?{defaultEffort:a.defaultReasoningEffort}:{},supportedEfforts:a.reasoningEfforts}),l}export function menuSpecs(e,t,r=[]){let o=n("codebuddy",e?.clientModels,e?.clientPersonal).filter(f);if(e){const r=new Set(e.models);o=o.filter(e=>r.has(e.id)),!o.some(e=>e.id===t)&&r.has(t)&&(o=[{id:t},...o])}else o.some(e=>e.id===t)||(o=[{id:t},...o]);const i=(e?.clientPersonal??[]).length>0,a=new Set,d=o.filter(e=>{if(i)return!0;const n=s([e.id])[0],o=!a.has(n);return a.add(n),e.id===t||!0===e.recommended||r.includes(e.id)||o}),p=d.findIndex(e=>e.id===t);return p>0?[d[p],...d.slice(0,p),...d.slice(p+1)]:d}export function mergeEntries(e,t,r,n,o=!1){const i=new Set(t.map(e=>e.id)),s=[],a=e.filter(e=>{if(isOurEntry(e))return!1;const t=c(e)&&"string"==typeof e.id?e.id:void 0;return!t||!i.has(t)||(s.push(t),!1)});return{entries:[...t.map(e=>modelEntry(e,r,n,o)),...a],replaced:s}}export function foreignIdsReplaced(e,t){const r=new Set(t.map(e=>e.id));return e.filter(e=>!isOurEntry(e)).filter(e=>c(e)&&"string"==typeof e.id&&r.has(e.id)).map(e=>String(e.id))}export function ourEntries(e){return e.filter(isOurEntry)}export function ourApiKey(e){const t=ourEntries(e)[0]?.apiKey;return"string"==typeof t&&t.trim()?t:null}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{existsSync as t}from"fs";import{join as r}from"path";import{logger as o}from"../../utils/logger.js";import{i18n as e}from"../i18n.js";import{getToolDefaultModel as n}from"../model-registry.js";import{prettyModelName as
|
|
1
|
+
import{existsSync as t}from"fs";import{join as r}from"path";import{logger as o}from"../../utils/logger.js";import{i18n as e}from"../i18n.js";import{getToolDefaultModel as n,getToolMenuModels as d}from"../model-registry.js";import{prettyModelName as s,vendorNames as i}from"../gateway-models.js";import{bareModelId as a,foreignIdsReplaced as l,isOurEntry as p,menuSpecs as u,mergeEntries as c,ourApiKey as m,ourEntries as y,readModelsFile as g,writeModelsFile as f}from"./codebuddy-models.js";import{pickModel as b,toolHome as k}from"./types.js";const w=()=>process.env.WORKBUDDY_CONFIG_DIR?.trim()||process.env.CODEBUDDY_CONFIG_DIR?.trim()||r(k(),".workbuddy"),h=()=>r(w(),"models.json"),C="https://www.codebuddy.cn/work/";let _=null;function j(t,r){const o=g(h()),{entries:e,replaced:n}=c(o.entries,r,t.baseUrl,t.apiKey,!0);return f(h(),o,e),n}const v=t=>a(b(t.models,n("workbuddy"))),D=(t,r)=>u(t,r,d("workbuddy"));export const workbuddyAdapter={name:"workbuddy",displayName:"WorkBuddy",command:"workbuddy",installCommand:"darwin"===process.platform?`open ${C}`:C,get configPath(){return h()},wantsModelCatalog:!0,isInstalled:function(){return!!t(w())||"darwin"===process.platform&&["/Applications/WorkBuddy.app",r(k(),"Applications","WorkBuddy.app")].some(r=>t(r))},loadPrivateConfig(t){const r=D(t.catalog,v(t)),o=j(t,r);_={names:r.map(t=>t.name??s(t.id)),vendors:i(r.map(t=>t.id)),replaced:o}},unloadPrivateConfig(){try{const t=g(h());if(0===y(t.entries).length)return;f(h(),t,t.entries.filter(t=>!p(t)))}catch(t){o.logError("workbuddyAdapter.unloadPrivateConfig",t)}},detectCurrentConfig(){try{return{apiKey:m(g(h()).entries)}}catch{return{apiKey:null}}},listedModels(){try{const t=y(g(h()).entries);return t.length>0?t.map(t=>String(t.id)):null}catch{return null}},refreshModelMenu(t){j(t,D(t.catalog,v(t)))},planNotes(){try{const t=g(h()),r=l(t.entries,D(void 0,n("workbuddy")));return r.length>0?[e.t("tools.codebuddy.replaces_models",{path:h(),list:r.join(e.t("tools.codebuddy.list_separator"))})]:[]}catch{return[]}},applyNotes(){if(!_)return[];const t=[{kind:"summary",text:e.t("tools.workbuddy.menu_written",{count:String(_.names.length),list:_.vendors.join(e.t("tools.codebuddy.list_separator"))})},{kind:"action",text:e.t("tools.workbuddy.pick_in_app")}];return _.replaced.length>0&&t.push({kind:"detail",text:e.t("tools.codebuddy.replaced_models",{tool:"workbuddy",list:_.replaced.join(e.t("tools.codebuddy.list_separator"))})}),t},backupPaths:()=>[h()],getConfig(){try{return g(h()).entries}catch(t){return o.logError("workbuddyAdapter.getConfig",t),null}}};
|
package/dist/models.json
CHANGED
package/models.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vibeapi/cli",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.161",
|
|
4
4
|
"description": "CLI tool for managing AI coding assistants (Claude Code, Codex, OpenClaw, Hermes, AtomCode, Grok Build) with one unified config",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|