Skip to content

AI 代理友善知識庫

本提案解決傳統知識管理系統(Confluence、SharePoint、Google Docs)與 AI 驅動開發工作流程需求之間的根本錯配。為人類設計的可讀 Wiki 成為阻礙 AI 代理的環境,導致脈絡碎片化並妨礙自主代理運作。

核心洞察: 為人類瀏覽設計的知識系統會主動阻礙 AI 代理。轉向代理友善基礎建設,可在保持人類可編輯的同時讓知識可被機器讀取。

問題陳述

當前狀態:人類導向的知識孤島

團隊回饋的證據

痛點對 AI 工作流程的影響
專有格式AI 代理無法直接讀寫;需要 API 轉譯
無 Git 整合規格變更與程式碼變更脫鉤
富文字膨脹複製貼上引入格式偽影,破壞解析
附件依賴圖片/檔案無法被 AI 代理索引
權限複雜性AI 代理難以管理存取權杖
搜尋限制全文搜尋不足以支援語意查詢

根本錯配

傳統 Wiki 優化於:

  • 視覺呈現
  • 點選導航
  • 即時協作
  • 富媒體嵌入

AI 代理需要:

  • 純文字解析
  • 程式化存取
  • 版本控制整合
  • 結構化中繼資料

提議解決方案:Git-Based Markdown 知識系統

目標架構

核心原則

  1. Markdown 優先:所有內容使用純 Markdown,可選擇性擴充(Mermaid、frontmatter)
  2. Git 原生:版本控制是事實來源,而非同步目標
  3. 結構化中繼資料:每份文件包含機器可讀的 frontmatter
  4. 扁平層級:最小化巢狀;偏好標籤和交叉引用
  5. 代理可定址:每份文件有穩定、可預測的路徑

知識庫架構

目錄結構

knowledge-base/
├── CLAUDE.md                    # AI 代理指引
├── INDEX.md                     # 人類可讀目錄
├── .kb/
│   ├── schema.json             # Frontmatter schema 定義
│   ├── glossary.json           # AI 脈絡的術語定義
│   └── relationships.json      # 文件關係圖

├── products/
│   ├── vsaas/
│   │   ├── _product.md         # 產品概覽
│   │   ├── requirements/
│   │   │   ├── device-management.md
│   │   │   ├── video-playback.md
│   │   │   └── analytics.md
│   │   └── specs/
│   │       ├── api-v2.md
│   │       └── data-models.md
│   │
│   └── vortex/
│       ├── _product.md
│       └── ...

├── domains/
│   ├── device-identity.md      # 跨產品領域概念
│   ├── authentication.md
│   └── video-streaming.md

├── glossary/
│   ├── terms.md                # 通用語言定義
│   └── acronyms.md

├── architecture/
│   ├── decisions/              # ADRs(架構決策記錄)
│   │   ├── 001-use-grpc.md
│   │   └── 002-event-sourcing.md
│   └── patterns/
│       ├── repository-pattern.md
│       └── clean-architecture.md

└── guides/
    ├── onboarding.md
    └── contribution.md

Frontmatter Schema

每份文件包含結構化中繼資料:

markdown
id: req-device-management-001
title: 裝置管理需求
type: requirement
product: vsaas
domain: device-identity
status: approved
version: 2.1.0
created: 2025-01-15
updated: 2025-11-28
authors:
  - alice@company.com
reviewers:
  - bob@company.com
tags:
  - device
  - management
  - crud
related:
  - spec-api-v2
  - domain-device-identity
ai_summary: |
  裝置生命週期管理的核心需求,包含
  註冊、設定、監控和除役。
# 裝置管理需求

...內容...

關鍵中繼資料欄位

欄位用途AI 使用方式
id唯一識別碼交叉引用、穩定連結
type文件分類過濾、脈絡載入
product產品歸屬範圍限定代理脈絡
domain業務領域語意分組
status生命週期狀態過濾活躍 vs 封存
tags彈性分類發現、搜尋
related明確關係脈絡擴展
ai_summary預先計算摘要快速脈絡載入

代理整合模式

1. MCP 資源提供者

將知識庫公開為 MCP 資源:

