SpyBara
Go Premium

Documentation 2026-03-09 21:06 UTC to 2026-03-10 03:43 UTC

5 files changed +26 −20. View all changes and history on the product overview
2026
Tue 31 21:09 Mon 30 21:13 Sat 28 18:04 Fri 27 21:09 Thu 26 21:07 Wed 25 21:08 Tue 24 18:15 Mon 23 21:08 Sun 22 18:04 Sat 21 18:03 Fri 20 21:05 Thu 19 06:17 Wed 18 18:16 Tue 17 21:10 Mon 16 21:10 Sat 14 03:44 Fri 13 21:07 Thu 12 21:07 Wed 11 03:43 Tue 10 03:43 Mon 9 21:06 Sat 7 03:37 Fri 6 06:10 Thu 5 06:12 Wed 4 21:06 Sun 1 06:10
Details

195You can place CLAUDE.md files in several locations:195You can place CLAUDE.md files in several locations:

196 196 

197* **Home folder (`~/.claude/CLAUDE.md`)**: applies to all Claude sessions197* **Home folder (`~/.claude/CLAUDE.md`)**: applies to all Claude sessions

198* **Project root (`./CLAUDE.md`)**: check into git to share with your team, or name it `CLAUDE.local.md` and `.gitignore` it198* **Project root (`./CLAUDE.md`)**: check into git to share with your team

199* **Parent directories**: useful for monorepos where both `root/CLAUDE.md` and `root/foo/CLAUDE.md` are pulled in automatically199* **Parent directories**: useful for monorepos where both `root/CLAUDE.md` and `root/foo/CLAUDE.md` are pulled in automatically

200* **Child directories**: Claude pulls in child CLAUDE.md files on demand when working with files in those directories200* **Child directories**: Claude pulls in child CLAUDE.md files on demand when working with files in those directories

201 201 

code-review.md +1 −1

Details

99 99 

100Claude reads `CLAUDE.md` files at every level of your directory hierarchy, so rules in a subdirectory's `CLAUDE.md` apply only to files under that path. See the [memory documentation](/en/memory) for more on how `CLAUDE.md` works.100Claude reads `CLAUDE.md` files at every level of your directory hierarchy, so rules in a subdirectory's `CLAUDE.md` apply only to files under that path. See the [memory documentation](/en/memory) for more on how `CLAUDE.md` works.

101 101 

