用自然语言记录、查询并回顾你的个人数据
29.9/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/29 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add ChengqianHuang/dsh-personal该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 2 处,展示前 2 条)
- 写入本地文件src/store/open.ts:27
await mkdir(dirname(actual), { recursive: true, mode: 0o700 }) - 读取本地文件src/store/search.ts:17
initSync({ module: readFileSync(new URL('./jieba_rs_wasm_bg.wasm', import.meta.resolve('jieba-wasm/web'))) })
扫描于 2026/11/4(0 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-brand@deepseek-ai/dsh-home-paths@deepseek-ai/dsh-tools@deepseek-ai/dsh-util-crypto@deepseek-ai/dsh-util-values@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 自然语言记录数据
- 自然语言查询数据
- 数据回顾
DeepSeek Harness 个人助理套件:围绕单个 SQLite 文件做自然语言记录、查询和回顾
README
由 DeepSeek 最新模型翻译生成dsh-personal
https://github.com/ChengqianHuang/dsh-personal · 主题:dsh-plugin
个人助理 bundle:让 dsh 用自然语言记录/查询/回顾你的个人数据(经历——电影/书/专辑/展览等任意类别、项目日志、任务、博客、网站、想法、每日记录),全部落在一个 SQLite 文件(~/.dsh/personal/personal.db)里。LLM 只负责理解和总结,事实全部来自 SQLite,重启后依旧可查。
安装与使用见 dsh 用户文档 docs/user/develop/basic/publish.md。设计决策见 DESIGN.md。
展开完整文档(README 剩余 1 节)
dsh-personal
https://github.com/ChengqianHuang/dsh-personal · 主题:dsh-plugin
个人助理 bundle:让 dsh 用自然语言记录/查询/回顾你的个人数据(经历——电影/书/专辑/展览等任意类别、项目日志、任务、博客、网站、想法、每日记录),全部落在一个 SQLite 文件(~/.dsh/personal/personal.db)里。LLM 只负责理解和总结,事实全部来自 SQLite,重启后依旧可查。
安装与使用见 dsh 用户文档 docs/user/develop/basic/publish.md。设计决策见 DESIGN.md。
安装(dsh 源码运行模式下)
本仓库 clone(或 link)到任意位置后,在 dsh 仓库根目录安装进 profile:
从本仓库的本地 clone 安装(link 模式,源码即生效)
pnpm dsh plugin --profile web add /path/to/dsh-personal
pnpm dsh --profile web --dump-config # 验证出现 "# == dsh-personal" 层
pnpm dsh web # 启动后直接对话
卸载:pnpm dsh plugin --profile web remove dsh-personal。
配置(可选,写进 profile 的 cordis.patch.yml 或由 bundle 默认值兜底):
- id: personal
name: dsh-personal
config:
timezone: Asia/Shanghai # 日期分桶时区,默认进程时区 databasePath: ~/.dsh/personal/personal.db enableDailyReview: true enableWeeklyReview: true
构建 / 测试
(cd dsh-personal && pnpm install --ignore-workspace --config.auto-install-peers=false)
(cd dsh-personal && pnpm exec tsdown) # 产出 lib/index.mjs
pnpm exec vitest run --config dsh-personal/vitest.config.ts
pnpm exec tsc -p dsh-personal/tsconfig.json --noEmit
修改源码后重新 pnpm exec tsdown 即可(profile 里是 link,指向本目录)。
类型检查读取 DSH 各依赖包的声明文件;首次运行前需先构建上层 DSH 仓库。
当前数据库 schema 版本为 4。旧 v1–v3 数据库无法直接打开;如不需要旧数据,移走或删除旧 personal.db 后再启动。插件不会自动删除数据库文件。
工具(22 个)
- 记录:record_experience(类别可新增,如 movie/book/album/exhibition)create_project record_project_log create_task update_task complete_task create_blog_post update_blog_post create_idea record_daily_log register_website
- 查询:query_experiences query_tasks query_project_logs query_blog_posts query_websites search_personal_data
- 纠错:get_personal_record update_personal_record delete_personal_record
- 回顾:generate_daily_review generate_weekly_review
用法示例:直接说「今天看了《灵媒》,7.5 分」「读了半本《失控》」「Forge 今天定位了中文错位问题」「周末检查博客证书」「我有哪些事情没做?」「本周回顾」。
关键词检索
search_personal_data 使用 Jieba 中文分词和 SQLite FTS5,跨八类记录按 BM25 相关性统一排序。标题、名称、域名默认比备注和正文权重更高;标签也参与检索。比如「博客证书」可以找到「检查博客的 HTTPS 证书」,「streaming 中文错位」可以组合中英文关键词。
- text:主题关键词。模型从问题中提取关键词,把时间和类型分别填进日期窗口与 types。
- match:默认 all,要求全部关键词;any 返回至少命中一个词的记录。
- types、from、to、period:按记录类型与日期过滤;项目、网站也使用创建日期过滤。
- limit:跨类型的总条数,默认 20,上限 200。返回 { terms, hits },每条 hit 包含 type、score 和完整 row,保持相关性顺序;分数只在本次查询内可比。同分时按日期倒序、类型、id 排列。
- query_experiences 的 text 和 match 使用同一检索引擎,还能组合类别、动作、日期和标签。不带 text 时仍按日期列出经历。
搜索索引只存在于连接的内存 TEMP 表中,不改变 v4 数据库格式。首次搜索从现有记录建立索引,本连接的写入、修改和删除通过 TEMP trigger 同步;其他连接提交变更后,下次搜索在一致的读取事务里重建。关闭连接会释放索引,重启后从数据库恢复。大量记录或频繁跨进程写入时,重建会增加首次搜索延迟。
权重可在插件配置中调整,均须为正的有限数:
searchTitleWeight: 5
searchTagWeight: 3
searchBodyWeight: 1
这是词法检索,支持中文复合词的子词,但不保证任意字符片段或同义词匹配;「看展」与「参观展览」仍可能需要模型换关键词查询。没有向量检索或自动语义扩展。
修改与删除已有记录直接说「刚才那部电影评分改成 8 分」「这条记重复了,删掉」「证书检查已经完成」「把那个想法关联到博客项目」。模型使用会话中的记录 id 或先查询定位;多个候选都符合时先询问,不用相关性排名代替用户选择。记录与查询结果显示 id,get_personal_record 按精确类型和 id 返回完整行及 revision。
update_personal_record 和 delete_personal_record 必须传入读取结果的 expected_revision。服务在 BEGIN IMMEDIATE 事务里核对内容指纹再写入;其他连接或工具已改动记录时拒绝操作,模型需重新读取并核对意图。指纹不是历史版本序号:内容完全恢复后可恢复同一指纹。任务和博客的专用修改工具,以及 complete_task,也要求该参数。updateTask、completeTask 和 updateBlogPost Service API 同样要求传入读取到的 revision。
修改使用行字段的 camelCase 名称,只提交需要改变的字段;省略保留原值,空字符串清空允许为空的文本,[] 清空标签。null 可清空评分、任务截止日期、可空项目/网站链接及任务来源字段。项目和网站引用使用已有精确 id;任务的 sourceType 与 sourceId 在修改时必须同时有值或同时为 null。任务进入 DONE 自动记录完成日期,再次标记完成保留原日期,改成其他状态则清空完成日期。经历的类别、动作、评分和发生日期沿用记录时的校验;id 和创建时间不可修改。相对截止日期可使用 dueIn,显式 dueAt 优先(包括 null)。
删除是永久删除,没有撤销入口。项目日志、任务、博客和想法的外键引用,以及任务中类型/id 精确匹配的来源引用,会阻止删除并返回引用记录列表。用户决定解除或重新关联这些引用后再删;不级联删除其他记录。只移除目标自身及其两端的显式 relations,整个操作失败时一起回滚。修改、删除和回滚同步到检索索引;schema 保持 v4,现有数据无需迁移。预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
ChengqianHuang/dsh-personal
用自然语言记录、查询并回顾你的个人数据
相关插件 · 工具 / 效率
破甲管控台kingcharleslzy-ai/dsh-purge
dsh-purge Community · DeepSeek Harness 社区维护版:宿主兼容、状态诊断、提示词管理、更新与本机备份回滚。基于小杨 / YuJunZhiXue 的 dsh-purge。
★ 4,330已汉化DeepSeek 客户端
74.5
网文长卷lingfengQAQ/webnovel-writer
基于 Claude Code 的长篇网文辅助创作系统,解决 AI 写作中的「遗忘」和「幻觉」问题,支持 200…
★ 7,826已汉化DSH
72.2
花束设计alchaincyf/huashu-design
一句话生成网页、原型、PPT 与信息图等可交付设计
★ 28,638已汉化DSH
71.7
多智能体协作HKUDS/AutoSwarm
AutoSwarm: Unify Your Agents. Unify Your Context (Codex · Claude Code · DeepSeek Harness · Muse · Grok · WorkBuddy· nanobot · and more)
★ 2,349已汉化DSH
71.6
Vox 拼贴视频生成Alisa0808/vox-director
🎬 Vox Director拼贴动效导演
★ 2,129已汉化DSH
71.4
Agent 演化引擎Q00/ouroboros
智能体 OS:智能体自己变聪明,我们只守住底线:面试准入、分阶段评估、带预算的进化循环。MCP 服务器,14 种运行时:Claude Code、Codex CLI、Gemini CLI、OpenCode、Copilot、Kiro 等。
★ 6,311已汉化DSH
71.4
这是你的仓库?认领条目