独立 CLI
@yoooclaw/cli 是独立运行的 yoooclaw / yc 命令行 —— 自带后台守护进程(daemon),不依赖 openclaw 客户端在线。设计对齐飞书 lark-cli:Service-oriented 命令树、三层命令体系(Shortcuts / Service Commands / Raw API)、统一 --format、Agent-Native。
当前状态:命令全部可用
全部 service 命令已落地:本地查询类(🟢,纯读磁盘)开箱即用;守护进程类(🔵)与需 daemon 在跑的控制类(🟡)通过本地 HTTP RPC 协作。手机端可以经 yoooclaw 托管 Relay 进入本机 daemon;Relay 不可用时仍可用 cloudflared / tailscale serve 反代本地 HTTP server 作为兜底。
安装
两种分发渠道,功能完全一致,按是否方便装 Node 选择。npm 包是极薄 Node launcher,安装时通过 optionalDependencies 拉取当前平台的 Go 原生二进制;原生二进制渠道则直接下载同一套 Go binary。
平台支持
npm 渠道支持 darwin/linux 的 x64+arm64 与 win32-x64(launcher 需 Node ≥ 18)。install.sh / GitHub Release 直装支持 darwin/linux 的 x64+arm64。Windows 上有两点差异:凭据以明文存放在 ~/.yoooclaw/credentials.json(无系统 keychain 加固,yoooclaw doctor 会标记为 skip 并提示),yoooclaw daemon stop 经 HTTP /daemon/stop 优雅退出而非 POSIX 信号。详见 存储与目录。
A. npm(薄 Node launcher + 平台 Go 二进制)
免安装(npx,每次拉最新版):
npx @yoooclaw/cli --help # 主命令
npx @yoooclaw/cli notification +today全局安装(提供 yoooclaw / yc 两个命令):
npm i -g @yoooclaw/cli
yoooclaw --help # 主命令
yc --help # 等价短 alias
npx @yoooclaw/cli始终调用yoooclaw入口(yoooclaw与yc指向同一可执行文件)。
B. 原生二进制(无需 Node)
单文件 Go 可执行,冷启动和资源占用都比旧 TS/Bun 形态更轻。
# 自动检测平台、下载、校验 sha256、写入 ~/.local/bin(阿里云 OSS 分发,国内直连)
curl -fsSL https://artifact.yoooclaw.com/cli/install.sh | sh
# 安装最新预发布版
curl -fsSL https://artifact.yoooclaw.com/cli/install.sh | sh -s -- --beta
# 指定版本 / 安装目录 / 覆盖
curl -fsSL https://artifact.yoooclaw.com/cli/install.sh \
| sh -s -- --version 0.9.0 --dir ~/bin --force
# 顺带把安装目录写进 shell 配置文件(PATH)
curl -fsSL https://artifact.yoooclaw.com/cli/install.sh | sh -s -- --modify-path安装目录默认优先 ~/.local/bin,其次是可写的 /usr/local/bin。安装器默认不会修改任何 shell 配置文件,只装二进制;要让新开终端直接能跑 yoooclaw,需要显式加 --modify-path——此时才会按登录 shell 幂等地把安装目录写进对应配置文件(zsh → .zshrc、bash → .bashrc / .bash_profile、fish → config.fish、POSIX shell → .profile),配置发生变更时会提示重开终端或 source 一次。不传 --modify-path 就需要自己把安装目录加进 PATH;--no-modify-path 仍然接受,只为兼容旧调用,效果等同于默认行为(不修改)。
不便访问 OSS 时也可用 GitHub 源脚本(从 GitHub Release 下载,参数相同):
curl -fsSL https://raw.githubusercontent.com/YoooClaw/cli/master/scripts/install.sh | sh直装支持平台:darwin-arm64 / darwin-x64 / linux-x64 / linux-arm64。Windows Go binary 目前随 npm 平台子包发布,请用上面的 npm 渠道。
二进制也可从 GitHub Releases 或 OSS 制品目录 手动下载,配合同目录的 checksums.txt 校验。
yoooclaw update self会自动识别当前安装来源(npm vs 原生二进制),给出对应的升级命令 —— 不要混用两种渠道。升级原生二进制时要额外加--force(安装器在目标已存在时会拒绝覆盖),详见更新与升级。
卸载
# 停 daemon + 删二进制与配置,保留通知 / 录音 / 图片数据
yoooclaw uninstall
# 连数据一起清空(清空 ~/.yoooclaw),免确认
yoooclaw uninstall --data --yes原生二进制形态会自删 yoooclaw 与 yc 软链;npm 安装形态由 node_modules 托管无法自删,uninstall 会提示再跑一次 npm uninstall -g @yoooclaw/cli。
5 分钟上手
# 1) 交互式向导:填入 Relay api-key,生成 config.json、gateway token,
# 并自动后台启动守护进程(无需再单独跑 daemon start)
yoooclaw config init
# 2) 看状态:PID、监听端口、relay、灯效规则数、最近 ingest
yoooclaw daemon status
# 3) 查今天的通知(手机推送落盘后)
yoooclaw notification +today
config init收尾会自动后台拉起 daemon,并注册用户级开机自启动(macOS launchd / Linux systemd user service / Windows 任务计划,无需管理员权限)。向导里填了 api-key 就直接连上 Relay、开箱即用; 如果当时留空,事后用yoooclaw auth set-api-key <ock_xxx>设置后再yoooclaw daemon restart让 daemon 连上 Relay。 只想注册自启动、暂不立即启动 daemon,加--no-start;只想启动这一次、不留开机自启动,加--no-autostart。自启动状态可用yoooclaw daemon autostart status查看,详见命令参考 · daemon。
多手机 / 多账号接入时,可以给每个 key 一个稳定 label;daemon 会为每个 label 各连一条 Relay 隧道,入站数据也会带上对应 clientLabel:
yoooclaw auth add-api-key <ock_phone_a> --label phone-a --default
yoooclaw auth add-api-key <ock_phone_b> --label phone-b
yoooclaw daemon reload
yoooclaw tunnel status
yoooclaw notification +today --client phone-a服务器 / 无 GUI 部署(systemd / launchd 包装):
yoooclaw daemon start --bind 0.0.0.0 --port 18365 --no-detach绑
0.0.0.0时强制要求已设置 gateway token,否则拒绝启动。
录音同步与 ASR
daemon 经 recordings.result.write 接收 App / 云端写入的转写与总结(可选带 ossUrl 时后台下载音频)到当前 profile 的 recordings/。本机重新转写经 recordings.retranscribe 按配置触发 ASR;独立 CLI 形态下,ASR 配置由本机一次性写入 recordings/asr-config.json,请求没带 asr 时 daemon 会自动读取本地配置。
# api 模式:不传 --api-key 时,daemon 会回退到 account 级 ock- key
yoooclaw recording setup-asr --mode api --language auto --non-interactive当前 Go beta 只支持 api / model-proxy ASR。local 和 yoooclaw mode 仍保留在配置 schema 里用于兼容旧请求,但会在校验阶段被拒绝。
录音同步过程中,daemon 会把状态变化追加到 recordings/state/events.jsonl,CLI 可以直接查询或持续跟随:
yoooclaw recording list
yoooclaw recording +latest
yoooclaw recording events --since 1h --limit 50
yoooclaw recording events --id <recording-id> --watchAgent-Native
CLI 自身就是 Agent 的工具表,无需再起一层 MCP server:
- 所有命令支持
--format ndjson,便于 Agent 流式逐条消费; - 失败统一返回
{ ok: false, error: { code, message, hint } },错误码前缀YOOOCLAW_*;本地 CLI 错误会返回非零退出码,Raw HTTP 结果请同时看ok/ HTTP status; yoooclaw api <METHOD> <PATH>作为 Raw escape hatch 直达 daemon HTTP。
随包发布了 4 个 Skill(通知 / 录音 / 网页 / 图片统一查询,录音加工成纪要 / 翻译 / 思维导图等产物,从 stdin 建灯效规则,隧道排查),教 Agent 直接调命令。安装前可先查看支持的 Agent 目标:
yoooclaw skills targets # 查看可安装到哪些 Agent
yoooclaw skills install # 自动探测唯一 Agent 后软链安装详见 Agent Skill。
下一步
- 命令体系与输出 —— 三层命令、全局 flags、输出契约与数据目录。
- 命令参考 —— 按 service 列出全部子命令与示例。
- Agent Skill —— 把随包 Skill 安装到 Agent 让它自己驱动 CLI。