# Command Code

出典: https://docs.aicentos.com/ja/clients/command-code

Language: ja

> Command Code で aicentos を使う —— providers.json で BYOK プロバイダーを追加

Command Code はターミナル上のコーディングエージェントで、デフォルトでは内蔵プロバイダーを使用します。同時に BYOK にも対応しており、`~/.commandcode/providers.json` にカスタムプロバイダーを登録し、baseURL を aicentos に向けるだけで使えます。

## 準備

まずコンソールの「API キー」ページで、Command Code 専用のキーを作成してください（名前は `command-code` のようにすると使用量の追跡に便利です）：

* コンソール：[https://aicentos.com](https://aicentos.com)
* キーの作成：[https://aicentos.com/keys](https://aicentos.com/keys)
* 残高不足のときのチャージ：[https://aicentos.com/wallet](https://aicentos.com/wallet)

## 設定値

| 項目      | 値                               |
| ------- | ------------------------------- |
| 設定ファイル  | `~/.commandcode/providers.json` |
| baseURL | `https://aicentos.com/v1`       |
| apiKey  | `$AICENTOS_API_KEY`             |
| モデル     | コンソール「モデル広場」のモデル名               |

## 設定手順

### 1. 環境変数の設定

```bash
export AICENTOS_API_KEY="sk-あなたの-API-Key"
```

`~/.zshrc` または `~/.bashrc` に書き込めば永続化できます。

### 2. providers.json の編集

`~/.commandcode/providers.json` を編集し、`provider` オブジェクトの下に 1 つのエントリを追加します：

```json
{
  "provider": {
    "aicentos": {
      "name": "aicentos",
      "api": "openai-completions",
      "baseURL": "https://aicentos.com/v1",
      "apiKey": "$AICENTOS_API_KEY",
      "models": {
        "gpt-4o": {}
      }
    }
  }
}
```

フィールドの説明：

| フィールド     | 説明                                                               |
| --------- | ---------------------------------------------------------------- |
| `name`    | 表示名。`/connect` と `/model` に表示されます                                |
| `api`     | `openai-completions`（デフォルト）または `anthropic-messages`              |
| `baseURL` | 必須。API のルートアドレスで、`/v1` が必要です                                     |
| `apiKey`  | `$VAR`、`{env:VAR}`、`!command` に対応。`false` を入れると認証なしエンドポイントを意味します |
| `models`  | 必須。`{}` で OK です。モデル ID はエンドポイントと一致させてください                        |

`models` 内のモデル ID は、コンソール「モデル広場」の名前に置き換えてください。[対応モデル](https://docs.aicentos.com/ja/billing/models-list) を参考にできます。

### 3. プロバイダーの選択

Command Code に入ったら：

* `/connect` を実行し、`aicentos` を選んでキーの確認を完了させます；
* `/model` を実行し、使いたいモデルを選択します。

注意：**`providers.json` を変更した後は `/model` を開き直す必要があります**。そうしてはじめて新しい設定が読み込まれます。

## テスト

モデルを選んだら、簡単なプロンプトを 1 つ送ります：

```
1+1 はいくつですか？一文で答えてください
```

正常に返れば接続成功です。また、`/connect` 内でプロバイダーに `u` を押すと、エンドポイントの `/models` を呼び出してモデル一覧を更新させることができます。

## 注意事項

* Command Code はデフォルトで OpenAI 互換の Chat Completions を使うため、`api` は `openai-completions` を指定すれば OK です。
* Claude 系モデルを使いたい場合は、`api: "anthropic-messages"` のプロバイダーエントリを別途作成する必要があります。2 つのプロトコルではパスの連結方法が異なります（OpenAI SDK は `/chat/completions` を追加し、Anthropic SDK は `/v1/messages` を追加します）。同じ baseURL で両方を同時にサービスすることはできません。
* `baseURL` には必ず `/v1` を付けます。後続のパスは Command Code が自動で連結します。
* `apiKey` に平文のキーを直接貼り付けると拒否されます。`$VAR` 形式を使ってください。
* 切り分けの順序：`/model` にモデルが見えるか → 環境変数が起動したターミナルから見えるか → baseURL が `/v1` までか → 残高は十分か。

## 関連リンク

* BYOK 公式ドキュメント：[https://commandcode.ai/docs/byok](https://commandcode.ai/docs/byok)