我最近做的,不是再写一个解释《主义主义》的提示词,而是把它做成了一个真正可运行、可回写、可长期使用的 Codex Skill:ismism。
这个项目的起点很简单:我手里有一本体量极大的 PDF,《主义主义》,已经被拆成了 363 份目录级 Markdown。真正的问题不是“我能不能读完”,而是:我怎样才能让 Codex 在未来任何一个没有上下文的新对话里,都还能继续沿着同一套理论矩阵工作,而且越用越准?
答案不是一个更长的 system prompt,而是一整套分层架构:语料层、规则层、Atlas 层、Skill 层。只有这样,理论分析才会从一次性的“回答”,变成一个可以积累的系统。
为什么我不想再写一个单文件 Prompt
如果只是为了临时解释一个理论对象,单文件 prompt 当然够用。但《主义主义》这类材料有三个特点,会直接把这种做法逼到极限:
- 它必须严格依赖本地语料。 这里不能偷用预训练印象来补齐哲学常识,所有结论都要能追回原书切片。
- 它天然是多轮、跨对象、跨会话的。 今天我可能问卡夫卡,明天问海德格尔,后天问某种社会现象,系统不能每次都从 PDF 原地起步。
- 它需要静态提纯层。 如果没有“已经被提炼过的定位表、关系表、证据表”,框架永远只是框架,很难真正压缩之前已经形成的判断。
所以我最后不再把它理解成“一个提示词”,而是理解成一个Atlas-first 的知识工程系统。
ismism 的理想架构
我现在把 ismism 理解为四层结构。
1. 语料层:把 PDF 变成机器可检索的最小单元
最底层不是 PDF 本身,而是已经切好的目录语料:
目录索引_结构化.csvsplit_pdf/split_md/
其中 目录索引_结构化.csv 是全局导航表。它保存了编号、层级、父子关系、页码、Markdown 路径,所以后续所有分析都应该先查索引,再定位语料,而不是重新从大 PDF 开始。
2. 规则层:把 4×4×4×4 矩阵从原文里抽出来
在语料之上,我先做了 Phase 1 到 Phase 4 的派生文档:
- Phase 1:四元轴与四阶段的概念提纯
- Phase 2:矩阵跃迁、锁死、短路、中介等机制
- Phase 3:现实诊断锚点与应用空间
- Phase 4:模块化 Skill Prompt 套件
这一层的作用不是直接回答问题,而是给后续判断提供压缩过的规则面。例如 F-O-E-T 四元轴、阶段定义、状态跃迁逻辑,都来自这里。
3. Atlas 层:把“框架”变成可积累的静态图谱
这是我后来觉得最关键的一层。
如果只有矩阵规则,系统可以告诉你“某个对象大概属于哪里”;但 Atlas 层会把它为什么属于这里、它和谁有关、证据在哪一行都固定下来。
目前 Atlas 数据模型包括:
nodes.jsonl:正式节点relations.jsonl:正式关系evidence.jsonl:证据索引file_distillates.jsonl:每篇切片的章节级提纯candidate_nodes.jsonl:自动聚合出的候选节点candidate_relations.jsonl:自动聚合出的候选关系unresolved_queue.jsonl:尚未稳定的对象与冲突项changes.jsonl:主定位变更记录
这里我故意把系统做成分层发布:
- 正式层:已经稳定的结论
- 候选层:可以用,但还不该直接当成定论
- 未决层:冲突、噪声、或证据不足的对象
这样一来,系统就不会因为一次自动抽取就污染正式 Atlas。
4. Skill 层:让 Codex 在新对话里直接调用整个系统
最上层才是 Skill 本体。
我把 ismism 安装到了全局技能库,让它在以后没有上下文的新对话里,也能直接按固定优先级工作:
- 先查 Atlas 正式层
- 再查候选层和派生规则文档
- 还不够,再回到
目录索引_结构化.csv - 最后才回到
split_md/原文
这意味着它已经不是“记忆这次会话”的临时体,而是一个可复用的本地分析能力。
我是怎么把它做成可执行系统的
ismism 的落地并不是一次性完成的,而是分成了两段。
第一段:先把理论矩阵本身建出来
这一段对应最开始的 Phase 0–4:
- 目录解析与 PDF 拆分
- 概念与阶段的边界提纯
- 动态机制梳理
- 应用锚点提炼
- 主 Agent Prompt 和模块 Prompt 的组装
这一步解决的是:矩阵是什么,它怎样工作,它能用来分析什么。
第二段:再把“静态提纯层”做出来
真正让系统从“框架”变成“工具”的,是后面的批处理流水线:
Stage 1:章节提纯
我给 363 个切片全部生成了章节级 distillate,每篇至少挂上:
primary_positionsummaryatlas_candidatesrelation_candidates
也就是说,每一篇都先被压成一个机器能快速调度的小单元。
Stage 2:候选节点聚合
然后我把这些 file distillates 聚合成候选节点与候选关系。
这一层会出现大量“看起来像对象”的东西,但并不全部可信。所以我没有把它们直接写进正式 Atlas,而是让它们先进入候选层。
Stage 3:保守归并
正式 Atlas 目前采用的是保守发布策略:
363个章节骨架节点全部进入正式层- 已经手工稳定的人物节点保留在正式层
- 自动抽到但尚未稳定的人物、文本、现象,默认留在候选层或未决层
这一步非常重要。它避免了自动抽取把“所以”“那么”这种噪声直接提升成正式实体。
Stage 4:关系图发布与校验
最后再生成章节层级关系、对象关系,并对证据做一致性校验。
在这个过程中,我还修了一个关键工程问题:原书里有不少重复 toc_id,例如同样叫“复习课”的条目。如果只拿 toc_id 当 section id,Atlas 会串号。所以我把 section 节点改成了**row_id + toc_id 双键**,彻底解决重复编号带来的歧义。
这套系统现在已经包含了什么
截至这篇文章写作时,ismism 的当前规模是:
363条file_distillates365条正式节点- 其中
363条是章节骨架 2条是已经稳定的人物节点(卡夫卡与陀思妥耶夫斯基)
- 其中
512条正式关系914条证据索引1062条候选节点1425条候选关系701条未决项
这组数字的意义,不是“Atlas 已经完成”,而是:整个系统已经从 0 到 1 跑通了。
它已经具备:
- 查询已有对象
- 比较两个对象
- 从证据反查原文
- 对新对象做诊断
- 把稳定结论写回 Atlas
- 在未来会话中继续自我完善
为什么我后来越来越重视 Atlas,而不是只重视框架
一个纯框架型 Skill 的问题是:它擅长给你一个格子,却不擅长保存之前已经形成的判断。
比如我问:陀思妥耶夫斯基和卡夫卡在这套体系里的差别是什么?
如果只有矩阵规则,系统大概会回答:
- 都属于
3-3-4虚构的生存论 - 但一个更接近
3-3-4-1 - 一个更接近
3-3-4-2
这当然没错,但还不够。真正有用的是把这类判断做成可重复调用的提纯条目:
- 陀思妥耶夫斯基:
3-3-4-1 - 卡夫卡:
3-3-4-2 - 两者的共性、差别、边缘定位、证据路径全部固定下来
这样以后再碰到类似问题,系统不必重新发明轮子,只需要在 Atlas 上继续长。
从这个意义上说,ismism 不是“一个会套矩阵的 Prompt”,而是一个会逐渐形成静态理论图谱的分析系统。
我希望它以后怎样继续长
现在的 ismism 已经能用,但它最有价值的成长还在后面。
接下来最重要的,不是再去改一个更华丽的 Prompt,而是继续做三件事:
- 稳定高价值实体:加缪、博尔赫斯、尼采、海德格尔、萨特、马克思等对象,要从候选层提纯进正式层。
- 扩大关系密度:不仅要知道“谁属于哪里”,还要知道谁回答谁、谁批判谁、谁与谁互为变体。
- 在使用中增量回写:以后每次我真的拿它去分析文本、人物或现象时,只要结论稳定,就应该顺手写回 Atlas。
我现在越来越相信,好的 AI Skill 不该只是“会说”,而应该是:
- 会检索
- 会压缩
- 会引用证据
- 会保留稳定判断
- 会在一次次使用中变得更可靠
ismism 对我来说,就是朝这个方向做的一次本地知识工程实验。
结语
如果只把《主义主义》当成一本书,那它的终点可能只是“我终于读完了”。
但如果把它当成一个需要长期调用的理论系统,那么终点就会变成另一件事:我能不能把这套理论压缩成一个未来还会继续工作的工具。
ismism 就是我给出的第一个答案。
它现在还不是终极版本,但已经不再是一次性工作流。它已经是一个能够在之后的新对话里,继续从本地语料、派生规则和 Atlas 图谱中回到工作状态的 Skill。
而这正是我真正想要的:不是“这次解释对了”,而是“以后还能沿着同一条路继续长”。