Skip to content
Cogno v0.4.0

All settings

Every Cogno setting with its type, default and meaning. Settings are written as key = value lines in ~/.cogno/cogno.config; only the values you override need to be present. Where a default differs per operating system, the platform is named in brackets. See the configuration overview for the file format.

Reload the config automatically when the file changes on disk.

Type: boolean · Default: true

Terminal font family; falls back per OS when unset.

Type: string · Default: monospace

Terminal font size in pixels.

Type: integer ≥ 1 · Default: 14

Render programming ligatures (needs a font that has them).

Type: boolean · Default: false

Weight of normal terminal text.

Type: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | normal | bold | number · Default: normal

Weight of bold terminal text.

Type: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | normal | bold | number · Default: bold

Draw box-drawing and block characters instead of taking them from the font.

Type: boolean · Default: true

Render bold text in the bright ANSI color variant.

Type: boolean · Default: false

Shrink glyphs that are wider than their cell so they stop overlapping.

Type: boolean · Default: false

Font family of the app UI (tabs, menus, panels) - not the terminal.

Type: string · Default: sans-serif

Font size of the app UI in pixels.

Type: integer ≥ 1 · Default: 14

Colors are hex without #; 8 digits add alpha.

Default text color of the terminal.

Type: hex color · Default: ffffff

Terminal background color.

Type: hex color · Default: 0e1925

Accent color for highlighted UI elements, e.g. the active tab.

Type: hex color · Default: 34bbfe

ANSI color 0 (black).

Type: hex color · Default: 32465c

ANSI color 1 (red).

Type: hex color · Default: fd1155

ANSI color 2 (green).

Type: hex color · Default: 11d894

ANSI color 3 (yellow).

Type: hex color · Default: fede55

ANSI color 4 (blue).

Type: hex color · Default: 34bbfe

ANSI color 5 (magenta).

Type: hex color · Default: e465d9

ANSI color 6 (cyan).

Type: hex color · Default: 32d8c1

ANSI color 7 (white).

Type: hex color · Default: eeeeee

ANSI color 8 (bright black / grey).

Type: hex color · Default: 32465c

ANSI color 9 (bright red).

Type: hex color · Default: fd1155

ANSI color 10 (bright green).

Type: hex color · Default: 11d894

ANSI color 11 (bright yellow).

Type: hex color · Default: fede55

ANSI color 12 (bright blue).

Type: hex color · Default: 34bbfe

ANSI color 13 (bright magenta).

Type: hex color · Default: e465d9

ANSI color 14 (bright cyan).

Type: hex color · Default: 32d8c1

ANSI color 15 (bright white).

Type: hex color · Default: eeeeee

Cursor width in pixels; applies to the bar style.

Type: integer 0-10 · Default: 4

Let the cursor blink.

Type: boolean · Default: true

Cursor shape while the terminal has focus.

Type: bar | underline | block · Default: bar

Cursor shape while the terminal does not have focus.

Type: outline | block | bar | underline | none · Default: outline

Cursor color.

Type: hex color · Default: 34bbfecc

Color of the character underneath a block cursor.

Type: hex color · Default: 34bbfe66

Alt+click moves the shell cursor to the clicked position.

Type: boolean · Default: true

Padding between terminal content and left edge.

Type: number ≥ 0 · Default: 0.5

Padding between terminal content and right edge.

Type: number ≥ 0 · Default: 0.5

Padding between terminal content and top edge.

Type: number ≥ 0 · Default: 0

Padding between terminal content and bottom edge.

Type: number ≥ 0 · Default: 0.5

Drop the padding while a full-screen app (vim, less) owns the screen.

Type: boolean · Default: false

Path to a background image; empty means no background image.

Type: string · Default: (empty)

Opacity of the background image, 0-100.

Type: integer 0-100 · Default: 80

Blur radius applied to the background image, 0-10.

Type: integer 0-10 · Default: 0

Opacity of menus and panels, 0-100.

Type: integer 0-100 · Default: 80

Scrollbar width in pixels; 0 hides it.

Type: integer ≥ 0 · Default: 6

Border color of the overview ruler next to the scrollbar.

Type: hex color · Default: 0e192500

Scrollbar slider color.

Type: hex color · Default: 32465c66

Scrollbar slider color while hovered.

Type: hex color · Default: 32465c

Scrollbar slider color while being dragged.

Type: hex color · Default: 32465c

Lines scrolled per mouse-wheel notch.

Type: integer ≥ 0 · Default: 1

Jump to the bottom when you start typing.

Type: boolean · Default: true

Duration of smooth scrolling in milliseconds; 0 disables it.

Type: integer ≥ 0 · Default: 0

Scroll multiplier while the fast-scroll modifier is held.

Type: integer ≥ 0 · Default: 2

How many lines of scrollback the terminal keeps.

Type: integer ≥ 100 · Default: 100000

Clear the selection right after copying.

Type: boolean · Default: false

Background color of selected text in the focused terminal.

Type: hex color · Default: 34bbfecc

Background color of selected text in an unfocused terminal.

Type: hex color · Default: 34bbfe66

Right-click selects the word under the pointer.

