🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

项目私有提示词 imroc/dsh-project-prompt

DeepSeek Harnessv0.1.1
imroc41 天前有提交已提供中文文档扫描:含敏感能力

按仓库匹配私有规则,注入每个会话且不进版本库

32.2/100
综合分
3
GitHub 星标
56
npm 周下载
—/5
用户评分

数据截至 2026/9/24 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add dsh-project-prompt
npm 源 · dsh-project-prompt 的发布者账号已校验与本仓库一致

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么[目录]—
dsh 原生插件 · skill
暂无时间戳·判据 →
装得上吗[实装验证]✓
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L5 · 运行时冒烟等级说明 →
数据截至 2026/10/28·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/04·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 41 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安装兼容性检查✓ 自动检查通过
展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包dsh-project-prompt @ 0.1.1
✓Node 引擎要求 >=18 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/21 20:38:42

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件
查看扫描证据(共 3 处,展示前 3 条)
  • 读取本地文件
    index.js:78
    const st = statSync(candidate)
  • 读取本地文件
    index.js:104
    const content = readFileSync(found.dotGit, 'utf8').trim()
  • 读取本地文件
    index.js:123
    const lines = readFileSync(join(mainRoot, '.git', 'config'), 'utf8').split(/ ? /)
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 按仓库匹配私有规则
  • 注入每个会话
  • 不提交进版本库

DeepSeek Harness 的私有项目级提示词规则——按 git remote/仓库/路径匹配,感知 worktree,永不提交进仓库

README

由 DeepSeek 最新模型翻译生成
dsh-project-prompt DeepSeek Harness(DSH)的私有项目级提示词插件。 有些指引属于你的机器,而不属于仓库:与环境绑定的端到端测试方法、仅内网可达的入口、个人工作流偏好。AGENTS.md 是要提交共享的,放这些内容不合适。本插件把这类文本放在 $DSH_HOME,绝不进仓库,并在工作区命中规则的每个会话中注入——包括所有子代理和该仓库的任意 git worktree。 flowchart LR subgraph repo["git 仓库(任意 clone / worktree / 子目录)"] wt1["主检出"] wt2["linked worktree A"] wt3["worktree B"] end cfg["$DSH_HOME/cordis.patch.yml\nrules(机器本地,私有)"] plugin["dsh-project-prompt\nagent 生命周期监听器"] sp["会话系统提示词\n(或首条注入消息)"] cfg --> plugin wt1 & wt2 & wt3 -->|按 remote / repo / path 匹配| plugin plugin -->|section / inject| sp 特性
展开完整文档(README 剩余 1 节)
dsh-project-prompt

DeepSeek Harness(DSH)的私有项目级提示词插件。

有些指引属于你的机器,而不属于仓库:与环境绑定的端到端测试方法、仅内网可达的入口、个人工作流偏好。AGENTS.md 是要提交共享的,放这些内容不合适。本插件把这类文本放在 $DSH_HOME,绝不进仓库,并在工作区命中规则的每个会话中注入——包括所有子代理和该仓库的任意 git worktree。

flowchart LR
subgraph repo["git 仓库(任意 clone / worktree / 子目录)"]
wt1["主检出"]
wt2["linked worktree A"]
wt3["worktree B"]
end
cfg["$DSH_HOME/cordis.patch.yml\nrules(机器本地,私有)"]
plugin["dsh-project-prompt\nagent 生命周期监听器"]
sp["会话系统提示词\n(或首条注入消息)"]
cfg --> plugin
wt1 & wt2 & wt3 -->|按 remote / repo / path 匹配| plugin
plugin -->|section / inject| sp

特性

- 三种匹配键 —— 按 git remote URL(任意位置的 clone 都命中)、本地主仓库路径、或 cwd 前缀匹配;同一规则内多键为「或」关系。
- 感知 worktree —— linked worktree 经 .git 文件的 gitdir: 指针回溯主仓库,规则写一次,之后新建的 worktree 及其子目录全部命中。
- 两种注入模式 —— section(稳定的系统提示词段,KV cache 友好,支持 {{cwd}}/{{model}})与 inject(首条上下文消息,不做模板插值——文本含字面量 {{...}} 花括号(如 Helm/Go 模板)时使用)。
- 覆盖子代理 —— 子代理继承会话 cwd,委派出去的工作同样遵守规则。
- 加载期快速失败 —— 规则写错(缺 text、section 模式出现未知 {{var}})在插件加载时抛错,而不是每个请求都炸。
- 零依赖 —— 单个 ESM 文件,只 import Node 内置模块;无构建、无产物。

环境要求

- DeepSeek Harness ≥ 0.1.1-rc.2(已在 0.1.5-rc.2 与 0.1.7-rc.1 上验证)。依赖 agent 生命周期边:0.1.5 及以前是 agent/session-start,0.1.7 起是 agent/created;另用 systemPrompt.section 与 agent.inject。
- Node.js ≥ 18(DSH 本身当前要求 ≥ 22)。

安装

用 DSH 的插件命令安装到某个 profile:

dsh plugin --profile web add dsh-project-prompt
或直接从 GitHub 仓库安装:
dsh plugin --profile web add github:imroc/dsh-project-prompt

