Add gpt-5.4-mini, gemini-3.1-flash-lite, tzafon 1.6/1.7; drop gemini-3-pro-preview - #20
Conversation
… retired gemini-3-pro-preview Follow-up to the model-annotation audit. Adds computer-use annotations for models confirmed via discovery smoke tests, and removes the gemini-3-pro-preview annotation that Google has retired (the API now 404s for it). - openai: gpt-5.4-mini (in pi-ai registry, family match). - google: gemini-3.1-flash-lite (in registry, exact match); remove gemini-3-pro-preview. - tzafon: tzafon.northstar-cua-fast-1.6 and -1.7-experiment (not in registry, exact match plus CUA_MODEL_OVERRIDES entries). Patch-bumps @onkernel/cua-ai (0.2.1 -> 0.2.2) and @onkernel/cua-agent (0.3.1 -> 0.3.2, with its cua-ai dependency) plus changelogs, so merging sets up main for a tag-triggered release.
|
Created a monitoring plan for this PR. What this PR does: Expands the set of AI models available for computer-use automation by adding Intended effect:
Risks:
Status updates will be posted automatically on this PR as monitoring progresses. |
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed: Agent tests reference removed model
- Updated all
packages/agent/test/agent.test.tsruntime-resolution andsetModelcases from retiredgoogle:gemini-3-pro-previewto supportedgoogle:gemini-3-flash-previewso they no longer trigger unsupported-model errors.
- Updated all
Or push these changes by commenting:
@cursor push 986ccf3879
Preview (986ccf3879)
diff --git a/packages/agent/test/agent.test.ts b/packages/agent/test/agent.test.ts
--- a/packages/agent/test/agent.test.ts
+++ b/packages/agent/test/agent.test.ts
@@ -145,7 +145,7 @@
});
it("refreshes CUA runtime state when state.model changes", () => {
- const runtime = resolveCuaRuntimeSpec("google:gemini-3-pro-preview");
+ const runtime = resolveCuaRuntimeSpec("google:gemini-3-flash-preview");
const agent = new CuaAgent({
browser,
client,
@@ -154,7 +154,7 @@
},
});
- agent.state.model = "google:gemini-3-pro-preview";
+ agent.state.model = "google:gemini-3-flash-preview";
expect(agent.state.model.id).toBe(runtime.model.id);
expect(agent.state.systemPrompt).toBe(runtime.defaultSystemPrompt);
@@ -173,9 +173,9 @@
},
});
- agent.state.model = "google:gemini-3-pro-preview";
+ agent.state.model = "google:gemini-3-flash-preview";
- const runtime = resolveCuaRuntimeSpec("google:gemini-3-pro-preview");
+ const runtime = resolveCuaRuntimeSpec("google:gemini-3-flash-preview");
expect(agent.state.tools.map((item) => item.name)).toEqual([...runtime.toolExecutors.map((item) => item.definition.name), "custom"]);
expect(agent.state.systemPrompt).toBe("custom prompt");
});
@@ -284,7 +284,7 @@
});
it("refreshes CUA runtime state through setModel", async () => {
- const runtime = resolveCuaRuntimeSpec("google:gemini-3-pro-preview");
+ const runtime = resolveCuaRuntimeSpec("google:gemini-3-flash-preview");
const harness = new CuaAgentHarness({
...(await createHarnessServices()),
browser,
@@ -292,7 +292,7 @@
model: "openai:gpt-5.5",
});
- await harness.setModel("google:gemini-3-pro-preview");
+ await harness.setModel("google:gemini-3-flash-preview");
expect(harness.getModel().id).toBe(runtime.model.id);
expect(harness.getTools()).toHaveLength(runtime.toolExecutors.length);
@@ -324,7 +324,7 @@
});
await harness.setActiveTools([]);
- await harness.setModel("google:gemini-3-pro-preview");
+ await harness.setModel("google:gemini-3-flash-preview");
expect(harness.getActiveTools()).toEqual([]);
});
@@ -340,10 +340,10 @@
});
await harness.setActiveTools(["click", "screenshot"]);
- await harness.setModel("google:gemini-3-pro-preview");
+ await harness.setModel("google:gemini-3-flash-preview");
expect(harness.getTools()).toHaveLength(
- resolveCuaRuntimeSpec("google:gemini-3-pro-preview").toolExecutors.length,
+ resolveCuaRuntimeSpec("google:gemini-3-flash-preview").toolExecutors.length,
);
expect(harness.getActiveTools().map((tool) => tool.name)).toEqual(["click", "screenshot"]);You can send follow-ups to the cloud agent here.
Reviewed by Cursor Bugbot for commit dfab56d. Configure here.
| { match: { kind: "exact", id: "gemini-3-pro-preview" }, source: "https://ai.google.dev/gemini-api/docs/computer-use" }, | ||
| { match: { kind: "exact", id: "gemini-3.1-flash-lite" }, source: "https://ai.google.dev/gemini-api/docs/computer-use" }, | ||
| // gemini-3-pro-preview is intentionally absent: Google retired it and | ||
| // the API now returns 404 "model no longer available". |
There was a problem hiding this comment.
Agent tests reference removed model
Medium Severity
Removing gemini-3-pro-preview from CUA_MODEL_ANNOTATIONS while bumping @onkernel/cua-agent to @onkernel/cua-ai 0.2.2 leaves packages/agent/test/agent.test.ts calling resolveCuaRuntimeSpec and setModel with google:gemini-3-pro-preview. Those paths invoke getCuaModel, which now throws for that ref, so @onkernel/cua-agent tests fail against the updated workspace.
Reviewed by Cursor Bugbot for commit dfab56d. Configure here.



