本文へスキップ
Markdown で表示

連携

OpenAI 互換または Anthropic 互換のクライアントがあるツールなら、どれでも Kiln に接続できます。base URL を https://api.bricksum.com/v1 に設定し、sk-bk- で始まるキーを渡してください。以下に SDK ごとのページがあり、各ページのスニペットは実際の API に対して実行して確認したものです。そのあとにコーディングツールが続きます。

メモ
qwen3-32b では、構造化出力(response_format)は利用できません。qwen3-32b では、強制的なツール選択が明確なエラーなしに失敗します(2026-09-26 実測)。tool_choice を "required" にすると本文が平文 "Internal Server Error" の HTTP 500 が返り、関数を指定すると arguments が空の 200(finish_reason "stop")が返ります。どちらも 4xx ではないため、再試行では解決しません。tool_choice は "auto" のみを送ってください。 qwen3-32b では parallel_tool_calls の設定が適用されません。これは応答のツール呼び出しが 1 つだけという意味ではありません。parallel_tool_calls: false を送っても、1 つの応答に複数のツール呼び出しが含まれることがあります。tool_calls のすべての項目に、それぞれ tool メッセージで応答してください。すべてのツールに description を付けてください。実測した gpt-oss-120b では、description のないツールを含むリクエストは 400 で拒否されます。モデルは回答の前に推論し(thinking モード)、そのトークンも max_tokens に含まれるため、両方が収まる余裕を確保してください。SDK の例の 800 はこのモデルで測定していない初期値のため、content が空で finish_reason が "length" なら増やしてください。他のモデルでは条件が異なります。詳しくは モデル を参照してください。

SDK

各ページは意図的に短くしています。何をインストールするか、実際の API に対して実行して確認した呼び出しが 1 つ、そして Kiln での違いが 2 つか 3 つです。SDK が共通で使う内容は 5 ページに繰り返さず、API リファレンスにまとめています。

コーディングツール

Claude Code、Codex CLI、Hermes Agent、OpenCode、OpenClaw、Cursor はそれぞれ短い設定変更で接続できます。スニペットはこのページにあり、サインイン後は コンソール → ツール連携 でも同じスニペットを確認できます。これらのツールのエージェントモードは、上で説明した自動ツール選択を利用します。

メモ
Kiln は Chat Completions API、Responses API、Anthropic Messages API を提供します。Codex CLI は Responses API で、Claude Code は Messages API で、間にルーターを挟まずに接続します。Hermes Agent と OpenClaw は、OpenAI 互換のカスタムプロバイダー(custom provider)として設定します。qwen3-32b のコンテキストウィンドウは 32,768 トークンで、エージェントのシステムプロンプトとツール定義が最初のメッセージの前にその多くを占めます。以下の Claude Code、Codex CLI、OpenCode、OpenClaw の設定は、ツールが適切なタイミングで圧縮できるようこのサイズを明記しています。OpenCode はそのうち 8,192 を応答用に確保し、24,576 で圧縮します。limit.output に足したトークンはその分プロンプト用のウィンドウから引かれます。応答が finish_reason "length" で途切れる場合は limit.output を増やしますが、16,384 以下にしてください。そうすればプロンプト用に 16,384 が残ります。キーはコミット対象のファイルには書かず、環境変数またはシークレットマネージャーに保管してください。まず短いプロンプトで動作を確認し、その後コンソール → 使用量でリクエストを確認してください。

Claude Code

Claude Code は Anthropic Messages API を使います。Kiln はこの API を直接提供しているため、ルーターを挟む必要はありません。ANTHROPIC_BASE_URL に Kiln API のオリジンを、ANTHROPIC_AUTH_TOKEN に Kiln のキーを設定し、ANTHROPIC_MODEL とすべての ANTHROPIC_DEFAULT_*_MODEL スロットに Kiln のモデル ID を指定してください。

エンドポイントリファレンス:Messages API

Claude Code
# Claude Code connects to Kiln directly — Kiln serves the Anthropic Messages API.
# Put these in your shell profile (or a direnv file); never commit the key.
export ANTHROPIC_BASE_URL="https://api.bricksum.com"
export ANTHROPIC_AUTH_TOKEN="sk-bk-..."   # your Kiln API key

