DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

pk14742952-AD /

pk14742952-AD/dsh-host-rsi

Verified

DSH host RSI for local LLMs (currently Qwen3.8 27B): per-use continual self-improvement, counter-reason self-check, critic escalation, and memory retrieval.

★ 10 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@9d72a0c6

中文(默认) · English

DSH HOST RSI记忆

给 DSH 做的通用宿主插件,默认面向本地大模型调参;当前重点覆盖 Qwen3.8-27B 与 Qwen3.8 Flash 等本地 27B/轻量模型,也兼容 API 模型。 插件不做模型权重修改,只做每次使用持续自进化的宿主侧记忆层,以 DSH 宿主插件形式实现。 每次使用:模型先"反问式"自检(counter-reason)自己的答案;可信教训被保存并在下次注入; 便宜方法没解决时,深度批评轮自动升级。通用模式:无需针对特定任务的评分器。

仓库地址:https://github.com/pk14742952-AD/dsh-host-rsi

插件简介:这是一个给 DSH 用的通用记忆 / 自进化插件。它在后台采集每次使用的 成功、失败、用户纠正与长期偏好,把高价值经验沉淀为可信教训,并在下次遇到相似任务时自动注入。 更新日志见 CHANGELOG.md。

想理解技术原理、或在自己环境复刻? 读 PRINCIPLES.md (专用文档:信号阶梯 / 反思循环 / 触发与效率 / 索引机制 / 与 AREX-2 的对应 / 复刻清单,逐点标注源码行号)。

原理来源(致谢 / Principle Source)

本项目的核心原理源自并致敬以下公开研究成果:

  • AREX-2(arXiv:2609.38288,BAAI 2026)——自我进化智能体框架。本项目把它落地为「本地、增量、可用即学」的 DSH 宿主插件;逐点技术对应见 PRINCIPLES.md。
  • 递归自我改进(Recursive Self-Improvement, RSI)与持续学习(Continual Learning)——每次运行把成功/失败经验沉淀为可检索、可反驳、可自动升级的经验条目;可信经验下轮注入上下文,实现「越用越强」。这是本项目记忆层信号阶梯与升级策略的原理基础。

GUI 说明:本项目此前缺少 GUI,本次补齐。仪表板「设置页里点一下即开网页」的显示方式参考了 DSH 插件 billion-context(MIT)——仅参考其展示思路,代码为独立重写,并非复制其代码(详见 client.js 与 lib/dashboard.js)。

仪表板 / GUI

DSH 重启后:「设置」→「插件」→ 「DSH HOST RSI记忆」 →「打开仪表板」,即可在浏览器查看插件运行状态(启用中/降级、可信/隔离/轨迹、最近记录)。页面每 3 秒轮询 status.json,并显示触发诊断:已处理事件、注入、捕获、失败信号、最近触发事件与原因。 也可在本机直接跑独立 demo(不依赖 DSH):

node demo-serve.mjs                # 本机回环 + 示例记录(默认端口 8788)
RSI_DEMO_PORT=9000 node demo-serve.mjs

设计目标(本次优化重点)

  • 不影响大模型 / DSH 正常工作:所有读走内存缓存;磁盘 I/O 只在后台防抖写入时发生, 热路径(pre-step / turn-end)永不阻塞。
  • 更强的自动触发:宿主侧同时监听 pre-step / turn-end / message 的多个常见事件名(agent/pre-step、message、chat/message 等),谁存在就用谁,并用事件对象/内容去重,避免一轮触发两次。
  • 立刻能看到的反馈:设置页和仪表板显示实时触发计数(事件/注入/捕获/失败);即使尚未产生可信教训,普通工具失败也会留下隔离记录,让用户确认插件确实在工作。
  • 诊断与体验工具:模型或用户可调用 rsi_events 查看触发诊断;rsi_demo_capture 可写一条示例教训,用于快速验证仪表板/设置页。
  • 用户纠正与长期指令会被记住:当用户在一轮回复后给出明确纠正或新指令(例如“不要用 requests,改用 httpx”), 插件会把它记为 L3 可信教训。明确的长期偏好 / 规则(“以后都用 httpx”“请记住输出用简洁列表”) 也会在用户提出时记录为 user-instruction 可信教训;普通一次性任务请求不会写入记忆。
  • 指令按项目去重,防止记忆库膨胀:用户指令会尽量按项目/工作区分组(从指令里的路径或会话上下文提取, 取不到则归到全局),同项目内近义/重复指令会被 hasDuplicate 门槛拦截;不同项目出现相似指令不会被误合并。
  • 教训后台自动搜集到本地插件目录:addLesson/addTrajectory 立即写内存、批量后台落盘 (flushMs 防抖);目录不可写时降级为纯内存(store.disabled),插件不崩、照常工作。
  • 最小资源占用:index.json+termindex.json 仅在打开时读一次,之后全内存;写入合并批处理; 防抖计时器 unref,不占用事件循环 / 不拖住进程退出。
  • 最大兼容性:纯逻辑层零宿主依赖(可 node --test);宿主侧每个 DSH 调用都带 ?. 防御 + try/catch,形状错了就空操作,绝不向宿主抛错。

