claudish 7.8.1 → 7.8.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.
Files changed (2) hide show
  1. package/dist/index.js +34 -9
  2. package/package.json +5 -5
package/dist/index.js CHANGED
@@ -581,7 +581,7 @@ var init_onepassword_config = __esm(() => {
581
581
  });
582
582
 
583
583
  // src/version.ts
584
- var VERSION = "7.8.1";
584
+ var VERSION = "7.8.3";
585
585
 
586
586
  // src/providers/onepassword-wasm.ts
587
587
  var exports_onepassword_wasm = {};
@@ -44292,6 +44292,11 @@ function providerIsReady(p, config3) {
44292
44292
  }
44293
44293
  return credentials.isAuthenticated(p.catalogName) || providerAuthSource(p, config3) !== null;
44294
44294
  }
44295
+ function providerIsReadyForDisplay(p, config3, localLiveness) {
44296
+ if (p.isLocal && localLiveness[p.catalogName] === "running")
44297
+ return true;
44298
+ return providerIsReady(p, config3);
44299
+ }
44295
44300
  function providerAuthCapabilities(p, config3) {
44296
44301
  const apiKeySupported = !!p.apiKeyEnvVar;
44297
44302
  const apiKeySet = apiKeySupported && (!!process.env[p.apiKeyEnvVar] || !!config3.apiKeys?.[p.apiKeyEnvVar]);
@@ -64168,7 +64173,7 @@ function ProvidersContent({
64168
64173
  isInputMode,
64169
64174
  animTick
64170
64175
  }) {
64171
- const firstUnreadyIdx = displayProviders.findIndex((p) => providerAuthSource(p, config3) === null);
64176
+ const firstUnreadyIdx = displayProviders.findIndex((p) => !providerIsReadyForDisplay(p, config3, localLiveness));
64172
64177
  const hasDivider = firstUnreadyIdx >= 0;
64173
64178
  const listH = contentH - 4 - (hasDivider ? 1 : 0);
64174
64179
  const scrollOffset = (() => {
@@ -64182,7 +64187,7 @@ function ProvidersContent({
64182
64187
  const getRow = (p, idx) => {
64183
64188
  const auth = providerAuthSource(p, config3);
64184
64189
  const caps = providerAuthCapabilities(p, config3);
64185
- const isReady = auth !== null;
64190
+ const isReady = providerIsReadyForDisplay(p, config3, localLiveness);
64186
64191
  const isOauthOnly = auth === "oauth";
64187
64192
  const selected = idx === providerIndex;
64188
64193
  const tr = testResults[p.name];
@@ -64208,7 +64213,8 @@ function ProvidersContent({
64208
64213
  let statusText = p.isLocal ? isReady ? "enabled" : "disabled" : isReady ? "ready" : "not set";
64209
64214
  if (p.isLocal) {
64210
64215
  const live = localLiveness[p.catalogName];
64211
- if (isReady) {
64216
+ const enabled = providerAuthSource(p, config3) !== null;
64217
+ if (enabled) {
64212
64218
  if (live === "running") {
64213
64219
  statusFg = C.green;
64214
64220
  statusText = "running";
@@ -64231,6 +64237,9 @@ function ProvidersContent({
64231
64237
  statusFg = C.green;
64232
64238
  const base = tr.ms !== undefined ? `ready ${tr.ms}ms` : "ready";
64233
64239
  statusText = tr.note ? `${base} ${tr.note}` : base;
64240
+ } else if (tr.status === "unavailable") {
64241
+ statusFg = C.yellow;
64242
+ statusText = "n/a";
64234
64243
  } else {
64235
64244
  statusFg = C.red;
64236
64245
  statusText = "FAIL";
@@ -64326,6 +64335,9 @@ function ProvidersContent({
64326
64335
  tr?.status === "failed" && tr.error ? /* @__PURE__ */ jsxDEV5("span", {
64327
64336
  fg: C.red,
64328
64337
  children: tr.error.replace(/\s+/g, " ").trim()
64338
+ }, undefined, false, undefined, this) : tr?.status === "unavailable" && tr.error ? /* @__PURE__ */ jsxDEV5("span", {
64339
+ fg: C.yellow,
64340
+ children: tr.error.replace(/\s+/g, " ").trim()
64329
64341
  }, undefined, false, undefined, this) : /* @__PURE__ */ jsxDEV5("span", {
64330
64342
  fg: selected ? C.white : C.dim,
64331
64343
  children: p.description
@@ -64734,6 +64746,19 @@ function ProviderDetail({
64734
64746
  children: ` ${truncateOneLine(tr.error, width - 16)}`
64735
64747
  }, undefined, false, undefined, this)
64736
64748
  ]
64749
+ }, undefined, true, undefined, this),
64750
+ tr.status === "unavailable" && /* @__PURE__ */ jsxDEV6(Fragment3, {
64751
+ children: [
64752
+ /* @__PURE__ */ jsxDEV6("span", {
64753
+ fg: C.yellow,
64754
+ attributes: A.bold,
64755
+ children: "\u25CB unavailable"
64756
+ }, undefined, false, undefined, this),
64757
+ tr.error && /* @__PURE__ */ jsxDEV6("span", {
64758
+ fg: C.yellow,
64759
+ children: ` ${truncateOneLine(tr.error, width - 16)}`
64760
+ }, undefined, false, undefined, this)
64761
+ ]
64737
64762
  }, undefined, true, undefined, this)
64738
64763
  ]
64739
64764
  }, undefined, true, undefined, this)
@@ -67895,13 +67920,13 @@ function App({ requestLogin } = {}) {
67895
67920
  const quit = useCallback3(() => renderer.destroy(), [renderer]);
67896
67921
  const displayProviders = useMemo2(() => {
67897
67922
  return [...PROVIDERS].sort((a, b) => {
67898
- const aReady = providerIsReady(a, config3);
67899
- const bReady = providerIsReady(b, config3);
67923
+ const aReady = providerIsReadyForDisplay(a, config3, localLiveness);
67924
+ const bReady = providerIsReadyForDisplay(b, config3, localLiveness);
67900
67925
  if (aReady === bReady)
67901
67926
  return PROVIDERS.indexOf(a) - PROVIDERS.indexOf(b);
67902
67927
  return aReady ? -1 : 1;
67903
67928
  });
67904
- }, [config3]);
67929
+ }, [config3, localLiveness]);
67905
67930
  const selectedProvider = displayProviders[providerIndex];
67906
67931
  const selectedProviderDef = getProviderByName(selectedProvider.catalogName);
67907
67932
  const selectedProviderIsLocal = !!(selectedProvider.isLocal || selectedProviderDef?.isLocal);
@@ -68289,7 +68314,7 @@ function App({ requestLogin } = {}) {
68289
68314
  setTestResults((prev) => ({
68290
68315
  ...prev,
68291
68316
  [provName]: {
68292
- status: "failed",
68317
+ status: "unavailable",
68293
68318
  error: `not running${base ? ` (${base} unreachable)` : ""}`
68294
68319
  }
68295
68320
  }));
@@ -68357,7 +68382,7 @@ function App({ requestLogin } = {}) {
68357
68382
  setTestResults((prev) => ({
68358
68383
  ...prev,
68359
68384
  [provName]: {
68360
- status: "failed",
68385
+ status: prov.isLocal ? "unavailable" : "failed",
68361
68386
  error: lastDiscoveryReason ? `no probe model: ${lastDiscoveryReason}` : "no probe model available",
68362
68387
  ms
68363
68388
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claudish",
3
- "version": "7.8.1",
3
+ "version": "7.8.3",
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",
@@ -60,10 +60,10 @@
60
60
  "ai"
61
61
  ],
62
62
  "optionalDependencies": {
63
- "@claudish/magmux-darwin-arm64": "7.8.1",
64
- "@claudish/magmux-darwin-x64": "7.8.1",
65
- "@claudish/magmux-linux-arm64": "7.8.1",
66
- "@claudish/magmux-linux-x64": "7.8.1"
63
+ "@claudish/magmux-darwin-arm64": "7.8.3",
64
+ "@claudish/magmux-darwin-x64": "7.8.3",
65
+ "@claudish/magmux-linux-arm64": "7.8.3",
66
+ "@claudish/magmux-linux-x64": "7.8.3"
67
67
  },
68
68
  "author": "Jack Rudenko <i@madappgang.com>",
69
69
  "license": "MIT",