我用 Graphify 重构了自己的 AI 工作流之后
AII
我意识到,我们从一开始就理解错了「效率」
文 / 一只阿木木
前几周,我在跟一个朋友聊 AI 工作流。他问我:「你现在平均每天在 AI 上花多少时间?」
我说:「很多,差不多四五个小时吧。」
他说:「那你有没有算过,这四五个小时里,真正在产出的时间有多少?」
我愣了一下。
然后我认真回想了一下我典型的一天——
打开 Claude,粘贴项目背景,等它读完,开始提问。对话进行到一半,发现需要补充一个上周做的决策,翻文件,复制,再粘贴。换一个新话题,重新开一个窗口,重新粘贴背景……
我粗略估算了一下:四五个小时里,大概有将近一个小时,我在「喂背景给 AI」。
一个小时。每天。
如果你也是重度 AI 用户,我建议你现在停下来,认真算一算这个数字。
因为这一篇文章,就是关于那一个小时的。
一、我的 AI 工作流演进史:一段并不光彩的历程
在说 Graphify 怎么用之前,我想先说说我是怎么走到今天的。
因为我发现,很多人以为自己的工作流已经很先进了,但实际上,我们大多数人都在用一种「看起来很 AI」但本质上很原始的方式工作。
我自己就是最好的反面教材。
2023年:复制粘贴的蛮荒时代
那时候我刚开始认真用 AI。工作方式极其粗暴:把文件打开,全选,复制,粘贴进对话框,然后问问题。
文件太长?截断。信息不够?再粘一段。
效率奇低,但我没有意识到问题在哪,因为 AI 给出答案的那一刻太令人兴奋了,以至于我完全忽视了准备过程有多低效。
那个阶段我给自己的定义是:「AI 用户」。
2024年:搭了一套 RAG,感觉自己很工程师
看了很多教程,搭了自己的向量数据库,用 Chroma 存了几千份文档,写了一个简单的检索管道。
那段时间我特别得意,觉得自己终于从「普通用户」升级成了「AI 工程师」。
但用了几个月之后,我发现一个问题:它对「找信息」很有用,对「理解结构」完全无效。(具体为什么,上一篇文章已经拆解过了。)
那个阶段我给自己的定义是:「AI 工程师」。但其实我只是搭了一个稍微复杂的搜索引擎。
2025年:上下文窗口变大了,我又回到了暴力时代
Claude 3.5 出来,上下文窗口大幅扩展。我的第一反应是:太好了,RAG 不用了,直接塞!
于是我把之前费心搭的 RAG 管道扔掉了,重新开始全文塞入。只不过这次能塞得更多了。
事后回想,这个决策真的挺荒诞的——我用更贵的方式,解决了一个本质上应该用更聪明的架构解决的问题。
那个阶段我给自己的定义是:「务实主义者」。但其实我只是选择了最懒的方式。
2026年:图谱记忆,我第一次感觉 AI 真的「认识我的项目」
用 Graphify 之后,有一天我打开 Claude Code,什么都没有粘贴,直接问:
「我们上次讨论的那个数据清洗模块,现在如果要加一个异常处理机制,最优先需要修改哪三个地方?」
它直接给了我答案。
没有「请先提供项目背景」,没有「根据您提供的信息……」,没有任何需要我补充上下文的停顿。
它知道。因为图谱在那里。
那一刻我忽然明白:效率的本质,不是让 AI 跑得更快,而是让 AI 记得更久。
前者是速度问题,后者是记忆问题。而我在过去三年里,一直在解决错误的问题。
二、重新定义「效率」:你真正在浪费的是什么?
在讲具体用法之前,我需要先建立一个认知前提。
大多数人把 AI 效率问题,理解为「响应速度」的问题。
响应慢?换更快的模型。 输出质量低?调优提示词。 Token 贵?压缩一下文件。
这些都是在优化「这一次对话」的效率。
但有一个成本,几乎所有人都没有认真核算过——
跨会话的重复上下文成本。
每一次你打开新对话,重新介绍你的项目,你在支付两种成本:
显性成本: Token 消耗。那几百、几千个 Token,你每天付好几次。
隐性成本: 认知切换。你在「工作者」和「背景提供者」之间反复切换,这种切换本身会打断你的深度思考状态。心理学研究表明,从一次打断中完全恢复专注,平均需要23分钟。
你每次「喂背景给 AI」,不只是在浪费 Token,你是在谋杀自己的专注力。
Graphify 真正节省的,是后者。
71.5 倍的 Token 节省是可以算出来的数字,但那背后每天被你悄悄放弃的深度思考时间,从来没有人帮你算过。
三、五种工作心智:从「会用」到「用好」
好,现在进入实操部分。
但我不想只给你一堆命令和截图。我想用一种不一样的方式讲这五个功能——
每个功能背后,对应一种工作心智的转变。
因为工具会迭代,命令会变,但心智一旦建立,会跟你很久。
心智一:「异步认知」——让 AI 在你工作时悄悄学习
对应功能:--watch 实时监听模式
用法很简单,在你的项目目录下,开一个后台终端,运行:
Bash
graphify --watch
然后忘掉它,去做你自己的事。
它会在后台静默监听你的文件变化。每次你保存一个代码文件,它立刻触发 AST 重建——不需要调用任何 AI,纯本地计算,几乎零延迟。每次你保存一个文档或图像,它会提示你下次运行 --update 来触发 LLM 处理。
听起来只是一个「自动同步」功能,但它背后的心智转变,是这样的——
传统工作流: 我工作 → 工作结束 → 我更新 AI 的知识 → 下次对话
异步认知工作流: 我工作 → AI 同步学习 → 下次对话时它已经跟上了
前者,你是知识的搬运工。 后者,AI 是你的跟班学徒,它自己在学。
这个心智转变,小到可以忽略,大到改变你和 AI 的整个协作关系。
心智二:「知识民主化」——让每一个 Agent 都能读懂你的世界
对应功能:--wiki 知识库生成模式
运行命令:
Bash
/graphify . --wiki
它会为你的知识图谱里,每一个社区和每一个核心节点,生成一篇 Wikipedia 风格的 Markdown 文章。所有文章通过一个 index.md 串联起来。
这有什么用?
当你只有一个 AI 助手的时候,你可以直接查询 graph.json,问题不大。
但如果你开始搭建 多 Agent 工作流——一个 Agent 负责写代码,一个负责测试,一个负责文档,一个负责代码审查——你怎么让每一个 Agent 都快速理解你的项目?
Wiki 模式的答案是:给它们一个入口。任何 Agent 只需要读 index.md,就能通过文件读取的方式,导航你整个知识库的全貌。不需要解析 JSON,不需要专门的 API,普通的文件读取即可。
传统工作流: 每个 Agent 各自为政,对项目全貌一无所知
知识民主化工作流: 每个 Agent 都能从同一个知识源出发,形成统一的上下文理解
这不只是一个效率问题。这是多 Agent 协作能否真正落地的基础设施问题。
心智三:「认知自动化」——知识更新与代码提交同频
对应功能:graphify hook install Git Hook
运行这条命令,Graphify 会在你的项目里安装两个 Git 钩子:post-commit 和 post-checkout。
之后,每次你 git commit,图谱自动重建。每次你切换分支,图谱自动切换。
如果重建失败,钩子返回非零退出码,git 会暴露错误,而不是静默继续——你的图谱和你的代码,永远保持同步,任何不一致都会被显式暴露。
我第一次用这个功能的时候,有一种微妙的感受——
以前,「更新代码」和「更新 AI 知识」是两件事,我需要记得去做后者。
现在,它们是同一件事。代码更新的那一刻,AI 的记忆就更新了。
传统工作流: 代码是代码,AI 知识是 AI 知识,手动同步,经常滞后
认知自动化工作流: 代码和 AI 知识共享同一个时间线,始终一致
这个心智,我把它叫做「认知自动化」——不是任务的自动化,而是知识更新的自动化。
在一个代码每天都在变化的项目里,这是至关重要的。
心智四:「认知边界」——你选择让 AI 知道什么,同样重要
对应功能:.graphifyignore 精准排除
在你的项目根目录,创建一个 .graphifyignore 文件,语法和 .gitignore 完全一样。
写进去你不想被索引的目录或文件,Graphify 会完全忽略它们,不索引、不处理、不出现在图谱里。
这个功能听起来最平淡,但它对应的心智,我认为是五个里面最被低估的:
我们花了很多时间思考「让 AI 知道什么」,但我们很少思考「不让 AI 知道什么」。
哪些内容不应该进入 AI 的知识图谱?
测试数据?临时文件?实验性代码?敏感配置?还是那些你不想让 AI「先入为主」的早期草稿?
认知边界,是知识图谱工程里一个被严重忽视的设计维度。
一张没有边界的图谱,不是更丰富,而是更嘈杂。噪音越多,信号越弱。
想清楚你的 .graphifyignore,其实是在想清楚:你想和 AI 共享一个什么样的「认知空间」?
心智五:「知识共享层」——从个人图谱走向团队协作
对应功能:--mcp MCP 服务模式 + --neo4j-push 图数据库推送
这两个功能,是 Graphify 从「个人工具」走向「团队基础设施」的接口。
--mcp 让 Graphify 作为一个 MCP stdio 服务器运行,任何支持 MCP 协议的工具都可以连接进来,查询你的知识图谱。
--neo4j-push 则可以把你的本地图谱直接推送到 Neo4j 数据库,让整个团队共享同一张图谱。
个人工作流的终极问题是:知识只活在个人的图谱里。
你的 AI 认识你的项目,但你的队友的 AI 不认识。你的 AI 知道某个设计决策为什么这样做,但新加入团队的工程师不知道。
MCP 和 Neo4j 推送,是把「个人认知资产」变成「团队知识基础设施」的那个接口。
传统团队协作: 知识在 Notion、Confluence、各种文档工具里分散存放,AI 每次都从零开始
知识共享层工作流: 整个团队的 AI 助手,共享同一张持续更新的知识图谱,从同一个认知起点开始工作
这不只是效率的升级,这是团队协作模式的根本性改变。
四、三个差点让我踩进去的坑
好,说完进阶用法,说说坑。
这三个坑,是我自己踩过的,或者差点踩进去的。写出来,希望你能绕过去。
坑一:把 /update 当成万能刷新按钮
这是我见过最多人犯的错误,我自己也犯过。
Graphify 有两种更新方式:
/update: 增量更新,处理新增或修改的文件,合并进现有图谱。
完整重建 /graphify .: 清空旧图谱,从零开始重新索引整个项目。
大多数情况下,/update 就够了——你新加了几个函数,改了几段文档,增量处理就行。
但有一种情况,你必须跑完整重建,而不是 /update——
当你做了结构性重构的时候。
重命名了模块?重构了调用关系?把三个类合并成了一个?把一个大函数拆成了五个小函数?
这些情况下,如果你只跑 /update,旧图谱里的那些陈旧关系不会被删除,它们会静静地留在那里,和新的结构并存。
图谱开始漂移。
你的 AI 开始给你混乱的答案。你以为是 AI 犯蠢,但其实是图谱腐化了。
判断标准很简单: 只新增内容,用 /update;任何重命名、重构、架构调整,用完整重建。
坑二:在错误的项目阶段引入图谱
有一次,一个朋友跟我说,他用 Graphify 索引了自己的一个项目,但感觉帮助不大,有点鸡肋。
我问他:「这个项目现在有多少代码?」
他说:「大概五六个文件吧,刚开始做。」
这就是问题所在。
Graphify 的价值,和你项目的规模、复杂度、以及文档的丰富程度,是正相关的。
一个五六个文件的新项目,结构一目了然,你根本不需要图谱来理解关系——你自己看一眼就清楚了。这时候引入 Graphify,不只是杀鸡用牛刀,它的冷启动成本(安装、索引、学习如何查询)反而成了负担。
什么时候引入 Graphify 最合适?
根据我的实践经验,大概是这样的判断标准:
项目文件超过20个,开始出现「我记不清这个函数在哪里被调用」的感觉 项目里有 PDF 文档、设计文档、或者研究论文需要和代码关联理解 你开始频繁在新会话里重复喂同样的背景 团队超过2个人,开始出现「我不知道这个决策为什么这样做」的问题
如果你还没有达到这些信号,先把项目做起来,再想图谱的事。
工具要在合适的时机引入,早了是负担,晚了是浪费。
坑三:忘记了 PyPI 包名和命令名不一样
这个坑纯粹是技术细节,但我看到太多人在这里卡住了,值得单独说一下。
安装 Graphify 的时候,PyPI 上的包名,临时是 graphifyy(多一个 y):
Bash
pip install graphifyy # ← 注意是两个 y
原因是 graphify 这个包名已经被别的项目占用了,团队正在申请收回。
但安装完之后,CLI 命令和技能命令,用的仍然是 graphify(一个 y):
Bash
graphify install # ← 一个 y
/graphify . # ← Claude Code 里用一个 y
安装时两个 y,使用时一个 y。
这个不一致很反直觉,第一次用的人几乎百分之百会在这里迷惑几分钟。
记住它,别在这里浪费时间。
五、「认知自动化」不只是一个功能,是一种新的工作哲学
好,走到这里,我想停下来,说一件更重要的事。
这三篇文章里,我一直在用「Graphify」这个词。但如果你只记住了这个工具的名字,你其实只得到了这系列文章价值的5%。
Graphify 会迭代,会有竞争者,甚至可能有一天被更好的工具取代。
但有一个认知,我希望你能带走——
我们正在经历一次「AI 工作哲学」的根本性转变。
旧哲学是:「如何让 AI 更好地服务于每一次任务。」
新哲学是:「如何让 AI 更好地理解你这个人,以及你正在做的事情。」
前者是单次优化,后者是复利积累。
前者的极限是:每次对话都完美。 后者的极限是:AI 越来越了解你,你们的协作效率随时间持续提升。
这两件事,看起来方向相似,但哲学上截然不同。
旧哲学下,你是 AI 的「使用者」,你每次调用它完成任务。 新哲学下,你是 AI 的「建造者」,你持续地为它补充记忆、丰富上下文、建立认知地图。
这种转变,我把它叫做「认知自动化」。
不是任务的自动化——那个已经在发生了。
而是知识积累的自动化:你工作的过程,同时也是 AI 学习你的过程。你提交代码的那一刻,图谱在更新;你整理文档的那一刻,语义在扩充;你做出一个决策并记录下来的那一刻,AI 的记忆里多了一个节点。
你不只是在用 AI,你在建造一个越来越了解你的 AI。
这两件事,听起来结果相似,但本质是两种完全不同的人机关系。
六、然后,我看到了 Graphify 背后的东西
写这个系列的最后,我想聊一件让我很兴奋、但还没有对太多人说过的事。
Graphify 本身,只是图谱层。
但 Graphify 的团队,在它之上,正在构建一个叫做 Penpax 的东西。
它的目标,是一个设备端的数字孪生——把你的会议记录、浏览历史、文件、邮件、代码,连接成一个持续更新的知识图谱。
完全在设备上运行。不上云。不训练你的数据。
我读到这个的时候,沉默了很久。
因为它在描述的,是我在第一篇文章里说的那个终极目标——
一个真正「认识你」的 AI 协作者。
不只是认识你的代码,而是认识你的思维方式、工作习惯、决策逻辑——你这个人的完整认知图谱。
这个东西存不存在,我不知道。Penpax 能不能做到,我也不知道。
但它在尝试解决的那个问题,是真实的——
在 AI 时代,「理解一个人」这件事,应该不只是发生在人类之间。
七、写在最后:三篇文章,一个判断
从第一篇到现在,我讲了 Karpathy 的 /raw 文件夹,讲了 48 小时的社区响应,讲了为什么 RAG 有架构性局限,讲了图谱如何把「关系」变成一等公民,讲了五种工作心智,讲了三个真实的坑。
但如果你问我,这三篇文章想说的最重要的一件事是什么——
是这个:
过去三年,我们用「无状态 AI」做「有状态工作」,然后用人力填补中间的鸿沟。我们把这种填补叫做「工作」,但它其实是一种浪费。
而现在,这个鸿沟开始有了工程化的解法。
那些今天就开始认真思考「如何为我的工作建立持久化认知层」的人,正在进入一种新的工作模式——他们的 AI 协作者,有历史,有记忆,有上下文。
而那些还在每天重复粘贴背景的人,使用的已经是另一种 AI 了。
不是工具不同,是工作哲学不同。
这是 Graphify 系列的第三篇,也是最后一篇。
第一篇: 「外部记忆的诞生——人类终于开始为 AI 建造海马体」
第二篇: 「RAG 还没死,但它正在被超越」
第三篇: 「我用 Graphify 重构了自己的 AI 工作流之后」
三篇文章,一条完整的认知路径:发现问题 → 理解本质 → 重建工作流。
如果你一路跟下来,谢谢你。
如果这三篇文章里,有任何一句话让你重新想了想自己和 AI 的关系——
那就够了。
如果你已经开始用 Graphify,或者你正在考虑,欢迎在评论区告诉我:你遇到的最大障碍是什么?
我会在后续内容里,持续跟踪这个方向的进展。
—— 一只阿木木
一个相信工具会过时、判断力不会的内容创作者。记录 AI 时代真正重要的事。
💬 如果这个系列对你有价值,转发给同样在思考 AI 工作流的朋友。 📌 关注我,我们继续挖。
松花酿酒,春水煎茶。
眉上风止,见字如晤。
一只阿木木