Files
tai/research/free-model-discovery/opencode-zen-v1-models.md
T

2.0 KiB

OpenCode Zen /v1/models listing

Metadata

Field Value
Institute Molodetz Institute — Research & Retrieval Division
Subject free-model-discovery
Document type Source Dossier
Tier 1
Source title OpenCode Zen /v1/models listing
Source URL https://opencode.ai/zen/v1/models
Source publisher / author OpenCode (opencode.ai)
Source type vendor docs
Source date (published) Unknown — not stated
Date researched 2026-10-12
Researched by tai (agent), model: Claude Sonnet 5, on behalf of retoor
Research method direct page fetch
Confidence Medium
Status Active

Summary

Unauthenticated GET returns an OpenAI-style model list. Plain urllib is refused with HTTP 403; the request only succeeds with opencode client headers (User-Agent and x-opencode-*), as curl's default agent was accepted but Python's was not.

Key findings

  • 2026-10-12 listing held 80+ ids, of which these end in -free: ling-3.1-flash-free, mimo-v2.6-flash-free, muse-spark-1.2-contributor-free, muse-spark-1.3-contributor-free, nemotron-3.5-lightning-free, jev-1.13-free, step-5-preview-free, longcat-2.5-preview-free, space-bunny-free.
  • big-pickle is listed without a -free suffix; its price was not verified.
  • tai's static list still named nemotron-3-ultra-free, exo-free, ling-3.0-flash-fin-free and fledge-alpha-free, none of which the endpoint listed.

Pros / strengths

Live, machine-readable, and the same endpoint tai calls at runtime, so what it reports is what a request will actually see.

Cons / limitations / caveats

The listing carries no price field, so freeness is inferred from the -free suffix only. Anti-bot behaviour (403 for default Python agent) may change.

Relevance to tai

Zen candidates used a hard-coded list that had drifted. Discovery now reads this endpoint (with opencode headers) and caches it.

Changelog

Date Change
2026-10-12 Initial dossier created.