設定ファイル
coscli の設定ファイルは JSON5 形式で記述します。
JSON5 はコメントや末尾カンマが使えます。
設定ファイルの場所
code:bash
# パスを確認
cos config path
# → ~/.config/coscli/config.json5 (XDG_CONFIG_HOME が未設定の場合)
XDG_CONFIG_HOME 環境変数が設定されている場合はその下に作成されます。
設定の読み書き
code:bash
# 値を取得
cos config get defaultProject
# ドット区切りでネストしたキーを指定
cos config get projects.myproject.permission
# 値を設定
cos config set defaultProject myproject
cos config set projects.myproject.permission read
主要な設定キー
defaultProject — --project 省略時のデフォルトプロジェクト名
defaultProfile — --profile 省略時のデフォルト 認証 プロファイル名
defaultPermission — 未列挙プロジェクトへの既定権限 ("read" / "readwrite" / "none")
⚠️ プロジェクト名が解決できる場合のみ有効です。
disableCommands — 全プロジェクト共通の絶対禁止コマンドリスト (sandbox 参照)
output.color — 色設定 ("auto" / "always" / "never")
serviceAccounts — プロジェクト名をキーとした Service Account Access Key の辞書 (Record<string, string>)
auth sa add で登録したキーがここに保存されます。
プロジェクト固有設定 (projects.<name>)
permission — "read" / "readwrite" / "none" で権限プリセットを指定
enableCommands — 追加許可するコマンドリスト
disableCommands — 追加禁止するコマンドリスト
defaultSort — ページ一覧のデフォルトソート順
defaultLimit — ページ一覧のデフォルト件数
同期設定 (sync)
dir — cos sync のデフォルト作業ディレクトリ
format — 同期ファイル形式 (現在 "txt" のみ)
retries — push 時の楽観ロック競合リトライ回数
設定ファイルの例
code:json5
// ~/.config/coscli/config.json5
{
defaultProject: "myproject",
defaultPermission: "read",
// 削除は常に禁止
disableCommands: "page.delete",
// Service Account Access Key (cos auth sa add で登録)
serviceAccounts: {
"myproject": "cs_xxxxxxxxxxxx...",
},
projects: {
// 書き込みも許可するプロジェクト
"myproject": {
permission: "readwrite",
},
// 読み取り専用のプロジェクト
"other-project": {
permission: "read",
},
},
output: {
color: "auto",
},
sync: {
dir: "~/cosense-sync",
},
}
関連ページ
sandbox
認証
auth sa add
config get
config set
#reference