You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
English TL;DR: README claims "all data is processed locally and never sent to any external service," but only the parsing is local — the extracted chat content is then read into context and sent to whatever LLM API the agent uses (that's the core of the pipeline), and SKILL.md option C explicitly has the agent read photo content despite the README claiming metadata-only. Intermediate parse outputs also persist at fixed world-shared /tmp paths. Suggested fix: rewrite the privacy note truthfully (wording proposed above), move intermediates into a gitignored project dir with cleanup, and add a one-time informed-consent note at intake.
Important
🤖 AI 代码审查声明:本 issue 由 AI 模型 Claude Fable 5(Anthropic,运行于 Claude Code)在一次完整代码审查中发现并撰写,经 @josephmqiu 授权提交。审查基于当前 main 分支 HEAD(commit
c5ece53)的源码与文档逐行阅读。问题描述
README「注意事项」一节(README.md:206)声称:
这与项目的实际数据流不符。只有解析这一步是本地的,解析产物随后必然离开本机:
tools/下的解析脚本确实在本地运行(这部分没问题);Read工具读入解析结果(如/tmp/wechat_out.txt),这些聊天记录内容会作为上下文发送给用户所使用的 LLM 服务(Anthropic API 或其他模型服务商)——这正是生成 persona 的方式,整个项目的核心步骤就是把语料交给模型分析;Read工具直接查看(Claude 原生支持图片)」——照片内容同样会被发送给模型服务。考虑到本项目处理的是极其私密的数据(与前任的完整聊天记录、私人照片),隐私声明与事实不符是全部发现里最需要优先修正的一条。用户会基于这句话做出「敢不敢导入真实聊天记录」的决定。
附带问题:/tmp 中间产物
SKILL.md 的所有解析命令都把产物写到固定路径(
/tmp/wechat_out.txt、/tmp/imessage_out.txt、/tmp/social_out.txt等):/tmp是系统共享目录,多用户机器上其他用户可读(取决于 umask);修复建议
中间产物改写到项目内的 gitignored 目录(如
exes/.cache/),流程结束后由 agent 主动删除;不要用固定的/tmp路径。(可选)在
/create-ex的 intake 第一步加一句一次性提示,让用户在导入数据前确认知情。英文版 README(README_EN.md)如有对应表述需要同步修改。
如需要,我可以提交对应的 PR(README 中英双语 + SKILL.md 路径调整)。
English TL;DR: README claims "all data is processed locally and never sent to any external service," but only the parsing is local — the extracted chat content is then read into context and sent to whatever LLM API the agent uses (that's the core of the pipeline), and SKILL.md option C explicitly has the agent read photo content despite the README claiming metadata-only. Intermediate parse outputs also persist at fixed world-shared /tmp paths. Suggested fix: rewrite the privacy note truthfully (wording proposed above), move intermediates into a gitignored project dir with cleanup, and add a one-time informed-consent note at intake.