我手机里躺着900多条收藏,真正被第二次打开的不到10条;微信文件传输助手被我当成了临时仓库,真到找的时候什么都搜不到;每周五下午写周报,我都要对着聊天记录发呆快一个小时。这些事听起来都不大,但叠加起来就是每天的信息焦虑。fox_charon 就是冲着这事儿来的一个小项目,把随手扔进来的碎片信息自动整理、打标、去重,再按预设规则分发到笔记、待办、周报草稿这些地方。代码不多,逻辑也不复杂,但用下来之后,我确确实实把每周整理信息的时间从两小时压到了二十分钟。
这个项目我独立开发,前后迭代了几个版本,核心思路一句话就能说清:给碎片信息配一个“渡船人”。下面把这套设计、实现和踩坑记录完整写下来,给同样被信息流淹没的朋友做个参考。
1. fox_charon 是什么:一个把碎片信息“摆渡”进工作流的个人工具
1.1 项目名字的由来
“fox”取的是狐狸的机敏和轻巧,“charon”是摆渡人的意象。两者放在一起,想表达的是:用灵巧的方式,把信息从“随手一扔”的地方渡到“真正该待”的地方。
很多工具都把精力花在“存”上面,存得越多越乱。fox_charon 反过来,核心动作是“渡”,也就是流转:你扔进来一条链接、一句话、一段灵感、一封待办邮件,它负责判断这东西是什么、该去哪、要不要留。整个系统像一条河边的小渡船,不是在岸上盖一个大仓库。
1.2 它解决的是哪一类烦恼
我自己的场景比较典型:
- 读到一篇好文章,收藏了,但再也没打开过。
- 突然想到一个点子,记在手机备忘录里,翻不到了。
- 领导布置了一个小任务,当时回复“收到”,三天后忘了。
- 每周五写周报,回忆不起来这周到底干了什么。
- 资料分散在笔记软件、微信收藏、邮箱、本地文件里,想用的时候永远不在手边。
这些问题都属于“信息熵过高”,不是再加一个笔记软件能解决的。fox_charon 的思路是做一个中间层:先收拢所有碎片,再让模型做一次粗加工,最后用规则决定去向。人只需要在最后看一眼结果,微调一下,不用再从零开始整理。
1.3 适合谁,不适合谁
用下来我的判断是:这个工具最适合个人开发者、写作者、研究者、以及对周报/日报有硬性要求的职场人。它不是一个团队级知识管理系统,不能多人协作,也没有复杂的权限模型。它更适合那种“信息入口很多、出口很少”的个人使用场景。
如果你已经有成熟的知识库协同流程,或者团队需要严格审计,那 fox_charon 的定位就不太合适。它能承受的数据量级是个人级别,每天几十上百条信息很稳,再往上就跑不动了。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 整体架构:收集、梳理、分发三层管道
2.1 收集层:三个不显眼但好用的入口
我把收集入口控制在三个,没有做更多。理由很简单:入口越多,维护成本越大,而且人根本不会用。
第一个入口是邮件转发。给 fox_charon 配一个专用收件箱地址,订阅的 newsletter、同事发的任务邮件、自己给自己发的备忘,都可以转发过去。服务端定时拉取邮件,解析正文和附件链接。这个入口的好处是全平台通用,手机上、电脑上、甚至别人的电脑上都能转发。
第二个入口是 Web 表单。一个简单的页面,输入框 + 粘贴区,支持文本、URL、JSON 片段。配合浏览器插件或者快捷书签,选中网页文字直接送进来。这个入口主要是给“浏览器阅读场景”用。
第三个入口是本地脚本。命令行执行 charon add "内容",或者通过系统共享菜单调用。很多临时想法是在电脑上写代码、写文档时蹦出来的,这时候命令行最快。
三个入口共用同一个 HTTP 接口,内部逻辑完全一致。我特意没做手机 App,因为短期内不值得为它做原生客户端,PWA 页面已经够用。
2.2 整理层:分类、打标、定级
收集层拿到内容后,整理层负责三件事:
- 正文提取:如果是链接,用 readability 类库抽取网页正文,去掉广告和导航,得到一
