yumiao-dev/dsh-chat-thinking-editor

Plugin插件 Native原生 ⭐ 6 MIT Sessions & Context会话与上下文

DSH 插件:直接在 DeepSeek Harness 对话里编辑任意 AI 消息的正文与思维链(thinking)。保留 AI 的聪明,让 AI 完全符合你的心意。🐛 修复选中删除联动清空问题。| DeepSeek Harness plugin to edit any assistant reply + reasoning/thinking chain. Make the AI output truly yours.

Project Overview项目介绍

dsh-chat-thinking-editor is a native DeepSeek Harness plugin that lets users directly edit both the visible reply text and the underlying chain-of-thought of any AI message inside the DSH web interface. It injects a small pencil icon into each assistant message's action bar via the official surface replacement event and the conversation.chat.assistant-actions slot, opening a modal where the current reply, every prior assistant message in the session, and tool-call interleaved replies can all be rewritten. After saving, the entire conversation continues from the edited version, empty body means clear, empty thinking block means delete the reasoning block.

Typical workflow: run a technical conversation in DSH, find an AI message you disagree with, hover to reveal the pencil, open the editor, revise either the reply body or the thinking chain, then save; edits can be re-applied multiple times within the same session without rerunning the model. The plugin targets reverse engineers, security researchers, protocol analysts, and developers who need to bypass conservative model refusals on sensitive technical tasks, plus anyone who wants to manually steer an AI's reasoning rather than argue with it. Editing is locked while an agent is running to avoid races, and non-text content such as images and tool calls is preserved untouched.

Dependencies and limits: target DeepSeek Harness 0.1.5-rc.2+ (range ^0.1.1-rc.2), runtime requires Node 22.19+ or 24+ together with pnpm 11. Installation uses dsh plugin --profile web add /path/to/dsh-chat-thinking-editor for a local link or dsh plugin --profile web add dsh-chat-thinking-editor once published to npm, with a manual option of merging cordis.patch.yml into the dsh.profile.bundles layer of the profile and restarting dsh web. DSH itself is marked developer preview, so future interface changes may break the plugin. License is MIT, and a first-run caveat is that the modal only closes via its top-left close button — clicking the mask or pressing Esc intentionally does nothing to prevent accidental dismissal on touch devices.

dsh-chat-thinking-editor 是一款 DeepSeek Harness 原生插件,核心能力是让用户直接在 DSH 网页端的 AI 消息上编辑回复正文与思考链。它通过官方 surface replacement 事件与 conversation.chat.assistant-actions 槽位注入 UI,每条 AI 消息的操作条新增一支小铅笔,点开后可在弹窗中修改该条以及历史中所有助手回复,保存后整个会话沿用改后版本,正文留空视为清空、思考链留空则删除思维块。

典型使用流程是在 DSH 中发起一段技术向对话,碰到模型在逆向、协议拆解等场景给出保守拒绝回答时,定位目标 AI 消息,点击铅笔按钮,改正文或思考链后保存即可,改动在同一会话内可多次反复应用。插件适合需要绕过模型保守倾向、对推理过程进行人工干预的逆向工程、安全研究与协议分析方向的开发者,以及任何想把"AI 拒绝的活儿"自己接手的用户。Agent 运行时编辑会被锁住以避免冲突,图片与工具调用等非文本内容保持原样。

依赖与限制方面:目标为 DSH 0.1.5-rc.2+(^0.1.1-rc.2),运行环境需 Node 22.19+/24+ 与 pnpm 11。安装可通过 dsh plugin --profile web add /path/to/dsh-chat-thinking-editor 本地挂载,或发布后走 npm 安装,亦可手动合并 cordis.patch.yml 至 profile 的 dsh.profile.bundles 层后重启 dsh web。DSH 自身处于 developer preview 阶段,接口可能变动。许可证为 MIT,首次使用需注意关闭弹窗须点击左上角关闭按钮,遮罩与 Esc 不会触发关闭。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 6 stars - very few users, little community feedback星标只有 6,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add dsh-chat-thinking-editor

把 yumiao-dev/dsh-chat-thinking-editor 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-chat-thinking-editor

让 AI 按你的来。它不行,你自己来。

