Files
WechatExplorer/docs/skill/tracememo-reader/SKILL.md
T

5.3 KiB
Raw Blame History

name, description
name description
tracememo-reader 通过 TraceMemo 本地 HTTP API 按需读取用户有权访问的微信聊天数据和图片媒体。当用户要求查看微信消息、查找联系人或群聊、总结聊天、查看或理解图片、生成群聊总结时使用。此 Skill 由本机 TraceMemo 提供数据,不是 MCP Server。

TraceMemo Reader

你是一个通过本机 TraceMemo 读取微信历史的 Agent。先确认用户已经在 TraceMemo 中完成数据库连接,再按需调用 API;不要假设数据库已就绪,也不要声称读取了没有调用过的消息。

连接信息

  • Base URL 默认是 http://127.0.0.1:6131/api/v1。
  • GET /health 不需要 Token。
  • 其他端点必须带 Authorization: Bearer $TRACEMEMO_API_TOKEN。
  • 新配置优先读取 TRACEMEMO_API_TOKEN;为兼容已安装的旧 Reader,可在新变量缺失时回退到 WECHATEXPLORER_API_TOKEN。
  • Token 由用户在 TraceMemo → API Center 显示/复制,并放在 Agent 自己的本地环境中。
  • 不要把 Token 放到 URL、回答、日志、Skill 文件或仓库。
  • 6131 是普通 Local HTTP API,不是 MCP Server;不要生成 mcpServers 配置。

每次任务前

  1. 调用 /health,确认服务和数据库状态。
  2. 用户说“今天”“昨天”“本周”等相对时间时,先调用 /current_time,按返回的本机时区换算日期。
  3. 用 /resolve、/contact 或 /chatroom 确认会话标识。
  4. 用 /chatlog 读取最小必要的时间范围。
  5. 对重要结论读取关键消息前后文;不要只凭一次宽范围粗查回答。

端点速查

方法 路径 用途
GET /health 健康和数据库状态
GET /current_time 本机时间与时区
GET /contact 联系人/群聊列表;可传 filter、type
GET /chatroom 群聊列表;可传 keyword
GET /recent_chat 最近会话;可传 limit
GET /chatlog 会话消息;必填 talker,可传 time 或时间戳范围
GET /media/{messageId} 获取图片消息的真实图片二进制资源
GET /group_snapshot 群成员快照;必填 md5
GET /resolve 昵称、wxid、md5 解析;必填 q
POST /report 将已有日报结构渲染为 HTML/PNG
GET /agent/status Agent Hub、连接器和数据库状态
POST /agent/group-report 按群和 today/yesterday/7days 生成总结图片
POST /agent/send 已连接机器人发送测试

时间与上下文规则

/chatlog 的 time 支持 YYYY-MM-DD、日期闭区间和分钟范围;也可以使用 Unix 秒级 startTime/endTime。时间按 TraceMemo 所在机器的本机时区解释。

当用户问“某个话题是谁说的、后来结论是什么”时,先定位会话和时间,再读取关键消息前后文。回答时区分:

  • 原消息明确写出的内容;
  • 根据多条消息整理出的总结;
  • 没有来源支持的推断。

媒体消息

当 /chatlog 返回图片消息时:

  1. 如果用户只是询问图片消息是否存在,不需要获取图片。
  2. 如果用户要求查看、识别、理解或分析图片,使用该消息 media.url(/media/{messageId})获取真实图片。
  3. 不要根据 [图片]、消息文本或文件名猜测图片内容。
  4. 获取成功后,将图片交给当前 Agent 的视觉能力。
  5. 如果图片获取失败,明确说明无法读取图片。
  6. 不要声称看到了没有成功获取的图片。
  7. 不要向用户暴露 Token、本地文件路径或数据库路径。

图片分析

用户:“看看张三昨天发的那张截图。”

  1. 调用 /health;必要时调用 /current_time。
  2. 调用 /resolve,再调用 /chatlog 找到 type 为图片的消息。
  3. 调用 /media/{messageId},将返回的图片交给 Vision。
  4. 必要时读取图片消息前后若干条消息,结合聊天上下文回答。

不要只根据 [图片] 猜测内容,不要把一次 OCR 当作完整图片理解,也不要直接读取任意本地图片路径。

隐私和安全

只读取用户请求所需的会话和时间范围。不要把完整聊天数据库、密钥或 Token 暴露给用户。Reader API 本身不自动把聊天转发到外部服务器,但当前 Agent 可能会把工具结果交给其配置的模型;如有疑问,提醒用户检查 Agent 的数据策略。

常见错误

  • 401:Token 缺失、错误或被轮换;请用户回 API Center 复制最新 Token。
  • 403:浏览器 Origin 不在 loopback 允许列表;CLI/Agent 通常不带 Origin。
  • 404:先用 /resolve 确认会话标识。
  • 422:messageId 无效,或消息不是可读取的图片。
  • 503:用户还没有完成数据库连接或对应服务未就绪。
  • 空结果:缩小/扩大时间范围,确认账号和会话,再检查媒体或语音是否可读。