命令
本文档详细介绍了 Qwen Code 支持的所有命令,帮助你高效管理会话、自定义界面并控制其行为。
Qwen Code 命令通过特定前缀触发,分为三类:
| 前缀类型 | 功能描述 | 典型使用场景 |
|---|---|---|
斜杠命令 (/) | Qwen Code 本身的元级控制 | 管理会话、修改设置、获取帮助 |
At 命令 (@) | 快速将本地文件内容注入对话 | 允许 AI 分析指定文件或目录下的代码 |
感叹号命令 (!) | 直接与系统 Shell 交互 | 执行 git status、ls 等系统命令 |
1. 斜杠命令 (/)
斜杠命令用于管理 Qwen Code 会话、界面和基本行为。
1.1 会话和项目管理
这些命令帮助你保存、恢复和总结工作进度。
| 命令 | 描述 | 使用示例 |
|---|---|---|
/init | 分析当前目录并创建初始上下文文件 | /init |
/summary | 基于对话历史生成项目摘要 | /summary |
/compress | 用摘要替换聊天历史以节省 Tokens | /compress |
/resume | 恢复之前的对话会话 | /resume |
/restore | 将文件恢复到工具执行前的状态 | /restore (list) 或 /restore <ID> |
1.2 界面和工作区控制
用于调整界面外观和工作环境的命令。
| 命令 | 描述 | 使用示例 |
|---|---|---|
/clear | 清除终端屏幕内容 | /clear (快捷键: Ctrl+L) |
/theme | 更改 Qwen Code 视觉主题 | /theme |
/vim | 开启/关闭输入区域的 Vim 编辑模式 | /vim |
/directory | 管理多目录支持工作区 | /dir add ./src,./tests |
/editor | 打开对话框选择支持的编辑器 | /editor |
1.3 语言设置
专门用于控制界面和输出语言的命令。
| 命令 | 描述 | 使用示例 |
|---|---|---|
/language | 查看或更改语言设置 | /language |
→ ui [language] | 设置 UI 界面语言 | /language ui zh-CN |
→ output [language] | 设置 LLM 输出语言 | /language output Chinese |
- 可用的内置 UI 语言:
zh-CN(简体中文)、en-US(英语)、ru-RU(俄语)、de-DE(德语) - 输出语言示例:
Chinese、English、Japanese等
1.4 工具和模型管理
用于管理 AI 工具和模型的命令。
| 命令 | 描述 | 使用示例 |
|---|---|---|
/mcp | 列出已配置的 MCP 服务器和工具 | /mcp, /mcp desc |
/tools | 显示当前可用的工具列表 | /tools, /tools desc |
/approval-mode | 更改工具使用的审批模式 | /approval-mode <mode (auto-edit)> --project |
→plan | 仅分析,不执行 | 安全审查 |
→default | 编辑需要审批 | 日常使用 |
→auto-edit | 自动批准编辑 | 受信任的环境 |
→yolo | 自动批准所有操作 | 快速原型开发 |
/model | 切换当前会话使用的模型 | /model |
/extensions | 列出当前会话中所有活跃的扩展 | /extensions |
/memory | 管理 AI 的指令上下文 | /memory add 重要信息 |
1.5 信息、设置和帮助
用于获取信息和执行系统设置的命令。
| 命令 | 描述 | 使用示例 |
|---|---|---|
/help | 显示可用命令的帮助信息 | /help 或 /? |
/about | 显示版本信息 | /about |
/stats | 显示当前会话的详细统计信息 | /stats |
/settings | 打开设置编辑器 | /settings |
/auth | 更改认证方式 | /auth |
/bug | 提交关于 Qwen Code 的问题 | /bug Button click unresponsive |
/copy | 将最后的输出内容复制到剪贴板 | /copy |
/quit | 立即退出 Qwen Code | /quit 或 /exit |
1.6 常用快捷键
| 快捷键 | 功能 | 备注 |
|---|---|---|
Ctrl/cmd+L | 清屏 | 等同于 /clear |
Ctrl/cmd+T | 切换工具描述 | MCP 工具管理 |
Ctrl/cmd+C×2 | 退出确认 | 安全退出机制 |
Ctrl/cmd+Z | 撤销输入 | 文本编辑 |
Ctrl/cmd+Shift+Z | 重做输入 | 文本编辑 |
2. @ 命令(引入文件)
@ 命令用于快速将本地文件或目录内容添加到对话中。
| 命令格式 | 描述 | 示例 |
|---|---|---|
@<文件路径> | 注入指定文件的内容 | @src/main.py 请解释这段代码 |
@<目录路径> | 递归读取目录中的所有文本文件 | @docs/ 总结此文档的内容 |
独立的 @ | 在讨论 @ 符号本身时使用 | @ 这个符号在编程中有什么用途? |
注意:路径中的空格需要用反斜杠转义(例如 @My\ Documents/file.txt)
3. 感叹号命令 (!) - Shell 命令执行
感叹号命令允许你在 Qwen Code 中直接执行系统命令。
| 命令格式 | 说明 | 示例 |
|---|---|---|
!<shell command> | 在子 Shell 中执行命令 | !ls -la, !git status |
独立的 ! | 切换 Shell 模式,任何输入都会直接作为 Shell 命令执行 | !(回车) → 输入命令 → !(退出) |
环境变量:通过 ! 执行的命令会设置 QWEN_CODE=1 环境变量。
4. 自定义命令
将常用的提示保存为快捷命令,以提高工作效率并确保一致性。
快速概览
| 功能 | 描述 | 优势 | 优先级 | 适用场景 |
|---|---|---|---|---|
| 命名空间 | 子目录创建冒号命名的命令 | 更好的命令组织 | ||
| 全局命令 | ~/.qwen/commands/ | 在所有项目中可用 | 低 | 个人常用命令、跨项目使用 |
| 项目命令 | <项目根目录>/.qwen/commands/ | 项目特定、可版本控制 | 高 | 团队共享、项目特定命令 |
优先级规则:项目命令 > 用户命令(命令名相同时使用项目命令)
命令命名规则
文件路径到命令名称映射表
| 文件位置 | 生成的命令 | 调用示例 |
|---|---|---|
~/.qwen/commands/test.toml | /test | /test 参数 |
<project>/git/commit.toml | /git:commit | /git:commit 消息 |
命名规则:路径分隔符(/ 或 \)转换为冒号(:)
TOML 文件格式规范
| 字段 | 必需 | 描述 | 示例 |
|---|---|---|---|
prompt | 必需 | 发送给模型的提示内容 | prompt = "请分析代码: {{args}}" |
description | 可选 | 命令描述(在 /help 中显示) | description = "代码分析工具" |
参数处理机制
| 处理方法 | 语法 | 适用场景 | 安全特性 |
|---|---|---|---|
| 上下文感知注入 | {{args}} | 需要精确的参数控制 | 自动 Shell 转义 |
| 默认参数处理 | 无特殊标记 | 简单命令、参数追加 | 按原样追加 |
| Shell 命令注入 | !{command} | 需要动态内容 | 执行前需要确认 |
1. 上下文感知注入 ({{args}})
| 场景 | TOML 配置 | 调用方法 | 实际效果 |
|---|---|---|---|
| 原始注入 | prompt = "Fix: {{args}}" | /fix "Button issue" | Fix: "Button issue" |
| 在 Shell 命令中 | prompt = "Search: !{grep {{args}} .}" | /search "hello" | 执行 grep "hello" . |
2. 默认参数处理
| 输入情况 | 处理方式 | 示例 |
|---|---|---|
| 有参数 | 追加到提示词末尾(用两个换行符分隔) | /cmd parameter → 原始提示词 + 参数 |
| 无参数 | 按原样发送提示词 | /cmd → 原始提示词 |
🚀 动态内容注入
| 注入类型 | 语法 | 处理顺序 | 目的 |
|---|---|---|---|
| 文件内容 | @{文件路径} | 首先处理 | 注入静态引用文件 |
| Shell 命令 | !{命令} | 中间处理 | 注入动态执行结果 |
| 参数替换 | {{args}} | 最后处理 | 注入用户参数 |
3. Shell 命令执行 (!{...})
| 操作 | 用户交互 |
|---|---|
| 1. 解析命令和参数 | - |
| 2. 自动 Shell 转义 | - |
| 3. 显示确认对话框 | ✅ 用户确认 |
| 4. 执行命令 | - |
| 5. 将输出注入到提示中 | - |
示例:Git Commit Message 生成
# git/commit.toml
description = "根据暂存的更改生成 Commit message"
prompt = """
请根据以下 diff 生成一个 Commit message:
diff
!{git diff --staged}
"""4. 文件内容注入 (@{...})
| 文件类型 | 支持状态 | 处理方式 |
|---|---|---|
| 文本文件 | ✅ 完全支持 | 直接注入内容 |
| 图片/PDF | ✅ 多模态支持 | 编码后注入 |
| 二进制文件 | ⚠️ 有限支持 | 可能被跳过或截断 |
| 目录 | ✅ 递归注入 | 遵循 .gitignore 规则 |
示例:代码审查命令
# review.toml
description = "基于最佳实践的代码审查"
prompt = """
审查 {{args}},参考标准:
@{docs/code-standards.md}
"""实际创建示例
”纯函数重构” 命令创建步骤表
| 操作 | 命令/代码 |
|---|---|
| 1. 创建目录结构 | mkdir -p ~/.qwen/commands/refactor |
| 2. 创建命令文件 | touch ~/.qwen/commands/refactor/pure.toml |
| 3. 编辑命令内容 | 参考下面的完整代码。 |
| 4. 测试命令 | @file.js → /refactor:pure |
description = "将代码重构为纯函数"
prompt = """
请分析当前上下文中的代码,重构为纯函数。
要求:
1. 提供重构后的代码
2. 解释关键变更和纯函数特性的实现
3. 保持函数功能不变
"""自定义命令最佳实践总结
命令设计推荐表格
| 实践要点 | 推荐做法 | 避免做法 |
|---|---|---|
| 命令命名 | 使用命名空间进行组织 | 避免过于通用的名称 |
| 参数处理 | 明确使用 {{args}} | 依赖默认追加(容易混淆) |
| 错误处理 | 利用 Shell 错误输出 | 忽略执行失败 |
| 文件组织 | 按功能在目录中组织 | 所有命令都在根目录 |
| 描述字段 | 始终提供清晰的描述 | 依赖自动生成的描述 |
安全功能提醒表
| 安全机制 | 保护效果 | 用户操作 |
|---|---|---|
| Shell 转义 | 防止命令注入 | 自动处理 |
| 执行确认 | 避免意外执行 | 对话框确认 |
| 错误报告 | 帮助诊断问题 | 查看错误信息 |
Last updated on