You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[FEATURE]: Stable glm-flash-latest and deepseek-flash-latest routing aliases #52403
I have verified this feature I'm about to request hasn't been suggested before.
Describe the enhancement you want to request
Add first-class routing aliases:
glm-flash-latest
deepseek-flash-latest
so a user can pin the Flash tier in config / agents / model routing and keep using that name after vendor IDs change.
Problem
Flash models keep getting renamed (deepseek-v4-flash → deepseek-v4.1-flash / deepseek-flash, GLM Flash moving across glm-5.2 / glm-5.3-flash, etc.). Configs, default agents, and saved workflows that hardcode a versioned ID break or silently land on a different model. Related fallout is already showing up in #48420 and #48419. Those are bugs from a rename. This request is the stable name so the next rename does not do the same thing.
Wanted behavior
glm-flash-latest and deepseek-flash-latest are valid model IDs in /models, config (model, agent model), and routing.
Each alias always resolves to the current official Flash checkpoint for that family on the selected provider (OpenCode Go / Zen first, then the provider the user connected).
Versioned IDs stay available for people who want a freeze. -latest is the pin-to-tier option, not a replacement for pinning a specific snapshot.
Why this belongs in OpenCode
People already route cheap Flash models for orchestration and daily work. That only stays reliable if the name in opencode.json is a contract. Right now the contract is the vendor's latest string, and that string keeps moving.
This issue may overlap with an existing model-alias feature request. Please check:
[FEATURE]: custom model aliases #3439: Requests configurable model aliases that let agents and commands use stable names mapped to concrete models. This request focuses on built-in aliases that track the latest Flash model for a family.
The request for that issue is for the user to have the ability to provide the alias and what is behind it. I would think there is more value in opencode inference endpoint to pin latest to a latest model of the provider type like flash series or newest releases. So that when someone creates an agent, sub-agent, or a workflow variant they can pin to opencode latest tag. The issue with 3439 is that the models pinned behind a local alias might not be available at some point and are more prone to change. Where a pinned latest one anomalyco's inference endpoint side is a different story. It is predictable, changes with user needing to be aware, and stays with model change without user needing to update model names or aliases on their side.
Thanks for the suggestion. We're keeping Zen and Go model IDs versioned, so we're not planning -latest aliases on the hosted side right now. You can define a stable name yourself in config: the key in a provider's models map is the ID you use in OpenCode, and modelID is what gets sent to the provider. For example, add "deepseek-flash-latest": { "modelID": "deepseek-v4.1-flash" } under the provider, point your agents at <provider>/deepseek-flash-latest, and update that one line when a new Flash model ships (https://opencode.ai/v2/docs/providers#models). Closing as not planned.
Activity
github-actions commentedon Oct 1, 2026
This issue may overlap with an existing model-alias feature request. Please check:
JacksonJRay commentedon Oct 1, 2026
The request for that issue is for the user to have the ability to provide the alias and what is behind it. I would think there is more value in opencode inference endpoint to pin latest to a latest model of the provider type like flash series or newest releases. So that when someone creates an agent, sub-agent, or a workflow variant they can pin to opencode latest tag. The issue with 3439 is that the models pinned behind a local alias might not be available at some point and are more prone to change. Where a pinned latest one anomalyco's inference endpoint side is a different story. It is predictable, changes with user needing to be aware, and stays with model change without user needing to update model names or aliases on their side.
neriousy commentedon Oct 21, 2026
Thanks for the suggestion. We're keeping Zen and Go model IDs versioned, so we're not planning
-latestaliases on the hosted side right now. You can define a stable name yourself in config: the key in a provider'smodelsmap is the ID you use in OpenCode, andmodelIDis what gets sent to the provider. For example, add"deepseek-flash-latest": { "modelID": "deepseek-v4.1-flash" }under the provider, point your agents at<provider>/deepseek-flash-latest, and update that one line when a new Flash model ships (https://opencode.ai/v2/docs/providers#models). Closing as not planned.