Aelius Code
Use Aelius as the model in your coding agent: Cline, Continue, Roo Code, opencode or Qwen Code. Free with any account.
Looking for the JSON API for your own software? That's the
general API (ael_sk_ keys, reviewed
by a person). You don't need it here.
Overview
- Model
- qwen3.8-27b
- Context window
- 262,144 tokens
- Protocol
- OpenAI Chat Completions
- Auth
- Authorization: Bearer aelius_code_…
- Images
- Yes
- Price
- Free; Aelius Pro raises every limit
Getting a key
Free, instant, no review. You need to be signed in (sign up); guests can't hold a key.
-
Click your name at the bottom left
On a phone, open the menu first.
-
Choose Aelius Code
It's in the App group.
-
Name it and click Create a key
-
Click Copy
It's shown once and can't be read back. Lost it? Revoke it and make another. Treat it like a password.
What your editor asks for
https://code.aeliusai.com/v1
qwen3.8-27b
262144
aelius_code_… (yours)
Qwen Code, step by step
An agent in a VS Code side panel. You need desktop VS Code and your key on the clipboard before step 9.
Install the extension
-
Open Extensions
Ctrl Shift X (Cmd on a Mac), or the circled icon.
-
Search
qwen codePick Qwen Code Companion by qwenlm. Not the one called just "Qwen".
-
Click Install
-
Open the panel
Click the Qwen icon at the top right. No icon? Ctrl Shift P → Developer: Reload Window.
Point it at Aelius
Pressing Esc on any prompt cancels; start again at step 5.
-
Type
/authand press Enter
-
Choose Custom Provider
Last in the list.
-
Choose OpenAI Compatible
-
Paste the base URL
https://code.aeliusai.com/v1Ends at
/v1, no trailing slash.
-
Paste your key
Watch for a trailing space.
-
Paste the model name
qwen3.8-27b
-
Say hello
It thinks first, then answers.
Then fix the context window
Qwen Code assumes 1,000k; the real window is
262,144. Without this, long sessions fail.
Add this to ~/.qwen/settings.json
(%USERPROFILE%\.qwen\settings.json on Windows), then restart
VS Code:
{
"modelProviders": {
"openai": [
{
"id": "qwen3.8-27b",
"baseUrl": "https://code.aeliusai.com/v1",
"generationConfig": {
"contextWindowSize": 262144
}
}
]
}
}
It must sit on the provider entry, not under a top-level model
key. Also turn off any request timeout: agent turns can take minutes.
If something's wrong
| Problem | Fix |
|---|---|
| No Qwen icon | Ctrl Shift P → Developer: Reload Window. |
| Nowhere to enter a URL | Wrong extension or provider. See steps 2 and 6. |
401 invalid_api_key |
Space copied with the key, or key revoked. Run /auth again. |
404 or empty model list |
Trailing slash on the URL, or model name misspelled. |
| Long turn ends in a network error | Client timeout. Turn it off. |
| Prompt too long | Fix the context window, above. |
429 quota_exceeded |
Allowance used up. See Limits. |
503 verification_unavailable |
Wait a few seconds. Your key is fine. |
Qwen Code in a terminal
export OPENAI_BASE_URL="https://code.aeliusai.com/v1"
export OPENAI_API_KEY="aelius_code_YOUR_KEY_HERE"
export OPENAI_MODEL="qwen3.8-27b"
qwen
PowerShell: $env:OPENAI_BASE_URL="…" and so on. Apply the
context window fix too.
Cline
- Install Cline from the VS Code marketplace.
- In its settings, set API Provider to OpenAI Compatible.
- Fill in:
- Base URL
- https://code.aeliusai.com/v1
- API Key
- aelius_code_…
- Model ID
- qwen3.8-27b
- Context window
- 262144
Continue
Add to ~/.continue/config.yaml:
models:
- name: Aelius
provider: openai
model: qwen3.8-27b
apiBase: https://code.aeliusai.com/v1
apiKey: aelius_code_YOUR_KEY_HERE
defaultCompletionOptions:
contextLength: 262144
roles:
- chat
- edit
- applyDon't add autocomplete: it fires on every pause and burns your allowance.
Roo Code
Same as Cline: provider OpenAI Compatible, the same values, "Use Azure" off.
opencode
Works the same in the desktop app, the terminal and opencode web.
-
Install opencode
Desktop app: opencode.ai/download. Terminal:
curl -fsSL https://opencode.ai/install | bashWindows terminal:
npm i -g opencode-ai. -
Copy your key
Settings → Aelius Code. No key? Get one.
-
Quit opencode, then run one line
Paste your key when asked.
irm https://aeliusai.com/code/opencode-setup.ps1 | iexIn PowerShell (Start → type
powershell).curl -fsSL https://aeliusai.com/code/opencode-setup.sh | shIn Terminal (Mac: Cmd + Space →
terminal).It writes opencode's settings file and backs up the old one. Windows script · Mac/Linux script.
-
Open your project
Desktop: Add project → folder → New session. Terminal:
cdinto it, runopencode. The model button should say Aelius Code:
If not, click it and pick it (terminal:
/models).
-
Ask it to do something
One bug fixed in 12 seconds.
If something's wrong
| Problem | Fix |
|---|---|
| No Aelius Code in the list | Fully quit opencode (check the Windows tray), redo step 3. |
| Used Connect provider / Custom | That can't add Aelius. Use step 3. |
Missing or invalid API key |
Copy the key again, redo step 3. |
| Says it can't view images | Settings from before 12 October. Redo step 3. |
| Slow first reply | Normal: one-time download, or a short queue. |
Advanced
One command (Mac and Linux only)
export AELIUS_CODE_API_KEY="aelius_code_YOUR_KEY_HERE"
opencode auth login https://aeliusai.comReads /.well-known/opencode. Needs sh, so not on Windows.
Keep the key out of the file
Set "apiKey": "{env:AELIUS_CODE_API_KEY}" and export that
variable. The desktop app may not see shell variables.
What the file sets
- aelius
- Provider name; matches
"model": "aelius/…". - baseURL
https://code.aeliusai.com/v1- limit.context
- When to compact. Too high and prompts get rejected.
- headerTimeout / chunkTimeout
- Waits longer than the 5-minute default when busy.
- attachment / modalities
- Lets it send images.
- small_model
- Used for titles and summaries.
File locations
| What | macOS and Linux | Windows |
|---|---|---|
| Settings | ~/.config/opencode/opencode.json |
%USERPROFILE%\.config\opencode\opencode.json |
| Saved keys | ~/.local/share/opencode/auth.json |
%USERPROFILE%\.local\share\opencode\auth.json |
| Logs | ~/.local/share/opencode/log/ |
%USERPROFILE%\.local\share\opencode\log |
A project's own opencode.json overrides it. Never commit a key.
Anything else
Any tool that takes a base URL, key and model works. To test your key:
curl https://code.aeliusai.com/v1/chat/completions \
-H "Authorization: Bearer aelius_code_YOUR_KEY_HERE" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen3.8-27b",
"messages": [{"role": "user", "content": "Reply with the word ready."}],
"stream": false
}'Endpoints
Standard OpenAI Chat Completions, with tools and streaming. Reasoning
arrives as reasoning_content.
Legacy text completion.
The one model and its context length. Needs a key, so a bad key often shows up as an empty model list.
Limits
Credits are per account, across all keys. Request limits are per key.
| Limit | Free | Pro | At the limit |
|---|---|---|---|
| Credits per 5 hours | 150 | 1,500 | 429 quota_exceeded |
| Credits per week | 350 | 3,500 | 429 quota_exceeded |
| Requests per minute, per key | 40 | 120 | 429 |
| Turns at once, per key | 2 | 4 | 429 |
| Requests per 5 hours, per key | 184 | 1,842 | 429 quota_exceeded |
| Keys per account | 50 | 50 | Revoke one first |
| Request body | 64 MB | 64 MB | 413 |
Retry-After always has the exact wait. Your usage is in Settings → Aelius Code.
How credits work
Like Codex: a rolling five-hour window that starts at your first request, plus a weekly cap. Failed turns are free.
| Token | Credits per million |
|---|---|
| Output (what the model writes) | 500 |
| New input | 100 |
| Cached input (sent before) | 10 |
A typical agent turn costs about 1.14 credits, so a free window is roughly 130 turns. An agent running flat out can use that in half an hour.
The context window
262,144 tokens per request, prompt and
reply together. GET /v1/models reports it, but some clients
guess from the model name instead (Qwen Code shows 1,000k). If your editor
shows a different number, set it by hand.
One allowance per network
While one free account on a network is at its limit, other free accounts
on that network get network_quota_exceeded until it resets.
Dodging limits with extra accounts, keys, VPNs or proxies breaks the
Terms (§7.6). Sharing a connection
with another user? Tell us.
Errors
| Status | Code | Meaning |
|---|---|---|
| 401 | invalid_api_key |
No key or a wrong one. Check for a copied space. |
| 401 | revoked_api_key |
Revoked. Create a new one. |
| 403 | account_suspended |
Account suspended. |
| 429 | rate_limit_error |
Too many requests or too many at once. |
| 429 | quota_exceeded |
Five-hour or weekly allowance used up. |
| 429 | network_quota_exceeded |
Another free account on your network is at its limit. |
| 503 | verification_unavailable |
Retry in a few seconds. Your key is fine. |
| 502 | — | The model is restarting. |
Data and privacy
- Your code isn't stored or used for training.
- We log accounting only: time, token counts, duration, key, account, IP and user-agent. Never the prompt or answer.
- While a turn runs, its first 160 characters show on the operator dashboard, in memory only.
- Request records are deleted after 45 days.