当前位置: 首页 > news >正文

CLAUDE 配置说明

CLAUDE.md 配置文件说明

文件位置及作用

文件位置作用是否提交
CLAUDE.md项目根目录项目级文档,AI 每次启动自动读取
.claudeignore.claude/.claudeignore排除无关文件,类似.gitignore
.claude/settings.json.claude/settings.json团队共享配置:权限规则 + Hooks 注册
.claude/settings.local.json.claude/settings.local.json个人本地配置:权限白名单
.claude/commands/.claude/commands/项目级自定义命令(如/full-review
.claude/skills/.claude/skills/项目级技能包,团队共享
.claude/rules/.claude/rules/编码规范,按需加载
.claude/hooks/.claude/hooks/自动化脚本,事件触发执行
.claude/memory/.claude/memory/自动记忆:MEMORY.md + 分类记忆
.claude/mcp.json.claude/mcp.jsonMCP 服务器配置

1. CLAUDE.md

位置: 项目根目录

作用: 为 Claude Code 提供项目核心信息,包括构建命令、架构结构、配置说明

配置内容详解

# CLAUDE.md This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

标准前缀,标识这是 Claude Code 的引导文档

项目说明

## 项目说明 **技术栈**: Spring Boot 3.5.14 + MyBatis Plus + MySQL 8.0 + Java 18

项目技术栈概述

核心命令

mvn cleaninstall-DskipTests

跳过测试编译所有模块

mvntest

运行所有测试

mvn spring-boot:run

启动 Spring Boot 应用

项目结构

rice-grain (parent) ├── common/ # 通用工具类、常量、枚举 ├── dao/ # 数据访问层 (mapper/) ├── service/ # 业务逻辑层 └── controller/ # Web 层,REST API 入口 (应用主入口)

多模块 Maven 项目结构

规范

- 接口遵循 RESTful 风格 - 统一使用 `Result<T>` 包装返回值 - 分页使用 `PageRequest` 对象

开发和设计规范


2. .claudeignore

位置:.claude/.claudeignore

作用: 排除无关文件,让 Claude Code 忽略构建产物、IDE 配置等

配置示例

# Maven 构建产物 target/ .mvn/ *.class *.jar *.war # 日志文件 *.log # IntelliJ IDEA *.iml *.iws *.ipr .idea/ # VS Code .vscode/ # Eclipse/STS .classpath .project .settings/ .apt_generated .factorypath .springBeans .sts4-cache # NetBeans nbproject/ nbbuild/ dist/ nbdist/ .nb-gradle/ build/ # 其他 node_modules/ npm-debug.log yarn-error.log

配置说明

模式说明
target/Maven 构建输出目录
*.classJava 编译产物
*.jar打包文件
*.log日志文件
.idea/IntelliJ IDEA 配置
.vscode/VS Code 配置

3. settings.json

位置:.claude/settings.json

作用: 团队共享配置,包括权限规则、Hooks 注册、MCP 服务器配置

配置示例

{"mcpServers":{"context7":{"command":"npx","args":["-y","@upstash/context7-mcp"]},"memory":{"type":"stdio","command":"npx","args":["-y","@modelcontextprotocol/server-memory"]}},"permissions":{"allow":["Bash(mvn *)","Bash(npm run dev)","Bash(npx *)","WebFetch(domain:github.com)","Bash(timeout 3 node \"~/.claude/plugins/claude-hud/dist/index.js\")"]},"hooks":{"beforeToolUse":{"Bash(rm * *)":".claude/hooks/dangerous-command-check.sh","Bash(git push --force)":".claude/hooks/pre-push-check.sh"},"afterToolUse":{"Write(*.java)":".claude/hooks/java-format.sh"},"beforeFinalResponse":{"*":".claude/hooks/unit-test-check.sh"}}}

配置说明

mcpServers
服务器说明
context7实时库/框架文档查询
memory跨会话持久化记忆
permissions.allow
规则说明
Bash(mvn *)允许所有 Maven 命令
Bash(npm run dev)允许启动开发服务器
WebFetch(domain:github.com)允许访问 GitHub
hooks
事件触发时机
beforeToolUse工具使用前
afterToolUse工具使用后
beforeFinalResponse最终响应前

4. settings.local.json

位置:.claude/settings.local.json

作用: 个人本地配置,不提交到版本库

配置示例

{"permissions":{"allow":["Bash(whoami)","Bash(cd *)","Bash(ls *)","Bash(cat *)","Read(*)","Glob(*)","Grep(*)"]},"theme":"dark","fontFamily":"JetBrains Mono"}

配置说明

配置说明
permissions.allow个人权限白名单
theme界面主题
fontFamily字体偏好

5. commands/

位置:.claude/commands/

作用: 项目级自定义命令,通过/命令名调用

示例:full-review.md

# /full-review 对当前分支进行全面代码审查: 1. 运行 `git diff main` 获取变更 2. 检查代码规范符合性 3. 检查潜在安全问题 4. 检查测试覆盖率 5. 生成审查报告

示例:api-doc.md

# /api-doc 生成 API 文档: 1. 扫描所有 `@RestController` 类 2. 提取 `@RequestMapping` 路径 3. 整理参数和响应类型 4. 输出 Markdown 格式文档

可用命令列表

命令作用
/full-review全面代码审查
/api-doc生成 API 文档
/test-coverage分析测试覆盖率

6. skills/

位置:.claude/skills/

作用: 项目级技能包,定义可复用的工作流程

示例:mybatis-generator.md

--- name: mybatis-generator description: 使用 MyBatis Plus 代码生成器创建 CRUD --- ## 步骤 1. 确认数据库连接配置 2. 选择目标表 3. 运行代码生成器 4. 生成 Entity、Mapper、Service、Controller 5. 验证生成的代码

示例:integration-test.md

--- name: integration-test description: 创建集成测试 --- ## 步骤 1. 确定测试场景 2. 准备测试数据 3. 编写 `@SpringBootTest` 测试类 4. 使用 `@MockBean` 模拟依赖 5. 验证业务逻辑

可用技能列表

技能作用
mybatis-generatorMyBatis 代码生成
integration-test集成测试创建

7. rules/

位置:.claude/rules/

作用: 编码规范,按需加载

示例:01-architecture.md

# Architecture Rules ## 模块依赖层次 **必须严格遵守:**

controller → service → dao → common

- **controller/**: REST API 端点,禁止包含业务逻辑 - **service/**: 业务逻辑实现 - **dao/**: 数据访问层,MyBatis Mapper - **common/**: 工具类、常量,禁止依赖其他模块 ## 禁止行为 - ❌ 跨层调用(Controller 直接调用 Mapper) - ❌ 循环依赖 - ❌ common 模块依赖业务模块

示例:02-api-design.md

# API Design Rules ## RESTful 规范 ### URL 设计 - 使用名词复数:`/api/users` - 避免动词:使用 HTTP 方法表达操作 - 资源层级:`/api/users/{id}/orders` ### 响应格式 - 成功:`{ "code": 200, "data": T, "message": "success" }` - 失败:`{ "code": 400, "data": null, "message": "error" }` ### 状态码 - 200: 成功 - 400: 请求参数错误 - 401: 未授权 - 403: 禁止访问 - 404: 资源不存在 - 500: 服务器内部错误

示例:03-database.md

# Database Rules ## MyBatis Plus 规范 ### Entity - 使用 `@TableName` 指定表名 - 主键使用 `@TableId(type = IdType.AUTO)` - 逻辑删除使用 `@TableLogic` ### Mapper - 继承 `BaseMapper<T>` - 自定义方法使用 XML ### 分页 - 统一使用 `PageRequest` 对象 - 返回 `Page<T>` 类型

规范文件列表

文件作用
01-architecture.md架构分层规范
02-api-design.mdAPI 设计规范
03-database.md数据库规范

8. hooks/

位置:.claude/hooks/

作用: 自动化脚本,在特定事件触发时执行

示例:dangerous-command-check.sh

#!/bin/bash# 危险命令检查COMMAND="$1"if[["$COMMAND"==*"rm -rf"*]];thenecho"⚠️ 检测到危险命令:rm -rf"echo"请确认目标目录是否在白名单中"exit1fiexit0

示例:pre-push-check.sh

#!/bin/bash# 推送前检查echo"🔍 执行推送前检查..."# 检查是否有未提交的更改if!gitdiff--quiet;thenecho"⚠️ 存在未暂存的更改,请先提交"exit1fi# 运行测试mvntest-qif[$?-ne0];thenecho"⚠️ 测试失败,请修复后推送"exit1fiecho"✅ 检查通过"exit0

示例:java-format.sh

#!/bin/bash# Java 代码格式化FILE="$1"if[["$FILE"==*.java]];thenecho"格式化:$FILE"# 调用格式化脚本fi

示例:unit-test-check.sh

#!/bin/bash# 单元测试检查echo"📋 检查新增代码的单元测试..."# 检查是否有新测试类NEW_TESTS=$(gitdiff--name-only HEAD~1|grep"*Test.java"|wc-l)if["$NEW_TESTS"-eq0];thenecho"⚠️ 未检测到新增测试"fiexit0

Hooks 脚本列表

脚本作用
dangerous-command-check.sh危险命令拦截
pre-push-check.sh推送前检查
java-format.shJava 格式化
unit-test-check.sh单元测试检查

9. memory/

位置:.claude/memory/

作用: 跨会话持久化记忆

目录结构

memory/ ├── MEMORY.md # 记忆索引 ├── user/ # 用户相关记忆 │ ├── preferences.md │ └── role.md ├── feedback/ # 反馈记忆 │ ├── coding-style.md │ └── testing.md ├── project/ # 项目相关记忆 │ ├── milestones.md │ └── decisions.md └── reference/ # 引用资源 ├── links.md └── documentation.md

MEMORY.md 示例

# 记忆索引 ## 用户记忆 - [preferences.md](user/preferences.md) — 编码偏好 - [role.md](user/role.md) — 角色信息 ## 反馈记忆 - [coding-style.md](feedback/coding-style.md) — 代码风格要求 - [testing.md](feedback/testing.md) — 测试规范 ## 项目记忆 - [milestones.md](project/milestones.md) — 项目里程碑 - [decisions.md](project/decisions.md) — 重要决策 ## 参考资源 - [links.md](reference/links.md) — 常用链接 - [documentation.md](reference/documentation.md) — 文档索引

记忆类型

类型说明
user/用户偏好、角色、知识
feedback/用户反馈、修正建议
project/项目进度、决策、事件
reference/外部资源链接

10. mcp.json

位置:.claude/mcp.json

作用: MCP 服务器配置

配置示例

{"mcpServers":{"context7":{"command":"npx","args":["-y","@upstash/context7-mcp"],"description":"实时库/框架文档"},"memory":{"type":"stdio","command":"npx","args":["-y","@modelcontextprotocol/server-memory"],"description":"持久化记忆"},"filesystem":{"command":"npx","args":["-y","@modelcontextprotocol/server-filesystem","."],"description":"文件系统访问"}}}

MCP 服务器列表

服务器作用
context7库/框架文档查询
memory跨会话记忆
filesystem文件系统访问

总结:完整文件结构

项目根目录/ ├── CLAUDE.md # 项目说明(AI 自动读取) ├── .claudeignore # 排除文件 └── .claude/ ├── settings.json # 团队配置:权限 + Hooks ├── settings.local.json # 个人配置(不提交) ├── mcp.json # MCP 服务器配置 ├── commands/ │ └── full-review.md # 自定义命令 ├── skills/ │ ├── mybatis-generator.md # 项目技能 │ └── integration-test.md ├── rules/ │ ├── 01-architecture.md # 架构规范 │ ├── 02-api-design.md # API 规范 │ └── 03-database.md # 数据库规范 ├── hooks/ │ ├── dangerous-command-check.sh │ ├── pre-push-check.sh │ ├── java-format.sh │ └── unit-test-check.sh └── memory/ ├── MEMORY.md ├── user/ ├── feedback/ ├── project/ └── reference/

文档最后更新:2026-04-29

http://www.cnnetsun.cn/news/2160097.html

相关文章:

  • 保姆级教程:为你的EtherCAT主站配置Xenomai 3.2.1实时内核(基于Ubuntu 18.04与Intel I211网卡)
  • AI 时代,SeaTunnel 调试“会配会跑” 为何远远不够?
  • Windows安卓应用安装神器:APK Installer终极使用指南
  • ComfyUI ControlNet Aux HED预处理器加载失败终极解决方案
  • 别再纠结了!用Streamlit和Gradio分别5分钟搞定一个AI应用,看完你就知道怎么选
  • DeepSeek V4:开源大模型的新突破,成本降低、能力提升但落地仍需“脚手架”
  • Sunshine终极指南:5步打造你的私人云游戏服务器
  • QTTabBar终极指南:5分钟快速配置Windows文件管理器标签页功能
  • Ubuntu 22.04/22.10网络配置踩坑记:告别过时的gateway4,手把手教你用routes配置默认网关
  • 基于MCP协议构建AI量化交易助手:零门槛整合TradingView与金融数据
  • 实证研究不发愁:71个ESG工具变量清单(含参考文献与数据来源)
  • UnityExplorer终极指南:如何在游戏运行时实时调试和修改Unity项目
  • 保姆级教程:给你的Android车机模拟器添加双屏互动测试环境(附ADB命令与配置)
  • 从TCAD到等效电路:一文讲透p-GaN HEMT电容建模的完整工作流(含模型代码思路)
  • 不可变和可变字符串
  • 走向Agent-Native!360AI知识库打通业务底座,让人与AI自然协同
  • 星途电讯 | 小米17T曝光:天玑8500+徕卡,提前杀到 游戏交易懂游宝平台化:信任与效率的重塑
  • 别让电源毁了你的项目!给Arduino供电的5个实战避坑指南(从USB到电池)
  • Windows安卓应用一键安装:告别模拟器的高效解决方案
  • Windows Terminal美化避坑指南:手把手解决Oh-My-Posh字体乱码、主题不生效问题
  • 3分钟快速上手:Windows电脑安装安卓应用的终极解决方案
  • Spring Boot 完整流程
  • 终极跨平台键鼠共享指南:如何用Lan Mouse一套设备控制多台电脑?
  • 基础知识回顾
  • 客厅落地窗双层窗帘搭配方案实用款
  • 别再手动改注册表了!用Python的winreg模块批量修改软件配置(附实战代码)
  • 如何在Windows上直接安装APK文件:告别模拟器的终极轻量级解决方案
  • MIKE IO完整指南:5分钟掌握Python水文数据处理利器
  • KISSABC伴学 英语沉浸式伴学优势深度解析
  • Vue-Excel-Editor深度解析:重新定义Web表格编辑的技术范式