SipengXie2024/dsh-memory-hermes0

dsh-memory-hermes

Hermes-style bounded curated memory for DeepSeek Harness (out-of-tree plugin)

包名
dsh-memory-hermes
版本
0.5.3
许可证
MIT
最近更新
2026年8月17日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:SipengXie2024/dsh-memory-hermes

配置

v2 起配置走 dsh settings 服务:插件注册 memory-hermes 命名空间,bundle patch 的 entry config 作为 base(组合层打底),$DSH_HOME/settings.yaml 文档里的同名 section 作为用户层覆盖,热生效(settings/updated 驱动,限额/扫描/review 策略即时切换;已冻结的会话快照不变)。没有 settings 服务的 profile 退化为只用 entry config。

注意(rc.6 边界):dsh web 的设置 GUI 只暴露白名单内的命名空间(apiproxy 硬编码;「插件自暴露」在官方 deferred work 清单里),所以本插件的配置通道是 settings.yaml 文档——在文档里加:

memory-hermes:
  memoryCharLimit: 3000   # 只写要覆盖的字段,其余回 base/默认

保存即生效,无需重启(已实测:外部编辑 → chokidar 监视 → 热发布)。

全部配置项(schema 默认兜底;写在 profile 用户层 patch $DSH_HOME/profiles/web/cordis.patch.yml):

- id: memory-hermes
  name: dsh-memory-hermes
  config:
    memoryCharLimit: 2200        # MEMORY.md 上限(codepoint 计),最小 200
    userCharLimit: 1375          # USER.md 上限,最小 200
    securityScan: true           # 写入+注入双侧扫描
    approval: false              # true = 每次写弹审批(同时抑制后台 review)
    backgroundReview: true       # 后台自省总开关
    reviewTrigger: token-delta   # every-turn | token-delta | manual
    reviewTokenDeltaTokens: 4000 # token-delta 触发阈值(tokenMeter 估算)
    compactionHarvest: true      # compaction/start 时做收割 review
    reviewMaxTokens: 1000        # 单次 review 的输出 token 预算
    reviewTimeoutMs: 60000       # 单次 review 超时(毫秒),最小 1000
    reviewHistoryLimit: 200      # sidecar 保留的 review 记录条数
    consolidateMaxTokens: 2000   # /memory compact 合并调用的输出预算
    skillReview: true            # v3:review 的 skill 路(技术经验进 skill 库)
    reviewMaxSteps: 8            # fork 循环的最大 LLM 步数
    skillMaxBytes: 65536         # 单个 skill 文件的字节上限
    # skillRoot: C:/Users//.dsh/skills  # skill 库根;默认就是 dsh 用户 skill 根
    # reviewProvider: deepseek   # review/compact 换模型用;默认跟主会话(吃前缀缓存)
    # reviewModel: deepseek-chat
    curatorEnabled: true         # v4:库维护层总开关(遥测+标记+调度+LLM pass)
    curatorConsolidate: true     # LLM 归并 pass(有意与 Hermes 默认相反:开)
    curatorIntervalHours: 168    # 两次 curator run 的最小间隔(Hermes 7 天)
    curatorMinIdleHours: 2       # 触发前要求的用户空闲时长
    curatorStaleAfterDays: 30    # stale 标记窗口(never-used 宽限同窗)
    curatorMaxSteps: 16          # curator fork 循环的最大 LLM 步数
    curatorMaxTokens: 4000       # 单步输出 token 预算
    curatorTimeoutMs: 300000     # 整个 curator run 的超时(毫秒)
    curatorMaxBackups: 5         # run 前快照保留份数(轮替删最老)
    # curatorProvider: deepseek  # curator 换模型用;缺省回落 reviewProvider/Model,再回落会话默认模型
    # curatorModel: deepseek-chat
    topicsEnabled: true          # v5:主题文件细节层(关 = 动作运行时拒绝,schema 需重载插件才变)
    topicMaxBytes: 32768         # 单个主题文件存储上限(字节),最小 4096
    topicMaxFiles: 100           # 主题文件数量上限
    topicReadLines: 400          # topic_read 默认(也是最大)行窗
    topicReadMaxBytes: 8192      # topic_read 单次读出字节帽
    # topicRoot: C:/Users//.dsh/memory/topics  # 主题目录覆盖;默认 $DSH_HOME/memory/topics

注意:id 覆盖是整体替换 config,不深合并——要改就把想要的字段写全(未写的字段回 schema 默认,恰好也是安全的)。