dsh-onto-space-panel:在 DeepSeek Harness 里选 Onto 空间并管理对话上下文

前言

在 DeepSeek Harness(DSH)里和模型对话时,若业务知识、声明、常驻智能体章程和记忆工件都在 Onto 侧维护,常见做法是手动复制粘贴,或在聊天里反复让模型调 MCP 工具查 realm、记忆和对象。上下文容易混在同一条会话里,换空间或换聊天后也不清楚当前到底挂了哪些材料。

dsh-onto-space-panel 由 hope4b 维护,面向已使用 Onto 与 Harness 的开发者:在输入框上方提供紧凑的空间选择器,并用侧栏集中查看声明、常驻智能体、记忆工件、模板与对象,把选中项显式挂到当前聊天;活跃上下文会显示在 composer 上方,且按聊天、按所选 realm 分别保存。

这是什么

插件全名对应仓库 hope4b/dsh-onto-space-panel(npm 包名 dsh-onto-space-panel,当前发布版本 1.2.1,MIT 许可证)。它不改变 Harness 核心,而是在 Web 端注入 UI,并通过 Onto MCP 读取空间与实体;选中 resident agent 是为当前 Harness 对话赋予角色并加载其章程与 constitution,不会单独拉起外部 agent 进程或 broker。

界面文案目前为俄语(如侧栏 Обзор、挂上下文 В контекст);空间与实体的名称、描述来自 Onto 服务端。

核心功能

下面能力均来自项目 README,且依赖 MCP 暴露对应工具(见后文「要求与 MCP 工具」)。

  1. 连接 Onto:首次使用可填 MCP endpoint 与 API key 并校验;若 profile 里已有名为 onto 的 Harness MCP 连接,则自动复用。
  2. 空间选择与侧栏:搜索并选择可用 Onto space;用 Обзор 打开空间面板。
  3. 声明(declarations):读取当前/已接受的空间声明,并挂到聊天。
  4. 常驻智能体(resident agents):查看 agent 与其 charter;选择有效的 active resident 时,将其已接受的 charter 与 constitution 载入当前聊天。
  5. 记忆工件(memory artifacts):搜索、分页浏览已接受的记忆,读取内容,显式 attach 或 disconnect。
  6. 模板与对象:浏览 templates 与 objects,将选中 object 纳入对话。
  7. 按聊天隔离上下文:不同聊天、不同 realm 的选择与上下文分开保存。
  8. 模型工具:用户提出换空间或改上下文时,可通过 select_onto_space、configure_onto_chat_context 调整。

环境与要求

  • DeepSeek Harness 的 Web UI 或 Desktop 应用。
  • Onto MCP endpoint URL 与个人 API key,或已认证的 Harness MCP 连接 onto。
  • 首次使用引导表单需要 Harness 可写的 credential provider;标准本地 profile 常用 @deepseek-ai/dsh-credentials-local。
  • 与 Host 的集成在 DeepSeek Harness 0.2.0-rc.2 上开发验证;其他版本未声明兼容。Harness 处于开发者预览,扩展接口可能变动。
  • 插件 package.json 要求 Node >= 22(主要影响开发与打包环境;安装 release 包时通常由 Harness 加载已构建的 browser bundle)。

MCP 连接需至少提供以下工具,面板各区块才完整可用:list_available_realms、about_realm、list_realm_agents、get_realm_agent、search_memory_artifacts、get_memory_artifact、get_memory_artifact_by_path、search_templates、search_objects、get_entity。

安装与启用

安装或替换 bundle 后需重启 Harness。若曾用 cordis.patch.yml 绝对路径手动加载同一插件,应先禁用旧条目,避免两套实例注册相同工具与 API 路由。

从 release 安装 tgz

在 Releases 下载 .tgz,对支持 Web 的 profile 执行:

dsh plugin --profile web add ./dsh-onto-space-panel-1.2.1.tgz

从 GitHub 标签安装

仓库已包含构建好的 browser 入口,无需安装期 build:

dsh plugin --profile web add github:hope4b/dsh-onto-space-panel#v1.2.1

Desktop 可在 Plugins 中安装下载的 bundle(视版本支持而定);tgz 内已含 browser bundle,不需要额外 build 权限。

连接 Onto MCP

推荐:首次使用向导

  1. 安装插件并重启 Harness。
  2. 在 composer 上方点击 Onto → Подключить。
  3. 填写 MCP endpoint URL 与个人 API key,点击 Подключить。key 字段只需值;若粘贴整行 X-Onto-Api-Key: value,插件会去掉 header 名再存储或发送。
  4. 插件用 list_available_realms 校验通过后保存;再从列表选 space。列表为空表示连接成功但无可见 space。

