dsh-cardian:本地 Obsidian 知识中心插件

DeepSeek Harness (DSH) 的核心理念是“一切皆插件”。在构建智能体或本地开发环境时,往往需要将代码仓库文档、知识卡片和会话记忆持久化保存。dsh-cardian 是由 myYangyunfan 维护的一个插件,它将主流智能体 IDE 的“知识中心”能力内化,并将所有数据落地到本地 Obsidian vault 中。每个知识卡片、记忆条目和 RepoWiki 页面都会生成带有 YAML frontmatter 的 Markdown 文件,支持在 Obsidian 中直接查看、搜索和图谱化。

核心功能

插件通过三个主要模块构建知识库:

  • RepoWiki:扫描本地代码仓库,生成 Wiki 骨架,并由 Agent 填充语义描述。
  • Knowledge Cards:原子知识单元,支持基于 SM-2 算法的闪卡复习计划,使用 YAML frontmatter 存储。
  • Memory:跨会话的持久化记忆,按 Scope 分组,支持事实、重要性和类型分类。

活动驱动自动刷新

插件监听 DSH 会话的 session/event(即 user/message)。当会话的工作目录与现有的 RepoWiki 区块匹配时,系统会自动:
1. 向 Memory 模块写入一条带有 scope=<project> 标签的“最近对话”记录;
2. 触发 refreshAll(),重建 RepoWiki、Knowledge Cards 和 Memory 的索引。

这意味着只要某个项目有对话活动,相关的知识库就会自动保持最新。

一键凝练

在 RepoWiki 标签页的“沉淀”操作中,点击凝练不仅会生成骨架卡片,还会启动 Agent 会话,自动填充内容。生成的卡片包含结构化的章节,如:
* ## 职责
* ## 关键实现
* ## 依赖
* ## 注意点

凝练过程支持幂等性,已填写的内容不会被覆盖,仅处理新扫描或刷新的骨架。

知识树层级

知识树面板提供可展开的文件夹层级。第一级按模块分组(RepoWiki/知识卡片/记忆),RepoWiki 层级进一步按文件路径细分(如 src ▸ lib ▸ store.js)。点击项目或文件夹可展开,点击文件可查看内容。

工具矩阵

插件暴露了 36 个工具,并在定义中标注了行为属性(readOnly、idempotent、destructive),帮助 Agent 选择正确的操作方式。主要工具包括:
* 只读类:search、recall、tagCloud、backlinks、related、status。
* 幂等类:import、importMarkdown、reindex、ingest、upsert、review。
* 破坏性类:delete。

安装与启用

作为 DSH 插件安装:

npm install dsh-cardian

安装后,需将 cordis.patch.yml 中的 insert 行合并到当前配置中。配置项包括:
* vaultPath:Obsidian 仓库路径。
* autoInit:自动初始化。
* semanticSearch:语义搜索开关。
* searchAlpha:混合搜索参数(0=纯语义,1=纯关键词)。

使用示例

插件提供 CLI 和独立运行模式,核心引擎框架无关,可同时服务于 DSH 插件和独立 CLI。

# 安装插件
npm install dsh-cardian

# 查看状态
node cli.mjs status --vault ./cardian-vault

# 添加知识卡片
node cli.mjs card add "Closure" "closure = function + lexical environment" --tags js

# 运行演示示例
node examples/demo.mjs

# 手动构建客户端 UI
npm run build:client

生态与地址

插件遵循 MIT 许可证,核心引擎无框架依赖,未来计划支持 MCP 服务器。

  • GitHub:https://github.com/myYangyunfan/dsh_cardian
  • 社区目录:https://www.skillhub.cn/plugins/myYangyunfan/dsh_cardian
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