@michengai/dsh-simplify
Adds a /simplify command that asks the agent to simplify code within a selected Git change scope, including staged changes, commits, and untracked files.
Install
dsh plugin --profile web add @michengai/dsh-simplify
Sandbox test results
| Stage | Result |
|---|---|
| 1 install | ✓ |
| 2 list | ✓ |
| 3 mount | — |
| 4 boot | — |
Four stages run in an isolated sandbox: install (network on) → list → mount → boot (last three with no network).
README
<p align="center">
<img src="assets/branding/dsh-simplify-banner.png" alt="DSH Simplify" width="100%">
</p>
<div align="center">
DSH Simplify
在 DeepSeek Harness 中简化最近改动的代码,保持原有功能。
[English](README.md) · [安装](#安装) · [使用](#使用) · [故障排查](#故障排查) · [更新日志](CHANGELOG.zh-CN.md) · [Apache-2.0](LICENSE)





</div>
DSH Simplify 是社区维护的 DeepSeek Harness 插件,并非 DeepSeek AI 官方产品。在当前会话中输入 /simplify,即可请 Agent 整理 Git 改动范围内的代码,改善可读性并保持原有功能。支持 DSH Web 及集成 DSH Web 的桌面应用。
命令文案及提示词使用简体中文。
功能概览
写完一轮代码后,用 /simplify 请当前 Agent 整理刚改过的部分,改善可读性并保持原有功能。
- 聚焦本次改动:按 Git 变更范围整理代码,避免把需求扩大到无关文件。
- 覆盖新增文件:新文件可以整份审查,也支持尚无首次提交的仓库。
- 选择适合的范围:默认检查工作区改动,也可仅检查暂存区、指定提交或路径。
- 提交后也能回看:默认模式在工作区没有改动时,可回看最近一次提交。
- 范围不可靠时停止:遇到冲突、文件变化或读取失败时返回原因,便于修正后重试。
命令提交的是简化任务;是否完成修改和验证,应以 Agent 后续回复和实际差异为准。
DSH 产品生态
想使用桌面工作台,可下载 DSH Codex Desktop;已有 DeepSeek Harness 环境,可按各项目 README 按需安装。以下列出 11 个自研插件;桌面端实际随附范围以对应版本的发行说明和内置清单为准。
插件 · 你可以用它做什么
Codex UI · 整理项目与会话、搜索任务、跳转对话轮次
Agency Agents · 按任务选择并召唤专业角色
Skills Manager · 统一查找、启停、创建和导入本机技能
Archive Manager · 搜索、恢复或清理已归档会话
IM Connect · 从消息平台下任务、收回复
Automation · 按计划执行任务,查看每次运行的结果
BTW · 在当前上下文中临时旁问,不打断主任务
Simplify · 用 /simplify 整理 Git 改动范围内的代码
PUA · 引导 Agent 在失败时换方法、查原因,并在完成前验证结果
Code Review · 用 /review 发起独立 Agent 代码审查,在当前会话接收报告
Codex Pet · 通过桌面宠物查看会话提醒、处理工具审批和问题回答
前置条件
- 宿主支持范围:DeepSeek Harness
0.2.x全系列(>=0.2.0-rc.1 <0.3.0-0),已验证兼容0.2.0-rc.1、0.2.0-rc.2、0.2.1-rc.1~0.2.1-rc.5、0.2.2-rc.1,并自动支持后续全部 0.2.x RC 版本,同代宿主升级无需重复等待发版。 0.2.0-rc.1之前的早期宿主会被版本门拒绝,0.3.0代际破坏性更新由版本门拦截。仍在使用0.1.x的用户请安装插件0.1.16。- Node.js >= 22.19,PATH 中可执行 Git。
- 当前会话关联本地 Git 项目。
安装
以下命令使用 web profile,请按实际环境替换。安装前停用其他注册 /simplify 的插件。可在 DeepSeek Harness 0.2.x 全系列(>=0.2.0-rc.1 <0.3.0-0)上运行。
让 Agent 帮你安装(推荐)
把下面这段话发给任意能够执行本机终端命令的 Agent。将 web 替换为实际使用的 profile;安装完成后,在 DSH 中使用本插件。
请将 DSH 插件 @michengai/dsh-simplify 安装到本机 web profile,执行:dsh plugin --profile web add @michengai/dsh-simplify@1.0.1 --registry=https://registry.npmjs.org/。安装后执行 dsh --profile web --dump-config,确认配置包含 michengai-simplify,并告诉我如何重新加载 DSH 和开始使用。
手动从 npm 安装
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8 $OutputEncoding = [System.Text.Encoding]::UTF8 dsh plugin --profile web add @michengai/dsh-simplify@1.0.1 --registry=https://registry.npmjs.org/
<details>
<summary>从本地安装包安装</summary>
从 GitHub Release 下载已发布的 tgz,然后在安装包所在目录执行:
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8 $OutputEncoding = [System.Text.Encoding]::UTF8 dsh plugin --profile web add .\michengai-dsh-simplify-1.0.1.tgz --ignore-scripts
</details>
重新加载与确认
请在当前任务结束后安装或更新,桌面应用可能自动重载。若未生效,使用桌面应用的重新加载功能,或重启 dsh web;仅刷新浏览器不够。
执行 dsh --profile web --dump-config,确认包含 michengai-simplify。分享完整配置前先检查其中是否包含敏感设置。然后在 Git 项目会话中输入 /simplify。
使用
写完一轮代码后,在当前 Git 项目会话中输入:
/simplify
等待 Agent 完成修改与验证,再检查实际 diff。需要缩小范围时,可使用以下参数。
选择审查范围
输入 · 范围
/simplify · HEAD 到当前工作区的净改动,包含未跟踪新增文件;确实没有改动时回看最近一次提交
/simplify --staged · 仅暂存区;所选暂存文件另有未暂存改动时拒绝执行
/simplify --ref=main · 指定提交到当前工作区的差异,包含未跟踪文件;不回退其他提交
/simplify --ref HEAD · 显式 HEAD 范围,不启动上一提交回看
/simplify src/a.ts "src/中文 文件.ts" · 仅指定文件的改动;未跟踪文件按整文件处理
/simplify src · 展开目录中的变更文件
/simplify -- --special.ts · 选项终止符后可使用以连字符开头的路径
- 路径相对当前会话目录,支持仓库内绝对路径;提示词统一使用仓库根目录相对路径。
- 支持单双引号组合带空格路径,反斜杠按路径字符保留;不执行 Shell 展开、通配符或命令替换。
--ref支持分支、标签和单个提交表达式,不支持a..b/a...b;不能与--staged混用。- 没有首次提交时,所选范围内的文件视为新增文件,允许整文件整理:默认包含暂存与未跟踪文件,
--staged仅包含暂存文件。可指定文件或目录缩小范围,文件数量和大小限制仍然生效。只有一个提交且工作区干净时直接返回无变更。 - 上一提交回看相对于 HEAD 第一父提交;merge commit 不做多父合并审查。
命令结果
返回结果 · 含义
已提交 N 个文件的简化审查 · 审查任务已入队,不代表 Agent 已完成编辑或测试。
没有可简化的当前代码行 · 没有可操作的当前行,不发起模型请求;结果可能附带跳过明细。
错误信息 · 无法可靠建立审查范围,不发起模型请求;修正所报问题后再试。
故障排查
回车后输入框清空,但没有回答。 空审查不会启动 Agent。已收到的用户反馈中,后端返回成功,但两份 CHANGELOG 被判定没有可简化的当前行而跳过;部分宿主界面未明显展示这类命令结果,反馈可见性仍待排查。后端成功不等于界面已经显示结果。
当前目录不是 Git 仓库。 在正确的 Git 项目会话中执行,或自行初始化项目仓库。插件不会自动初始化仓库、暂存或提交。
暂存文件还有未暂存改动。 先自行保存或处理这些改动,再运行 --staged;也可用默认 /simplify 审查当前工作区的净改动。插件不会自动重置或 stash。
安装器提示 peer 依赖缺失。 官方包可能由 DSH 宿主运行时提供。应核实实际模块解析版本和后端加载结果,不要直接向 profile 重复安装宿主包;版本仍需满足 package.json。
超时、输出超限或快照过期。 使用具体文件或目录缩小范围,并在并发编辑结束后重试。
执行边界
插件只执行 Git 只读查询和读取本地文件,不自动 git add、提交、重置或存储工作区。Git 参数通过 DSH subprocess 的 argv 传递,不依赖 PowerShell/Bash 引用规则。
修改范围是提示词约束,不是文件写入权限隔离。 Agent 按宿主工具和用户授权执行修改及测试;本插件没有拦截其他工具的写入,也不能保证排队后文件不再变化。不要把“已提交审查”理解成“已完成简化”。
实现针对本地文件系统与本地 subprocess 同一工作区,未验证远程 subprocess 或远程文件系统组合。
<details>
<summary>查看 Git 范围收集、快照校验与资源限制</summary>
…(truncated)
Rendered from the README published on npm. Formatted only, not edited.
Versions
Published on npm::24,最后更新 2026-11-05