SpyBara
Go Premium

Documentation 2025-12-13 06:02 UTC to 2025-12-15 21:01 UTC

5 files changed +214 −5. View all changes and history on the product overview
2025
Sat 27 06:02 Tue 23 18:02 Sat 20 00:04 Fri 19 21:01 Thu 18 21:01 Wed 17 15:02 Tue 16 21:01 Mon 15 21:01 Sat 13 06:02 Fri 12 21:01 Thu 11 21:02 Wed 10 09:03 Tue 9 18:01 Mon 8 21:01 Sat 6 18:02 Fri 5 00:04 Thu 4 21:02 Wed 3 00:04 Tue 2 21:01 Mon 1 03:31
Details

25| `--add-dir` | Add additional working directories for Claude to access (validates each path exists as a directory) | `claude --add-dir ../apps ../lib` |25| `--add-dir` | Add additional working directories for Claude to access (validates each path exists as a directory) | `claude --add-dir ../apps ../lib` |

26| `--agent` | Specify an agent for the current session (overrides the `agent` setting) | `claude --agent my-custom-agent` |26| `--agent` | Specify an agent for the current session (overrides the `agent` setting) | `claude --agent my-custom-agent` |

27| `--agents` | Define custom [subagents](/en/sub-agents) dynamically via JSON (see below for format) | `claude --agents '{"reviewer":{"description":"Reviews code","prompt":"You are a code reviewer"}}'` |27| `--agents` | Define custom [subagents](/en/sub-agents) dynamically via JSON (see below for format) | `claude --agents '{"reviewer":{"description":"Reviews code","prompt":"You are a code reviewer"}}'` |

28| `--allowedTools` | A list of tools that should be allowed without prompting the user for permission, in addition to [settings.json files](/en/settings) | `"Bash(git log:*)" "Bash(git diff:*)" "Read"` |28| `--allowedTools` | Tools that execute without prompting for permission. To restrict which tools are available, use `--tools` instead | `"Bash(git log:*)" "Bash(git diff:*)" "Read"` |

29| `--append-system-prompt` | Append custom text to the end of the default system prompt (works in both interactive and print modes) | `claude --append-system-prompt "Always use TypeScript"` |29| `--append-system-prompt` | Append custom text to the end of the default system prompt (works in both interactive and print modes) | `claude --append-system-prompt "Always use TypeScript"` |

30| `--betas` | Beta headers to include in API requests (API key users only) | `claude --betas interleaved-thinking` |30| `--betas` | Beta headers to include in API requests (API key users only) | `claude --betas interleaved-thinking` |

31| `--continue`, `-c` | Load the most recent conversation in the current directory | `claude --continue` |31| `--continue`, `-c` | Load the most recent conversation in the current directory | `claude --continue` |

32| `--dangerously-skip-permissions` | Skip permission prompts (use with caution) | `claude --dangerously-skip-permissions` |32| `--dangerously-skip-permissions` | Skip permission prompts (use with caution) | `claude --dangerously-skip-permissions` |

33| `--debug` | Enable debug mode with optional category filtering (for example, `"api,hooks"` or `"!statsig,!file"`) | `claude --debug "api,mcp"` |33| `--debug` | Enable debug mode with optional category filtering (for example, `"api,hooks"` or `"!statsig,!file"`) | `claude --debug "api,mcp"` |

34| `--disallowedTools` | A list of tools that should be disallowed without prompting the user for permission, in addition to [settings.json files](/en/settings) | `"Bash(git log:*)" "Bash(git diff:*)" "Edit"` |34| `--disallowedTools` | Tools that are removed from the model's context and cannot be used | `"Bash(git log:*)" "Bash(git diff:*)" "Edit"` |

35| `--fallback-model` | Enable automatic fallback to specified model when default model is overloaded (print mode only) | `claude -p --fallback-model sonnet "query"` |35| `--fallback-model` | Enable automatic fallback to specified model when default model is overloaded (print mode only) | `claude -p --fallback-model sonnet "query"` |

