Aller au contenu

Référence des réglages

τ-mux persiste ses réglages dans ~/Library/Application Support/hyperterm-canvas/settings.json. Le panneau de réglages (⌘,) écrit ce fichier, tout comme les bascules de la palette et les verbes RPC comme claude.auto_approve — ces chemins persistent et s’appliquent en direct. L’édition à la main fonctionne aussi, mais τ-mux ne surveille pas le fichier : une modification externe n’est prise en compte qu’au prochain lancement (et sera écrasée si l’application écrit ses réglages avant).

Schéma : AppSettings dans src/shared/settings.ts. Défauts : DEFAULT_SETTINGS. Validation : validateSettings (schémas par champ dans settings.schema.ts : une valeur hors bornes ou mal typée retombe sur le défaut au lieu de casser l’application).

Cette page liste tous les champs, avec le défaut lu depuis DEFAULT_SETTINGS.

ChampTypeDéfautEffet
shellPathstring""Shell binary. Empty = $SHELL. New surfaces only — existing shells keep running.
scrollbackLinesnumber10000Lines retained in the scrollback buffer per surface.
fontFamilystring'JetBrainsMono Nerd Font Mono', 'JetBrains Mono', 'Berkeley Mono', 'SF Mono', 'Menlo', monospaceTerminal font stack.
fontSizenumber13Terminal font size in px.
lineHeightnumber1Line-height multiplier (0.8–2.0).
cursorStyle"block" | "bar" | "underline""block"Terminal cursor shape.
cursorBlinkbooleantrueBlink the terminal cursor.
terminalRenderer"dom" | "webgl""dom"Experimental GPU renderer. Falls back to DOM automatically on unsupported hardware, init failure, or context loss — the settings panel shows a live “running on DOM — reason” hint when it has. It shipped enabled in v0.4.9 and rendered panes blank on some setups; a one-time migration in v0.4.12 reset a persisted webgl back to dom. Command palette: “Use WebGL/DOM Terminal Renderer”.
terminalOsc94EnabledbooleantrueHonour OSC 9;4 progress sequences (per-pane progress chip).
ChampTypeDéfautEffet
themePresetstring"tau"Named theme preset. See Themes.
chromeTheme"system" | "graphite-dark" | "graphite-light" | "high-contrast""system"App chrome theme, independent of the terminal palette.
accentColorstring"#6fe9ff"Primary accent (cyan — focus, selection, human identity).
secondaryColorstring"#ffc56b"Secondary accent (amber — agent identity).
foregroundColorstring"#d6e2e8"Default terminal foreground.
bgBasestring"0, 0, 0"Terminal background as an r, g, b triple, combined with terminalBgOpacity.
terminalBgOpacitynumber1Terminal background opacity, 0–1.
ansiColorsobject16-colour TAU paletteThe full ANSI 16 (black…brightWhite).
terminalBloombooleanfalseWebGL bloom layer over the terminal.
bloomIntensitynumber0Bloom strength, 0–2.
legacyBloomIntensitynumber0Snapshot of the pre-TAU bloom value, kept so the migration is reversible.
bloomMigratedToTaubooleanfalseInternal migration marker — do not set by hand.
paneGapnumber2Gap between panes in px, 0–20.
sidebarWidthnumber320Sidebar width in px, 200–600.
layoutVariant"bridge" | "cockpit" | "atlas""bridge"Chrome layout variant.
ChampTypeDéfautEffet
workspaceCardDensity"compact" | "comfortable" | "spacious""comfortable"Vertical density of workspace cards.
workspaceCardShowMetabooleantrueShow the meta row (cwd, branch).
workspaceCardShowStatsbooleantrueShow CPU / memory / pane stats.
workspaceCardShowPanesbooleantrueShow the per-pane list.
workspaceCardShowManifestsbooleantrueShow the package.json / Cargo.toml card.
workspaceCardShowFileExplorerbooleantrueShow the inline file explorer.
workspaceFileExplorerShowHiddenbooleanfalseInclude dotfiles in the file explorer.
workspaceFileExplorerMaxEntriesnumber200Cap on entries listed per directory.
workspaceCardShowStatusPillsbooleantrueShow ht set-status pills on the card.
workspaceCardShowProgressbooleantrueShow the progress bar (ht set-progress, OSC 9;4).
statusBarKeysstring[]["workspace","panes","cpu","mem","procs","fg","cwd","branch","ht-all","ports","time"]Which segments the bottom status bar renders, in order.
htStatusKeyOrderstring[][]Explicit ordering for ht set-status keys; unlisted keys follow.
htStatusKeyHiddenstring[][]ht set-status keys to hide.
ChampTypeDéfautEffet
notificationSoundEnabledbooleantruePlay finish.mp3 when a sidebar notification arrives.
notificationSoundVolumenumber1Arrival-cue volume, 0–1.
notificationOverlayEnabledbooleantrueShow the transient on-screen notification overlay.
notificationOverlayMsnumber6000How long the overlay stays up, in ms.

