Skip to content

Latest commit

 

History

History

README.md

專案知識庫(knowledge/)

這個資料夾記錄這個專案的為什麼——原則、方向、教訓——也就是程式碼本身留不住的東西。它讓 AI(和新加入的人)在動手前,先讀懂專案的意圖與限制。

由 knowie 維護:一個讓 AI 結構化地維護專案知識的工具。不熟 knowie 也沒關係——下面就能讀懂。

從這三個檔開始

  • principles.md — 原則:專案不可妥協的核心信念與規則(分「根本原則」和從它推導的「延伸原則」)。
  • vision.md — 願景:要解決什麼問題、現在走到哪、路線圖。
  • experience.md — 經驗:開發中蒸餾出的教訓(踩過的坑、學到的模式)。

需要細節時,往子目錄

  • concepts/ — 母概念:反覆出現的核心概念;三個核心檔只放指針,細節在這。
  • episodes/ — 情節記憶:值得回憶的完整現場(教訓/決策背後的故事)。
  • history/ — 因果軌跡:為什麼變成現在這樣(決策的轉移、被否決的選項)。
  • draft/ — 短期記憶:還沒定案、正在醞釀的想法。

怎麼讀

從三個核心檔讀起;每個檔底部有「關鍵延伸」表,告訴你某個主題該往哪個子檔深入。

維護它的 skill

如果你用支援 knowie 的 AI 工具(如 Claude Code),這些指令幫你維護這個知識庫:

  • /knowie-init — 從零建立知識庫
  • /knowie-capture — 把一段討論/想法統整進對的地方
  • /knowie-consolidate — 你主動把成熟的 draft 固化出去(capture 的對稱另一端)
  • /knowie-next — 根據知識庫規劃下一步該做什麼
  • /knowie-judge — 檢查一致性、對齊程式碼、整理
  • /knowie-migrate — 結構升級時遷移知識庫

(只是想讀懂專案?忽略這段沒關係。)

⚠️ 兩個標記——它們讓「過時路徑」的掃描收得掉

judge 會掃「指向程式碼的路徑還在不在」。而三種東西長得一模一樣:

🔴 真的過時       該修
⟨曾經⟩           歷史敘述——那個路徑【當時是對的】,不該改
⟨規劃⟩           還沒做的東西——未來式,不該改

沒有標記的話,後兩種每次都會被報一次,而 knowie 的 Converge 不變式說 「再跑一次應該接近 no-op」。

一個每次都報同樣結果的檢查,與一個沒有人跑的檢查,最後效果一樣 ——因為人會學會跳過它。

⚠️ 而 history/、episodes/、draft/retired/ 三個目錄天生是「曾經」 ——掃描直接排除,不需要逐處標記。

掃描(judge 用這一段)

排除目錄   history/ / episodes/ / draft/retired/
排除寫法   刪除線 ~~舊路徑~~ / 帶 ⟨曾經⟩ 或 ⟨規劃⟩ 標記的
剩下的     🔴 才是真的過時

2026-08-17 第一次套用:14 筆 → 0 筆。

[[X]] 是什麼

行內的 [[X]] 是指名,不是路徑。它涵蓋三種東西:

[[投影]]              → concepts/投影.md
[[經驗]]              → experience.md(三個入口檔同理)
[[build-guardrail]]   → skills/build-guardrail/SKILL.md

⚠️ 所以「[[X]] 找不到對應的 concepts 檔」不等於死引用——2026-08-19 的 judge 掃出 10 筆,只有 1 筆是真的(回退程式碼但不回退知識 少了一個逗號), 其餘是 skills、三檔、以及 markdown 裡的程式碼片段誤判。

一個掃描如果不知道自己在掃什麼命名空間,它的每一筆命中都要人再判一次 ——而那正是它想省掉的工。

真正的連結用 [](相對路徑),圖由連結導出,不儲存(見 principles P8)。