tancheng33/dsh-ontology

Plugin插件 Native原生 ⭐ 15 MIT Memory & Knowledge记忆与知识库

DeepSeek Harness的类型化推理本体论(TBox + ABox)插件——代理声明、断言并依据模式约束查询的持久领域知识。

Project Overview项目介绍

dsh-ontology is a native plugin built exclusively for DeepSeek Harness that adds typed, schema-constrained ontology capabilities to DSH agents. Most agent memory systems store unstructured free text, which often leads to conflicting or inconsistent claims that go undetected by the agent. This plugin fixes that issue by requiring agents to adhere to a defined vocabulary, validating every claim before it is stored, and deriving implied facts instead of storing redundant copies. You can install it directly via the DSH CLI by running dsh plugin --profile <name> add dsh-ontology, or install it from source by adding the GitHub repository directly.

The plugin ships with four core commands: ontology_define to declare classes and typed relations, ontology_assert to store validated entities and facts, ontology_query to look up, traverse, and infer knowledge, and ontology_retract to remove facts with dependency protection. It supports multiple configuration options, letting users override settings like domain name, strict validation mode, inference enabling, maximum prompt terms, query result limits, and entity/fact capacity guards. You can run multiple isolated ontology graphs in a single DSH profile by adding separate configuration entries for each graph, which lets you keep different knowledge domains completely separate.

The plugin is released under the open source MIT license, and requires DeepSeek Harness version 0.1.0-rc.6 or newer, plus Node version 22.19 or 24 and above. It includes its own storage stack that works out of the box with a fresh DSH profile, and stores all ontology data in $DSH_HOME/storages/<domain>.json. The core rule engine is also available as a standalone import, so you can use its inference and validation capabilities outside of DeepSeek Harness if needed for your own projects.

这是一个专为 DeepSeek Harness 开发的原生插件,为 DSH 代理提供基于本体的结构化知识记忆系统。和无结构的自由文本记忆不同,它会强制实施模式约束,验证所有存储的知识,防止代理存储相互矛盾或不一致的断言,可直接通过 DSH 内置插件命令完成安装。

它提供四个核心工具:ontology_define 定义本体类和关系,ontology_assert 验证并存储实体和事实,ontology_query 支持查询、推理和遍历,ontology_retract 支持安全删除知识并处理依赖。用户可通过配置文件调整存储域名、严格模式、推理开关、查询结果上限等多项参数。

该插件基于 MIT 许可证开源,要求 DeepSeek Harness 版本不低于 0.1.0-rc.6,Node 版本需要 22.19 或 24 以上。它自带存储栈,可在空配置文件中直接运行,核心规则引擎也可单独抽离,在 DeepSeek Harness 外部使用。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 note1 项提示
  • 15 stars - an early-stage project星标 15,属于早期项目
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add dsh-ontology

把 tancheng33/dsh-ontology 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-ontology

English | 中文

A typed, inference-capable ontology for DeepSeek Harness — durable domain knowledge the agent declares, asserts against, and queries under schema constraints.

Most agent memory is a bag of strings: the agent writes prose, later reads prose, and nothing ever tells it that what it just recorded contradicts what it recorded last week. This plugin gives the agent a vocabulary it must respect. You declare what kinds of things exist and how they may relate; every claim is then checked against that model before it is stored, and claims that follow from other claims are derived rather than repeated.

ontology_define   declare classes and typed relations   (the TBox)
ontology_assert   record entities and facts             (the ABox, validated)
ontology_query    look things up, traverse, infer
ontology_retract  remove, with dependency protection

Why a TBox, not a notes file

notes-style memory dsh-ontology
Structure free text classes, typed relations, entities, triples
Bad input silently stored rejected, naming the constraint it broke
Implied facts restated by hand, drift apart derived on read from transitive / symmetric / inverseOf
Retraction orphaned prose lingers facts cascade with their entity; derived facts vanish with their premise
Reading it back grep and hope query by class (subclass-aware), triple pattern, neighbourhood, or shortest path

The constraint is the point. When the agent asserts ada depends_on api and depends_on is declared Component -> Component, it gets back:

REJECTED ada depends_on api: ada is not in the domain of depends_on
  (requires one of: Component; has: Person)

That is a real signal — either the claim is wrong, or the model of the domain is incomplete. Free-text memory can produce neither.

Install

dsh plugin --profile <name> add dsh-ontology
dsh --profile <name>

Or from a checkout / git host:

dsh plugin --profile <name> add ./dsh-ontology
dsh plugin --profile <name> add github:tancheng33/dsh-ontology

A github: install builds from source, so pnpm ≥10 needs the build allowlisted. Add allowBuilds: { dsh-ontology: true } to the profile's pnpm-workspace.yaml and re-run, and pin a commit (#<sha>) so a later push cannot silently change what runs. Installing from npm needs no allowance.

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev dsh-Kingdom 下一个 Next dsh-client-pricing →