# Claude Code picks a model per task slot — point every slot at Kiln's model.
export ANTHROPIC_MODEL="qwen3-32b"
export ANTHROPIC_DEFAULT_OPUS_MODEL="qwen3-32b"
export ANTHROPIC_DEFAULT_SONNET_MODEL="qwen3-32b"
export ANTHROPIC_DEFAULT_HAIKU_MODEL="qwen3-32b"

# Claude Code does not know this model, so it assumes a 200k context window and
# lets the session grow past what the upstream accepts. Tell it the real one —
# its own system prompt and tools take a large share of it, so it compacts early.
export CLAUDE_CODE_MAX_CONTEXT_TOKENS=32768

claude

Claude Code の公式ドキュメントと照合した日付:

Codex CLI

Codex CLI は ~/.codex/config.toml からこのプロバイダーブロックを読み込み、Responses API(wire_api = "responses")で Kiln と通信します。Codex を起動する前にシェルで KILN_API_KEY を設定し、モデル ID は Kiln のカタログと一致させてください。

~/.codex/config.toml
model = "qwen3-32b"
model_provider = "kiln"
# The model's real window; Codex's own prompt and tools take a large share of it.
model_context_window = 32768

[model_providers.kiln]
name = "Kiln"
base_url = "https://api.bricksum.com/v1"
env_key = "KILN_API_KEY"
# Codex speaks the Responses API (Kiln serves POST /v1/responses); "chat" is gone.
wire_api = "responses"
bash
# Set this in your shell profile, never commit it.
export KILN_API_KEY="sk-bk-..."

codex

Codex CLI の公式ドキュメントと照合した日付:

Hermes Agent

Hermes Agent には、OpenAI 互換エンドポイント向けのカスタムプロバイダー(custom provider)設定があります。config.yaml にエンドポイントとモデルを保存し、キーは OPENAI_API_KEY として渡してください。このエンドポイント設定は、セッションをまたいで保持されます。

~/.hermes/config.yaml
model:
  provider: custom
  default: qwen3-32b
  base_url: https://api.bricksum.com/v1
bash
# Set this in your shell profile, never commit it.
export OPENAI_API_KEY="sk-bk-..."

# Start Hermes, then send a short test prompt.
hermes

Hermes Agent の公式ドキュメントと照合した日付:

OpenCode

OpenCode は、opencode.json で OpenAI 互換のプロバイダーパッケージを使います。同じプロバイダー設定を、ターミナルとデスクトップのどちらのワークフローでも利用できます。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "kiln": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Kiln",
      "options": {
        "baseURL": "https://api.bricksum.com/v1",
        "apiKey": "{env:KILN_API_KEY}"
      },
      "models": {
        "qwen3-32b": {
          "name": "qwen3-32b",
          "limit": { "context": 32768, "output": 8192 }
        }
      }
    }
  }
}
bash
# Set this in your shell profile, never commit it.
export KILN_API_KEY="sk-bk-..."

opencode

OpenCode の公式ドキュメントと照合した日付:

OpenClaw

OpenClaw では、models.providers の下にカスタムプロバイダーを登録できます。Kiln には openai-completions アダプターを使います。モデルを一度宣言したら、エージェントの既定モデルとして kiln/qwen3-32b を選択してください。

~/.openclaw/openclaw.json
{
  "models": {
    "mode": "merge",
    "providers": {
      "kiln": {
        "baseUrl": "https://api.bricksum.com/v1",
        "apiKey": "${KILN_API_KEY}",
        "api": "openai-completions",
        "models": [
          {
            "id": "qwen3-32b",
            "name": "qwen3-32b",
            "contextWindow": 32768
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": { "model": { "primary": "kiln/qwen3-32b" } }
  }
}
bash
# Set this in your shell profile, never commit it.
export KILN_API_KEY="sk-bk-..."

OpenClaw の公式ドキュメントと照合した日付:

Cursor

Cursor Settings → Models で Kiln のキーを入力し、Override OpenAI Base URL を有効にします。続けて Kiln の正確なモデル ID を追加し、選択してください。

Cursor
Cursor → Settings → Models

1. "OpenAI API Key" に Kiln の API キーを入力 (sk-bk-...)
2. "Override OpenAI Base URL" を有効化
   → https://api.bricksum.com/v1
3. モデル一覧に qwen3-32b を追加して選択

Cursor の公式ドキュメントと照合した日付:

クックブック

これらの連携を最初から最後まで使うレシピ(ストリーミングチャット CLI など)はクックブックにあります。 クックブックを見る →