Claude Code-style terminal agents with Unjailed AI
Create a free account, add wallet credit when ready, then create a key in the API tab. The human should create the account, fund it and enter their own key.
01Choose your terminal agent
Use Unjailed CLI or OpenCode for the read → edit → run workflow. This guide covers OpenAI-compatible terminal agents; native Claude Code requires a different API protocol that this endpoint does not expose.
02Install the Unjailed CLI
Node.js 20+ is required. Run the installer below, open unjailed, then /login and enter your own key locally. On Windows PowerShell, npm.cmd avoids execution-policy issues with npm.ps1.
npm install -g unjailed # Windows PowerShell: npm.cmd install -g unjailed unjailed03Authorize project changes
Use /tools cmds for file and command access with approval for each action. Select a model, set low reasoning for interactive coding, then ask for a small task. Review requests before approving them.
/tools cmds /model deepseek-v4.1-flash /effort low
Use your existing Unjailed API key and wallet. DeepSeek V4.1 Flash is the starter model; use /models to choose another model, including uncensored variants.
Check opencode --version. Use the setup for your installed major version; OpenCode 1 and 2 use different configuration formats.
1. Install the official CLI
macOS/Linux: install with npm, then check the version.
npm install -g @opencode/cli
opencode --versionWindows 10/11: download the official Windows x64 CLI ZIP, extract it, then open PowerShell in that folder and run .\opencode.exe --version. Add its folder to PATH to use opencode from your project. Other platforms and baseline builds: official CLI installation guide.
If npm reports a blocked installation script, use the standalone CLI binary from the official installation guide.
2. Save the Unjailed configuration
Download opencode.json and put it in the root of your project (not opencode.json.txt). It lists our current models and asks before file changes or commands. If you already have a config, merge these entries into it; don't append a second JSON document or overwrite your settings.
View configuration
{
"$schema": "https://opencode.ai/config.json",
"model": "unjailed/deepseek-v4.1-flash",
"share": "disabled",
"providers": {
"unjailed": {
"name": "UNJAILED AI",
"env": [
"UNJAILED_API_KEY"
],
"package": "@opencode/ai/providers/openai-compatible",
"settings": {
"baseURL": "https://unjailedai.com/v1"
},
"models": {
"glm-5.3": {
"name": "GLM-5.3",
"limit": {
"context": 1000000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"glm-5.3-uncensored": {
"name": "GLM-5.3 Uncensored",
"limit": {
"context": 1000000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"glm-5.3-flash": {
"name": "GLM-5.3 Flash",
"limit": {
"context": 128000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"glm-5.3-flash-uncensored": {
"name": "GLM-5.3 Flash Uncensored",
"limit": {
"context": 128000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"glm-5.3-abliterated": {
"name": "GLM-5.3 Abliterated",
"limit": {
"context": 1000000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"glm-5.3-flash-abliterated": {
"name": "GLM-5.3 Flash Abliterated",
"limit": {
"context": 128000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"glm-5.2": {
"name": "GLM-5.2",
"limit": {
"context": 1000000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"deepseek-v4.1-flash": {
"name": "DeepSeek V4.1 Flash",
"limit": {
"context": 1000000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"deepseek-v4-flash-0731": {
"name": "DeepSeek V4 Flash",
"limit": {
"context": 1000000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"deepseek-v4-pro-0813": {
"name": "DeepSeek V4 Pro",
"limit": {
"context": 256000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"deepseek-v4-pro-uncensored": {
"name": "DeepSeek V4 Pro Uncensored",
"limit": {
"context": 256000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"kimi-k3": {
"name": "Kimi K3",
"limit": {
"context": 1000000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"gpt-6-astra": {
"name": "Astra 6",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"claude-fable-5": {
"name": "Fable 5",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"claude-opus-5-5": {
"name": "Opus 5.5",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"claude-opus-5": {
"name": "Opus 5",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"claude-opus-4-8": {
"name": "Opus 4.8",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"claude-opus-4-7": {
"name": "Opus 4.7",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"claude-opus-4-6": {
"name": "Opus 4.6",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"claude-sonnet-5-5": {
"name": "Sonnet 5.5",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"claude-haiku-5-5": {
"name": "Haiku 5.5",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"claude-sonnet-5": {
"name": "Sonnet 5",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"gpt-5.5": {
"name": "Sol 5.5",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"gpt-5.6-sol": {
"name": "Sol 5.6",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"gpt-5.6-terra": {
"name": "Terra 5.6",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"gpt-5.6-luna": {
"name": "Luna 5.6",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"gpt-6-sol": {
"name": "Sol 6",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"gpt-6.1-sol": {
"name": "Sol 6.1",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"gpt-6-luna": {
"name": "Luna 6",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"grok-4.7": {
"name": "Quark 4.7",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"grok-4.6": {
"name": "Quark 4.6",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
},
"grok-4.5": {
"name": "Quark 4.5",
"limit": {
"context": 400000,
"output": 8192
},
"capabilities": {
"tools": true,
"input": [
"text"
],
"output": [
"text"
]
},
"compatibility": {
"reasoningField": "reasoning_content"
}
}
}
}
},
"permissions": [
{
"action": "edit",
"resource": "*",
"effect": "ask"
},
{
"action": "shell",
"resource": "*",
"effect": "ask"
}
]
}
The template contains no API key. Your local OpenCode configuration and permission choices control access to your computer.
3. Connect your existing API key
Get your key in Dashboard → API. In your terminal, open your project folder and start opencode. Run /connect, choose UNJAILED AI if listed, or Other/custom provider with provider ID unjailed, and paste your Unjailed key into the credential prompt. Then run /models and choose UNJAILED AI → DeepSeek V4.1 Flash.
If you prefer environment credentials, use UNJAILED_API_KEY. Keep the key out of project files and public screenshots.
4. Start coding
Select the Build agent for file changes; Plan is for planning. Ask it to inspect your project, make a focused change, and run the relevant checks. Review its file-change and command approvals.
Read this project, create hello.py that prints 2 + 3, then run it and show the output.Usage is billed to your Unjailed wallet at our model rates. Client features and model behavior vary. If both clients fail, send the model ID, client version and error privately to Discord support · Telegram support.
Setup sources: official provider documentation · permissions.
Official reference: Claude Code-style terminal agents documentation ↗. Setup checked October 13, 2026.
Use an exact ID from the model directory. Check live status if a model is unavailable. Uncensored models work through compatible API clients and the CLI; web chat uses standard models. Requests spend wallet credit at the published rates.
One key. Your existing workflow.
Create a free account — no emailNo KYC at signup · No card details stored here · Wallet credit never expires · Top-ups don’t renew