01
Chat across models
Switch models in the middle of a conversation. Every plan includes the full catalogue.
Chat, API and browser workspace
Chat with Claude and Gemini models, call them from your own code through an OpenAI- or Anthropic-compatible API, and write code in a VS Code-style workspace that runs in your browser tab.
No free tier. Plans start at $8 a month.
Summarise this diff and tell me what could break.
Two things to check:
Models
01
Switch models in the middle of a conversation. Every plan includes the full catalogue.
02
Use OpenAI-compatible or Anthropic-compatible endpoints with the same Abstract API key.
03
Attach a coding persona to any chat. Each one sets its own instructions and tone.
04
Dusk runs a Node-compatible runtime, a shell and a terminal inside the tab. Your files stay in your browser.
Included on every plan
Open a VS Code-style workspace right here. Edit files, run Node scripts and use the terminal without installing anything.
The playground demo is not available right now.
Read the playground docsPoint the OpenAI or Anthropic SDK at Abstract and change the base URL and key. Streaming works the same way.
curl https://chat.abstracteducation.loan/v1/chat/completions \
-H "Authorization: Bearer $ABSTRACT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "claude-haiku-5-5", "messages": [{"role": "user", "content": "Hello"}]}'import os
from openai import OpenAI
client = OpenAI(
base_url="https://chat.abstracteducation.loan/v1",
api_key=os.environ["ABSTRACT_API_KEY"],
)
reply = client.chat.completions.create(
model="claude-haiku-5-5",
messages=[{"role": "user", "content": "Hello"}],
)
print(reply.choices[0].message.content)import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
baseURL: "https://chat.abstracteducation.loan",
apiKey: process.env.ABSTRACT_API_KEY,
});
const message = await client.messages.create({
model: "claude-haiku-5-5",
max_tokens: 256,
messages: [{ role: "user", content: "Hello" }],
});
console.log(message.content[0].text);Every plan includes everything. Plans differ only in how much you can use in a 5-hour window and in a week.
To try it properly
$8$6per month
billed annually
For regular use
$24$19per month
billed annually
For daily work
$44$35per month
billed annually
For heavy use
$109$89per month
billed annually
For the heaviest use
$219$179per month
billed annually
Included on every plan
Everything in the list below
Each reply is measured in weighted tokens: its token count times the multiplier of the model it ran on. A heavier model uses more weighted tokens for the same reply.
Two rolling windows: 5 hours and one week. Usage ages out as time passes, so you never wait for midnight.
| Model tier | Multiplier | A 1,000-token reply costs |
|---|---|---|
| Efficient models | 1x | 1,000 weighted tokens |
| Fast models | 2x | 2,000 weighted tokens |
| Balanced models | 3x | 3,000 weighted tokens |
| Frontier models | 10x | 10,000 weighted tokens |
No. The lowest plan is Starter at $8 a month, and it includes every feature with a smaller usage window.
Requests pause until the window frees up. The dashboard shows how long until each window resets. You can switch to a lighter model or upgrade at any time.
There are two rolling windows, 5 hours and one week. Old usage drops out as time passes, so a limit you hit at 2pm clears by 7pm.
Yes. Create a key in the dashboard and point your SDK at the Abstract base URL. Each call counts against the same windows as chat.
Evilcoder is a set of coding personas. Each one has its own instructions, tone and focus, and you can attach one to any chat or playground session.
[PLACEHOLDER] Refund policy not yet written. The final policy replaces this answer before launch.