skit

Configuration

config.toml and every `skit config` key.

skit config uses git-config grammar: bare skit config lists everything, skit config KEY reads one key, skit config KEY VALUE writes it, --json for machines. Everything lands in config.toml in skit's config directory (skit doctor prints the resolved path; SKIT_CONFIG_DIR overrides it).

KeyValuesMeaning
langa language tag, or autoUI language
editora command (arguments allowed)editor used by skit edit and Ctrl+E
formtui / plaininteractive style: inline mini-form, or plain line prompts
after_runexit / stayafter a menu-launched run finishes: exit skit (default), or return to the menu as a workbench
shell.bash_patha pathWindows: the bash to run shell entries with when none is on PATH (validated to exist when set)
js.runnerdeno / bun / node, empty = autoforce the JS runtime instead of first-found
mirroron / offmaster mirror switch — off keeps the saved URLs
mirror.pypitsinghua / aliyun / ustc / a URL / offPython package index
mirror.githubnju / an https:// base URL / offPython builds + the uv binary — https required, since the downloaded binary is executed
mirror.npmnpmmirror / a URL / offJS/TS package registry
themeterminal / skitinterface colors: the terminal's own palette (default), or skit's fixed palette
accentauto / none / red green yellow blue magenta cyan, each also as bright-…the one color of the terminal theme: follow the background (default), no color, or that color of your terminal's palette

Notes:

  • The mirror master switch takes only on/off — vendors are chosen per axis. Writing an axis while the master switch is off warns on stderr.
  • Mirror settings never touch your global uv config or shell; they ride as environment overlays on skit's child processes — see Environment variables.
  • theme = terminal uses your terminal's own colors. Text stays in the terminal's default color, and bold, dim, and reverse video show the state. A button shows brackets, as in [Discard], and reverses when it has the focus. One accent hue marks borders and selection markers: cyan on a dark background, magenta on a light background. To find the background, skit asks the terminal once at start. It does not ask over SSH, and on Windows it asks only Windows Terminal. With no answer, it uses no hue.
  • accent picks the color of borders, markers, and keys in the terminal theme. auto uses cyan on a dark background and magenta on a light one. A color name uses that color of your terminal's own palette, and none uses no color. Only auto asks the terminal for its background, so any other value also skips that question at start.
  • theme = skit keeps the fixed skit palette of version 0.4, and ignores accent. You can also pick the theme and the accent in Preferences, under Colors.
  • NO_COLOR removes every color in both themes — see Environment variables.
  • Prompt runners also live in this file ([[prompt.runners]]), but you manage them through skit runner add / remove / list, not raw keys.