Connect your machine — setup
…
{ A single endpoint to every model from every major provider. Flat monthly price, no token metering, no surprises }
One account, one key, one bill. Switch between Claude, GPT, Gemini and the rest by changing a single string
All flagship and workhorse models, kept current, behind one OpenAI-compatible API
No per-token math. No tiers. A flat monthly key that never runs out
A common worry: that connecting our models to Claude Code, Codex or other agents lets the AI run commands, download malware or plant a RAT on your machine. It can't. Here is exactly how it works, in plain terms.
Our API is a text service. It sends your request to the model and returns the answer as text — nothing more. It has no access to your files, your shell or your network. It physically cannot download or run anything on your computer.
Tools like Claude Code and Codex run on your machine, not ours. They show you every command and every file change and wait for your approval. Nothing runs unless you allow it — that gate belongs to the tool you installed, and Conduit never removes it.
The model proposes; you decide. Read each suggested command, deny anything you don't like, or run the agent read-only or inside a sandbox or VM. Using Conduit instead of a provider's own key changes none of these local safeguards.
In short: an AI model is not a program running on your PC — it's a remote text service. The scenario people fear, a model silently installing malware through the API, isn't technically possible. The only thing that ever runs locally is the agent tool you chose to install, and that tool always asks you first. We never execute your code, never store your files and have no agent on your side.
Subscribe to our channel, then continue with Telegram. Confirm in the bot, no password needed
Conduit is a single API gateway that routes your requests to frontier AI models from providers such as Anthropic, OpenAI, Google and others, under one key and one flat subscription. By creating an account or using the service, you agree to these Terms.
You sign in with Telegram. You are responsible for keeping access to your Telegram account and your API keys secret. Anyone holding your key can spend your quota, so treat it like a password. Do not share a single account across an organisation without permission.
Conduit costs $20 per month and renews automatically each month until you cancel. Cancelling stops the next renewal and keeps your access until the end of the paid period. Prices may change with at least 14 days notice before your next renewal.
No refunds. Because access is granted instantly and usage is unlimited, all payments are final and non-refundable, including for partial months and unused time. Cancel before your renewal date if you do not want to be charged again.
Unlimited means generous personal and professional use, not abuse. We may throttle or suspend accounts that resell access, run automated traffic far beyond normal human use, share one key across many users, or try to overload the gateway. We will warn you first where we reasonably can.
You must follow the usage policies of the underlying model providers. Do not use Conduit for anything illegal, for generating malware, for targeted harassment, or for content that the upstream providers prohibit. Violating their policies can get the upstream model to refuse or your account to be limited.
We work to keep Conduit fast and online, but it is provided as is. Upstream providers can change, deprecate or rate-limit their models, and Conduit depends on them. We do not guarantee that any specific model stays available.
Conduit is not liable for the output of the models, for decisions you make based on it, or for indirect or incidental damages. Our total liability is limited to the amount you paid in the last month. Model output can be wrong, so check anything important.
We may update these Terms as the service grows. Material changes will be announced on the site. Continuing to use Conduit after a change means you accept the new Terms.
Questions about these Terms? Reach the maker on Telegram at t.me/ozdoyev06.
We collect as little as possible: enough to sign you in, run your subscription and route your requests. We do not sell your data, and we do not read your prompts for any purpose other than passing them to the model you chose.
From Telegram sign-in we keep your Telegram id, username and first name to identify your account and show your profile. We store your API keys in signed form and basic usage counts so we can show your stats and enforce fair use. We keep your subscription status.
Conduit forwards your messages to the model provider you selected and returns the answer. We do not use your prompts or outputs to train anything. The upstream provider processes the request under their own policy, so their privacy terms also apply to that step.
We use one essential, signed session cookie to keep you logged in after you confirm in the bot. It is httpOnly and secure, it carries no tracking, and there are no advertising cookies on Conduit.
Your data is shared only with the infrastructure needed to run the service: the model providers you call, our hosting and our key-value store. We never sell or rent your personal data to anyone.
We keep account and usage data while your account is active. Temporary login codes expire within minutes. If you delete your account, we remove your profile and keys, keeping only what the law requires for billing records.
You can ask what we hold about you, request a copy, or ask us to delete your account and data. Reach out on Telegram and we will action it within a reasonable time.
Sessions and API keys are cryptographically signed, traffic is served over HTTPS, and provider keys stay on the server and are never exposed to the browser. No system is perfectly secure, but we design Conduit to keep your secrets server-side.
Privacy questions or requests go to the maker on Telegram at t.me/ozdoyev06.
No. A model reached through our API cannot reach your computer at all. The API takes text in and gives text out. It has no file system access, no shell, no network into your machine, and no way to install or launch a program. There is no mechanism by which an answer from the API becomes a running process on your PC.
Those agent tools run locally, on your own computer, and you install them yourself. When a model suggests a shell command or a file edit, the agent shows it to you and waits for your approval before doing anything. You approve, deny or edit each action. That permission gate is built into the agent — it is not something Conduit provides or can take away. Pointing the agent at Conduit instead of a provider's own key does not change that behaviour in any way.
You do. The model only writes text — including the text of a command it thinks would help. Whether that command ever executes is entirely up to the agent on your machine and to your explicit confirmation. The flow is always: you ask → Conduit returns text → the agent asks you → only with your yes does it run, locally.
Nothing on it. Conduit is a gateway: it forwards your request to the model provider you chose and returns the answer. We do not run code on your behalf, we do not store your files, and we have no software or agent installed on your side. We only see the request and the response needed to serve it.
Standard good practice, all controlled by you: read each suggested command before approving it, keep the agent in ask-for-approval mode rather than full auto, run it read-only when you only need analysis, and for risky work use a sandbox, container or VM. None of this depends on Conduit — these are the same precautions you would take with any AI coding agent.
Bottom line: a model is a remote text service, not a program on your PC. It cannot silently install anything. The only thing that runs locally is the agent you installed, and it always asks you first. You are in control at every step.
Anything about security? Message the maker on Telegram at t.me/ozdoyev06.
Conduit speaks the OpenAI Chat Completions format. If your code already talks to OpenAI, change two things: the base URL and your key. Everything else stays the same.
https://conduit.ozdoev.net/api/v1Authorization: Bearer sk-cdt-…https://conduit.ozdoev.net/api/api/v1/chat/completionsSend a list of messages and pick any model by its id. Example with curl:
curl https://conduit.ozdoev.net/api/v1/chat/completions \
-H "Authorization: Bearer sk-cdt-YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-opus-4-8",
"messages": [
{ "role": "user", "content": "Hello, who are you?" }
]
}'
{
"id": "chatcmpl-...",
"object": "chat.completion",
"model": "claude-opus-4-8",
"choices": [
{
"index": 0,
"message": { "role": "assistant", "content": "Hi! I'm Claude, running through Conduit." },
"finish_reason": "stop"
}
],
"usage": { "prompt_tokens": 12, "completion_tokens": 14, "total_tokens": 26 }
}
import OpenAI from "openai";
const client = new OpenAI({
apiKey: "sk-cdt-YOUR_KEY",
baseURL: "https://conduit.ozdoev.net/api/v1",
});
const res = await client.chat.completions.create({
model: "gpt-5",
messages: [{ role: "user", content: "Write a haiku about APIs." }],
});
console.log(res.choices[0].message.content);
from openai import OpenAI
client = OpenAI(
api_key="sk-cdt-YOUR_KEY",
base_url="https://conduit.ozdoev.net/api/v1",
)
res = client.chat.completions.create(
model="gemini-3-pro",
messages=[{"role": "user", "content": "Explain Conduit in one line."}],
)
print(res.choices[0].message.content)
Add "stream": true to receive tokens as Server-Sent Events as they generate.
curl https://conduit.ozdoev.net/api/v1/chat/completions \
-H "Authorization: Bearer sk-cdt-YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-4-6",
"stream": true,
"messages": [{ "role": "user", "content": "Count to five." }]
}'
Conduit exposes two compatible endpoints — OpenAI on /api/v1 and Anthropic on /api — so almost any AI tool, CLI or IDE works by setting a base URL and your key. Pick yours below.
First install it (needs Node.js 18+):
npm install -g @anthropic-ai/claude-code
Then point it at Conduit's Anthropic endpoint and run it:
Linux / macOS (bash / zsh)
export ANTHROPIC_BASE_URL="https://conduit.ozdoev.net/api"
export ANTHROPIC_AUTH_TOKEN="sk-cdt-YOUR_KEY"
export ANTHROPIC_MODEL="claude-opus-4-8"
claude
Windows (PowerShell)
$env:ANTHROPIC_BASE_URL="https://conduit.ozdoev.net/api"
$env:ANTHROPIC_AUTH_TOKEN="sk-cdt-YOUR_KEY"
$env:ANTHROPIC_MODEL="claude-opus-4-8"
claude
Windows (CMD)
set ANTHROPIC_BASE_URL=https://conduit.ozdoev.net/api
set ANTHROPIC_AUTH_TOKEN=sk-cdt-YOUR_KEY
set ANTHROPIC_MODEL=claude-opus-4-8
claude
Install it:
npm install -g @openai/codex
Add Conduit as a model provider in your config (Linux/macOS: ~/.codex/config.toml · Windows: %USERPROFILE%\.codex\config.toml):
model = "gpt-5"
model_provider = "conduit"
[model_providers.conduit]
name = "Conduit"
base_url = "https://conduit.ozdoev.net/api/v1"
env_key = "CONDUIT_API_KEY"
Then set your key and run codex:
Linux / macOS
export CONDUIT_API_KEY="sk-cdt-YOUR_KEY"
codex
Windows (PowerShell)
$env:CONDUIT_API_KEY="sk-cdt-YOUR_KEY"
codex
Install: pip install aider-install && aider-install (or pipx install aider-chat). Then:
Linux / macOS
export OPENAI_API_BASE="https://conduit.ozdoev.net/api/v1"
export OPENAI_API_KEY="sk-cdt-YOUR_KEY"
aider --model openai/gpt-5
Windows (PowerShell)
$env:OPENAI_API_BASE="https://conduit.ozdoev.net/api/v1"
$env:OPENAI_API_KEY="sk-cdt-YOUR_KEY"
aider --model openai/gpt-5
Add an OpenAI-compatible connection: API URL https://conduit.ozdoev.net/api/v1 and your sk-cdt key.
from anthropic import Anthropic
client = Anthropic(
base_url="https://conduit.ozdoev.net/api",
api_key="sk-cdt-YOUR_KEY",
)
msg = client.messages.create(
model="claude-opus-4-8",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello!"}],
)
print(msg.content[0].text)
Full OpenAI and Anthropic tool calling is supported — pass tools and tool_choice exactly as with the official APIs; tool_calls come back in the standard shape. With no tools of your own, the model can search the web on its own.
Models that officially support extended thinking can return a visible reasoning trace before the answer. It stays in the model's own voice and never exposes any prompt.
OpenAI route — set reasoning_effort:
curl https://conduit.ozdoev.net/api/v1/chat/completions \
-H "Authorization: Bearer sk-cdt-YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5",
"reasoning_effort": "high",
"messages": [{ "role": "user", "content": "Prove sqrt(2) is irrational." }]
}'
# reasoning comes back in choices[0].message.reasoning_content
# (and as delta.reasoning_content when stream:true)
Anthropic route — enable thinking:
curl https://conduit.ozdoev.net/api/v1/messages \
-H "x-api-key: sk-cdt-YOUR_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-opus-4-8",
"max_tokens": 2048,
"thinking": { "type": "enabled", "budget_tokens": 4096 },
"messages": [{ "role": "user", "content": "Prove sqrt(2) is irrational." }]
}'
# a "thinking" content block precedes the "text" block in the response
model - model id, e.g. claude-opus-4-8, gpt-5, gemini-3-pro, grok-4messages - array of { role, content }; role is system, user or assistanttemperature - 0-2, creativity (optional)max_tokens - cap on the reply length (optional)stream - true for token streaming (optional)401 - missing or invalid key402 - free trial balance spent; upgrade to ULTIMATE for unlimited403 - account blocked429 - fair-use throttling; slow down and retryStuck? Message the maker on Telegram at t.me/ozdoyev06.
…