Skip to content

Importing from SnipCommand

Stuart Meeks edited this page Jun 8, 2026 · 1 revision

Importing from SnipCommand

Coming from SnipCommand? Snipdeck ships a cross-platform command-line tool, snipdeck-importer, that imports a SnipCommand export into a Snipdeck store — grouping commands under auto-suggested CLIs and translating SnipCommand's inline markup into Snipdeck's structured parameters.

What it does

  • Reads a SnipCommand export.
  • Suggests a CLI per command from the first token of the command string (stripping launcher wrappers like sudo/npx), so a flat command list becomes CLI-grouped.
  • Translates markup — SnipCommand's [sc_choice …] and [sc_variable …] become Snipdeck {token} placeholders with structured Choice / Text parameters.
  • De-duplicates parameters — parameters that recur across a CLI's commands are promoted to CLI-scoped shared parameters (unless you opt out).
  • Carries over titles, descriptions, tags, the favourite flag and usage data.
  • Is safe by default: it previews (dry-run) unless you pass --write, and takes a backup before writing.

Install

It's a .NET global tool (targets net10.0, so it runs on Windows, macOS and Linux):

dotnet tool install --global Snipdeck.Importer

Usage

snipdeck-importer snipcommand <path> [options]

<path> is your SnipCommand export. By default this is a dry-run that previews what would be imported without changing anything — add --write to apply.

Options

Option Effect
--write Apply the changes. Without it, the importer only previews (dry-run).
--store <path> Target Snipdeck store file. Defaults to the desktop app's store.
--cli <name> Force every imported Snip into this CLI, overriding auto-detection.
--into <name> Fallback CLI for Snips whose CLI couldn't be confidently auto-detected.
--allow-duplicates Import even if a Snip with the same title and command already exists.
--no-share-parameters Keep every parameter on its Snip instead of promoting duplicates to CLI-shared parameters.

Examples

# Preview an import (changes nothing)
snipdeck-importer snipcommand snipcommand.db

# Apply it
snipdeck-importer snipcommand snipcommand.db --write

# Apply into a specific store, forcing a CLI name
snipdeck-importer snipcommand snipcommand.db --store store.json --cli mpt-app --write

After importing

The importer writes to the store file directly. If the Snipdeck desktop app is open, restart it to see the imported CLIs and Snips. A backup is taken before the write (honouring your retention setting), and duplicates are skipped unless --allow-duplicates is given.

Clone this wiki locally