From copyq-scripting
Export CopyQ Custom Commands to a versionable `.ini` bundle and import them on another machine or after a reinstall. Use when the user wants to back up their CopyQ commands, sync between workstations, or ship a curated bundle as part of a dotfiles repo.
npx claudepluginhub danielrosehill/claude-code-plugins --plugin copyq-scriptingThis skill uses the workspace's default tool permissions.
CopyQ stores commands in `~/.config/copyq/copyq-commands.ini` (or inline within `copyq.conf` depending on version). Direct file copy works but is fragile across versions — prefer the official export/import path.
Mandates invoking relevant skills via tools before any response in coding sessions. Covers access, priorities, and adaptations for Claude Code, Copilot CLI, Gemini CLI.
Share bugs, ideas, or general feedback.
CopyQ stores commands in ~/.config/copyq/copyq-commands.ini (or inline within copyq.conf depending on version). Direct file copy works but is fragile across versions — prefer the official export/import path.
GUI: Preferences → Commands → Save Commands… → save as .ini.
CLI:
copyq exportCommands > ~/copyq-commands.ini
This produces a single .ini snippet with one [Commands] section. Safe to commit to a dotfiles repo.
exportCommands dumps all of them. To slice a single command, parse the resulting .ini and keep only the matching N\ block plus a size=1 line. Or use the GUI: Preferences → Commands → select one → right-click → Export….
GUI: Preferences → Commands → Load Commands… → pick the .ini. Appends to existing commands; duplicates are not deduped.
CLI:
copyq loadCommands "$(cat ~/copyq-commands.ini)"
To replace rather than append: clear existing first via the GUI (select all → delete), or via:
copyq eval -- '
var n = commands().length;
setCommands([]);
'
copyq loadCommands "$(cat ~/copyq-commands.ini)"
Recommended dotfiles layout:
~/repos/dotfiles/copyq/
├── commands.ini # canonical bundle
└── README.md
Sync workflow:
# Pull from CopyQ → repo
copyq exportCommands > ~/repos/dotfiles/copyq/commands.ini
cd ~/repos/dotfiles && git add copyq && git commit -m "Update CopyQ commands"
# Apply repo → CopyQ on another machine
copyq loadCommands "$(cat ~/repos/dotfiles/copyq/commands.ini)"
copyq.conf.To back those up too, also copy ~/.config/copyq/copyq.conf and (if needed) the per-tab data files in ~/.local/share/copyq/.
After authoring or modifying commands, verify export/import works before relying on the bundle:
copyq exportCommands > /tmp/before.ini
# clear and reimport
copyq eval -- 'setCommands([])'
copyq loadCommands "$(cat /tmp/before.ini)"
copyq exportCommands > /tmp/after.ini
diff /tmp/before.ini /tmp/after.ini # should be empty (or trivial reordering)
If diff shows substantive differences, the bundle has fields CopyQ silently dropped on import — usually due to version skew. Pin the CopyQ version across machines to avoid this.