Summary
Follow-up to the model-annotation audit. Updates the
@onkernel/cua-aicomputer-use support table to match what the discovery smoke tests actually verify, and bumps versions so merging sets upmainfor a tag-triggered release.Annotations added (all passed the computer-use smoke test):
gpt-5.4-mini(openai) — family match; in pi-ai's registry, no override needed. Its docs page reportsComputer use: Supported.gemini-3.1-flash-lite(google) — exact match; in registry, no override.tzafon.northstar-cua-fast-1.6andtzafon.northstar-cua-fast-1.7-experiment(tzafon) — exact match plusCUA_MODEL_OVERRIDESentries, since pi-ai's registry does not carry them.Annotation removed:
gemini-3-pro-preview(google) — Google retired it; the API now returns404 "This model is no longer available."for every request, so the annotation pointed at a dead model. No Pro-tier successor currently passes the computer-use smoke (gemini-3.1-pro-preview/gemini-3.5-flashreturn "Computer Use is not enabled" / EAP-only), so nothing replaces it.Deliberately excluded:
gemini-3.1-flash-lite-preview— superseded by the stablegemini-3.1-flash-liteabove.Version bumps
@onkernel/cua-ai0.2.1 → 0.2.2@onkernel/cua-agent0.3.1 → 0.3.2 (its@onkernel/cua-aidependency bumped to 0.2.2)package-lock.jsonupdated.After merge, cut the release by pushing the tags per the release skill (AI first):
cua-ai/v0.2.2, thencua-agent/v0.3.2.Test plan
npm run typecheck(exit 0)npm test --workspace @onkernel/cua-ai(88 passed; updatedmodels.test.tsto cover the new ids and the gemini-3-pro-preview removal)listCuaModelsincludes the four new ids; the two tzafon ids resolve via overrides;getCuaModel("google:gemini-3-pro-preview")now throws🤖 Generated with Claude Code
Note
Low Risk
Catalog and version-bump only; no runtime or auth changes, though callers pinned to gemini-3-pro-preview will need another Google CUA model.
Overview
@onkernel/cua-ai 0.2.2 refreshes the computer-use model catalog in
CUA_MODEL_ANNOTATIONSand related docs/tests: addsgpt-5.4-mini(OpenAI family),gemini-3.1-flash-lite(Google exact), andtzafon.northstar-cua-fast-1.6/1.7-experiment(Tzafon exact +CUA_MODEL_OVERRIDESwhere pi-ai lacks them). Removes retiredgemini-3-pro-previewsolistCuaModels/getCuaModelno longer advertise it.@onkernel/cua-agent 0.3.2 bumps its
@onkernel/cua-aidependency to 0.2.2; lockfile and changelogs updated for release.Reviewed by Cursor Bugbot for commit dfab56d. Bugbot is set up for automated code reviews on this repo. Configure here.