进化机制(可靠性加权信号阶梯)

任务 + 答案
  ├─ L1  有可验证检查?(代码测试 / 数学== / SQL 匹配 / schema 合法)
  │        → 跑它。L1 失败 = 高价值纠正型教训。(决定性 → 停)
  └─ 无 L1 → 内联自反问:模型输出
           [VERIFY: CONFIRMED|REFUTED|UNCERTAIN; conf=..; lesson=..; fix=..; reason=..]
         ├─ CONFIRMED 且 conf≥thr   → 可信 L2,结束(不开批评)
         ├─ REFUTED                  → 自动批评轮(重推 fix)→ 纠正型教训
         ├─ UNCERTAIN / 无标签 / 低 conf → 自动批评轮
         └─ 用户 rsi_verify 强制      → 自动批评轮
       批评后仍不确定 → 进隔离区(被更强信号证实后才注入)

自动但高效: 每条重路径都有门控。无相关时全空操作;只在带结果信号的轮次(出错 / 跑工具 / 产出物 / 决策 / 自选标签)捕获;便宜方法失败才开批评;每会话预算封顶成本。

目录结构

dsh-host-rsi/            # 插件包(代码)
  index.js               # DSH 宿主入口:apply() + rsi_status 工具 + __RSI__ 注入 + /rsi/* 路由
  client.js              # 浏览器客户端:DSH 设置页「DSH HOST RSI记忆」标签(展示方式参考 billion-context,代码独立重写)
  demo-serve.mjs         # 本机独立 demo(不依赖 DSH,loopback + 示例记录)
  cordis.patch.yml       # DSH 宿主 bundle 补丁(插入 dsh-host-rsi)
  config.default.json    # 默认配置
  icon.svg               # 设置页图标
  lib/                   # 纯逻辑(可单测,零宿主依赖)
    spine.js             # 轮生命周期 + 任务变更检测
    retrieve.js          # 相关度排序 + token 预算
    inject.js            # 注入文本生成
    interrogate.js       # 自检指令、[VERIFY] 标签解析、批评 prompt、自一致
    signal.js            # 信号阶梯判定(L1/L3/REFUTED/CONFIRMED + 权重)
    scorers.js           # L1 可验证检查(code/math/sql/schema 自动探测)
    capture.js           # 把一轮编排为"已分类教训 + 轨迹"
    policy.js            # 触发 + 升级 + 预算门控
    store.js             # 文件存储 + 倒排索引(内存缓存 + 后台防抖写入 + 优雅降级)
    status.js            # 快照 + records + formatStatusReport
    dashboard.js         # dashboardHtml + /rsi/* webserver handler + 本机 dashboard server
  locale/                # 设置标签 i18n(zh/en)
  test/                  # node:test 套件(含 webserver/client 宿主集成测试)
