所属教程:Claude Code 从入门到大师级完整教程 预计阅读:22 分钟
单仓库任务在当前工作目录内即可完成;当需要参考共享配置、相邻服务或组件库时,会涉及多个工作目录。本节讲清添加目录的方式、记忆文件的加载差异与跨目录操作的安全边界。
/add-dir 把额外目录纳入本次会话可访问范围。--add-dir <路径> 指定额外目录,例如引入相邻的共享配置目录。添加目录首先解决的是访问与读取范围;是否把这些目录的记忆文件也载入上下文,需要单独说明。
--add-dir 只开放目录访问,并不自动读取该目录下的 CLAUDE.md 等记忆文件,避免无关规范混入当前会话。CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1;开启后会加载该目录的 CLAUDE.md、.claude/CLAUDE.md、.claude/rules/*.md 与 CLAUDE.local.md(本地文件是否纳入还受设置来源选项影响)。| 场景 | 建议做法 |
|---|---|
| 参考相邻服务的接口实现 | 只读添加目录做对照检索,改动仍限定在主仓库 |
| 跨仓库共享规范/组件库 | 必要时开启额外目录记忆加载,统一约定来源 |
| 大型 monorepo 局部工作 | 以子目录为工作起点,利用子目录规则按需加载;用排除设置忽略无关上级记忆 |
| 对比多个候选实现 | 独立会话/独立工作副本分别探索,避免改动互相污染 |
额外目录的读写仍受当前权限模式与允许规则约束;不要为图方便放开对整个文件系统的访问。对不熟悉的外部目录先只读探索,确认结构与用途后再决定是否允许写入。
/add-dir、启动时用 --add-dir <路径> 加入所需目录;先只开放访问,不急着加载对方规则。| 问题 | 处理建议 |
|---|---|
| 加了目录但代理不读该目录的规范文件 | 默认不随访问加载记忆文件属预期行为;确需遵循其规则时再开启额外目录记忆加载环境变量,并确认来源可信。 |
| 误改到相邻仓库的文件怎么办 | 立即停止写入,用版本控制核对差异,回退误改;后续先以只读模式加目录、列出路径清单并把写入限定在主仓库。 |
| monorepo 里上级记忆与子目录规则冲突 | 从具体子目录启动工作,利用子目录规则按需加载;用排除/忽略设置避免无关上级规范覆盖当前约定,冲突时以团队基线为准。 |
| 多个参考目录让上下文变臃肿 | 只加当前任务必需目录,检索交给只读子代理返回结论;任务结束后释放不再需要的目录。 |
本节掌握了多目录访问方式、记忆加载差异、操作顺序、FAQ 与安全边界。下一节讲多个会话并行工作时如何分工、隔离改动并避免冲突。
← 上一节:批量仓库与批量任务的组织方式 下一节:并行会话组织与冲突避免 →