需为项目创建专属自定义指令:一、在项目根目录建 .claude/skills/project-specific/ 目录;二、编写含 yaml 头部的 api-test.md 文件;三、用 /api-test handleorder 调用;四、通过根目录 claude.md 绑定默认指令别名;五、执行 /skills list 验证加载状态。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望 Claude 在处理某个具体项目时自动应用特定规则、格式或流程,则需要为该项目创建专属的自定义指令。以下是实现该目标的具体方法:
一、在项目根目录创建 commands 文件夹
自定义指令需存放于项目本地的 .claude/skills/ 或 .claude/commands/ 目录下,以确保 Claude Code 启动时能自动识别并加载。项目级指令优先级高于全局配置,可精准适配当前代码库结构与规范。
1、打开终端,进入项目根目录。
2、执行命令创建技能目录:mkdir -p .claude/skills/project-specific。
3、确认目录路径为:./.claude/skills/project-specific/。
二、编写带 YAML 头部的 SKILL.md 文件
YAML frontmatter 可声明指令元信息(如名称、描述、参数提示),使指令在调用时具备可发现性与上下文感知能力。Claude Code 会解析该头部并用于命令补全与执行控制。
1、在 ./.claude/skills/project-specific/ 目录中新建文件:api-test.md。
2、文件开头插入以下 YAML 头部:
---
name: api-test
description: 为当前选中的 Spring Boot Controller 方法生成 MockMvc 集成测试
argument-hint:
---
3、在 YAML 头部下方空一行,写入指令正文,例如:“请为当前打开的 Java 类中名为 $ARGUMENTS 的 @PostMapping 或 @GetMapping 方法,生成使用 MockMvc 的集成测试。要求:- 测试类放在 src/test/java 对应包路径下;- 使用 @AutoConfigureMockMvc;- 覆盖 200 和 400 状态码场景。”
三、通过 / 命令直接调用技能
完成文件保存后,无需重启或重新加载,Claude Code 会在下次会话中自动索引该技能。使用斜杠命令触发时,系统将读取对应 .md 文件内容,并将用户输入的后续文本作为 $ARGUMENTS 注入指令模板。
1、在 Claude Code 编辑器中打开一个 Spring Boot 控制器文件。
统一LLM网关 - 一个API对接70+AI模型,使用单一API密钥即可调用GPT、Claude、Gemini、Qwen、Deepseek、Grok等主流模型。
2、在聊天输入框中输入:/api-test handleOrder。
3、Claude 将自动定位到名为 handleOrder 的方法,并按 SKILL.md 中定义的规则生成完整测试代码。
四、使用 CLAUDE.md 绑定项目级默认指令
CLAUDE.md 是项目级上下文锚点文件,其中可声明默认启用的指令别名与行为偏好,使团队成员无需记忆路径即可统一调用。该文件被 Claude Code 每次启动时强制注入上下文,具有最高执行优先级。
1、在项目根目录检查是否存在 CLAUDE.md;若无,则运行 claude /init 自动生成。
2、在 CLAUDE.md 底部添加如下区块:
```yaml
default-commands:
- alias: /review
target: .claude/skills/project-specific/code-review.md
- alias: /deploy
target: .claude/skills/project-specific/deploy-checklist.md
```
3、保存后,任意会话中输入 /review 即等效于执行 .claude/skills/project-specific/code-review.md 内容。
五、验证指令是否生效
指令是否被正确加载可通过内置诊断命令快速确认。Claude Code 提供实时索引状态反馈,避免因路径错误或语法问题导致指令静默失效。
1、在任意会话中输入:/skills list。
2、观察输出中是否包含类似 project-specific/api-test (loaded) 的条目。
3、若显示 (missing) 或未列出,检查文件路径是否含空格、扩展名是否为 .md、YAML 头部是否有语法错误(如冒号后缺少空格)。










