Aller au contenu
Paneflow

Référence du schéma paneflow.json

Chaque clé de paneflow.json avec son type, sa valeur par défaut, sa stabilité et un exemple.

Chaque clé que Paneflow reconnaît aujourd'hui, regroupée par ce qu'elle contrôle. Toutes les clés sont optionnelles et se résolvent sur une valeur par défaut sensée quand omises. La source faisant autorité est le JSON Schema livré à chaque release.

Cœur

Les cinq clés les plus demandées.

Comment définir default_shell ?

Stable Since v0.1.7

Type : string (optionnel). Défaut : $SHELL.

{ "default_shell": "/bin/zsh" }

Paneflow résout la valeur via une chaîne de repli : chemin configuré (s'il est exécutable) -> $SHELL -> /bin/sh. Un shell configuré manquant ou non exécutable passe au maillon suivant et émet un avertissement dans les logs.

Comment définir theme ?

Stable Since v0.1.7

Type : string (optionnel). Défaut : "One Dark".

Thèmes intégrés :

  • "One Dark" - thème sombre, par défaut.
  • "PaneFlow Light" - thème clair.
{ "theme": "PaneFlow Light" }

Les noms inconnus retombent sur "One Dark" et émettent un avertissement dans les logs. Les thèmes se rechargent à chaud à la sauvegarde du fichier (sondage mtime 500 ms) - aucun redémarrage nécessaire.

Comment définir window_decorations ?

Stable Since v0.2.3

Type : "client" | "server" (optionnel). Défaut : "client".

{ "window_decorations": "client" }

"client" dessine une barre de titre personnalisée (CSD) ; "server" délègue au compositeur de l'OS (SSD). Le défaut est "client" sur toutes les plateformes ; il n'y a pas de surcharge spécifique à l'OS. Lu une seule fois au démarrage - les changements nécessitent un redémarrage.

Comment définir shortcuts ?

Stable Since v0.1.7

Type : object mappant frappe -> nom_d'action (optionnel). Défaut : objet vide (les défauts intégrés s'appliquent).

{
  "shortcuts": {
    "ctrl+shift+t": "new_tab",
    "ctrl+shift+w": "close_pane"
  }
}

Les clés sont des chaînes de frappes ; les valeurs sont des noms d'actions. Vois la référence des raccourcis complète pour le vocabulaire d'actions. Les entrées utilisateur surchargent les défauts intégrés avec une sémantique de dernière écriture gagnante.

Comment définir commands ?

Beta Since v0.1.7

Type : array de définitions de commande (optionnel). Défaut : tableau vide.

{
  "commands": [
    {
      "name": "Open API",
      "workspace": { "cwd": "~/projects/api" }
    }
  ]
}

Le schéma accepte les entrées commands, mais le runtime les ignore actuellement et logue "commands are not yet implemented - they will be ignored". La forme structurelle est stable ; l'activation runtime arrive dans une version ultérieure.

Typographie

Les trois clés de typographie ont atterri dans une release 0.2.x précoce ; le projet n'a pas épinglé de tag de release par clé, donc la valeur exacte de since est approximative.

Comment définir font_family ?

Stable

Type : string (optionnel). Défaut : chaîne de repli monospace de la plateforme.

{ "font_family": "JetBrains Mono" }

Paneflow essaye d'abord la famille configurée, puis retombe sur la première famille monospace installée qu'il peut localiser.

Comment définir font_size ?

Stable

Type : number (optionnel, pixels). Défaut : 14.

{ "font_size": 14 }

Comment définir line_height ?

Stable

Type : number (optionnel, multiplicateur dans la plage 1.02.5). Défaut : 1.3.

{ "line_height": 1.3 }

Les valeurs hors de la plage 1.02.5 sont rejetées avec un avertissement dans les logs et la valeur par défaut est utilisée à la place.

Entrée

Comment définir option_as_meta ?

Stable Since v0.2.14

Type : boolean (optionnel, Unix). Défaut : true.

{ "option_as_meta": false }

Quand true (le défaut), la touche Alt (Linux) ou Option (macOS) envoie un préfixe ESC - le comportement Meta-key standard utilisé par Emacs, Vim et la plupart des applications terminales. Mets à false si tu veux qu'Option produise des caractères Unicode natifs sur macOS (par exemple, Option+e -> é).

Boutons d'agents IA

Bascules pour les boutons de lancement rapide par agent dans la barre de titre des volets.

Comment définir claude_code_button_visible ?

Stable Since v0.2.10

Type : boolean (optionnel). Défaut : true.

{ "claude_code_button_visible": false }

Comment définir claude_code_bypass_permissions ?

Stable Since v0.2.10

Type : boolean (optionnel). Défaut : false.

{ "claude_code_bypass_permissions": true }

Quand true, le lanceur Claude Code invoque la CLI avec --dangerously-skip-permissions. Désactivé par défaut pour la sécurité.

Comment définir codex_button_visible ?

Stable Since v0.2.10

Type : boolean (optionnel). Défaut : true.

{ "codex_button_visible": false }

Comment définir opencode_button_visible ?

Stable Since v0.2.13

Type : boolean (optionnel). Défaut : true.

{ "opencode_button_visible": false }

Télémétrie

Comment définir telemetry ?

Stable Since v0.2.9

Type : object { enabled: boolean | null } (optionnel). Défaut : { "enabled": null } (invite au premier lancement).

{ "telemetry": { "enabled": false } }

Mets enabled: false pour désactiver tout reporting PostHog. Mets enabled: true pour opter sans l'invite du premier lancement.

Terminal

Comment définir terminal.ligatures ?

Stable Since v0.2.14

Type : boolean à l'intérieur de l'objet terminal (optionnel). Défaut : false.

{ "terminal": { "ligatures": true } }

Active les ligatures de programmation pour les polices qui les embarquent (Fira Code, JetBrains Mono, Iosevka, etc.). La police doit contenir les glyphes de ligature pour que la fonctionnalité prenne effet.

Un exemple complet

{
  "$schema": "https://github.com/ArthurDEV44/paneflow/raw/main/schemas/paneflow.schema.json",
  "default_shell": "/bin/zsh",
  "theme": "One Dark",
  "font_family": "JetBrains Mono",
  "font_size": 14,
  "line_height": 1.3,
  "window_decorations": "client",
  "option_as_meta": true,
  "shortcuts": {},
  "terminal": { "ligatures": false },
  "telemetry": { "enabled": null },
  "claude_code_button_visible": true,
  "claude_code_bypass_permissions": false,
  "codex_button_visible": true,
  "opencode_button_visible": true,
  "commands": []
}

Pour la définition de schéma en direct, vois paneflow.schema.json.

On this page