← Docs

Config files

Most Brisal files are app-owned: you manage them via the UI. Only two are hand-editable: theme palettes (CSS) and workspace keybindings (TOML). The UI is the supported path; files are the backing store.

Theme palettes

A palette is a CSS file defining color tokens as custom properties, with :root for light and .dark for dark variants. Brisal ships three built-ins (mistral, brise, tramontane), and workspaces can add custom .css files. See Appearance & theming for selection behavior.

File shape

Define tokens under :root (light) and .dark (dark):

:root {
  --background: #fdf6f1;
  --foreground: #1f120a;
  --primary: #ea580c;
}

.dark {
  --background: #120a07;
  --foreground: #f7ece2;
  --primary: #ff8205;
}

Surface & text tokens

TokenUsage
--background / --foregroundApp backdrop and default text
--card / --card-foregroundCards/raised panels and their text
--popover / --popover-foregroundMenus, dropdowns, popovers
--primary / --primary-foregroundMain accent and text on it
--secondary / --secondary-foregroundSecondary buttons
--muted / --muted-foregroundSubtle backgrounds, de-emphasized text
--accent / --accent-foregroundHover/selected highlights and their text
--destructiveDangerous actions
--warning / --warning-foregroundNon-fatal warnings
--borderDividers
--inputForm-field borders
--ringFocus rings
--radiusCorner rounding

The sidebar is themed separately from the main content.

TokenUsage
--sidebar / --sidebar-foregroundSidebar surface and text
--sidebar-primary / --sidebar-primary-foregroundSidebar accent and text
--sidebar-accent / --sidebar-accent-foregroundHover/selected sidebar rows
--sidebar-borderSidebar dividers
--sidebar-ringSidebar focus ring

Backdrop tokens

Brisal renders a soft “aurora flame” gradient and faint hex-grid behind content.

TokenUsage
--background-gradient-from / --background-gradient-toPage gradient ends
--header-bgHeader bar fill
--flame-1 / --flame-2 / --flame-3Aurora backdrop colors
--aurora-opacityAurora visibility (0-1)
--hex-opacityHex-grid visibility (0-1)

Chart tokens

TokenUsage
--chart-1--chart-5Data visualization series colors

Adding your own palette

Place a .css file in a themes folder:

LocationScope
system/themes/<name>.cssAll workspaces
workspaces/<id>/themes/<name>.cssSingle workspace

The palette name is the filename stem (ember.cssember). Workspace files override system files of the same name. Built-ins always appear.

Naming: lowercase a-z, digits, hyphens only (my-theme.css ✓). Uppercase, spaces, or non-.css extensions are skipped.

Graceful degradation: Missing/unreadable palettes fall back to mistral. Invalid font sizes (outside 12-20) are clamped. Files without :root/.dark blocks are treated as absent.

Keybindings

Each workspace can have a keybindings.toml overriding default keyboard shortcuts. Use Settings → Hotkeys to edit.

LocationScope
workspaces/<id>/keybindings.tomlSingle workspace
system/keybindings.tomlMachine-wide defaults

The file is a sparse override (workspace → system → built-in). Only list differences from defaults.

leader = "ctrl+a"
sequence_timeout = 3000

[bindings."ctrl+a g s"]
action = "goto"
args = { scope = "sessions" }

[bindings."ctrl+b b"]
action = "none"

[bindings."ctrl+shift+k"]
action = "subagents.kill-all"
FieldDescription
leaderLeader chord (default: ctrl+b)
sequence_timeoutPending sequence timeout in ms (default: 5000)
cancel_keysChords that abort sequences/exit modes. Replaces defaults (esc, ctrl+c, ctrl+g, ctrl+d)
[bindings."<sequence>"]Maps sequence to { action, args }. Set action = "none" to unbind

Action IDs and defaults are in Keyboard shortcuts. The subagents.kill-all action is bound to ctrl+b k by default — see Delegation → Killing subagents.

App-owned files

Not for hand-editing:

  • Providers, models, agents: TOML files per workspace (agents: .toml + .md system prompt)
  • Corrupted entries are skipped and logged; one bad file won’t break the workspace
  • known_hosts.toml (data root): SSH host keys. Delete a line to re-pin a changed host (see Cloning over SSH → Re-pinning)