为会话接入主动记忆与建议,自动捕获、评估并推送
29.4/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查未通过:缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装。以下命令仍可尝试,但可能失败。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add ConradLu2740/pa-dsh该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · chat
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 53 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包pa-dsh(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/9/22 17:50:51
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件读取剪贴板或密钥环境变量发起外部网络请求
查看扫描证据(共 124 处,展示前 43 条)
- 读取本地文件packages/dsh-proactive-core/lib/index.js:332
if (!existsSync(override)) mkdirSync(override, { recursive: true }); - 写入本地文件packages/dsh-proactive-core/lib/index.js:332
if (!existsSync(override)) mkdirSync(override, { recursive: true }); - 读取本地文件packages/dsh-proactive-core/lib/index.js:336
if (!existsSync(dir)) mkdirSync(dir, { recursive: true }); - 写入本地文件packages/dsh-proactive-core/lib/index.js:336
if (!existsSync(dir)) mkdirSync(dir, { recursive: true }); - 读取本地文件packages/dsh-proactive-core/lib/index.js:385
if (existsSync(join(dir, ".mcp.json"))) return dir; - 读取本地文件packages/dsh-proactive-core/lib/index.js:386
if (existsSync(join(dir, ".git"))) return dir; - 执行外部命令固定命令packages/dsh-proactive-core/lib/index.js:395
const out = execFileSync("git", ["remote", "-v"], { cwd: projectRoot, encoding: "utf-8", stdio: ["ignore", "pipe", "ignore"] }); - 读取本地文件packages/dsh-proactive-core/lib/index.js:426
if (existsSync(pkg)) { - 读取本地文件packages/dsh-proactive-core/lib/index.js:428
const data = JSON.parse(readFileSync(pkg, "utf-8")); - 写入本地文件packages/dsh-proactive-core/lib/index.js:445
mkdirSync(dirname(metaPath), { recursive: true }); - 写入本地文件packages/dsh-proactive-core/lib/index.js:447
writeFileSync( - 写入本地文件packages/dsh-proactive-core/lib/index.js:473
mkdirSync(configDir(), { recursive: true }); - 写入本地文件packages/dsh-proactive-core/lib/index.js:474
writeFileSync(getTopIndexPath(), JSON.stringify(index, null, 2) + "\n", "utf-8"); - 删除本地文件packages/dsh-proactive-core/lib/index.js:645
unlinkSync(tmpPath); - 删除本地文件packages/dsh-proactive-core/lib/index.js:1114
unlinkSync2(filePath); - 删除本地文件packages/dsh-proactive-core/lib/index.js:1223
unlinkSync2(join4(getMemoryAtomsDir(), file)); - 删除本地文件packages/dsh-proactive-core/lib/index.js:1233
unlinkSync2(profilePath); - 发起网络请求packages/dsh-proactive-core/lib/index.js:1478
const response = await fetch(`${config.baseUrl.replace(/ +$/, "")}/chat/completions`, { - 发起网络请求packages/dsh-proactive-core/lib/index.js:1611
const resp = await fetch(`${config.baseUrl.replace(/ +$/, "")}/embeddings`, { - 读取密钥环境变量packages/dsh-proactive-core/lib/index.js:4510
if (process.env.MEMORY_LLM_API_KEY) return; - 读取密钥环境变量packages/dsh-proactive-core/lib/index.js:4515
process.env.MEMORY_LLM_API_KEY = resolved.value; - 读取密钥环境变量packages/dsh-proactive-core/src/plugin.ts:110
if (process.env.MEMORY_LLM_API_KEY) return - 读取密钥环境变量packages/dsh-proactive-core/src/plugin.ts:115
process.env.MEMORY_LLM_API_KEY = resolved.value - 读取本地文件packages/dsh-proactive-daily/lib/index.js:29
if (!existsSync(bufferFile)) return []; - 读取本地文件packages/dsh-proactive-daily/lib/index.js:30
const raw = JSON.parse(readFileSync(bufferFile, "utf8")); - 写入本地文件packages/dsh-proactive-daily/lib/index.js:41
mkdirSync(dirname(bufferFile), { recursive: true }); - 读取本地文件packages/dsh-proactive-daily/lib/index.js:44
if (!existsSync(bufferFile)) return {}; - 读取本地文件packages/dsh-proactive-daily/lib/index.js:45
const raw = JSON.parse(readFileSync(bufferFile, "utf8")); - 写入本地文件packages/dsh-proactive-daily/lib/index.js:51
writeFileSync(bufferFile, JSON.stringify({ ...existing, messages: messages.slice(-200) }), "utf8"); - 读取本地文件packages/dsh-proactive-daily/lib/index.js:124
if (!existsSync(bufferFile)) return ""; - 读取本地文件packages/dsh-proactive-daily/lib/index.js:125
const raw = JSON.parse(readFileSync(bufferFile, "utf8")); - 写入本地文件packages/dsh-proactive-daily/lib/index.js:135
mkdirSync(dirname(bufferFile), { recursive: true }); - 写入本地文件packages/dsh-proactive-daily/lib/index.js:138
writeFileSync(bufferFile, JSON.stringify(payload), "utf8"); - 读取本地文件packages/dsh-proactive-daily/src/plugin.ts:73
if (!existsSync(bufferFile)) return [] - 读取本地文件packages/dsh-proactive-daily/src/plugin.ts:74
const raw = JSON.parse(readFileSync(bufferFile, 'utf8')) - 写入本地文件packages/dsh-proactive-daily/src/plugin.ts:90
mkdirSync(dirname(bufferFile), { recursive: true }) - 读取本地文件packages/dsh-proactive-daily/src/plugin.ts:93
if (!existsSync(bufferFile)) return {} - 读取本地文件packages/dsh-proactive-daily/src/plugin.ts:94
const raw = JSON.parse(readFileSync(bufferFile, 'utf8')) - 写入本地文件packages/dsh-proactive-daily/src/plugin.ts:100
writeFileSync(bufferFile, JSON.stringify({ ...existing, messages: messages.slice(-200) }), 'utf8') - 读取本地文件packages/dsh-proactive-daily/src/plugin.ts:186
if (!existsSync(bufferFile)) return '' - 读取本地文件packages/dsh-proactive-daily/src/plugin.ts:187
const raw = JSON.parse(readFileSync(bufferFile, 'utf8')) - 写入本地文件packages/dsh-proactive-daily/src/plugin.ts:198
mkdirSync(dirname(bufferFile), { recursive: true }) - 写入本地文件packages/dsh-proactive-daily/src/plugin.ts:204
writeFileSync(bufferFile, JSON.stringify(payload), 'utf8')
扫描于 2026/11/2(1 天前) · 范围 全包扫描 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 接入主动记忆
- 接入主动建议
- 自动捕获评估推送
README
由 DeepSeek 最新模型翻译生成pa-dsh — ProactiveAgent × DeepSeek Harness 插件组
把 ProactiveAgent(主动记忆 + 主动建议系统)做成 DeepSeek Harness(dsh)的 cordis 插件组。引擎零重写,全部复用 @proactive-agent/core,通过 cordis 服务注入。
架构
graph TB
subgraph dsh[DeepSeek Harness 宿主]
EV[会话事件流 session/event]
TOOLS[工具注册 ctx.tools]
PROMPT[系统提示词 systemPrompt]
SKILLS[技能目录 ctx.skills]
SESSIONS[会话 Store ctx.sessions]
end
CORE[dsh-proactive-corepaCore 服务@proactive-agent/core 进程内单例]
MEM[dsh-proactive-memorymemory_capture / recall / stats+ persona 提示词段]
SUG[dsh-proactive-suggest事件 → evaluateNow 五触发器+ suggest_now 工具]
展开完整文档(README 剩余 1 节)
pa-dsh — ProactiveAgent × DeepSeek Harness 插件组
把 ProactiveAgent(主动记忆 + 主动建议系统)做成 DeepSeek Harness(dsh)的 cordis 插件组。引擎零重写,全部复用 @proactive-agent/core,通过 cordis 服务注入。
架构
graph TB
subgraph dsh[DeepSeek Harness 宿主]
EV[会话事件流 session/event]
TOOLS[工具注册 ctx.tools]
PROMPT[系统提示词 systemPrompt]
SKILLS[技能目录 ctx.skills]
SESSIONS[会话 Store ctx.sessions]
end
CORE[dsh-proactive-corepaCore 服务@proactive-agent/core 进程内单例]
MEM[dsh-proactive-memorymemory_capture / recall / stats+ persona 提示词段]
SUG[dsh-proactive-suggest事件 → evaluateNow 五触发器+ suggest_now 工具]
INJ[dsh-proactive-injector建议箱通知投递suggest_list / accept / dismiss]
DAI[dsh-proactive-daily每日 09:30 定时评估daily_review 工具]
SKI[dsh-proactive-skillssop 记忆 → pa-sop-N skills]
CORE -. paCore 服务注入 .-> MEM CORE -. paCore 服务注入 .-> SUG CORE -. paCore 服务注入 .-> INJ CORE -. paCore 服务注入 .-> DAI CORE -. paCore 服务注入 .-> SKI
EV -- session/created/turn/end/disposed --> SUG
SUG -- pa/suggestion 事件 --> INJ
INJ -- session.append 通知 --> SESSIONS
MEM -- persona 段 --> PROMPT
SUG -- suggest_now --> TOOLS
INJ -- 建议箱工具 --> TOOLS
DAI -- daily_review --> TOOLS
SKI -- registerProvider --> SKILLS
SUG -- 建议落库 --> CORE
INJ -- accept/dismiss 反馈 --> CORE
事件流:dsh 会话事件(session/created → session_start 存量推送;turn/end → session_mid 强信号建议;session/disposed → session_end 完整评估;suggest_now → manual;每日定时 → timer)→ suggest 插件评估 → pa/suggestion 事件 → injector 投递建议箱通知 → 用户接受/忽略 → 反馈回流 core(状态、类型权重持久化)。
插件一览(已发布 npm,v0.1.0)
| 包 | 职责 |
| @proactive-agent/dsh-proactive-core | 引擎单例宿主:唯一 import @proactive-agent/core,以 paCore 服务提供 memory/suggest |
| @proactive-agent/dsh-proactive-memory | 原生记忆工具(capture/recall/stats)+ 用户画像提示词段 |
| @proactive-agent/dsh-proactive-suggest | 主动建议引擎:session 事件 → evaluateNow 五触发器 |
| @proactive-agent/dsh-proactive-injector | 建议箱 + 反馈闭环(suggest_list/accept/dismiss) |
| @proactive-agent/dsh-proactive-daily | 每日 09:30 定时回顾 + daily_review 工具 |
| @proactive-agent/dsh-proactive-skills | sop 记忆 → dsh skills(pa-sop-N 动态目录) |
安装到 dsh profile(官方 bundle 形态,推荐)
一条命令:自动安装 6 包 + 应用 cordis.patch.yml 层
dsh plugin --profile web add @proactive-agent/dsh
细粒度安装(高级,逐个启用)
cd ~/.dsh/profiles/webbash
pnpm add @proactive-agent/dsh-proactive-core @proactive-agent/dsh-proactive-memory @proactive-agent/dsh-proactive-suggest @proactive-agent/dsh-proactive-injector @proactive-agent/dsh-proactive-daily @proactive-agent/dsh-proactive-skills
在 ~/.dsh/profiles/web/cordis.patch.yml 添加(pa-core 必须排最前,内容同 bundle 包的 cordis.patch.yml): yaml
- insert:
- id: pa-core
name: '@proactive-agent/dsh-proactive-core'
config: {}
- id: pa-memory
name: '@proactive-agent/dsh-proactive-memory'
config: { personaOrder: 5 }
- id: pa-suggest
name: '@proactive-agent/dsh-proactive-suggest'
config: {}
- id: pa-injector
name: '@proactive-agent/dsh-proactive-injector'
config: { notifyOnSuggestion: true }
- id: pa-daily
name: '@proactive-agent/dsh-proactive-daily'
config: { dailyAt: '09:30' }
- id: pa-skills
name: '@proactive-agent/dsh-proactive-skills'
config: { maxSkills: 10 }
重启 dsh 即生效。记忆库默认 ~/.proma-proactive/(与 Claude Code 版 PA 共享)。
开发 bash
pnpm install
node scripts/build.mjs # esbuild 构建全部插件到 packages/*/lib/
发布到 npm(在你终端运行,2FA 为 WebAuthn) bash bash scripts/publish.sh # patch 版本(可 minor / major),含 bundle 聚合包
每个包发布时按 Enter 打开浏览器 → 指纹授权。随后升级 dsh profile: bash
cd ~/.dsh/profiles/web && pnpm add @proactive-agent/dsh-proactive-xxx@新版本
文档
- PROPOSAL.md — 12 节完整方案(架构、触发器映射、分阶段实施)
- IMPLEMENTATION.md — 实施总结、验证链路、踩坑记录、已知待办预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
ConradLu2740/pa-dsh
为会话接入主动记忆与建议,自动捕获、评估并推送
相关插件 · 对话 / 记忆
上下文中枢oceanbase/powercontext
上下文跟着工作走 —— 跨会话、跨智能体、跨人。
★ 1,487已汉化DSH
73
智能体记忆库plastic-labs/honcho
Honcho 是记忆基础设施,用来构建有状态的智能体。这些智能体能理解不断变化的人、智能体、群组、项目和想法。
★ 7,894已汉化DSH
71.7
长程智能体控制面loopx-project/loopx
给 Agent 一个目标,让工作持续向前。
★ 6,358已汉化DSH
71.3
智能体上下文数据库volcengine/OpenViking
给 AI 智能体用的上下文数据库
★ 41,379已汉化DSH
71.3
长效机器人团队Fei2411/DS-Bot
DS Bot 是一个基于 DeepSeek Harness简称 dsh的 bot 插件,插件将 dsh 改造为 bot…
★ 5,084已汉化DSH
71.1
可携带记忆层EverMind-AI/EverOS
为什么选择 EverOS
★ 13,778已汉化DSH
71.1