Coding tools
Any coding agent that can talk to a custom OpenAI Chat Completions endpoint
can use ResetData. Our API serves POST /api/v1/chat/completions only — not
OpenAI’s Responses API (/responses) or Anthropic’s Messages API
(/v1/messages) — so some tools need a setting or a proxy, covered below.
The examples use zai/glm-5.3. Swap in any chat model slug from the
catalog. The Tool Setup panel in the
playground generates these snippets for the model you have selected.
Every tool reads your key from an environment variable, so it never sits in a config file:
export RESETDATA_API_KEY="sk-rd-..."OpenCode
Section titled “OpenCode”OpenCode ships two release lines, 1.x and 2.x, with different config formats. Check which one you have first:
opencode --versionBoth lines read the same config files — opencode.json in your project, or
~/.config/opencode/opencode.json globally. OpenCode 2 still reads the 1.x
format, but OpenCode 1 cannot read the 2.x format. If you switch between
versions, or share the file with someone on 1.x, use the OpenCode 1 config.
{ "$schema": "https://opencode.ai/config.json", "providers": { "resetdata": { "name": "ResetData", "env": ["RESETDATA_API_KEY"], "package": "@opencode/ai/providers/openai-compatible", "settings": { "baseURL": "https://api.resetdata.ai/api/v1" }, "models": { "zai/glm-5.3": { "name": "zai/glm-5.3" } } } }, "model": "resetdata/zai/glm-5.3"}{ "$schema": "https://opencode.ai/config.json", "provider": { "resetdata": { "npm": "@ai-sdk/openai-compatible", "name": "ResetData", "env": ["RESETDATA_API_KEY"], "options": { "baseURL": "https://api.resetdata.ai/api/v1" }, "models": { "zai/glm-5.3": { "name": "zai/glm-5.3" } } } }, "model": "resetdata/zai/glm-5.3"}env tells OpenCode which environment variable holds the key. With
RESETDATA_API_KEY exported, run opencode.
Without a limit entry OpenCode does not know the model’s context window, so it
will not compact a long session for you. To turn that on, add the model’s
context length from the catalog. In OpenCode 2 that is
"limit": { "context": <tokens> } on the model. OpenCode 1 needs both
context and output set.
Add a provider to ~/.codex/config.toml:
model = "zai/glm-5.3"model_provider = "resetdata"
[model_providers.resetdata]name = "ResetData"base_url = "https://api.resetdata.ai/api/v1"env_key = "RESETDATA_API_KEY"wire_api = "chat"wire_api = "chat" matters. Recent Codex builds default to the Responses API,
which ResetData does not serve. If your Codex build no longer accepts "chat",
you need a proxy that translates the Responses API to Chat Completions in front
of ResetData.
Claude Code
Section titled “Claude Code”Claude Code speaks only Anthropic’s Messages API, so it cannot connect to
ResetData directly. Run an Anthropic-to-OpenAI translating proxy (for example
LiteLLM) that forwards to https://api.resetdata.ai/api/v1, then point Claude
Code at the proxy:
export ANTHROPIC_BASE_URL="<your-anthropic-format-proxy-url>"export ANTHROPIC_AUTH_TOKEN="$RESETDATA_API_KEY"export ANTHROPIC_MODEL="zai/glm-5.3"claudeANTHROPIC_AUTH_TOKEN is sent as a Bearer token. Use ANTHROPIC_API_KEY
instead if your proxy expects the x-api-key header.