102For review-specific guidance that you don't want applied to general Claude Code sessions, use [`REVIEW.md`](#reviewmd) instead.102For review-specific guidance that you don't want applied to general Claude Code sessions, use [`REVIEW.md`](#review-md) instead.

103 103 

104### REVIEW\.md104### REVIEW\.md

105 105 

desktop.md +1 −1

Details

501 501 

502Desktop and CLI read the same configuration files, so your setup carries over:502Desktop and CLI read the same configuration files, so your setup carries over:

503 503 

504* **[CLAUDE.md](/en/memory)** and **CLAUDE.local.md** files in your project are used by both504* **[CLAUDE.md](/en/memory)** files in your project are used by both

505* **[MCP servers](/en/mcp)** configured in `~/.claude.json` or `.mcp.json` work in both505* **[MCP servers](/en/mcp)** configured in `~/.claude.json` or `.mcp.json` work in both

506* **[Hooks](/en/hooks)** and **[skills](/en/skills)** defined in settings apply to both506* **[Hooks](/en/hooks)** and **[skills](/en/skills)** defined in settings apply to both

507* **[Settings](/en/settings)** in `~/.claude.json` and `~/.claude/settings.json` are shared. Permission rules, allowed tools, and other settings in `settings.json` apply to Desktop sessions.507* **[Settings](/en/settings)** in `~/.claude.json` and `~/.claude/settings.json` are shared. Permission rules, allowed tools, and other settings in `settings.json` apply to Desktop sessions.

memory.md +3 −6

Details

43CLAUDE.md files can live in several locations, each with a different scope. More specific locations take precedence over broader ones.43CLAUDE.md files can live in several locations, each with a different scope. More specific locations take precedence over broader ones.

44 44 

45| Scope | Location | Purpose | Use case examples | Shared with |45| Scope | Location | Purpose | Use case examples | Shared with |

46| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------- | -------------------------------------------------------------------- | ------------------------------- |46| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------- | -------------------------------------------------------------------- | ------------------------------- |

47| **Managed policy** | • macOS: `/Library/Application Support/ClaudeCode/CLAUDE.md`<br />• Linux and WSL: `/etc/claude-code/CLAUDE.md`<br />• Windows: `C:\Program Files\ClaudeCode\CLAUDE.md` | Organization-wide instructions managed by IT/DevOps | Company coding standards, security policies, compliance requirements | All users in organization |47| **Managed policy** | • macOS: `/Library/Application Support/ClaudeCode/CLAUDE.md`<br />• Linux and WSL: `/etc/claude-code/CLAUDE.md`<br />• Windows: `C:\Program Files\ClaudeCode\CLAUDE.md` | Organization-wide instructions managed by IT/DevOps | Company coding standards, security policies, compliance requirements | All users in organization |

48| **Project instructions** | `./CLAUDE.md` or `./.claude/CLAUDE.md` | Team-shared instructions for the project | Project architecture, coding standards, common workflows | Team members via source control |48| **Project instructions** | `./CLAUDE.md` or `./.claude/CLAUDE.md` | Team-shared instructions for the project | Project architecture, coding standards, common workflows | Team members via source control |

49| **User instructions** | `~/.claude/CLAUDE.md` | Personal preferences for all projects | Code styling preferences, personal tooling shortcuts | Just you (all projects) |49| **User instructions** | `~/.claude/CLAUDE.md` | Personal preferences for all projects | Code styling preferences, personal tooling shortcuts | Just you (all projects) |

50| **Local instructions** | `./CLAUDE.local.md` | Personal project-specific preferences, not checked into git | Your sandbox URLs, preferred test data | Just you (current project) |

51 50 

52CLAUDE.md files in the directory hierarchy above the working directory are loaded in full at launch. CLAUDE.md files in subdirectories load on demand when Claude reads files in those directories. See [How CLAUDE.md files load](#how-claudemd-files-load) for the full resolution order.51CLAUDE.md files in the directory hierarchy above the working directory are loaded in full at launch. CLAUDE.md files in subdirectories load on demand when Claude reads files in those directories. See [How CLAUDE.md files load](#how-claudemd-files-load) for the full resolution order.

53 52 


92- git workflow @docs/git-instructions.md91- git workflow @docs/git-instructions.md

93```92```

94 93 

95For private per-project preferences that shouldn't be checked into version control, use `CLAUDE.local.md`: it is automatically loaded and added to `.gitignore`.94For personal preferences you don't want to check in, import a file from your home directory. The import goes in the shared CLAUDE.md, but the file it points to stays on your machine:

96 

97If you work across multiple git worktrees, `CLAUDE.local.md` only exists in one. Use a home-directory import instead so all worktrees share the same personal instructions:

98 95 

99```text theme={null}96```text theme={null}

100# Individual Preferences97# Individual Preferences


109 106 

110### How CLAUDE.md files load107### How CLAUDE.md files load

111 108 

112Claude Code reads CLAUDE.md files by walking up the directory tree from your current working directory, checking each directory along the way for CLAUDE.md and CLAUDE.local.md files. This means if you run Claude Code in `foo/bar/`, it loads instructions from both `foo/bar/CLAUDE.md` and `foo/CLAUDE.md`.109Claude Code reads CLAUDE.md files by walking up the directory tree from your current working directory, checking each directory along the way. This means if you run Claude Code in `foo/bar/`, it loads instructions from both `foo/bar/CLAUDE.md` and `foo/CLAUDE.md`.

113 110 

114Claude also discovers CLAUDE.md files in subdirectories under your current working directory. Instead of loading them at launch, they are included when Claude reads files in those subdirectories.111Claude also discovers CLAUDE.md files in subdirectories under your current working directory. Instead of loading them at launch, they are included when Claude reads files in those subdirectories.

115 112 

settings.md +20 −11

Details

19| **Managed** | Server-managed settings, plist / registry, or system-level `managed-settings.json` | All users on the machine | Yes (deployed by IT) |19| **Managed** | Server-managed settings, plist / registry, or system-level `managed-settings.json` | All users on the machine | Yes (deployed by IT) |

20| **User** | `~/.claude/` directory | You, across all projects | No |20| **User** | `~/.claude/` directory | You, across all projects | No |

21| **Project** | `.claude/` in repository | All collaborators on this repository | Yes (committed to git) |21| **Project** | `.claude/` in repository | All collaborators on this repository | Yes (committed to git) |

22| **Local** | `.claude/*.local.*` files | You, in this repository only | No (gitignored) |22| **Local** | `.claude/settings.local.json` | You, in this repository only | No (gitignored) |

23 23 

24### When to use each scope24### When to use each scope

25 25 


69| **Subagents** | `~/.claude/agents/` | `.claude/agents/` | — |69| **Subagents** | `~/.claude/agents/` | `.claude/agents/` | — |

70| **MCP servers** | `~/.claude.json` | `.mcp.json` | `~/.claude.json` (per-project) |70| **MCP servers** | `~/.claude.json` | `.mcp.json` | `~/.claude.json` (per-project) |

71| **Plugins** | `~/.claude/settings.json` | `.claude/settings.json` | `.claude/settings.local.json` |71| **Plugins** | `~/.claude/settings.json` | `.claude/settings.json` | `.claude/settings.local.json` |

72| **CLAUDE.md** | `~/.claude/CLAUDE.md` | `CLAUDE.md` or `.claude/CLAUDE.md` | `CLAUDE.local.md` |72| **CLAUDE.md** | `~/.claude/CLAUDE.md` | `CLAUDE.md` or `.claude/CLAUDE.md` | |

73 73 

74***74***

75 75 


886Claude Code has access to a set of powerful tools that help it understand and modify your codebase:886Claude Code has access to a set of powerful tools that help it understand and modify your codebase:

887 887 

888| Tool | Description | Permission Required |888| Tool | Description | Permission Required |

889| :------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------ |889| :----------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------ |

890| **Agent** | Spawns a [subagent](/en/sub-agents) with its own context window to handle a task | No |

890| **AskUserQuestion** | Asks multiple-choice questions to gather requirements or clarify ambiguity | No |891| **AskUserQuestion** | Asks multiple-choice questions to gather requirements or clarify ambiguity | No |

891| **Bash** | Executes shell commands in your environment (see [Bash tool behavior](#bash-tool-behavior) below) | Yes |892| **Bash** | Executes shell commands in your environment. See [Bash tool behavior](#bash-tool-behavior) | Yes |

892| **TaskOutput** | Retrieves output from a background task (bash shell or subagent) | No |893| **CronCreate** | Schedules a recurring or one-shot prompt within the current session (gone when Claude exits). See [scheduled tasks](/en/scheduled-tasks) | No |

894| **CronDelete** | Cancels a scheduled task by ID | No |

895| **CronList** | Lists all scheduled tasks in the session | No |

893| **Edit** | Makes targeted edits to specific files | Yes |896| **Edit** | Makes targeted edits to specific files | Yes |

894| **ExitPlanMode** | Prompts the user to exit plan mode and start coding | Yes |897| **EnterPlanMode** | Switches to plan mode to design an approach before coding | No |

898| **EnterWorktree** | Creates an isolated [git worktree](/en/common-workflows#run-parallel-claude-code-sessions-with-git-worktrees) and switches into it | No |

899| **ExitPlanMode** | Presents a plan for approval and exits plan mode | Yes |

900| **ExitWorktree** | Exits a worktree session and returns to the original directory | No |

895| **Glob** | Finds files based on pattern matching | No |901| **Glob** | Finds files based on pattern matching | No |

896| **Grep** | Searches for patterns in file contents | No |902| **Grep** | Searches for patterns in file contents | No |

897| **KillShell** | Kills a running background bash shell by its ID | No |903| **ListMcpResourcesTool** | Lists resources exposed by connected [MCP servers](/en/mcp) | No |

898| **MCPSearch** | Searches for and loads MCP tools when [tool search](/en/mcp#scale-with-mcp-tool-search) is enabled | No |904| **LSP** | Code intelligence via language servers. Reports type errors and warnings automatically after file edits. Also supports navigation operations: jump to definitions, find references, get type info, list symbols, find implementations, trace call hierarchies. Requires a [code intelligence plugin](/en/discover-plugins#code-intelligence) and its language server binary | No |

899| **NotebookEdit** | Modifies Jupyter notebook cells | Yes |905| **NotebookEdit** | Modifies Jupyter notebook cells | Yes |

900| **Read** | Reads the contents of files | No |906| **Read** | Reads the contents of files | No |

907| **ReadMcpResourceTool** | Reads a specific MCP resource by URI | No |

901| **Skill** | Executes a [skill](/en/skills#control-who-invokes-a-skill) within the main conversation | Yes |908| **Skill** | Executes a [skill](/en/skills#control-who-invokes-a-skill) within the main conversation | Yes |

902| **Agent** | Runs a sub-agent to handle complex, multi-step tasks | No |

903| **TaskCreate** | Creates a new task in the task list | No |909| **TaskCreate** | Creates a new task in the task list | No |

904| **TaskGet** | Retrieves full details for a specific task | No |910| **TaskGet** | Retrieves full details for a specific task | No |

905| **TaskList** | Lists all tasks with their current status | No |911| **TaskList** | Lists all tasks with their current status | No |

912| **TaskOutput** | Retrieves output from a background task | No |

913| **TaskStop** | Kills a running background task by ID | No |

906| **TaskUpdate** | Updates task status, dependencies, details, or deletes tasks | No |914| **TaskUpdate** | Updates task status, dependencies, details, or deletes tasks | No |

915| **TodoWrite** | Manages the session task checklist. Available in non-interactive mode and the [Agent SDK](/en/headless); interactive sessions use TaskCreate, TaskGet, TaskList, and TaskUpdate instead | No |

916| **ToolSearch** | Searches for and loads deferred tools when [tool search](/en/mcp#scale-with-mcp-tool-search) is enabled | No |

907| **WebFetch** | Fetches content from a specified URL | Yes |917| **WebFetch** | Fetches content from a specified URL | Yes |

908| **WebSearch** | Performs web searches with domain filtering | Yes |918| **WebSearch** | Performs web searches | Yes |

909| **Write** | Creates or overwrites files | Yes |919| **Write** | Creates or overwrites files | Yes |

910| **LSP** | Code intelligence via language servers. Reports type errors and warnings automatically after file edits. Also supports navigation operations: jump to definitions, find references, get type info, list symbols, find implementations, trace call hierarchies. Requires a [code intelligence plugin](/en/discover-plugins#code-intelligence) and its language server binary | No |

911 920 

912Permission rules can be configured using `/allowed-tools` or in [permission settings](/en/settings#available-settings). Also see [Tool-specific permission rules](/en/permissions#tool-specific-permission-rules).921Permission rules can be configured using `/allowed-tools` or in [permission settings](/en/settings#available-settings). Also see [Tool-specific permission rules](/en/permissions#tool-specific-permission-rules).

913 922