claudish 13.2.0 → 13.3.0
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/dist/index.js +27 -7
- package/package.json +5 -5
package/dist/index.js
CHANGED
|
@@ -575,7 +575,7 @@ var init_onepassword_config = __esm(() => {
|
|
|
575
575
|
});
|
|
576
576
|
|
|
577
577
|
// src/version.ts
|
|
578
|
-
var VERSION = "13.
|
|
578
|
+
var VERSION = "13.3.0";
|
|
579
579
|
|
|
580
580
|
// src/logger.ts
|
|
581
581
|
import { appendFile, existsSync as existsSync2, mkdirSync, readdirSync, unlinkSync, writeFileSync as writeFileSync2 } from "fs";
|
|
@@ -6484,6 +6484,12 @@ function isOptInWireId(wireId) {
|
|
|
6484
6484
|
return /-contributor(?:-free)?$/i.test(wireId.split("/").pop() ?? wireId);
|
|
6485
6485
|
}
|
|
6486
6486
|
function isOptInConnection(connection) {
|
|
6487
|
+
if ("contentUse" in connection) {
|
|
6488
|
+
if (connection.contentUse === "contributor")
|
|
6489
|
+
return true;
|
|
6490
|
+
if (connection.contentUse === "standard")
|
|
6491
|
+
return false;
|
|
6492
|
+
}
|
|
6487
6493
|
return typeof connection.externalModelId === "string" && isOptInWireId(connection.externalModelId);
|
|
6488
6494
|
}
|
|
6489
6495
|
function splitOptInConnections(entry) {
|
|
@@ -6715,6 +6721,7 @@ var init_catalog_route_bindings = __esm(() => {
|
|
|
6715
6721
|
vertex: { routeId: "vertex", routeProfileId: "google-cloud" },
|
|
6716
6722
|
deepseek: { routeId: "deepseek", routeProfileId: "direct-api" },
|
|
6717
6723
|
mistralai: { routeId: "mistralai", routeProfileId: "direct-api" },
|
|
6724
|
+
"meta-muse-code": { routeId: "meta", routeProfileId: "muse-code-subscription" },
|
|
6718
6725
|
meta: { routeId: "meta", routeProfileId: "direct-api" }
|
|
6719
6726
|
};
|
|
6720
6727
|
LOOKUP_ONLY_ROUTE_BINDINGS = {
|
|
@@ -35570,6 +35577,9 @@ function effectiveBaseUrl(registryBaseUrl, definitionBaseUrl, resolvedBaseUrl) {
|
|
|
35570
35577
|
}
|
|
35571
35578
|
return { baseUrl: resolvedBaseUrl.replace(/\/+$/, ""), overridden: true };
|
|
35572
35579
|
}
|
|
35580
|
+
function requestBaseUrl(connection, api) {
|
|
35581
|
+
return connection.provider === "meta-muse-code" ? `${MUSE_CODE_BASE_URL}/v1` : connectionBaseUrl(connection, api);
|
|
35582
|
+
}
|
|
35573
35583
|
function describeConnectionWire(connection) {
|
|
35574
35584
|
const where = `${connection.route.routeId}/${connection.route.routeProfileId} \xB7 ${connection.externalModelId}`;
|
|
35575
35585
|
const { wire } = connection;
|
|
@@ -35579,7 +35589,7 @@ function describeConnectionWire(connection) {
|
|
|
35579
35589
|
const apis = Object.keys(connection.profile.apis).join(", ") || "none";
|
|
35580
35590
|
return `${where}: wire unknown \u2014 tries ${apis} in turn`;
|
|
35581
35591
|
}
|
|
35582
|
-
const base =
|
|
35592
|
+
const base = requestBaseUrl(connection, wire.api);
|
|
35583
35593
|
const url = base ? wireRequestUrl(base, wire.api, connection.externalModelId) : "no base URL";
|
|
35584
35594
|
const status = (value) => typeof value === "string" ? value : value.status;
|
|
35585
35595
|
const parts = [`${wire.api} ${url}`, `limit ${status(wire.tokenParam)}`];
|
|
@@ -35748,11 +35758,14 @@ function tryInTurn(ctx, definitionName, connection, why) {
|
|
|
35748
35758
|
};
|
|
35749
35759
|
}
|
|
35750
35760
|
function buildKnownWireHandler(ctx, definitionName, connection, wire) {
|
|
35751
|
-
const registryBase =
|
|
35761
|
+
const registryBase = requestBaseUrl(connection, wire.api);
|
|
35752
35762
|
if (!registryBase)
|
|
35753
35763
|
return null;
|
|
35754
35764
|
const definition = getProviderByName(definitionName);
|
|
35755
|
-
const { baseUrl, overridden } = effectiveBaseUrl(registryBase, definition?.baseUrl, ctx.provider.baseUrl);
|
|
35765
|
+
const { baseUrl, overridden } = definitionName === "meta-muse-code" ? { baseUrl: registryBase, overridden: false } : effectiveBaseUrl(registryBase, definition?.baseUrl, ctx.provider.baseUrl);
|
|
35766
|
+
if (definitionName === "meta-muse-code" && ctx.provider.baseUrl && ctx.provider.baseUrl !== definition?.baseUrl) {
|
|
35767
|
+
log(`[Wire] meta-muse-code: user base URL ignored \u2192 ${baseUrl}`);
|
|
35768
|
+
}
|
|
35756
35769
|
const url = wireRequestUrl(baseUrl, wire.api, connection.externalModelId);
|
|
35757
35770
|
if (overridden)
|
|
35758
35771
|
log(`[Wire] ${definitionName}: base URL overridden by user config \u2192 ${baseUrl}`);
|
|
@@ -35780,6 +35793,7 @@ var init_wire_handler = __esm(() => {
|
|
|
35780
35793
|
init_catalog_client();
|
|
35781
35794
|
init_connection_resolver();
|
|
35782
35795
|
init_connection_wire();
|
|
35796
|
+
init_muse_mint();
|
|
35783
35797
|
init_provider_definitions();
|
|
35784
35798
|
init_anthropic_compat();
|
|
35785
35799
|
init_gemini_apikey();
|
|
@@ -50416,12 +50430,15 @@ function projectRecommendations(recommendations, catalog, richModels = [], now =
|
|
|
50416
50430
|
const priority = (rankByTier.get(recommended.tier) ?? 0) + 1;
|
|
50417
50431
|
rankByTier.set(recommended.tier, priority);
|
|
50418
50432
|
const rich = richById.get(recommended.modelId);
|
|
50433
|
+
const nativeProvider = nativeProviderForVendor(rich?.provider ?? model.provider ?? "");
|
|
50434
|
+
const nativeRouteAvailable = Boolean(nativeProvider && model.aggregators?.some((connection) => connection.routeStatus === "mapped" && catalogRouteMatchesProvider(connection.route, nativeProvider)));
|
|
50419
50435
|
const subscription = recommended.tier === "subscription" ? subscriptionRouteFor(recommended, model, catalog.plans) : undefined;
|
|
50420
50436
|
models.push({
|
|
50421
50437
|
id: recommended.modelId,
|
|
50422
50438
|
name: rich?.displayName ?? model.displayName ?? recommended.modelId,
|
|
50423
50439
|
description: rich?.description ?? "",
|
|
50424
50440
|
provider: rich?.provider ?? model.provider ?? "",
|
|
50441
|
+
nativeRouteAvailable,
|
|
50425
50442
|
recommendationTier: recommended.tier,
|
|
50426
50443
|
priority,
|
|
50427
50444
|
pricing: {
|
|
@@ -50628,7 +50645,7 @@ function uniqueRecommendedModels(entries) {
|
|
|
50628
50645
|
}
|
|
50629
50646
|
function collectRoutingPrefixes(group, getNativePrefix) {
|
|
50630
50647
|
const slug = (group.primary.provider || "").toLowerCase();
|
|
50631
|
-
const native = getNativePrefix(slug);
|
|
50648
|
+
const native = group.primary.nativeRouteAvailable === false ? null : getNativePrefix(slug);
|
|
50632
50649
|
const seen = new Set;
|
|
50633
50650
|
const out = [];
|
|
50634
50651
|
if (native) {
|
|
@@ -50873,13 +50890,14 @@ function getAvailableModels() {
|
|
|
50873
50890
|
_cachedModelIds = result;
|
|
50874
50891
|
return result;
|
|
50875
50892
|
}
|
|
50876
|
-
var RECOMMENDATION_SECTIONS, RECOMMENDATION_TIER_INDEX, _cachedModelInfo = null, _cachedModelIds = null, _cachedRecommendedModels = null, FIREBASE_BASE_URL = "https://us-central1-claudish-6da10.cloudfunctions.net/queryModels", FIREBASE_RECOMMENDED_URL, RECOMMENDED_PROJECTION_VERSION =
|
|
50893
|
+
var RECOMMENDATION_SECTIONS, RECOMMENDATION_TIER_INDEX, _cachedModelInfo = null, _cachedModelIds = null, _cachedRecommendedModels = null, FIREBASE_BASE_URL = "https://us-central1-claudish-6da10.cloudfunctions.net/queryModels", FIREBASE_RECOMMENDED_URL, RECOMMENDED_PROJECTION_VERSION = 2, RECOMMENDED_MODELS_CACHE_PATH, RECOMMENDED_FETCH_TIMEOUT_MS = 5000, SEARCH_FETCH_TIMEOUT_MS = 1e4, RECOMMENDED_ROUTE_TIER_ORDER;
|
|
50877
50894
|
var init_model_loader = __esm(() => {
|
|
50878
50895
|
init_all_models_cache();
|
|
50879
50896
|
init_auto_route();
|
|
50880
50897
|
init_cache_ttl();
|
|
50881
50898
|
init_catalog_client();
|
|
50882
50899
|
init_catalog_route_bindings();
|
|
50900
|
+
init_route_candidates();
|
|
50883
50901
|
RECOMMENDATION_SECTIONS = [
|
|
50884
50902
|
{ recommendationTier: "flagship", title: "Flagship", quickPickEligible: true },
|
|
50885
50903
|
{
|
|
@@ -91589,13 +91607,15 @@ function mergeUserSettingsIfPresent(config, tempSettingsPath, statusLine, proxyA
|
|
|
91589
91607
|
async function resolveLocalContextWindow(spec, cachePath) {
|
|
91590
91608
|
const parsed = parseModelSpec(spec);
|
|
91591
91609
|
let provider = parsed.provider;
|
|
91610
|
+
let wireId = parsed.model;
|
|
91592
91611
|
if (!parsed.isExplicitProvider) {
|
|
91593
91612
|
const plan = await route(spec);
|
|
91594
91613
|
if (plan.kind !== "ok")
|
|
91595
91614
|
return null;
|
|
91596
91615
|
provider = plan.primary.provider;
|
|
91616
|
+
wireId = parseModelSpec(plan.primary.modelSpec).model;
|
|
91597
91617
|
}
|
|
91598
|
-
const win = await discoverContextWindow(provider, parsed.model) ??
|
|
91618
|
+
const win = await discoverContextWindow(provider, wireId) ?? lookupModelForProvider(parsed.model, provider, cachePath) ?? (wireId !== parsed.model ? lookupModelForProvider(wireId, provider, cachePath) : null);
|
|
91599
91619
|
return {
|
|
91600
91620
|
modelId: parsed.model,
|
|
91601
91621
|
window: typeof win === "number" && win > 0 ? win : null
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "claudish",
|
|
3
|
-
"version": "13.
|
|
3
|
+
"version": "13.3.0",
|
|
4
4
|
"description": "Run Claude Code with any model - OpenRouter, Ollama, LM Studio & local models",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -69,10 +69,10 @@
|
|
|
69
69
|
"ai"
|
|
70
70
|
],
|
|
71
71
|
"optionalDependencies": {
|
|
72
|
-
"@claudish/magmux-darwin-arm64": "13.
|
|
73
|
-
"@claudish/magmux-darwin-x64": "13.
|
|
74
|
-
"@claudish/magmux-linux-arm64": "13.
|
|
75
|
-
"@claudish/magmux-linux-x64": "13.
|
|
72
|
+
"@claudish/magmux-darwin-arm64": "13.3.0",
|
|
73
|
+
"@claudish/magmux-darwin-x64": "13.3.0",
|
|
74
|
+
"@claudish/magmux-linux-arm64": "13.3.0",
|
|
75
|
+
"@claudish/magmux-linux-x64": "13.3.0"
|
|
76
76
|
},
|
|
77
77
|
"author": "Jack Rudenko <i@madappgang.com>",
|
|
78
78
|
"license": "MIT",
|