Skip to content

agent: OpenCode model updates (+6 Go, +7/-1 Zen, removed Free) (#61199) (cherry-pick to preview) - #62869

Merged
zed-zippy[bot] merged 1 commit into
v1.16.xfrom
cherry-pick-v1.16.x-99f4c21c
Aug 19, 2026
Merged

agent: OpenCode model updates (+6 Go, +7/-1 Zen, removed Free) (#61199) (cherry-pick to preview)#62869
zed-zippy[bot] merged 1 commit into
v1.16.xfrom
cherry-pick-v1.16.x-99f4c21c

Conversation

@zed-zippy

@zed-zippy zed-zippy Bot commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

Cherry-pick of #61199 to preview


Closes #62559
Related discussion:
#61160

Objective

Adding newly-released OpenCode models. Removing OpenCode Free models
completely.

Solution

Tip

This pull request is best reviewed commit-by-commit!

OpenCode Go:

  • added Kimi K3 as per
    [1]
    and
    [2].
    Currently, the only supported reasoning level available is Max which
    was validated both with Models.dev data and OpenCode CLI.
  • added Grok 4.5 as per
    [1]
    and
    [2]
  • added Tencent Hy3 as per
    [1]
    and
    [2]
  • added GPT 5.6 Luna as per
    [1] and
    [2]
  • added Qwen 3.8 Max as per
    [1]
    and
    [2]
  • added GLM 5.3 as per
    [1]
    and
    [2]
    and [3]

OpenCode Zen:

  • added Gemini 3.5 Flash Lite as per
    [1]
    and
    [2]
  • added Gemini 3.6 Flash as per
    [1]
    and
    [2]
  • added Gemini 3.7 Flash as per
    [1] and
    [2]
    and [3] and
    [4]
  • added Claude Opus 5 as per
    [1]
    and
    [2]
  • added Kimi K3 as per
    [1]
    and
    [2]
  • added Grok 4.6 as per
    [1]
    and
    [2]
    and [3]
  • added Muse Spark 1.2 as per
    [1]
    and
    [2]
    and [3]
  • removed Claude Opus 4.1 as per
    [1]

OpenCode Free: removed all the models and the whole concept of
"OpenCode Free" from Zed. As confirmed by an Anomaly employee on the
OpenCode
Discord
,
free models are now OpenCode-only since they got abused waaaaay too much
by people. Testing shows that even with an active OpenCode Go
subscription configured, I can't use Free models in Zed — both Big
Pickle and DeepSeek V4 Flash Free failed to reply to a "hello" message
and instead returned a rate-limit error.
A full removal of OpenCode Free from Zed was implemented in
49acbf7
as there was no point in keeping a "Show free models" toggle that
would confuse users.
Users that had show_free_models configures in Zed settings will get an
Property show_free_models is not allowed. notice. Users that had any
Custom OpenCode models with "subscription": "free" configured will get
an Value is not accepted. Valid values: "zen", "go". notice. Neither
are blocking errors.

Testing

✅ Kimi K3 on OpenCode Go - happily confirmed Kimi K3 works by running a
simple "rename this variable for me. add a function. delete the
function
" test.

✅ Grok 4.5 on OpenCode Go - bravely resisted the continuous and
relentless waves of disgust and confirmed Grok 4.5 works by running a
simple "rename this variable for me. add a function. delete the
function
" test. I was a bit surprised this worked as I was located in
an EU country while testing this.

✅ Hy3 on OpenCode Go - happily confirmed Hy3 works by running a simple
"rename this variable for me. add a function. delete the function"
test.

✅ GPT 5.6 Luna on OpeCode Go - confirmed GPT 5.6 Luna works on OpenCode
Go by running a simple "rename this variable for me. add a function.
delete the function
" test.

✅ Qwen 3.8 Max on OpeCode Go - confirmed Qwen 3.8 Max works on OpenCode
Go by running a simple "rename this variable for me. add a function.
delete the function
" test.

✅ GLM 5.3 on OpeCode Go - confirmed GLM 5.3 works on OpenCode Go by
running a simple "rename this variable for me. add a function. delete
the function
" test.

🤷 I did not test the new OpenCode Zen models (Claude Opus 5, Gemini 3.5
Flash Lite, Gemini 3.6 Flash, Kimi K3, Grok 4.6, Gemini 3.7 Flash, and
Muse Spark 1.2) as I don't have a Zen subscription and I am stubbornly
refusing to get one.

✅ Confirmed removal of OpenCode Free does not impact the rest of the
OpenCode. Confirmed that any Free-related settings generate notices and
not errors. Confirmed the OpenCode tab in Setting looks good.

Self-Review Checklist:

  • I've reviewed my own diff for quality, security, and reliability
  • Unsafe blocks (if any) have justifying comments
  • The content adheres to Zed's UI standards
    (UX/UI
    and
    icon
    guidelines)
  • Tests cover the new/changed behavior
  • Performance impact has been considered and is acceptable

Showcase

Screenshots of the OpenCode Free deprecation warnings

Notice shown in the corner of Zed:
Notice banner shown in Zed

Notice shown in Settings -> LLM Providers -> OpenCode:
Settings screen showing unexpected
values

Notice shown in settings.json:
Notices shown in settings.json


Release Notes:

  • Removed OpenCode Free models from Zed's built-in OpenCode provider
    because they are only available through OpenCode surfaces, such as its
    external agent through ACP.
  • Added Kimi K3, Grok 4.5, Hy3, GPT 5.6 Luna, Qwen 3.8 Max, and GLM 5.3
    to OpenCode Go.
  • Added Claude Opus 5, Gemini 3.5 Flash Lite, Gemini 3.6 Flash, Gemini
    3.7 Flash, Kimi K3, Grok 4.6, and Muse Spark 1.2 to OpenCode Zen.
  • Removed the deprecated Claude Opus 4.1 model from OpenCode Zen.

Tip

This pull request is best reviewed commit-by-commit!


Co-authored-by: dino dinojoaocosta@gmail.com

Closes #62559
Related discussion:
https://github.com/zed-industries/zed/discussions/61160

# Objective

Adding newly-released OpenCode models. Removing OpenCode Free models
completely.

## Solution

> [!TIP]
> This pull request is **best reviewed commit-by-commit**!

**OpenCode Go**:
- added **Kimi K3** as per
[[1]](https://github.com/anomalyco/models.dev/blob/89183a9646cf2fa30300f7203a5b4f2ca69d1374/providers/opencode-go/models/kimi-k3.toml)
and
[[2]](https://github.com/anomalyco/models.dev/blob/dev/models/moonshotai/kimi-k3.toml).
Currently, the only supported reasoning level available is `Max` which
was validated both with Models.dev data and OpenCode CLI.
- added **Grok 4.5** as per
[[1]](https://github.com/anomalyco/models.dev/blob/89183a9646cf2fa30300f7203a5b4f2ca69d1374/providers/opencode-go/models/grok-4.5.toml)
and
[[2]](https://github.com/anomalyco/models.dev/blob/89183a9646cf2fa30300f7203a5b4f2ca69d1374/models/xai/grok-4.5.toml)
- added **Tencent Hy3** as per
[[1]](anomalyco/models.dev@b013d94)
and
[[2]](https://github.com/anomalyco/models.dev/blob/f63b5ce78dd78869faa0612353b1055f6608dc97/models/tencent/hy3.toml)
- added **GPT 5.6 Luna** as per
[[1]](anomalyco/opencode#39812) and
[[2]](https://github.com/anomalyco/models.dev/blob/dev/providers/opencode-go/models/gpt-5.6-luna.toml)
- added **Qwen 3.8 Max** as per
[[1]](anomalyco/models.dev@403a7bd)
and
[[2]](anomalyco/opencode@e9e7472)
- added **GLM 5.3** as per
[[1]](https://github.com/anomalyco/models.dev/blob/3876740bf4f0290e014bc85340e1dba34f0e99a7/models/zhipuai/glm-5.3.toml)
and
[[2]](anomalyco/models.dev@94a1629)
and [[3]](anomalyco/opencode#42518)

**OpenCode Zen**:
- added **Gemini 3.5 Flash Lite** as per
[[1]](https://github.com/anomalyco/models.dev/blob/f63b5ce78dd78869faa0612353b1055f6608dc97/providers/opencode/models/gemini-3.5-flash-lite.toml)
and
[[2]](https://github.com/anomalyco/models.dev/blob/f63b5ce78dd78869faa0612353b1055f6608dc97/models/google/gemini-3.5-flash-lite.toml)
- added **Gemini 3.6 Flash** as per
[[1]](https://github.com/anomalyco/models.dev/blob/f63b5ce78dd78869faa0612353b1055f6608dc97/providers/opencode/models/gemini-3.6-flash.toml)
and
[[2]](https://github.com/anomalyco/models.dev/blob/f63b5ce78dd78869faa0612353b1055f6608dc97/models/google/gemini-3.6-flash.toml)
- added **Gemini 3.7 Flash** as per
[[1]](anomalyco/models.dev#4632) and
[[2]](anomalyco/models.dev@b1810e3)
and [[3]](anomalyco/opencode#42390) and
[[4]](anomalyco/opencode#42393)
- added **Claude Opus 5** as per
[[1]](anomalyco/models.dev@e3ae24c)
and
[[2]](anomalyco/models.dev@342b557)
- added **Kimi K3** as per
[[1]](anomalyco/opencode@a9bebd3)
and
[[2]](anomalyco/models.dev@38ccccc)
- added **Grok 4.6** as per
[[1]](anomalyco/models.dev@74789f5)
and
[[2]](anomalyco/opencode@d92d1e6)
and [[3]](anomalyco/models.dev#4575)
- added **Muse Spark 1.2** as per
[[1]](anomalyco/models.dev@fa03dca)
and
[[2]](https://github.com/anomalyco/models.dev/blob/3876740bf4f0290e014bc85340e1dba34f0e99a7/models/meta/muse-spark-1.2.toml)
and [[3]](anomalyco/opencode#42508)
- removed **Claude Opus 4.1** as per
[[1]](anomalyco/models.dev@6951484)

**OpenCode Free**: removed all the models and the whole concept of
"OpenCode Free" from Zed. As confirmed [by an Anomaly employee on the
OpenCode
Discord](https://discord.com/channels/1391832426048651334/1394667004979445931/1537530485356363899),
free models are now OpenCode-only since they got abused waaaaay too much
by people. Testing shows that even with an active OpenCode Go
subscription configured, I can't use Free models in Zed — both Big
Pickle and DeepSeek V4 Flash Free failed to reply to a _"hello"_ message
and instead returned a rate-limit error.
A full removal of OpenCode Free from Zed was implemented in
49acbf7
as there was no point in keeping a _"Show free models"_ toggle that
would confuse users.
Users that had `show_free_models` configures in Zed settings will get an
`Property show_free_models is not allowed.` notice. Users that had any
Custom OpenCode models with `"subscription": "free"` configured will get
an `Value is not accepted. Valid values: "zen", "go".` notice. Neither
are blocking errors.

## Testing

✅ Kimi K3 on OpenCode Go - happily confirmed Kimi K3 works by running a
simple "_rename this variable for me. add a function. delete the
function_" test.

✅ Grok 4.5 on OpenCode Go - bravely resisted the continuous and
relentless waves of disgust and confirmed Grok 4.5 works by running a
simple "_rename this variable for me. add a function. delete the
function_" test. I was a bit surprised this worked as I was located in
an EU country while testing this.

✅ Hy3 on OpenCode Go - happily confirmed Hy3 works by running a simple
"_rename this variable for me. add a function. delete the function_"
test.

✅ GPT 5.6 Luna on OpeCode Go - confirmed GPT 5.6 Luna works on OpenCode
Go by running a simple "_rename this variable for me. add a function.
delete the function_" test.

✅ Qwen 3.8 Max on OpeCode Go - confirmed Qwen 3.8 Max works on OpenCode
Go by running a simple "_rename this variable for me. add a function.
delete the function_" test.

✅ GLM 5.3 on OpeCode Go - confirmed GLM 5.3 works on OpenCode Go by
running a simple "_rename this variable for me. add a function. delete
the function_" test.


🤷 I did not test the new OpenCode Zen models (Claude Opus 5, Gemini 3.5
Flash Lite, Gemini 3.6 Flash, Kimi K3, Grok 4.6, Gemini 3.7 Flash, and
Muse Spark 1.2) as I don't have a Zen subscription and I am stubbornly
refusing to get one.

✅ Confirmed removal of OpenCode Free does not impact the rest of the
OpenCode. Confirmed that any Free-related settings generate notices and
not errors. Confirmed the OpenCode tab in Setting looks good.

## Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content adheres to Zed's UI standards
([UX/UI](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
and
[icon](https://github.com/zed-industries/zed/blob/main/crates/icons/README.md)
guidelines)
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

## Showcase

<details>
<summary>Screenshots of the OpenCode Free deprecation warnings</summary>

**Notice shown in the corner of Zed**:
<img width="345" height="90" alt="Notice banner shown in Zed"
src="https://github.com/user-attachments/assets/3e65ba96-582c-424e-9335-1b43d6c632a8"
/>

**Notice shown in Settings -> LLM Providers -> OpenCode**:
<img width="421" height="323" alt="Settings screen showing unexpected
values"
src="https://github.com/user-attachments/assets/a5eb6005-8576-4311-8b23-9c5baf314d8d"
/>

**Notice shown in `settings.json`**:
<img width="569" height="231" alt="Notices shown in settings.json"
src="https://github.com/user-attachments/assets/475375a1-268c-4420-8ef7-a896548e4498"
/>

</details>

---

Release Notes:

- Removed OpenCode Free models from Zed's built-in OpenCode provider
because they are only available through OpenCode surfaces, such as its
external agent through ACP.
- Added Kimi K3, Grok 4.5, Hy3, GPT 5.6 Luna, Qwen 3.8 Max, and GLM 5.3
to OpenCode Go.
- Added Claude Opus 5, Gemini 3.5 Flash Lite, Gemini 3.6 Flash, Gemini
3.7 Flash, Kimi K3, Grok 4.6, and Muse Spark 1.2 to OpenCode Zen.
- Removed the deprecated Claude Opus 4.1 model from OpenCode Zen.

----

> [!TIP]
> This pull request is **best reviewed commit-by-commit**!

---------

Co-authored-by: dino <dinojoaocosta@gmail.com>
@cla-bot cla-bot Bot added the cla-signed The user has signed the Contributor License Agreement label Aug 19, 2026
@zed-community-bot zed-community-bot Bot added the bot Pull requests authored by a bot label Aug 19, 2026
@zed-zippy
zed-zippy Bot merged commit d5953f9 into v1.16.x Aug 19, 2026
46 checks passed
@zed-zippy
zed-zippy Bot deleted the cherry-pick-v1.16.x-99f4c21c branch August 19, 2026 11:27
olejorgenb added a commit to olejorgenb/zed that referenced this pull request Aug 19, 2026
Three fixes to `script/find-release-commit`:

- Under `set -euo pipefail`, the `match=$(git log ... | grep ...)` assignment
  aborted the whole script the first time a PR number wasn't found on main, so
  it exited 1 without printing anything -- not even the merge-base fallback it
  was supposed to reach. Guard the assignment with `|| true`, which also covers
  a SIGPIPE from `head` closing the pipe.

- A subject can carry more than one PR number, and which one lives on main
  differs by case: for `foo (zed-industries#61199) (cherry-pick to preview) (zed-industries#62869)` only
  zed-industries#61199 is on main, while for `Revert "foo (zed-industries#61467)" (zed-industries#62399)` it's zed-industries#62399 --
  zed-industries#61467 is the far older commit being undone. Taking the first match traced
  reverts to the wrong commit; try the numbers right-to-left instead.

- When the fallback does kick in, list the commits that couldn't be traced
  (capped at `UNTRACED_LIMIT`, default 20) so the warning explains itself.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bot Pull requests authored by a bot cla-signed The user has signed the Contributor License Agreement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant