Droid
Factory Droid で aicentos を使う —— settings.json でカスタムモデルを登録(BYOK)
最終更新:
Droid は Factory がリリースしたコマンドラインのコーディングエージェントで、BYOK に対応しています。~/.factory/settings.json にカスタムモデルを登録し、baseUrl を aicentos に向けるだけで使えます。Droid はモデルのコンテキストウィンドウが最低 64k 必要なので、選定時に注意してください。
準備
まずコンソールの「API キー」ページで、Droid 専用のキーを作成してください(名前は droid のようにすると使用量の追跡に便利です):
- コンソール:https://aicentos.com
- キーの作成:https://aicentos.com/keys
- 残高不足のときのチャージ:https://aicentos.com/wallet
設定値
| 項目 | 値 |
|---|---|
| 設定ファイル | ~/.factory/settings.json |
| provider | generic-chat-completion-api |
| baseUrl | https://aicentos.com/v1 |
| apiKey | ${AICENTOS_API_KEY} |
| モデル | コンソール「モデル広場」のモデル名 |
設定手順
1. API Key 環境変数の設定
export AICENTOS_API_KEY="sk-あなたの-API-Key"~/.zshrc または ~/.bashrc に書き込めば永続化できます。
2. settings.json の編集
~/.factory/settings.json を編集し、customModels 配列を追加します:
{
"customModels": [
{
"model": "gpt-4o",
"displayName": "GPT-4o (aicentos)",
"baseUrl": "https://aicentos.com/v1",
"apiKey": "${AICENTOS_API_KEY}",
"provider": "generic-chat-completion-api",
"maxOutputTokens": 8192
}
]
}重要なフィールド:
| フィールド | 説明 |
|---|---|
model | エンドポイントに実際に送るモデル ID。コンソール「モデル広場」と一致させてください |
displayName | モデルセレクターに表示される名前。カスタマイズできます |
baseUrl | API アドレス。/v1 付きを推奨します |
apiKey | ${VAR_NAME} の展開に対応しています |
provider | anthropic / openai / generic-chat-completion-api |
3. モデルの選択
droid を起動したら /model を実行し、先ほど登録したモデルを選択します。設定を変更した後は、新しいターミナルで droid を再起動する必要があります。そうしてはじめてファイルが再読込されます。
テスト
モデルを選んだら、簡単なリクエストを 1 つ送ります:
1+1 はいくつですか?一文で答えてください正常に返れば接続成功です。
注意事項
providerにはgeneric-chat-completion-apiを指定することをおすすめします。OpenAI Chat Completions プロトコルを使い、ほとんどの BYOK シナリオで正しい選択になります。openaiを指定すると Responses API を使いますし、一部のゲートウェイではこの値がbase_urlを無視して直接api.openai.comに向かいます。anthropicを指定すると/v1/messagesを使います。- 先に環境変数を整理してください。shell で
ANTHROPIC_AUTH_TOKEN、ANTHROPIC_BASE_URL、ANTHROPIC_API_KEYのいずれかを export していると、設定ファイルが上書きされ、リクエストが設定したゲートウェイを経由しなくなります。接続前にこれらの変数をunsetしておくことをおすすめします。 - Droid は
~/.factory/settings.jsonと旧形式の~/.factory/config.jsonを両方読み込み、前者が優先されます。旧形式のフィールド名はスネークケースのcustom_models/model_display_name/base_url/api_keyで、${VAR_NAME}の展開には対応していません。settings.jsonに統一することをおすすめします。 - モデルのコンテキストウィンドウは最低 64k 必要です。小さすぎるローカルモデルは動作が異常になることがあります。
- Factory がベンチマークを行っているのは公式の Anthropic / OpenAI インターフェースのみで、カスタムモデルの互換性は保証されません。サブエージェント(subagent)がときどき Anthropic 公式インターフェースにフォールバックすることが知られています。
- 切り分けの順序:
/modelにモデルが見えるか → 環境変数が ANTHROPIC_* に上書きされていないか → baseUrl に/v1が付いているか → 残高は十分か。
関連リンク
- BYOK 公式ドキュメント:https://docs.factory.ai/model-independence/byok