Type: boolean · Default: false

Whether programs in the terminal may read the clipboard (OSC 52).

Type: allow | deny · Default: allow

Whether programs in the terminal may write the clipboard (OSC 52).

Type: allow | deny · Default: allow

Strip trailing spaces from copied lines.

Type: boolean · Default: true

<name> is a profile name you choose. At most 9 profiles; shell.default must name one of them.

Name of the profile new terminals start with; must exist in shell.profiles.

Type: string

Order the profiles appear in menus and on the shell-profile shortcuts.

Type: string[]

Which shell this profile launches.

Type: PowerShell | ZSH | Bash

Path of the shell executable, e.g. /bin/zsh. Required.

Type: string

Extra launch arguments for the shell.

Type: string[]

Environment variables added to the shell process.

Type: string

Directory the shell starts in.

Type: string

Put the cogno CLI on the shell’s PATH.

Type: boolean

shell.profiles.<name>.enable_shell_integration

Section titled “shell.profiles.<name>.enable_shell_integration”

Load Cogno’s shell integration (prompt markers, command status, cwd tracking).

Type: boolean

Also load your own shell rc/profile files.

Type: boolean

<name> is a profile or segment name you choose. A segment sets exactly one of field or text.

Name of the prompt profile in use.

Type: string · Default: default

Segment names to render, in order; each must exist under prompt.segment.

Type: string[]

Text inserted between segments.

Type: string

Text color: a terminal color name or hex.

Type: black | red | green | yellow | blue | magenta | cyan | white | brightBlack | brightRed | brightGreen | brightYellow | brightBlue | brightMagenta | brightCyan | brightWhite | hex color

Background color: a terminal color name or hex.

Type: black | red | green | yellow | blue | magenta | cyan | white | brightBlack | brightRed | brightGreen | brightYellow | brightBlue | brightMagenta | brightCyan | brightWhite | hex color

Render the segment bold.

Type: boolean

Render the segment italic.

Type: boolean

Underline the segment.

Type: boolean

Font size override for this segment.

Type: integer ≥ 1

Only show the segment when the condition holds, e.g. returnCode!=0.

Type: string

Inner padding left of the content.

Type: integer

Inner padding right of the content.

Type: integer

Outer margin left of the segment.

Type: integer

Outer margin right of the segment.

Type: integer

Corner radius on the left side.

Type: integer ≥ 0

Corner radius on the right side.

Type: integer ≥ 0

Tooltip shown when hovering the segment.

Type: string

Extra CSS class for custom styling.

Type: string

How the value is rendered, e.g. timespan for a duration.

Type: string | number | json | upper | lower | timespan

Shown when the field has no value.

Type: string

Data field to display, e.g. directory, user, machine, duration.

Type: string

Static text to display, instead of a field.

Type: string

One keybinding per line: keybind = [trigger:]combo[>combo...]=action[:arg...]. Lines add to the defaults; the last line that names an action sets its key.

Type: string[]

Render the terminal with the WebGL renderer instead of the canvas one.

Type: boolean · Default: true (linux: false)

Fill color of the decoration.

Type: hex color · Default: 2f8fda55

Border color of the decoration.

Type: hex color · Default: 2f8fda

Marker color in the overview ruler beside the scrollbar.

Type: hex color · Default: 2f8fda

terminal.decoration.active_color.background

Section titled “terminal.decoration.active_color.background”

Fill color of the decoration.

Type: hex color · Default: f5e66399

Border color of the decoration.

Type: hex color · Default: f5e663

terminal.decoration.active_color.overview_ruler

Section titled “terminal.decoration.active_color.overview_ruler”

Marker color in the overview ruler beside the scrollbar.

Type: hex color · Default: f5e663

How strongly panes that are not focused are dimmed, 0-100.

Type: integer 0-100 · Default: 30

Paste as plain keystrokes even when the shell asked for bracketed paste.

Type: boolean · Default: false

Raise text contrast until at least this ratio is met; 1 disables the correction.

Type: number · Default: 4

Expose terminal output to screen readers.

Type: boolean · Default: false

Allow transparent background colors; costs some rendering performance.

Type: boolean · Default: true

Width of a tab character in columns.

Type: number · Default: 8

Characters that end a word for double-click selection and word-wise motion.

Type: string · Default: "()[]{}'\"\\,;:/&<>*+=$^!~` "

Show the progress bar in the terminal header.

Type: boolean · Default: true

Show an unread badge on a terminal’s tab when a notification-worthy event occurs while it isn’t focused.

Type: boolean · Default: true

Allow OSC9 terminal notifications to trigger a notification.

Type: boolean · Default: true

terminal.notifications.long_running_command.enabled

Section titled “terminal.notifications.long_running_command.enabled”

Show a notification after a long-running command has finished.

Type: boolean · Default: false

terminal.notifications.long_running_command.minimum_duration_seconds

Section titled “terminal.notifications.long_running_command.minimum_duration_seconds”

Notify only when a command ran for at least this many seconds.

Type: integer ≥ 0 · Default: 10

Maximum number of commands to keep per shell context in the command history log, or unlimited. Older entries beyond this count are pruned; 0 keeps none.

