-
Notifications
You must be signed in to change notification settings - Fork 0
Core Concepts
Snipdeck has a small, deliberate vocabulary. Understanding these five terms is enough to use everything else.
A CLI is the top-level organising entity — the command-line tool a group of Snips
belongs to (for example pl-app, mpt-app, git). This is Snipdeck's defining idea:
every Snip belongs to exactly one CLI, so your library stays grouped by tool rather
than as one flat list.
A CLI has a name, an optional description (shown on its Home card), an icon, optional execution settings (which shell to run in, an executable path, a working directory) and optional shared parameters. See Managing CLIs.
A Snip is a single parameterised command that belongs to one CLI. It has:
- a title,
- a command template — text with
{token}placeholders, e.g.pl-app deploy --env {env}, - an optional description written in Markdown,
- a set of parameters that map to the tokens,
- tags, a favourite flag, and usage tracking (count + last used).
You copy a Snip's resolved command to the clipboard, or run it. See Creating and Editing Snips, Copying Commands and Running Commands.
A parameter fills a {token} in the template. Each parameter has a name, a
type, and an optional default:
- Text — a free-form text box.
- Choice — a dropdown constrained to a list of options.
Parameters can live on the Snip itself, or be shared across a whole CLI or globally, with a clear precedence order. See Parameters and Shared Parameters.
Token names are matched case-sensitively:
{Env}and{env}are different tokens.
A tag is a label on a Snip used to filter the Snip list. Filtering is one tag at a time via the left pane, scoped to the currently selected CLI (or all CLIs on Home). Tags can be given icons. See Tags and Tag Icons.
A favourite is a Snip you've starred. Favourites surface in their own category on the Home launcher and sort to the top of lists. Toggle the star on any Snip card.
graph TD
CLI["CLI (e.g. pl-app)"] -->|owns| Snip1["Snip: Deploy"]
CLI -->|owns| Snip2["Snip: Logs"]
CLI -. "shared parameters" .-> Snip1
CLI -. "shared parameters" .-> Snip2
Snip1 -->|has| P1["Parameter: env (Choice)"]
Snip1 -->|tagged| T1["Tag: ops"]
Snip1 -->|"Copy / Run"| Out["Resolved command"]
- A CLI owns many Snips and can define shared parameters they inherit.
- A Snip carries its own parameters and tags, and resolves to a final command you copy or run.
Definitions (CLIs, Snips, parameters, tags) live in a single human-readable JSON document; run history lives in a separate database. Full detail in Data Storage and Backups.
Getting started
Using Snipdeck
- Core Concepts
- Managing CLIs
- Creating and Editing Snips
- Parameters and Shared Parameters
- Copying Commands
- Running Commands
- Run History
- Tags and Tag Icons
Reference
- Settings
- Global Hotkey and System Tray
- Data Storage and Backups
- Importing from SnipCommand
- Troubleshooting and FAQ
Contributors