DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Plugin Chat Annotations — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
P

@dsh-lab/dsh-plugin-chat-annotations

Plugin Chat Annotations

DSH 插件 @dsh-lab/dsh-plugin-chat-annotations

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:ynnmuraii/dsh-plugin-chat-annotations#f17e5383a2fe6bb9952d208c99965a88fe1a3c9d
README兼容性版本

说明

DSH 插件 @dsh-lab/dsh-plugin-chat-annotations

兼容性与来源证明

Plugin Chat Annotations 以 @dsh-lab/dsh-plugin-chat-annotations 发布,当前版本为 0.0.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/8/25

版本

0.0.0stable
2026/8/25

相关插件

正在加载相关插件…

最新版
0.0.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
未声明
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/9/3
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 ui-customization 分类下经过校验的插件。

Web App@deepseek-ai/dsh-web-appdsh 浏览器界面捆绑包:位于 dsh-base 之上的 Web 补丁层,加上运行时粘合插件(提供前端 dist、Web 界面提示符、bash 运行时变量和 URL 行)Experimental Agent Team Web Profile@deepseek-ai/dsh-experimental-agent-team-web-profile用于 Agent Teams Remote 和 UI 插件的实验性 Web 配置层Remote Web Ui@linxin666/dsh-remote-web-ui通过扫码配对访问 dsh Web GUI,共享一个官方界面:设置按钮旁的二维码可将手机和 PC 配对到同一个 Web GUI(手机采用竖屏触控适配层,PC 使用完整桌面界面),通过一次性令牌和 rClient Ui Git Graph@linxin666/dsh-client-ui-git-graph外部 dsh Web GUI 插件:空会话 Git 分支选择器和 Git 图,包含实际的主机端 Git 操作与防护,作为 dsh 配置文件包

README

dsh-plugin-chat-annotations

Annotate any text in the DeepSeek Harness chat: select a fragment, attach a comment (or not), and the annotation travels to the agent with your next message — as a structured content part, not as a field decoration.

Version note. Built and verified against DeepSeek Harness 0.1.1-rc.2. The UI it hooks into is a moving target; on newer Harness versions re-verify and update the plugin if something shifted.

Features

  • Select & annotate — select text in any message, click Add to chat, and a numbered marker appears above the selection.
  • Non-destructive highlights — the transcript is React-owned; the plugin never mutates it. Highlights are painted with the CSS Custom Highlight API, so the annotated text always stays intact (delete an annotation → the text is untouched).
  • Comment popup — optional comment per annotation, saved with the marker.
  • Annotation pill — a floating counter above the composer (e.g. ◫ 2 annotations); hover it to list every annotation with its excerpt and comment.
  • Sent with the request — annotations are appended to session.prompt as an extra text content part, so the agent sees them as part of the message. Press Enter with annotations and an empty composer: the plugin sends the annotation block alone — no typed text required.
  • Auto cleanup — after a successful send the markers, pill, and highlights are cleared, freeing the buffer for the next round.
  • Scroll-safe markers — markers hide when their text scrolls out of the chat viewport (or into the composer panel) instead of drifting over the UI.

Install

From the packed tarball

# build the bundle (from this repo)
pnpm install --config.strictDepBuilds=false --config.minimumReleaseAge=0
pnpm build
pnpm pack          # produces dsh-lab-dsh-plugin-chat-annotations-0.0.0.tgz

# install into your profile (run from anywhere; profile path is $DSH_HOME/profiles/<name>)
dsh plugin --profile web add file:/absolute/path/to/dsh-lab-dsh-plugin-chat-annotations-0.0.0.tgz --config.strictDepBuilds=false

Then restart your dsh web server (or just refresh the browser tab — client bundles are re-read on page load).

From GitHub

dsh plugin --profile web add github:ynnmuraii/dsh-plugin-chat-annotations

Verify it loaded

Open the web UI. The annotation pill (◫ 0 annotations) appears above the composer once a session is open. If it does not, check the boot page (HARNESS / Failed to load plugins) and the server logs.

Usage

  1. Open a session and select a word / sentence in any message.
  2. Click Add to chat — a numbered blue marker appears over the text.
  3. (Optional) type a comment in the popup and click Save; or close it with Cancel to keep a marker-only annotation.
  4. To edit or delete: click the marker → popup → Save / trash icon.
  5. Send your message. The annotation context is appended to the request automatically. If the composer is empty, just press Enter — the annotation block is sent on its own.
  6. After the send, annotations clear automatically.

How annotations reach the agent

The plugin intercepts session.prompt traffic and appends an extra text content part to the message:

content: [
  { type: "text", text: "your message..." },
  { type: "text", text: "[User annotations]\n1. Selected text: «excerpt» — Comment: ..." }
]

Entering text is never required: with pending annotations and an empty composer, Enter sends the annotation block as the sole content.

Development

pnpm install --config.strictDepBuilds=false --config.minimumReleaseAge=0
pnpm typecheck
pnpm test        # vitest + jsdom (6 tests: lifecycle, selection, renumbering, clip)
pnpm build       # tsc ESM host + CJS client wrapped for __ModuleLoader__.load
  • src/index.ts — host half (Cordis plugin entry, greet tool).
  • src/client.ts — browser half: toolbar, markers, pill, popup, wire interception.
  • tests/index.spec.ts — jsdom behavior tests.

Layout

src/
  index.ts      host entry (name / inject / apply)
  client.ts     browser half (registered via __ModuleLoader__.load)
tests/          vitest + jsdom
scripts/
  build-client.mjs   wraps the CJS client emit into the module-loader contract
  pack-smoke.mjs     installs the tarball and executes the built entry

Compatibility

Targets: next (@deepseek-ai/dsh 0.1.1-rc.2, cordis 4.0.1). Verified via pnpm lab verify chat-annotations --target next (inspect, install, typecheck, test, build, pack, pack-smoke, composed profile).