YoooClaw for WorkBuddy
通过本机 yoooclaw CLI 使用 YoooClaw。yc 是等价短命令;本 skill 的命令统一使用完整名称。
运行边界
- 仅在 WorkBuddy 桌面客户端的本地执行环境中运行。用户明确说明当前是 WorkBuddy 云上托管环境时,停止并请其切换到桌面客户端;其余情况依据执行工具的实际 OS、CPU 和 shell 元数据选择命令,不主动做云环境指纹探测。
- API key、gateway token 和消息正文属于敏感数据。只处理完成用户请求所必需的内容,并在转述错误前脱敏。
- 保留用户的 CLI 配置、本地数据和 WorkBuddy 记忆结构。卸载、强制重建配置、删除灯效规则和无限循环灯效只按对应 reference 中的明确授权条件执行。
- 只描述公开 CLI 行为,不推测服务端内部实现。
执行顺序
1. 选择一个主分支
在执行任何业务命令前,按用户意图完整读取对应 reference。组合请求可以依次执行多个分支,但每个分支都使用自己的完成判定。
| 用户意图 | 必须完整读取 | 完成判定 |
|---|---|---|
| 接入、安装、重复接入、升级、重连、API key、连接状态 | references/setup.md |
setup 返回“已接入”“已修复”“已安装”“已升级”之一,或带明确原因的失败 |
| 查询、筛选、统计通知,或“帮我总结最近的通知,约 N 条” | references/notification-query.md |
返回本次重新查询或总结的结果,或明确的成功空结果 |
| 把今天或指定范围的通知数据沉淀到 memory,或从近期消息中了解用户并记住重要的人和事 | references/notification-to-memory.md |
本批通知已理解并保存为合适的个人信息、每日记录或长期背景,或按停止条件报告未推进/部分完成 |
| 列出录音、读取转写/总结、从录音提取信息 | references/recordings.md |
返回已选录音的请求产物,或明确候选、处理状态或空结果 |
| 立即播放灯效,或创建、查看、修改、启停、删除持久灯效规则 | references/lights.md |
区分一次性播放与持久规则,并核验该操作的结构化结果 |
出现命令失败、ok=false 或异常状态时,同时完整读取 references/errors.md。错误处理的完成条件是:保留脱敏后的错误码和真实原因,向用户提供一个可执行的下一步,不把失败说成成功;空结果由各业务 reference 按正常结果处理。
2. 执行 preflight
- 接入类请求直接执行 setup 的完整决策树。setup 是平台识别、官方 OSS/npm 安装、幂等接入和版本升级的唯一事实来源;不要凭本文件补写安装步骤。
- 业务类请求先确认
yoooclaw --version可执行。CLI 不存在时,说明该能力需要安装,取得用户同意后完整执行 setup,再回到原始任务;不要让安装结果替代原始任务。 - 通知查询、通知学习和录音查询读取本地数据,不要求 daemon/Relay。一次性灯效和持久灯效规则要求 API key 与网络,但不要求 daemon/Relay。只有接入、重连和 Relay 状态请求按 setup 启动并验证 daemon。
- 业务命令返回鉴权、配置或连接错误时,按 errors 指向的 setup 步骤修复;修复成功后只重试原命令一次。
3. 执行命令并核验
- Agent 调用统一使用
yoooclaw,并在支持的命令上追加--format json。 - 同时检查进程退出状态和 JSON 字段。业务 API 可能以退出码 0 返回
ok=false;通知search成功时也可能直接返回数组。 - 参数只取自用户原话、当前时间/时区和 CLI 返回值。缺少无法唯一确定的 API key、日期范围、录音 ID、灯效触发条件或灯效要求时再询问。
- 实时状态和业务数据每次重新调用 CLI;不复用上一轮查询结果。
- 最终回复只包含用户所需结果、必要的状态和失败时的一个下一步;不粘贴原始大数组、完整配置、内部路径、内部 URL 或 daemon 日志。
凭据通道
- 从 YoooClaw App 的 Agent 连接配置页面复制的接入话术中,API key 只通过执行工具的独立 stdin 通道传给
yoooclaw auth set-api-key - --format json。 - key 不进入命令参数、环境变量、管道文本、临时文件、日志、回复或 shell history。执行工具无法安全发送 stdin 时,停止自动写入并让用户在本机终端安全完成。
- 不运行
config show --show-secrets。config init的 JSON 仅用于内部核验,不向用户展示其中的 gateway token。