claudish 6.5.3 → 6.6.2
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 +57 -22
- package/package.json +1 -1
- package/recommended-models.json +7 -7
package/dist/index.js
CHANGED
|
@@ -17747,6 +17747,8 @@ function sanitizeSchemaForOpenAI(schema) {
|
|
|
17747
17747
|
const { enum: _enum2, not: _not, ...withoutForbidden } = root;
|
|
17748
17748
|
root = withoutForbidden;
|
|
17749
17749
|
root.type = "object";
|
|
17750
|
+
if (!root.properties)
|
|
17751
|
+
root.properties = {};
|
|
17750
17752
|
return removeUriFormat(root);
|
|
17751
17753
|
}
|
|
17752
17754
|
function convertToolsToOpenAI(req, summarize = false) {
|
|
@@ -19150,14 +19152,41 @@ var init_gemini_api_format = __esm(() => {
|
|
|
19150
19152
|
log(`[GeminiAPIFormat] Warning: No function name found for tool_use_id ${block.tool_use_id}`);
|
|
19151
19153
|
continue;
|
|
19152
19154
|
}
|
|
19153
|
-
|
|
19154
|
-
|
|
19155
|
-
|
|
19156
|
-
|
|
19157
|
-
|
|
19155
|
+
if (Array.isArray(block.content)) {
|
|
19156
|
+
const textParts = [];
|
|
19157
|
+
const imageParts = [];
|
|
19158
|
+
for (const item of block.content) {
|
|
19159
|
+
if (item.type === "image" && item.source?.data) {
|
|
19160
|
+
imageParts.push({
|
|
19161
|
+
inlineData: {
|
|
19162
|
+
mimeType: item.source.media_type,
|
|
19163
|
+
data: item.source.data
|
|
19164
|
+
}
|
|
19165
|
+
});
|
|
19166
|
+
} else if (item.type === "text") {
|
|
19167
|
+
textParts.push(item.text);
|
|
19158
19168
|
}
|
|
19159
19169
|
}
|
|
19160
|
-
|
|
19170
|
+
parts.push({
|
|
19171
|
+
functionResponse: {
|
|
19172
|
+
name: toolInfo.name,
|
|
19173
|
+
response: {
|
|
19174
|
+
content: textParts.join(`
|
|
19175
|
+
`) || "OK"
|
|
19176
|
+
}
|
|
19177
|
+
}
|
|
19178
|
+
});
|
|
19179
|
+
parts.push(...imageParts);
|
|
19180
|
+
} else {
|
|
19181
|
+
parts.push({
|
|
19182
|
+
functionResponse: {
|
|
19183
|
+
name: toolInfo.name,
|
|
19184
|
+
response: {
|
|
19185
|
+
content: typeof block.content === "string" ? block.content : JSON.stringify(block.content)
|
|
19186
|
+
}
|
|
19187
|
+
}
|
|
19188
|
+
});
|
|
19189
|
+
}
|
|
19161
19190
|
}
|
|
19162
19191
|
}
|
|
19163
19192
|
} else if (typeof msg.content === "string") {
|
|
@@ -32744,12 +32773,12 @@ async function parseArgs(args) {
|
|
|
32744
32773
|
}
|
|
32745
32774
|
try {
|
|
32746
32775
|
const fileConfig = loadConfig();
|
|
32747
|
-
if (fileConfig.diagMode && ["auto", "
|
|
32776
|
+
if (fileConfig.diagMode && ["auto", "tmux", "logfile", "off"].includes(fileConfig.diagMode)) {
|
|
32748
32777
|
config3.diagMode = fileConfig.diagMode;
|
|
32749
32778
|
}
|
|
32750
32779
|
} catch {}
|
|
32751
32780
|
const envDiagMode = process.env[ENV.CLAUDISH_DIAG_MODE]?.toLowerCase();
|
|
32752
|
-
if (envDiagMode && ["auto", "
|
|
32781
|
+
if (envDiagMode && ["auto", "tmux", "logfile", "off"].includes(envDiagMode)) {
|
|
32753
32782
|
config3.diagMode = envDiagMode;
|
|
32754
32783
|
}
|
|
32755
32784
|
let i = 0;
|
|
@@ -32898,7 +32927,7 @@ async function parseArgs(args) {
|
|
|
32898
32927
|
config3.noLogs = true;
|
|
32899
32928
|
} else if (arg === "--diag-mode" && i + 1 < args.length) {
|
|
32900
32929
|
const mode = args[++i].toLowerCase();
|
|
32901
|
-
if (["auto", "
|
|
32930
|
+
if (["auto", "tmux", "logfile", "off"].includes(mode)) {
|
|
32902
32931
|
config3.diagMode = mode;
|
|
32903
32932
|
}
|
|
32904
32933
|
} else if (arg === "--") {
|
|
@@ -33832,7 +33861,7 @@ OPTIONS:
|
|
|
33832
33861
|
--port <port> Proxy server port (default: random)
|
|
33833
33862
|
-d, --debug Enable debug logging to file (logs/claudish_*.log)
|
|
33834
33863
|
--no-logs Disable always-on structural logging (~/.claudish/logs/)
|
|
33835
|
-
--diag-mode <mode> Diagnostic output: auto (default),
|
|
33864
|
+
--diag-mode <mode> Diagnostic output: auto (default), tmux, logfile, off
|
|
33836
33865
|
Also: CLAUDISH_DIAG_MODE env var or "diagMode" in config.json
|
|
33837
33866
|
--log-level <level> Log verbosity: debug (full), info (truncated), minimal (labels only)
|
|
33838
33867
|
-q, --quiet Suppress [claudish] log messages (default in single-shot mode)
|
|
@@ -34311,7 +34340,7 @@ async function fetchGLMCodingModels() {
|
|
|
34311
34340
|
return [];
|
|
34312
34341
|
}
|
|
34313
34342
|
}
|
|
34314
|
-
var __filename4, __dirname4, VERSION = "6.
|
|
34343
|
+
var __filename4, __dirname4, VERSION = "6.6.2", CACHE_MAX_AGE_DAYS2 = 2, CLAUDISH_CACHE_DIR2, BUNDLED_MODELS_PATH, CACHED_MODELS_PATH, ALL_MODELS_JSON_PATH;
|
|
34315
34344
|
var init_cli = __esm(() => {
|
|
34316
34345
|
init_config();
|
|
34317
34346
|
init_model_loader();
|
|
@@ -95688,8 +95717,10 @@ async function runWithGrid(sessionPath, models, input, opts) {
|
|
|
95688
95717
|
`if [ -n "$MAGMUX_SOCK" ]; then`,
|
|
95689
95718
|
` if [ $_ec -eq 0 ]; then`,
|
|
95690
95719
|
` echo '{"cmd":"tint","pane":${paneIndex},"color":"green"}' | nc -U "$MAGMUX_SOCK" -w 1 2>/dev/null;`,
|
|
95720
|
+
` echo '{"cmd":"overlay","pane":${paneIndex},"text":"DONE","color":"green"}' | nc -U "$MAGMUX_SOCK" -w 1 2>/dev/null;`,
|
|
95691
95721
|
` else`,
|
|
95692
95722
|
` echo '{"cmd":"tint","pane":${paneIndex},"color":"red"}' | nc -U "$MAGMUX_SOCK" -w 1 2>/dev/null;`,
|
|
95723
|
+
` echo '{"cmd":"overlay","pane":${paneIndex},"text":"FAIL","color":"red"}' | nc -U "$MAGMUX_SOCK" -w 1 2>/dev/null;`,
|
|
95693
95724
|
` fi;`,
|
|
95694
95725
|
`fi;`,
|
|
95695
95726
|
`exec sleep 86400`
|
|
@@ -95729,6 +95760,8 @@ async function runWithGrid(sessionPath, models, input, opts) {
|
|
|
95729
95760
|
const spawnArgs = ["-g", gridfilePath, "-S", statusbarPath];
|
|
95730
95761
|
if (mux.kind === "mtm") {
|
|
95731
95762
|
spawnArgs.push("-t", "xterm-256color");
|
|
95763
|
+
} else {
|
|
95764
|
+
spawnArgs.push("-w");
|
|
95732
95765
|
}
|
|
95733
95766
|
const proc = spawn3(mux.path, spawnArgs, {
|
|
95734
95767
|
stdio: "inherit",
|
|
@@ -96659,25 +96692,27 @@ function shellQuote(s) {
|
|
|
96659
96692
|
return "'" + s.replace(/'/g, "'\\''") + "'";
|
|
96660
96693
|
}
|
|
96661
96694
|
function renderStatusBar(state) {
|
|
96662
|
-
const { model, provider, errorCount, lastError,
|
|
96695
|
+
const { model, provider, errorCount, lastError, quotaRemaining } = state;
|
|
96663
96696
|
const parts = [];
|
|
96664
96697
|
parts.push("M: claudish ");
|
|
96665
|
-
if (provider)
|
|
96666
|
-
parts.push(`D: ${provider} `);
|
|
96667
96698
|
if (model)
|
|
96668
96699
|
parts.push(`C: ${model} `);
|
|
96700
|
+
if (provider)
|
|
96701
|
+
parts.push(`D: ${provider}`);
|
|
96669
96702
|
if (errorCount > 0) {
|
|
96670
|
-
const errLabel = errorCount === 1 ? "
|
|
96671
|
-
parts.push(`R
|
|
96703
|
+
const errLabel = errorCount === 1 ? "\u26A0 1 error" : `\u26A0 ${errorCount} errors`;
|
|
96704
|
+
parts.push(`R: ${errLabel} `);
|
|
96672
96705
|
if (lastError)
|
|
96673
|
-
parts.push(`D: ${lastError}
|
|
96674
|
-
} else {
|
|
96675
|
-
parts.push("G: \u25CF ok ");
|
|
96706
|
+
parts.push(`D: ${lastError}`);
|
|
96676
96707
|
}
|
|
96677
96708
|
if (typeof quotaRemaining === "number") {
|
|
96678
|
-
const
|
|
96679
|
-
const
|
|
96680
|
-
|
|
96709
|
+
const usedPct = Math.round((1 - quotaRemaining) * 100);
|
|
96710
|
+
const barWidth = 8;
|
|
96711
|
+
const usedCols = Math.max(usedPct > 0 ? 1 : 0, Math.round(usedPct / 100 * barWidth));
|
|
96712
|
+
const freeCols = barWidth - usedCols;
|
|
96713
|
+
const bar = "\u2588".repeat(usedCols) + "\u2591".repeat(freeCols);
|
|
96714
|
+
const color = usedPct < 50 ? "g" : usedPct < 80 ? "y" : "r";
|
|
96715
|
+
parts.push(`${color}: ${bar} ${usedPct}%`);
|
|
96681
96716
|
}
|
|
96682
96717
|
return parts.join("\t");
|
|
96683
96718
|
}
|
package/package.json
CHANGED
package/recommended-models.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": "1.2.0",
|
|
3
|
-
"lastUpdated": "2026-04-
|
|
3
|
+
"lastUpdated": "2026-04-06",
|
|
4
4
|
"source": "https://openrouter.ai/models?categories=programming&fmt=cards&order=top-weekly",
|
|
5
5
|
"models": [
|
|
6
6
|
{
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
"priority": 1,
|
|
14
14
|
"pricing": {
|
|
15
15
|
"input": "$0.12/1M",
|
|
16
|
-
"output": "$
|
|
17
|
-
"average": "$0.
|
|
16
|
+
"output": "$0.99/1M",
|
|
17
|
+
"average": "$0.55/1M"
|
|
18
18
|
},
|
|
19
19
|
"context": "196K",
|
|
20
20
|
"maxOutputTokens": 65536,
|
|
@@ -34,12 +34,12 @@
|
|
|
34
34
|
"category": "vision",
|
|
35
35
|
"priority": 2,
|
|
36
36
|
"pricing": {
|
|
37
|
-
"input": "$0.
|
|
38
|
-
"output": "$
|
|
39
|
-
"average": "$1.
|
|
37
|
+
"input": "$0.38/1M",
|
|
38
|
+
"output": "$1.72/1M",
|
|
39
|
+
"average": "$1.05/1M"
|
|
40
40
|
},
|
|
41
41
|
"context": "262K",
|
|
42
|
-
"maxOutputTokens":
|
|
42
|
+
"maxOutputTokens": 262144,
|
|
43
43
|
"modality": "text+image->text",
|
|
44
44
|
"supportsTools": true,
|
|
45
45
|
"supportsReasoning": true,
|