>wangyr@context: ~$

作品十

Open Learning:本地学习工作台

2026-07 – 2026-08 · 桌面应用已打包,未发布 · 一个月一百七十四次提交

Open Learning 帮我把一本书、一个文件夹里的材料学透:整本书按章讲透,边读边问,理解落成文件,出题复习,下次打开接着学。

它是一个本地优先的学习工作台。材料、我的理解、复习台账全是我电脑上的文件;AI 在文件旁边备料、记账;理解这一步留给人自己做。

打开一个文件夹:讲透、读与问、出题,状态写回,下次接着学 Open Learning · 工作空间:学习/ 文件 阅读 对话 学习/ 一本书.md 一本书/ 第一章.md 第二章.md 第三章.md 理解 · 第一章.md 复习台账.json 第一章 · 3 天后 章节面板 · 讲透 ☑ 第一章 ☑ 第二章 ☑ 第三章 已讲透 已讲透 已讲透 一章一份文件 第一章.md · 讲透 这一章讲一个循环: 甲推动乙,乙限制甲。 AI:乙怎么限制甲? 我:乙大了,甲就慢。 理解 · 第一章.md归位,放回文件夹 出题 · 辨析层 乙限制甲的方式是?○ 甲变多○ 甲变慢 ✓ 答对 · 3 天后再考 关上 · 再打开 再打开同一个文件夹:讲透的章、理解、台账都在,接着学 两个技能来自个人 AI 操作系统 设计与里程碑经 Praxis 裁决
打开一个文件夹;一本书的每一章讲透成一份文件长在书旁边;中间读,右边一问一答,我的理解落成文件放回左栏;AI 出题,程序判对,复习日期写回台账;关上再打开,全都在。自动循环。右边一格是它接上的两处,点标签能过去。

它帮我做的事,按一次学习的顺序是五件。

  • 在任何文件夹里打开:那个文件夹就是这次学习的工作空间,不搬文件,不建库。见工作空间一节。
  • 整本书按章讲透:右键一本书,勾选章节,AI 把每一章按它自己的逻辑重讲一遍,一章一份文件,长在书旁边。见讲透一节。
  • 边读边问,理解落成文件:中间读,右边和 AI 对话;我说出来的理解由 AI 归位成一份文件放回文件夹,我叫它「理解产物」。见阅读与对话一节。
  • 出题、判卷、按遗忘曲线复习:AI 出题,程序判卷,每个知识点掌握到什么程度、下次什么时候复习,记在一份「复习台账」文件里。见测试与复习一节。
  • 下次打开接着学:讲透的章节、理解产物、复习台账都在文件夹里,换台电脑拷走文件夹就带走全部进度;别的 AI agent 也能读写这同一份状态。见接口一节。

它是什么:一个文件夹、一个本地服务、一个三栏界面,AI 的部分调用本机的 Claude Code。

  • 一个文件夹:材料、讲透的章节、理解产物、题库与复习台账,全是普通的 markdown 和 JSON,任何编辑器都能打开。
  • 一个本地服务:只绑本机,管运行、索引、调度,同时是外部 agent 的接口。
  • 一个三栏界面:左边文件,中间阅读,右边对话。人坐在中间和右边这两格。
  • 它不依托任何个人知识系统。任何人的任何文件夹都能当工作空间。
  • 它参照了一个已有工具的范式:一个本地服务、一个界面、文件为真相、AI 经公开协议接入。那个工具做的是设计,我把这套范式搬进学习。

为什么这样做:理解只能由学习者自己造出来,系统的位置是备料、记账、制造摩擦。

  • 「理解」在这套系统里有一个操作化定义:新东西和我已知之物的关系。能背定义说不出它跟什么有关,是有了一个词,不是理解。
  • 由此推出三条:理解不可传输;已知不分书;系统要帮我,必须知道我已知什么。
  • 「摩擦」指新东西和已有认知对不上的那一下。人无法自己发现自己不懂,所以摩擦必须由外部制造。制造摩擦是这套系统最不可替代的一件事。
  • 三个角色:我是建造者,知识网是被建造的东西,系统是脚手架加记账员。三个角色里没有老师。
  • 一切落成本地文件,是因为文件是唯一不绑工具的载体:界面、AI 子进程、外部 agent 读写的是同一份文件,没有 AI 时导入、答题、复习照常可用。

