Commit Graph

9 Commits

Author SHA1 Message Date
Leo ecf1f882c6 feat: 安裝結構收進 system-dev/(不污染用戶根目錄)+ 舊版自動遷移 + bump 1.9.0
工具產物原散在用戶根目錄(docs 七層、scripts),又把 wiki/VERSION 寄生在 CC 原生
.claude/ 裡,用戶分不清哪個 docs 是工具的。這版徹底收斂:除 .claude/(settings/
commands/hooks)與 CLAUDE.md 留根,工具所有資料收進 system-dev/。

對應 SDD: system-dev/docs/3-specs/install-layout/(內部記錄,依原則不推)。

- 新結構 system-dev/{VERSION,wiki/,docs/,scripts/};.claude/ 只剩 CC 機制檔
- wiki 改寫產物落點正式化:install 建 system-dev/wiki/cards/(.gitkeep)
- docs 雙語義拆開:工具文件→system-dev/docs/;用戶 raw source 維持原處只讀
- scripts 一開始就裝進 system-dev/scripts/
- 舊版自動遷移雙保險:update.sh 冪等搬移(wiki 含 .git、docs 白名單)
  + session-start hook 偵測舊結構未遷移時提示(low-code 用戶兜底)
- wiki-secret-scan 觸發路徑改 system-dev/wiki/**(否則新結構防護失效)
- 全套路徑引用同步:CLAUDE/SKILL/wiki-*/sdd-*/hooks/INDEX/README(中英)
- 沙盒驗證:遷移含 .git commit 一致、冪等、用戶自填 docs 保留;全 bash -n 過

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-26 15:13:43 +08:00
Leo f2c048c79f feat: wiki 採集加「萃 gloss」(node 一句說明,供下游語義 normalize)+ bump 1.8.0
issue #9:下游 KBDB 語義 normalize 要對「entity 名 + gloss」一起 embedding 自動
歸一同義詞,但採集只萃三元組沒萃 gloss。原則:gloss 在知識生產當下由 local
CC/Cowork 建,不留給下游 ingest 臨時補(下游視角編不出好 gloss)。

- 卡片 frontmatter 加 gloss: 欄位(選填、deep tier 才產)
- gloss ≠ 摘要:gloss 給機器 normalize,## 摘要 給人讀
- 對齊下游 envelope nodes[].gloss
- wiki-init.md(CC)與 docs/SKILL.md(Cowork)兩路徑同步

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-26 13:47:07 +08:00
Leo bc0fe3f01c docs: 釐清 taxonomy 是受控擴充非凍結(先查重再登記)+ bump 1.6.1
1.6.0「禁止自創」措辭過嚴,碰到新軸會逼 AI 硬塞或偷創。改成:
禁的是繞過字典直接冒新標籤,不是禁新增——遇裝不下的內容先查重
(非同義詞?)、確認是新軸才登記進該 repo 的 TAXONOMY.md 再用。
字典 per-repo,跨 repo 不共用。新增領域軸要慎,形態軸較安全。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-26 01:28:21 +08:00
Leo dccb97a6df feat: wiki 完整規劃方式(183 卡實證)三層架構+frontmatter標籤+多層索引(issue #8/#6/#7)
在 Logseq vault(234 篇 → 183 卡、571 typed-edge)完整跑一輪後定案的
「對 AI 最優」規劃方式,一次納入 wiki-init.md 與 docs/SKILL.md:

- 三層架構:INDEX(標籤視圖)→ cards/<bucket>/00-INDEX → 原子卡。
- frontmatter tags 分類(非行內 #tag、非資料夾),TAXONOMY.md 當字典禁自創。
- 桶子索引固定名 00-INDEX.md(#6);指它帶路徑 [[bucket/00-INDEX]](#7)。
- 新檔 TAXONOMY.md:install download_if_missing、update keep_file。
- 踩坑警語:subagent 絕不寫 raw source(git 驗證)、檔名全形字元一致、量大用 Haiku。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-26 01:20:40 +08:00
Leo 331e4d56a7 feat: wiki 連結升級成 typed-edge 三元組 A >> 謂詞 >> B(issue #5)
裸 [[wikilink]] 是弱連結——只說「有關」,沒說關係是什麼,下游要建
knowledge graph 還得回讀兩張卡。改寫成帶語義的三元組,下游 ingest 直接
parse 出帶類型的有向邊,把關係也預編譯。

- wiki-init.md + docs/SKILL.md 的 ## 關聯 改用 [[A]] >> 謂詞 >> [[B]]。
- 規則:方向性、謂詞用動詞、自由詞彙、向後相容(裸 [[A]] 仍合法)。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-25 23:11:31 +08:00
Leo 6b49f35925 feat: wiki = AI 改寫的記憶(拿掉索引模式)+ 量大建議 Haiku(issue #4)
修正 1.4.0 方向:索引 vs 改寫不該是兩種並列模式。記憶系統的目的是
讓 AI 之後讀得快——不管 vault 或一般開發,原文都是亂的,只做指回原文
的索引等於每次重新解析、沒省到。wiki 的價值在「改寫一次,之後每次讀都便宜」。

- 拿掉索引模式,改寫成 wiki 是所有專案的唯一預設。
- 唯一例外:不可改動的正式文件(須逐字讀)才用指針指回原文。
- 量大時主動建議派 Haiku subagent 並行改寫,主模型負責切概念與審稿。
- INDEX.md 範本統一成概念索引指向 wiki 內部條目。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-25 21:51:30 +08:00
Leo 37070fe506 feat: wiki-init 新增草稿改寫模式(AI 當總編輯)+ bump 1.4.0(issue #4)
wiki-init 原本整套指令只有「分類歸檔/導航」,把人和 AI 都導向做出
[[原文檔名]] 指回原文的索引。但 PKM/vault 使用者常要的是相反的:
原文是草稿,要 AI 改寫萃取成自包含 wiki,讀 wiki 就好不必回原文。

- 開頭新增模式分岔(索引 vs 草稿改寫),附對照表。
- 偵測到 Logseq/Obsidian vault → 預設草稿改寫模式,但問一句可切回。
- 一般專案 → 維持索引模式(向下相容)。
- 草稿改寫格式寫進命令本身(概念原子化、自包含、來源指針、wikilink),
  與 Cowork docs/SKILL.md 一致。
- INDEX.md 範本支援兩種形狀。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-25 21:44:39 +08:00
Leo 29e3636bd2 feat: wiki 機敏防護三層(.wikiignore + 行內標記 + secret-scan hook)
不想被編入 wiki 的內容(密碼/金鑰/個資)三層防線:
- L1 .wikiignore:整個機敏檔不編入(glob,像 .gitignore)
- L2 行內標記 <!-- wiki:ignore -->:檔案內某段不編入
- L3 wiki-secret-scan.sh hook:機敏值真寫進 .claude/wiki/ → exit 2 擋

L3 偵測密碼賦值/PEM 私鑰/AWS·GitHub·Slack·Google·Stripe 金鑰/JWT/
連線字串帳密/台灣身分證/信用卡號;wiki-secret-ok 行尾標記可豁免誤判。
wiki-init/wiki-capture/SKILL 寫入 L1+L2 協議。

誠實限制:L1/L2 靠 CC 自律、L3 靠 regex(有偽陽/偽陰),減少意外外洩
非保險箱——真正的密鑰本就不該進版控。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-20 12:45:28 +08:00
Leo 8aa1b68ca0 Initial commit 2026-06-08 16:06:18 +08:00