惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 司徒正美
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
美团技术团队
WordPress大学
WordPress大学
罗磊的独立博客
Last Week in AI
Last Week in AI
人人都是产品经理
人人都是产品经理
爱范儿
爱范儿
MongoDB | Blog
MongoDB | Blog
J
Java Code Geeks
H
Hackread – Cybersecurity News, Data Breaches, AI and More
H
Help Net Security
S
SegmentFault 最新的问题
C
Check Point Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
腾讯CDC
Engineering at Meta
Engineering at Meta
The GitHub Blog
The GitHub Blog
F
Fortinet All Blogs
D
DataBreaches.Net
雷峰网
雷峰网
GbyAI
GbyAI
宝玉的分享
宝玉的分享

程序员

V2EX 看到讨论"跨域"的帖子,那个她好像回来了 codex 今天真的是不稳定呀。 火山方舟 Coding Plan 慎买 刚问了大家 openclaw 和 hermes 在什么机器上面玩,求推荐一个机器 GPT-image-2 生成 AI 图片防伪有感 codex pro 5 小时限制已经严重缩水 逆天 Antigravity 动态 JSON 序列化对强类型语言很难吗? 自建了 GPT Coding Plan,遇到了定价问题,请教大家 大家都是在什么设备上玩 openclaw 以及 hermes 的呀? 软考还有一个月就考试了,你们学习了吗? 大伙用 AI 会考虑在 user scope 的 CLAUDE.md/AGENTS.md 里交代 AI 说中文吗 我发现程序员这个群体很大部分其实挺抠的 最近使用 cc 总会莫名其妙的返工, codex 不会 目前体验最好的远程 vibe 工具 想知道大佬们抓包遇到 ssl pinning 都是咋优雅的 解决的? 工业软件的大佬们是怎么 vibe coding 的 最近 chrome 是不是有 bug 啊,一搜索就卡住 分布式异步系统在 vibe coding 下的困境 PHP Native AOT 编译器,支持将 PHP 代码编译为可执行文件,运算性能提高 150 倍 没想到 2026 年,还要浪费大量时间在跨域问题上 DeepSeek V4 这周会出吗? 中转站正式试营 欢迎试用 不掺不假 小米 mimo 升级 v2.5,并且重置了额度 Jenkins, SCM 轮询完全不工作是啥问题啊 赛博斗蛐蛐, AI 模型的简单对比(白嫖版) 使用中转站要擦亮眼睛!不说别的,倍率计算 充值好乱。 买了火山的 Coding Plan 测试得出计费模式 给我的 AI 生成了简历和状态卡, 大家帮忙看下 Ta 能找到啥样的
「开源」知返(Ahadiff)--vibe coding 之后,你真的学到东西了...
attention · 2026-06-07 · via 程序员

一个开源工具「知返 AhaDiff 」:把 AI 写的每次改动都给你讲清楚,让你 vibe coding 时不再无脑点继续

起因:使用 ai 进行 vibe coding 虽然快,但是代码中的改动却没有内化成自己的知识

我用 AI 写代码经常是这样:用 ai 写出一大段代码,我大致看一眼,回复继续;只要没出错就一直继续。如果报错或者不符合我的需求就把问题告诉 ai ,进行改动。项目完成了,各个功能都正常运行了,跑得也不错。可是有个问题,假如你回头问我「这个地方为什么这么写」,很大可能是一脸懵逼的状态,因为 ai 替我完成了 90%以上的代码改动。

并且在论坛中我经常看到类似的讨论,很多人都提及了这个问题:通过 vibe coding 指挥 AI 把活干了,效率确实高,可一个项目做完,自己好像没怎么长进,没有从中学到真东西。

我想要的其实很简单:AI 写完之后,有个东西能把这次改动给我讲清楚,为什么要这么改,这么改的作用何在,并且把这次改动的知识进行内化,形成自己脑子中的知识,于是就开发了知返这个项目。

它就干一件事:把 ai 的改动变成能查证的笔记,能让你学到真知识

知返通过读你的一次代码改动,把它变成一份完整的学习材料:形成一篇完整的「改了什么、为什么这样修改」的课程,一份每条结论都标了出处的清单。同时附带完善的测验和带复习周期的复习卡片,通过复习曲线设置,一遍遍的重复,避免相关知识的遗忘,而不仅仅只是展现相关改动的相关知识点。

运行面板

运行面板:每学一次就多一条记录,带评分和质量趋势

并且为了避免 ai 的幻觉问题:笔记里每一句话,都要绑到某个文件的某一行代码上,再附带这个学习笔记对应的一个状态:

  • verified 有据可查
  • weak 证据偏弱
  • not_proven 没验证到
  • contradicted 和代码对不上
  • rejected 被否决

课程页

课程页:AI 把这次改动的相关知识点展现给你看

差异页

差异页:左边是代码 diff ,右侧的 claim 卡片点开,会跳转到对应 diff ,同时能看到这次改动对应的知识点

光看知识点还不够,那么我们学习完成之后测试你真的会了吗,并且根据 fsrs 算法,会加入之前做过的测验题

看懂了 lesson 的笔记知识点,不代表你真的会了,并且会用了,所以学习完课程之后还附带了测验和复习卡片

