在 DeepSeek Harness (DSH) 的使用场景中,频繁使用的命令、代码片段或提示词往往需要手动复制粘贴,缺乏一个轻量级的持久化存储方案。dsh-snippets 旨在解决这个问题,它是一个极简的“收藏夹”工具箱,将常用片段保存在本地文件中,供 AI 在会话中按需检索。
核心定位¶
该插件由 taxueseek 维护,属于记忆类插件。它不依赖任何数据库、向量库或 UI 面板,仅通过 JSONL 文件存储数据。它的核心逻辑是“显式记忆”:AI 不会自动记录对话内容,只有用户明确调用工具时才会进行读写操作。
核心功能¶
插件提供 5 个语义明确的工具,功能一目了然:
- snippet_save:保存或覆盖一条片段。如果名称已存在,会更新内容并更新时间戳。
- snippet_search:按子串搜索,匹配范围包括片段名称、正文内容以及标签,不区分大小写。
- snippet_get:按确切名称取回一条片段。
- snippet_delete:删除指定的片段。
- snippet_count:统计当前存储的总条数。
安装¶
在命令行中执行以下命令安装:
dsh plugin --profile web add "github:taxueseek/dsh-snippets#main&path:."
安装完成后,需要重启 DSH Web 服务以加载插件。
典型用法¶
在 DSH 的对话或工具调用中,可以使用如下语法:
保存片段:
snippet_save(name: "docker-logs", text: "docker logs -f --tail 100 myapp", tags: ["ops"])
搜索片段:
snippet_search(query: "logs")
取回片段:
snippet_get(name: "docker-logs")
数据与规则¶
- 存储路径:
~/.dsh/snippets/snippets.l - 存储格式:JSONL(每行一个 JSON 对象),包含
name、text、tags、updatedAt字段。文件支持人类阅读和手工编辑。 - 命名与长度限制:片段名限制为
[A-Za-z0-9._-]{1,80},单条内容上限为 2 万字符。 - 容错性:如果 JSONL 文件中存在格式损坏的行,解析器会自动跳过,不影响其他数据的读取。
适用场景与注意¶
- 适用人群:需要高频复用特定命令、代码片段或提示词的开发者与运维人员。
- 运行特性:插件完全本地运行,零 UI、零网络、零数据库依赖(仅依赖 Harness SDK)。
- 注意:请确保安装前已阅读源码并确认许可证(MIT)符合要求。