Skip to main content

Configuration

skl reads config.toml from the config dir. Override the directory with SKL_CONFIG_DIR. On Linux the default file is ~/.config/skl/config.toml. skl doctor prints the path this machine uses.

api_base = "https://api.tryskl.fyi"

[sync]
auto = true
frequency_secs = 900

[targets]
extra = ["claude-code"]

Missing keys take the defaults below.

Fields

api_base. API origin with no trailing slash. Release builds default to https://api.tryskl.fyi. Debug builds default to http://localhost:8787. --api-base and API_BASE override this file.

[sync] auto. When true, login, init, use, unuse, status, create, capture, and list may piggyback a fail-soft sync. Default true.

[sync] frequency_secs. Minimum seconds between a successful sync or a failed auto-sync attempt. Default 900.

[targets] extra. Sticky extra dest ids. Empty means skl use writes only .agents/skills. claude is stored as claude-code. Universal ids such as cursor and codex are dropped.

[targets] prompted is written after the one-time extras prompt. You do not set it by hand.

Environment

VariableRole
API_BASEAPI origin. Same as --api-base. Wins over config.toml.
SKL_CONFIG_DIRDirectory that contains config.toml.
SKL_DATA_DIRDirectory that contains state.db and skills/.
SKL_TOKENDevice token. Wins over the file and state.db.
SKL_TOKEN_FILEPath to a file whose first non-empty line is the token.
SKL_NO_TUIWhen set, bare skl prints help instead of opening the TUI.
SKL_NO_PROMPTSkip first-run and extras prompts.
SKL_YESSame prompt skip as SKL_NO_PROMPT.
SKL_NON_INTERACTIVEInstaller binary-only mode.
SKL_INSTALL_DIRInstaller destination. Default ~/.local/bin.
SKL_DOWNLOAD_BASEInstaller asset origin.
CITreat setup and install as non-interactive.

Token precedence is SKL_TOKEN, then SKL_TOKEN_FILE, then state.db.

Global flags

  • --api-base <url> sets the API origin for this process.
  • --no-tui prints help instead of opening the TUI.

Data dir

The personal library is {SKL_DATA_DIR}/skills. The device token and local index live in {SKL_DATA_DIR}/state.db. On Linux that is ~/.local/share/skl. The data dir is created with mode 0700 on Unix. state.db is 0600.