Coding tools

VS Code

Copilot Chat, Claude Code, Cline, Roo Code, Kilo Code or Continue: pick your assistant, point it at Unaligned.

GitHub Copilot Chat

Copilot Chat takes your own models through its Custom Endpoint provider, in agent mode too. It works without a Copilot plan; on Copilot Business or Enterprise, an admin must allow “Bring Your Own Language Model Key”.

  1. 01 Open the model picker in the Chat view, then Manage Language Models (or run Chat: Manage Language Models).
  2. 02 Add Models → Custom Endpoint. Name the group Unaligned and paste your key.
  3. 03 VS Code opens chatLanguageModels.json: list the models as below.
[
  {
    "name": "Unaligned",
    "vendor": "customendpoint",
    "apiKey": "${input:unalignedApiKey}",
    "apiType": "chat-completions",
    "models": [
      {
        "id": "glm-5.3",
        "name": "GLM 5.3",
        "url": "https://api.unaligned.pw/openai/v1/chat/completions",
        "toolCalling": true,
        "vision": false,
        "maxInputTokens": 900000,
        "maxOutputTokens": 65536
      },
      {
        "id": "claude-sonnet-5-5",
        "name": "Claude Sonnet 5.5",
        "apiType": "messages",
        "url": "https://api.unaligned.pw/anthropic/v1/messages",
        "toolCalling": true,
        "vision": false,
        "maxInputTokens": 900000,
        "maxOutputTokens": 64000
      }
    ]
  }
]
  • Give the full url, ending with /chat/completions (OpenAI format) or /v1/messages (Anthropic format, apiType: "messages"). Both work for every model.
  • toolCalling: true is what makes a model available in agent mode.
  • maxInputTokens plus maxOutputTokens must stay within the model’s context window.
  • Inline completions (ghost text) still come from GitHub: custom models are for Chat and agents.

Claude Code

The Claude Code extension uses the same settings as the CLI, plus two lines in VS Code’s settings.json. See Claude Code → VS Code and JetBrains.

Cline and Roo Code

  1. 01 Open the extension’s settings (gear icon).
  2. 02 API Provider: OpenAI Compatible.
  3. 03 Base URL: https://api.unaligned.pw/openai/v1. API Key: your key. Model: a model ID, for example glm-5.3.
  4. 04 Under Model Configuration, set the context window and max output from the model list.

Kilo Code

  1. 01 Settings → Providers → Custom provider.
  2. 02 Provider API: OpenAI Compatible. Base URL: https://api.unaligned.pw/openai/v1. Paste your key.
  3. 03 The models are loaded from the endpoint: pick one.

Continue

In ~/.continue/config.yaml, with the key in ~/.continue/.env as UNALIGNED_KEY=sk-unal-…:

name: Unaligned
version: 0.0.1
schema: v1
models:
  - name: GLM 5.3 (Unaligned)
    provider: openai
    model: glm-5.3
    apiBase: https://api.unaligned.pw/openai/v1
    apiKey: ${{ secrets.UNALIGNED_KEY }}
    roles: [chat, edit, apply]
    capabilities: [tool_use]
    defaultCompletionOptions:
      contextLength: 1000000
      maxTokens: 16000
  - name: GPT-6 Luna (Unaligned)
    provider: openai
    model: gpt-6-luna
    apiBase: https://api.unaligned.pw/openai/v1
    apiKey: ${{ secrets.UNALIGNED_KEY }}
    capabilities: [tool_use]
  • capabilities: [tool_use] enables Agent mode with the model.