Skip to content

Paramètres CLI (config.json) ​

Chaque champ de config.json : comment le CLI openspec se comporte sur votre machine.

Emplacement ​

Le CLI conserve ses paramètres au niveau de la machine dans ~/.config/openspec/config.json sur macOS et Linux, et %APPDATA%\openspec\config.json sur Windows. $XDG_CONFIG_HOME est prioritaire sur toutes les plateformes lorsqu'il est défini. La commande openspec config le lit et le modifie.

Champs ​

CléTypeObligatoireEffet
profilechaîne : core ou customNonSélectionne l'ensemble de workflows que openspec init installe
deliverychaîne : both, skills ou commandsNonDétermine si init installe des skills, des commandes slash ou les deux
workflowsliste de chaînesNonLa liste des workflows installés par un profil custom
featureFlagsmap : flag → booléenNonCommutateurs de fonctionnalités booléens
defaultStorechaîneNonStore de repli au niveau machine pour la résolution de la racine
openersmap : identifiant d'outil → paramètresNonLes outils dans lesquels les worksets s'ouvrent, et comment chacun est lancé
telemetrymapNonDésactivation de la télémétrie, identifiant anonyme et état d'affichage de la notification

profile ​

L'ensemble de workflows que openspec init installe. Par défaut, core : propose, explore, apply, update, sync et archive. Définir custom installe exactement la liste workflows à la place.

delivery ​

Détermine si init installe les workflows en tant que skills, en tant que commandes slash, ou les deux. Par défaut, both.

workflows ​

Les workflows installés par un profil custom ; ignoré lorsque le profil est core. Identifiants valides : propose, explore, new, continue, apply, update, ff, sync, archive, bulk-archive, verify, onboard.

featureFlags ​

Commutateurs booléens indexés par nom de flag, définis avec openspec config set featureFlags.<flag> true. Aucun flag n'est lu par le CLI aujourd'hui.

defaultStore ​

L'identifiant du store de repli au niveau machine pour la résolution de la racine, consulté uniquement lorsqu'aucun flag --store, dossier openspec/ local ou pointeur store: de projet ne permet de résoudre. La hiérarchie complète est décrite dans Résolution de la racine.

openers ​

Les outils dans lesquels un workset peut s'ouvrir, indexés par identifiant d'outil. Modifiez openers dans le config.json global avec openspec config edit dans votre terminal.

ChampContrat
styleworkspace-file ou attach-dirs. Obligatoire pour un nouvel outil ; facultatif pour un outil intégré.
labelChaîne non vide affichée dans le sélecteur d'outils. Par défaut, l'identifiant pour un nouvel outil.
commandNom ou chemin d'exécutable non vide. Par défaut, l'identifiant pour un nouvel outil. Placez les arguments dans args, pas dans cette chaîne.
argsTableau de chaînes transmis avant le fichier workspace ou les indicateurs d'attache. Par défaut, [] pour un nouvel outil.
attach_flagChaîne non vide associée à chaque chemin de membre pour attach-dirs. Par défaut, --add-dir pour un nouvel outil. Ignoré pour workspace-file.

Remplacements des outils intégrés : code, cursor, claude et codex conservent tous les champs que vous omettez. Définir args remplace l'intégralité de la liste d'arguments ; [] la vide.

Styles de lancement : workspace-file transmet le chemin du fichier .code-workspace généré à l'exécutable. attach-dirs transmet une paire indicateur/chemin par membre, y compris le membre principal.

Disponibilité : Les openers attach-dirs, y compris Claude Code et Codex, sont désactivés par défaut. Vous ne pouvez pas les sélectionner ni les enregistrer avec --tool, et OpenSpec refuse d'ouvrir un workset qui en référence déjà un. Les remplacements de configuration n'activent pas le style de lancement attach-dirs.

Validation : les champs inconnus, les types invalides et un nouvel outil sans style provoquent un échec lorsqu'une commande de workset lit la table des openers.

Cet exemple ajoute VS Code Insiders et transmet --new-window à chaque lancement de l'outil intégré VS Code :

json
{
  "openers": {
    "code-insiders": {
      "style": "workspace-file",
      "label": "VS Code Insiders"
    },
    "code": {
      "args": ["--new-window"]
    }
  }
}

L'exécutable correspondant code-insiders ou code doit être installé et disponible dans le PATH.

telemetry ​

Le CLI stocke votre identifiant anonyme et indique si la notification de premier lancement a été affichée. Définissez telemetry.enabled à false pour désactiver la télémétrie. Vous pouvez également vous désinscrire avec OPENSPEC_TELEMETRY=0 ou DO_NOT_TRACK=1 dans votre environnement.

Exemple ​

Un config.json renseigné :

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