按项目隔离长期记忆,可检索纠错并跨会话共享
28.6/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/11/1 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add lgquan/dsh-workspace-memory该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · chat
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 7 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(dependency_conflict · 2026/10/7) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查要求 Node:>=22.19.0(dsh 本身要求 Node ≥ 22.19)本插件尚未跑静态安装检查,以上为仓库状态警告。
>=22.19.0(dsh 本身要求 Node ≥ 22.19)最后检查 2026/11/1 04:30:56
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 25 处,展示前 15 条)
- 写入本地文件src/core.ts:543
await mkdir(join(scope.dir, CHECKPOINT_DIR), { recursive: true }) - 写入本地文件src/core.ts:544
await mkdir(join(scope.dir, HISTORY_DIR), { recursive: true }) - 读取本地文件src/core.ts:546
if (!existsSync(descriptor)) { - 写入本地文件src/core.ts:548
await writeFile(descriptor, JSON.stringify({ key: scope.key, cwd: scope.cwd }, null, 2) + '\n', { encoding: 'utf8', flag: 'wx' }) - 读取本地文件src/core.ts:556
const raw = await readFile(join(scope.dir, ENTRIES_FILE), 'utf8').catch(() => '[]') - 读取本地文件src/core.ts:565
const raw = await readFile(join(scope.dir, STATE_FILE), 'utf8').catch(() => '') - 读取本地文件src/core.ts:583
const raw = await readFile(join(scope.dir, SUMMARY_FILE), 'utf8').catch(() => '') - 读取本地文件src/core.ts:594
const directories = await readdir(join(this.root, 'scopes'), { withFileTypes: true }).catch(() => []) - 读取本地文件src/core.ts:598
const raw = await readFile(descriptor, 'utf8').catch(() => '') - 写入本地文件src/core.ts:638
await mkdir(join(this.root, ARCHIVE_DIR), { recursive: true }) - 写入本地文件src/core.ts:640
await rename(scope.dir, destination) - 删除本地文件递归src/core.ts:650
await rm(directory, { recursive: true, force: true }) - 删除本地文件src/core.ts:705
await unlink(join(scope.dir, HISTORY_DIR, stale)).catch(() => {}) - 写入本地文件src/core.ts:723
await mkdir(dirname(file), { recursive: true }) - 读取本地文件src/index.ts:246
try { return readFileSync(file, 'utf8') } catch { return '' }
扫描于 2026/11/3(1 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-agent@deepseek-ai/dsh-agent-default-model@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-settings@deepseek-ai/dsh-llm@deepseek-ai/dsh-session@deepseek-ai/dsh-system-prompt@deepseek-ai/dsh-tools@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 按项目隔离长期记忆
- 记忆检索与纠错
- 跨会话共享记忆
为 DeepSeek Harness 和 dsh-voco 语音智能体提供工作区级持久记忆。
README
由 DeepSeek 最新模型翻译生成dsh-workspace-memory
为 DeepSeek Harness 提供按工作区隔离的长期记忆。
安装后,DSH 可以在后续会话中继续使用已经确认的项目事实、技术决策、工作约定和用户偏好;不同项目的记忆互不混用,全局偏好则可以跨项目共享。插件同时提供记忆检索、显式写入、删除、冲突修正和可审计的历史版本。
适合谁
- 希望同一项目的多个会话共享上下文;
- 希望普通智能体、后台智能体和语音智能体使用同一份项目记忆;
- 希望长期记忆可查看、可纠错、可删除,而不是无法审计的黑盒;
- 不想额外部署向量数据库或 Embedding 服务。
安装前提
- 已安装 DeepSeek Harness 0.2.1-rc.2 或兼容的更新版本;
- 使用 DSH 的 web 配置档;
- Node.js >= 22.19.0。
下面两种方式任选一种。两种方式安装的都是已经构建好的插件包,不需要下载源码或准备开发环境。推荐使用 NPM;无法访问 NPM Registry 时可以改用 GitHub Release。
展开完整文档(README 剩余 1 节)
dsh-workspace-memory 为 DeepSeek Harness 提供按工作区隔离的长期记忆。 安装后,DSH 可以在后续会话中继续使用已经确认的项目事实、技术决策、工作约定和用户偏好;不同项目的记忆互不混用,全局偏好则可以跨项目共享。插件同时提供记忆检索、显式写入、删除、冲突修正和可审计的历史版本。 适合谁 - 希望同一项目的多个会话共享上下文; - 希望普通智能体、后台智能体和语音智能体使用同一份项目记忆; - 希望长期记忆可查看、可纠错、可删除,而不是无法审计的黑盒; - 不想额外部署向量数据库或 Embedding 服务。 安装前提 - 已安装 DeepSeek Harness 0.2.1-rc.2 或兼容的更新版本; - 使用 DSH 的 web 配置档; - Node.js >= 22.19.0。 下面两种方式任选一种。两种方式安装的都是已经构建好的插件包,不需要下载源码或准备开发环境。推荐使用 NPM;无法访问 NPM Registry 时可以改用 GitHub Release。 方式一:通过 NPM 安装(推荐) 在 PowerShell 或终端中运行: dsh plugin --profile web add --config.minimumReleaseAge=0 @flowingspring/dsh-workspace-memory@0.2.16 NPM 包地址:@flowingspring/dsh-workspace-memory 方式二:通过 GitHub 安装 直接安装 GitHub Release 中的预构建插件包: dsh plugin --profile web add --config.minimumReleaseAge=0 https://github.com/lgquan/dsh-workspace-memory/releases/download/v0.2.16/flowingspring-dsh-workspace-memory-0.2.16.tgz Release 页面:v0.2.16 安装后怎么使用 1. 重启 dsh web。 2. 打开 DSH 设置。 3. 进入“记忆”页面。 4. 正常与智能体对话。插件会自动缓冲、整理并在后续任务中检索相关记忆。 安装成功后,设置页会显示: - 全局记忆和各项目记忆; - 自动生成的稳定摘要; - 可展开查看的结构化记忆; - 记忆状态、历史修订和冲突信息; - 已删除项目对应的记忆回收区。 也可以用以下命令确认安装版本: dsh plugin --profile web list 更新 使用 NPM 更新到指定版本: dsh plugin --profile web add --config.minimumReleaseAge=0 @flowingspring/dsh-workspace-memory@0.2.16 使用 GitHub 更新到指定标签: dsh plugin --profile web add --config.minimumReleaseAge=0 https://github.com/lgquan/dsh-workspace-memory/releases/download/v0.2.16/flowingspring-dsh-workspace-memory-0.2.16.tgz 更新后重启 dsh web。 卸载 dsh plugin --profile web remove --config.minimumReleaseAge=0 @flowingspring/dsh-workspace-memory 卸载插件不会自动删除已经保存的记忆数据。确认不再需要后,可以手动删除下文所列的数据目录。 它会记住什么 插件只整理适合长期复用的内容,例如: - 项目架构、模块职责和稳定约束; - 已确认的技术选型与决策; - 用户明确表达的偏好和工作方式; - 已验证的问题结论、修复方式和注意事项。 临时闲聊、一次性任务细节和明显的凭据内容不应成为长期记忆。凭据形态内容会被拒绝持久化,并在记忆输出前再次脱敏。 记忆什么时候整理 对话完成后,消息会先进入缓冲区,不会每轮都调用模型整理。出现以下任一情况时会评估 checkpoint: - 后台智能体任务完成; - 累计达到 10 个已完成用户轮次; - 缓冲内容达到 4000 个字符; - 连续空闲 5 分钟; - 会话关闭; - 调用方显式要求立即整理。 插件会在服务启动时恢复已有项目的待整理消息:已经超过空闲阈值的内容会立即尝试整理,尚未超时的内容会按剩余时间触发。若模型或网络导致一次整理失败,插件会自动使用退避间隔重试,并在成功提交前保留待整理消息。 因此,刚聊完但尚未达到阈值、没有空闲足够时间或会话仍在继续时,设置页里暂时看不到新记忆是正常现象。 记忆如何检索和纠错 - 每个智能体 step 都会注入一份有大小上限的稳定摘要; - 智能体第一个 step 会根据当前问题检索相关结构化记忆; - 智能体还可以调用 memory_search 做第二次检索; - memory_remember 可以显式保存一条长期事实; - memory_forget 可以按记忆 ID 删除条目。 明确的用户纠正可以取代旧事实;证据不足的矛盾不会静默覆盖,而会保留为显式冲突。修订前的内容和被取代条目继续保留用于审计,但不会作为有效事实进入稳定摘要。 数据存在哪里 默认数据目录: $DSH_HOME/workspace-memory 未设置 DSH_HOME 时使用: ~/.dsh/workspace-memory 记忆数据默认不会写入 Git 项目目录。设置页只能读取经过脱敏的摘要和结构化条目,不会展示完整 checkpoint 对话原文。 与 dsh-voco 一起使用 安装 dsh-voco 0.3.6 或更高版本后,语音主 Session、普通 Session 和语音委派子 Session 只要使用相同的工作目录,就会共享同一个项目记忆范围。每个完成的语音委派任务会以 task-end 触发整理;只提交用户原始请求和最终可见结果,不把 reasoning、工具日志或注入上下文保存为长期记忆。 dsh-voco 不是必需依赖。未安装语音插件时,dsh-workspace-memory 仍可独立服务普通 DSH Agent。 可选配置 默认配置已经可以直接使用。需要调整时,可以在插件 loader 配置中覆盖以下字段: - insert: - id: workspace-memory name: '@flowingspring/dsh-workspace-memory' config: memoryDir: '' checkpointTurns: 10 checkpointChars: 4000 idleCheckpointMs: 300000 consolidateEvery: 5 summaryMaxBytes: 3000 recallMaxBytes: 5000 recallLimit: 8 checkpointMaxChars: 40000 keepSummaryVersions: 10 surfacedPenalty: 8 summarizeProvider: '' summarizeModel: '' summarizeProvider 和 summarizeModel 留空时,使用 DSH 当前默认模型。 常见问题 安装后设置里没有「记忆」页面 先运行 dsh plugin --profile web list 确认插件已经安装,然后完整重启 dsh web。正在运行的 Web 进程不会自动加载新插件。 刚结束对话,为什么还没有新记忆 整理由任务完成、轮次、字符数、空闲时间或 Session 关闭触发。未达到任何条件时,内容仍在 checkpoint 缓冲区中。 为什么某些聊天内容没有保存 蒸馏器只应保留长期有效、未来可复用的事实。临时信息、重复内容、低价值闲聊和凭据形态内容会被忽略或拒绝。 删除项目后记忆还在吗 项目从 DSH 注册表中删除后,对应记忆会进入设置页的「回收区」,不再参与正常召回。只有在回收区确认「永久删除」后,相关摘要、结构化条目和审计历史才会物理删除。 更多文档 - 设计与行为契约 - 架构说明 - 问题与处理记录 开发 源码使用 TypeScript。开发者检出仓库后可以运行: pnpm install pnpm check pnpm build pnpm pack --dry-run lib/ 是构建产物,不提交到 Git。NPM 包和 GitHub Release 附件都会包含经过发布检查的预构建产物。 License MIT
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
lgquan/dsh-workspace-memory
按项目隔离长期记忆,可检索纠错并跨会话共享
相关插件 · 对话 / 记忆
上下文中枢oceanbase/powercontext
上下文跟着工作走 —— 跨会话、跨智能体、跨人。
★ 1,489已汉化DSH
73.1
智能体记忆库plastic-labs/honcho
Honcho 是记忆基础设施,用来构建有状态的智能体。这些智能体能理解不断变化的人、智能体、群组、项目和想法。
★ 7,918已汉化DSH
71.7
长程智能体控制面loopx-project/loopx
给 Agent 一个目标,让工作持续向前。
★ 6,358已汉化DSH
71.3
智能体上下文数据库volcengine/OpenViking
给 AI 智能体用的上下文数据库
★ 41,453已汉化DSH
71.3
长效机器人团队Fei2411/DS-Bot
Download DS Bot for Windows 10/11 64-bit / 下载 Windows…
★ 5,293已汉化DSH
71.2
可携带记忆层EverMind-AI/EverOS
为什么选择 EverOS
★ 13,797已汉化DSH
71.1
这是你的仓库?认领条目