dsh-spill-local/packages/spill/spill-local官方

175.3kStar19.0kFork0Issue752Watching

将工具超大文本输出持久化到本地私有会话文件的 dsh spill 存储后端,实现路径定位器和读取提示供模型使用 read/grep 检索

机审证据安装命令仓库已核验dsh-plugin Topic许可证READMEAI 百科

此插件是大仓库 deepseek-ai/deepseek-harness 的子包,星数与活跃度统计的是整个仓库。

语言
TypeScript
License
MIT
分支
master
ai-agentscordisdshdsh-plugin

安装

$ dsh plugin --profile web add npm:@deepseek-ai/dsh-spill-local

在终端中运行以上命令,通过 dsh CLI 安装此插件。可在右上角切换 Profile。 第一次用 dsh?看这篇新手教程

对话式安装

帮我安装 DeepSeek Harness 插件 deepseek-ai/deepseek-harness/packages/spill/spill-local:先查看仓库 https://github.com/deepseek-ai/deepseek-harness 确认安全性,然后执行安装命令并验证插件加载成功。

把这段指令粘贴给 DSH Web GUI 里的助手,由它代你完成安装与验证。

English | 中文

The local-filesystem implementation of the @deepseek-ai/dsh-spill storage seam. Registers as ctx.spillStore and persists a tool's oversized text to a private, session-scoped file; its locator is the file path and its retrieval hint tells the model to use read or grep on that path.

Storage layout

Files land at <root>/session-<hash>/​<random>-<safeName>:

  • root — the config root (resolved to absolute), or a lazily-created private (0700) per-process directory under the OS temp dir when omitted. A predictable, world-readable root would let other local users read spilled tool output or plant symlinks.
  • session-<hash> — a short sha256(sessionId) prefix, so a session's spill files group together and a future cleanup can drop them per session.
  • <random>-<safeName> — an unpredictable hex prefix (defeats symlink planting in a shared root) plus the caller's suggestedName sanitized to one safe path segment (traversal-proof; mirrors the JSONL persistence backend's encodeSegment). The write is exclusive + owner-only (open(path, 'wx', 0o600)): it fails on any pre-existing path, symlink or not, so a planted target cannot redirect it.

Config

KeyDefaultMeaning
rootprivate 0700 temp dirRoot directory for spill files. Set to keep them under a known location.

saveText rejects on a real storage failure (permissions, ENOSPC); the spill policy treats a rejection as best-effort and keeps the inline result. See the seam README for the vocabulary and the tool output spill Agent Note for the design.

Model Experience

Indirectly, through spill consumers that render the local path and read/grep retrieval guidance.

KV Cache effect

No direct invalidation; the named consumer owns any request-prefix changes.

Known Limitations and Deferred Work

  • Local spill files persist until external cleanup — the backend has no session-lifecycle deletion or age-based retention policy, because persisted, resumed, and forked sessions may still reference a path.
  • Locators require a co-located filesystem consumer — a remote or virtual deployment needs another SpillStore backend whose locator and retrieval hint are meaningful there.

收录徽章

Listed on deepseek-plugin.org
[![Listed on deepseek-plugin.org](https://img.shields.io/badge/listed_on-deepseek--plugin.org-007EC6)](https://deepseek-plugin.org/plugins/deepseek-ai/deepseek-harness/packages/spill/spill-local)

把这段 markdown 粘贴到你的 GitHub README,链接回本插件详情页。徽章只声明已被本站收录,不代表安全认证。

返回插件目录
dsh-spill-local/packages/spill/spill-local — DeepSeek Harness 插件 | deepseek-plugin.org