36| `--fork-session` | When resuming, create a new session ID instead of reusing the original (use with `--resume` or `--continue`) | `claude --resume abc123 --fork-session` |36| `--fork-session` | When resuming, create a new session ID instead of reusing the original (use with `--resume` or `--continue`) | `claude --resume abc123 --fork-session` |

37| `--ide` | Automatically connect to IDE on startup if exactly one valid IDE is available | `claude --ide` |37| `--ide` | Automatically connect to IDE on startup if exactly one valid IDE is available | `claude --ide` |

headless.md +3 −3

Details

21Headless mode leverages all the CLI options available in Claude Code. Here are the key ones for automation and scripting:21Headless mode leverages all the CLI options available in Claude Code. Here are the key ones for automation and scripting:

22 22 

23| Flag | Description | Example |23| Flag | Description | Example |

24| :------------------------- | :----------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------ |24| :------------------------- | :---------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------ |

25| `--print`, `-p` | Run in non-interactive mode | `claude -p "query"` |25| `--print`, `-p` | Run in non-interactive mode | `claude -p "query"` |

26| `--output-format` | Specify output format (`text`, `json`, `stream-json`) | `claude -p --output-format json` |26| `--output-format` | Specify output format (`text`, `json`, `stream-json`) | `claude -p --output-format json` |

27| `--resume`, `-r` | Resume a conversation by session ID | `claude --resume abc123` |27| `--resume`, `-r` | Resume a conversation by session ID | `claude --resume abc123` |

28| `--continue`, `-c` | Continue the most recent conversation | `claude --continue` |28| `--continue`, `-c` | Continue the most recent conversation | `claude --continue` |

29| `--verbose` | Enable verbose logging | `claude --verbose` |29| `--verbose` | Enable verbose logging | `claude --verbose` |

30| `--append-system-prompt` | Append to system prompt (only with `--print`) | `claude --append-system-prompt "Custom instruction"` |30| `--append-system-prompt` | Append to system prompt (only with `--print`) | `claude --append-system-prompt "Custom instruction"` |

31| `--allowedTools` | Space-separated list of allowed tools, or <br /><br /> string of comma-separated list of allowed tools | `claude --allowedTools mcp__slack mcp__filesystem`<br /><br />`claude --allowedTools "Bash(npm install),mcp__filesystem"` |31| `--allowedTools` | Tools that execute without prompting for permission (use `--tools` to restrict available tools) | `claude --allowedTools mcp__slack mcp__filesystem`<br /><br />`claude --allowedTools "Bash(npm install),mcp__filesystem"` |

32| `--disallowedTools` | Space-separated list of denied tools, or <br /><br /> string of comma-separated list of denied tools | `claude --disallowedTools mcp__splunk mcp__github`<br /><br />`claude --disallowedTools "Bash(git commit),mcp__github"` |32| `--disallowedTools` | Tools removed from the model's context (cannot be used) | `claude --disallowedTools mcp__splunk mcp__github`<br /><br />`claude --disallowedTools "Bash(git commit),mcp__github"` |

33| `--mcp-config` | Load MCP servers from a JSON file | `claude --mcp-config servers.json` |33| `--mcp-config` | Load MCP servers from a JSON file | `claude --mcp-config servers.json` |

34| `--permission-prompt-tool` | MCP tool for handling permission prompts (only with `--print`) | `claude --permission-prompt-tool mcp__auth__prompt` |34| `--permission-prompt-tool` | MCP tool for handling permission prompts (only with `--print`) | `claude --permission-prompt-tool mcp__auth__prompt` |

35 35 

Details

10 10 

11* **Centralized discovery**: Browse plugins from multiple sources in one place11* **Centralized discovery**: Browse plugins from multiple sources in one place

12* **Version management**: Track and update plugin versions automatically12* **Version management**: Track and update plugin versions automatically

