‹ Back to the front page

Docs

What kelpie can be told to do differently. There is not much of it, and none of it is needed to run the thing.

Settings

Kelpie runs on its defaults. All of this is optional.

There is no settings screen and no preferences pane. Kelpie reads one JSON file when it starts, and every key in it is optional: write only the ones you want to change and the rest keep the values below. The app does not create the file, so make it yourself at ~/.config/kelpie/config.json.

One of them is about the network. Kelpie asks whether a newer version is out when it starts, and every few hours after, which is what puts “kelpie X is out” on the board. Set updateCheck to false, or put KELPIE_NO_UPDATE_CHECK=1 in the environment, and it stops. It is the only request kelpie makes to anything of ours.

{
  "port": 4321,                       // the board's port
  "ticketPrefixes": ["ENG", "ACL"],   // matched as <PREFIX>-<digits> and linked
  "ticketBaseUrl": "https://linear.app/your-workspace/issue/",
  "terminal": "auto",                 // "auto" | "iterm" | "terminal" | "none"
  "terminalCommand": "",              // overrides terminal; {cwd} and {command}
  "appWindow": true,                  // the board gets its own window, not a tab
  "sound": true,                      // chime when a row changes
  "breaks": true,                     // count how long you have been at it
  "collapseClosed": true,             // Closed starts folded away
  "hideClosedAfterDays": 7,           // hides stale Closed rows, never Needs you
  "recentClosedSessions": 20,         // exited sessions kept resumable in Closed
  "quietAfterSeconds": 180,           // silence after which a row reads as quiet
  "chatPermissionMode": "auto",       // what a chat session starts in
  "worktreeDir": "~/parallel",        // where features cut their worktrees
  "proxyPort": 443,                   // https port for feature domains
  "updateCheck": true                 // the version check described above
}

JSON allows no comments, so strip them if you paste this. Kelpie reads the file once at startup: restart it after an edit. A file it cannot parse is named on the board as a setup problem rather than silently replaced by the defaults. terminal: "none" is the kill switch: no new-window button, and no scripting or activating your apps at all.