命令
本文档详细介绍了 Qwen Code 支持的所有命令,帮助你高效管理会话、自定义界面并控制其行为。
Qwen Code 的命令通过特定前缀触发,分为以下三类:
| 前缀类型 | 功能描述 | 典型使用场景 |
|---|---|---|
斜杠命令 (/) | 对 Qwen Code 本身的元级控制 | 管理会话、修改设置、获取帮助 |
At 命令 (@) | 快速将本地文件内容注入到对话中 | 让 AI 分析指定文件或目录下的代码 |
感叹号命令 (!) | 直接与系统 Shell 进行交互 | 执行系统命令,如 git status、ls 等 |
1. 斜杠命令 (/)
斜杠命令用于管理 Qwen Code 会话、界面和基本行为。
1.1 会话与项目管理
这些命令可帮助你保存、恢复和总结工作进度。
| 命令 | 描述 | 使用示例 |
|---|---|---|
/summary | 根据对话历史生成项目摘要 | /summary |
/compress | 用摘要替换聊天记录以节省 Token | /compress |
/restore | 将文件恢复到工具执行前的状态 | /restore(列表)或 /restore <ID> |
/init | 分析当前目录并创建初始上下文文件 | /init |
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(英语) - 输出语言示例:
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 Important Info |
1.5 信息、设置和帮助
用于获取信息和执行系统设置的命令。
| 命令 | 描述 | 使用示例 |
|---|---|---|
/help | 显示可用命令的帮助信息 | /help 或 /? |
/about | 显示版本信息 | /about |
/stats | 显示当前会话的详细统计信息 | /stats |
/settings | 打开设置编辑器 | /settings |
/auth | 更改认证方式 | /auth |
/bug | 提交关于 Qwen Code 的问题 | /bug 按钮点击无响应 |
/copy | 将上次输出内容复制到剪贴板 | /copy |
/quit-confirm | 退出前显示确认对话框 | /quit-confirm(快捷键:按两次 Ctrl+C) |
/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 参数 |
<项目>/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 提交信息生成
# git/commit.toml
description = "根据暂存的更改生成提交信息"
prompt = """
请根据以下 diff 生成一条提交信息:
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