DeepSeek Harness Plugin Hub

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

探索

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

社区

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

相关链接

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

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

DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
Q

dsh-quote-annotation

Quote Annotation

引用带可选注释的对话文本,并将其作为结构化参考上下文发送给 DeepSeek Harness (DSH)。

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

npx -y @deepseek-ai/dsh plugin --profile web add github:stickyfinger7/dsh-quote-annotation#d62dff1d397d5d33163bc810580bfb3bbbef1918
README兼容性版本
Select a sentence, add an annotation, send the quote, then hover and jump back from the inline note

兼容性与来源证明

Quote Annotation 以 dsh-quote-annotation 发布,当前版本为 1.1.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

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

版本

1.1.0stable
2026/10/29
1.0.0stable
2026/10/28

相关插件

正在加载相关插件…

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

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

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

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

认领这个 Plugin →
报告问题

相关插件

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

Hindsight Coding Agents@vectorize-io/hindsight-coding-agents面向编程代理的仅反思式 Hindsight 长期记忆(可插拔支持多种运行框架:opencode、……),自动在后台导入(无需设置 CLI)。Contextdsh-context用于上下文洞察和管理的 DeepSeek Harness 插件,提供上下文仪表板和上下文命令,帮助了解上下文的构成及其演变过程。Memory Plugin@openviking/dsh-memory-plugin适用于 DeepSeek Harness 的 OpenViking 记忆与上下文套件Mnemondsh-mnemon面向 DeepSeek Harness 的可组合、基于视图的上下文。开箱即用的可插拔来源与策略、分层记忆和自我演进技能。

README

dsh-quote-annotation

Quote a passage from a DeepSeek Harness (DSH) conversation, attach an optional note, and send it with your next message as structured reference context. The quote never enters your draft and never shows up as raw JSON in Chat.

中文 · Changelog · Maintainer notes

Demo

Select a sentence, add an annotation, send the quote, then hover and jump back from the inline note

Select → Add to chat → optional note → send with the composer still empty. The reply keeps a Note N marker: hover to preview the quote, click to jump back to the source. The Chinese demo is here; step-by-step stills live in docs/media.

Features

  • Select → Add to chat. A small action bar appears over the selection; the quote is stored immediately.
  • Optional annotation. Add or edit a note at any time; Enter confirms, Shift+Enter inserts a newline.
  • Visible record. A pill in the composer tool row shows what is pending; after sending, a pill above your message keeps it.
  • Quote-only messages. The send button enables even when the composer is empty.
  • Inline markers. Once the turn completes, an 注释 N marker appears in the assistant reply at the paragraph that mentions the quote. Hover to preview, click to jump back to the source.
  • Survives restarts. Sent records are rebuilt from the Session log, so pills and markers come back after a Host restart.
  • No editor mutation. No Lexical chips, no hidden text, no zero-width characters left in the model prompt.
  • Zero dependencies, no build step. A plain ESM host plugin and a single browser module.
  • Speaks your UI language. Copy follows the DSH UI locale: Chinese and English ship with the plugin, and every other language falls back to English. Switching the language in Settings updates the pills, cards, markers and composer live, without a reload.

UI copy is Chinese for a Chinese DSH UI (添加到对话, N 条注释, 注释 N) and English otherwise (Add to chat, N quotes, Note N).

How it works

selection ──► client ──► POST /dsh-quote-annotation/add
                              │
                              ▼
                       pending store (Host)
                              │
                    agent/pre-step (next user message)
                              │
                              ▼
        user message + hidden context message
        source.kind = "conversation-quote"
  • The Host appends a hidden user/message after the direct user message. Chat hides ordinary context nodes, so the raw reference block never renders in the conversation.
  • source.references carries the quote, the optional annotation, and source metadata (nodeKey, anchorKey, turn, kind).
  • GET /dsh-quote-annotation/sent backfills sent records from the Session log, so historical quotes get pills after a Host restart.
  • Quote-only sends use an invisible draft token (U+2063) to keep the native send button enabled. The Host strips it before the model step and falls back to (引用).
  • Sent pills sit above [data-chat-flow-kind="user"][data-chat-turn=…]; the React tree is never overridden.
  • Inline markers are appended to the paragraph containing the quote (fallback: the last paragraph) and are idempotent per turn:index.

Requirements

  • DSH 0.2.x with the Web client modules (DSH Desktop or dsh web), including @deepseek-ai/dsh-client-locale for the language switch.
  • A profile you can modify (web, desktop, …).
  • Node.js >=22.19.0 for the Host.

Install

From GitHub:

dsh plugin --profile web add github:stickyfinger7/dsh-quote-annotation

Pin a release:

dsh plugin --profile web add github:stickyfinger7/dsh-quote-annotation#v1.1.0

DSH Desktop installs into its own profile:

dsh plugin --profile desktop add github:stickyfinger7/dsh-quote-annotation

From a local checkout (useful while developing):

git clone https://github.com/stickyfinger7/dsh-quote-annotation.git
dsh plugin --profile web add ./dsh-quote-annotation

Restart the profile once — Host routes and agent/pre-step load at Host startup — then refresh an open page.

Verify

  1. Select text in Chat → 添加到对话.
  2. Optionally annotate; press Enter.
  3. The composer tool row shows N 条注释 and the send button is enabled.
  4. Send without typing anything else.
  5. A N 条注释 pill appears above the user message; click it to jump to the source.
  6. After the reply completes, 注释 N appears in the assistant text; hover to preview.
  7. Chat must not render ## Quoted conversation references.

To disable the plugin without uninstalling, set disabled: true on the quote-annotation entry in the profile's cordis.patch.yml.

Configuration

Defaults live in cordis.patch.yml and can be overridden in the profile patch under the quote-annotation entry:

OptionDefaultMeaning
maxQuotes8Pending quotes kept per session
quoteMaxChars8000Max characters per quoted passage
annotationMaxChars4000Max characters per annotation
pendingTtlMs86400000How long a pending quote stays alive

Compatibility

Tested with DSH 0.2.1-rc.3 (Web).

Client-side selectors:

  • [data-conversation-scroll]
  • [data-chat-flow-kind="user"]
  • [data-chat-turn]
  • [data-chat-node-key] / [data-chat-anchor-key]

Host-side contracts:

  • agent/pre-step waterfall
  • ctx.sessions.get(id).snapshotEvents() for historical backfill

It deliberately does not depend on conversation.draftContexts, native Lexical chips, or the reference pipeline.

Limitations

  • Pending quotes live in Host memory; a Host restart clears them. Sent records are backfilled from the log.
  • Sent-pill placement and inline markers are DOM enhancements: a DSH Chat DOM change may require selector updates.
  • Inline marker placement is a paragraph heuristic. If the assistant paraphrases instead of quoting, the marker lands at the end of the reply.
  • There is no native Lexical chip — that is the price of never mutating the editor.
  • UI copy covers Chinese and English only; other locales fall back to English. Host-side copy follows the language of the last mutation, so a stale tab can briefly disagree.

Development

npm run check     # node --check on both sources
npm test          # node:test smoke tests
npx prettier@3 --write lib test

There is no install step: the plugin has no runtime or dev dependencies.

See AGENTS.md for the runtime model and the invariants to keep.

License

MIT