Repository navigation
Feature: add Freebuff provider preset for free DeepSeek (blocked on official OpenAI-compatible endpoint) #1919
Description
Summary
Request: add a Freebuff provider preset to opencodex so Codex / Claude Code / OpenCode users can route free DeepSeek (and Freebuff's other included models) through the proxy.
This is not a config-only change today, because Freebuff does not expose a public OpenAI-compatible endpoint. The blocker is upstream. This issue documents the analysis and asks Freebuff for the one thing that would make a clean integration possible: an official OpenAI-compatible API surface.
Why this is worth doing
Freebuff (freebuff.com, GitHub CodebuffAI/freebuff, Apache-2.0, ~9.7k stars) is a genuinely free, ad-supported coding agent with DeepSeek V4 Pro / V4 Flash, GPT-5.6 Luna, MiniMax M3, and MiMo 2.5 in its model picker. For users who want free DeepSeek through opencodex, it is the most model-rich free option after the existing built-in opencode-free provider (which already serves deepseek-v4-flash-free from https://opencode.ai/zen/v1, no key needed — that path already works today).
A Freebuff preset would extend that free-DeeSeek story with a wider model catalog, so it is a real value-add rather than a duplicate.
Blocker: no public OpenAI-compatible endpoint
Freebuff's CLI/Desktop/Web products talk to the Codebuff backend (codebuff.com / www.codebuff.com) through a session + agent-run flow (/api/v1/agent-runs, instance/session metadata, codebuff_metadata). There is no /v1/chat/completions or /v1/responses surface to point a provider preset at.
The only bridges that exist are third-party community proxies (Quorinex/Freebuff2API, ferdiunal/freebuff-proxy, pingmike2/freebuff2api-wokers). All three have problems that make them unsuitable to bundle into opencodex:
- No official endpoint — a preset needs a stable
baseUrl. None exists. - ToS risk —
Freebuff2APIadvertises "Stealth Request Handling: dynamic randomized client fingerprints that mimic official Freebuff SDK behavior" (i.e. ad-stripping by impersonation). Bundling that into opencodex would likely violate Freebuff's terms and get users banned. - Responses API gap — opencodex speaks the OpenAI Responses API (
/v1/responses).ferdiunal/freebuff-proxyexplicitly notes it does not yet serve/v1/responses, only Chat Completions, so it would not work end-to-end with Codex as-is. - Auth extraction — every bridge needs a Freebuff auth token pulled from a logged-in session plus token rotation. Fragile and account-bound.
A literal id: "freebuff" preset pointing at a community proxy would be experimental, ToS-violating, and Responses-incompatible. I am deliberately not raising that as a PR.
The clean path (what this issue asks for)
Ask Freebuff to ship an official OpenAI-compatible endpoint (Chat Completions and/or Responses). If/when that exists, the opencodex preset is a one-entry addition to src/providers/registry.ts, modeled on the existing keyless free tier:
{
id: "freebuff",
label: "Freebuff",
adapter: "openai-chat", // or openai-responses once upstream ships it
baseUrl: "https://<freebuff-openai-compat-endpoint>/v1",
authKind: "key", // Freebuff account token
keyOptional: false,
freeTier: true,
defaultModel: "deepseek/deepseek-v4-flash",
models: ["deepseek/deepseek-v4-pro", "deepseek/deepseek-v4-flash", "gpt-5.6-luna", "minimax-m3", "mimo-2.5"],
note: "Free, ad-supported models (DeepSeek V4 Pro/Flash, GPT-5.6 Luna, MiniMax M3, MiMo 2.5). Requires a Freebuff account token. Ad-supported; see Freebuff terms.",
}Plus the matching deepseekThinkingEffortsFor / preserveReasoningContentModels wiring already used for opencode-free/deepseek-v4-flash-free so DeepSeek thinking-mode tool-call continuations do not 400.
What can land without upstream
Until Freebuff ships an endpoint, the only safe, in-repo action is documentation: a note in the providers guide that free DeepSeek is already available via opencode-free (opencode-free/deepseek-v4-flash-free, keyless), and that Freebuff is tracked pending an official OpenAI-compatible API. I can open a docs PR for that if maintainers want it.
References
- opencodex provider registry:
src/providers/registry.ts(opencode-freeentry at ~line 2386 already serves free DeepSeek) - Freebuff: https://freebuff.com , https://github.com/CodebuffAI/freebuff
- Community bridges (not recommended for bundling):
Quorinex/Freebuff2API,ferdiunal/freebuff-proxy,pingmike2/freebuff2api-wokers
Activity
coderabbitai commentedon Aug 17, 2026
🔗 Related PRs
#407 - feat(gui): add provider model loader [open]
#653 - feat(providers): add Baseten Model APIs preset [merged]
#747 - feat(providers): add DeepInfra preset [merged]
#870 - feat(providers): add SambaNova and Nebius presets [merged]
#937 - feat(providers): add Nscale and Vultr presets [merged]
📝 Issue Planner
Check the box below or use the
@coderabbitai plancommand to generate an implementation plan and prompts that you can use with your favorite coding assistant.🧪 Issue enrichment is currently in open beta.
To disable automatic issue enrichment, add the following to your
.coderabbit.yaml:💬 Have feedback or questions? Drop into our discord!
github-actions commentedon Aug 17, 2026
Issue closed: use an issue template
Thanks for taking the time to submit this issue. It was closed automatically because it was not opened with a recognized issue template (Bug report, Feature request, Documentation, or Provider compatibility). Freeform and API-opened issues cannot skip this check.
Please edit the issue to add:
See the Contributing guide for details.
Once the report passes the automated checks, it will be reopened automatically unless a maintainer has changed its state.