コンテンツにスキップ

認証と API キー

Subaya は同じ API に対して 2 つの認証モードをサポートしています。

API キー — SUBAYA_API_KEY(エージェントと CI)

Section titled “API キー — SUBAYA_API_KEY(エージェントと CI)”

最もシンプルな方法であり、AI エージェントと CI パイプラインに使うべきものです。環境変数を 設定すれば、すべての suya コマンド(とプラットフォーム API)がそれを拾います:

Terminal window
export SUBAYA_API_KEY="sk_live_..."
suya auth whoami # confirm the identity the key resolves to

ブラウザもインタラクティブなステップもなし — ヘッドレス環境に理想的です。キーの発行と 管理はコンソールの Settings → API keys から行います。

キーは環境ごとに分かれています

Section titled “キーは環境ごとに分かれています”

プレフィックスを見れば、そのキーがどの環境に属しているかが分かります。キーはその環境に 対してのみ動作します:

  • sk_live_… — 本番 API(https://subaya-dev.com)。
  • sk_test_… — 非本番環境用に予約されています。

誤ったホストにキーを提示すると、suya auth whoami は汎用的な「無効なキー」ではなく wrong_environment として拒否し、正しいキーを発行する場所を伝えます。理由の完全な一覧は CLI: auth をご覧ください。

OAuth ブラウザログイン(人間)

Section titled “OAuth ブラウザログイン(人間)”

ワークステーションでのインタラクティブな利用向け:

Terminal window
suya auth login # opens a browser (loopback redirect)
suya auth login --no-browser # print a code to approve from any device

suya auth login はブラウザを開き、127.0.0.1 にリダイレクトして戻ってくるため、 ブラウザが同じマシン上にある必要があります。そうでない場合 — SSH、コンテナ、リモート 開発マシンなど — は --no-browser を使ってください。CLI が短いコードを表示し、任意の デバイスのブラウザでそれを承認すると、CLI がトークンを受け取ります。また、ブラウザを 開けない場合やリダイレクトが戻ってこない場合には、CLI が自動的にこのフローへ切り替えます。 デバイスフローの手順 をご覧ください。

CLI は結果として得られたトークンをローカル(~/.config/suya/ の下)に保存します。確認または消去します:

Terminal window
suya auth status # local status, without calling the server
suya auth logout # log out and revoke the local token

複数の認証情報が存在する場合、suya は次の順序で解決します:

  1. --token グローバルフラグ
  2. SUBAYA_API_KEY
  3. ローカルに保存された OAuth トークン(~/.config/suya/auth.json

デフォルト以外の API エンドポイントをターゲットにする必要がある場合、すべてのコマンドは --host(デフォルト https://subaya-dev.com)を受け付けます。