# dsh-prompt-file-injector ![AI-Crap](https://img.shields.io/badge/💩-AI_crap_code-5C4033?style=flat-square) [![npm](https://img.shields.io/npm/v/dsh-prompt-file-injector?style=flat-square)](https://www.npmjs.com/package/dsh-prompt-file-injector) [English](README.md) 把指定的文件注入 DeepSeek Harness(dsh)的模型上下文。 详情见 [design/zh/current.md](design/zh/current.md)。 ## 安装 ```sh dsh plugin --profile web add dsh-prompt-file-injector ``` 不支持通过 GitHub 安装。 ## 功能 在 dsh 侧边栏「插件」页本插件自己的卡片上新增配置区,在其中列出路径,并逐条选择以哪种模式送达模型。 | 模式 | 作用 | | --- | --- | | 系统提示词 | 把文件全文作为固定的系统提示词注入,整段对话长期在场。 | | 每轮 | 每轮对话都把文件内容重新放进对话近端,保证它一直贴近当前对话、且内容总是最新。代价是持续增加 token 成本。 | | AGENTS | 把文件名加入 dsh 自带的 AGENTS 加载体系,像 `AGENTS.md` 一样在会话工作区加载。 | 列表旁的提醒设置会在对话近端加一句提醒,把注意力拉回系统提示词里注入的内容:**关**、**每轮**、或**每步**。 每条路径还可以限定在某一个工作区。AGENTS 模式没有这个选择,它在所有工作区都生效,因此该模式下的选择器是禁用的。 ## 设置 | 参数名 | 说明 | 类型 | 必填 | | --- | --- | --- | --- | | entries | 待注入的路径列表 | 数组 | 否 | | entries[].path | 文件路径;AGENTS 模式填工作区里的文件名 | 字符串 | 是 | | entries[].mode | 该条使用的模式:`system` / `everyRound` / `agents` 三选一 | 字符串 | 是 | | entries[].workspaceId | 把该条限定在某一个工作区;不填则在所有工作区注入。AGENTS 模式忽略它,始终在所有工作区生效 | 字符串 | 否 | | reminder | 在对话近端提醒模型注意系统提示词里注入的内容:`off` 关 / `turn` 每轮一次 / `step` 每次工具调用后也提醒 | 字符串 | 否 | | everyRoundInMinimal | 极简模式下是否继续注入「每轮」内容——该模式的系统提示词由 preset 的 persona 独占(默认 false) | 布尔 | 否 | | maxFileBytes | 单个文件的字节上限;超过即跳过该条。作用于「系统提示词」与「每轮」两种模式,AGENTS 模式用自带的上限(默认 65536,配置区以 KB 填写) | 数字 | 否 | 相对路径按每个会话的工作目录解析,绝对路径直接使用。读取不到、超过上限、或是二进制(非文本)的文件都会被静默跳过。 同一条路径想用两种模式,就添加两条。 ## 基于 dsh `0.1.7-rc.2` 开发 ## 二次开发说明 将此仓库克隆到 dsh workspace 的包目录,然后安装并构建: ```sh git clone https://github.com/pgnqukezrdxmhjso/dsh-prompt-file-injector packages/my/dsh-prompt-file-injector pnpm install pnpm --filter dsh-prompt-file-injector build ``` --- 没有发布运行时不变式伴生包,因为本插件没有需要校验的独立运行时关系。