typescript
// 知識庫 MCP server
const knowledgeBaseServer = {
  resources: {
    list: async () => {
      // 回傳所有文件及中繼資料
      return documents.map(doc => ({
        uri: `kb://products/${doc.product}/${doc.id}`,
        name: doc.title,
        mimeType: 'text/markdown',
        metadata: doc.frontmatter
      }))
    },
    read: async (uri: string) => {
      // 回傳文件內容
      return { content: await readDocument(uri) }
    }
  },
  tools: {
    search: async ({ query, filters }) => {
      // 跨知識庫語意搜尋
      return searchDocuments(query, filters)
    },
    getRelated: async ({ documentId }) => {
      // 回傳相關文件
      return findRelatedDocuments(documentId)
    }
  }
}

2. CLAUDE.md 整合

markdown
## 知識庫

### 存取需求
- **位置**`knowledge-base/products/{product}/requirements/`
- **格式**:含 YAML frontmatter 的 Markdown
- **搜尋**:使用 MCP 工具 `kb_search` 進行語意查詢

### 實作功能前
1. 搜尋知識庫的現有需求:`kb_search("功能名稱")`
2. 檢查相關規格:`kb_getRelated("requirement-id")`
3. 審查領域概念:`knowledge-base/domains/`

### 更新文件
實作功能時,更新相關知識庫文件:
1. 在需求檔案加入實作註記
2. 如需求已滿足則更新狀態
3. 為 API 變更建立新規格

遷移策略

階段 1:平行運行(第 1-3 個月)

活動:

  • [ ] 建立 Git 知識庫 repository
  • [ ] 定義 frontmatter schema
  • [ ] 建立包含 AI 指引的 CLAUDE.md
  • [ ] 在知識庫撰寫所有新規格
  • [ ] 在 Confluence 加入棄用通知

階段 2:主動遷移(第 3-6 個月)

活動:

  • [ ] 識別活躍 Confluence 頁面(過去 6 個月存取)
  • [ ] 轉換為 Markdown 格式
  • [ ] 加入結構化 frontmatter
  • [ ] 建立重導向對應
  • [ ] 更新交叉引用

階段 3:封存與完成(第 6-9 個月)

活動:

  • [ ] 將剩餘內容匯出為靜態封存
  • [ ] 停用 Confluence 編輯
  • [ ] 實作 MCP 資源提供者
  • [ ] 完成 Context7 註冊
  • [ ] 訓練團隊新工作流程

比較:Confluence vs Git 知識庫

面向ConfluenceGit 知識庫
AI 讀取存取需要 API,有速率限制直接檔案讀取
AI 寫入存取複雜 API、權限Git commit
版本歷史內建但分離Git log、blame
分支不支援原生
程式碼鄰近性完全分離同 repo 或連結
離線存取有限完整
搜尋僅全文語意 + 結構化
協作即時PR-based 審查
成本按用戶授權免費(Git hosting)
鎖定高(專有)無(純文字)

成功指標

指標目標如何測量
AI 脈絡載入時間<2s測量 MCP 資源取得
規格對程式碼關聯>80%追蹤含規格引用的 commits
文件新鮮度平均 <90 天監控 updated 日期
交叉引用準確度100%驗證 related 連結
遷移完成度100% 活躍審計 Confluence 使用
代理查詢成功率>90%追蹤 MCP 工具結果

要避免的反模式

1. 重新建立 Wiki 功能

問題: 加入富編輯、即時協作、複雜權限。

為何失敗: 偏離 Git 簡潔性,產生同步問題,降低 AI 相容性。

替代做法: 接受 PR-based 協作作為模式。

2. 深層巢狀

問題: 建立 5 層以上的資料夾層級。

為何失敗: 難以導航,路徑變得冗長,最終還是需要搜尋。

替代做法: 扁平結構搭配標籤和交叉引用。

3. 忽略 Frontmatter

問題: 撰寫沒有結構化中繼資料的 Markdown。

為何失敗: 失去機器可讀性,無法過濾,破壞關係。

替代做法: 透過 pre-commit hooks 強制 frontmatter。

4. 部分遷移

問題: 無限期同時運行 Confluence 和 Git KB。

為何失敗: 知識分裂,對事實來源困惑,雙重維護。

替代做法: 設定明確遷移截止日期,封存 Confluence。

相關: 持續脈絡清理 | 返回: 提案概覽

參考資料