llm-wiki

star 65

基于 LLM 的智能知识库管理工具,接收用户传入的新文章或内容,自动提取关键信息并整合到现有 wiki 中,更新实体页面、修订主题摘要、标记矛盾点。

owenliang By owenliang schedule Updated 4/6/2026

name: llm-wiki description: 基于 LLM 的智能知识库管理工具,接收用户传入的新文章或内容,自动提取关键信息并整合到现有 wiki 中,更新实体页面、修订主题摘要、标记矛盾点。

LLM Wiki 知识库管理

核心概念

LLM Wiki 是一种增量式知识库构建模式:

  • 原始资料层 (raw/): 用户提供的源文档,只读
  • Wiki 层 (wiki/): LLM 生成的 markdown 文件,包含摘要、实体页面、概念页面等
  • Schema 层: 本 skill 定义的工作流程和规范

与传统 RAG 不同,LLM Wiki 会持续构建和维护一个结构化的、相互关联的 markdown 文件集合,知识是累积的而非每次都重新检索。

目录结构

llm-wiki/
├── raw/                    # 原始资料(用户放入,LLM 只读)
│   ├── articles/
│   └── assets/            # 图片等附件
├── wiki/                   # LLM 维护的知识库
│   ├── index.md           # 内容索引目录
│   ├── log.md             # 操作日志(时间线)
│   ├── sources/           # 源文档摘要
│   ├── entities/          # 实体页面(人物、组织、产品等)
│   ├── concepts/          # 概念页面(理论、方法、术语等)
│   └── synthesis/         # 综合分析页面
└── .qoder/skills/llm-wiki/  # 本 skill

工作流程

1. 接收新内容

当用户提供新文章或内容时:

  1. 将原始内容保存到 raw/articles/
  2. 记录文件名和时间戳

2. 分析内容

使用 LLM 分析原始内容,提取:

  • 关键要点: 3-5 个核心观点
  • 实体: 提及的人物、组织、产品、地点等
  • 概念: 理论、方法、术语、技术
  • 关系: 实体/概念之间的关联
  • 矛盾点: 与现有 wiki 冲突的信息

3. 更新 Wiki

根据分析结果更新 wiki:

创建/更新源文档摘要 (wiki/sources/原始文件名.md):

---
title: 文章标题
date: 2026-04-06
source: raw/articles/xxx.md
tags: [tag1, tag2]
---

# 文章标题

## 摘要
一句话概括核心内容

## 关键要点
- 要点 1
- 要点 2

## 提取的实体
- [[实体A]]
- [[实体B]]

## 提取的概念
- [[概念X]]
- [[概念Y]]

更新实体页面 (wiki/entities/实体名.md):

  • 如实体已存在,追加新信息
  • 标记信息来源
  • 如发现矛盾,标注并解释

更新概念页面 (wiki/concepts/概念名.md):

  • 类似实体页面的处理方式

创建/更新综合分析页面 (wiki/synthesis/主题名.md):

  • 当新内容与某个主题相关时,更新该主题的综合分析
  • 整合多个源文档的观点,形成统一视角
  • 标记不同来源的观点差异
  • 示例页面:
    • wiki/synthesis/AI-Agent-平台对比.md - 对比不同 Agent 平台
    • wiki/synthesis/技术趋势分析.md - 跨文档的技术趋势总结

处理图片资源 (raw/assets/):

  • 文章中的图片下载到 raw/assets/
  • 在 wiki 页面中引用本地图片路径
  • 图片命名:{文章名}-{序号}.{扩展名}

更新索引 (wiki/index.md):

  • 必须更新源文档摘要部分: 在 ## 源文档摘要 表格中添加新文章的链接和摘要
  • 必须更新实体部分: 如有新实体,添加到 ## 实体 表格
  • 必须更新概念部分: 如有新概念,添加到 ## 概念 表格
  • 必须更新综合分析部分: 如有新 synthesis,添加到 ## 综合分析 表格
  • 每个部分都要检查并更新,不要遗漏