13* **Automatic updates**: Keep plugins current with [per-marketplace auto-update settings](#auto-update-settings)

13* **Team distribution**: Share required plugins across your organization14* **Team distribution**: Share required plugins across your organization

14* **Flexible sources**: Support for git repositories, GitHub repos, local paths, and package managers15* **Flexible sources**: Support for git repositories, GitHub repos, local paths, and package managers

15 16 


376 377 

377***378***

378 379 

380## Auto-update settings

381 

382Claude Code can automatically update marketplaces and their installed plugins at startup. This keeps your plugins current without manual intervention.

383 

384### How auto-update works

385 

386When auto-update is enabled for a marketplace:

387 

3881. **Marketplace refresh**: Claude Code pulls the latest marketplace data (git pull or re-download)

3892. **Plugin updates**: Installed plugins from that marketplace are updated to their latest versions

3903. **Notification**: If any plugins were updated, you'll see a notification suggesting a restart

391 

392### Configure auto-update per marketplace

393 

394Toggle auto-update for individual marketplaces through the UI:

395 

3961. Run `/plugin` to open the plugin manager

3972. Select **Marketplaces**

3983. Choose a marketplace from the list

3994. Select **Enable auto-update** or **Disable auto-update**

400 

401<Note>

402 Official Anthropic marketplaces have auto-update enabled by default. You can disable this if you prefer manual updates.

403</Note>

404 

405### Auto-update behavior

406 

407| Marketplace type | Default behavior |

408| :------------------------------ | :------------------- |

409| Official Anthropic marketplaces | Auto-update enabled |

410| Third-party marketplaces | Auto-update disabled |

411| Local development marketplaces | Auto-update disabled |

412 

413### Disable auto-update globally

414 

415To disable all automatic updates (both Claude Code and plugins), set the `DISABLE_AUTOUPDATER` environment variable. See [Auto updates](/en/setup#auto-updates) for details.

416 

417When auto-updates are disabled globally:

418 

419* No marketplaces or plugins will auto-update

420* The auto-update toggle is hidden in the UI

421* You can still manually update using `/plugin marketplace update`

422 

423***

424 

379## Troubleshooting marketplaces425## Troubleshooting marketplaces

380 426 

381### Common marketplace issues427### Common marketplace issues

plugins.md +38 −0

Details

201/plugin uninstall plugin-name@marketplace-name201/plugin uninstall plugin-name@marketplace-name

202```202```

203 203 

204### Installation scopes

205 

206Plugins can be installed at different scopes to control their availability and sharing:

207 

208| Scope | Location | Behavior |

209| :-------- | :---------------------------- | :-------------------------------------- |

210| `user` | `~/.claude/settings.json` | Available across all projects (default) |

211| `project` | `.claude/settings.json` | Shared with team via version control |

212| `local` | `.claude/settings.local.json` | Project-specific, gitignored |

213 

214**When to use each scope:**

215 

216* **User scope** (default): For plugins you want available in all your projects

217* **Project scope**: For plugins your team should share (committed to git)

218* **Local scope**: For personal plugins in a specific project (not shared)

219 

220```shell Install to user scope (default) theme={null}

221claude plugin install formatter@your-org

222```

223 

224```shell Install to project scope (shared with team) theme={null}

225claude plugin install formatter@your-org --scope project

226```

227 

228```shell Install to local scope (gitignored) theme={null}

229claude plugin install formatter@your-org --scope local

230```

231 

232The `--scope` option also works with `uninstall`, `enable`, and `disable` commands:

233 

234```shell Uninstall from project scope theme={null}

235claude plugin uninstall formatter@your-org --scope project

236```

237 

238<Note>

239 When using `/plugin install` interactively, you'll be prompted to select the installation scope.

240</Note>

241 

204### Verify installation242### Verify installation

205 243 

206After installing a plugin:244After installing a plugin:

Details

327 327 

328***328***

329 329 

330## CLI commands reference

331 

332Claude Code provides CLI commands for non-interactive plugin management, useful for scripting and automation.

333 

334### plugin install

335 

336Install a plugin from available marketplaces.

337 

338```bash theme={null}

339claude plugin install <plugin> [options]

340```

341 

342**Arguments:**

343 

344* `<plugin>`: Plugin name or `plugin-name@marketplace-name` for a specific marketplace

345 

346**Options:**

347 

348| Option | Description | Default |

349| :-------------------- | :------------------------------------------------ | :------ |

350| `-s, --scope <scope>` | Installation scope: `user`, `project`, or `local` | `user` |

351| `-h, --help` | Display help for command | |

352 

353**Examples:**

354 

355```bash theme={null}

356# Install to user scope (default)

357claude plugin install formatter@my-marketplace

358 

359# Install to project scope (shared with team)

360claude plugin install formatter@my-marketplace --scope project

361 

362# Install to local scope (gitignored)

363claude plugin install formatter@my-marketplace --scope local

364```

365 

366### plugin uninstall

367 

368Remove an installed plugin.

369 

370```bash theme={null}

371claude plugin uninstall <plugin> [options]

372```

373 

374**Arguments:**

375 

376* `<plugin>`: Plugin name or `plugin-name@marketplace-name`

377 

378**Options:**

379 

380| Option | Description | Default |

381| :-------------------- | :-------------------------------------------------- | :------ |

382| `-s, --scope <scope>` | Uninstall from scope: `user`, `project`, or `local` | `user` |

383| `-h, --help` | Display help for command | |

384 

385**Aliases:** `remove`, `rm`

386 

387### plugin enable

388 

389Enable a disabled plugin.

390 

391```bash theme={null}

392claude plugin enable <plugin> [options]

393```

394 

395**Arguments:**

396 

397* `<plugin>`: Plugin name or `plugin-name@marketplace-name`

398 

399**Options:**

400 

401| Option | Description | Default |

402| :-------------------- | :--------------------------------------------- | :------ |

403| `-s, --scope <scope>` | Scope to enable: `user`, `project`, or `local` | `user` |

404| `-h, --help` | Display help for command | |

405 

406### plugin disable

407 

408Disable a plugin without uninstalling it.

409 

410```bash theme={null}

411claude plugin disable <plugin> [options]

412```

413 

414**Arguments:**

415 

416* `<plugin>`: Plugin name or `plugin-name@marketplace-name`

417 

418**Options:**

419 

420| Option | Description | Default |

421| :-------------------- | :---------------------------------------------- | :------ |

422| `-s, --scope <scope>` | Scope to disable: `user`, `project`, or `local` | `user` |

423| `-h, --help` | Display help for command | |

424 

425### plugin update

426 

427Update a plugin to the latest version.

428 

429```bash theme={null}

430claude plugin update <plugin> [options]

431```

432 

433**Arguments:**

434 

435* `<plugin>`: Plugin name or `plugin-name@marketplace-name`

436 

437**Options:**

438 

439| Option | Description | Default |

440| :-------------------- | :-------------------------------------------------------- | :------- |

441| `-s, --scope <scope>` | Scope to update: `user`, `project`, `local`, or `managed` | Required |

442| `-h, --help` | Display help for command | |

443 

444### Installation scopes

445 

446| Scope | Settings file | Use case |

447| :-------- | :---------------------------- | :-------------------------------------------------- |

448| `user` | `~/.claude/settings.json` | Personal plugins available across all projects |

449| `project` | `.claude/settings.json` | Team plugins shared via version control |

450| `local` | `.claude/settings.local.json` | Project-specific plugins, gitignored |

451| `managed` | `managed-settings.json` | Enterprise-managed plugins (read-only, update only) |

452 

453***

454 

330## Debugging and development tools455## Debugging and development tools

331 456 

332### Debugging commands457### Debugging commands