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

梦境日记 STARDUSTLC666/dsh-dream

DeepSeek Harnessv0.13.8
STARDUSTLC6662 天前有提交已提供中文文档扫描:含敏感能力

DSH 任务经验记忆:自动整理候选、人工审阅采纳、相关任务召回、来源与范围核查。欢迎提交 issues 和 PR。

38.5/100
综合分
11
GitHub 星标
2,524
npm 周下载
—/5
用户评分

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

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add @stardustlc/dsh-dream
npm 源 · @stardustlc/dsh-dream 的发布者账号已校验与本仓库一致

状态速览

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

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

验证判据与等级说明 →

可信度证据

安装兼容性检查✓ 自动检查通过
展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包@stardustlc/dsh-dream @ 0.13.8
✓Node 引擎要求 ^22.19.0 || >=24.0.0 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/11/4 03:21:55

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

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

读写/删除本地文件写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 95 处,展示前 71 条)
  • 读取本地文件
    lib/index.js:41
    const text = readFileSync(join(dir, 'SKILL.md'), 'utf8');
  • 发起网络请求
    lib/client.js:301
    const response = await fetch(route, { method: 'POST', credentials: 'same-origin', cache: 'no-store', signal: controller.signal, headers: { 'content-ty
  • 发起网络请求
    lib/client.js:318
    const close = () => { void fetch(route, { method: 'POST', credentials: 'same-origin', keepalive: true, headers: { 'content-type': 'application/json',
  • 发起网络请求
    lib/client.js:1122
    const res = await fetch(routeUrl(params.join("&")), init);
  • 发起网络请求
    lib/client.js:1152
    const res = await fetch(routeUrlFor(KNOWLEDGE_ROUTE, ""), init);
  • 发起网络请求
    lib/client.js:1181
    const res = await fetch(routeUrlFor(BRIDGE_ROUTE, ""), init);
  • 发起网络请求
    lib/client.js:1207
    const res = await fetch(routeUrlFor(ACTION_ROUTE, ""), init);
  • 写入剪贴板
    lib/client.js:1231
    await navigator.clipboard.writeText(value);
  • 读取本地文件
    lib/tools.js:150
    if (!statSync(target).isDirectory())
  • 读取本地文件
    lib/tools.js:152
    accessSync(target, constants.R_OK | constants.W_OK);
  • 读取本地文件
    lib/tools.js:163
    if (existsSync(lexical))
  • 读取本地文件
    lib/tools.js:626
    const sessionsOk = existsSync(cfg.sessionsRoot);
  • 读取本地文件
    lib/tools.js:641
    const journalExists = existsSync(cfg.journalDir);
  • 读取本地文件
    lib/tools.js:873
    if (!existsSync(dir)) {
  • 读取本地文件
    lib/web.js:310
    else if (existsSync(bridgeDir)) {
  • 读取本地文件
    lib/web.js:340
    : (existsSync(knowledgeDir) ? new KnowledgeStore(knowledgeDir) : null);
  • 读取本地文件
    lib/sessions.js:72
    if (!existsSync(filePath))
  • 读取本地文件
    lib/sessions.js:76
    const bytes = readFileSync(filePath);
  • 读取本地文件
    lib/sessions.js:206
    if (!existsSync(sessionsRoot))
  • 读取本地文件
    lib/sessions.js:211
    return readdirSync(path);
  • 读取本地文件
    lib/sessions.js:220
    if (!statSync(projectDir).isDirectory())
  • 读取本地文件
    lib/sessions.js:238
    const stat = statSync(file);
  • 写入本地文件
    lib/journal.js:23
    mkdirSync(journalDir, { recursive: true });
  • 写入本地文件
    lib/journal.js:24
    appendFileSync(journalFile(journalDir), JSON.stringify(entry) + '\n', 'utf8');
  • 读取本地文件
    lib/journal.js:38
    if (!existsSync(file))
  • 读取本地文件
    lib/journal.js:41
    const text = readFileSync(file, 'utf8').replace(/^ FEFF/, '');
  • 读取本地文件
    lib/bridge.js:319
    if (existsSync(current)) {
  • 读取本地文件
    lib/bridge.js:329
    if (lstatSync(current).isSymbolicLink())
  • 读取本地文件
    lib/bridge.js:350
    if (!existsSync(projectRoot)) {
  • 读取本地文件
    lib/bridge.js:401
    stat = statSync(path);
  • 读取本地文件
    lib/bridge.js:416
    buf = readFileSync(path);
  • 读取本地文件
    lib/bridge.js:455
    const stat = statSync(targetPath);
  • 写入本地文件
    lib/bridge.js:482
    mkdirSync(dir, { recursive: true });
  • 写入本地文件
    lib/bridge.js:487
    writeFileSync(fd, buf);
  • 写入本地文件
    lib/bridge.js:489
    chmodSync(tmp, mode);
  • 写入本地文件
    lib/bridge.js:496
    renameSync(tmp, targetPath);
  • 删除本地文件
    lib/bridge.js:500
    rmSync(tmp, { force: true });
  • 写入本地文件
    lib/bridge.js:568
    mkdirSync(dirname(file), { recursive: true });
  • 写入本地文件
    lib/bridge.js:578
    writeFileSync(fd, JSON.stringify(record) + '\n', 'utf8');
  • 删除本地文件
    lib/bridge.js:688
    unlinkSync(lockPath);
  • 删除本地文件
    lib/bridge.js:702
    unlinkSync(lockPath);
  • 删除本地文件
    lib/bridge.js:977
    unlinkSync(record.target);
  • 读取本地文件
    lib/knowledge-store.js:82
    raw = readFileSync(lockPath, 'utf8');
  • 读取本地文件
    lib/knowledge-store.js:89
    at = statSync(lockPath).mtimeMs;
  • 读取本地文件
    lib/knowledge-store.js:125
    const parsed = JSON.parse(readFileSync(lockPath, 'utf8'));
  • 写入本地文件
    lib/knowledge-store.js:128
    writeFileSync(lockPath, JSON.stringify({ pid: process.pid, at: new Date().toISOString(), token, bootId: BOOT_ID }));
  • 读取本地文件
    lib/knowledge-store.js:137
    const parsed = JSON.parse(readFileSync(lockPath, 'utf8'));
  • 删除本地文件
    lib/knowledge-store.js:145
    unlinkSync(lockPath);
  • 删除本地文件
    lib/knowledge-store.js:200
    unlinkSync(lockPath);
  • 读取本地文件
    lib/knowledge-store.js:936
    const raw = existsSync(this.indexPath) ? JSON.parse(readFileSync(this.indexPath, 'utf8')) : undefined;
  • 读取本地文件
    lib/knowledge-store.js:936
    const raw = existsSync(this.indexPath) ? JSON.parse(readFileSync(this.indexPath, 'utf8')) : undefined;
  • 写入本地文件
    lib/knowledge-store.js:971
    mkdirSync(this.dir, { recursive: true });
  • 写入本地文件
    lib/knowledge-store.js:1413
    appendFileSync(file, JSON.stringify(value) + '\n', 'utf8');
  • 写入本地文件
    lib/knowledge-store.js:1778
    writeFileSync(tmp, JSON.stringify(payload) + '\n', 'utf8');
  • 写入本地文件
    lib/knowledge-store.js:1779
    renameSync(tmp, target);
  • 删除本地文件
    lib/knowledge-store.js:1783
    rmSync(tmp, { force: true });
  • 读取本地文件
    lib/evidence.js:35
    const stat = statSync(file);
  • 读取本地文件
    lib/evidence.js:38
    const bytes = readFileSync(file);
  • 读取本地文件
    lib/automatic-state.js:11
    if (!existsSync(file))
  • 读取本地文件
    lib/automatic-state.js:13
    if (statSync(file).size > 2 * 1024 * 1024)
  • 读取本地文件
    lib/automatic-state.js:15
    const raw = JSON.parse(readFileSync(file, 'utf8'));
  • 写入本地文件
    lib/automatic-state.js:45
    mkdirSync(dir, { recursive: true });
  • 读取本地文件
    lib/automatic-state.js:56
    const owner = JSON.parse(readFileSync(lock, 'utf8'));
  • 读取本地文件
    lib/automatic-state.js:57
    if (!Number.isSafeInteger(owner.pid) || owner.pid < 1 || now - statSync(lock).mtimeMs < 30000)
  • 删除本地文件
    lib/automatic-state.js:67
    unlinkSync(lock);
  • 写入本地文件
    lib/automatic-state.js:76
    writeFileSync(descriptor, JSON.stringify({ pid: process.pid }));
  • 写入本地文件
    lib/automatic-state.js:79
    writeFileSync(temporary, JSON.stringify(state) + '\n', { flag: 'wx' });
  • 写入本地文件
    lib/automatic-state.js:80
    renameSync(temporary, join(dir, 'state.json'));
  • 删除本地文件
    lib/automatic-state.js:85
    unlinkSync(lock);
  • 读取本地文件
    lib/automatic-state.js:86
    if (existsSync(temporary))
  • 删除本地文件
    lib/automatic-state.js:87
    unlinkSync(temporary);
扫描于 2026/11/6(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包

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

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

界面预览

1 张 · 点击查看大图

功能亮点

  • 回放近期对话
  • 反思写入梦境日记
  • 教训桥接至规则文件

DSH 做梦插件:会话间隙回放近期对话、反思写入梦境日记,并把高频教训幂等桥接进 AGENTS.md;默认隐私脱敏,零运行时依赖。

README

由 DeepSeek 最新模型翻译生成
简体中文 · English Dream 让 DSH 把做过的任务,变成下次用得上的经验。 downloads total downloads 安装使用 · 使用流程 · 完整说明 功能 - 实际任务结束后,按开关与额度整理候选经验。 - 核对原文、适用范围、条件与例外,再决定采纳。 - 在相关任务中回用已确认经验,并保留来源。 看看怎么用 Dream review steps 使用验证环境真实截图制作的步骤轮播:核对待审阅候选,再查看已采纳列表。演示人工审阅流程,不是连续录屏或效果基准。 安装 在 DSH 桌面版「插件」面板安装 @stardustlc/dsh-dream。已配置命令行时也可使用: dsh plugin --profile desktop add @stardustlc/dsh-dream 网页版把 desktop 改为 web;安装后重启对应的 DSH。宿主要求以包声明 >=0.2.1-rc.3 为准。 开始使用 1. 从左侧栏打开“Dream 记忆”,按需要选择自动整理与自动取回。 2. 正常完成实际任务;符合整理条件后查看“待审阅”,也可明确让助手复盘这次任务。 3. 展开候选,核对来源、适用范围、条件和例外,再由你决定采纳或保留待审阅。 4. 后续相关任务取回已确认经验作为参考;需要时在“已采纳”中修改、撤回或安排复核。
展开完整文档(README 剩余 1 节)
简体中文 · English

Dream

让 DSH 把做过的任务,变成下次用得上的经验。

downloads total downloads

安装使用 · 使用流程 · 完整说明

功能

- 实际任务结束后,按开关与额度整理候选经验。
- 核对原文、适用范围、条件与例外,再决定采纳。
- 在相关任务中回用已确认经验,并保留来源。

看看怎么用

Dream review steps

使用验证环境真实截图制作的步骤轮播:核对待审阅候选,再查看已采纳列表。演示人工审阅流程,不是连续录屏或效果基准。

安装

在 DSH 桌面版「插件」面板安装 @stardustlc/dsh-dream。已配置命令行时也可使用:

dsh plugin --profile desktop add @stardustlc/dsh-dream

网页版把 desktop 改为 web;安装后重启对应的 DSH。宿主要求以包声明 >=0.2.1-rc.3 为准。

开始使用

1. 从左侧栏打开“Dream 记忆”,按需要选择自动整理与自动取回。
2. 正常完成实际任务;符合整理条件后查看“待审阅”,也可明确让助手复盘这次任务。
3. 展开候选,核对来源、适用范围、条件和例外,再由你决定采纳或保留待审阅。
4. 后续相关任务取回已确认经验作为参考;需要时在“已采纳”中修改、撤回或安排复核。

可以这样说:

复盘刚才的任务,整理可复用经验并保留来源,先放到待审阅。

开始前要知道

候选不会自动采纳。自动整理会使用当前会话模型和额度,两个自动开关可分别控制。

配置、完整工具与排错见详细使用说明。

插件更新

在工作台或原生插件详情页底部检查更新。默认自动检查,默认不自动安装;是否安装、何时重启由你决定。Suite 管理的组件随整包更新。查看更新规则。

文档

- 详细使用、配置与边界
- 更新记录
- 验证范围与历史

反馈与贡献

如果插件帮到了你,欢迎 Star,让更多人发现它。问题和建议请提交 Issues,也欢迎代码与文档 PR。反馈时附上版本与复现步骤,并移除凭据。

License

MIT
预览分享卡片长什么样 ↓STARDUSTLC666/dsh-dream
分享 · DeepSeek Harness Hub
STARDUSTLC666/dsh-dream

DSH 任务经验记忆:自动整理候选、人工审阅采纳、相关任务召回、来源与范围核查。欢迎提交 issues 和 PR。

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