Docs

Yolo-Auto API reference

Reference for the OpenAI-compatible /v1 API, model routes, authentication, and client configuration.

Base URL

https://yolo-auto.com/v1

Authentication

Authorization: Bearer yolo_...

Model IDs

"qwen3.6-35b-a3b"

Desktop app

Download the desktop app, grab other platform builds, or browse the source on GitHub.

Mac download is the Apple Silicon DMG. Intel Mac and Linux builds are available under Other releases.

Yolo-Auto Desktop v0.1.7
Windows download: https://github.com/yolo-auto-org/yolo-auto-desktop/releases/download/v0.1.7/YOLO-Auto-Desktop-Setup-0.1.7-x64.exe
Mac download: https://github.com/yolo-auto-org/yolo-auto-desktop/releases/download/v0.1.7/YOLO-Auto-Desktop-0.1.7-arm64.dmg
Other releases: https://github.com/yolo-auto-org/yolo-auto-desktop/releases
GitHub: https://github.com/yolo-auto-org/yolo-auto-desktop
HTTPS clone: git clone https://github.com/yolo-auto-org/yolo-auto-desktop
SSH clone: git clone git@github.com:yolo-auto-org/yolo-auto-desktop.git

Routes

GET /v1/modelsList available public model routes.
POST /v1/chat/completionsCreate a chat completion.
GET /v1/usageRead usage metadata for the API key.

Concurrent units

Concurrent units are reservations of shared inference capacity. Each project has a unit budget set by its plan, and every API key in that project shares the same budget.

A request reserves units before it is sent to the model. The reservation is normally released when the request finishes, fails, or is cancelled. Streaming requests keep their units until the stream ends or the client cancels it.

active reserved units + new request units <= project budget The request can start immediately only when this condition is true and no older request is waiting ahead of it.

How prompt size determines unit cost

The proxy estimates prompt tokens before dispatch. This is a conservative estimate of messages, tool schemas, response formats, and related request content. It is not the final token count reported by the model.

1 unit1 to 32,768estimated prompt tokens
2 units32,769 to 98,304estimated prompt tokens
3 units98,305 to 163,840estimated prompt tokens
4 units163,841 or moreestimated prompt tokens
Every valid request still fits its plan. The effective reservation is capped to the project's full budget. For example, a 4-unit prompt on Starter reserves Starter's single unit, while the same prompt on Pro reserves all four units.

How to read your plan

Think of the budget as a box that active requests must fit inside. Any combination can run as long as the reservations add up to no more than the plan budget.

Starter: 1 unit
  • One request of any allowed prompt size
  • No second request runs beside it
Builder: 2 units
  • Two 1-unit requests
  • One 2-unit request
  • A larger request capped to 2 units
Pro: 4 units
  • Four 1-unit requests
  • Two 2-unit requests
  • One 4-unit request
  • Any mix such as 2 + 1 + 1

What happens when units are busy

Requests do not fail immediately just because active work is using the budget. They enter a bounded FIFO queue for that project.

  1. Capacity check.The proxy calculates the request's effective unit cost and checks active reservations.
  2. Queue if needed.If the request does not fit, it waits behind older requests. Waiting entries do not reserve concurrent units.
  3. Admit in order.When the request reaches the front and enough units are free, its reservation is created and inference begins. A smaller request does not skip an older larger request.
  4. Clean up.Cancellation removes a waiting entry. Completing or cancelling active work releases its reservation for the next request.

The current queue allows up to 16 waiting requests per project and waits up to 120 seconds. Keep the original HTTP request open while it waits. Do not submit duplicate copies of the same work.

concurrency_queue_fullHTTP 429The project already has 16 requests waiting. Retry after existing work drains.
concurrency_queue_timeoutHTTP 429The request waited 120 seconds without reaching capacity. Follow the Retry-After header before retrying.

Practical guidance

  • Use a client-side semaphore when launching many agents so your application stays near its plan budget instead of filling the queue.
  • Cancel abandoned requests and streams promptly. Units remain reserved while work is still active.
  • Use exponential backoff with jitter after a queue 429, while honoring the Retry-After header.
  • Remember that all keys for one project share active units and queue capacity.

Agent setup

