Coding tools
Coding tools
Use Unaligned models in your editor or coding agent. Pick the tool, copy its setup, keep your workflow.
Every tool talks to one of our two compatible formats. Use the one it was built for: the same key, balance and models work in both.
| Tool | Format | Base URL | Guide |
|---|---|---|---|
| Claude Code (CLI, VS Code, JetBrains) | Anthropic | https://api.unaligned.pw/anthropic | Claude Code |
| OpenCode | OpenAI | https://api.unaligned.pw/openai/v1 | OpenCode |
| Codex (CLI, IDE extension) | OpenAI | https://api.unaligned.pw/openai/v1 | Codex |
| Command Code | OpenAI, Anthropic for Claude | https://api.unaligned.pw/openai/v1 | Command Code |
| VS Code: Copilot Chat, Cline, Roo Code, Kilo Code, Continue | OpenAI or Anthropic | https://api.unaligned.pw/openai/v1 | VS Code |
| Cursor | OpenAI | https://api.unaligned.pw/openai/v1 | Cursor |
| Zed, Open WebUI, anything else | OpenAI | https://api.unaligned.pw/openai/v1 | Other tools |
Set up with one prompt
Paste the prompt for your tool into an AI agent that can edit files, such as Claude Code or Codex: it writes the configuration below for you and checks the key.
Set up Claude Code on this computer to use Unaligned, an AI API, with my key.
API key: <paste your sk-unal-… key here>
OpenAI-compatible base URL: https://api.unaligned.pw/openai/v1
Anthropic-compatible base URL: https://api.unaligned.pw/anthropic
Model list (public JSON, no key needed): https://api.unaligned.pw/v1/models
Full guide: https://unaligned.pw/docs/claude-code
Steps:
1. Fetch the model list and show it to me as a short table: id, name, context, input and output price (USD per million tokens), and whether it is uncensored or reasoning. Skip models whose status is "down". Then ask me to choose a main model (suggest claude-sonnet-5-5), a stronger one for /model opus (suggest claude-opus-5-5) and a cheap small one for background work (suggest claude-haiku-5-5), and wait for my answer. If I just say "ok", use the suggestions.
2. Add an "env" block to ~/.claude/settings.json (create the file if needed, keep what is already there) with: ANTHROPIC_BASE_URL = "https://api.unaligned.pw/anthropic" (no /v1, Claude Code adds it), ANTHROPIC_AUTH_TOKEN = the key, ANTHROPIC_MODEL and ANTHROPIC_DEFAULT_SONNET_MODEL = the main model, ANTHROPIC_DEFAULT_OPUS_MODEL = the stronger one, ANTHROPIC_DEFAULT_HAIKU_MODEL = the small one.
3. If the main model is not a Claude model, also set CLAUDE_CODE_MAX_CONTEXT_TOKENS to its "context": Claude Code assumes 200,000 otherwise.
4. Never put the key in a project’s .claude/settings.json: it gets committed with the code.
5. If I use the VS Code extension, also add to VS Code’s user settings.json: "claudeCode.environmentVariables" with ANTHROPIC_BASE_URL and ANTHROPIC_AUTH_TOKEN, and "claudeCode.disableLoginPrompt": true.
6. Then tell me to restart claude, run /logout once if I was logged in with a claude.ai account, and check /status shows the Unaligned URL.
7. Check the key works: curl https://api.unaligned.pw/anthropic/v1/messages -H "Authorization: Bearer <key>" -H "content-type: application/json" -d '{"model": "claude-haiku-5-5", "max_tokens": 16, "messages": [{"role": "user", "content": "Hi"}]}'
200 = ready. 401 = wrong key. 402 = empty balance (top up at https://unaligned.pw/dashboard/billing).
Rules:
- If the key above is still a placeholder, ask me for it before starting. Never commit it or put it in a project file that goes to git.
- Back up any config file before changing it, and keep the settings already there.
- If you can't edit files or run commands here, give me the exact steps and file contents instead.
- When done, tell me in two lines what you changed and how to switch models.By hand
A tool that asks for an “OpenAI-compatible” provider takes the OpenAI URL. One built for Claude takes the Anthropic URL, without /v1: Anthropic clients add it themselves.
Claude models always run in their own Anthropic format behind the scenes, whatever format your tool speaks: tools, reasoning and caching behave as they do at Anthropic, and the token counts you’re billed for are exact.
Which model
Every model in the list works with every tool: all of them call tools (read files, run commands, edit code) in both formats, streamed or not. What changes is price, speed and how well they handle long agent sessions.
| Role | What to look for | For example |
|---|---|---|
| Main model | The one that plans and writes the code. Larger models make fewer mistakes over long sessions. | claude-sonnet-5-5, claude-opus-5-5, gpt-6-sol, glm-5.3, kimi-k3 |
| Small model | Titles, summaries, quick lookups. Cheap and fast is all it needs. | claude-haiku-5-5, deepseek-v4.1-flash, glm-5.3-flash |
| Uncensored | No refusals on security research, red teaming or anything a filtered model declines. | the models marked uncensored in the list |
Tools ask for a model’s context window and maximum output: both are in the model list (context and max_output in GET /v1/models).
What it costs
Coding tools send the whole conversation again at every step, so most of their input is served from cache, at the much lower cached price. A long agent session costs a fraction of what its token count suggests. Dashboard → Usage shows the totals per day and model.
Limits worth knowing
- An account runs 4 requests at once, all keys together. Agents that start many sub-agents in parallel may get a
429now and then; they retry on their own. - Each tool should have its own key: you can revoke one without touching the others.
- Requests are never logged. Only the day’s token totals per model are kept, for billing.