Skip to content

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문자열: core 또는 custom아니요openspec init이 설치하는 워크플로 세트를 선택합니다
delivery문자열: both, skills, 또는 commands아니요openspec init이 스킬, 슬래시 명령, 또는 둘 다를 설치할지 여부
workflows문자열 목록아니요custom 프로필이 설치하는 워크플로 목록
featureFlags맵: 플래그 → 불리언아니요불리언 기능 토글
defaultStore문자열아니요루트 해석을 위한 머신 수준 대체 스토어
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 ​

플래그 이름을 키로 하는 불리언 토글입니다. openspec config set featureFlags.<flag> true로 설정합니다. 현재 CLI에서 읽는 플래그는 없습니다.

defaultStore ​

루트 해석을 위한 머신 수준 대체 스토어 ID입니다. --store 플래그, 로컬 openspec/, 프로젝트 store: 포인터 중 어느 것도 해석되지 않을 때만 참조됩니다. 전체 우선순위 단계는 루트 해석을 참조하세요.

openers ​

워크셋을 열 수 있는 도구이며, 도구 ID를 키로 합니다. 터미널에서 openspec config edit로 전역 config.json의 openers를 편집하세요.

필드동작 규칙
styleworkspace-file 또는 attach-dirs. 새 도구에는 필수이고, 내장 도구에는 선택 사항입니다.
label도구 선택기에 표시되는 비어 있지 않은 문자열입니다. 새 도구의 기본값은 ID입니다.
command비어 있지 않은 실행 파일 이름 또는 경로입니다. 새 도구의 기본값은 ID입니다. 인수는 이 문자열이 아니라 args에 넣으세요.
args워크스페이스 파일 또는 attach 플래그 앞에 전달되는 문자열 배열입니다. 새 도구의 기본값은 []입니다.
attach_flagattach-dirs에서 각 멤버 경로와 함께 사용되는 비어 있지 않은 문자열입니다. 새 도구의 기본값은 --add-dir입니다. workspace-file에서는 무시됩니다.

내장 도구 재정의: code, cursor, claude, codex는 생략한 필드를 그대로 유지합니다. args를 설정하면 전체 인수 목록이 대체되며, []로 설정하면 목록이 비워집니다.

실행 스타일: workspace-file은 생성된 .code-workspace 경로를 실행 파일에 전달합니다. attach-dirs는 기본 멤버를 포함한 각 멤버마다 하나의 플래그/경로 쌍을 전달합니다.

가용성: Claude Code와 Codex를 포함한 attach-dirs 오프너는 기본적으로 비활성화되어 있습니다. --tool로 선택하거나 저장할 수 없으며, OpenSpec은 이미 해당 오프너를 지정한 워크셋을 열지 않습니다. 구성 재정의로는 attach-dirs 실행 스타일을 활성화할 수 없습니다.

검증: 알 수 없는 필드, 잘못된 유형, style이 없는 새 도구가 있으면 워크셋 명령이 오프너 테이블을 읽을 때 실패합니다.

다음 예제는 VS Code Insiders를 추가하고, 내장 VS Code 오프너가 실행될 때마다 --new-window를 전달합니다:

json
{
  "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:

json
{
  "profile": "core",
  "delivery": "both",
  "featureFlags": {},
  "telemetry": {
    "anonymousId": "5f8a2c1e-4b6d-4f9a-9c3d-7e1b2a8d4c6f",
    "noticeSeen": true
  }
}