endpoint 与 key 向 Onto 管理员索取。表单走 HTTPS 与 X-Onto-Api-Key;开发可用 localhost HTTP。URL 须为直接 MCP endpoint,不能带凭证或 query,且不接受认证重定向。

密钥经 Harness credential provider 存储(非插件配置、非浏览器 storage、非聊天记录)。标准本地 provider 下,托管文件为 $DSH_HOME/.credentials.yaml;服务器地址与凭证引用在 $DSH_HOME/storages/onto-connections/(按 profile 位置区分)。插件启动时会自行恢复 MCP 连接,不修改 profile YAML。

在 space picker 打开 Подключение,或在侧栏 Подключение Onto,可更新由插件创建的连接。endpoint 不变且 key 留空时复用已存 key;更换 endpoint 或账号 key 后需重新选 space 并挂上下文,旧聊天上下文不会自动迁移到新连接。

备选:手动配置 Harness

适用于集中管理 MCP、或无可写 credential provider 的部署。若 profile 已有 Onto 连接,不要重复添加。

  1. 向管理员索取 MCP endpoint URL 与个人 API key(不是普通 Onto 网站 URL)。
  2. 编辑当前 profile 的 cordis.patch.yml(Web 常见路径 ~/.dsh/profiles/web/cordis.patch.yml;Windows Desktop 为 %USERPROFILE%\.dsh\profiles\desktop\cordis.patch.yml;DSH_HOME 会改变 .dsh 位置)。
  3. 追加或更新 patch,serverName 必须为 onto:
- insert:
    - id: mcp-onto
      name: '@deepseek-ai/dsh-mcp-client'
      config:
        serverName: onto
        transport: streamable-http
        url: https://YOUR-ONTO-MCP-HOST/mcp
        headers:
          X-Onto-Api-Key: !!js process.env.ONTO_API_KEY
  1. 在启动 Harness 的进程环境中设置 ONTO_API_KEY。例如 Windows Web:
$env:ONTO_API_KEY = 'YOUR_PERSONAL_API_KEY'
dsh --profile web

Desktop 需完全退出后再从同一 PowerShell 启动可执行文件,快捷方式不会继承仅在该窗口设置的变量。

  1. 打开 composer 上方的 space 选择器,应能看到可访问的 space;也可在聊天中让模型调用 mcp__onto__list_available_realms。

连接失败时先查 endpoint 与网络;401/403 多为认证或权限。聊天里工具可用但面板找不到时,检查 serverName 是否为 onto。

典型用法

经过安装与连接后,可按下面顺序操作(UI 为俄语,含义如下)。

  1. 在 composer 上方选择 Onto space。
  2. 点击 Обзор 打开该 space 的侧栏面板。
  3. 在面板中查看声明、resident agents、记忆、模板与对象;需要纳入本轮对话时,使用 В контекст 挂声明或记忆工件。
  4. 已挂上的角色或材料会出现在上下文标签旁;点击标签旁的 × 可移除。
  5. 换聊天或换 realm 时,选择会按会话隔离;需要时可让模型调用 select_onto_space 或 configure_onto_chat_context。

适用场景与注意

适合谁:已在 Onto 中维护 space、声明、resident agent、记忆与对象,并在 DSH Web/Desktop 中希望「看得见、选得着、按聊天挂上下文」的团队或个人。

权限与安全:插件与当前 DSH 进程同权限运行;安装前应阅读仓库源码与 MIT 许可证,确认 endpoint、API key 与 $DSH_HOME 下凭证存储策略符合本机与组织要求。勿将真实 key 提交仓库或分享含 key 的终端历史。

生态说明:DSH 社区插件目录(如 SkillHub 上的条目)由社区维护,与 DeepSeek / 幻方无官方从属关系;本文安装命令与行为以 GitHub README 为准。

结尾

dsh-onto-space-panel 把 Onto 的空间导航、声明、常驻智能体章程、记忆与对象选择收进 Harness 输入区与侧栏,并保留按聊天、按 realm 的上下文隔离。需要细节、release 与 issue 时,见目录页与仓库:

  • 目录页:https://www.skillhub.cn/plugins/hope4b/dsh-onto-space-panel
  • GitHub:https://github.com/hope4b/dsh-onto-space-panel
羽毛球分组比赛记分
小程序二维码

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

Xiaoye