CLI 設定 (config.json)
config.json のすべてのフィールド: openspec CLI がお使いのマシン上でどのように動作するか。
保存場所
CLI はマシンレベルの設定を、macOS と Linux では ~/.config/openspec/config.json、Windows では %APPDATA%\openspec\config.json に保存します。$XDG_CONFIG_HOME が設定されている場合は、すべてのプラットフォームでこれが優先されます。この設定は openspec config コマンドで読み取り、編集できます。
フィールド
| キー | 型 | 必須 | 効果 |
|---|---|---|---|
profile | string: core または custom | いいえ | openspec init がインストールするワークフローセットを選択 |
delivery | string: both、skills、または commands | いいえ | init がスキル、スラッシュコマンド、またはその両方をインストールするか |
workflows | 文字列のリスト | いいえ | custom プロファイルがインストールするワークフローリスト |
featureFlags | マップ: フラグ → boolean | いいえ | boolean 型の機能トグル |
defaultStore | string | いいえ | ルート解決用のマシンレベルのフォールバックストア |
openers | マップ: ツール ID → 設定 | いいえ | ワークセットを開くツールと、各ツールの起動方法 |
telemetry | マップ | いいえ | テレメトリのオプトアウト、匿名 ID、通知表示済み状態 |
profile
openspec init がインストールするワークフローセット。デフォルトは core で、propose、explore、apply、update、sync、archive です。custom を設定すると、代わりに workflows リストの内容だけがインストールされます。
delivery
init がワークフローをスキルとして、スラッシュコマンドとして、またはその両方としてインストールするか。デフォルトは both です。
workflows
custom プロファイルがインストールするワークフロー。プロファイルが core の場合は無視されます。有効な ID: propose、explore、new、continue、apply、update、ff、sync、archive、bulk-archive、verify、onboard。
featureFlags
フラグ名をキーとする boolean トグル。openspec config set featureFlags.<flag> true で設定します。現在、CLI が読み取るフラグはありません。
defaultStore
ルート解決に使用するマシンレベルのフォールバックストア ID。--store フラグ、ローカルの openspec/、またはプロジェクトの store: ポインタのいずれも解決できない場合にのみ参照されます。完全な優先順位は ルート解決 を参照してください。
openers
ワークセットを開くことができるツール。ツール ID をキーとします。グローバルな config.json の openers は、ターミナルで openspec config edit を実行して編集します。
| フィールド | 仕様 |
|---|---|
style | workspace-file または attach-dirs。新しいツールでは必須、組み込みツールでは任意。 |
label | ツールピッカーに表示される空でない文字列。新しいツールでは ID がデフォルトです。 |
command | 空でない実行ファイル名またはパス。新しいツールでは ID がデフォルトです。引数はこの文字列ではなく args に指定します。 |
args | ワークスペースファイルまたは attach フラグの前に渡される文字列の配列。新しいツールでは [] がデフォルトです。 |
attach_flag | attach-dirs で各メンバーパスと組み合わせる空でない文字列。新しいツールでは --add-dir がデフォルトです。workspace-file では無視されます。 |
組み込みツールのオーバーライド: code、cursor、claude、codex は、省略したフィールドを保持します。args を設定すると引数リスト全体が置き換えられ、[] を指定するとクリアされます。
起動スタイル: workspace-file は生成された .code-workspace のパスを実行ファイルに渡します。attach-dirs は、プライマリメンバーを含む各メンバーに対してフラグ/パスのペアを 1 つ渡します。
利用可否: Claude Code や Codex を含む attach-dirs のオープナーは、デフォルトで無効です。--tool でそれらを選択または保存することはできず、OpenSpec はすでに attach-dirs オープナーを指定しているワークセットを開くことを拒否します。設定のオーバーライドによって attach-dirs 起動スタイルが有効になることはありません。
検証: 不明なフィールド、無効な型、および style のない新しいツールは、ワークセットコマンドがオープナーテーブルを読み取るときに失敗します。
次の例では VS Code Insiders を追加し、組み込みの VS Code オープナーが起動するたびに --new-window を渡します:
{
"openers": {
"code-insiders": {
"style": "workspace-file",
"label": "VS Code Insiders"
},
"code": {
"args": ["--new-window"]
}
}
}対応する code-insiders または code の実行ファイルがインストールされ、PATH で利用可能である必要があります。
telemetry
CLI は匿名 ID と、初回実行時の通知が表示されたかどうかを保存します。テレメトリを無効にするには、telemetry.enabled を false に設定します。環境で OPENSPEC_TELEMETRY=0 または DO_NOT_TRACK=1 を設定してオプトアウトすることもできます。
例
記入済みの config.json:
{
"profile": "core",
"delivery": "both",
"featureFlags": {},
"telemetry": {
"anonymousId": "5f8a2c1e-4b6d-4f9a-9c3d-7e1b2a8d4c6f",
"noticeSeen": true
}
}