Slash commands
Các lệnh được xử lý bởi Gateway. Hầu hết các lệnh phải được gửi dưới dạng tin nhắn độc lập bắt đầu bằng /.
Lệnh bash chat chỉ dành cho host sử dụng cú pháp ! <cmd> (với /bash <cmd> là alias).
Có hai hệ thống liên quan:
- Commands: tin nhắn độc lập dạng
/.... - Directives:
/think,/verbose,/reasoning,/elevated,/exec,/model,/queue.- Directives được loại bỏ khỏi tin nhắn trước khi model nhìn thấy.
- Trong tin nhắn chat thông thường (không chỉ có directive), chúng được xử lý như “inline hints” và không lưu cài đặt session.
- Trong tin nhắn chỉ có directive (tin nhắn chỉ chứa directives), chúng được lưu vào session và trả về xác nhận.
- Directives chỉ được áp dụng cho người gửi được ủy quyền (channel allowlists/pairing cộng với
commands.useAccessGroups). Người gửi không được ủy quyền sẽ thấy directives được xử lý như văn bản thông thường.
Ngoài ra còn có một số inline shortcuts (chỉ dành cho người gửi được allowlist/ủy quyền): /help, /commands, /status, /whoami (/id).
Chúng chạy ngay lập tức, được loại bỏ trước khi model nhìn thấy tin nhắn, và phần văn bản còn lại tiếp tục qua luồng xử lý bình thường.
Config
{
commands: {
native: "auto",
nativeSkills: "auto",
text: true,
bash: false,
bashForegroundMs: 2000,
config: false,
debug: false,
restart: false,
useAccessGroups: true,
},
}
commands.text(mặc địnhtrue) bật phân tích cú pháp/...trong tin nhắn chat.- Trên các nền tảng không có native commands (WhatsApp/WebChat/Signal/iMessage/Google Chat/MS Teams), text commands vẫn hoạt động ngay cả khi các bạn đặt giá trị này thành
false.
- Trên các nền tảng không có native commands (WhatsApp/WebChat/Signal/iMessage/Google Chat/MS Teams), text commands vẫn hoạt động ngay cả khi các bạn đặt giá trị này thành
commands.native(mặc định"auto") đăng ký native commands.- Auto: bật cho Discord/Telegram; tắt cho Slack (cho đến khi các bạn thêm slash commands); bỏ qua cho các provider không hỗ trợ native.
- Đặt
channels.discord.commands.native,channels.telegram.commands.native, hoặcchannels.slack.commands.nativeđể ghi đè cho từng provider (bool hoặc"auto"). falsexóa các lệnh đã đăng ký trước đó trên Discord/Telegram khi khởi động. Slack commands được quản lý trong Slack app và không tự động xóa.
commands.nativeSkills(mặc định"auto") đăng ký skill commands dưới dạng native khi được hỗ trợ.- Auto: bật cho Discord/Telegram; tắt cho Slack (Slack yêu cầu tạo một slash command cho mỗi skill).
- Đặt
channels.discord.commands.nativeSkills,channels.telegram.commands.nativeSkills, hoặcchannels.slack.commands.nativeSkillsđể ghi đè cho từng provider (bool hoặc"auto").
commands.bash(mặc địnhfalse) bật! <cmd>để chạy lệnh shell trên host (/bash <cmd>là alias; yêu cầutools.elevatedallowlists).commands.bashForegroundMs(mặc định2000) kiểm soát thời gian bash chờ trước khi chuyển sang chế độ background (0chuyển background ngay lập tức).commands.config(mặc địnhfalse) bật/config(đọc/ghiopenclaw.json).commands.debug(mặc địnhfalse) bật/debug(ghi đè chỉ trong runtime).commands.useAccessGroups(mặc địnhtrue) áp dụng allowlists/policies cho các lệnh.
Danh sách lệnh
Text + native (khi được bật):
/help/commands/skill <name> [input](chạy một skill theo tên)/status(hiển thị trạng thái hiện tại; bao gồm provider usage/quota cho model provider hiện tại khi có sẵn)/allowlist(liệt kê/thêm/xóa các mục allowlist)/approve <id> allow-once|allow-always|deny(giải quyết các prompt phê duyệt exec)/context [list|detail|json](giải thích “context”;detailhiển thị kích thước per-file + per-tool + per-skill + system prompt)/whoami(hiển thị sender id của bạn; alias:/id)/subagents list|stop|log|info|send(kiểm tra, dừng, log, hoặc gửi tin nhắn đến các sub-agent runs cho session hiện tại)/config show|get|set|unset(lưu config vào disk, chỉ owner; yêu cầucommands.config: true)/debug show|set|unset|reset(ghi đè runtime, chỉ owner; yêu cầucommands.debug: true)/usage off|tokens|full|cost(footer usage cho mỗi response hoặc tóm tắt chi phí local)/tts off|always|inbound|tagged|status|provider|limit|summary|audio(điều khiển TTS; xem /tts)- Discord: native command là
/voice(Discord dành riêng/tts); text/ttsvẫn hoạt động.
- Discord: native command là
/stop/restart/dock-telegram(alias:/dock_telegram) (chuyển replies sang Telegram)/dock-discord(alias:/dock_discord) (chuyển replies sang Discord)/dock-slack(alias:/dock_slack) (chuyển replies sang Slack)/activation mention|always(chỉ groups)/send on|off|inherit(chỉ owner)/resethoặc/new [model](gợi ý model tùy chọn; phần còn lại được truyền qua)/think <off|minimal|low|medium|high|xhigh>(lựa chọn động theo model/provider; aliases:/thinking,/t)/verbose on|full|off(alias:/v)/reasoning on|off|stream(alias:/reason; khi bật, gửi một tin nhắn riêng có tiền tốReasoning:;stream= chỉ Telegram draft)/elevated on|off|ask|full(alias:/elev;fullbỏ qua exec approvals)/exec host=<sandbox|gateway|node> security=<deny|allowlist|full> ask=<off|on-miss|always> node=<id>(gửi/execđể hiển thị hiện tại)/model <name>(alias:/models; hoặc/<alias>từagents.defaults.models.*.alias)/queue <mode>(cộng với các tùy chọn nhưdebounce:2s cap:25 drop:summarize; gửi/queueđể xem cài đặt hiện tại)/bash <command>(chỉ host; alias cho! <command>; yêu cầucommands.bash: true+tools.elevatedallowlists)
Chỉ text:
/compact [instructions](xem /concepts/compaction)! <command>(chỉ host; một lần một lệnh; dùng!poll+!stopcho các job chạy lâu)!poll(kiểm tra output / status; chấp nhậnsessionIdtùy chọn;/bash pollcũng hoạt động)!stop(dừng bash job đang chạy; chấp nhậnsessionIdtùy chọn;/bash stopcũng hoạt động)
Lưu ý:
- Các lệnh chấp nhận dấu
:tùy chọn giữa lệnh và args (ví dụ:/think: high,/send: on,/help:). /new <model>chấp nhận model alias,provider/model, hoặc tên provider (fuzzy match); nếu không khớp, văn bản được xử lý như nội dung tin nhắn.- Để xem chi tiết provider usage breakdown, dùng
openclaw status --usage. /allowlist add|removeyêu cầucommands.config=truevà tuân theo channelconfigWrites./usageđiều khiển footer usage cho mỗi response;/usage costin tóm tắt chi phí local từ OpenClaw session logs./restartbị tắt mặc định; đặtcommands.restart: trueđể bật./verbosedùng để debug và tăng khả năng hiển thị; giữ tắt trong sử dụng bình thường./reasoning(và/verbose) có rủi ro trong cài đặt group: chúng có thể tiết lộ reasoning nội bộ hoặc tool output mà các bạn không có ý định để lộ. Nên để tắt, đặc biệt trong group chats.- Fast path: tin nhắn chỉ có lệnh từ người gửi được allowlist được xử lý ngay lập tức (bypass queue + model).
- Group mention gating: tin nhắn chỉ có lệnh từ người gửi được allowlist bypass yêu cầu mention.
- Inline shortcuts (chỉ người gửi được allowlist): một số lệnh nhất định cũng hoạt động khi được nhúng trong tin nhắn thông thường và được loại bỏ trước khi model nhìn thấy văn bản còn lại.
- Ví dụ:
hey /statuskích hoạt status reply, và văn bản còn lại tiếp tục qua luồng xử lý bình thường.
- Ví dụ:
- Hiện tại:
/help,/commands,/status,/whoami(/id). - Tin nhắn chỉ có lệnh không được ủy quyền bị bỏ qua im lặng, và các token inline
/...được xử lý như văn bản thông thường. - Skill commands: các skills
user-invocableđược hiển thị dưới dạng slash commands. Tên được làm sạch thànha-z0-9_(tối đa 32 ký tự); xung đột nhận hậu tố số (ví dụ:_2)./skill <name> [input]chạy một skill theo tên (hữu ích khi giới hạn native command ngăn các lệnh per-skill).- Mặc định, skill commands được chuyển tiếp đến model như một request bình thường.
- Skills có thể tùy chọn khai báo
command-dispatch: toolđể định tuyến lệnh trực tiếp đến một tool (deterministic, không có model). - Ví dụ:
/prose(OpenProse plugin) — xem OpenProse.
- Native command arguments: Discord sử dụng autocomplete cho các tùy chọn động (và button menus khi các bạn bỏ qua args bắt buộc). Telegram và Slack hiển thị button menu khi một lệnh hỗ trợ lựa chọn và các bạn bỏ qua arg.
Usage surfaces (hiển thị ở đâu)
- Provider usage/quota (ví dụ: “Claude 80% left”) hiển thị trong
/statuscho model provider hiện tại khi usage tracking được bật. - Per-response tokens/cost được điều khiển bởi
/usage off|tokens|full(được thêm vào các replies bình thường). /model statuslà về models/auth/endpoints, không phải usage.
Chọn model (/model)
/model được triển khai như một directive.
Ví dụ:
/model
/model list
/model 3
/model openai/gpt-5.2
/model opus@anthropic:default
/model status
Lưu ý:
/modelvà/model listhiển thị một picker nhỏ gọn, được đánh số (model family + các providers có sẵn)./model <#>chọn từ picker đó (và ưu tiên provider hiện tại khi có thể)./model statushiển thị chế độ xem chi tiết, bao gồm provider endpoint đã cấu hình (baseUrl) và API mode (api) khi có sẵn.
Debug overrides
/debug cho phép các bạn đặt các ghi đè config chỉ trong runtime (memory, không phải disk). Chỉ owner. Bị tắt mặc định; bật với commands.debug: true.
Ví dụ:
/debug show
/debug set messages.responsePrefix="[openclaw]"
/debug set channels.whatsapp.allowFrom=["+1555","+4477"]
/debug unset messages.responsePrefix
/debug reset
Lưu ý:
- Các ghi đè áp dụng ngay lập tức cho các lần đọc config mới, nhưng không ghi vào
openclaw.json. - Dùng
/debug resetđể xóa tất cả các ghi đè và quay lại config trên disk.
Cập nhật config
/config ghi vào config trên disk của các bạn (openclaw.json). Chỉ owner. Bị tắt mặc định; bật với commands.config: true.
Ví dụ:
/config show
/config show messages.responsePrefix
/config get messages.responsePrefix
/config set messages.responsePrefix="[openclaw]"
/config unset messages.responsePrefix
Lưu ý:
- Config được xác thực trước khi ghi; các thay đổi không hợp lệ bị từ chối.
- Các cập nhật
/configđược lưu qua các lần khởi động lại.
Ghi chú về Surface
- Text commands chạy trong session chat bình thường (DMs chia sẻ
main, groups có session riêng). - Native commands sử dụng các sessions riêng biệt:
- Discord:
agent:<agentId>:discord:slash:<userId> - Slack:
agent:<agentId>:slack:slash:<userId>(prefix có thể cấu hình quachannels.slack.slashCommand.sessionPrefix) - Telegram:
telegram:slash:<userId>(nhắm đến chat session quaCommandTargetSessionKey)
- Discord:
/stopnhắm đến active chat session để có thể hủy run hiện tại.- Slack:
channels.slack.slashCommandvẫn được hỗ trợ cho một lệnh kiểu/openclawduy nhất. Nếu các bạn bậtcommands.native, các bạn phải tạo một Slack slash command cho mỗi lệnh built-in (cùng tên với/help). Command argument menus cho Slack được gửi dưới dạng các nút Block Kit ephemeral.