dsh-write-create-only

DSH PLUGIN开发与运行时

仓库 better-er/dsh-write-create-only · npm dsh-write-create-only

开发与运行时 L5 · 运行验证通过 安全审查:低风险 可信度:金 可安装插件
安装这个插件

为 DeepSeek Harness 提供 write 仅创建约束:目标文件已存在时在工具执行前直接拒绝并提示改用 edit,防止模型误覆写已有内容。

验证等级 L5 L5 · 运行验证通过
GitHub 星标 3 复刻 0 · 未关闭 issue 0
最近更新 2026-10-02 创建于 2026-09-01
README 3.5 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add [email protected]
兼容 DSH 版本0.2.0-rc.2 等 12 个版本版本不匹配时安装会报错
Node.js 要求>=26.3.1来自仓库 package.json 的 engines 字段
前置依赖@deepseek-ai/dsh@^0.2.0-rc.2需要同时安装的同级依赖
npm 包名dsh-write-create-only可用 npm view 查看包信息

能做什么

5 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

dsh-write-create-only:为 DeepSeek Harness 加上 write 仅创建约束

  • write 仅允许创建新文件
  • 目标已存在则执行前拒绝
  • 拒绝时提示改用 edit
  • 仅拦 write,不影响其他工具
  • 全局所有会话统一生效

适用场景

文件读写

上游标签

create-onlydeepseek-harnessdshdsh-pluginno-overwritesafetywrite

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度活跃按仓库活跃度与最近更新时间给出
可信度金综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-10-08): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询

风险详情

  • 审查结论 通过
  • 结论说明 vet 静态分析未发现可疑行为,判定为干净(clean)。
  • 风险计数 严重 0 / 高 0 / 中 0
  • 风险详情 未发现严重或警告级问题。

仓库档案

开发与运行时
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方better-er仓库 dsh-write-create-only · 默认分支 main
分类开发与运行时developer
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言JavaScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue3 / 0 / 0收录时的数值,非实时
创建 / 更新2026-09-01 · 2026-10-02最后推送 2026-10-02
本站收录2026-09-02首次进入本站目录的时间

README 全文

3.5 KB
作者原文,中文版优先;只做安全转义,不改内容

DSH·write 仅创建

禁止 write 覆盖已存在的文件:write 只允许创建新文件,目标已存在时在工具执行前直接拒绝并提示改用 edit,全局所有会话生效,防止模型用 write 把已有文件整体冲掉。纯 host 端插件,不碰 DSH 源码。

为什么

write 是全文件覆写。模型一旦误用 write 去改一个已有文件,原内容会被整段覆盖,而 dsh 默认的 fs-observation-policy 只要求「先读过」,并不禁止覆写。与其事后靠模型自觉,不如把「write = 仅创建」立成硬约束。

覆写还有第二个后果:文件没有旧内容可比,dsh-edit-diff 抓不到差异,只能把整份文件当成新增,差异显示退化成满屏绿色。目标已存在时直接拒绝,既留住旧内容,也留住差异显示。这不是本插件与那一件约定的,而是覆写这件事本身决定的。

功能

  • 只拦 write:edit、read 等其余工具完全不受影响。
  • 目标已存在 → 拒绝:在 tools/pre-execute 瀑布里对 write 调用先 fs.stat 目标,已存在则返回 deny,错误信息明确提示「请改用 edit 做定向修改;只有创建新文件时才使用 write」,模型看到后会改走 edit。
  • 目标不存在 → 放行:新建文件一切照常。
  • 保守放行:路径无效、stat 抛错等不确定情形一律放行,绝不误伤合法调用。
  • 全局生效:所有 agent 与会话统一适用。

宣传片

四件一起讲的宣传片,中文与日语配音两版同在一个投稿里:

文件四件套宣传片 · 一个核心,三个辅助

安装

从 GitHub 安装:源码在 src/,lib/ 不入仓库,安装时 npm 会触发 prepare 脚本现场构建。

dsh plugin --profile web add github:better-er/dsh-write-create-only

从 npm 安装:包内已含构建产物 lib/index.js,安装时不再构建。

dsh plugin --profile web add dsh-write-create-only

两种方式装完都会自动挂载,重启 DSH web 后启用,无需手工编辑任何文件。

卸载

dsh plugin --profile web remove dsh-write-create-only

彻底移除,重启 DSH web 后不再加载。

原理

dsh 的每个工具在执行前都会走 tools/pre-execute 这个异步瀑布,每个监听器按序决定 allow / ask / deny。本插件注册一个全局监听器:

  • 只对 exec.name === 'write' 生效;
  • 取出 exec.arguments.file_path,用会话工作目录 ctx.fs.resolve 成绝对目标,再 ctx.fs.stat;
  • stat 返回非空即目标已存在,返回 { kind: 'deny', reason } 拒绝本次调用;
  • 其余情况一律 return next() 放行到瀑布下一环。

选择 tools/pre-execute 而不是 fs/write-intent,是因为后者是单槽瀑布且已被默认的 fs-observation-policy 占用;而 tools/pre-execute 是多监听器瀑布,位置在工具执行最前面,既不影响 write 的 schema,也不与现有策略抢位。

开发与验证

pnpm install
pnpm build        # 产出 lib/index.js
node scripts/smoke.mjs   # 无运行时冒烟验证:5 项断言覆盖拦截/放行/容错

License

MIT

常见问题

8 问
答案由本站依据条目字段整理,不引用上游原文
dsh-write-create-only 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add [email protected]` 即可。对应的 npm 包名是 `dsh-write-create-only`。

dsh-write-create-only 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

dsh-write-create-only 安全吗?

低风险。vet 静态分析未发现可疑行为,判定为干净(clean)。

dsh-write-create-only 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.0-rc.2、0.2.0-rc.1、0.1.7-rc.2、0.1.7-rc.1、0.1.7-alpha.2、0.1.6-alpha.2、0.1.6-alpha.1、0.1.5-rc.2。版本较多,只列出前 8 个。

dsh-write-create-only 需要什么运行环境?

Node.js >=26.3.1;需要同时安装 @deepseek-ai/dsh@^0.2.0-rc.2。环境不满足时安装会失败,建议先确认本机版本。

dsh-write-create-only 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

dsh-write-create-only 有哪些功能?

write 仅允许创建新文件、目标已存在则执行前拒绝、拒绝时提示改用 edit、仅拦 write,不影响其他工具、全局所有会话统一生效。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

开发与运行时
按星标排序,可作替代方案

rea

rea

L4 · 沙盒安装通过 2.6 万 星

dsh-TUI

dsh-TUI

Claude Code 风格全屏终端 UI:像素鲸鱼顶栏、实时工作状态行、思考流式展开。

L4 · 沙盒安装通过 4,292 星

mirage

mirage

把文件系统与 bash 提供者换成 mirage 虚拟工作区:文件工具与 shell 命令作用于挂载的资源(RAM、S3、Redis、Sla

L3 · 安装规范通过 3,681 星

dashi-taskboard

dashi-taskboard

把当前已安装并运行中的 Codex Taskboard 嵌入 DeepSeek Harness 侧边栏,并通过 Launcher 运行时描述

L4 · 沙盒安装通过 3,311 星

better-er 的其它插件

6 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 2026-10-08。