rlm-cli 0.2.7 → 0.2.9
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/interactive.js +48 -24
- package/package.json +1 -1
package/dist/interactive.js
CHANGED
|
@@ -67,7 +67,7 @@ class Spinner {
|
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
// ── Constants ───────────────────────────────────────────────────────────────
|
|
70
|
-
const DEFAULT_MODEL = process.env.RLM_MODEL || "claude-sonnet-4-
|
|
70
|
+
const DEFAULT_MODEL = process.env.RLM_MODEL || "claude-sonnet-4-6";
|
|
71
71
|
const TRAJ_DIR = path.resolve(process.cwd(), "trajectories");
|
|
72
72
|
const W = Math.min(process.stdout.columns || 80, 100);
|
|
73
73
|
// ── Session state ───────────────────────────────────────────────────────────
|
|
@@ -152,9 +152,26 @@ function resolveModelWithProvider(modelId) {
|
|
|
152
152
|
}
|
|
153
153
|
return undefined;
|
|
154
154
|
}
|
|
155
|
-
/**
|
|
155
|
+
/** Sensible default model per provider. */
|
|
156
|
+
const PROVIDER_DEFAULT_MODELS = {
|
|
157
|
+
anthropic: "claude-sonnet-4-6",
|
|
158
|
+
openai: "gpt-4o",
|
|
159
|
+
google: "gemini-2.5-flash",
|
|
160
|
+
groq: "llama-3.3-70b-versatile",
|
|
161
|
+
xai: "grok-4",
|
|
162
|
+
mistral: "mistral-large-latest",
|
|
163
|
+
openrouter: "claude-sonnet-4-6",
|
|
164
|
+
};
|
|
165
|
+
/** Returns the recommended default model for a provider. */
|
|
156
166
|
function getDefaultModelForProvider(provider) {
|
|
157
|
-
const
|
|
167
|
+
const preferred = PROVIDER_DEFAULT_MODELS[provider];
|
|
168
|
+
if (preferred) {
|
|
169
|
+
const model = resolveModel(preferred);
|
|
170
|
+
if (model)
|
|
171
|
+
return preferred;
|
|
172
|
+
}
|
|
173
|
+
// Fallback: first non-excluded model
|
|
174
|
+
const models = getModelsForProvider(provider);
|
|
158
175
|
return models.length > 0 ? models[0].id : undefined;
|
|
159
176
|
}
|
|
160
177
|
/** Wrap rl.question with ESC-to-cancel. Returns user input or null on ESC/empty. */
|
|
@@ -464,37 +481,44 @@ function displaySubQueryResult(info) {
|
|
|
464
481
|
console.log(` ${c.magenta}└─${c.reset} ${c.dim}${elapsed}s · ${formatSize(info.resultLength)} received${c.reset}`);
|
|
465
482
|
}
|
|
466
483
|
// ── Available models list ────────────────────────────────────────────────────
|
|
467
|
-
/** Filter out deprecated,
|
|
484
|
+
/** Filter out deprecated, retired, and non-chat models (Feb 2026). */
|
|
468
485
|
const EXCLUDED_MODEL_PATTERNS = [
|
|
469
|
-
// Anthropic
|
|
470
|
-
/^claude-3-
|
|
471
|
-
|
|
472
|
-
/^
|
|
473
|
-
/^
|
|
474
|
-
//
|
|
475
|
-
|
|
476
|
-
/^
|
|
477
|
-
|
|
478
|
-
//
|
|
479
|
-
/^
|
|
480
|
-
/^
|
|
481
|
-
/^
|
|
482
|
-
|
|
483
|
-
/deep-research$/,
|
|
484
|
-
/^gemini-live-/,
|
|
486
|
+
// ── Anthropic retired / old gen ──
|
|
487
|
+
/^claude-3-/, // all claude 3.x retired (haiku, sonnet, opus, 3-5-*, 3-7-*)
|
|
488
|
+
// ── OpenAI legacy / specialized ──
|
|
489
|
+
/^gpt-4$/, // superseded by gpt-4.1
|
|
490
|
+
/^gpt-4-turbo/, // superseded by gpt-4.1
|
|
491
|
+
/^gpt-4o-2024-/, // dated snapshots
|
|
492
|
+
/-chat-latest$/, // chat variants (use base model)
|
|
493
|
+
/^codex-/, // code-only
|
|
494
|
+
/-codex/, // all codex variants
|
|
495
|
+
// ── Google retired / deprecated ──
|
|
496
|
+
/^gemini-1\.5-/, // all 1.5 retired
|
|
497
|
+
/^gemini-3-pro-preview$/, // deprecated, shuts down Mar 9, 2026
|
|
498
|
+
/^gemini-live-/, // real-time streaming, not standard chat
|
|
499
|
+
// ── xAI non-chat ──
|
|
485
500
|
/^grok-beta$/,
|
|
486
501
|
/^grok-vision-beta$/,
|
|
487
502
|
/^grok-2-vision/,
|
|
488
|
-
//
|
|
503
|
+
/^grok-2-1212$/, // dated snapshot
|
|
504
|
+
// ── Mistral legacy ──
|
|
489
505
|
/^open-mistral-7b$/,
|
|
490
506
|
/^open-mixtral-/,
|
|
491
507
|
/^mistral-nemo$/,
|
|
492
|
-
// Dated
|
|
493
|
-
/preview-\d{2}-\d{2}$/, // e.g. preview-04-17
|
|
508
|
+
// ── Dated snapshots / previews ──
|
|
509
|
+
/preview-\d{2}-\d{2}$/, // e.g. preview-04-17
|
|
494
510
|
/preview-\d{2}-\d{4}$/, // e.g. preview-09-2025
|
|
495
511
|
/^labs-/,
|
|
496
|
-
// Specialized/internal variants
|
|
497
512
|
/-customtools$/,
|
|
513
|
+
/deep-research$/,
|
|
514
|
+
// Mistral dated snapshots (use -latest instead)
|
|
515
|
+
/^mistral-large-\d{4}$/,
|
|
516
|
+
/^mistral-medium-\d{4}$/,
|
|
517
|
+
/^mistral-small-\d{4}$/,
|
|
518
|
+
/^devstral-\d{4}$/,
|
|
519
|
+
/^devstral-\w+-\d{4}$/,
|
|
520
|
+
// Groq dated snapshots
|
|
521
|
+
/kimi-k2-instruct-\d+$/,
|
|
498
522
|
];
|
|
499
523
|
function isModelExcluded(modelId) {
|
|
500
524
|
return EXCLUDED_MODEL_PATTERNS.some((p) => p.test(modelId));
|