为了让 AI 稳定干活,工程集中在四处,每处在后面有一节。

  • 分工:需要理解内容的交给已有的技能,判卷、排期、索引这类纯结构计算由程序自己算。见分工一节。
  • 送达:技能每次运行先复制一份再交给 AI,改坏的只会是副本。见分工一节。
  • 接口:外部 agent 读写同一份学习状态,但读题的接口永远拿不到答案。见接口一节。
  • 发布前的终审:拦下的问题一律改成真的,不改措辞。见桌面一节。

它和什么连着:文件夹进、文件出,技能和 AI 都从本机已有的来。

  • 输入是任何一个文件夹里的材料,它不依托个人知识系统。
  • 输出是讲透的章节、理解产物和复习台账,全落回那个文件夹,外部 agent 经 MCP 读写同一份。
  • 讲透与费曼两个技能来自个人 AI 操作系统,AI 调本机 Claude Code,设计文档和前两个里程碑经Praxis裁决。
  • 它的分工规则和六十人公司的 AI 运行体系是同一条:理解内容归 AI,机械事实归程序。

下面按一次学习的运转顺序讲。

  • 先是全图:一次学习怎么在文件夹、本地服务、界面之间流。
  • 然后是问题、工作空间、讲透、阅读与对话、测试与复习、分工、接口、桌面。
  • 最后是演化和现状。
  1. 全图:一次学习在文件夹、本地服务、界面之间怎么流
  2. 问题:读是便宜的,发现自己没懂是贵的,聊天框只做便宜的那一半
  3. 工作空间:打开哪个文件夹,学习就在那个文件夹里进行
  4. 讲透:整本书按章重讲一遍,产物长在书旁边
  5. 阅读与对话:中间读,右边问,理解写成文件放回文件夹
  6. 测试与复习:AI 出题,程序判卷,复习日期写回文件
  7. 分工:需要理解内容的交给技能,纯结构计算由程序自己算
  8. 接口:外部 agent 读写同一份学习状态,拿不到答案
  9. 桌面:装它的机器不需要开发环境,终审拦下的问题都改成真的
  10. 演化:一个月,三次反转,四个词被删掉
  11. 现状:分三档说

全图:一次学习在文件夹、本地服务、界面之间怎么流

一次学习分六步,每一步的产物都是工作空间文件夹里的文件。

我在桌面应用里打开一个文件夹。本地服务扫一遍,建索引。左栏显示这个文件夹的真实层级打开文件夹
我右键一本书,勾选章节。每章起一个 AI 子进程重讲一遍,书旁边长出同名文件夹,一章一份文件讲透
我在中间读讲透的章节或原书,在右边和 AI 对话。AI 先问我,我答了它才给答案读与问
我说出来的理解由 AI 归位成一份理解产物文件,放回文件夹,对话里显示为可点开的卡片理解落成文件
AI 把材料拆成知识点、逐个出题;我作答;程序判卷,按遗忘曲线算下次复习日出题复习
掌握度和到期日写进复习台账。下次打开同一个文件夹,从这份状态接着学;到期时桌面通知提醒状态写回

三个部件各管一段,人在阅读和对话这两格。

