第 4 卷
markdown
--- description: "运行特定或全部测试"
argument-hint: "[test-file]"
allowed-tools: Bash(npm run:*) ---
$1 为空时将运行所有测试,否则运行指定的测试文件。
命令: !`npm run test -- $1`
6.指定特定模型
为需要特定能力的命令指定模型:
markdown
--- description: "代码复杂性分析"
model: gemini-3.1-pro ---
分析这段代码的复杂性...
常见用法场景
场景1:代码审查工作流
创建 .codebuddy/commands/code-review.md:
markdown
--- description: "对指定文件进行代码审查"
argument-hint: "[file-paths...]"
allowed-tools: Read ---
请对以下文件进行代码审查,关注代码质量、可维护性和安全性:
@$ARGUMENTS
审查要点:
- 代码风格和命名约定
- 函数复杂度
- 错误处理
- 性能考虑
- 安全隐患
场景2:自动化部署
创建 .codebuddy/commands/deploy.md:
markdown
--- description: "部署应用到指定环境"
argument-hint: "[environment] [version]"
allowed-tools: Bash(npm run:*), Bash(git:*) ---
## 部署流程
当前版本: !`cat package.json | grep version` 最近的标签: !`git describe --tags --abbrev=0`
目标环境: $1 目标版本: $2
准备部署 $2 到 $1 环境...
场景3:项目诊断
创建 .codebuddy/commands/diagnose.md:
markdown
--- description: "诊断项目状态和环境"
allowed-tools: Bash(npm list:*), Bash(git:*), Bash(node --version:*) ---
## 项目诊断报告
Node 版本: !`node --version` NPM 版本: !`npm --version` Git 状态: !`git status --short` 依赖信息: !`npm list --depth=0`
基于上述信息,为我总结项目状态并提出建议。
故障排除
命令不执行
1.检查命令文件位置
项目命令: .codebuddy/commands/*.md
全局命令: ~/.codebuddy/commands/*.md
2.检查 frontmatter 格式
确保 YAML 语法正确
如果指定了 allowed-tools,确保工具格式正确
3.检查 Shell 命令权限
如果使用了 ! 前缀执行命令,必须在 allowed-tools 中包含 Bash 工具
参数未正确替换
确保使用了正确的参数格式:
$1 , $2 , $3 用于位置参数
$ARGUMENTS 用于所有参数
在 frontmatter中正确指定了 argument-hint
文件引用不工作
1.使用绝对路径或相对于项目根目录的相对路径
2.确保路径中没有空格,或使用引号围绕完整路径
3.检查文件是否存在和可读
技巧与窍门
📝 版本控制:将项目命令提交到 Git,团队成员可以共享
🔒 权限控制:使用 allowed-tools 确保命令只使用必要的权限
- 性能:避免在 Shell命令中执行耗时操作
🎯 清晰性:使用明确的命名和描述,帮助团队理解命令的用途
最后更新: 5/27/26, 1:17 PM
上一页下一页
工具延迟加载覆盖自定义快捷键