認証
認証
coscli は SID (connect.sid)・PAT (Personal Access Token)・SA Key (Service Account Key) の 3 方式をサポートし、すべて OS キーチェーンにプロファイルとして統一管理します。 認証方式の比較
table:比較
方式,読み取り,書き込み,個別失効,対象
connect.sid (SID),✓,✓,✗ (全ログアウト),個人アカウント
Personal Access Token (PAT),✓,✗,✓,個人アカウント
Service Account Key (SA Key),✓,✗,✓,Business Plan SA
ログイン方法
対話入力 (SID 貼り付け)
code:bash
cos auth login
ブラウザで Cosense にログイン後、DevTools > Application > Cookies > scrapbox.io の connect.sid をコピーして貼り付けます。
PAT でログイン
code:bash
cos auth login --pat "pat_xxxxxxxxxxxx..."
Cosense アカウント設定から発行した Personal Access Token を登録します。読み取り系 REST 専用です。
CI / エージェント向け (SID 直接指定)
code:bash
cos auth login --no-input --sid "$COS_SID"
--no-input で対話入力を無効化します。
API 検証なしで直接保存 (CI / 自動化向け)
code:bash
# SID を直接保存
cos auth add --type sid --key "s%3Axxxxxxxx..." --profile 個人
# PAT を環境変数経由で保存
cos auth add --type pat --key-env MY_PAT_TOKEN --profile ci-readonly
# SA Key を stdin から読み込み
echo "cs_xxxx..." | cos auth add --type sa --key-stdin --project myproject
cos auth add はネットワーク不要で、CI・自動化環境に最適です。詳細: auth add 認証確認
code:bash
cos auth whoami
# 現在の認証情報と解決経路を確認
cos auth status
# 全プロファイルの健全性チェック
cos auth doctor
ログアウト
code:bash
cos auth logout
cos auth logout --profile work
プロファイル管理
デフォルトのプロファイル名は default です。SID / PAT / SA Key すべてがプロファイルとして統一管理されます。
code:bash
# 登録済みプロファイルを一覧表示
cos auth list
# デフォルトプロファイルを切り替える
cos auth use 個人
# デフォルト設定を解除
cos auth use --unset
環境変数による認証 (ログインなしで使う)
code:bash
# SID を都度渡す
export COS_SID="s%3Axxxxxxxx..."
# PAT を都度渡す
export COS_PERSONAL_ACCESS_TOKEN="pat_xxxx..."
# SA Key を都度渡す
export COS_SERVICE_ACCOUNT_KEY="cs_xxxx..."
cos page list --project myproject
認証解決の優先順位 (7段)
1. 環境変数 COS_PERSONAL_ACCESS_TOKEN → PAT
2. 環境変数 COS_SERVICE_ACCOUNT_KEY → SA キー
3. 環境変数 COS_SID (--profile 未指定時のみ)
4. --profile <name> フラグ → キーチェーン
5. COS_PROFILE 環境変数 → キーチェーン
6. config.defaultProfile → キーチェーン
7. "default" プロファイル → キーチェーン
PAT の制限事項
PAT は読み取り系 REST のみ対応しています。
書き込みコマンド (page edit・page pin・sync push 等) は connect.sid が必要です。
書き込みを PAT で実行すると exit 2 (AUTH_WRITE_NOT_SUPPORTED) になります。
Service Account Key について
Cosense Business Plan の Service Account Key (cs_ で始まる 67 文字) を使うと、個人の connect.sid なしで API を呼び出せます。
v0.8.0 より SA Key は OS キーチェーンで管理されます。旧バージョンの config.serviceAccounts からの移行は cos auth migrate を実行してください。
旧 auth sa コマンドについて (v0.8.0 で削除)
v0.8.0 より cos auth sa add / cos auth sa list / cos auth sa delete は廃止されました。
代わりに cos auth add --type sa / cos auth list / cos auth logout を使用してください。
関連ページ