opencues seed-configs is the command that owns your ~/.cues/ directory: it puts the shipped defaults there the first time, keeps the library scripts fresh on every install, and self-heals the settings file if it's ever truncated.
Four phases, every run
- SEED: first-time copy of the shipped defaults (settings file and the
cues/,blanks/,scripts/folders) into~/.cues/. Files that already exist with content are skipped, so your edits are never clobbered. - SYNC: overwrites stale library files (
.sh/.cs/.ps1helper scripts) every install, but never overwrites.mdfiles, which are user content. This catches drift when script logic changes between versions. - HEAL: re-seeds a 0-byte
OPENCUES.mdand merges in any new settings a newer version shipped, keeping your existing values. An empty settings file would otherwise silently break every runtime-settings read. - COMPILE (WSL only): compiles the colocated C# helpers into the
.exefiles the volume and brightness blanks use on Windows. Idempotent; only recompiles when the source is newer.
You rarely run it by hand
Every opencues install <host> invokes it automatically with --silent. Run it standalone when you suspect drift, or with --dry-run to see the plan without copying anything. The idempotence is the point: if a helper script went missing or a config carries a legacy filename, re-running converges the tree without touching your content. --project writes the cues/ / blanks/ folders into <cwd>/.cues/ instead, for project-level setups.
A deliberate division of labour
seed-configs never touches CUES.md or BLANKS.md; scaffolding those master files is opencues init's job. One command owns the user-level tree, another owns project scaffolding, and neither surprises the other.
Related: How to install OpenCues · What is OPENCUES.md? · Hot-reload config · GitHub repo