The official registry for Clyde, a macOS command launcher that acts as an intent dispatcher. It's an app that opens everything.
This repo is the source of truth for all user-commands and user-scripts available at clydecommands.com/registry. Every merged PR automatically appears on the site.
A user-command is a single JSON file containing an array of related commands that Clyde loads from ~/.clyde/user-commands/.
{
"id": "obsidian",
"displayName": "Obsidian",
"description": "Commands for your Obsidian vaults.",
"version": "1.0.0",
"author": "your-github-username",
"homepage": "https://obsidian.md",
"registry": "https://github.com/ColorfulDots/clyde-registry",
"appStore": null,
"color": "purple",
"icon": "note.text",
"tags": ["productivity", "notes"],
"commands": [
{
"name": "Open Daily Journal",
"keywords": ["journal", "daily", "obsidian"],
"executor": "urlScheme",
"target": "obsidian://daily",
"description": "Open today's daily note in Obsidian"
}
]
}AI can generate this reliably — try it at clydecommands.com/generate.
A user-script is a shell script installed at ~/.clyde/user-scripts/. Use scripts for interactive commands, multi-step flows, or anything that needs more than a single shell one-liner.
official/
user-commands/ ← JSON command modules
user-scripts/ ← shell scripts
_template.json
_template.sh
All contributions go through a PR. Once approved and merged by the Clyde team, they appear in the registry.
https://github.com/ColorfulDots/clyde-registry
cp _template.json official/user-commands/your-module-name.jsonThe id field must match the filename exactly:
your-module-name.json → "id": "your-module-name"
node validate.mjsCI runs validation automatically. The PR template will walk you through the checklist.
cp _template.sh official/user-scripts/your-script-name.shFill in the header block and your script logic, then open a pull request.
| Field | Required | Type | Notes |
|---|---|---|---|
id |
✅ | string | Must match filename |
displayName |
✅ | string | Shown in Clyde and on the website |
description |
✅ | string | One sentence |
color |
✅ | string | Brand primary color — named (e.g. green) or hex with or without # (e.g. #1DB954 or 1DB954) |
icon |
✅ | string | Phosphor icon name (e.g. music-note, globe, terminal-window) — see phosphoricons.com |
tags |
✅ | string[] | Category tags (e.g. ["developer", "productivity"]) |
commands |
✅ | array | At least one |
version |
— | string | e.g. "1.0.0" |
author |
— | string | Your GitHub username |
homepage |
— | string | The service or tool's own website |
registry |
— | string | Link back to this registry repo |
appStore |
— | string | Mac App Store URL, or null if not available |
| Field | Required | Type | Notes |
|---|---|---|---|
name |
✅ | string | Shown in Clyde's results list |
keywords |
✅ | string[] | Words that trigger this command |
executor |
✅ | string | See executor types below |
target |
✅ | string | What to run |
description |
✅ | string | One sentence subtitle |
| Executor | What it does | Example target |
|---|---|---|
urlScheme |
Opens a URL or deep link | https://github.com, obsidian://daily |
shell |
Runs a shell command | open -a Terminal, kill -9 $(lsof -ti:3000) |
applescript |
Runs AppleScript source | tell application "Finder" to empty trash |
shortcut |
Runs a Shortcuts.app shortcut by name | My Morning Routine |
Use the brand's primary color — either a named color (e.g. green) or a hex value with or without # (e.g. #1DB954 or 1DB954). This is used as the icon background in Clyde's UI.
The following patterns are automatically blocked by CI:
curl ... | bash/wget ... | bashrm -rf /dd if=(disk writes)- Fork bombs
Commands that download and execute arbitrary code will be rejected regardless of intent.
curl -o ~/.clyde/user-commands/spotify.json \
https://raw.githubusercontent.com/ColorfulDots/clyde-registry/main/official/user-commands/spotify.jsonOr browse and install at clydecommands.com/registry.
Describe what you want at clydecommands.com/generate — AI generates the JSON for you. Copy, save, submit.
MIT — Colorful Dots, LLC