Voir l’intégration Claude Code.

ChampTypeDéfautEffet
claudeAutoApprovebooleanfalseAuto-accept the permission prompt Claude Code shows in a terminal pane by sending Enter. Only fires for that terminal prompt — never the τ-mux approval modal, never the Claude Code pane — pauses itself after a burst, and logs every approval to the pane’s sidebar log. Off by default: this grants unattended consent for commands the agent asks to run.
claudeAutoApproveDelayMsnumber700Delay before the Enter keystroke, 0–10000 ms. The prompt is re-checked when the delay expires, so a prompt you answered yourself never receives a stray Enter.
ChampTypeDéfautEffet
browserSearchEngine"google" | "duckduckgo" | "bing" | "kagi""google"Engine used when the address bar input isn’t a URL.
browserHomePagestring""Page opened for a new browser surface. Empty = blank.
browserForceDarkModebooleanfalseAsk pages to render in dark mode.
browserInterceptTerminalLinksbooleanfalseOpen links clicked in a terminal in a browser pane instead of the system browser.
browserPartitionMode"shared" | "per-surface""per-surface"Cookie/storage partitioning across browser panes.
ChampTypeDéfautEffet
packageRunner"bun" | "npm" | "pnpm" | "yarn""bun"Command used to run package.json scripts from the sidebar.

Voir auth & durcissement.

ChampTypeDéfautEffet
webMirrorPortnumber3000Mirror listen port, 1–65535.
autoStartWebMirrorbooleanfalseStart the mirror at launch.
webMirrorBind"127.0.0.1" | "0.0.0.0""0.0.0.0"Bind address. 0.0.0.0 exposes the mirror to your whole LAN — set webMirrorAuthToken before enabling it there.
webMirrorAuthTokenstring""Shared token for mirror access. Empty means authentication is off.
rpcSocketRequireTokenbooleantrueRequire the per-boot token for state-mutating ht socket calls. On by default since v0.4.12; every first-party client presents it automatically.

Voir le pont Telegram.

ChampTypeDéfautEffet
telegramEnabledbooleanfalseRun the long-poll bot service.
telegramBotTokenstring""BotFather token.
telegramAllowedUserIdsstring""Comma-separated Telegram user ids allowed to talk to the bot. Fail-closed: empty rejects everyone.
telegramNotificationsEnabledbooleanfalseForward sidebar notifications to Telegram.
telegramNotificationButtonsEnabledbooleanfalseAdd inline action buttons to forwarded notifications.
telegramAskUserEnabledbooleanfalseForward ht ask questions to Telegram (answer from your phone).

Objet imbriqué — voir auto-continue.

ChampTypeDéfautEffet
autoContinue.engine"off" | …"off"Which decision engine runs. off disables the feature entirely.
autoContinue.dryRunbooleantrueDecide and log, but never send the continue keystroke.
autoContinue.cooldownMsnumber3000Minimum gap between continues.
autoContinue.maxConsecutivenumber5Runaway guard — pauses after this many consecutive continues.
autoContinue.modelProviderstring"anthropic"Provider for the model-backed engine.
autoContinue.modelNamestring"claude-haiku-4-5-20251001"Model used by the model-backed engine.
autoContinue.modelApiKeyEnvstring"ANTHROPIC_API_KEY"Env var read for that provider’s key.
ChampTypeDéfautEffet
auditsGitUserNameExpectedstring | nullnullExpected git config user.name; the startup audit warns on drift. null disables the check.

La plupart des champs s’appliquent en direct dès la sauvegarde. Exceptions :

  • shellPath — nouvelles surfaces seulement.
  • webMirrorPort, webMirrorBind, webMirrorAuthToken — redémarrez un miroir actif (pris en compte au démarrage automatique depuis la v0.3.161).
  • autoStartWebMirror — au lancement seulement (le miroir se bascule à la main à tout moment).
  • rpcSocketRequireToken — s’applique immédiatement aux nouvelles connexions socket ht.
  • terminalRenderer — s’applique aux panneaux créés ensuite.

τ-mux lit ce fichier au lancement et le réécrit à chaque changement de réglage ; il ne le surveille pas. Éditez-le donc application fermée, ou préférez le panneau / la palette / le RPC, qui s’appliquent immédiatement. Les champs inconnus sont supprimés au chargement (avertissement dans le log) et les valeurs invalides retombent sur leur défaut.

Fenêtre de terminal
$EDITOR ~/Library/Application\ Support/hyperterm-canvas/settings.json