测验是 通过选择题的方式呈现给你,可在 settings 中动态设置测验题的数量。

每道题答题完成之后,能看这道题对应的知识点,以及这道题经常出错的地方

测验页

测验页:以选择题的形式呈现,答完才显示这道题目对应的代码改动

复习用的是间隔重复,就是 Anki 复习卡片那套思路,背后是 FSRS 算法。学过的东西会按遗忘曲线,在合适的时间点加入到复习部分让你再过一遍,避免看一遍就忘的情况。

复习页

复习页:到期的卡片按 Again / Hard / Good / Easy 评分

测验和复习还嫌不够的话,再来个 Challenge ( opt-in 的进阶玩法):它把某次改动做成一道挑战,让你自己先过一遍,再拿你的结果和真实 diff 逐条比对,把你漏掉、没掌握的地方挑出来,然后反馈到复习中。对着某个 run id 跑 ahadiff challenge build <run_id>,就能在 webui 中体现。

学得多了,知识会自己连成网,形成真正的概念图谱

借鉴了 llm-wiki 和 graphify 的思路。

同一个概念在好几次改动里反复出现,知返会把它们收集起来,连成一张概念图谱。

概念图谱

概念图谱:横跨多次改动的知识地图

每次学习都打分,能看出自己在不在进步

每跑一次,知返会从准确性、证据、覆盖率等八个维度打个 0 到 100 的分,判定这次学习算不算合格。你也可以另开一个模型当「第二评委」复核一遍,不过它只是参考,不会推翻判定。分数是透明的,点开能看到每一个维度的评分细节。

八维评分

运行详情:八个维度的评分明细

觉得某次讲得还不够好?让它重学几遍,分数更高才留

打完分,你可能会觉得某次讲得还不够透,想让它再讲好一点。improve-run 能够解决这个问题。

对着某次 run 跑 ahadiff improve-run <run_id>,它会在你自己的项目里,拿这次改动把课程用更高质量重新生成几遍(默认 3 遍,专门盯着上次得分最低的那一维改进),再进行一次重新打分。只有新生成的分数确实比原来高,才会留下来

整个改进过程它不碰 git 、不改 prompt 、也不覆盖你原来那条已经保存的记录。

怎么用:先装上,然后基本就两条命令

现在已经可以直接从 pip 安装:

pip install ahadiff

装好并配好 provider 之后,核心就两步:

# 学一次最近的改动
ahadiff learn HEAD~1..HEAD

# 打开本地网页,看笔记、做测验、复习
ahadiff serve

serve 会提供 webui ,供你学习。想学暂存区里还没提交的改动,就 ahadiff learn --staged改动从哪来都行:最近的提交、暂存区、补丁文件、两个目录的对比,一共支持十种来源,不仅仅是从 git diff 中进行学习。

几个让你省心的点:

  • 你的代码 diff 默认不外传。隐私默认是 strict_local,diff 和代码都待在你本机;想用远端模型,得你自己显式打开,建议调成脱敏远端模式,日常使用更加方便。
  • 用你自己的 key( BYOK ),支持八种 AI 服务格式。如果不想使用 api ,避免隐私泄露的情况,也支持接入本地的 LM Studio 或 Ollama 。
  • 能导出成 Anki 卡片,复习完成后还能导出为 anki 卡片,接入自己日常使用的 anki 软件。
  • 能给 AI 助手写本地规则和 skills。如果你希望 Claude 、Codex 、Cursor 、Copilot 、Gemini 这些工具也知道怎么使用知返,可以在项目里运行 ahadiff install --detect,再按需要执行 ahadiff install codexahadiff install claude。它写的是项目本地指引,不会把代码上传出去。
  • 改动太大也不怕撑爆模型。默认会按你选的模型上下文,自动算出这次最多捕获多少 diff (综合模型上下文、输出预留和中文 diff 的密度),不会一股脑全塞进去;想自己定也行,在 settings 里切成手动模式。
  • 懒得每次手动跑ahadiff watch 能盯着你的仓库,文件一改就自动触发 learn ,适合边 vibe coding 边顺手把这次改动学掉。

设置页

设置页:填 key 、选模型、调隐私和捕获上限,都在这

部分限制

  • 现在已经发布到 PyPI ,直接 pip install ahadiff 即可。源码安装主要给贡献者开发时使用:uv tool install --editable .

  • 默认功能不需要额外安装;只有 FSRS 参数自动优化这种重依赖能力需要单独装 pip install 'ahadiff[optimizer]'

  • Windows 上核心的 learn 和 serve 均可使用;但是需要注意的是,个别功能(比如 --compare-dir 目录对比)目前只在 macOS / Linux 上支持。

链接

演示视频(中文,带字幕):

https://www.bilibili.com/video/BV1b57k6yEWm

如果你也常有「这代码是 AI 写的,我想从中学到真东西」这种想法,欢迎尝试👏。

让你从每次 vibe coding 中学到真东西,而不只是无脑确认/继续。

觉得有用的欢迎给这个项目点个✨

有问题的或者觉得可以改进的地方的欢迎提 pr 和 issues 。