Skate

A local personal key-value store CLI for saving and retrieving text or binary data, with named databases and pipe-friendly output.

install

Skate is a command-line key-value store for saving and retrieving arbitrary data, including binary files and Unicode keys and values. Core commands are skate set <key> <value>, skate get <key>, and skate list. Binary data goes in and out through shell redirection, for example skate set profile-pic < my-cute-pic.jpg and skate get profile-pic > here-it-is.jpg. As of v1.0.0, Skate operates locally only and no longer syncs to the Charm Cloud.

Data can be split into separate databases using an @db suffix on the key, such as skate set secret-boss-key@work-stuff password123 or skate list @work-stuff. Databases are created on demand, and skate list-dbs shows the existing ones. skate list has flags for keys only (-k), values only (-v), reverse order (-r), a custom delimiter (-d), and showing binary values (-b). Its output can be piped into tools like xargs.

By default, databases are kept in the operating system's user data directory. You can change the location with the --store flag or the SKATE_STORE environment variable. The README suggests using it to keep tokens and passwords out of shell scripts (for example $(skate get gh_token) inside a curl call) and to hold script-managed data such as bookmarks. It suits developers and shell users who want simple persistent storage without running a database.

Installation

# via Homebrew
brew tap charmbracelet/tap && brew install charmbracelet/tap/skate
# via Pacman
pacman -S skate
# via Go
go install github.com/charmbracelet/skate@latest

Alternatives & related tools

add a badge to your README

Maintain Skate? Show that it's featured on trmn. The badge links back to this page.

Featured on trmn
Markdown
[![Featured on trmn](https://www.trmn.sh/badge/skate.svg)](https://www.trmn.sh/tools/skate?utm_source=badge)
HTML
<a href="https://www.trmn.sh/tools/skate?utm_source=badge"><img src="https://www.trmn.sh/badge/skate.svg" alt="Featured on trmn" height="20"></a>