dsh-reedit
Manifest valid★ 1Double-click any of your own messages to rewrite it and resend from that point; the original conversation is untouched.
dsh-reedit
Double-click any of your own messages to rewrite it and resend from that point. The original conversation is untouched.
What it does
Hovering one of your messages shows the hint; double-click it to open an editor prefilled with that message. Confirming:
- forks the session at the event before the original message, so neither it nor any later message is carried into the new branch,
- sends the edited text into that branch, and
- opens the branch in the main panel.
Clicking anywhere outside the editor leaves edit mode without saving.
The original session is never modified — nothing is rewritten in place, because a session log is append-only. Editing message n-1 is therefore the reason message n does not appear in the new branch: the branch starts before n-1.
Your messages also get a faint blue bubble, so a user message cannot be mistaken for an assistant reply.
Why it owns the user bubble
Double-click and the hover hint need the bubble's own DOM, and the shipped
renderer keeps its action row internal and exposes no hook. This plugin
registers conversation.chat.node for key user at priority: -1, shadowing
that renderer.
A keyed cell accepts a second registration only at a different priority; at
priority 0 it throws
keyed slot ... already has an entry for key "user" at priority 0, and a throw
in a client entry makes the web boot audit refuse to mount the whole GUI. The
priority is load-bearing.
The replacement reproduces text, reference labels, image attachments (through
the shared renderMessageImages owner prop), extra blocks and the time/copy row;
file cards and bubble styling are hand-written and may differ slightly from the
host. @deepseek-ai/dsh-client-ui-primitives is read behind a try/catch, so a
missing kit degrades to plain text instead of blanking the conversation.
Install
dsh plugin --profile <profile> add github:Arbeiter-bit/dsh-reedit
Pinned:
dsh plugin --profile <profile> add github:Arbeiter-bit/dsh-reedit#v0.1.0
Verification
The web boot audit (assertEntriesActive) refuses to mount the whole GUI
when any client entry fails to activate, so every release is checked by loading
the composed profile in a fresh browser page with an empty module table and
reading the console:
v0.1.0 title: DeepSeek Harness console errors: 0
Known limitations
- The bubble colour is a literal blue (
#2563ebat 12%), mixed against the layered surface so it stays readable in light and dark themes. The theme exposes no blue alias token —--dsw-alias-brand-primaryresolves to the neutral primary-action colour, which mixes to grey. - The action row is a reimplementation; file cards and spacing are hand-written.
- Editing cannot edit a message in place, because session logs are append-only.
License
MIT
Comments
Loading…
From the same category
by awesome-dsh-plugin
A curated list of plugins for DeepSeek Harness (dsh) · DeepSeek Harness 插件精选列表
★ 18.5k
CC0-1.0
Python
Oct 12, 2026
by 0xsline
DeepSeek Harness (DSH) ecosystem: curated plugins, tools, and infrastructure from dsh-external/hub and the public dsh-plugin topic.
★ 1.2k
CC0-1.0
Python
Oct 10, 2026
by pax-beehive
Open-source CLI, schemas, resolver, and DSH agent tools for DSH Plugin Hub
★ 400
MIT
TypeScript
Oct 6, 2026
by xiajiajun516
DeepSeek Harness (DSH) backup & restore plugin — export, import, migrate and sync your complete DSH configuration, plugins, MCP servers, skills and workspace. One-click migration to another machine.
★ 185
MIT
TypeScript
Oct 13, 2026
dsh plugin --profile web add dsh-config-managerby yjh051108
推荐组件(非必须):DeepSeek Harness 运行时注入器;已随 dsh-routing-suite 单仓库化保留,本仓库继续维护/发布。
★ 166
TypeScript
Sep 18, 2026
dsh plugin --profile web add @dsh-external/dsh-super-injectorby jigjoy-ai
A CLI that turns a goal into a pull request - and a sandbox for testing concurrent AI coding agents on the Mozaik runtime.
★ 124
MIT
TypeScript
Oct 12, 2026