SuperAPI AI 工具集

post-test-cleanup

部署与运维

查看项目

更新于 10-16 08:00

技能介绍

用途:在向某个工作区发送耗时测试指令(如长篇文章生成、耗时任务)后,或发现某工作区残留测试消息影响 AI 上下文时,执行完整清理流程,防止测试消息残留在会话上下文中持续消耗 token 额度。

主要能力与步骤: 一、停止残留容器。用 docker ps --format "table {{.Names}}\t{{.Status}}\t{{.RunningFor}}" 查看运行容器,通过 ls data/ipc/ 确认目标 folder(容器名格式为 happyclaw-{folder}-{timestamp});依次发送优雅中断与关闭信号:touch data/ipc/{folder}/input/_interrupt 后 sleep 5,若仍在运行则 touch data/ipc/{folder}/input/_close 后 sleep 10,再用 docker ps 确认已停止。 二、查找测试消息。用 python3 连接 data/db/messages.db,先由 registered_groups 按 folder 查出 jid,再查最近消息定位测试消息范围。 三、删除测试消息。将待删消息 ID 填入列表,用 DELETE FROM messages WHERE id IN (...) 执行删除并提交。 四、重置会话。生成新 UUID 并执行 UPDATE sessions SET session_id = ? WHERE group_folder = '{folder}',使下次启动以空上下文开始。 五、用 git status 和 git diff --stat 确认代码无意外修改。

限制与注意:必须重置 session,仅删除 DB 消息不够,Claude session 文件中仍保存历史上下文,下次激活仍会消耗 token;删除消息前需通过 is_from_me 和内容仔细核对,避免误删正常业务消息;data/ 目录下 SQLite 与 IPC 文件不纳入版本控制;数据库路径、表结构与容器命名规则以实际环境为准,资料未提供更多环境配置细节。