anomalyco / anomalyco/opencode

FreeUsageLimitError persists 10+ days on deepseek-v4-flash-free even for minimal requests — while other free models work

Open
#42,977 6 comments 2 reactions 1 assignee View on GitHub

@fwang is already working on this.

Since Aug 17, 2026.

Dominant language
TypeScript
Stars
209k
Forks
27.5k
PR merge metrics
PR metrics pending

Description

Description

The deepseek-v4-flash-free model on OpenCode Zen consistently returns 429 FreeUsageLimitError for any request from my client, including a minimal one-message request. The error has persisted for 10+ days with no recovery.

Error returned by the provider:

429 FreeUsageLimitError: "Rate limit exceeded. Please try again later."

This no longer looks like a usage-volume issue — even a single tiny request fails immediately.

Plugins

none

OpenCode version

N/A (using the OpenCode Zen API endpoint https://opencode.ai/zen/v1 via a self-hosted AI gateway)

Steps to reproduce
  1. Send a request to https://opencode.ai/zen/v1/chat/completions.
  2. Use model deepseek-v4-flash-free.
  3. Send even a minimal request:
curl -X POST "https://opencode.ai/zen/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -d '{"model":"deepseek-v4-flash-free","messages":[{"role":"user","content":"hi"}],"max_tokens":1}'

Result: HTTP 429 with FreeUsageLimitError.

Observed behavior
  • deepseek-v4-flash-free → 429 (even a single "hi")
  • mimo-v2.5-free → 429
  • big-pickle → 429
  • longcat-2.0-free → 429
  • nemotron-3-ultra-free → 200
  • laguna-s-2.1-free → 200

The failure is model-specific from the same client/IP, and has not cleared after 10+ days.

Expected behavior
  • A minimal request should succeed, or if throttled, the limit should recover after the relevant window rather than staying blocked for 10+ days.
  • At minimum, it should be possible to distinguish a temporary usage limit from a persistent per-IP/per-model flag.
Screenshot and/or share link

No response

Operating System

Linux (VPS)

Terminal

Self-hosted AI gateway (direct curl reproduces the 429 upstream)

Additional context
  • Appears related to #42385, #33318, #33495, #32971.
  • The model-specific pattern (some free models OK, others 429 from the same client/IP) suggests a per-model free-usage flag rather than a total block.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.