dsh-thinking-trail:跨会话留存 AI 的思考路径

前言

在 DeepSeek Harness(DSH)里做多步任务时,模型往往只在当前对话里保留「怎么做的」;会话结束,目标、路线、关键决策和踩过的坑就散了。下次同类需求又要从零推演。社区插件 dsh-thinking-trail 把任务收尾时的 目标 → 路线 → 决策 → 教训 写入本地 JSONL,并在新任务开始时先检索旧路径,相当于在会话之间留一座「桥」。下面介绍它的定位、工具划分、安装方式与数据落盘位置。

这是什么

dsh-thinking-trail 由维护者 2697574898-netizen 发布,在 SkillHub 目录中归类为「记忆」。简介:思考路径留存与复用,跨会话记录 AI 的路线、决策和教训。实现上只用 Node 标准库,不依赖 @deepseek-ai/* 内部包,许可证 MIT;当前 package 版本为 0.3.0。

核心功能

插件通过七个工具覆盖四件事,并附带一条 order 150 的系统提示,引导模型在接到任务时先查旧路径、多步任务自动建日志、收尾写入一条思考路径。

思考路径

  • record_thought:任务收尾写一条记录,goal、route 必填,decisions、lessons、tags 可选。
  • recall_thoughts:按关键词检索;不带关键词时返回最近几条。

路径默认落在 <DSH_HOME>/thinking-trails/trails.jsonl(约 2 MB 自动轮转),跨会话共享;纯 JSONL 明文,可用 grep 或编辑器直接查看。

任务日志

  • open_task_log:为任务创建按日命名的 Markdown 日志(含路径、经验、不足、进步、思考路径等小节)。
  • append_task_log:向对应小节追加内容;创建后会返回日志的完整路径。多步任务时模型会直接建日志,无需反复确认。

record_thought 收尾时会把路径信息写入当前任务日志。日志目录为 <DSH_HOME>/thinking-trails/logs/YYYY-MM-DD-<标题>.md;当前日志指针在 current-log.json。

能力核对

  • check_capability:列出「本次任务需要的能力 → 本机是否具备」,扫描已装 skill(~/.dsh/skills)与 profile 中 bundles 里的插件,缺失项会明确说明。

会话素材调度

  • link_material:把从其他会话调来的内容登记进日志表格;同一 session_id + seq 自动去重。
  • list_material:列出已登记素材,避免重复搬运。

系统提示侧还会做需求精化(内部步骤、不回显):非简单任务先给路线再执行;需要跨会话内容时才配合 session_search,读到的条目通过上述工具登记去重。

安装与启用

需要 Node 18+ 和已具备 Cordis 插件树的 DSH 环境。

# 方式一:从 GitHub 直接装(尚未发布 npm,请用仓库地址)
dsh plugin add https://github.com/2697574898-netizen/dsh-thinking-trail

Electron 桌面版也可手动挂载 profile:

cd ~/.dsh/profiles/desktop
pnpm add file:/path/to/dsh-thinking-trail
# 再把 "dsh-thinking-trail" 加进该 profile package.json 的 dsh.profile.bundles

装好后重启应用。若加载成功,会出现 ~/.dsh/thinking-trails/state.json;失败时同级目录会写 apply-error.txt。可用下面命令确认版本与加载时间:

cat ~/.dsh/thinking-trails/state.json

系统提示中出现「## 思考路径(thinking-trail)」也表示插件已加载。若用 file: 依赖改完源码,需在 profile 目录执行 pnpm install 后再次重启(复制安装,非软链)。

卸载时从 bundles 移除包名并去掉依赖即可;已记录的路径与日志不会被插件删除。

配置

在 profile 的 cordis.patch.yml 中按插件 id 覆盖:

- id: dsh-thinking-trail
  config:
    dir: /Users/you/notes/trails   # 默认 <DSH_HOME>/thinking-trails
    maxResults: 5                  # recall 默认返回条数

DSH_HOME 默认为 ~/.dsh;设置 dir 可把路径库与日志整体迁到其他目录。

典型用法(流程)

  1. 接到新任务时,模型按系统提示先 recall_thoughts 查同类关键词或最近记录。
  2. 多步任务用 open_task_log 建当日日志,过程中用 append_task_log 写路径与中间结论;跨会话引用用 link_material / list_material 登记。
  3. 动手前可用 check_capability 对照本机 skill 与已装插件。
  4. 任务收尾调用 record_thought,填齐 goal 与 route,必要时补 decisions、lessons、tags。

仓库内可用 smoke 测试校验工具 schema 与读写逻辑:

node test/smoke.mjs

可选环境变量 DSH_TOOLS=/path/to/dsh-tools/lib/index.js 指定 DSH 工具包路径。

适用场景与注意

适合长期在 DSH 里做重复型工程任务、希望保留「为什么这样走」而非只留最终 diff 的开发者。数据为本地明文,便于纳入个人笔记仓库或自行备份。

插件与 DSH 进程同权限运行,安装前应阅读 GitHub 源码 与 MIT 许可证。改插件代码后须重启应用;README 说明当前 dsh 的 HMR 对模块代码不生效,开发流程为改 lib/index.js → node test/smoke.mjs → 退出并重开应用。

SkillHub 目录页与 GitHub 仓库为社区维护入口,与 DeepSeek / 幻方无官方从属关系;目录页星标数为 0,以页面与仓库 README 为准。

链接

  • 目录页:https://www.skillhub.cn/plugins/2697574898-netizen/dsh-thinking-trail
  • 仓库:https://github.com/2697574898-netizen/dsh-thinking-trail
羽毛球分组比赛记分
小程序二维码

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

Xiaoye