Skip to main content
我会严格保留 Markdown 结构,只翻译可见文本内容,并保持代码/标签/属性不变。先直接完成整段翻译,再快速检查格式一致性。--- title: “斜杠命令” sidebarTitle: “斜杠命令” summary: “所有可用的斜杠命令、指令和行内快捷方式——配置、路由以及按界面的行为。” read_when:
  • 使用或配置聊天命令时
  • 调试命令路由或权限时
  • 理解技能命令如何注册时

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 —— 会立即运行,并在模型看到剩余文本之前被剥离。仅限授权发送者。
  • 指令会在模型看到消息之前从消息中剥离。
  • 仅指令消息中(消息只包含指令),它们会持久化到会话并返回确认信息。
  • 在包含其他文本的普通聊天消息中,它们作为行内提示,不会持久化会话设置。
  • 指令只适用于授权发送者。如果设置了 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.text
boolean
default:"true"
启用在聊天消息中解析 /...。在没有原生命令的界面(WhatsApp、WebChat、Signal、iMessage、Google Chat、Microsoft Teams)上,即使设为 false,文本命令也可正常工作。
commands.native
boolean | "auto"
default:"\"auto\""
注册原生命令。自动:Discord/Telegram 开启;Slack 关闭;对于不支持原生命令的提供方则忽略。可通过 channels.<provider>.commands.native 按频道覆盖。在 Discord 上,false 会跳过斜杠命令注册;之前已注册的命令可能仍会可见,直到被移除。
commands.nativeSkills
boolean | "auto"
default:"\"auto\""
在支持时以原生方式注册技能命令。自动:Discord/Telegram 开启;Slack 关闭。可通过 channels.<provider>.commands.nativeSkills 覆盖。
commands.bash
boolean
default:"false"
启用 ! <cmd> 运行主机 shell 命令(/bash <cmd> 别名)。需要 tools.elevated 允许列表。
commands.bashForegroundMs
number
default:"2000"
bash 在切换到后台模式前等待的时间(0 会立即转入后台)。
commands.config
boolean
default:"false"
启用 /config(读写 openclaw.json)。仅限 owner。
commands.mcp
boolean
default:"false"
启用 /mcp(读写 mcp.servers 下由 OpenClaw 管理的 MCP 配置)。仅限 owner。
commands.plugins
boolean
default:"false"
启用 /plugins(插件发现/状态以及安装 + 启用/禁用)。写操作仅限 owner。
commands.debug
boolean
default:"false"
启用 /debug(仅运行时配置覆盖)。仅限 owner。
commands.restart
boolean
default:"true"
启用 /restart 和 gateway 重启工具操作。
commands.ownerAllowFrom
string[]
owner-only 命令界面的显式 owner 允许列表。与 commands.allowFrom 和 DM 配对访问分开。
channels.<channel>.commands.enforceOwnerForCommands
boolean
default:"false"
每个频道:要求 owner 身份才能执行 owner-only 命令。为 true 时,发送者必须匹配 commands.ownerAllowFrom 或拥有内部 operator.admin 范围。通配符 allowFrom 条目不足以满足要求
commands.ownerDisplay
"raw" | "hash"
控制 owner id 在系统提示词中的显示方式。
commands.ownerDisplaySecret
string
commands.ownerDisplay: "hash" 时使用的 HMAC secret。
commands.allowFrom
object
按提供方划分的命令授权允许列表。配置后,它是命令和指令的唯一授权来源。使用 "*" 作为全局默认值;特定提供方的键会覆盖它。
commands.useAccessGroups
boolean
default:"true"
当未设置 commands.allowFrom 时,对命令强制执行允许列表/策略。

命令列表

Commands come from three sources:
  • Core built-ins: src/auto-reply/commands-registry.shared.ts
  • Generated dock commands: src/auto-reply/commands-registry.data.ts
  • Plugin commands: plugin registerCommand() calls
Availability depends on config flags, channel surface, and installed/enabled plugins.

Core commands

