Settings reference
Every top-level key in config.jsonc, what it does and its default.
Prop
Type
packs
An object that maps a pack's ID to true or false. Packs you don't list stay on.
"packs": {
"ai": false,
"locked": false
}| ID | Menu | Adds |
|---|---|---|
apps | Open in … | Your editor, terminal and IDEs, directly in the menu |
scripts | Scripts | package.json scripts, Makefile targets, running script files |
git | Git | Init, status, log, pull, fetch, push, open on the web, .gitignore templates |
json | JSON | Format, minify and validate JSON files |
organize | Organize | Batch rename, flatten folders, remove empty folders, sort into folders |
archive | Archive | Create and extract ZIP and TAR.GZ archives |
images | Images | Convert, resize and rotate images, PDF to images |
ai | AI | Copy files as AI context, open a chat, start Claude Code or Codex |
hash | Hash | SHA-256, SHA-1, MD5 and SHA-512, checksum files |
locked | Locked Files | Lock and unlock files, and see which apps have a file open (not in the App Store version) |
path | Copy Path | Copy paths, names and file URLs |
The same switches are in Settings → Actions → Action Packs. Built-in packs describes each menu in detail.
apps
"apps": {
"editor": "dev.zed.Zed",
"terminal": "com.mitchellh.ghostty",
"ides": ["com.apple.dt.Xcode", "com.jetbrains.WebStorm"]
}| Key | Used for |
|---|---|
editor | Open in your editor (⇧⌘E), and opening config.jsonc |
terminal | Open in your terminal, and every action that runs in a terminal |
ides | The Open in IDE submenu |
Each value is an app's bundle identifier or the path to an .app bundle, like "/Applications/Zed.app" or "~/Applications/Nova.app". To look up a bundle identifier, run:
osascript -e 'id of app "Zed"'When editor or terminal isn't set, or the app can't be found, MacScout uses the first app from these lists that is installed:
- Editors: Visual Studio Code, Cursor, Zed, Windsurf, Sublime Text, Nova, BBEdit, CotEditor, TextEdit
- Terminals: Ghostty, iTerm, Warp, kitty, Alacritty, cmux, Terminal
When ides isn't set, Open in IDE lists every installed app from this list: Xcode, IntelliJ IDEA, IntelliJ IDEA CE, WebStorm, PyCharm, PyCharm CE, GoLand, PhpStorm, Rider, Fleet and Android Studio. When you set ides, only those apps appear, and "ides": [] hides the submenu.
Settings → Actions → Apps edits the same three keys.
packageManager
The Scripts menu runs package.json scripts with this package manager: <manager> install and <manager> run <script>.
With "auto", MacScout looks for a lockfile in the folder that contains package.json, then in each parent folder up to the root of the Git repository:
| Lockfile | Package manager |
|---|---|
pnpm-lock.yaml | pnpm |
bun.lock or bun.lockb | bun |
yarn.lock | yarn |
package-lock.json | npm |
If there is no lockfile, it uses npm. In a monorepo, this finds the lockfile at the root even when you right-click a package inside it.
shell
The shell that runs the command of custom actions, and the commands that open in your terminal. By default, MacScout uses your login shell from $SHELL, and /bin/zsh if that isn't set.
"shell": "/opt/homebrew/bin/bash"MacScout starts the shell with -lc, as a login shell that runs one command, so the shell must accept -l and -c combined. zsh and bash do. The App Store version can only start the shells that come with macOS, so it uses /bin/zsh in place of a shell from Homebrew. See The shell for what a login shell reads at startup.
menuShowDelay
How long, in milliseconds, you hover over a menu item before its submenu opens. 0 opens submenus right away. Leave the key out to keep the macOS default.
The setting can make submenus open sooner than macOS would on its own, but not later: with a value longer than the macOS delay, the submenu opens at the usual time.
"menuShowDelay": 150This applies to the context menus of the list view. Settings → General → Submenu delay sets the same value.
actions
A list of custom actions. Custom actions covers every field.