技能
斜杠命令
Gateway 网关处理以 / 开头、作为独立消息发送的命令。
仅限主机的 bash 命令使用 ! <cmd>(/bash <cmd> 是其别名)。
当对话绑定到 ACP 会话时,普通文本会路由至 ACP
harness。Gateway 网关管理命令仍在本地处理:/acp ... 始终由
OpenClaw 命令处理器接收;只要相应界面启用了命令处理,
/status 和 /unfocus 也会留在本地处理。
三种命令类型
由 Gateway 网关处理的独立 /... 消息。它必须是消息中的
唯一内容。
/think、/fast、/verbose、/trace、/reasoning、/elevated、
/exec、/model、/queue——在模型看到消息前从中移除。单独发送时
会持久保存会话设置;与其他文本一起发送时则作为内联提示。
/help、/commands、/status、/whoami——立即运行,并在模型看到
剩余文本前从消息中移除。仅限已授权的发送者。
Directive behavior details
- 指令会在模型看到消息前从中移除。
- 在仅含指令的消息中(消息只包含指令),这些指令会 持久保存到会话,并返回确认回复。
- 在包含其他文本的普通聊天消息中,这些指令作为内联提示, 不会持久保存会话设置。
- 指令仅适用于已授权的发送者。如果设置了
commands.allowFrom, 它将是唯一使用的允许列表;否则,授权来自渠道允许列表/配对以及commands.useAccessGroups。对于未授权的发送者,指令会被视为纯文本。
配置
{ commands: { native: "auto", nativeSkills: "auto", text: true, bash: false, bashForegroundMs: 2000, config: false, mcp: false, plugins: false, debug: false, restart: true, ownerAllowFrom: ["discord:123456789012345678"], ownerDisplay: "raw", ownerDisplaySecret: "${OWNER_ID_HASH_SECRET}", allowFrom: { "*": ["user1"], discord: ["user:123"], }, useAccessGroups: true, },}commands.textbooleandefault: true启用对聊天消息中 /... 的解析。在不支持原生命令的界面
(WhatsApp、WebChat、Signal、iMessage、Google Chat、Microsoft Teams)上,
即使设置为 false,文本命令仍然有效。
commands.nativeboolean | "auto"default: "auto"注册原生命令。自动模式:Discord/Telegram 启用;Slack 禁用;
对不支持原生命令的提供商忽略此设置。可通过
channels.<provider>.commands.native 按渠道覆盖。在 Discord 上,false
会跳过斜杠命令注册;此前注册的命令可能会一直显示,直至被移除。
commands.nativeSkillsboolean | "auto"default: "auto"在支持时以原生方式注册 Skills 命令。自动模式:
Discord/Telegram 启用;Slack 禁用。可通过
channels.<provider>.commands.nativeSkills 覆盖。
commands.bashbooleandefault: false启用 ! <cmd> 以运行主机 shell 命令(别名为 /bash <cmd>)。需要配置
tools.elevated 允许列表。
commands.bashForegroundMsnumberdefault: 2000bash 在切换至后台模式前的等待时长(0 表示
立即转入后台)。
commands.configbooleandefault: false启用 /config(读取/写入 openclaw.json)。仅限所有者。
commands.mcpbooleandefault: false启用 /mcp(读取/写入 mcp.servers 下由 OpenClaw 管理的 MCP 配置)。仅限所有者。
commands.pluginsbooleandefault: false启用 /plugins(插件发现/状态以及安装、启用/禁用)。写入操作仅限所有者。
commands.debugbooleandefault: false启用 /debug(仅运行时配置覆盖)。仅限所有者。
commands.restartbooleandefault: true启用 /restart 和 Gateway 网关重启工具操作。
commands.ownerAllowFromstring[]面向仅限所有者命令界面的显式所有者允许列表。它与
commands.allowFrom 和私信配对访问权限相互独立。
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9ImNoYW5uZWxzLjxjaGFubmVs
.commands.enforceOwnerForCommands" type="boolean" default="false">
按渠道设置:要求仅限所有者的命令使用所有者身份。当设为 true 时,
发送者必须匹配 commands.ownerAllowFrom,或拥有内部 operator.admin
权限范围。allowFrom 中的通配符条目不足以满足要求。
commands.ownerDisplay"raw" | "hash"控制所有者 ID 在系统提示词中的显示方式。
commands.ownerDisplaySecretstring当 commands.ownerDisplay: "hash" 时使用的 HMAC 密钥。
commands.allowFromobject用于命令授权的按提供商允许列表。配置后,它将成为命令和指令的
唯一授权来源。使用 "*" 设置全局默认值;提供商特定的键会覆盖该值。
commands.useAccessGroupsbooleandefault: true未设置 commands.allowFrom 时,对命令强制执行允许列表和策略。
命令列表
命令来自三个来源:
- 核心内置命令:
src/auto-reply/commands-registry.shared.ts - 生成的 Dock 命令:
src/auto-reply/commands-registry.data.ts - **插件命令:**插件中的
registerCommand()调用
可用性取决于配置标志、渠道界面以及已安装并启用的 插件。
核心命令
会话和运行
| 命令 | 描述 |
|---|---|
/new [model] |
归档当前会话并开始一个新会话 |
/reset [soft [message]] |
原位重置当前会话。soft 会保留对话记录,丢弃复用的 CLI 后端会话 ID,并重新运行启动流程 |
/name <title> |
命名或重命名当前会话。省略标题可查看当前名称和建议名称 |
/compact [instructions] |
压缩会话上下文。请参阅压缩 |
/stop |
中止当前运行 |
/session idle <duration|off> |
管理线程绑定的空闲过期时间 |
/session max-age <duration|off> |
管理线程绑定的最长存续期 |
/export-session [path] |
将当前会话导出为 HTML。别名:/export |
/export-trajectory [path] |
为当前会话导出 JSONL 轨迹包。别名:/trajectory |
模型和运行控制
| 命令 | 描述 |
|---|---|
/think <level|default> |
设置思考级别或清除会话覆盖设置。别名:/thinking、/t |
/verbose on|off|full |
切换详细输出。别名:/v |
/trace on|off |
切换当前会话的插件跟踪输出 |
/fast [status|auto|on|off|default] |
显示、设置或清除快速模式 |
/reasoning [on|off|stream] |
切换推理过程的可见性。别名:/reason |
/elevated [on|off|ask|full] |
切换提升权限模式。别名:/elev |
/exec host=<auto|sandbox|gateway|node> security=<deny|allowlist|full> ask=<off|on-miss|always> node=<id> |
显示或设置 Exec 默认值 |
/login [codex|openai|openai-codex] |
从私聊或 Web UI 会话配对 Codex/OpenAI 登录。仅限所有者/管理员 |
/model [name|#|status] |
显示或设置模型 |
/models [provider] [page] [limit=<n>|all] |
列出已配置或可通过身份验证使用的提供商或模型 |
/queue <mode> |
管理活动运行的队列行为。请参阅队列和队列引导 |
/steer <message> |
向活动运行注入指导。别名:/tell。请参阅 Steer |
verbose / trace / fast / reasoning 安全性
/verbose用于调试——正常使用时请保持关闭。/trace只会显示插件自身的跟踪/调试行;常规详细信息仍保持关闭。/fast auto|on|off会持久保存会话覆盖设置;使用会话 UI 中的inherit选项将其清除。/fast因提供商而异:OpenAI/Codex 会将其映射为service_tier=priority;直接向 Anthropic 发出的请求会将其映射为service_tier=auto或standard_only。/reasoning、/verbose和/trace在群组环境中存在风险——它们可能会泄露内部推理过程或插件诊断信息。在群聊中请将其保持关闭。
模型切换详情
/model会立即将新模型持久化到会话中。- 如果智能体处于空闲状态,下一次运行会立即使用该模型。
- 如果运行正在进行,切换会被标记为待处理,并在下一个可安全重试的节点应用。
设备发现和状态
| 命令 | 说明 |
|---|---|
/help |
显示简短的帮助摘要 |
/commands |
显示生成的命令目录 |
/tools [compact|verbose] |
显示当前智能体此刻可使用的内容 |
/status |
显示执行/运行时状态、Gateway 网关和系统运行时间、插件健康状况,以及提供商用量/配额 |
/status plugins |
显示详细的插件健康状况:加载错误、隔离状态、渠道插件故障、依赖问题和兼容性通知。需要启用 commands.plugins: true |
/goal [status|start|edit|pause|resume|complete|block|clear] ... |
管理当前会话的持久化目标 |
/diagnostics [note] |
仅所有者可用的支持报告流程。每次都会请求 Exec 审批 |
/crestodian <request> |
从所有者私信中运行 Crestodian 设置和修复助手 |
/tasks |
列出当前会话中正在运行或最近运行的后台任务 |
/context [list|detail|map|json] |
说明上下文的组装方式 |
/whoami |
显示你的发送者 ID。别名:/id |
/usage off|tokens|full|reset|cost |
控制每次响应的用量页脚(reset/inherit/clear/default 会清除会话覆盖设置,以重新继承已配置的默认值),或输出本地费用摘要 |
Skills、允许列表和审批
| 命令 | 说明 |
|---|---|
/skill <name> [input] |
按名称运行 Skill |
/learn [request] |
通过 Skill Workshop,根据当前对话或指定来源起草一个可供审查的 Skill |
/allowlist [list|add|remove] ... |
管理允许列表条目。仅支持文本 |
/approve <id> <decision> |
处理 Exec 或插件审批提示 |
/btw <question> |
在不更改会话上下文的情况下提出旁支问题。别名:/side。参见 BTW |
子智能体和 ACP
| 命令 | 说明 |
|---|---|
/subagents list|log|info |
检查当前会话的子智能体运行记录 |
/acp spawn|cancel|steer|close|sessions|status|set-mode|set|cwd|permissions|timeout|model|reset-options|doctor|install|help |
管理 ACP 会话和运行时选项。运行时控制需要外部所有者身份或内部 Gateway 网关管理员身份 |
/focus <target> |
将当前 Discord 线程或 Telegram 话题绑定到会话目标 |
/unfocus |
移除当前线程绑定 |
/agents |
列出当前会话中已绑定线程的智能体 |
仅限所有者的写入和管理操作
| 命令 | 要求 | 说明 |
|---|---|---|
/config show|get|set|unset |
commands.config: true |
读取或写入 openclaw.json。仅限所有者 |
/mcp show|get|set|unset |
commands.mcp: true |
读取或写入由 OpenClaw 管理的 MCP 服务器配置。仅限所有者 |
/plugins list|inspect|show|get|install|enable|disable |
commands.plugins: true |
检查或更改插件状态。写入操作仅限所有者。别名:/plugin |
/debug show|set|unset|reset |
commands.debug: true |
仅作用于运行时的配置覆盖。仅限所有者 |
/restart |
commands.restart: true(默认) |
重启 OpenClaw |
/send on|off|inherit |
所有者 | 设置发送策略 |
语音、TTS 和渠道控制
| 命令 | 说明 |
|---|---|
/tts on|off|status|chat|latest|provider|limit|summary|audio|help |
控制 TTS。参阅 TTS |
/activation mention|always |
设置群组激活模式 |
/bash <command> |
运行宿主机 Shell 命令。别名:! <command>。需要 commands.bash: true |
!poll [sessionId] |
检查后台 Bash 作业 |
!stop [sessionId] |
停止后台 Bash 作业 |
停靠命令
停靠命令会将活动会话的回复路由切换到另一个已关联的渠道。 有关设置和故障排除,请参阅渠道停靠。
由支持原生命令的渠道插件生成:
/dock-discord(别名:/dock_discord)/dock-mattermost(别名:/dock_mattermost)/dock-slack(别名:/dock_slack)/dock-telegram(别名:/dock_telegram)
停靠命令需要 session.identityLinks。来源发送者和目标对等方
必须位于同一个身份组中。
内置插件命令
| 命令 | 说明 |
|---|---|
/dreaming [on|off|status|help] |
开启或关闭记忆梦境功能(所有者或 Gateway 网关管理员)。参阅 Dreaming |
/pair [qr|status|pending|approve|cleanup|notify] |
管理设备配对。参阅配对 |
/phone status|arm ...|disarm |
临时启用高风险节点命令(摄像头/屏幕/计算机/写入)。参阅计算机使用 |
/voice status|list|set <voiceId> |
管理 Talk 模式语音配置。Discord 原生命令名称:/talkvoice |
/card ... |
发送 LINE 富卡片预设。参阅 LINE |
/codex <action> ... |
绑定、引导并检查 Codex 应用服务器 Codex harness(状态、线程、恢复、模型、快速模式、权限、压缩、审查、MCP、Skills 等)。参阅 Codex harness |
仅限 QQ Bot:/bot-ping、/bot-version、/bot-help、/bot-upgrade、/bot-logs
Skills 命令
用户可调用的 Skills 会作为斜杠命令公开:
/skill <name> [input]始终可用作通用入口点。- Skills 可以注册为直接命令(例如 OpenProse 的
/prose)。 - 原生 Skills 命令注册由
commands.nativeSkills和channels.<provider>.commands.nativeSkills控制。 - 名称会被清理为
a-z0-9_(最多 32 个字符);发生冲突时会添加数字后缀。
Skills 命令分派
默认情况下,Skills 命令会作为普通请求路由到模型。
Skills 可以声明 command-dispatch: tool,以便直接路由到工具
(确定性执行,不涉及模型)。示例:/prose(OpenProse 插件)
— 参阅 OpenProse。
原生命令参数
当省略必需参数时,Discord 会为动态选项使用自动补全和按钮菜单。
Telegram 和 Slack 会为包含选项的命令显示按钮菜单。动态选项会根据
目标会话模型解析,因此 /think 级别等模型特定选项会遵循会话的
/model 覆盖设置。
/tools:智能体当前可以使用什么
/tools 回答的是一个运行时问题:在此对话中,这个智能体目前可以使用什么
,而不是静态配置目录。
/tools # 紧凑视图/tools verbose # 包含简短说明结果限定于当前会话。更改智能体、渠道、线程、发送者授权或模型 都可能改变输出。如需编辑配置档案和覆盖设置,请使用 Control UI 的 Tools 面板或配置界面。
/model:模型选择
/model # 显示模型选择器/model list # 同上/model 3 # 按选择器中的编号选择/model openai/gpt-5.4/model opus@anthropic:default/model default # 清除会话模型选择/model status # 显示包含端点和 API 模式的详细视图在 Discord 上,/model 和 /models 会打开一个包含提供商和
模型下拉列表的交互式选择器。该选择器遵循 agents.defaults.models,
包括 provider/* 条目。
/config:磁盘配置写入
/config show/config show messages.responsePrefix/config get messages.responsePrefix/config set messages.responsePrefix="[openclaw]"/config unset messages.responsePrefix写入前会验证配置。无效的更改会被拒绝。/config
更新在重启后仍会保留。
/mcp:MCP 服务器配置
/mcp show/mcp show context7/mcp set context7={"command":"uvx","args":["context7-mcp"]}/mcp unset context7/mcp 将配置存储在 OpenClaw 配置中,而不是嵌入式智能体的项目设置中。
/mcp show 会遮盖包含凭据的字段、已识别的凭据标志值
和已知具有密钥格式的参数。在群组中运行时,
配置会通过私信发送给所有者;如果没有可用的所有者私信路由,
命令将以安全关闭方式失败,并要求所有者在私聊中重试。
/debug:仅作用于运行时的覆盖设置
/debug show/debug set messages.responsePrefix="[openclaw]"/debug set channels.whatsapp.allowFrom=["+1555","+4477"]/debug unset messages.responsePrefix/debug reset/plugins:插件管理
/plugins/plugins list/plugin show context7/plugins enable context7/plugins disable context7/plugins install ./path/to/plugin/plugins enable|disable 会更新插件配置,并热重载 Gateway 网关
插件运行时,以用于新的智能体轮次。由于插件源模块发生了变化,
/plugins install 会自动重启托管的 Gateway 网关。
/trace:插件跟踪输出
/trace # 显示当前跟踪状态/trace on/trace off/trace 无需启用完整详细模式,即可显示限定于当前会话的插件跟踪/调试行。
它不能替代 /debug(运行时覆盖设置)或 /verbose(常规工具输出)。
/btw:附带问题
/btw 用于快速询问与当前会话上下文相关的附带问题。别名:/side。
/btw 我们现在正在做什么?/side 主运行继续期间发生了哪些变化?与普通消息不同:
- 使用当前会话作为背景上下文。
- 在 Codex harness 会话中,作为临时 Codex 附属线程运行。
- 不会更改后续会话上下文。
- 不会写入对话记录历史。
有关完整行为,请参阅 BTW 附带问题。
界面说明
各界面的会话范围
- **文本命令:**在普通聊天会话中运行(私信共享
main,群组拥有各自的会话)。 - Discord 原生命令:
agent:<agentId>:discord:slash:<userId> - Slack 原生命令:
agent:<agentId>:slack:slash:<userId>(可通过channels.slack.slashCommand.sessionPrefix配置前缀) - Telegram 原生命令:
telegram:slash:<userId>(通过CommandTargetSessionKey定位聊天会话) /login codex仅通过私聊或 Web UI 响应路径发送设备配对码。从 Telegram 群组/话题调用时,会要求所有者改为私信机器人。/stop以活动聊天会话为目标,中止当前运行。
Slack 特有说明
channels.slack.slashCommand 支持单个 /openclaw 风格的命令。
启用 commands.native: true 后,为每个内置命令创建一个 Slack 斜杠命令。
请注册 /agentstatus(而不是 /status),因为 Slack 保留了
/status。文本命令 /status 在 Slack 消息中仍然有效。
快速路径和内联快捷方式
- 来自允许列表中发送者的纯命令消息会被立即处理(绕过队列和模型)。
- 内联快捷方式(
/help、/commands、/status、/whoami)也可以嵌入普通消息中使用,并会在模型看到剩余文本之前被移除。 - 未经授权的纯命令消息会被静默忽略;内联
/...标记会被视为纯文本。
参数说明
- 命令和参数之间可使用可选的
:(/think: high、/send: on)。 /new <model>接受模型别名、provider/model或提供商名称(模糊匹配);如果没有匹配项,该文本会被视为消息正文。/allowlist add|remove需要commands.config: true,并遵循渠道的configWrites设置。
提供商使用情况和状态
- 提供商用量/配额(例如“Claude 剩余 80%”)会在启用用量跟踪时,显示在当前模型提供商的
/status中。 - 当实时会话快照信息不完整时,
/status中的令牌/缓存行可以回退到最新的对话记录用量条目。 - 执行与运行时:
/status使用Execution报告实际生效的沙箱路径,并使用Runtime报告会话的运行方:OpenClaw Default、OpenAI Codex、CLI 后端或 ACP 后端。 - **每次响应的令牌数/费用:**由
/usage off|tokens|full控制。 /model status提供模型/身份验证/端点信息,不提供用量信息。