部件只做实际是什么
工作空间文件夹存放一切学习数据材料文件,讲透的章节文件夹,理解产物,题库与复习台账,一个隐藏目录放索引与逐条落盘的运行记录
本地服务运行、索引、调度、接口一个 Node 进程,二十七条接口,一个运行管理器,一个可重建的索引库,一个 MCP 服务端
界面看和说三栏:文件、阅读、对话;一个欢迎屏;一个章节面板
桌面壳启动与常驻一个壳进程带两个副进程,菜单栏常驻,系统通知,一个未签名的安装包
AI 子进程需要理解内容的工作每次讲透一章或对话一轮起一个本机 Claude Code 的进程,技能说明折进提示

「本地优先」在这套系统里指五件具体的事。

「AI 原生」指 AI 是运转的一环,不是附加按钮,落在三个位置。

工作空间文件夹 · 真相源 材料 .md 讲透的章节 理解产物 题库 · 复习台账 隐藏目录:索引 · 运行记录(可删可重建) 任何编辑器都能打开 读写 本地服务 只绑本机 运行管理 · 索引 遗忘曲线调度 MCP 服务端 三栏界面 · 人在这里 文件 阅读 对话 AI 子进程 每讲透一章或对话一轮一个 · 记录落盘 产物写回文件夹 外部 agent 经 MCP 读写同一份状态
红色双向线:文件夹和本地服务之间的唯一通路,文件是真相,服务只做索引和调度。红色虚线:外部 agent 从同一个入口进来,看到的和界面一样。其余步骤是界面读文件、AI 子进程写回文件。

问题:读是便宜的,发现自己没懂是贵的,聊天框只做便宜的那一半

一条理解分四段建起来,四段的成本极不对称,聊天框只做了最便宜的一段。

碰到新东西。读就行,任何人都能干,极便宜遭遇
新东西和已有认知对不上。人无法自己发现自己不懂,必须由外部制造,极贵摩擦
把对不上的想明白。只能我自己干消解
反复用过留下来。间隔重复是算法问题,机器干固化

读完一本书什么也没学到,是常态,因为全程只有遭遇,没有摩擦。

聊天框缺三样东西,每一样都对应工作台里的一个部件。

对话是过程,文件是结果。这条判断决定了理解产物必须写成文件。

AI 写什么、人写什么,分界不按谁写,按这件事是不是学习本身。

内容谁产生谁写进文件依据
溯源:这一页来自哪份材料AIAI机械事实,是记账
断言:定义、关系、分类AIAI是知识,本来就可传授
消解痕迹:我原以为什么、卡在哪只有我AI 归位AI 不知道我原来以为什么
关系的候选:可能有关,置信多少AI只进索引,不进文件它是提问的素材,不是结论

这张表推翻过我自己的一条规则。我曾定「AI 推断的关系永不写进文件,AI 替我连对一条关系就偷走一次学习」。反驳很直接:书和老师就是在告诉人关系;被告知是遭遇,是必要的第一步,问题只在停在遭遇。正确的做法是换顺序:先问我,我答,再给我看 AI 的答案,对照。

工作空间:打开哪个文件夹,学习就在那个文件夹里进行

「工作空间」就是我打开的那个文件夹。没有「数据目录」这种配置项,桌面应用首次打开选一个文件夹,之后记住上次的。

三种用户,同一个机制,零配置。

三层数据按「丢了能不能补回来」分,隐藏目录整个删掉也不丢东西。

真相。人写的、AI 写的,全是 markdown 与 JSON文件
只追加的记录:AI 写过哪个文件、我说过什么、复习过什么、改过什么名运行记录
纯派生。由文件和运行记录算出,随时可删可重建索引

这一节的原则有一处被桌面形态逼着改了:浏览器形态下工作空间等于启动目录,不需要选择器;桌面应用没有启动目录的语义,所以加回了文件夹选择器、欢迎屏和最近打开。见演化一节。

讲透:整本书按章重讲一遍,产物长在书旁边

「讲透」指把一章按它自己的逻辑重讲一遍,机制、关系、推理链摆成看得见的结构,核心零丢失。它不是摘要。

应用只编排,讲透本身由技能完成。理由落在两个位置。

按章分进程,是首次真书试用后定的。

