概述
自定义命令允许你将常用的 prompt 模板保存为斜杠命令,在 TUI 中通过 /命令名 快速调用。这让重复性的任务变得更加高效,也方便团队共享统一的工作规范。
每个自定义命令本质上是一个 Markdown 文件,Tron 会将其内容作为 prompt 发送给 AI。你可以在命令文件中描述任何复杂的指令。
创建命令
在项目根目录的 .tron/commands/ 目录下创建 .md 文件。文件名即为命令名(不含扩展名):
mkdir -p .tron/commands
touch .tron/commands/review.md
命令格式
命令文件使用 Markdown 格式。使用 $ARGUMENTS 占位符接收用户在调用命令时传入的参数:
markdown
# .tron/commands/review.md
请对以下代码进行全面的代码审查:
$ARGUMENTS
审查要点:
1. 代码逻辑是否正确,是否存在潜在的 bug
2. 命名是否清晰,代码是否易于理解
3. 是否遵循项目编码规范
4. 性能是否有优化空间
5. 是否有安全隐患(SQL 注入、XSS 等)
6. 错误处理是否完善
请给出具体的改进建议,并对每个问题说明原因。
命令示例
以下是一些常用的自定义命令示例:
- /review:代码审查,对指定文件或代码片段进行全面审查
- /test:生成测试,为指定函数或模块自动生成单元测试
- /docs:生成文档,为代码生成 JSDoc / docstring 风格注释
- /fix:修复 bug,分析错误信息并提供修复方案
例如,创建 .tron/commands/test.md:
markdown
为 $ARGUMENTS 编写完整的单元测试。
要求:
- 使用项目中已有的测试框架(Jest / Vitest / pytest 等)
- 覆盖正常情况、边界情况和异常情况
- 测试描述应清晰说明测试场景
- 不要引入新的外部依赖
全局命令
放在 .tron/commands/ 目录下的命令只对当前项目有效。如果你希望命令在所有项目中都可用,可以将命令文件放在全局配置目录中:
bash
# 全局命令目录
~/.config/tron/commands/
# 创建全局命令示例
mkdir -p ~/.config/tron/commands
touch ~/.config/tron/commands/commit.md
全局命令和项目命令同时存在时,项目命令优先级更高。如果同名,项目命令会覆盖全局命令。
参数传递
调用命令时,在命令名后面添加空格和参数内容,Tron 会将参数替换到命令文件中的 $ARGUMENTS 占位符:
/review src/api/auth.ts
正在审查 src/api/auth.ts...
/test utils/formatDate.ts
正在为 formatDate 函数生成测试...
提示
可以在参数中使用 @文件名 语法来引用项目文件,如 /review @src/api/auth.ts,Tron 会自动读取文件内容作为上下文。