前言¶
在 Cursor、Codex、Claude Code 或 DeepSeek Harness 裏寫代碼,常見的一個問題是:同一個決策、同一套發佈流程,隔幾天又要重新解釋一遍。會話壓縮、向量檢索或託管記憶 API 能把上一段對話塞進下一輪提示,但很難保證智能體下次打開的是你認可的那一頁,更難在糾錯之後讓後續調用必須命中更新後的正文。
DSH-KRouter(倉庫名 runtime36)走另一條路:把「記住」落成 Obsidian vault 裏的日結、蒸餾與晉升,用短名詞加別名表做檢索鎖,而不是維護向量庫。下面介紹它是什麼、能做什麼,以及如何在 DSH 裏安裝啓用。
這是什麼¶
DSH-KRouter 由 398894496-arch 維護,在 SkillHub 上歸類爲「記憶」。package.json 當前版本爲 0.4.0,許可證 MIT。
一句話定位:編碼智能體的第二大腦 OS——克隆下來的是協議、骨架、路由器和每日寫入器;vault 裏的名詞、項目與糾錯記錄隨你使用而增長,不會在 clone 時附帶作者私人筆記。支持 Cursor、Codex、Claude Code、DeepSeek Harness,共享同一套 vault 與 canonical_sources.psv 別名表。
與典型「智能體記憶」的差異可以概括爲:不靠語義近鄰兜底,不做向量庫運維;糾錯時改 canonical 頁面,下次調用必須打開該頁並帶回雙 SHA-256 回執。
核心功能¶
四層流水線¶
README 用 L1–L4 描述日常自進化(定時器默認開啓):
| 層級 | 作用 | 不應做的事 |
|---|---|---|
| L1 Logs | 每天在 05 下寫一條日誌 |
把日誌當可複用方法 |
| L2 Distill | 蒸餾摘要,不替代原文 | 自動寫入 active 方法 |
| L3 Promote | 五道門通過 → 當天自動寫 provisional;下次類似任務再詢問;採納且任務被接受 → active |
跳過 provisional 或直接寫 active |
| L4 Lock | 短名詞 → 對應頁面 + 雙 SHA-256;依賴 python3 與 rg,README 稱 8 GB M2 上可達數十毫秒級 |
向量回退、鄰居引用 |
檢索是鎖,不是產品本身:命中返回 canonical-match 與來源校驗字段;未命中返回 canonical_match: false 與提示,不冒充命中。
晉升與糾錯¶
- 首個符合條件的日子會自動寫入
provisional方法。 - 正式
active不自動寫入:遇到類似任務時詢問;採納且任務被接受後才晉升。 - 糾錯優先:改 canonical 頁面後,後續調用應打開該頁;這與「重新嵌入並希望舊塊衰減」的做法不同。
DSH 側能力¶
作爲 DSH 插件掛載時,提供只讀工具:status、preference、correction、memory(vault 路由,非聊天記憶)、project、search、suggest。卸載插件不刪除 vault 筆記。
dsh plugin add 是掛載路由與橋接;每日蒸餾寫入由 install.sh 安裝的定時任務負責。lamp: unused 表示你關閉了定時器。
依賴與環境¶
- 運行需要
python3、rg、PyYAML。 - 完整測試:
python3 -m pip install -r requirements-dev.txt && python3 -m pytest -q。 - CI 在每次 push 時跑 pytest、
first_run.sh與 DSH bridge;查詢時數據不出本機。
安裝與啓用¶
從社區目錄安裝(DSH)¶
README 給出的官方命令:
dsh plugin --profile web add github:398894496-arch/runtime36
本地已有克隆時,也可掛載路徑:
dsh plugin add /path/to/this/repo
安裝前建議閱讀倉庫源碼與 MIT 許可證。插件以當前 dsh 進程權限運行,會訪問本機 vault 路徑與密鑰配置。
驗證檢索鎖(約 15 分鐘)¶
README 提供無需 GPU、Docker 或嵌入服務的快速驗證,用於證明 L4 鎖,不會蒸餾昨日內容:
git clone https://github.com/398894496-arch/runtime36.git
cd runtime36
python3 -m venv .venv && . .venv/bin/activate
python3 -m pip install -r requirements.txt
./scripts/first_run.sh
新鮮克隆上 first_run.sh 約 20 秒可跑完;無需賬號、API key 或網絡。
啓動每日寫入器¶
這是 README 強調的產品核心。先把 template/ 複製到你的 vault,在別名表裏填入你的名詞(模板自帶十個樣例),再執行:
export OBSIDIAN_VAULT=/path/to/YourVault
./scripts/install.sh
API key 路徑: 在 vault 頁面 template/90 系統文件/自動化/自進化鑰匙.md 粘貼 *_API_KEY;或讓 install.sh 寫入 ~/.dsh-krouter-keys.env(chmod 600,不要放進 vault)。寫入器兩處都會讀,vault 頁面優先。
無 key: 已登錄的 CLI(grok、官方 Codex、claude)也可完成蒸餾與晉升,無需額外 env 文件。相關文件在 extras/host-daily-evolution/。
注意:OBSIDIAN_VAULT 必須在 install.sh 之前導出,否則定時器不會加載。install.sh 會安裝 ~/.agents/skills/krouter-obsidian 與 ~/.cursor/rules/krouter-obsidian.mdc;若目標已存在且未加 --force 會退出碼 1,且不覆蓋活躍的 obsidian-knowledge-router。
DSH 橋接自測¶
node extras/dsh/test-bridge.mjs
典型用法¶
檢索命中與未命中¶
每次路由都會返回回執,便於區分權威命中與猜測:
retrieval_status: canonical-match
canonical_source: /YourVault/Agent第二大腦.md
canonical_id: Q01
source_verified_at: 2026-01-01
source_sha256: d8c1d5af…
canonical_map_sha256: c55b8715…
canonical_match: true
未命中時 canonical_match: false 並附帶提示。可用 suggest 查看最近別名(僅作提示):
./scripts/krouter suggest homz
需要新路由時,向 canonical_sources.psv 增行,例如:
Q11|deploy;deployment;how we ship|02 經驗與方法/Deploy/發佈流程.md|Ship from main only
四端掛載,同一 vault¶
| 掛載 | 交付物 |
|---|---|
| Cursor | extras/cursor/krouter-obsidian.mdc(經 install.sh) |
| Codex | extras/codex/AGENTS.snippet.md |
| Claude Code | extras/claude-code/CLAUDE.snippet.md |
| DeepSeek Harness | DSH socket;只讀工具見上文 |
Cursor 規則會先跑 status,若存在 host_action 必須告知宿主。
適用場景與注意¶
適合:
- 已有或願意維護 Obsidian vault,並在 Cursor / Codex / Claude Code / DSH 中工作;
- 同一決策、流程反覆向智能體解釋,希望方法沉澱在 vault 而非聊天窗口;
- 接受「短名詞 + 別名表 + 頁面鎖」檢索,不需要向量庫或託管記憶 API;
- 願意讓每日定時器(默認開啓)做 seal → distill → promote。
不適合:
- 希望把聊天自動注入下一輪提示;
- 需要語義近鄰搜索或開箱即滿的 vault(克隆的是 OS,不是作者私人筆記);
- 不想維護名詞別名表與 canonical 頁面。
README 明確:這不是 Mem0,也不是普通筆記應用。作者 vault 在 2026-08-21 曾報告連續封存 72 天等數據,那是作者側已積累別名與晉升後的結果;你能本地復現的是 first_run.sh 與 pytest 套件。
安裝與日常使用前,請自行覈對源碼、權限與密鑰存放方式。SkillHub 爲獨立社區目錄,與 DeepSeek / 幻方無官方從屬關係。
結尾¶
DSH-KRouter 把「記憶」做成可審計的 vault 流水線:日結封存、蒸餾晉升、短名詞檢索鎖,Correction-first,定時自進化默認開啓。若你的痛點是智能體總記不住你已寫下的方法,可以先用 first_run.sh 驗證鎖,再按 README 配置 vault 與 install.sh。
- SkillHub 目錄頁:https://www.skillhub.cn/plugins/398894496-arch/runtime36
- GitHub 倉庫:https://github.com/398894496-arch/runtime36
- 中文 README:https://github.com/398894496-arch/runtime36/blob/main/README.zh.md