阅读与对话:中间读,右边问,理解写成文件放回文件夹

对话挂在整个工作空间上,不挂在某份材料上;关了再开,对话还在。

中列只用来读,不挂常驻输入条。

理解产物写成文件,放回文件夹,在对话里显示为可点开的文件卡片。

「学习档 / 自由档」两档被拆掉了。

已知缺口:左栏「我的」列表按位置取数(根层的 markdown 文件),不按种类(学习产物)。在真实文件夹里它列出无关文件,学习产物落在子目录里反而不显示。根因是设计前提被后来的改动抽掉,不是实现走样。见现状一节。

测试与复习:AI 出题,程序判卷,复习日期写回文件

每个知识点按四个层次出题,逐层上爬,判卷不用 AI。

用自己的话把它重新讲出来重构
和相近的东西区分开辨析
换一个情境还能用迁移
知道它在哪里不成立知边界

「复习台账以用户可读、可迁移的文件形态存在」是这套系统在同类产品里唯一占住的空位。

这一块是第一版建的,验收过,在当前界面里没有入口。

分工:需要理解内容的交给技能,纯结构计算由程序自己算

一条分工规则决定每个操作归哪边。

技能有一个统一的调用层,两个位置,一种送达。

操作输入输出谁干
讲透一份材料同名文件夹,每章一个文件委托讲透技能
对话我说的一段,当前在读的文件回答,理解产物文件委托费曼技能
出题一份材料知识点与四个层次的题委托 AI 子进程
判卷与排期一次作答掌握度、下次到期日,写回复习台账纯函数
索引重建全部文件索引库纯代码

每次让 AI 干活都是一次「运行」:一个进程,一份逐条落盘的记录。

接口:外部 agent 读写同一份学习状态,拿不到答案

本地服务同时是一个 MCP 服务端,任何支持 MCP 的 agent 都能接进来。

读题的工具永远不返回答案。

两条通路并存:走 MCP,或直接读文件。

桌面:装它的机器不需要开发环境,终审拦下的问题都改成真的

产品形态只有桌面应用一个,浏览器形态的入口已退休。

桌面形态补上的产品面,全是启动和常驻这一段。

技术选择一律照参照工具的发行版源码实查裁定,不从概念倒推。

打包前的终审拦下的问题里,大多数是计划里的示例代码带进去的;处置一律是改成真的,不改措辞。

演化:一个月,三次反转,四个词被删掉

从立项到打出安装包一个月。入口反转过一次,容器反转过一次,AI 的位置反转过一次;我自己造的四个词被逐个删掉。

研究与立项。十份研究底稿,九个产品乘七个维度的对照,定位在一个组合空位上。姿态定为「自己先用起来,工程按随时可上线的标准」2026-07-22
第一版跑通:导入 markdown,AI 出题,答题,复习台账写回文件。以「测试」当入口2026-07-23
反转一:中心从「测试」改到「知识网」,测试、对话、关系都是往知识网上加东西的形式。出题用代码重写被判反面教材,定下「调已有技能,不重写」。第一刀改为讲透加对话2026-07-24
首次真书试用,讲透六章。当天定下:界面问题不零敲碎打修,整体重梳2026-07-30
重推设计:六条学习前提加一个过程模型。拆掉页面与标签页;删掉「项目」实体,容器的聚合功能被知识网取代;「AI 推断的关系不写进文件」被推翻,改为「断言 AI 写,消解痕迹只有人写」2026-08-03 – 05
四个词被删掉:「节拍」(从没定义过,指了三件事)、「点亮」(把三件不同的事糊成一个开关)、「人格切换」(把材料的属性当成系统的属性)、「落点」(给现状打的补丁,工作目录就是答案)。共同病理:先套自己发明的框架,而不是先看那东西本身有什么结构2026-08-04 – 05
反转二:工作空间等于启动目录,无选择器、无切换器、无应用自建目录。左栏改真实文件夹,钻入式导航。自研布局被两次拒收,改为解剖一款真实产品的工作区复刻外形2026-08-06
对话从「材料」迁到「文件」:代码库里同时活着两套世界观,界面搬去了新的,对话还挂在旧的实体上。两栏改三栏,捕获条摘除。同日定桌面应用:照抄参照工具的三进程拓扑,不简化。讲透改为按章分进程2026-08-07
桌面形态没有启动目录的语义,加回文件夹选择器、欢迎屏、最近打开。技能送达从「Claude Code 自发现」改为「说明折进提示,与 agent 无关」2026-08-11 – 13
反转三:拆掉「学习档 / 自由档」,「教还是答」改由 AI 按轮自决。真机验收对话栏,一条判据不过,三处缺陷修完;每处都回真浏览器复验,单元测试量不到布局2026-08-13
一次把对话、模型、工具、权限全部交给外部 agent 框架、应用只留学习域的尝试,写完存档,未验收。定「先做桌面」2026-08-17 – 21
桌面打包。浏览器形态入口退休。终审拦下一个 Critical 四个 Important,修完判可合并,等人工验收2026-08-21 – 22