Use these sections to copy a config directly, or copy the prompt under each tool and paste it into your current coding agent so it can make the changes for you.

Pi

Configure Pi models.json.

Use this provider block in your Pi model configuration.

{
  "providers": {
    "Yolo-Auto": {
      "baseUrl": "https://yolo-auto.com/v1",
      "api": "openai-completions",
      "apiKey": "YOUR_yolo_API_KEY_HERE",
      "compat": {
        "supportsDeveloperRole": false,
        "supportsStore": false,
        "supportsReasoningEffort": true,
        "thinkingFormat": "qwen-chat-template"
      },
      "models": [
        {
          "id": "qwen3.6-35b-a3b",
          "name": "qwen3.6-35b-a3b",
          "reasoning": true,
          "input": [
            "text"
          ],
          "contextWindow": 131072,
          "cost": {
            "input": 0,
            "output": 0,
            "cacheRead": 0,
            "cacheWrite": 0
          }
        }
      ]
    }
  }
}

Prompt for your current agent

Paste this into your current coding agent and let it make the Pi config changes.

Configure this machine's Pi agent to use Yolo-Auto.

Requirements:
- Ask me for my Yolo-Auto API key if I have not provided it, and do not print the full key back to me.
- Preserve all existing Pi providers, models, auth, comments/format as much as possible.
- Update or create ~/.pi/agent/models.json and merge in this provider block under providers.Yolo-Auto:
{
  "providers": {
    "Yolo-Auto": {
      "baseUrl": "https://yolo-auto.com/v1",
      "api": "openai-completions",
      "apiKey": "PASTE_YOUR_YOLO_AUTO_API_KEY_HERE",
      "compat": {
        "supportsDeveloperRole": false,
        "supportsStore": false,
        "supportsReasoningEffort": true,
        "thinkingFormat": "qwen-chat-template"
      },
      "models": [
        {
          "id": "qwen3.6-35b-a3b",
          "name": "qwen3.6-35b-a3b",
          "reasoning": true,
          "input": [
            "text"
          ],
          "contextWindow": 131072,
          "cost": {
            "input": 0,
            "output": 0,
            "cacheRead": 0,
            "cacheWrite": 0
          }
        }
      ]
    }
  }
}
- If Pi has a default model/provider setting, set the default model to qwen3.6-35b-a3b for Yolo-Auto only when that setting exists and can be changed safely.
- Validate the JSON after editing.
- Report the exact files changed and a one-command way for me to test it.

OpenClaw

Configure an OpenClaw agent models.json.

OpenClaw stores agent config under ~/.openclaw/agents/. For the agent you run, update agents/<agent-name>/models.json.

{
  "providers": {
    "yolo-auto": {
      "baseUrl": "https://yolo-auto.com/v1",
      "apiKey": "ENTER_YOUR_yolo_KEY_HERE",
      "api": "openai-completions",
      "models": [
        {
          "id": "qwen3.6-35b-a3b",
          "name": "Qwen 3.6 35B",
          "contextWindow": 128000,
          "reasoning": true
        }
      ]
    }
  }
}

Prompt for your current agent

Paste this into your current coding agent and let it update the selected OpenClaw agent.

Configure my existing OpenClaw agent to use Yolo-Auto.

Requirements:
- Ask me which OpenClaw agent name to configure if it is not obvious from ~/.openclaw/agents/.
- Ask me for my Yolo-Auto API key if I have not provided it, and do not print the full key back to me.
- Preserve all existing providers and unrelated settings.
- Update or create ~/.openclaw/agents/<agent-name>/models.json and merge in this provider block under providers.yolo-auto:
{
  "providers": {
    "yolo-auto": {
      "baseUrl": "https://yolo-auto.com/v1",
      "apiKey": "PASTE_YOUR_YOLO_AUTO_API_KEY_HERE",
      "api": "openai-completions",
      "models": [
        {
          "id": "qwen3.6-35b-a3b",
          "name": "Qwen 3.6 35B",
          "contextWindow": 128000,
          "reasoning": true
        }
      ]
    }
  }
}
- Keep the model id qwen3.6-35b-a3b and contextWindow 128000.
- Validate the JSON after editing.
- Report the exact files changed and how I should restart/test OpenClaw.

