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).
| Key | Values | Meaning |
|---|---|---|
lang | a language tag, or auto | UI language |
editor | a command (arguments allowed) | editor used by skit edit and Ctrl+E |
form | tui / plain | interactive style: inline mini-form, or plain line prompts |
after_run | exit / stay | after a menu-launched run finishes: exit skit (default), or return to the menu as a workbench |
shell.bash_path | a path | Windows: the bash to run shell entries with when none is on PATH (validated to exist when set) |
js.runner | deno / bun / node, empty = auto | force the JS runtime instead of first-found |
mirror | on / off | master mirror switch — off keeps the saved URLs |
mirror.pypi | tsinghua / aliyun / ustc / a URL / off | Python package index |
mirror.github | nju / an https:// base URL / off | Python builds + the uv binary — https required, since the downloaded binary is executed |
mirror.npm | npmmirror / a URL / off | JS/TS package registry |
theme | terminal / skit | interface colors: the terminal's own palette (default), or skit's fixed palette |
accent | auto / 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
mirrormaster switch takes onlyon/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 = terminaluses 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.accentpicks the color of borders, markers, and keys in theterminaltheme.autouses cyan on a dark background and magenta on a light one. A color name uses that color of your terminal's own palette, andnoneuses no color. Onlyautoasks the terminal for its background, so any other value also skips that question at start.theme = skitkeeps the fixed skit palette of version 0.4, and ignoresaccent. You can also pick the theme and the accent in Preferences, under Colors.NO_COLORremoves every color in both themes — see Environment variables.- Prompt runners also live in this file (
[[prompt.runners]]), but you manage them throughskit runner add/remove/list, not raw keys.