fango19961106-dotcom / dsh-knowledge-graph

已收录

Durable knowledge tools for DeepSeek Harness: kg_remember/kg_search/kg_recent — zero-dependency node:sqlite FTS5, one file, survives session ends

master工具会话 查看源代码

安装

npx -y @deepseek-ai/dsh plugin --profile web add github:fango19961106-dotcom/dsh-knowledge-graph

此安装命令根据 GitHub 仓库地址生成,是未经验证的安装起点。

README

维护者编写的文档快照。

在 GitHub 查看 ↗
提交版本 b08a8bc同步于 2026年8月18日

dsh-knowledge-graph

Durable knowledge graph plugin for DeepSeek Harness (DSH).

Gives every agent session three model-facing tools backed by one embedded FTS5 database — so lessons, patterns and decisions survive session ends, preset switches and process restarts:

ToolPurpose
kg_rememberPersist a lesson / pattern / decision / field note / false positive
kg_searchBM25 full-text recall across everything ever remembered
kg_recentNewest entries — cheap context refresh at session start

Extracted from the agent-knowledge-graph architecture (L1 entries → L3 BM25 recall → L4 memory), compressed into a single zero-dependency plugin.

Features

  • Zero npm dependencies — storage is Node's built-in node:sqlite (FTS5, WAL mode, porter tokenizer)
  • One file, one store~/.local/share/dsh-knowledge-graph/knowledge.db (respects $XDG_DATA_HOME), shared by every session and preset in the profile
  • Triggers keep FTS in sync — insert/delete triggers, no manual reindex
  • Sanitized MATCH input — model-supplied queries are stripped of FTS operators; malformed input falls back to recent-listing instead of erroring
  • Clean unload — the DB handle closes when the plugin unloads (Cordis effect unwinding)

Install

Requires Node >= 22.5 (for node:sqlite).

# from a checkout
git clone https://github.com/fango19961106-dotcom/dsh-knowledge-graph
cd dsh-knowledge-graph

Then add to a DSH profile (a running dsh is a plugin tree composed of bundles — add this as an out-of-tree plugin):

mkdir -p ~/.dsh/plugins
cp -r . ~/.dsh/plugins/dsh-knowledge-graph

and list it in your profile's cordis.patch.yml:

- insert:
    - id: knowledge-graph
      name: '~/.dsh/plugins/dsh-knowledge-graph/src/index.ts'

(or install from npm once published: npm i dsh-knowledge-graph, then reference dsh-knowledge-graph by name in the patch file).

Tool contract

kg_remember:

{
  "kind": "lesson | pattern | decision | field_note | false_positive",
  "title": "One-line imperative summary",
  "body": "Self-contained note: what happened, the rule, the evidence",
  "tags": ["optional", "keywords"],
  "project": "optional-scope"
}

kg_search / kg_recent return ranked hits with «highlighted» snippets (FTS5 snippet()).

Verify without a model

node --experimental-strip-types -e "
import('./src/store.ts').then(async m => {
  const s = new m.KnowledgeStore('/tmp/kg-test.db');
  s.remember('lesson', 'Pin third-party action SHAs', 'Tag-pinned actions can be mutated; @vX tags are moveable refs.', ['supply-chain'], 'dsh-plugin');
  console.log(JSON.stringify(s.search('supply chain'), null, 1));
  s.close();
})"

License

MIT

项目文件与信号

以下项目是目录快照中检测到的公开仓库信号。

测试已检测

仓库信息

开发语言
TypeScript
许可证
未提供
最后更新
2026年8月17日 12:06

谨慎安装

请检查源代码、权限、生命周期脚本、依赖与网络访问;不受信任的插件应先在隔离环境中测试。