🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

识海 SQHLnb666/mindsea

DeepSeek Harness
SQHLnb66611 天前有提交已提供中文文档扫描:含敏感能力

自动沉淀每轮对话原话,随时检索本地记忆

32.2/100
综合分
3
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/25 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add SQHLnb666/mindsea
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么[目录]—
dsh 原生插件 · chat
暂无时间戳·判据 →
装得上吗[实装验证]✓
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L4 · 真实安装等级说明 →
数据截至 2026/10/25·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/03·判据 →
还在维护吗[仓库]✓
活跃:最近一次提交在 11 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件发起外部网络请求
查看扫描证据(共 18 处,展示前 18 条)
  • 读取本地文件
    index.js:38
    buf = readFileSync(NEBULA_BG_PATH);
  • 读取本地文件
    index.js:77
    buf = readFileSync(ETERNAL_CSS_PATH);
  • 发起网络请求
    client.js:1005
    const r = await fetch(API + path, { cache: 'no-store' });
  • 发起网络请求
    client.js:2394
    fetch("/mindsea/api/words?since=" + encodeURIComponent(since) + "&limit=50")
  • 发起网络请求
    client.js:2768
    fetch(API + '/memory', {
  • 发起网络请求
    client.js:3379
    fetch('/mindsea/api/ping').then((r) => r.json()).catch(() => null),
  • 发起网络请求
    client.js:3380
    fetch('/mindsea/api/day?day=' + today()).then((r) => r.json()).catch(() => null),
  • 发起网络请求
    client.js:3381
    fetch('/mindsea/api/words?limit=8').then((r) => r.json()).catch(() => null),
  • 写入本地文件
    lib/capture.mjs:519
    if (statSync(LOG_PATH).size > LOG_MAX_BYTES) renameSync(LOG_PATH, `${LOG_PATH}.old`);
  • 读取本地文件
    lib/capture.mjs:519
    if (statSync(LOG_PATH).size > LOG_MAX_BYTES) renameSync(LOG_PATH, `${LOG_PATH}.old`);
  • 写入本地文件
    lib/capture.mjs:523
    appendFileSync(LOG_PATH, `${JSON.stringify({ at: nowLocal(), ...entry })}\n`, 'utf8');
  • 读取本地文件
    lib/capture.mjs:536
    const text = readFileSync(LOG_PATH, 'utf8');
  • 读取本地文件
    lib/api.mjs:52
    const info = statSync(abs);
  • 读取本地文件
    lib/api.mjs:60
    text: readFileSync(abs, 'utf8'),
  • 读取本地文件
    lib/api.mjs:75
    const info = statSync(abs);
  • 读取本地文件
    lib/api.mjs:246
    if (existsSync(CARDS_PATH)) {
  • 读取本地文件
    lib/api.mjs:247
    const text = readFileSync(CARDS_PATH, 'utf8');
  • 读取本地文件
    lib/api.mjs:536
    for (const name of readdirSync(dir)) {
扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

给 DeepSeek Harness 的长期记忆插件:每轮聊完自动沉淀,数据存在本机 SQLite

README

由 DeepSeek 最新模型翻译生成
识海 · MindSea 给 DeepSeek Harness 的记忆插件。 它做的事很简单:你们聊完一轮,它把这一轮的话判一遍、存进本地 SQLite,下次要用的时候能翻出来。 不是让模型「记住」——上下文的记忆会过期,这个不会。 数据全在本机一个 .db 文件里,不联网、不上传。 它跟别的记忆插件有什么不一样 大多数记忆插件存的是「知识卡」:一段话压缩成一张卡,卡上写标题、摘要。 识海存的是原话,然后在原话上面叠三层结构: 话(memories)—— 一句一句,原文不动 └ 事(events)—— 这件事叫什么,比如「记忆系统重做」 └ 版本(versions)—— 这套方案的一版,比如「卡片墙」 └ 阶段(stages)—— 走到哪一步,比如「试跑」决定(decisions)—— 某个节点上定下来的口径,单独记 好处是:话永远不会被改写,怎么归类都可以后来再改;坏处是库会长得比较快。 每条话还会带:分数(0~100 有多重要)、七情(喜/怒/哀/惧/爱/恶/欲)、门类(闲聊/暧昧/干活/知识/规矩)、去处(进事 / 闲聊池 / 废料池)。
展开完整文档(README 剩余 1 节)
识海 · MindSea

给 DeepSeek Harness 的记忆插件。

它做的事很简单:你们聊完一轮,它把这一轮的话判一遍、存进本地 SQLite,下次要用的时候能翻出来。
不是让模型「记住」——上下文的记忆会过期,这个不会。

数据全在本机一个 .db 文件里,不联网、不上传。

它跟别的记忆插件有什么不一样

大多数记忆插件存的是「知识卡」:一段话压缩成一张卡,卡上写标题、摘要。

识海存的是原话,然后在原话上面叠三层结构:

话(memories)—— 一句一句,原文不动 └ 事(events)—— 这件事叫什么,比如「记忆系统重做」 └ 版本(versions)—— 这套方案的一版,比如「卡片墙」 └ 阶段(stages)—— 走到哪一步,比如「试跑」决定(decisions)—— 某个节点上定下来的口径,单独记

好处是:话永远不会被改写,怎么归类都可以后来再改;坏处是库会长得比较快。

每条话还会带:分数(0~100 有多重要)、七情(喜/怒/哀/惧/爱/恶/欲)、门类(闲聊/暧昧/干活/知识/规矩)、去处(进事 / 闲聊池 / 废料池)。

安装

1. 建库

node scripts/init-db.mjs

默认在插件目录的上一层建 sea2.db;也可以指定路径:

node scripts/init-db.mjs D:/memory/sea2.db

2. 装进 DSH profile

把这个目录 link 进你的 profile(以 ~/.dsh/profiles/desktop 为例):

cd ~/.dsh/profiles/desktop
npm install <这个仓库的路径或压缩包>

或者手动在 node_modules 下做个软链:

node_modules/dsh-mindsea -> <这个仓库的目录>

然后编辑 ~/.dsh/profiles/desktop/package.json,把 dsh-mindsea 加进 dsh.profile.bundles 数组。

3. 重启 DSH

重启后侧边栏会多一个「识海」入口。第一次聊完一轮,sea2.db 里就会有数据了。

库换个位置:设环境变量 DSH_MINDSEA_DB=<路径>,或者在 cordis.patch.yml 里给这行加 config: { dbPath: '...' }。

三个工具

模型自己能调用,你也可以在对话里让它用:

| 工具 | 干什么 |
| memory_search(q, day, emo) | 撞词 / 撞日期 / 撞七情 → 命中的事,按命中条数排 |
| memory_event(name) | 给一个事名,摊开它的版本、阶段、最近的决定 |
| memory_write(items) | 把一批判好的话写进库(事 / 版本 / 阶段同名自动复用) |

三根轴可以任意组合,多个条件是「并且」:

memory_search(q: "桌宠", day: "2026-10")
memory_search(emo: "爱", limit: 20)

自动沉淀是怎么跑的

挂的是 agent/turn-stopping:

1. 一轮结束,抓这一轮新增的 user / assistant 消息;
2. 剥掉运行时注入(环境快照、system-reminder、技能目录那些不是人说的话);
3. 丢给模型判:这条归哪件事、多少分、什么情绪、是不是决定、哪个门类;
4. 落库。

几条设计上的取舍,用之前值得知道:

- 监听器里不等模型。turn-stopping 是串行事件,在监听器里 await 会把整轮收尾拖住,所以抓完增量就丢后台队列。
- 原话不由模型回抄。模型只输出编号和判断,正文用我们自己存的原话,一个字都不会被改写。
- 短轮也存。一轮话太短就不问模型了,直接进闲聊池、40 分、不挂事——宁可留平,不要丢。
- 我的长回答看内容。超过 400 字、又没信息量(纯过程叙述)的,进废料池:留档,但不挂事、不参加匹配。
- 只沉淀顶层会话。子代理(工具工人)的话不进库。

想关掉自动沉淀:在 profile 的 cordis.patch.yml 里给 mindsea 那行加

- id: mindsea
config:
autoCapture: false

沉淀失败不会打扰你,会写进 data/capture-log.jsonl;面板「自动化」页能看到最近流水。

面板

侧边栏「识海」进去,十一页:

- 记忆库 —— 卡片墙,按门类上色,能搜、能筛
- 知识星图 —— 把事 / 版本画成星图,能拖能转
- 工作流 —— 按话题 → 事 → 版本 / 阶段看
- 时间 —— 按天看话,每条话旁边可以改门类 / 去处(判错了手动纠)
- 人设 / 遗忘 / 走神 / 日记 / 自动化 / 运行状态 / 报错

面板的数据接口全是只读 GET,只有一个写口子:POST /mindsea/api/memory,用来改一条话的门类或去处。

目录结构

index.js 插件入口:三个工具、两个钩子、面板路由 client.js 面板前端(一块 Web 组件) lib/query.mjs 只读查询(memory_search / memory_event 走这里) lib/write.mjs 写入(memory_write 和自动沉淀共用) lib/capture.mjs 自动沉淀:切轮、剥噪声、判、落库 lib/routes.mjs 面板的 HTTP 路由 lib/api.mjs 面板各页要的数据 lib/tail.mjs 每个会话第一轮推最近 10 句 lib/sea-svg.mjs 现画一张识海图谱(SVG) lib/ui/eternal.css 面板样式 scripts/init-db.mjs 建空库 test/capture-selftest.mjs 离线自测(假模型 + 库副本)

跑一遍自测:

npm test

它不碰真库、不调真模型,用一份库的副本走完整条链路。

已知限制

- 只在 DSH 跑着的时候沉淀。关机、DSH 没开,那段时间的话不会进库。
- 判错要人来改。模型会把某句判进错的事、错的分数,这个它自己发现不了;去「时间」页手动纠。
- 库只长不缩。废料池的原文一直留着,目前没有自动归档。
- 界面那块是从 memory-eternal 借的(见 NOTICE),不是原创设计。

许可

MIT。界面部分来自 memory-eternal(MIT,Copyright (c) 2026 EternalNight996),详见 NOTICE。
预览分享卡片长什么样 ↓SQHLnb666/mindsea
分享 · DeepSeek Harness Hub
SQHLnb666/mindsea

自动沉淀每轮对话原话,随时检索本地记忆

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部