Skip to content

[FEATURE]: Stable glm-flash-latest and deepseek-flash-latest routing aliases #52403

Closed as not planned

Description

@JacksonJRay

Feature hasn't been suggested before.

  • 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

  1. glm-flash-latest and deepseek-flash-latest are valid model IDs in /models, config (model, agent model), and routing.
  2. 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).
  3. 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.

Activity

  1. github-actions commented on Oct 1, 2026

    @github-actions
    Contributor

    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.
  2. JacksonJRay commented on Oct 1, 2026

    @JacksonJRay
    Author

    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.

  3. neriousy commented on Oct 21, 2026

    @neriousy
    Member

    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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions