pin all CLI installations to explicit versions and use pro models by default (#283)
* pin all CLI installations to explicit versions and use pro models by default - codex: pin @openai/codex to 0.101.0 (was "latest") - opencode: pin opencode-ai to 1.1.56 (was "latest") - gemini: pin gemini-cli to v0.28.2 via new tag param on installFromGithub - cursor: pin to 2026.01.28-fd13201 via direct tarball download (replaces curl install script) - add installFromDirectTarball to install.ts for versioned tarball URLs - gemini auto effort now uses pro-preview instead of flash-preview - test runner model overrides updated to use pro-preview consistently Co-authored-by: Cursor <cursoragent@cursor.com> * increase activity timeout * fix delegation timeout --------- Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
committed by
pullfrog[bot]
parent
9071c0ae6c
commit
ceadb3120a
+6
-1
@@ -24,7 +24,7 @@ const geminiEffortConfig: Record<Effort, { model: string; thinkingLevel: string
|
||||
// pass the model directly it works if we ever did need to do something like this,
|
||||
// we could write to .gemini/settings.json
|
||||
mini: { model: "gemini-3-flash-preview", thinkingLevel: "LOW" },
|
||||
auto: { model: "gemini-3-flash-preview", thinkingLevel: "HIGH" },
|
||||
auto: { model: "gemini-3-pro-preview", thinkingLevel: "HIGH" },
|
||||
max: { model: "gemini-3-pro-preview", thinkingLevel: "HIGH" },
|
||||
} as const;
|
||||
|
||||
@@ -85,6 +85,9 @@ type GeminiEvent =
|
||||
| GeminiToolResultEvent
|
||||
| GeminiResultEvent;
|
||||
|
||||
// pinned CLI version — gemini-cli is installed from GitHub releases, not npm
|
||||
const GEMINI_CLI_VERSION = "v0.28.2";
|
||||
|
||||
// transient API error patterns that warrant a retry.
|
||||
// these are server-side issues, not client errors.
|
||||
const TRANSIENT_ERROR_PATTERNS = [
|
||||
@@ -191,6 +194,7 @@ async function installGemini(githubInstallationToken?: string): Promise<string>
|
||||
return await installFromGithub({
|
||||
owner: "google-gemini",
|
||||
repo: "gemini-cli",
|
||||
tag: GEMINI_CLI_VERSION,
|
||||
assetName: "gemini.js",
|
||||
...(githubInstallationToken && { githubInstallationToken }),
|
||||
});
|
||||
@@ -231,6 +235,7 @@ export const gemini = agent({
|
||||
cmd: "node",
|
||||
args: [cliPath, ...args],
|
||||
env: process.env,
|
||||
activityTimeout: 0, // disabled: process-level timeout in main.ts handles this (subprocess timeout would kill orchestrator during delegation)
|
||||
onStdout: async (chunk) => {
|
||||
const text = chunk.toString();
|
||||
finalOutput += text;
|
||||
|
||||
Reference in New Issue
Block a user