Hermes Agent

Set Hermes custom endpoint values.

Follow Hermes Agent's custom endpoint setup and use these values.

Provider: custom
Base URL: https://yolo-auto.com/v1
API key: YOUR_yolo_API_KEY_HERE
Default model: qwen3.6-35b-a3b
API mode: chat_completions
Context length: 131072

Prompt for your current agent

Paste this into your current coding agent and let it configure Hermes.

Configure Hermes Agent to use Yolo-Auto as its custom OpenAI-compatible endpoint.

Requirements:
- Ask me for my Yolo-Auto API key if I have not provided it, and do not print the full key back to me.
- Preserve existing Hermes config except the main model provider/base/model values needed below.
- Set these values:
Provider: custom
Base URL: https://yolo-auto.com/v1
API key: PASTE_YOUR_YOLO_AUTO_API_KEY_HERE
Default model: qwen3.6-35b-a3b
API mode: chat_completions
Context length: 131072
- Prefer Hermes' CLI when available:
  hermes config set model.provider custom
  hermes config set model.base_url https://yolo-auto.com/v1
  hermes config set model.default qwen3.6-35b-a3b
  hermes config set model.context_length 131072
  hermes config set model.api_mode chat_completions
- Also set OPENAI_API_KEY and OPENAI_BASE_URL in the Hermes .env location for this OS/HERMES_HOME if Hermes uses it.
- Validate by showing the sanitized effective provider/base/model settings, with the API key redacted.
- Report the exact files/commands changed and how I should restart/test Hermes.

OpenCode

Add a Yolo-Auto OpenAI-compatible provider.

Add this provider to opencode.json. Keep your real key in YOLO_AUTO_API_KEY.

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "yolo-auto": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Yolo-Auto",
      "options": {
        "baseURL": "https://yolo-auto.com/v1",
        "apiKey": "{env:YOLO_AUTO_API_KEY}"
      },
      "models": {
        "qwen3.6-35b-a3b": {
          "name": "Qwen3.6 35B A3B"
        }
      }
    }
  }
}

Prompt for your current agent

Paste this into your current coding agent and let it configure OpenCode.

Configure OpenCode to use Yolo-Auto.

Requirements:
- Ask me for my Yolo-Auto API key if I have not provided it, and do not print the full key back to me.
- Preserve existing OpenCode providers and unrelated settings.
- Update or create the appropriate opencode.json for this workspace/user.
- Add or merge this provider under provider.yolo-auto:
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "yolo-auto": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Yolo-Auto",
      "options": {
        "baseURL": "https://yolo-auto.com/v1",
        "apiKey": "{env:YOLO_AUTO_API_KEY}"
      },
      "models": {
        "qwen3.6-35b-a3b": {
          "name": "Qwen3.6 35B A3B"
        }
      }
    }
  }
}
- Store the real key in YOLO_AUTO_API_KEY or OpenCode's normal credential store; do not hardcode the secret into a committed repo file unless I explicitly ask.
- Configure/select model qwen3.6-35b-a3b.
- Validate the JSON after editing.
- Report the exact files changed and how I should run/test OpenCode.

Aider

Use Aider with an OpenAI-compatible base URL.

Aider uses an OpenAI-compatible base URL and the openai/ model prefix.

export AIDER_OPENAI_API_BASE="https://yolo-auto.com/v1"
export AIDER_OPENAI_API_KEY="YOUR_yolo_API_KEY_HERE"
export AIDER_MODEL="openai/qwen3.6-35b-a3b"

# Or run one-off: aider --openai-api-base "https://yolo-auto.com/v1" --openai-api-key "YOUR_yolo_API_KEY_HERE" --model openai/qwen3.6-35b-a3b

Prompt for your current agent

Paste this into your current coding agent and let it configure Aider.

Configure Aider to use Yolo-Auto through its OpenAI-compatible settings.

Requirements:
- Ask me for my Yolo-Auto API key if I have not provided it, and do not print the full key back to me.
- Prefer project-local config/env files only if they are gitignored; otherwise tell me what shell exports to add.
- Set these values:
export AIDER_OPENAI_API_BASE="https://yolo-auto.com/v1"
export AIDER_OPENAI_API_KEY="PASTE_YOUR_YOLO_AUTO_API_KEY_HERE"
export AIDER_MODEL="openai/qwen3.6-35b-a3b"