命令描述
/new [model]归档当前会话并启动一个新的会话
/reset [soft [message]]原地重置当前会话。soft 会保留对话记录,移除复用的 CLI 后端会话 id,并重新运行启动流程
/compact [instructions]压缩会话上下文。参见 Compaction
/stop中止当前运行
/session idle <duration|off>管理线程绑定的空闲过期时间
/session max-age <duration|off>管理线程绑定的最大生存期过期时间
/export-session [path]将当前会话导出为 HTML。别名:/export
/export-trajectory [path]将当前会话导出为 JSONL 轨迹包。别名:/trajectory
控制 UI 会拦截输入的 /new,以创建并切换到一个新的 仪表盘会话,除非配置了 session.dmScope: "main" 且当前父级是代理的主会话——在这种情况下,/new 会原地重置主会话。输入的 /reset 仍然会执行 Gateway 的原地重置。
命令描述
/think <level|default>设置思考级别或清除会话覆盖。别名:/thinking/t
/verbose on|off|full切换详细输出。别名:/v
/trace on|off切换当前会话的插件跟踪输出
/fast [status|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 默认值
/model [name|#|status]显示或设置模型
/models [provider] [page] [limit=<n>|all]列出已配置/已授权可用的提供方或模型
/queue <mode>管理活跃运行的队列行为。参见 QueueQueue steering
/steer <message>将指导注入当前运行。别名:/tell。参见 Steer
  • /verbose 用于调试——正常使用时请保持关闭
  • /trace 只会显示插件拥有的 trace/debug 行;正常的详细聊天内容仍保持关闭。
  • /fast on|off 会持久化一个会话覆盖;使用 Sessions UI 的 inherit 选项可清除它。
  • /fast 具有提供方特定映射:OpenAI/Codex 将其映射为 service_tier=priority;直接 Anthropic 请求将其映射为 service_tier=autostandard_only
  • /reasoning/verbose/trace 在群组场景中有风险——它们可能泄露内部推理或插件诊断信息。在群聊中请保持关闭。
  • /model 会立即将新模型持久化到会话中。
  • 如果代理处于空闲状态,下一次运行会立即使用它。
  • 如果运行正在进行,切换会被标记为待处理,并在下一次干净的重试点应用。
命令描述
/help显示简短帮助摘要
/commands显示生成的命令目录
/tools [compact|verbose]显示当前代理此刻可使用的内容
/status显示执行/运行时状态、Gateway 和系统运行时间,以及提供方用量/配额
/goal [status|start|pause|resume|complete|block|clear] ...管理当前会话的持久化 goal
/diagnostics [note]仅限 owner 的支持报告流程。每次都会请求 exec 批准
/crestodian <request>以 owner DM 身份运行 Crestodian 设置和修复助手
/tasks列出当前会话活跃/最近的后台任务
/context [list|detail|map|json]解释上下文是如何组装的
/whoami显示你的发送者 id。别名:/id
/usage off|tokens|full|cost控制每次响应的用量页脚或打印本地成本摘要
命令描述
/skill <name> [input]按名称运行一个技能
/allowlist [list|add|remove] ...管理允许列表条目。仅文本
/approve <id> <decision>处理 exec 或插件批准提示
/btw <question>在不更改会话上下文的情况下提出一个旁路问题。别名:/side。参见 BTW
命令描述
/subagents list|log|info检查当前会话的子代理运行
/acp spawn|cancel|steer|close|sessions|status|set-mode|set|cwd|permissions|timeout|model|reset-options|doctor|install|help管理 ACP 会话和运行时选项
/focus <target>将当前 Discord 线程或 Telegram 主题绑定到一个会话目标
/unfocus移除当前线程绑定
/agents列出当前会话的线程绑定代理
命令需要描述
/config show|get|set|unsetcommands.config: true读写 openclaw.json。仅限 owner
/mcp show|get|set|unsetcommands.mcp: true读写由 OpenClaw 管理的 MCP 服务器配置。仅限 owner
/plugins list|inspect|show|get|install|enable|disablecommands.plugins: true检查或修改插件状态。写操作仅限 owner。别名:/plugin
/debug show|set|unset|resetcommands.debug: true仅运行时配置覆盖。仅限 owner
/restartcommands.restart: true(默认)重启 OpenClaw
/send on|off|inheritowner设置发送策略
命令描述
/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 命令

Dock 命令会将当前会话的回复路由切换到另一个关联频道。 参见 Channel docking 了解配置和故障排查。 由支持原生命令的频道插件生成:
  • /dock-discord(别名:/dock_discord
  • /dock-mattermost(别名:/dock_mattermost
  • /dock-slack(别名:/dock_slack
  • /dock-telegram(别名:/dock_telegram
Dock 命令需要 session.identityLinks。源发送者和目标对端 必须属于同一个身份组。

内置插件命令

CommandDescription
/dreaming [on|off|status|help]切换记忆做梦。参见 Dreaming
/pair [qr|status|pending|approve|cleanup|notify]管理设备配对。参见 Pairing
/phone status|arm ...|disarm临时启用高风险手机节点命令
/voice status|list|set <voiceId>管理 Talk 语音配置。Discord 原生名称:/talkvoice
/card ...发送 LINE 富卡片预设。参见 LINE
/codex status|models|threads|resume|compact|review|diagnostics|account|mcp|skills控制 Codex app-server harness。参见 Codex harness
仅 QQBot:/bot-ping/bot-version/bot-help/bot-upgrade/bot-logs

技能命令

用户可调用的技能会以斜杠命令形式暴露:
  • /skill <name> [input] 始终作为通用入口可用。
  • 技能可以注册为直接命令(例如 OpenProse 的 /prose)。
  • 原生技能命令注册由 commands.nativeSkillschannels.<provider>.commands.nativeSkills 控制。
  • 名称会被规范化为 a-z0-9_(最多 32 个字符);冲突会追加数字后缀。
默认情况下,技能命令会作为普通请求路由到模型。技能可以声明 command-dispatch: tool,从而直接路由到某个工具 (确定性执行,不涉及模型)。示例:/prose(OpenProse 插件) —— 参见 OpenProse
当省略必需参数时,Discord 会使用自动补全来处理动态选项和按钮菜单。Telegram 和 Slack 会为具有选项的命令显示按钮菜单。动态选项会针对目标会话模型进行解析,因此像 /think 等特定于模型的选项级别会遵循会话的 /model 覆盖。

/tools — 代理现在可用的内容

/tools 回答的是一个运行时问题:这个代理在当前会话里现在能用什么 —— 不是静态配置目录。
/tools         # 紧凑视图
/tools verbose # 带简短说明
结果按会话范围生效。更换代理、通道、线程、发送者授权或模型都可能改变输出。要编辑 profile 和 override,请使用 Control UI 的 Tools 面板或配置界面。

/model — 模型选择

/model             # 显示模型选择器
/model list        # 同上
/model 3           # 从选择器中按编号选择
/model openai/gpt-5.4
/model opus@anthropic:default
/model status      # 带端点和 API 模式的详细视图
在 Discord 中,/model/models 会打开一个交互式选择器,包含 provider 和 model 下拉框。该选择器会遵循 agents.defaults.models,包括 provider/* 条目。

/config — 写入磁盘配置

仅限 owner。默认禁用——通过启用 commands.config: true 打开。
/config show
/config show messages.responsePrefix
/config get messages.responsePrefix
/config set messages.responsePrefix="[openclaw]"
/config unset messages.responsePrefix
写入前会进行配置校验。无效更改会被拒绝。/config 的更新会在重启后保留。

/mcp — MCP 服务器配置

仅限 owner。默认禁用——通过启用 commands.mcp: true 打开。
/mcp show
/mcp show context7
/mcp set context7={"command":"uvx","args":["context7-mcp"]}
/mcp unset context7
/mcp 将配置存储在 OpenClaw 配置中,而不是嵌入式代理项目设置中。

/debug — 仅运行时覆盖

仅限 owner。默认禁用——通过启用 commands.debug: true 打开。 覆盖会立即应用到新的配置读取,但不会写入磁盘。
/debug show
/debug set messages.responsePrefix="[openclaw]"
/debug set channels.whatsapp.allowFrom=["+1555","+4477"]
/debug unset messages.responsePrefix
/debug reset

/plugins — 插件管理

仅限 owner 执行写入操作。默认禁用——通过启用 commands.plugins: true 打开。
/plugins
/plugins list
/plugin show context7
/plugins enable context7
/plugins disable context7
/plugins install ./path/to/plugin
/plugins enable|disable 会更新插件配置,并为新的代理轮次热重载 Gateway 插件运行时。/plugins install 会自动重启受管控的 Gateways,因为插件源码模块发生了变化。

/trace — 插件跟踪输出

/trace          # 显示当前跟踪状态
/trace on
/trace off
/trace 会显示会话范围内的插件跟踪/调试行,而不会进入完整 verbose 模式。它不能替代 /debug(运行时覆盖)或 /verbose(正常工具输出)。

/btw — 顺便提问

/btw 是一个关于当前会话上下文的快速顺便提问。别名:/side
/btw 我们现在在做什么?
/side 在主流程继续运行时,什么发生了变化?
不同于普通消息:
  • 使用当前会话作为背景上下文。
  • 在 Codex harness 会话中,会作为一个临时的 Codex side thread 运行。
  • 不会更改未来的会话上下文。
  • 不会写入 transcript 历史。
查看 BTW side questions 了解完整行为。

界面说明

  • 文本命令: 在正常聊天会话中运行(DM 共享 main,群组有各自的会话)。
  • 原生 Discord 命令: agent:<agentId>:discord:slash:<userId>
  • 原生 Slack 命令: agent:<agentId>:slack:slash:<userId>(前缀可通过 channels.slack.slashCommand.sessionPrefix 配置)
  • 原生 Telegram 命令: telegram:slash:<userId>(通过 CommandTargetSessionKey 目标指向聊天会话)
  • /stop 会针对当前活跃聊天会话,终止当前运行。
channels.slack.slashCommand 支持单个 /openclaw 风格命令。 在 commands.native: true 时,为每个内置命令创建一个 Slack slash 命令。 注册 /agentstatus(而不是 /status),因为 Slack 保留了 /status。 文本形式的 /status 仍可在 Slack 消息中正常使用。
  • 来自允许列表发送者的仅命令消息会被立即处理(绕过队列 + 模型)。
  • 内联快捷方式(/help/commands/status/whoami)也可以嵌入普通消息中使用,并会在模型看到剩余文本之前被移除。
  • 未授权的仅命令消息会被静默忽略;内联 /... 标记会被当作普通文本处理。
  • 命令接受在命令与参数之间可选的 :/think: high/send: on)。
  • /new <model> 接受模型别名、provider/model,或 provider 名称(模糊匹配);如果没有匹配,文本会被当作消息正文。
  • /allowlist add|remove 需要 commands.config: true,并遵守通道的 configWrites

提供方使用情况和状态

  • Provider 使用量/配额(例如“Claude 还剩 80%”)会在启用使用量追踪时,显示在当前模型 provider 的 /status 中。
  • /status 中的 token/cache 行 在实时会话快照较少时,可能回退到最新的 transcript 使用条目。
  • 执行 vs 运行时: /status 会报告 Execution 表示有效的 sandbox 路径,以及 Runtime 表示当前是谁在运行会话:OpenClaw DefaultOpenAI Codex、CLI backend 或 ACP backend。
  • 每次响应的 token/成本:/usage off|tokens|full 控制。
  • /model status 关注的是模型/认证/端点,而不是使用量。

相关内容

Skills

技能 slash 命令如何注册和受限。

Creating skills

构建一个会注册自己的 slash 命令的 skill。

BTW

在不改变会话上下文的情况下提出顺便问题。

Steer

使用 /steer 在运行中引导代理。