E:\DSH\.rsi-memory\      # 数据目录(人可读的权威源)
  index.json  termindex.json
  lessons/<domain>.md    # 可信,可人工策展
  quarantined/<domain>.md# 未验证,日后转正
  trajectories/*.jsonl   # 原始轨迹(供日后 LoRA 蒸馏)

一键部署 / DSH 安装教程

本地快速体验(不需要 DSH)

git clone https://github.com/pk14742952-AD/dsh-host-rsi
cd dsh-host-rsi
node demo-serve.mjs

然后用浏览器打开控制台输出的回环地址,就能看到仪表板和示例记忆。

在 DSH 中安装

宿主专用 bundle。从 GitHub 安装:

dsh plugin --profile web add github:pk14742952-AD/dsh-host-rsi

发布到 npm 后也可以直接安装:

dsh plugin --profile web add dsh-host-rsi

也可以用 DSH 插件管理器对本地目录 dsh-host-rsi/ 执行 plugin_manager install_bundle。 安装完成后重启 DSH 即可生效,没有构建步骤。

模型适配

插件是 模型无关的宿主侧逻辑,不依赖具体模型参数量,本质上 DSH 能驱动的模型都可以用:

  • 本地 27B 模型(如 Qwen3.8-27B):当前默认设置按此调优,是项目重点验证对象。
  • 本地轻量/Flash 模型(如 Qwen3.8 Flash):可以运行,若上下文窗口偏小建议降低 inject.topK / inject.tokenBudget / capture.maxPerSession。
  • API 或云端模型:同样可用,因为它只注入文本和读取宿主事件,不改模型权重;较大的上下文模型可适当调高 inject.topK / inject.tokenBudget 获得更完整的记忆复用。

如果你的模型参数量或上下文差异较大,只需要调整 config.default.json 里的注入预算,不需要改插件代码。

首启验证

index.js 里 ctx 事件载荷形状是"文档名 + 防御假设"(agent/pre-step、turn/end、agent.followup)。 首启用 cordis_inspect_query(Event/Service)确认:

  • turn/end 事件暴露胶水所需的 任务 + 助手文本 + 工具结果;
  • 你的 profile 里 agent.followup / agent.inject 是否存在(不存在则这些路径安全空操作)。

然后运行:

cd E:\DSH\dsh-host-rsi
node --test          # 纯逻辑 + 数据层套件(自动发现 test/*.test.js)

配置(bundle 行 config)

见 config.default.json:

  • enabled(总开关,false=完全空操作)、dir(数据目录)、flushMs(后台写入防抖 ms);
  • inject.{topK,tokenBudget,candCap,enabled,includeQuarantined,oncePerTask,maxInjectsPerTask,reinjectOn,compactTopK,compactTokenBudget};
  • capture.{enabled,maxPerSession,minChars,dedupeThreshold,captureUserCorrections,captureUserInstructions};
  • escalate.{enabled,maxCriticsPerSession,selfConsistency,threshold};
  • embeddings(预留,默认 null;规模大了可换成嵌入近邻)。

默认值对本地模型偏保守。

开源协议(License 合规)

  • 本项目(dsh-host-rsi)采用 MIT 协议,见 LICENSE。
  • 原项目 DSH(@deepseek-ai,MIT,Copyright 2026 DeepSeek):本项目是 DSH 的宿主插件,不修改、不分发 DSH 源码,仅通过 DSH 的宿主 API(ctx.on / ctx.inject / webServer.register / 页面注入)与其协作。MIT 为宽松许可、支持第三方插件与其共存并独立发布;本项目未复制 DSH 代码,故无随附 DSH 版权声明的强制义务(此处主动注明,以示合规)。
  • billion-context(MIT,Copyright 2026 ranxianglei):仅参考其「设置页内嵌网页」的展示思路并独立重写代码(非逐字复制);按 MIT 惯例在此致谢。

结论:原项目 DSH 采用 MIT 宽松协议、支持第三方插件,故本项目可合规发布;本项目同为 MIT,并显式致谢 DSH 与 billion-context。

可选下一步:权重级进化

trajectories/ + trusted 教训是干净的训练集。周期性导出后在 Qwen3.8-27B 上做小 LoRA 蒸馏 (loss 只落在"前进型决策"上),把元技能烤进权重——这是运行时记忆环路的批量、安全补充。

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout
—/ 5

No ratings yet

Verified DSH bundle

Commit 9d72a0c6f68c

Community comments

No comments yet. Be the first to write one.