dsh-memorix-panel:在 DSH Web GUI 中查看与管理 Memorix 记忆库

前言

DeepSeek Harness (DSH) 强调插件化架构,而 Memorix 是一个本地优先的 AI 记忆控制平面,负责存储项目级和知识级的记忆。当开发者需要在 Web 界面中直接浏览、检索和管理这些记忆时,直接操作数据库往往存在风险且不够直观。dsh-memorix-panel 插件正是为了解决这一痛点而生,它将 Memorix 的 SQLite 记忆库接入 DSH 的 Web GUI,提供可视化的管理界面。

插件介绍

dsh-memorix-panel 是一个由 biubiu23333333 维护的 DSH 插件。它通过连接本地的 Memorix 数据库,让用户在 DSH 的会话界面中直接查看记忆库状态、统计总量、搜索与筛选记忆、查看详情以及管理状态。

在数据读写策略上,插件采取“只读读取、CLI 写入”的方案:读取操作直接连接 SQLite 数据库,不依赖任何第三方运行时;写入操作(如新建记忆、修改状态)一律通过官方 memorix CLI 执行,以确保 Memorix 自身的检索索引保持同步。该插件零运行时依赖,遵循 MIT 许可证。

功能特性

插件主要提供以下功能:

  • 库状态与统计:显示记忆库路径、文件大小、WAL 大小、最后更新时间以及 Memorix CLI 版本。支持统计记忆、项目、活跃、归档、长期记忆、迷你技能、会话、证据卡、知识页的数量。
  • 检索与筛选:支持按标题、实体名称、类型进行搜索,并可通过记忆类型与状态进行筛选。
  • 项目与记忆列表:以手风琴形式展示项目列表,展开后可查看该项目下的记忆。
  • 记忆详情:展示记忆的元信息、正文、要点、概念、涉及文件、关联提交、关联实体等完整信息。
  • 状态管理与新建:支持在详情页直接修改记忆状态(需二次确认),或在面板内新建记忆。
  • 长期记忆视图:提供独立的长期记忆分区,展示状态(候选、已确认、已批准、已归档等)、作用域与类型。面板会提示状态流转规则,如“候选与已确认不会进入 Workset,必须 approve”。
  • 长期记忆管理:支持驱动 Memorix 的状态机(候选 → 确认 → 已确认 → 批准 → 已批准,或归档),操作需填写理由并二次确认。
  • 一键复制项目名:支持在项目行、记忆详情的“项目”行及长期记忆详情的“起源项目”行旁一键复制 projectId。

前置条件

使用本插件前,需满足以下环境要求:

  • DSH Web GUI:已安装并可用。
  • Node.js:版本需 ≥ 22.18.0。这是 Memorix 自身的版本要求。
  • Git:已安装。Memorix 的项目身份来自真实 Git 根目录。
  • Memorix CLI:已安装。提供 memorix 命令行工具。
  • dsh-better-sidebar(可选):若需在右侧工作台 tab 中看到“Memorix 记忆”入口,需安装此插件。

安装与启用

安装插件需要 DSH 的 Web profile(通常名为 web)。使用以下命令安装:

dsh plugin --profile web add dsh-memorix-panel

安装完成后,执行硬刷新浏览器(Windows/Linux 为 Ctrl+Shift+R,macOS 为 Cmd+Shift+R)以使客户端生效。如果主机端有更新,还需要重启 dsh-web 服务。

使用说明

入口位置

面板提供三种入口方式:
1. 会话标题栏:默认位置。在任意会话界面的标题栏中,点击「Session 日志」按钮右侧的「● 记忆 N」按钮。
2. 右侧边缘停靠:当没有活动会话或找不到「Session 日志」按钮时,入口会自动停靠在浏览器窗口右侧边缘垂直居中处。
3. 右侧工作台 tab:如果部署中安装了 dsh-better-sidebar 且与本插件处于同一客户端组装域,工作台的「+ / 空面板卡片」中会出现「Memorix 记忆」选项。

点击入口后,面板会以浏览器顶层浮层的形式从右侧滑出。

基本操作

  1. 浏览与检索:在面板顶部使用搜索框输入关键词(支持标题、实体、类型),或使用下方的筛选器按类型和状态过滤记忆。
  2. 查看详情:点击列表中的记忆条目,查看完整的元信息、正文、要点和关联文件。
  3. 修改状态:在详情页底部,点击「改状态」按钮。选择目标状态(如 active、resolved、archived),系统会弹出二次确认框。
  4. 新建记忆:在面板中点击「新建记忆」,按照提示填写标题、正文、类型等信息,点击确认后,命令行会执行写入操作。

长期记忆管理

长期记忆视图展示了 Memorix 的耐用记忆层。该视图展示了记忆的状态流转过程。

  • 状态流转:记忆通常经历「候选」→「确认」→「已确认」→「批准」→「已批准」的过程。
  • 管理操作:在长期记忆详情页,可以直接点击「确认」或「批准」按钮来推进状态机。每次操作都需要填写理由(写入审计事件)并确认。
  • 提示:面板会提示「候选与已确认都不会进入 Workset,必须 approve」。

数据路径

插件通过读取以下文件来获取数据:
* ~/.memorix/data/memorix.db:SQLite 记忆库。
* ~/.memorix/data/.project-aliases.json:项目别名映射。
* ~/.memorix/last-project-root:最近使用的项目根路径。

命令行写入示例

当在界面中触发“新建记忆”或“改状态”时,插件实际上是在后台调用 Memorix 的 CLI 命令。例如:

# 改状态
memorix memory resolve --id <n> --status active|resolved|archived -- --cwd <项目根>

# 新建记忆
memorix memory store --text <正文> --title <标题> --type <类型> \
  --json --cwd <项目根>

配置

所有配置项位于 profile 的 cordis.patch.yml 文件中,且均为可选。主要配置项如下:

配置项 默认值 说明
bin memorix Memorix CLI 可执行文件名或绝对路径
dbPath 自动探测 记忆库 SQLite 文件路径
cliTimeoutMs 25000 每次调用 CLI 的超时时间(毫秒)
allowWrite true 是否允许修改记忆状态
allowStore true 是否允许新建记忆

示例配置:

- insert:
    - id: memorix-panel
      name: dsh-memorix-panel
      config:
        bin: memorix
        cliTimeoutMs: 25000
        allowWrite: true
        allowStore: true

若只需只读浏览,可将 allowWrite 与 allowStore 设为 false。

羽毛球分组比赛记分
小程序二维码

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

小夜