用 DeepSeek Harness 用了这么久,我算是想明白了一件事:模型再聪明,也有它就喜欢犟的时候。尤其在碰上一些技术向的活儿的时候——逆向点东西、拆个协议、翻一翻底层逻辑——它动不动就卡住,然后甩给你那句熟悉的:

「这个我帮不了你,因为它可能会违反……」

懂的人都懂。后面省略号什么内容,你自己脑补也补得出来。

你重新问它一遍?它还是那句话。你换个说法再试?还是那句话,顶多加一句「建议你走正规流程」之类的。烧一堆 token,结果它连脑子里那段长长的思考,都还是沿着它自己那套「不行」一直推下去。

所以我就写了这个插件。别跟 AI 较劲了,直接改它。

它不配合,你就把它那条回答,连同它脑子里折腾的那串思维链,一起拎出来改掉。改完保存,之后这整个对话——包括它接下来写的东西、想的过程——全都只认你改好的那个版本。它正文明明堂堂地收着你的意思,连它推演的那条路都是按你的方向走的。

一句话:保留 AI 的聪明,改掉你不想要的部分,让它彻底听你的话。

中文 · English


它都能干嘛

  • 每条 AI 消息的操作条上,多了根小铅笔;
  • 点开弹出编辑框,回复内容和思考链两个都能改;
  • 不只是眼前那条——这个会话里所有它说过的回复都列出来给你,连工具调用中间夹着的那几条也算;
  • 改完保存,AI 就只认你的版本;同一句想改几次改几次,不用重新跑。

一些贴心小细节:图片、工具调用这些非文本的东西会原样留着不动;正文留空就算清空这段,思考链留空就把那个思维块删掉;agent 正在跑的时候会锁住不能改,免得你们俩同时动同一段话打起来。

安装

前提:装好 DeepSeek Harness(dsh,推荐 0.1.5-rc.2 及以上版本)。

已经发到 npm 了,一行就完事:

dsh plugin --profile web add dsh-chat-thinking-editor

想改源码、跟着一起折腾的,clone 下来走本地路径挂也行:

git clone https://github.com/yumiao-dev/dsh-chat-thinking-editor.git
dsh plugin --profile web add /path/to/dsh-chat-thinking-editor

想手搓挂载的话,把 cordis.patch.yml 里那行合进你 profile 的 dsh.profile.bundles 层,重启 dsh web 就完事。

装完刷新一下 DSH 页面,就能看到那根铅笔了。

怎么用

  1. DSH 里跑一段对话,找一条你不满意的 AI 回复;
  2. 鼠标挪上去,点铅笔;
  3. 在「编辑助手消息」里点开那条;
  4. 改正文,改思考链,爱改哪个改哪个(留空=删掉那部分);
  5. 点保存——之后它就顺着你的版本往下走了。

注意:关窗口得点左上角那个关闭按钮(点遮罩和按 Esc 都不会关,这是故意的,免得手机上瞎碰到)。

顺带修的一个小毛病

写这插件的时候顺手修了个烦人的 bug:以前你对其中一个编辑框「全选(Ctrl/Cmd+A)→ 删除」,另一个框的内容也会跟着被清空。原因是选区在弹窗里串了,两个相邻输入框被一起选中了。现在全选只影响你当前正编辑的那一栏,不会误伤隔壁。

兼容性

  • 目标版本:DeepSeek Harness 0.1.5-rc.2+(依赖区间 ^0.1.1-rc.2);
  • 环境:Node 22.19+ / 24+,pnpm 11;
  • 底层走的是官方 surface replacement 事件(和 compact 那套机制是同一个东西)和 conversation.chat.assistant-actions 槽位,不碰私有接口。

提醒一句:DSH 官方自己都标了 developer preview,接口往后大概率还会变。哪天升级 DSH 之后发现不好用了,来提个 issue 就行。

目录结构

.
├── src/           # TypeScript 源码(Host + 前端逻辑)
├── lib/           # 编译产物,npm 入口
├── cordis.patch.yml  # DSH 挂载声明
├── package.json
└── README.md

License

MIT

写给在 dsh-plugin 专区晃悠的你:与其跟一个嘴硬的模型来回折腾,不如把它掰过来。这插件就是干这个的。

← 上一个 Prev dsh-mcp-bridge 下一个 Next gatherthread →