dsh-better-edit

用短哈希锚替换 DSH Agent 的 read/edit,并增加原子多段编辑、漂移检测和仅在文件未再次变化时可用的单步撤销。

快速判断

安装前先看这几项

配置资料
配置资料部分完整
配置难度
未知,待补配置
适合新手
建议具备相关经验
兼容状态
声明兼容,尚未实测
验证状态
源码已审阅,未标记运行实测
配置资料部分完整

本站已整理安装目标,但尚未补齐该插件的全部专属配置。完成配置前需要核对固定来源。

仍需核对:插件专属配置项、成功验证结果、首次使用示例、数据清理方法

中文教程

按照固定来源完成安装、配置与验证

教程包含独立 Profile、精确安装目标、配置证据、最小验证任务、回退和数据清理。

查看 dsh-better-edit 安装与配置教程 →
功能

这个插件能做什么

用短哈希锚替换 DSH Agent 的 read/edit,并增加原子多段编辑、漂移检测和仅在文件未再次变化时可用的单步撤销。

适合谁

需要多 Agent、工作流、编排能力的用户

使用门槛

该插件涉及较高配置难度或敏感权限,不建议在生产工作区直接试装。

准备

安装前准备

本站尚未核验该插件的专属前置条件。请先准备独立 Web Profile、测试工作区,并核对固定来源中的运行时、外部服务和账号要求。

安装

如何安装 dsh-better-edit

下面的命令使用本站核验的 DSH 基线,并锁定插件版本或 Git commit,避免默认分支变化导致安装内容漂移。本站已核对安装目标,但尚未在你的系统和 Profile 中实际执行。

安装到
web Profile
DSH 基线
0.1.1-rc.2
安装来源
GitHub 源码(锁定提交)
固定目标
github:Rianico/dsh-better-edit#c2b993cefda1
  1. 01
    检查 Node.js 与 pnpm

    DSH 当前基线需要 Node.js 22.19 或 Node.js 24 及以上,并且 pnpm 必须已在 PATH 中。先运行:

    环境检查
    node --version && pnpm --version
  2. 02
    安装到 Web Profile

    这条命令会把插件加入 web Profile,并在插件声明 DSH Bundle 时自动加入配置层。

    GitHub 源码(锁定提交)
    npx --yes @deepseek-ai/dsh@0.1.1-rc.2 plugin --profile web add github:Rianico/dsh-better-edit#c2b993cefda1
  3. 03
    如遇构建脚本拦截

    GitHub 源码插件可能通过 prepare 构建。pnpm 10 及以上会先阻止未授权构建;只把终端明确提示的包名加入该 Profile 的 pnpm-workspace.yamlallowBuilds,审阅脚本后再重复上一步,不要使用全局放行。

  4. 04
    确认 Bundle 已进入配置

    安装成功后先导出组合配置,不启动 Agent。输出中应能找到包名 dsh-better-edit或对应 Bundle 层。

    检查配置
    npx --yes @deepseek-ai/dsh@0.1.1-rc.2 --profile web --dump-config
  5. 05
    启动并完成最小验证

    启动 Web Profile 后,只测试一个与插件功能直接相关的最小任务,并检查日志、文件、网络和凭据访问是否符合预期。

    启动 DSH Web
    npx --yes @deepseek-ai/dsh@0.1.1-rc.2 web
卸载与回退

测试不通过时先停止 DSH,再从同一 Profile 移除插件。移除后重新运行配置检查,确认对应 Bundle 层已经消失;插件自己创建的数据和外部账号配置可能需要另行清理。

从 Web Profile 移除
npx --yes @deepseek-ai/dsh@0.1.1-rc.2 plugin --profile web remove dsh-better-edit
配置

插件专属配置

专属配置路径和字段尚未完成核验,请不要根据同类插件猜测参数名。

验证

配置检查与成功结果

本站尚未获得插件专属的验证命令和期望结果。安装后只能确认 Bundle 是否进入组合配置,不能据此宣称插件功能已经运行通过。

使用

第一次使用建议这样验证

以下步骤是根据插件类别提供的安全验证顺序,不是作者仓库的专用命令。具体入口和参数仍以固定提交对应的 README 为准。

  • 在临时 Git 仓库或测试工作区启用插件
  • 先验证只读功能,再测试文件修改和命令执行
  • 检查修改记录、终端输出和恢复方式
权限

它可能接触哪些数据和能力

使用服务凭据写入本地文件读取本地文件

在每个 Agent 层覆盖内置 read/edit、注册 undo_last_edit,并通过 DSH ctx.fs、fs/write-intent、fs/observed、Sandbox Policy 与 Approval 完成读写;启动时还会在 DSH Home 物化可编辑的 Preset 指导文件

数据存储:尚未完成独立核验,测试前应确认插件是否写入工作区、用户目录、数据库或外部服务。

请注意:源码已审阅”说明本站检查到的证据范围,不等于安全认证。重要工作区应锁定版本、备份数据并在最小权限下测试。

排查

故障排查与数据清理

本站尚未整理插件专属故障模式。遇到问题时先停止 DSH、保存日志、核对固定提交对应的 README,不要反复扩大权限重试。

清理边界待核对:从 Profile 移除插件通常不会自动删除插件创建的数据、外部账号或凭据。

证据

兼容性与审阅记录

兼容性说明

插件版本 0.3.1、MIT,要求 Node.js ^22.19 或 >=24,package 未声明 DSH peer 范围;本站完成固定提交静态审阅,未在当前 0.1.1-rc.2、远程文件系统、Windows 锁文件、大型仓库、并发 Agent 编辑或数据库迁移下运行

数据流

工作区文本 → DSH 文件服务读取与短哈希锚 → 模型提交锚定编辑 → 观察版本和 Sandbox/Approval 校验 → 原子写回;完整编辑前后正文、撤销状态和已展示行会保存在工作区 .dsh_better_edit/hash-store.sqlite。

源码审阅结论

已审阅固定提交的 DSH fs bridge、路径解析、观察/版本门禁、Sandbox 控制、原子写入、锚定编辑、漂移检测、撤销条件和 SQLite 状态。写入仍受宿主文件系统与审批约束,撤销会在外部改动后拒绝覆盖;但插件替换核心读写语义,SQLite 保存完整文件前后内容且创建权限依赖系统 umask,可能包含源码或密钥并被误提交,当前 edit 的扩权参数传递也需运行验证。把 .dsh_better_edit 加入忽略与备份策略,在独立分支/工作区试用,敏感仓库确认目录权限,重要修改仍依赖 Git。

来源与维护信息

本页根据固定提交的仓库、包清单和本站审阅资料生成。版本变化后,请重新核对作者说明。

来源快照
5909d7aad5a4
固定提交
c2b993cefda1
许可证
MIT
主要语言
TypeScript
中文资料
有中文专题说明