对话续接器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_8509461a/conversation-continuer。
技能介绍
问题场景
在 OpenClaw 里,用户发出一条请求后,代理可能正在处理途中被中断:会话断开、进程退出或心跳未跟上。请求往往仍停留在「未完成」状态,用户只能再发一遍或手动触发,才能接着做。对长任务或多步对话,这种断点既浪费上下文,也容易让人搞不清「到底执行到哪一步了」。
工作原理
对话续接器把「未完成请求」当成可持久化的本地状态来管理,而不是每次靠模型回忆。
- 状态追踪:在 OpenClaw 开始处理时写入
pending_requests,状态依次为pending→running→completed;若中断则保持pending或running,便于后续识别。 - 心跳检测:在
HEARTBEAT.md配置的心跳周期里,只读技能目录下的状态文件(如data/status.json),判断是否存在待续接项;检测路径设计为 0 Token,不把整段历史再喂给模型做「有没有漏单」的推理。 - 自动续接:仅在确认有待处理请求时,才按正常对话消耗 Token 继续执行未完成部分。
- 安全与清理:文件读写限制在技能目录内,输入经清理与长度限制;已完成或失败记录约 7 天后自动清理。
适用边界
本技能只辅助管理对话状态,不保证 100% 续接成功;关键操作仍应自行核对结果。数据仅存于本地 ~/.openclaw/workspace/skills/conversation-continuer/data/,不访问网络、不执行外部命令。若中断原因在 OpenClaw 本体或上游模型侧,续接器只能基于本地记录尝试继续,无法替代修复根因。
使用场景
- OpenClaw 处理多步任务时进程或会话中断,本地仍留有 pending 请求,希望在下次心跳自动接着执行而非重发整段指令
- 长时间挂着代理跑代码或改文件,中途断开连接,需要靠 `data/status.json` 识别未完成项并在心跳周期触发续接
- 已配置 `HEARTBEAT.md` 定时巡检,希望检测阶段不消耗模型 Token,只在确认有 pending/running 时才继续对话
- 代理在处理用户请求时异常退出,状态停在 pending,用户不想手动核对进度再复制粘贴同一条需求
适合人员
- 日常用 OpenClaw 跑长链路任务、曾因中断反复重发同一请求的进阶用户
- 已在工作区维护 `HEARTBEAT.md`、希望无人值守时也能扫本地状态并续接的代理配置者
- 需要把请求状态区分为 pending/running/completed/failed、并依赖本地 `status.json` 做断点恢复的自动化维护者
- 对技能目录内文件读写与输入清理有要求、只接受本地存储、不依赖外网续接对话的安全敏感使用者