安全操作和改进 Keet CLI 项目以及 Keet ↔ OpenClaw 桥接。用于只读检查、调试、文档、发布检查以及桥接支持。
Keet CLI.
功能概述
Keet CLI.是一项面向实际任务的技能,主要用于Overview. 在 Keet Messent 和 Keet QQ OpenClaw 桥面工作流程操作或改进 Keet-cli 项目时使用此技能;默认只读检查;
核心要点
- 全部使用 Keet pr。
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
使用与执行
该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
结果检查与注意事项
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
Keet CLI
概述
在操作或改进 keet-cli 项目(用于 Keet Messenger 及 Keet ↔ OpenClaw 桥接工作流)时,使用本技能。
默认采用只读检查模式。将所有实时 Keet 个人资料数据和私密聊天内容视为敏感信息。不得泄露密钥、恢复材料、私密消息、邀请/个人资料代码,或生成的桥接状态。
使用前请务必验证项目源码:https://github.com/projectreturn/Keet-cli。
必需的安全守门机制
执行任何外部操作或状态变更操作前,必须获得用户对以下各项的明确确认:
- 精确的 Keet 个人资料/存储路径,
- 精确的目标聊天或房间,
- 精确的外发消息/操作内容,
- 该操作是否可能启动长期运行的进程,
- 推送前 Git 仓库、分支及提交差异(commit diff)的精确信息。
除非用户明确要求执行对应操作,否则禁止加入邀请、创建聊天、路由额外聊天、打印恢复/账户材料,或推送代码。
快速工作流
- 定位项目仓库。常见默认路径:
/openclaw/workspace/keet-cli。 - 使用前验证来源可信性与本地状态:
git remote -v git status --short --branch npm run lint node src/cli.js --help
- 优先使用只读命令。
- 在执行任何
send、bridge、daemon、invite、chat或 Git 推送操作前,确认全部所需安全守门机制已通过。 - 完成编辑后,在报告完成前运行
npm run lint并检查git diff。
只读命令
除非用户指定其他检出路径,否则均在仓库根目录下执行。
npm run lint node src/cli.js --help node src/cli.js inspect node src/cli.js rooms node src/cli.js messages --limit 10 node src/cli.js tui
仅当用户提供或确认了路径时,才覆盖 Keet 存储路径:
KEET_APP_STORAGE=/confirmed/path/to/app-storage node src/cli.js inspect
状态变更命令
仅在用户明确确认个人资料、目标聊天及具体操作后,方可执行以下命令:
node src/cli.js send '已确认的消息文本' node src/cli.js send-file --caption '已确认的说明文字' /confirmed/file/path node src/cli.js bridge node src/cli.js daemon --socket .keet-cli.sock node src/cli.js daemon-send --socket .keet-cli.sock current node src/cli.js watch --interval 2000
对于 send-file,发送前须确认文件路径、目标聊天及说明文字;对于 watch、daemon、supervisor 或桥接模式,需向用户说明该进程是否会持续运行,以及如何终止它。
敏感数据规则
- 将 Keet 个人资料存储、账户/恢复材料、私钥、令牌、邀请/个人资料代码、桥接状态及含私密消息的日志,全部视为敏感数据。
- 禁止提交实时 Keet 个人资料存储、生成的状态文件、日志、私密聊天截图或复制的私密消息。
- 除非用户明确要求检查特定消息,否则避免打印消息内容。
- 在摘要与错误信息中,对密钥及私密消息内容进行脱敏处理(redact)。
- 在共享/群组上下文中,不得暴露用户专属的聊天名称、密钥、路径、消息内容或操作细节。
存储锁模型
Keet Desktop 与 keet-cli 不应同时访问同一份实时存储。Keet 使用设备文件/FD 锁保护数据库。
若因锁机制导致命令失败,请按以下步骤排查:
- 检查 Keet Desktop 或其他
keet-cli进程是否已在使用该个人资料。 - 优先通过
daemon --socket .keet-cli.sock显式批准一个长期运行的主控进程,并将 CLI/桥接操作统一经由daemon-send路由,而非启动相互竞争的会话。 - 未经用户明确批准,不得终止用户进程。
TUI 模式
仅在确认无其他实时 Keet 主控进程使用相同存储的前提下,方可启用 TUI 模式进行交互式本地检查:
node src/cli.js tui
TUI 支持列出房间、选择房间、查看近期消息及发送消息。其中“发送”属于状态变更操作:发送前须先确认目标聊天及确切消息内容。
守护进程 / REPL 模式
仅当需要重复执行读取/发送操作,且用户已批准启动长期运行进程时,方可启用守护进程模式:
node src/cli.js daemon --room ROOM_ID --socket .keet-cli.sock
常用 REPL 命令:
/status /messages 10 /send 已确认的消息文本 /send-md **已确认** _markdown_ /send-file /confirmed/file/path 已确认的说明文字 /rooms /current /use ROOM_ID /quit
套接字(socket)自动化调用每次仅接受一条 JSON 命令:
node src/cli.js daemon-send --socket .keet-cli.sock status
node src/cli.js daemon-send --socket .keet-cli.sock send '{"text":"已确认的消息","format":"plain"}'
node src/cli.js daemon-send --socket .keet-cli.sock send-file '{"filePath":"/confirmed/file/path","caption":"已确认的说明文字"}'
当存在默认守护进程套接字时,send 和 send-file 将优先尝试通过守护进程执行;若失败,则回退至直接 Core 会话。可通过设置 KEET_CLI_NO_DAEMON=1 强制使用直接模式,或设置 KEET_CLI_DAEMON_STRICT=1 使失败时不回退而直接报错。
此举可避免独立的 watch、send 和 send-file 进程之间产生冲突。
Watch 模式
仅在用户确认个人资料与聊天范围后,方可启用 Watch 模式:
node src/cli.js watch --interval 2000
默认忽略本地/自身发出的消息。仅在调试确有需要时,才使用 --include-local 参数。
Keet ↔ OpenClaw 桥接
首次调试时,请以前台方式运行桥接:
node src/cli.js bridge node src/cli.js bridge --daemon-socket .keet-cli.sock --config bridge.config.json
仅在用户确认需要持久化进程后,方可启用 supervisor/container 模式。
当守护进程已拥有 Keet 个人资料时,优先使用 --daemon-socket。在此模式下,桥接将复用已有守护进程,而非自行启动 Core 侧车(sidecar)。
一个安全的桥接实现必须满足以下要求:
- 默认禁用多房间路由功能,
- 仅转发配置白名单中显式批准的聊天,
- 上报邀请/成员事件但不自动加入或响应,
- 当目标聊天不明确时,以失败关闭(fail closed)方式处理,
- 除非调试需要,否则忽略自身/本地回显消息,
- 持久化足够状态,以避免重复回复并维持选定的模型模式,
- 在配置启用时,本地处理 Keet 音频消息:仅从 Keet 的本地文件链接下载、使用本地 Whisper 进行转录,并转发转录文本而非原始音频,
- 支持显式的模型切换命令,例如
lokal、online和modell status, - 禁止记录私密消息内容或密钥,
- 任务完成后提供停止命令或自动终止。
发布检查清单
发布或公开前,请执行以下检查:
npm run lint git status --short --branch git diff --stat git log --oneline -5
执行任何 Git 推送前,须确认将使用的仓库、分支、差异(diff)以及凭证/身份。禁止在公开技能内容中嵌入私钥路径或打印私钥。
热门AI工具
相关专题
本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。
0
2026.10.22
本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。
0
2026.10.22
本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。
0
2026.10.22
本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。
0
2026.10.22
本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。
0
2026.10.22
本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。
0
2026.10.22
本专题讲解Golangci-lint的安装、初始化、基础命令和首次代码检查,覆盖本地环境、Docker及多平台用法,帮助Go开发者快速上手。
0
2026.10.22
PHP2Shell漏洞是什么,哪些PHP版本和运行环境会受到影响,服务器应该如何检测与修复?本专题提供版本自查脚本、Linux与Docker升级命令、PHP-FPM和Apache排查步骤,以及修复验证、临时缓解和应急响应方案。
0
2026.10.22
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.5万人学习
共6课时 | 54.7万人学习
最新文章
