前言¶
在 DeepSeek Harness(DSH)里配合 Hindsight 做 coding agent 记忆时,常见做法是手改 ~/.hindsight/profiles/<profile>.env 换 LLM,再自己 uvx 重启 daemon;要看 bank 里记了什么,又要另开工具或直接调 REST。维护者 akamuyyds 的 dsh-hindsight-panel 把这两类操作收进 Harness 侧边栏:本地代理 127.0.0.1:9077 的 Hindsight API,并在面板里改写 profile env、可选重启 daemon,同时浏览记忆与统计。下面介绍它是什么、怎么装、怎么用。
这是什么¶
dsh-hindsight-panel 是 DSH 的客户端插件(Cordis bundle + Web 面板),分类为客户端。一句话:给 DeepSeek Harness 用的侧边栏面板,集中管理 Hindsight 记忆,并可直接切换 Hindsight 自身使用的 LLM provider/model,无需单独编辑 env 文件。
- 仓库:github.com/akamuyyds/dsh-hindsight-panel
- 社区目录:skillhub.cn 插件页
- 许可:MIT(见仓库 LICENSE)
- 当前资料中的包版本:
0.2.9(以 release 压缩包为准)
全部在本地运行:插件读写 daemon profile 的 env(~/.hindsight/profiles/<profile>.env),API Key 在界面仅以掩码展示;从 DSH 凭据库解析的 Key 不进浏览器。
环境要求¶
使用前请逐项确认:
- DeepSeek Harness,且为桌面或 Web profile(仅 CLI 无法使用侧边栏插件)。
- Hindsight coding agent 已安装并以 daemon 模式运行(例如市场中的
@vectorize-io/hindsight-coding-agents),API 默认在127.0.0.1:9077:
curl http://127.0.0.1:9077/health
# 期望类似:{"status":"healthy","database":"connected", ...}
uvx在 PATH 上——仅「保存并重启」「回滚」需要;否则用环境变量HINDSIGHT_UVX指定绝对路径。- Node.js 22.19+ / 24+ 仅用于仓库单元测试,运行插件不需要。
核心功能¶
| 能力 | 说明 |
|---|---|
| 切换 Hindsight 用的模型 | 选择 provider、模型、base URL、API Key 与 reasoning effort;保存后可重启本地 Hindsight daemon;一键回滚恢复上一次 LLM 配置。 |
| 复用 DSH 已配置的模型 | Harness profile 里声明过的 provider/模型(如 opencode-go、deepseek-official)会列出;API Key 由宿主从 DSH 凭据库解析,无需在浏览器重复填写。 |
| 查看记忆与统计 | 当前 bank 的记忆、文档、观察、LLM 调用统计与知识页;支持关键词搜索、语义召回、记忆构成图。 |
| 面板内卸载 | 关于页通过 Harness 插件管理器移除 bundle 并刷新;不删除记忆数据与 ~/.hindsight 配置。 |
面板 HTTP 路由挂在 Harness Web 服务器的 /api/dsh-hindsight-panel/* 下;对外部页面校验 x-dsh-hindsight-panel: 1 与同源 Origin,仅能从面板内调用。
安装与启用¶
插件无构建步骤。推荐用 release 压缩包一键安装(不必 clone 仓库):
- 侧边栏点 插件 → 添加插件(按钮旁箭头里可选「安装第三方插件」)。
- 粘贴地址并安装:
https://github.com/akamuyyds/dsh-hindsight-panel/releases/latest/download/dsh-hindsight-panel.tgz
- 安装完成后侧边栏出现脑图图标即表示启用。
releases/latest/download/...始终指向最新版;升级时先在插件页卸载旧版,再用同一地址安装一次。
插件以当前 DSH 进程权限运行,安装前建议浏览仓库源码与 MIT 许可证,确认符合你的安全策略。社区目录站点与 DeepSeek / 幻方无官方从属关系,属于 DSH「一切皆插件」生态下的第三方条目。
第一次打开¶
打开面板 模型 页:
- Daemon 应显示 healthy 及检测到的版本(例如
v1.1.0)。 - 当前模型 显示 daemon 实际使用的 provider/model(来自 profile env),Key 为掩码。
- 点 测试连接 会触发 Hindsight 的
dry-run-extract;能返回 facts 表示 provider、模型、Key 链路正常。
若显示 daemon: unreachable,需先启动 Hindsight,例如:
uvx hindsight-embed@latest daemon --profile coding-agent start
若使用其他 profile,在 ~/.hindsight/coding-agent.json 中设置 daemonProfile。
典型用法¶
模型页¶
- 从 DSH 本地配置导入——选择 Harness profile 里已有的 provider,模型与凭据名(如
OPENCODE_GO_API_KEY、DEEPSEEK_API_KEY)自动探测;Key 框显示 自动:<凭据名>。 - 手动配置——选 Hindsight 内置 provider,或自填 provider 名与 OpenAI 兼容 base URL。
- 保存 原位改写 profile env,保留注释与无关行。保存并重启 会执行
uvx hindsight-embed@latest daemon --profile <profile> stop|start,并轮询/health直至healthy且database: connected(约 1–2 分钟,含模型校验与本地 embedding 加载)。 - 回滚 从
~/.hindsight/profiles/<profile>.env.hindsight-panel-backup.json恢复上一版 LLM 配置并重启。 - Reasoning effort 仅在填写时写入;不支持的 provider 写
none也安全。
空密码框表示保留已存 Key;要删除需用「清除已存 Key」。
记忆页¶
bank 选择器(常见为 coding-agent::<repo>)、统计卡片、构成图与 30 天活跃度曲线;子标签包括:
- 记忆——按 fact 类型过滤、关键词(
/memories/list?q=)或语义召回(/memories/recall)。 - 文档、观察、LLM 调用(provider、模型、token、耗时)、知识页(无数据时为空状态)。
卸载¶
关于 → 卸载,或在 设置 → 插件 移除 Hindsight 记忆;均不会删除记忆数据或改动 ~/.hindsight。
模型切换原理(简要)¶
Hindsight 在 daemon 启动时读取 LLM 配置,换模型即改 env 再重启。面板步骤为:
- 原位改写相关键(
HINDSIGHT_API_LLM_PROVIDER、_MODEL、_API_KEY、_BASE_URL、_REASONING_EFFORT、HINDSIGHT_API_PORT等),保持文件格式与注释。 - 将上一版 LLM 配置写入
.hindsight-panel-backup.json供回滚。 - 用
uvx停止并启动 daemon;以「/health不再应答」视为停止成功(Windows 上 stop 可能仍返回非 0),再轮询直至就绪。
重启失败时面板展示日志尾部;env 仍保留最后一次可用值。
适用场景与注意¶
适合:已在 DSH Web/桌面中使用 Hindsight coding agent,需要频繁试不同 LLM、或经常查看 bank 记忆与调用统计的开发者。
注意:
- 仅本地代理,依赖本机
9077上的 Hindsight daemon。 - 403 等多为未从面板发起请求;勿从第三方页面直接调插件 API。
- 更新后若侧边栏图标消失,在 设置 → 插件 禁用再启用 Hindsight 记忆 并刷新页面(宿主不会热重载 bundle)。
结尾¶
dsh-hindsight-panel 把 Hindsight 的模型配置与记忆浏览放进 DSH 侧边栏,并与 Harness profile 凭据对齐,减少手改 env 和分散查 API 的成本。详情与 issue 见 GitHub 仓库,目录条目见 SkillHub 插件页。