3.2 多文件协作
团队配置共享机制
Claude Code 的多文件协作核心是通过 .claude/ 目录将项目规范和配置提交到 Git,实现团队成员间的共享。
CLAUDE.md 团队共享
在项目根目录放置 CLAUDE.md(或 .claude/CLAUDE.md),确保每个团队成员在启动 Claude Code 时都加载相同的项目规范:
# 项目规范
## 代码风格
- 使用 ESLint + Prettier
- 4 空格缩进,字符串用单引号
## Git 工作流
- commit 前必须运行 `npm test`
- commit 信息遵循 Conventional Commits 格式
## 目录结构
- 业务组件放在 `src/components/`
- 工具函数放在 `src/utils/`
- API 层放在 `src/api/`
settings.json 团队权限配置
{
"permissions": {
"allow": [
"Bash(npm run lint)",
"Bash(npm test)",
"Bash(git commit *)",
"Bash(git push)"
],
"deny": [
"Bash(curl *)",
"Bash(wget *)",
"Bash(rm -rf .git *)"
]
}
}
路径级规则(.claude/rules/)
当项目包含多种技术栈时,可以按目录路径设置不同的规则,Claude 会根据当前工作路径自动激活对应的规则文件:
.claude/rules/
├── python.md # 仅在 Python 代码目录激活
├── frontend.md # 仅在 React/前端目录激活
├── backend.md # 仅在 API/后端目录激活
└── docs.md # 仅在文档目录激活
规则文件示例(frontend.md)
# 前端规范
## 组件规范
- 使用函数组件,不使用 class 组件
- 所有组件使用 TypeScript,定义 props 接口
## 状态管理
- 优先使用 React Hooks
- 全局状态使用 Zustand,不使用 Redux
## 样式
- 使用 Tailwind CSS
- 禁止使用内联 style 属性(除动态值外)
子代理(Subagents)
子代理允许你在独立上下文中并行执行调查任务,适合处理大型代码库中的多个方向:
.claude/agents/
├── security-audit.md # 安全审计子代理
├── test-writer.md # 测试编写子代理
└── docs-generator.md # 文档生成子代理
在主会话中通过 /security-audit 即可调用安全审计子代理,它会在隔离的上下文中执行,不污染主对话。
MCP 服务器
MCP(Model Context Protocol)让 Claude Code 连接外部工具和数据源,实现跨工具工作流:
| MCP 服务器 | 功能 |
|---|---|
| GitHub MCP | 创建 PR、审查代码、管理 Issues |
| Linear MCP | 管理任务、更新 Sprint |
| Notion MCP | 读写 Notion 页面和数据库 |
| Filesystem MCP | 增强的本地文件操作 |
通过 .claude/.mcp.json 配置文件(可提交到 Git)实现团队共享:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "${GITHUB_TOKEN}"
}
}
}
}
使用 claude mcp list 查看已配置的 MCP 服务器。
多文件重构工作流
对跨多个文件的重构,建议使用以下流程:
- 进入计划模式(Ctrl+G),Claude 不会直接修改文件
- 描述任务:"重构 src/auth/ 模块,将 JWT 替换为 OAuth2"
- Claude 探索所有相关文件,制定修改方案
- 审核方案,确认后让 Claude 执行
- 运行测试验证
分叉会话(Fork Session)
使用 --fork-session 和 --continue 可以分叉出探索性会话,不打断主线工作:
claude --fork-session "探索 GraphQL 迁移方案"
# 在新会话中探索,不影响原会话的工作进度
技能定义(Skills)
技能是可复用的工作流模板,放在 .claude/skills/<name>/SKILL.md 中,通过 /<name> 调用:
.claude/skills/
└── code-review/
└── SKILL.md
SKILL.md 示例内容:
# 代码审查技能
## 流程
1. 运行 `npm run lint` 检查代码风格
2. 运行 `npm test` 确保测试通过
3. 检查是否有安全漏洞(硬编码密码、SQL 注入风险)
4. 检查测试覆盖率是否下降
## 输出格式
- 列出发现的问题
- 按严重程度分级(高/中/低)
- 提供修复建议