主题颜色
从零构建一个 LLM Wiki
下面用虚构领域“星港运维”演示完整流程。<WIKI_PATH> 代表你明确授权给 Agent 的知识库目录。
1. 先建立方向与结构
初始化后先阅读并填写四个方向文件:
purpose.md:使命、读者、收录范围和质量标准。SCHEMA.md:Raw / Wiki / Schema 的职责,页面类型、命名和链接规则。index.md:知识库的稳定入口和主要 Hub。log.md:按时间倒序记录结构与知识变化。
如果已经安装公开 Skill,可以初始化空目录:
bash
python3 ~/.codex/skills/llm-wiki/scripts/init_wiki.py \
--path "<WIKI_PATH>" \
--domain "星港运维"初始化只是骨架。正式采集前,应让 Agent 根据你的目标调整 Purpose 与 Schema。
2. 导入一份来源
假设收到虚构文章《星港缓存策略》。先在 Raw 保存标题、来源标识、采集日期和必要正文,再提取其中的机制、约束、实体与未解决问题。
不要直接把整篇文章改写成摘要。先搜索 Wiki:如果已有“边缘缓存失效”机制页,就补充新证据和限制;只有出现独立概念时才新建页面。
3. 建立机制页和 Hub
一篇机制页应该能脱离本次会话独立阅读,并包含:
- 机制如何工作以及在什么条件下成立。
- 来源支持的事实与 Agent 的综合判断。
- 已知限制、反例和仍未解决的问题。
- 指向来源记录、所属 Hub 和相关概念的链接。
在“缓存策略”Hub 中加入机制页入口。如果“边缘缓存失效”和“回源保护”互相帮助理解,就在两边加入带语义的双向链接,而不是只堆页面名称。
4. 同步入口与维护记录
确认新机制页可以从 index.md 或某个 Hub 到达,并在 log.md 顶部记录这次知识变化。索引用于导航,日志用于说明发生了什么,两者不要替代正文。
5. lint 与人工复核
完成写入后至少检查:
- Frontmatter、命名、相对链接与索引覆盖是否符合 Schema。
- 是否出现无 Hub 或索引入口的孤立页。
- 两个来源发生冲突时,是否保留各自出处并明确当前综合判断。
- Raw、页面和附件是否包含密钥、个人路径或其他敏感数据。
- 是否先增强已有机制页,再创建可能重复的新页面。
公开包中的 scripts/validate.py 是发布仓库验证器,验证器只验证安装的 Skill 包,不是面向任意知识库的 lint CLI;不要把 <WIKI_PATH> 传给它。
知识库 lint 应按该知识库自己的 SCHEMA.md 和公开 Skill 的 lint checklist(references/lint-checklist.md)执行。让 Agent 先读取这两个文件,再逐项检查结构、链接、索引覆盖、日志顺序、孤立页、冲突和敏感数据;最后报告已修复项、需人工判断项与未执行检查。知识内容是否正确仍需要人判断。
完成一次小而完整的循环后,再批量采集。这样 Schema、Hub 和质量标准会先经受真实材料检验。