安装后重启 DSH —— bundle 在启动时参与组合。

卸载:

dsh plugin --profile web remove dsh-project-prompt

配置

规则写在 $DSH_HOME/cordis.patch.yml(默认 ~/.dsh/cordis.patch.yml)——机器本地层,对本机所有 profile 生效。覆盖 bundle 安装的行:

- id: project-prompt
config:
rules:
该仓库不管 clone 到哪、开多少 worktree 都命中
- remote: github.com/my-org/my-project
text: |
本项目 E2E 测试方法(环境相关,私有)

1. 测试环境入口:http://e2e.internal.example.net(仅内网可达)
2. 首次跑 E2E 前先执行 make e2e-prepare。
3. 用例失败时优先排查 ……

按本地主仓库路径匹配;文本含字面量 {{...}} 花括号,须用 inject 模式
- repo: /home/me/dev/another-project
mode: inject
text: |
{{ .Values.replicas }} 这类字面量在这里原样保留。

按目录前缀匹配
- path: /home/me/dev
text: |
...

该文件受监听——保存即热重载插件行(对之后新开的会话生效)。

规则参考

| 键 | 类型 | 默认值 | 说明 |
| remote | string | — | 匹配 git remote URL(origin)。比较前做归一化:忽略协议、user@、scp 风格 : 分隔符、尾部 .git 与斜杠、大小写。git@github.com:u/r.git ≡ https://github.com/u/r。也支持 host/org/repo 后缀形式。 |
| repo | string | — | git 主仓库的本地绝对路径。其任意 linked worktree 与任意层级子目录都命中(worktree 经 .git gitdir 指针回溯)。 |
| path | string | — | cwd 前缀:会话工作区等于该目录或位于其下。 |
| text | string | 必填 | 要注入的提示词文本。 |
| mode | section \| inject | section | 注入模式,见下。 |
| sectionName | string | project-prompt(同一会话命中多条 section 规则时自动递增) | 系统提示词段名。 |
| order | number | 50 | 系统提示词段顺序(DSH 惯例:0 人设,100–199 工具指引)。 |

一条规则至少需要 remote / repo / path 三者之一;命中的多条规则全部生效。

注入模式

| | section(默认) | inject |
| 落点 | agent 作用域 systemPrompt 服务上的系统提示词段 | 首条 user 侧上下文消息(AGENTS.md 内容走的同一条路) |
| 可见性 | 该会话每次请求 | 该会话每次请求 |
| 模板插值 | 有 —— {{cwd}}、{{model}} 会解析;其它完整的 {{...}} 组会抛错 | 无 —— 花括号按字面量保留 |
| 适用 | 稳定指引;KV cache 友好 | 含字面量 {{...}} 的文本(Helm/Go 模板、Terraform 等) |

插件在加载期校验 section 文本:未知 {{var}} 会让加载失败,错误信息会提示把该规则改为 mode: inject。

工作原理

1. 每个新会话(新建、恢复、clear/compact 之后——每次 publish 都产生新的 agent 作用域)在首个模型请求之前走 agent 生命周期边:0.1.5 及以前是 emit 模式的 agent/session-start,0.1.7 起是 serial 并会被首个请求 await 的 agent/created。插件两边都订阅,只做一次。
2. 插件读取 agent.session.header.cwd 并逐条匹配规则;git 仓库身份通过从 cwd 向上找 .git 得出(.git 是文件说明是 linked worktree,其 gitdir: 指针回溯主仓库根与 remote URL)。
3. 命中后,规则文本注册在 agent.ctx——agent 作用域上下文——只对该 agent 生效、随其销毁自动撤销。
4. 该会话的每次模型请求都会重新组装系统提示词(或重读注入消息),规则文本全程在场。

「模型可见⟺已记录」:注入的 section 会出现在会话日志($DSH_HOME/sessions/…)记录的请求头里,这也是验证规则是否生效的方法。

验证安装

1. 确认行已组合:dsh --profile web --dump-config | grep -A3 project-prompt。
2. 在命中目录新开会话,问一个规则文本应当影响回答的问题。
3. 或检查会话日志:该会话的 session.jsonl.zstd 中记录了含你 section 的完整系统提示词。

限制

- 匹配依据是路径/remote 身份而非内容:同一 remote 的不同 clone 都会命中 remote 规则(这通常正是目的)。
- 子模块目录(.git 指向 .git/modules/…)不做回溯;请用 path 规则。
- 规则是静态配置——本插件刻意不从仓库内读文件(那会重新引入共享状态)。工作区内的文件请用 DSH 内建的 AGENTS.md/CLAUDE.md 加载机制。

开发

git clone github:imroc/dsh-project-prompt && cd dsh-project-prompt
npm test # node --test;git fixture 在临时目录中自建
node --check index.js

插件是单个零依赖 ESM 文件;提交的源码即发布产物(无构建、无 prepare 脚本——这也是 git 安装无需 pnpm allowBuilds 的原因)。保持这一点的约束说明见 AGENTS.md。

许可证

MIT © roc
预览分享卡片长什么样 ↓imroc/dsh-project-prompt
分享 · DeepSeek Harness Hub
imroc/dsh-project-prompt

按仓库匹配私有规则,注入每个会话且不进版本库

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部