clawmoney 0.15.34 → 0.15.36
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/commands/relay-setup.js +35 -13
- package/package.json +1 -1
|
@@ -30,9 +30,24 @@ const RECOMMENDED_MODELS = {
|
|
|
30
30
|
// Claude Code /model menu: Default(Sonnet 4.6) / Sonnet(1M) / Opus(1M) / Haiku
|
|
31
31
|
// → 3 unique model IDs (Sonnet 1M = same model + context-1m beta)
|
|
32
32
|
claude: ["claude-sonnet-4-6", "claude-opus-4-6", "claude-haiku-4-5"],
|
|
33
|
-
// Codex CLI /model menu
|
|
34
|
-
//
|
|
35
|
-
|
|
33
|
+
// Codex CLI /model menu (verified April 2026, v0.12x):
|
|
34
|
+
// gpt-5.3-codex (default) — latest frontier agentic coding
|
|
35
|
+
// gpt-5.4 (current) — latest frontier agentic coding
|
|
36
|
+
// gpt-5.2-codex — prior frontier agentic coding
|
|
37
|
+
// gpt-5.1-codex-max — Codex-optimized flagship (deep+fast)
|
|
38
|
+
// gpt-5.2 — latest frontier general model
|
|
39
|
+
// gpt-5.1-codex-mini — cheap/fast/smaller Codex
|
|
40
|
+
// gpt-5.4-mini is NOT in Codex CLI's menu — ChatGPT's Plus API offers
|
|
41
|
+
// it but Codex CLI doesn't expose it, so serving it as a Codex-family
|
|
42
|
+
// provider would never see traffic. Dropped from the recommended list.
|
|
43
|
+
codex: [
|
|
44
|
+
"gpt-5.3-codex",
|
|
45
|
+
"gpt-5.4",
|
|
46
|
+
"gpt-5.2-codex",
|
|
47
|
+
"gpt-5.1-codex-max",
|
|
48
|
+
"gpt-5.2",
|
|
49
|
+
"gpt-5.1-codex-mini",
|
|
50
|
+
],
|
|
36
51
|
// Gemini CLI exposes a long list; mainstream picks are the production-
|
|
37
52
|
// stable 2.5 line (pro + flash) and the latest 3.x preview (pro + flash).
|
|
38
53
|
// Image / thinking variants and lite/customtools are intentionally
|
|
@@ -348,18 +363,25 @@ export async function relaySetupCommand() {
|
|
|
348
363
|
}
|
|
349
364
|
// ── Step 7: prune — implement "pick-what-you-run" semantics ──
|
|
350
365
|
//
|
|
351
|
-
// setup is
|
|
352
|
-
// are the complete set of what the daemon should serve.
|
|
353
|
-
// runs that registered different subscriptions
|
|
354
|
-
// etc.)
|
|
355
|
-
//
|
|
366
|
+
// setup is declarative: the (cli_type, model) pairs the user just
|
|
367
|
+
// picked are the complete set of what the daemon should serve.
|
|
368
|
+
// Earlier test runs that registered different subscriptions
|
|
369
|
+
// (antigravity, gemini, etc.) OR stale model versions
|
|
370
|
+
// (claude-sonnet-4-5 before the recommended list moved to 4-6)
|
|
371
|
+
// would otherwise linger in the DB and get preflighted every
|
|
372
|
+
// daemon start.
|
|
356
373
|
//
|
|
357
|
-
// We only prune AFTER registration succeeds, so a failed batch
|
|
358
|
-
// wipe the user's existing state.
|
|
359
|
-
//
|
|
360
|
-
//
|
|
374
|
+
// We only prune AFTER registration succeeds, so a failed batch
|
|
375
|
+
// doesn't wipe the user's existing state. We pass the EXACT
|
|
376
|
+
// (cli_type, model) pairs from `registrations` so prune is
|
|
377
|
+
// grain-safe and cleans stale per-model rows too.
|
|
361
378
|
try {
|
|
362
|
-
const pruneResp = await apiPost("/api/v1/relay/providers/prune", {
|
|
379
|
+
const pruneResp = await apiPost("/api/v1/relay/providers/prune", {
|
|
380
|
+
keep: registrations.map((r) => ({
|
|
381
|
+
cli_type: r.cli,
|
|
382
|
+
model: r.model,
|
|
383
|
+
})),
|
|
384
|
+
}, config.api_key);
|
|
363
385
|
if (pruneResp.ok &&
|
|
364
386
|
pruneResp.data?.deleted &&
|
|
365
387
|
pruneResp.data.deleted.length > 0) {
|