基于 LLM Wiki 打造自进化 AI 编程系统

文章介绍了如何利用 Andrej Karpathy 提出的 LLM Wiki 概念,通过构建持久化且自更新的 Markdown 知识库,解决 AI 编程助手(如 Claude Code)在长周期项目中的“上下文失忆”问题。这种方法能让 AI 累积项目经验与决策逻辑,实现从单纯生成代码到维护自进化知识体系的转变。

Image

大多数开发者将 Claude Code 视为一个强大的结对编程工具:粘贴上下文,请求功能或修复,然后获取代码。然而,在下一个会话中,它往往会遗忘关键决策,重复已被拒绝的模式,或者缺乏对现有组件和业务规则的认知。

这种“上下文失忆症”(Context Amnesia)严重阻碍了大型项目的进展。Andrej Karpathy 最近分享了一种更好的模式——LLM Wiki

核心理念:从一次性回答转向复利式知识库

与其将 LLM 视为无状态的代码生成器,不如利用它来构建和维护一个持久的、自我更新的知识库——一个由相互关联的 Markdown 文件组成的“活体 Wiki”。

  • 运作流程:原始资料输入 → LLM 进行编译、总结、链接和维护 → AI 随着时间的推移变得越来越聪明。
  • 知识积累:传统的 Prompt 或基础 RAG 每次都会向模型投喂原始文档,知识无法积累。而 LLM Wiki 模式下,LLM 会维护一个 wiki/ 目录,包含结构化的 Markdown 文件(摘要、实体页面、概念文章、反向链接和索引)。
  • 自我维护:LLM 会标记矛盾、建议新的连接、在有新信息时更新页面,甚至将生成的代码解释重新归档到系统中。

Image

项目实战:前端与 CRM 系统的结合

我将这一想法应用于我的 React/TypeScript 项目。通过让 Claude Code 摄取代码库、Shadcn/ui 组件、CRM 需求和 API 规范,效果令人惊叹:

  1. 自动文档化:它发现并记录了所有现有的 Shadcn 组件。
  2. 架构关联:它为数据模型、用户流和架构决策创建了互联页面。
  3. 一致性维护:在请求开发新仪表盘时,它会参考 Wiki 中的现有模式,选择合适的组件包,并确保设计系统的一致性。
  4. 持续进化:完成任务后,它会自动更新 Wiki,记录新的实现细节和组件关系。

经过多次会话,输出变得越来越智能,它开始主动根据早期的决策提出改进建议,并捕捉潜在的不一致之处。

Image

分步设置指南

以下是复制该系统的具体步骤,大约需要 5-15 分钟即可启动:

1. 创建文件夹结构

建议将 LLM Wiki 放在一个独立的目录中,以保持代码库整洁:

my-llm-wiki/
├── raw/          # 存放所有原始素材(代码文件、PDF、会议记录、聊天导出、图片等)
├── wiki/         # 由 LLM 维护的结构化知识库
│   ├── index.md
│   ├── concepts/
│   ├── entities/
│   ├── components/     # 例如 Shadcn 或 React 组件
│   ├── decisions/
│   └── summaries/
└── schema.md     # Wiki 规则(类似于 CLAUDE.md),对保持一致性至关重要

2. 引入核心思想文件

参考 Karpathy 的 Gist 内容,将其作为初始 Prompt 粘贴到 Claude Code 会话中。告诉 Claude:“基于这个想法为我构建一个完整的 LLM Wiki 系统。我使用 Obsidian 进行查看。请创建文件夹结构,定义良好的 schema.md,并给出如何摄取源文件和维护 Wiki 的步骤。”

3. 定义 Schema (schema.md)

这是 LLM 行为的“宪法”,应包含:

  • 文件夹命名规范。
  • 页面命名规则。
  • 如何处理反向链接和引用。
  • 更新现有页面的时机和方式。
  • 风格指南(例如:始终包含对原始素材的引用)。
  • 特定领域的细节(例如:对于前端组件,记录 Props、依赖项和使用示例)。

4. 摄取源文件

将文件放入 raw/ 文件夹,然后提示 Claude:“摄取 raw/ 中的新来源并更新 Wiki。创建或更新相关页面,包含摘要、反向链接以及与现有知识的连接。完成后显示更改摘要。”

5. 在工作中持续演进

在进行编码任务时,添加以下循环指令:“首先查阅 wiki/ 以获取相关上下文和模式。完成任务后,用新的决策、组件细节和任何心得更新 Wiki。”

6. 使用 Obsidian 进行查看与导航

my-llm-wiki/ 文件夹作为仓库(Vault)在 Obsidian 中打开。你将获得一个美观的、可查看关系图谱的知识库,而大部分编写和维护工作都由 LLM 完成。

7. 维护与自检

定期运行健康检查:“对 Wiki 进行健康检查:查找矛盾、孤立页面、缺失链接或新连接的机会。提出改进建议并进行更新。”

可选的增强功能

  • 内存堆栈结合:与 CLAUDE.md 或 MCP(Model Context Protocol)结合,增强会话记忆。
  • 自动化工具:添加脚本将 Claude 会话自动导出到 raw/ 目录。
  • 可视化:使用 Obsidian 插件(如 Marp、Dataview)来可视化输出。
  • 索引优化:对于大型 Wiki,让 LLM 维护索引文件和摘要,以保持查询效率。

总结:从操作代码转向操作知识

通过这种方式,Claude 不再是一个“新手实习生”,而是一个深度理解项目并能记住每一个决策的领域专家。

这正是 Karpathy 所强调的转变:从单纯的“操纵代码”转向“操纵可复利的知识”。在未来,最强大的 AI 编码设置不仅拥有巨大的上下文窗口,还拥有丰富的、自我维护的知识库,使 AI 能够真正理解你的工作。

Image

  • 原文链接: x.com/intheworldofai/sta...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
intheworldofai
intheworldofai
江湖只有他的大名,没有他的介绍。