# Or run one-off: aider --openai-api-base "https://yolo-auto.com/v1" --openai-api-key "PASTE_YOUR_YOLO_AUTO_API_KEY_HERE" --model openai/qwen3.6-35b-a3b
- Use model openai/qwen3.6-35b-a3b.
- Do not commit or expose the API key.
- Report the exact files changed and a one-command test using aider.

Cline

Use the OpenAI Compatible provider in VS Code.

In Cline settings, choose OpenAI Compatible, then enter these values.

API Provider: OpenAI Compatible
Base URL: https://yolo-auto.com/v1
API Key: YOUR_yolo_API_KEY_HERE
Model ID: qwen3.6-35b-a3b
Context window: 131072
Supports images: false

Prompt for your current agent

Paste this into your current coding agent and let it configure Cline or give exact UI steps.

Configure Cline to use Yolo-Auto via the OpenAI Compatible provider.

Requirements:
- Ask me for my Yolo-Auto API key if I have not provided it, and do not print the full key back to me.
- If Cline settings can be safely edited as JSON on this machine, update them; otherwise give me exact UI steps.
- Use these values:
API Provider: OpenAI Compatible
Base URL: https://yolo-auto.com/v1
API Key: PASTE_YOUR_YOLO_AUTO_API_KEY_HERE
Model ID: qwen3.6-35b-a3b
Context window: 131072
Supports images: false
- Preserve unrelated Cline/VS Code settings.
- Report the exact files changed or the exact UI fields I need to set.

Roo Code

Use Roo Code's OpenAI Compatible provider.

In Roo Code settings, choose OpenAI Compatible, then enter these values.

API Provider: OpenAI Compatible
Base URL: https://yolo-auto.com/v1
API Key: YOUR_yolo_API_KEY_HERE
Model ID: qwen3.6-35b-a3b
Context window: 131072
Note: Roo Code requires OpenAI-compatible native tool calling from the selected model.

Prompt for your current agent

Paste this into your current coding agent and let it configure Roo Code or give exact UI steps.

Configure Roo Code to use Yolo-Auto via the OpenAI Compatible provider.

Requirements:
- Ask me for my Yolo-Auto API key if I have not provided it, and do not print the full key back to me.
- If Roo Code settings can be safely edited as JSON on this machine, update them; otherwise give me exact UI steps.
- Use these values:
API Provider: OpenAI Compatible
Base URL: https://yolo-auto.com/v1
API Key: PASTE_YOUR_YOLO_AUTO_API_KEY_HERE
Model ID: qwen3.6-35b-a3b
Context window: 131072
Note: Roo Code requires OpenAI-compatible native tool calling from the selected model.
- Preserve unrelated Roo Code/VS Code settings.
- Warn me if the selected model/tool-calling compatibility cannot be verified locally.
- Report the exact files changed or the exact UI fields I need to set.

Continue

Add a Yolo-Auto model to Continue config.

Add this model entry to Continue's config YAML.

name: Yolo-Auto
version: 0.0.1
schema: v1

models:
  - name: Yolo-Auto Qwen3.6 35B A3B
    provider: openai
    model: qwen3.6-35b-a3b
    apiBase: https://yolo-auto.com/v1
    apiKey: YOUR_yolo_API_KEY_HERE
    useResponsesApi: false

Prompt for your current agent

Paste this into your current coding agent and let it configure Continue.

Configure Continue to use Yolo-Auto as an OpenAI-compatible model provider.

Requirements:
- Ask me for my Yolo-Auto API key if I have not provided it, and do not print the full key back to me.
- Locate Continue's config YAML/JSON for this install and preserve unrelated models/settings.
- Add or merge this model entry:
name: Yolo-Auto
version: 0.0.1
schema: v1

models:
  - name: Yolo-Auto Qwen3.6 35B A3B
    provider: openai
    model: qwen3.6-35b-a3b
    apiBase: https://yolo-auto.com/v1
    apiKey: PASTE_YOUR_YOLO_AUTO_API_KEY_HERE
    useResponsesApi: false