记录日志 (wiki/log.md):

## [2026-04-06] ingest | 文章标题
- 添加了源文档摘要
- 更新了实体: A, B, C
- 更新了概念: X, Y
- 发现矛盾: 无/有(说明)

4. 回答查询

当用户提问时:

  1. 先读取 wiki/index.md 找到相关页面
  2. 读取相关页面内容
  3. 综合信息生成答案
  4. 答案可保存为新的 wiki 页面(如用户要求)

使用 QMD 进行语义检索(推荐)

  • 在内容更新后,先执行 qmd update 扫描文件系统更新索引
  • 然后执行 qmd embed 生成向量嵌入(用于语义搜索)
  • 使用语义搜索查找相关内容:qmd query "搜索内容"
  • QMD 会自动进行混合搜索(向量相似度 + 全文检索)并重排序
  • 示例:qmd query "Agent 平台对比"qmd query "嵌入式架构特点"
  • 高级用法:使用结构化查询 qmd query $'lex: 关键词\nvec: 语义描述'

操作指令

接收新文章

方式 1 - 自然语言指令: 用户说"添加这篇文章"或提供内容时:

  1. 询问文章标题(如未提供)
  2. 保存原文到 raw/articles/
  3. 执行分析 → 更新 wiki 流程
  4. 汇报更新摘要

方式 2 - 命令格式(推荐): 用户使用 /llm-wiki <文章链接> 格式时:

  1. 识别命令格式,提取文章链接
  2. 使用 fetch_content 获取文章内容
  3. 从 URL 或内容中提取文章标题
  4. 保存原文到 raw/articles/
  5. 执行分析 → 更新 wiki 流程
  6. 汇报更新摘要

示例:

  • /llm-wiki https://example.com/article
  • /llm-wiki https://github.com/user/repo/blob/main/docs/guide.md

查询知识库

方式 1 - 命令格式(推荐): 用户使用 /llm-wiki 搜索<关键词>/llm-wiki <问题> 格式时:

使用 QMD 语义检索

  1. 先执行 qmd update 更新索引(扫描文件系统,检测新增/修改/删除的文件)
  2. 然后执行 qmd embed 生成向量嵌入(用于语义搜索)
  3. 使用 qmd query "用户问题" 进行语义搜索
  4. 根据搜索结果读取相关 wiki 页面
  5. 综合信息生成带引用的回答

示例:

  • /llm-wiki 搜索Agent平台
  • /llm-wiki Agent平台有哪些
  • /llm-wiki CoPaw和OpenClaw的区别

方式 2 - 自然语言指令: 用户直接提问时:

  1. 读取 wiki/index.md
  2. 识别相关页面
  3. 读取并综合答案
  4. 提供带引用的回答

健康检查

用户说"检查 wiki"或"lint"时:

  1. 扫描所有页面
  2. 检查:
    • 页面间的矛盾
    • 过时声明
    • 孤立页面(无入链)
    • 缺失的概念页面
    • 缺失的交叉引用
  3. 生成检查报告
  4. 建议修复措施

命名规范

  • 文件名使用小写,空格用 - 替换
  • 实体页面: wiki/entities/实体名.md
  • 概念页面: wiki/concepts/概念名.md
  • 源摘要: wiki/sources/原始文件名.md
  • 内部链接使用 Obsidian 格式: [[页面名]]

输出格式

所有 wiki 页面使用标准 markdown,可选 YAML frontmatter:

---
title: 页面标题
date: 2026-04-06
sources: [source1, source2]
tags: [tag1, tag2]
---

# 页面标题

内容...

## 相关页面
- [[相关页面A]]
- [[相关页面B]]
Install via CLI
npx skills add https://github.com/owenliang/llm-wiki --skill llm-wiki
Repository Details
star Stars 65
call_split Forks 23
navigation Branch main
article Path SKILL.md
More from Creator