dsh-quote-temp-ask

by Enc-hanted

0 会话与消息github 检测到 manifest package.json#dsh收录于 08-17

DSH Web UI 划词工具条:引用(可展开的编辑器标记)、临时对话(页内无上下文面板)、网页提问(带 ?q= 预填的 chat.deepseek.com 弹窗)

Selection toolbar for the DSH web UI: quote (expandable composer markers), temp chat (in-page context-free panel), web ask (chat.deepseek.com popup with ?q= prefill)

安装

dsh plugin --profile web add github:Enc-hanted/dsh-quote-temp-ask

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗

安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。

README

目录

English · 中文

DSH Web 界面的选区工具条插件。在会话里选中一段文本,上方浮出三个按钮:

  • 引用 — 在输入框草稿里追加 [引用到内容N] 标记。标记是唯一事实源:在输入框内剪切粘贴即可排序;发送(Enter 或发送按钮)时每个标记自动展开为 > **引用的内容N** 块引用并随消息发出,展开全文同时写入剪贴板。
  • 临时对话 — 打开页内右侧 390px 面板。每个问题都是无上下文单轮,用 DSH 当前默认模型回答,250ms 轮询流式输出;支持轻量 markdown(代码块/行内码/粗体/斜体/链接/标题/列表)、「清理上下文」「停止」(AbortController 真中止)。
  • 去网页问 — 打开真正的 chat.deepseek.com(390×844 popup,贴屏幕右缘),?q= 预填选中文本;超过 8KB URI 上限时降级为无参打开 + 全文复制剪贴板。

安装

npm 安装:

dsh plugin --profile web add dsh-quote-temp-ask

或本地开发目录:

dsh plugin --profile web add link:D:/路径/dsh-quote-temp-ask

dsh plugin 是 pnpm 转发器,装完自动把包加入 dsh.profile.bundles,无需手改 profile。重启 DSH 后自动加载,不需要审批。

卸载

dsh plugin --profile web remove dsh-quote-temp-ask

重启 DSH 即可;bundle patch 行随依赖一并消失。

最小使用

  1. 选中会话里任意文本 → 点「引用」。
  2. 输入框出现 [引用到内容1] 标记,上方出现预览卡片。
  3. 按 Enter(或点发送按钮)— 标记展开为块引用并发送。

兼容性

验证于 @deepseek-ai/dsh 0.1.0-rc.6(web profile);Node >=22.15。

运行时依赖全部显式声明:react 与 @deepseek-ai/dsh-client-ui-slots(peer,由 Web 应用提供)。Host 半面零 npm 依赖,只用注入的 DSH 服务(llm/agentDefaultModel/webServer)和 Node 内置模块。

已知限制

# 限制
L1 发送按钮拦截依赖 aria-label="发送消息"(中文界面);Enter 拦截不受影响
L2 Cmd/Ctrl+Enter 等其他提交路径不拦截,标记会原文发出
L3 手动输入与标记同格式且池中有对应 id 的文本会被展开
L4 标记重编号会产生额外 undo 记录
L5 引用池是会话内存态;切会话/刷新后标记失去内容映射
L6 流式是 250ms 轮询,非 SSE
L7 面板消息历史无上限(用「清理上下文」)
L8 chat.deepseek.com 返回 frame-ancestors 'none',无法 iframe 内嵌;网页弹窗是唯一路径

License

MIT

原始 README: https://github.com/Enc-hanted/dsh-quote-temp-ask/blob/main/README.zh-CN.md ↗