Skip to content

CodeBuddy Code 斜杠命令 (Slash Commands)

CodeBuddy Code 支持斜杠命令,允许您在聊天中执行特殊操作、管理会话以及自定义常用工作流。

内置斜杠命令 (Built-in Slash Commands)

这些命令用于管理您的 CodeBuddy Code 会话。以下是当前的支持情况:

命令CodeBuddy 支持情况描述
/help✅ 支持显示帮助信息,并提供反馈渠道的指引。
/clear✅ 支持清除当前对话的上下文历史记录,开始一个新的对话。
/login✅ 支持登录到您的云开发环境。
/logout✅ 支持退出当前的云开发环境。
/doctor✅ 支持检查 CodeBuddy Code 的状态和环境。
/status✅ 支持显示当前仓库和会话的状态。
/add-dir✅ 支持提示时添加目录内容。
/agents✅ 支持管理实验性 AI 智能体
/compact✅ 支持压缩上下文。
/config✅ 支持查看或修改本地配置。
/cost✅ 支持显示会话的成本和 Token 使用情况。
/init✅ 支持初始化一个新的 CodeBuddy 存储库。
/mcp✅ 支持管理 MCP 连接。
/memory✅ 支持管理长期记忆
/model✅ 支持切换或查看当前使用的 AI 模型。
/permissions✅ 支持管理工具权限和工作区目录访问权限。
/upgrade✅ 支持在浏览器中打开升级页面,查看高级功能和订阅选项。
/bashes✅ 支持列出和管理后台任务。

自定义斜杠命令 (Custom Slash Commands)

这是 CodeBuddy Code 最强大的功能之一。您可以将常用的提示(Prompts)、脚本和工作流封装成可复用的自定义命令,从而极大地提升效率。

创建自定义命令

自定义命令通过在特定目录中创建 .md (Markdown) 文件来定义。

  1. 项目级命令: 在您的项目根目录下创建 .codebuddy/commands/ 文件夹。此处的命令对所有项目协作者可用。
  2. 个人全局命令: 在您的用户主目录下创建 ~/.codebuddy/commands/ 文件夹。此处的命令在您所有的项目中都可用。

创建一个命令,只需在上述任一目录中添加一个 .md 文件即可。例如,test.md 文件会自动注册为 /test 命令。

子目录中的命令命名

您可以在 commands/ 目录下创建子目录来组织您的命令。子目录中的命令会使用冒号分隔的层级命名结构:

  • commands/test.md/test
  • commands/frontend/build.md/frontend:build
  • commands/backend/deploy/staging.md/backend:deploy:staging

这种命名方式让您可以:

  • 按功能模块组织命令(如 frontendbackenddatabase 等)
  • 创建层级化的命令结构
  • 避免命名冲突,提高命令的可维护性

Frontmatter 与元数据

您可以在 Markdown 文件的顶部使用 YAML Frontmatter 来定义命令的元数据。

markdown
---
description: "为我的项目运行单元测试并报告结果。"
argument-hint: "[test-file]"
---

请为我运行 `npm run test -- [test-file]` 命令,并总结测试结果。如果未提供测试文件,则运行所有测试。

支持的元数据字段:

  • description: 命令的简短描述,会在自动补全提示中显示。
  • argument-hint: 描述命令需要的参数,为用户提供输入提示。

使用参数

您的自定义命令可以接收参数,就像 Shell 脚本一样。

  • $1, $2, $3, ...: 按位置访问单个参数。

示例: greet.md

markdown
---
description: "发送一个可定制的问候。"
argument-hint: "[name]"
---

**$1** 说"你好!"。如果 $1 为空,则向"世界"问好。
  • 调用 /greet "CodeBuddy" 时,$1 的值就是 "CodeBuddy"

执行 Shell 命令

在命令的任何一行前面加上 ! 前缀,命令用反引号包围,该行就会被当作 Shell 命令执行,其输出 (stdout) 会被捕获并注入到上下文中,供 AI 后续分析。

示例: status.md

markdown
---
description: "显示当前的 git 仓库状态并进行分析。"
---

!`git status`

请基于上面的 `git status` 输出,为我总结当前分支的状况。