- Keep useResponsesApi: false so Continue uses chat completions.
- Do not commit or expose the API key.
- Validate the config syntax and report how I should restart/test Continue.

Claude Code

Bridge through LiteLLM's Anthropic-compatible endpoint.

Claude Code expects Anthropic Messages API. Use LiteLLM as a local bridge to Yolo-Auto's OpenAI-compatible endpoint.

1. Save this as litellm-yolo-auto.yaml

model_list:
  - model_name: qwen3.6-35b-a3b
    litellm_params:
      model: openai/qwen3.6-35b-a3b
      api_key: os.environ/YOLO_AUTO_API_KEY
      api_base: https://yolo-auto.com/v1

litellm_settings:
  master_key: os.environ/LITELLM_MASTER_KEY

2. Start the bridge and launch Claude Code

# Install LiteLLM proxy support
uv tool install 'litellm[proxy]'

# Set secrets locally. Use your real yolo_ key and generate your own proxy key.
export YOLO_AUTO_API_KEY="YOUR_yolo_API_KEY_HERE"
export LITELLM_MASTER_KEY="sk-local-proxy-key-change-me"

# Start the Anthropic-compatible bridge. Save the YAML above as litellm-yolo-auto.yaml first.
litellm --config ./litellm-yolo-auto.yaml --host 127.0.0.1 --port 4000

# In another shell, point Claude Code at LiteLLM's Anthropic Messages API bridge.
export ANTHROPIC_BASE_URL="http://127.0.0.1:4000"
export ANTHROPIC_AUTH_TOKEN="$LITELLM_MASTER_KEY"
export CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1
claude --model qwen3.6-35b-a3b

Prompt for your current agent

Paste this into your current coding agent and let it set up the LiteLLM bridge.

Configure Claude Code to use Yolo-Auto through a local LiteLLM bridge.

Context:
- Claude Code expects an Anthropic Messages API endpoint.
- Yolo-Auto is OpenAI-compatible, so LiteLLM should bridge Claude Code -> LiteLLM /v1/messages -> Yolo-Auto /v1/chat/completions.

Requirements:
- Ask me for my Yolo-Auto API key if I have not provided it, and do not print the full key back to me.
- Install LiteLLM proxy support only if needed and after confirming the package manager/uv availability.
- Create or update a local litellm-yolo-auto.yaml with:
model_list:
  - model_name: qwen3.6-35b-a3b
    litellm_params:
      model: openai/qwen3.6-35b-a3b
      api_key: os.environ/YOLO_AUTO_API_KEY
      api_base: https://yolo-auto.com/v1

litellm_settings:
  master_key: os.environ/LITELLM_MASTER_KEY
- Set local environment variables without committing secrets:
  YOLO_AUTO_API_KEY=<my yolo_ key>
  LITELLM_MASTER_KEY=<a generated local proxy key>
  ANTHROPIC_BASE_URL=http://127.0.0.1:4000
  ANTHROPIC_AUTH_TOKEN=$LITELLM_MASTER_KEY
  CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1
- Show me the command to start LiteLLM and the command to launch Claude Code with qwen3.6-35b-a3b.
- Report the exact files changed and keep all secrets redacted.

Request examples

List models

curl https://yolo-auto.com/v1/models \
  -H "Authorization: Bearer yolo_YOUR_KEY"

Chat completion

Streaming is recommended for long-context or long-output requests. When the upstream starts the response promptly, streaming reduces the risk of hitting the proxied read deadline before inference finishes.

curl https://yolo-auto.com/v1/chat/completions \
  -H "Authorization: Bearer yolo_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen3.6-35b-a3b",
    "messages": [
      { "role": "user", "content": "Hello from Yolo-Auto" }
    ],
    "stream": true
  }'

Usage

curl https://yolo-auto.com/v1/usage \
  -H "Authorization: Bearer yolo_YOUR_KEY"

OpenAI SDK

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.YOLO_AUTO_API_KEY,
  baseURL: "https://yolo-auto.com/v1"
});

const response = await client.chat.completions.create({
  model: "qwen3.6-35b-a3b",
  messages: [{ role: "user", content: "Hello" }]
});

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