Type: unlimited | integer ≥ 0 · Default: unlimited

terminal.history.ignore_commands_with_leading_space

Section titled “terminal.history.ignore_commands_with_leading_space”

Don’t add a command to history if it was typed with a leading space, matching the HISTCONTROL=ignorespace convention used by bash/zsh.

Type: boolean · Default: false

On first launch with an empty history, import commands from the native shell history file (bash/gitbash: ~/.bash_history, zsh: ~/.zsh_history, powershell: PSReadLine ConsoleHost_history.txt).

Type: boolean · Default: false

When enabled, selecting a history entry immediately executes the command. When disabled (default), the entry is written to the input line and must be confirmed with Enter.

Type: boolean · Default: false

Return codes a command may exit with to be added to the history, e.g. [0] to keep only successful commands. Empty (default) keeps every command that exists. A command’s own list under allowed_return_codes_by_command wins.

Type: integer[] · Default: []

terminal.history.allowed_return_codes_by_command.<name>

Section titled “terminal.history.allowed_return_codes_by_command.<name>”

Return codes allowed for one command, matched by its first word, e.g. allowed_return_codes_by_command.grep = [0,1] because exit 1 means “no match”. Overrides allowed_return_codes for that command.

Type: integer[]

Restore workspaces, tabs, panes and terminal scrollback on the next launch, auto-saved on idle, workspace switch and exit. When off, nothing is persisted and each launch starts fresh; the explicit workspace save controls apply instead.

Type: boolean · Default: true

Include the terminal scrollback in the restored session, above a separator line. When off, the layout is restored but terminals start empty.

Type: boolean · Default: true

Maximum scrollback lines captured per terminal for restore. Caps the stored size; 0 means no scrollback.

Type: integer ≥ 0 · Default: 1000

Maximum time in milliseconds for one dynamic autocomplete provider.

Type: integer ≥ 1 · Default: 160

Whether in-app notifications may be used at all.

Type: boolean · Default: true

Show notifications inside Cogno.

Type: boolean · Default: true

Seconds an in-app notification stays before it fades. unlimited keeps it until you dismiss it; 0 shows none.

Type: unlimited | integer ≥ 0 · Default: 5

Whether OS notifications may be used at all.

Type: boolean · Default: true

Send notifications to the operating system.

Type: boolean · Default: false

Show a notification for handled exceptions reported through the central error reporter.

Type: boolean · Default: false

Show a notification for unhandled renderer exceptions caught by the global error reporter.

Type: boolean · Default: false

Run the local HTTP server that the cogno CLI talks to.

Type: boolean · Default: true

Port of the local HTTP server.

Type: integer 1-65535 · Default: 9000

If the port is taken, try the next free one instead of failing.

Type: boolean · Default: true

Each feature can be switched off entirely and ordered in the side menu.

Turn the feature on or off. Off removes it entirely, including its side-menu entry and actions.

Type: off | on · Default: on

Override the side-menu display position for this feature. Lower numbers appear first.

Type: integer · Default: 10

Turn the feature on or off. Off removes it entirely, including its side-menu entry and actions.

Type: off | on · Default: on

Override the side-menu display position for this feature. Lower numbers appear first.

Type: integer · Default: 20

feature.notification_overview.overview.max_items

Section titled “feature.notification_overview.overview.max_items”

How many notifications the overview keeps, or unlimited.

Type: unlimited | integer ≥ 0 · Default: 30

Turn the feature on or off. Off removes it entirely, including its side-menu entry and actions.

Type: off | on · Default: on

Override the side-menu display position for this feature. Lower numbers appear first.

Type: integer · Default: 30

Turn the feature on or off. Off removes it entirely, including its side-menu entry and actions.

Type: off | on · Default: on

Override the side-menu display position for this feature. Lower numbers appear first.

Type: integer · Default: 40

Turn the feature on or off. Off removes it entirely, including its side-menu entry and actions.

Type: off | on · Default: off

Override the side-menu display position for this feature. Lower numbers appear first.

Type: integer · Default: 50

Turn the feature on or off. Off removes it entirely, including its side-menu entry and actions.

Type: off | on · Default: on

Override the side-menu display position for this feature. Lower numbers appear first.

Type: integer · Default: 80

Turn the feature on or off. Off removes it entirely, including its side-menu entry and actions.

Type: off | on · Default: on

Override the side-menu display position for this feature. Lower numbers appear first.

Type: integer · Default: 65

feature.coding_agents.notifications.working.enabled

Section titled “feature.coding_agents.notifications.working.enabled”

Notify when an agent starts working.

Type: boolean · Default: false

feature.coding_agents.notifications.question.enabled

Section titled “feature.coding_agents.notifications.question.enabled”

Notify when an agent has a question and needs input.

Type: boolean · Default: false

feature.coding_agents.notifications.ready.enabled

Section titled “feature.coding_agents.notifications.ready.enabled”

Notify when an agent becomes ready/idle.

Type: boolean · Default: false

feature.coding_agents.notifications.error.enabled

Section titled “feature.coding_agents.notifications.error.enabled”

Notify when an agent reports an error.

Type: boolean · Default: false