没变的是四条给定条件,变的是 AI 站在哪。

现状:分三档说

写这一页的日期是 2026-09-17。立项时的姿态是「自己先用起来,工程按随时可上线的标准」,两个半句分开说:工程侧到了,使用侧没到。

在跑,有真实使用记录
  • 讲透:一本真书按章讲透六章,文件在磁盘上。
  • 桌面应用在我的机器上打开过,工作空间指向我的一个真实文件夹。
  • 第一版的出题与复习用真实 AI 验收过,删掉过程数据重启后全部重现。
建了,不常跑或没走通
  • 对话栏:用一本真书的一章走过一轮验收,学习者由 AI 扮演,AI 读了正文、出题、拿书里的反例逼补漏洞,理解产物写成了文件。我本人发起的对话没有留下消息。
  • 出题与复习:在三栏界面里没有入口,只有桌面壳的到期通知还读复习台账。
  • 外部 agent 接口:六个工具在冒烟测试里逐个跑过,没有接过真实的外部 agent。
  • 「我的」列表:按位置取数不按种类,在真实文件夹里列出无关文件。
  • 对话产物进知识网的回路断开。
  • 安装包打出来了,未签名,未发布。仓库私有。桌面打包分支未合并主线,等人工验收。
  • 唯一没有被真人验证的核心:AI 讲透的章节、AI 的对话教不教得会人。
设计中或未测得
  • 阅读时划选一段,右键「不懂 / 问 / 记下 / 考我」;「不懂」当场教,进当前对话。
  • 思维导图:导图即文件,点节点由 AI 就着书里有的继续展开。
  • 学习产物的身份标记,让「我的」按种类取数。
  • 设计的第二刀:概念文件、候选关系、确认与否定;第三刀:复习台账从运行记录重算,按知识类型分叉。
  • 摩擦的剂量、脚手架怎么随熟练度退场、一条关系值一句话还是一整页、跨来源的概念同一性。这四处刻意留白,不填假结构。

数字只报能证明系统真实存在的。

提交,2026-07-22 到 08-22一百七十四次
自动化测试,四个包。全仓并发跑时有三个子进程类用例会超时抖动,单独跑全过五百三十八个
安装包,未签名175 MB
研究底稿,全部经独立审核十份
设计规格与实施计划,每刀一对十三份规格
真书讲透的章节六章
外部 agent 工具六个
捆绑技能两个
端到端冒烟脚本五条
每换一个文件夹起服就新建一个、从不回收的数据目录。一直在增长,还没清一千四百四十个

讲透、费曼对话、出题这三个技能先在我自己的系统里跑了一年,见作品一。「需要理解内容的交给 AI,机械事实交给程序」这条分工和作品二是同一条。它背后的想法怎么来的,见思考。