{"name":"--plugin-dir","slug":"plugin-dir","family":"cli","title":"CLI flags","noun":"CLI flag","description":"Load a plugin from a directory or `.zip` archive, or several from a [folder of plugins](\/docs\/en\/plugins\/create#load-a-directory-or-archive-for-one-session), for this session only. Each flag takes one path. Repeat the flag for more paths: `--plugin-dir A --plugin-dir B.zip`. Passing a folder of plugins requires Claude Code v2.1.265 or later","description_source":"docs","described_by":{"doc":"claude-code\/cli-reference","title":"CLI reference"},"presence":{"first_seen":"2.1.138","removed_in":null,"in_current_build":true,"newest_mined":"2.1.308","builds":149,"mined_builds":149,"first_cited":{"version":"2.1.76","released_at":"2026-03-14 00:14:17","spans":7}},"aliases":[],"entries":[{"version":"2.1.305","anchor":"managed-allowmanagedpermissionrulesonly-docs-desktop-plug","heading":"allowManagedPermissionRulesOnly help narrows when --plugin-dir plugins keep their tools","line":"The setting's description now says plugins loaded with `--plugin-dir` keep their allowed tools only in Claude Desktop, and only if your organization didn't set it","released_at":"2026-10-20 19:29:36","reason":"found in this entry's text, named in this entry"},{"version":"2.1.301","anchor":"reload-plugins-control-request-gains-add-plugins","heading":"Programs driving Claude Code can add plugins during a session","line":"Programs built on the SDK can now load more plugins into a running session through the plugin reload request, without a restart","released_at":"2026-10-15 14:34:23","reason":"found in this entry's text, named in this entry"},{"version":"2.1.287","anchor":"plugin-name-impersonation-check-in-marketplace-validation-an","heading":"Plugin names that imitate Anthropic's are now flagged when validated","line":"Plugin checks now give an error for names that start with claude-, anthropic- or similar, and a warning for looser look-alikes","released_at":"2026-10-01 16:59:25","reason":"found in this entry's text"},{"version":"2.1.284","anchor":"allowmanagedpermissionrulesonly-plugins-keep-allowed-tools","heading":"Managed-rules lockdown keeps plugin tool permissions only from admin-backed sources","line":"Under `allowManagedPermissionRulesOnly`, only plugins from admin-backed sources keep their allowed-tools grants; other plugins' grants are ignored","released_at":"2026-09-28 17:11:59","reason":"found in this entry's text"},{"version":"2.1.283","anchor":"validator-errors-on-plugin-and-marketplace-names-claude-code","heading":"Validator reports plugin and marketplace names Claude Code cannot install","line":"Marketplace validation now gives an error for plugin or marketplace names Claude Code cannot install, instead of saying they are accepted","released_at":"2026-09-25 18:46:11","reason":"found in this entry's text"},{"version":"2.1.283","anchor":"sdk-init-plugin-errors-is-now-public-gains-path-and-do","heading":"SDK startup info now says which plugin directory failed to load","line":"Plugin load errors that Claude Code reports to SDK programs are now documented and can give the path of the directory that failed","released_at":"2026-09-25 18:46:11","reason":"found in this entry's text, named in this entry"},{"version":"2.1.281","anchor":"tmux-worktree-relaunch-absolutizes-path-arguments","heading":"--tmux worktree relaunch absolutizes path arguments","line":"When --tmux relaunches Claude Code for a worktree, relative file paths in flags are now turned into full paths","released_at":"2026-09-23 17:01:17","reason":"found in this entry's text"},{"version":"2.1.281","anchor":"plugin-dir-log-explains-plugin-vs-folder-of-plugins","heading":"--plugin-dir log explains plugin vs folder-of-plugins","line":"The `--plugin-dir` debug log now explains whether a folder was read as one plugin or a folder of plugins","released_at":"2026-09-23 17:01:17","reason":"found in this entry's text, named in this entry"},{"version":"2.1.281","anchor":"managed-settings-is-carried-through-to-spawned-sessions","heading":"--managed-settings is carried through to spawned sessions; --setting-sources is accepted and discarded by one argument parser","line":"--managed-settings is now passed on to sessions Claude Code starts itself, while one parser reads --setting-sources and throws the value away","released_at":"2026-09-23 17:01:17","reason":"found in this entry's text"},{"version":"2.1.281","anchor":"bg-dispatch-carries-reattachenv-and-retries-while-the-daemon","heading":"bg dispatch carries reattachEnv and retries while the daemon starts","line":"Background dispatch now retries while the daemon starts, carries a reattach environment, and forwards flags like `--settings` when attaching","released_at":"2026-09-23 17:01:17","reason":"found in this entry's text"}],"entries_total":34,"docs":[{"source":"claude-code","path":"cli-reference","title":"CLI reference","documented":true},{"source":"claude-code","path":"agent-view","title":"Manage multiple agents with agent view","documented":false},{"source":"claude-code","path":"changelog","title":"Claude Code changelog","documented":false},{"source":"claude-code","path":"headless","title":"Run Claude Code programmatically","documented":false},{"source":"claude-code","path":"managed-settings","title":"Deploy managed settings","documented":false},{"source":"claude-code","path":"permission-modes","title":"Choose a permission mode","documented":false},{"source":"claude-code","path":"plugin-evals","title":"Test plugins with evals","documented":false},{"source":"claude-code","path":"plugins\/cli-reference","title":"Plugin commands reference","documented":false},{"source":"claude-code","path":"plugins\/code-intelligence","title":"Code intelligence plugins","documented":false},{"source":"claude-code","path":"plugins\/create","title":"Create a Claude Code plugin","documented":false}],"docs_total":13,"gates":[],"related":[{"name":"--plugin-url","slug":"plugin-url","description":"Fetch a plugin `.zip` archive from a URL for this session only. Repeat the flag for multiple plugins, or pass space-separated URLs in a single quoted value"}],"url":"https:\/\/changelogs.core-directive.com\/reference\/cli\/plugin-dir","family_url":"https:\/\/changelogs.core-directive.com\/reference\/cli.json"}