Cli 导读

一键让终端记住 openclaw 所有子命令

运行 openclaw completion 生成补全脚本,加 --install 自动写入 shell 配置文件,之后按 Tab 就能补全子命令。默认生成 zsh 补全,其他 shell 用 --shell 指定。不传 --install 或 --write-state 时只会打印到终端,不会生效。

先讲这一页到底在解决什么

一键让终端记住 openclaw 所有子命令

运行 openclaw completion 生成补全脚本,加 --install 自动写入 shell 配置文件,之后按 Tab 就能补全子命令。默认生成 zsh 补全,其他 shell 用 --shell 指定。不传 --install 或 --write-state 时只会打印到终端,不会生效。

原文共 5 节,先看 Start Here 路径:/cli/completion 查看官方原文

第一站

🪄 先把 3 个动作分开:打印提示条、把提示条装进 shell、把提示条写进状态目录

官方给的命令看起来只是几个参数变化,但实际是在做三种不同的交付方式。

📄

openclaw completion

像直接把提示条内容打印到你眼前,默认就往标准输出吐出来。

🔌

--install

像不只给你纸条,还顺手把纸条贴进你常用 shell 的启动本里。

🗃️

--write-state

像把提示条先存进状态目录的小抽屉里,不直接贴出来也不直接安装。

📌

一句话

一个是给你看,一个是帮你装,一个是先帮你存。

第二站

🐚 --shell zsh|bash|fish|powershell,像“这张提示条要贴在哪种键盘旁边”

不同 shell 像不同款工作台,提示条格式也要跟着换。

--shell zsh

像给 zsh 这张工作台定制一条提示条,这也是默认选项。

--shell fish

像同样是提示条,但这次得裁成 fish 工作台能认的形状。

--shell bash / powershell

像给别的工作台也各贴一张适配好的边条,不是一张通吃全屋。

默认就是 zsh

所以你什么都不说时,系统会先按 zsh 那套格式给你准备。

第三站

🛠️ --install 真正在做什么?像往你的 shell 启动本里贴一张“OpenClaw Completion”小标签

官方特地讲了这点,因为很多人会以为 install 是把 OpenClaw 本身重新装一遍。其实不是。

📎

写一小块 block

像在 shell profile 里夹入一个很小的“OpenClaw Completion”标签块。

🗂️

指向 cached script

像标签上不写整篇内容,只写“去这个缓存脚本抽屉里拿”。

-y, --yes

像你提前点头,说“别再问我要不要贴,直接贴上去”。

📌

一句话

install 不是重装 OpenClaw,而是重装你的命令行提示习惯。

第四站

🌳 为什么官方说会 eager load command trees?因为提示条得先知道整棵命令树长什么样

这句看起来很技术,其实翻成人话非常简单。

先把整棵树摸清

像提示员得先把所有房间门牌都背下来,才能在你敲到一半时准确补全。

nested subcommands 也包括在内

像不只是记一层门牌,还要连里面的小房间和小抽屉都记住。

所以补全更完整

你敲到深一点的子命令时,它也能把后续路牌递给你。

🎈 一句话

提示条能补得准,是因为它先把整棵命令树背了一遍。

最后总结

🎈 把 openclaw completion 压成一句话

openclaw completion 就像给你的 shell 贴一张自动提示条:可以先打印看看、直接安装进启动本,或者先写进状态目录,让你以后敲 OpenClaw 时更像有人在旁边递下一句。