Juan Miguel Dela Cruz252 downloadsOpen your vault in a terminal and launch configurable shell commands.
Terminal Commands is a desktop-only Obsidian plugin for opening a vault in a terminal and launching configurable shell commands from the command palette or a searchable ribbon menu.
Requires Obsidian 1.13.1 or later.
New installations include editable entries for:
code ., second to last on Windows)explorer ., last on Windows only)The shell-command entries can be edited, reordered, or deleted. Open in terminal has an editable name, terminal, and working folder, but has no shell command and cannot be deleted.
Open Settings → Community plugins → Terminal Commands.
The settings page contains:
Reuse existing Terminal instance — macOS-only option controlling open -a versus open -na.
Terminals — four columns for an editable name, a read-only executable path, a system file-picker button, and delete. A platform-specific description lists the supported terminal types. Windows starts with cmd and Windows PowerShell; macOS starts with Terminal; Linux starts with x-terminal-emulator. Executable paths are scanned when possible, and the Windows picker accepts only supported .exe files. Every profile can be deleted, but at least one must remain. Restore defaults replaces the list with the platform defaults and reassigns commands from removed profiles to the first default terminal.
Commands — an ordered list containing:
The Restore defaults button beside the Commands add button replaces the entire command list with the current platform's initial commands after confirmation. Custom commands and edits are removed, including changes to names, shell commands, order, working folders, and Keep open preferences. Restored commands use the first current terminal; terminal profiles and other settings are unchanged.
The list includes aligned column headings for all seven controls. Terminal selectors have a fixed width; names longer than eight characters are shortened in the list and remain available as a tooltip. The ribbon command menu shows the selected terminal first, followed by separate Vault folder / Note folder and Keep terminal / Close terminal labels, and sorts commands that keep the terminal open before commands that close it.
Existing single-terminal settings are migrated to the first terminal profile. At least one terminal profile is always retained; deleting a profile reassigns its commands to the first remaining terminal.
When Note folder is off, the command uses the Vault root. When it is on, it uses the active note's folder and falls back to the Vault root if no note is active.
Configured commands run in a newly opened terminal with the current user's permissions. Only add commands you understand and trust.
The plugin uses Node.js child processes to open desktop terminal applications. On macOS, command launches also create a short-lived executable script in the operating system's temporary directory; the script is scheduled for deletion after launch. These desktop capabilities are required for the plugin's stated purpose and are not used to access note contents.
Git entries are ordinary shell commands and do not receive a separate repository pre-check.
open; command launches use a temporary executable .command script.cmd.exe, Windows PowerShell (powershell.exe), and PowerShell 7 (pwsh.exe). Other executables are rejected instead of being launched or silently falling back to another terminal.bash -lc when running a command.npm install
npm run check
For local installation, copy these files into .obsidian/plugins/terminal-commands/:
manifest.jsonmain.jsstyles.cssThen reload Obsidian and enable Terminal Commands under Community plugins.
Issac404/obsidian-terminal-plugin