| created | "2026-04-30T00:00:00.000Z" |
| modified | "2026-05-09T00:00:00.000Z" |
| reviewed | "2026-04-30T00:00:00.000Z" |
| name | command-palette |
| description | Run, list, and inspect Obsidian commands and hotkeys from the CLI. Use when triggering a command, enumerating commands, or checking hotkey bindings. |
| user-invocable | false |
| allowed-tools | Bash(obsidian *), Read, Grep, Glob |
Obsidian Command Palette
When to Use This Skill
| Use this skill when... | Use the alternative instead when... |
|---|
Triggering a command the user would normally pick from the command palette (Ctrl/Cmd+P) | Running JavaScript via the developer API — use dev-tools |
| Discovering what commands a plugin registers | Enabling/disabling a plugin entirely — use plugins-themes |
| Looking up which hotkey is bound to a command | Setting up a workspace — use workspaces |
The command palette is Obsidian's universal action surface — every built-in
operation and every command registered by a plugin appears here. The CLI
exposes the same surface, which is the leverage point for automation: any
plugin command becomes scriptable without writing JavaScript.
Prerequisites
- Obsidian desktop v1.12.4+ with CLI enabled
- Obsidian must be running
List Commands
obsidian commands
obsidian commands filter=templater
obsidian commands filter=editor
obsidian commands filter=workspace
Command IDs follow the pluginid:action convention — e.g.
editor:toggle-bold, workspace:split-vertical, dataview:dataview-rebuild-current-view.
Execute a Command
obsidian command id=editor:toggle-bold
obsidian command id=templater-obsidian:insert-templater
obsidian command id=dataview:dataview-rebuild-current-view
obsidian command id=command-palette:open
command always operates against the active editor / active file — there
is no file= parameter. To run a command against a specific note, open
the note first (obsidian open file=Foo), then run command.
Hotkeys
obsidian hotkeys
obsidian hotkeys verbose
obsidian hotkeys total
obsidian hotkey id=editor:toggle-bold
obsidian hotkey id=editor:toggle-bold verbose
Common Patterns
"Run a Templater template against the current note"
obsidian open file="Notes/Today"
obsidian command id=templater-obsidian:replace-in-file-templater
"Find every Dataview command"
obsidian commands filter=dataview
"Discover what hotkeys conflict with a new binding"
obsidian hotkeys format=json | jq '[.[] | select(.hotkey == "Ctrl+Shift+P")]'
(Requires the user's installed jq; the CLI itself does not pipe.)
Agentic Optimizations
| Context | Command |
|---|
| List all commands | obsidian commands |
| Filter commands by prefix | obsidian commands filter=PREFIX |
| Run a command | obsidian command id=PLUGIN:ACTION |
| List hotkeys (structured) | obsidian hotkeys format=json |
| Lookup one hotkey | obsidian hotkey id=PLUGIN:ACTION |
| Show user-customised hotkeys | obsidian hotkeys verbose |
Related Skills
- plugins-themes — Enable the plugin before its commands become available
- workspaces — Set up an editor state, then run a command against it
- dev-tools — When a command doesn't exist for what you need