Blackpilled.AIBLACKPILLED.AI

DOCUMENTATION

Blackpilled.ai is an unfiltered API endpoint compatible with standard OpenAI SDKs. Point your base URL to us, swap the API key, remove the guardrails.

Quickstart

import OpenAI from'openai';

const client = new OpenAI({
  apiKey: 'sk_live_your_api_key',
  baseURL: 'https://www.blackpilled.ai/api/v1',
});

const response = await client.chat.completions.create({
  model: 'blackpilled-35b',
  messages: [{role: 'user', content: 'What's the most direct way...' }],
});

console.log(response.choices[0].message.content);

OpenCode integration▣ Recommended

OpenCode is the smoothest way to use Blackpilled.ai from a terminal — it natively supports OpenAI-compatible providers, so there's no proxy daemon, no shim, and no transformer step. Setup is a config file plus an API key. Per-request token cost is also significantly lower than Claude Code (no 40k bootstrap prompt).

  1. Install OpenCode globally.
    npm install -g opencode-ai
  2. Generate an API key in the dashboard.
  3. Drop this into ~/.config/opencode/opencode.json:
    {
      "$schema": "https://opencode.ai/config.json",
      "model": "blackpilled/blackpilled-35b",
      "provider": {
        "blackpilled": {
          "npm": "@ai-sdk/openai-compatible",
          "name": "Blackpilled.ai",
          "env": ["BLACKPILLED_API_KEY"],
          "options": {
            "baseURL": "https://www.blackpilled.ai/api/v1"
          },
          "models": {
            "blackpilled-35b": { "name": "Blackpilled 35B" }
          }
        }
      }
    }
  4. Authenticate. Run opencode auth login, choose Other, enter blackpilled as the provider id, and paste your API key.
    Or skip the auth flow and export the key directly:
    export BLACKPILLED_API_KEY=sk_live_your_api_key
  5. Run it.
    opencode
Heads up
Use www.blackpilled.ai for the baseURL, not the apex blackpilled.ai. The apex 307-redirects to www, and OpenCode's HTTP client drops the Authorization header across the redirect — surfacing as "Missing API key".

Claude Code integrationAlternative

Claude Code only talks to Anthropic by default. To swap in Blackpilled, run it behind claude-code-router — a local proxy that intercepts Anthropic-shaped requests and forwards them to any OpenAI-compatible provider. Tool use, MCP servers, and streaming all work; the model never sees your file contents except what Claude Code itself pastes back. We recommend OpenCode over this path for most users — fewer moving parts and lower token cost — but if you're already in the Claude Code ecosystem, this works.

  1. Install the router globally.
    npm install -g @musistudio/claude-code-router
  2. Generate an API key in the dashboard.
  3. Drop this into ~/.claude-code-router/config.json:
    {
      "LOG": true,
      "API_TIMEOUT_MS": 600000,
      "Providers": [
        {
          "name": "blackpilled",
          "api_base_url": "https://www.blackpilled.ai/api/v1/chat/completions",
          "api_key": "sk_live_your_api_key",
          "models": ["blackpilled-35b"],
          "transformer": { "use": ["openrouter"] }
        }
      ],
      "Router": {
        "default":     "blackpilled,blackpilled-35b",
        "background":  "blackpilled,blackpilled-35b",
        "think":       "blackpilled,blackpilled-35b",
        "longContext": "blackpilled,blackpilled-35b"
      }
    }
  4. In Terminal #1start the router daemon and leave it running.
    ccr start
  5. In Terminal #2launch Claude Code through the router. Every Anthropic call is rewritten to hit Blackpilled instead.
    ccr code
Heads up
Claude Code ships a ~40k-token system prompt plus any MCP server schemas you have enabled — you'll see individual requests in the 40k–60k range. That's normal. If you want to trim it, toggle unused MCP servers with /mcp inside Claude Code.

Image generation

OpenAI-compatible /v1/images/generations endpoint backed by enhanceaiteam/Flux-uncensored fused into FLUX.1-dev. Drop-in for openai.images.generate. Subject matter is unfiltered; CSAM is hard-blocked at the prompt and output layer.

curl https://www.blackpilled.ai/api/v1/images/generations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk_live_***" \
  -d '{ "model": "flux-uncensored", "prompt": "cyberpunk samurai, neon Tokyo alley, cinematic", "size": "1024x1024" }'

Returns the standard OpenAI shape:

{
  "created": 1714867200,
  "data": [
    { "url": "https://...vercel-blob.../images/.../abc.png" }
  ]
}

Optional Flux-specific extensions to the body: steps (1-50, default 20), guidance (1-15, default 3.5), seed (integer for reproducibility), response_format ("url" or "b64_json").

Models available

ModelContext / OutputDescription
blackpilled-35b128k tokensQwen3.6-35B-A3B MoE (3B active, 8 of 256 experts routed), fully alignment-stripped, vision-capable, native tool use.
flux-uncensoredup to 1536×1536FLUX.1-dev base with the enhanceaiteam/Flux-uncensored LoRA fused. Text-to-image, ~6-10s warm. Square / portrait / landscape / 16:9 presets.