Skills Plugins MCP Prompt Model 导航 博客 资讯 我的中心
界面增强 #deepseek#deepseek-harness#dsh#dsh-better-sidebar#dsh-plugin#sidebar

dsh-file-quote

DeepSeek Harness Web 统一引用插件:选择文件编辑器文本或聊天消息后批注,以含路径和精确行号的引用块发送给 AI。

sunday2mo @sunday2mo ⬇ 1 ★ 1 master

安装

dsh plugin --profile web add github:sunday2mo/dsh-file-quote
下载安装清单

需要可复现安装时,可在仓库后追加 #commit 固定提交。

DeepSeek Harness Web 统一引用插件:选择文件编辑器文本或聊天消息后批注,以含路径和精确行号的引用块发送给 AI。

该插件未提供要点说明,请参考仓库 README。

deepseekdeepseek-harnessdshdsh-better-sidebardsh-pluginsidebar
  1. 安装并启动 DeepSeek Harness:npx @deepseek-ai/dsh web
  2. 在终端执行上面的安装命令(CLI 会解析插件并核验来源)
  3. 用 dsh plugins list 确认已安装,必要时重启 Harness 生效

插件以当前 dsh 进程的权限运行,安装时可能执行代码。请先通读仓库源码与许可证,确认无破坏性命令与越权访问;本站只做索引,不对第三方插件安全性作担保。

代码仓库github.com/sunday2mo/dsh-file-quote
许可证MIT
主要语言master
下载量1
GitHub 星标1
最近推送2026-08-27
收录日期2026-09-19
分类界面增强

事实信息来自公开插件目录快照(2026-10-01),介绍文案由本站再加工。

以下为插件仓库 README 全文(原始内容,由公开目录抓取整理)。

# dsh-file-quote

  划选即引,引用块直达原文

  划选批注 文件引用 行区间定位 双端折叠 点击跳回

  [图片: npm version]

  [图片: License: MIT]

  [图片: Plugin ecosystem: GitHub topic dsh-better-sidebar]

  DeepSeek Harness(DSH)Web 插件:在对话里划选任意文本 → 批注 → 发送紧凑「引用#N」引用块——

  AI 看到完整引用与精确位置(文件路径 + 行区间),聊天区保持整洁。面向 AI 编程的「精确引用」能力。

  🌏 中文 · English

  [图片: dsh-file-quote demo]

## ✨ 功能一览

- **📝 划选批注**:可引用侧边栏中预览文件的详细内容,自动封装为「引用块」,块内自动包含文件地址 + 被引内容在文件中的具体行区间——适用于**所有可在侧边栏预览/编辑的文件类型**。选中会话消息或文件编辑器(工作台 CodeMirror / better-sidebar 编辑器 / Markdown 预览)文本 → 批注浮层 → 「引用#N」chip 插入输入框
- **📄 文件引用带行区间**:引用块自动封装文件地址与被引内容的**精确行区间**(`> 📄 引用来源:路径(第 X-Y 行)`),适用于所有可在侧边栏预览/编辑的文件类型
- **🧩 任意位置插入、数量不限**:引用块可在输入框任意文本位置插入、数量不限,多个引用连续插入互不粘连(序列化自带首尾换行,幂等)
- **🗜️ 双端折叠**:引用块在输入框和已发送会话记录中**都**保持折叠——AI 收到完整引用与来源,用户侧仅见「引用内容 · 悬停查看」chip,悬停查看全文
- **🎯 点击跳回原文**:点击引用 chip(输入框内或历史里)定位原文——编辑器定位高亮 / 消息行滚动闪烁 / 文件原文浮层兜底

> 🔌 **基于 [dsh-better-sidebar](https://github.com/omdsh-dev/DSH-better-sidebar) 的 DSH 统一引用插件**:**完整功能依赖 dsh-better-sidebar**——侧边栏文件引用、跳回定位高亮都以它为基础,为获得完整体验请先安装。基础引用流程源自 [dsh-quote-annotate](https://github.com/wangwei-wade/dsh-quote-annotate)(MIT);侧边栏文件内部内容精确引用、双端折叠、跳回定位为**原创**扩展。

## 前置依赖

DeepSeek Harness Web **0.1.x**(client 使用 `slots` / `inputTriggers` 服务;输入管线缺失时优雅降级为纯文本插入)。**[dsh-better-sidebar](https://github.com/omdsh-dev/DSH-better-sidebar) 推荐必装**:插件的**完整功能(侧边栏文件内容引用、跳回定位高亮)依赖它**——未安装时仅会话消息引用可用,文件引用退化为原文浮层展示。对应 DSH `0.1.0-rc.8` 及更高。

## 安装

```bash
# 1. 先安装 dsh-better-sidebar(完整功能依赖)
dsh plugin --profile web add dsh-better-sidebar@latest   # 首次会因 pnpm 11 拦截 node-pty 构建脚本而失败(依赖已写入)
cd ~/.dsh/profiles/web && pnpm approve-builds --all      # 放行构建脚本(自动重跑安装)
dsh plugin --profile web add dsh-better-sidebar@latest   # 重跑即成功
#装完硬刷新浏览器(Cmd/Ctrl+Shift+R)即可看到侧边栏(DSH 对 client 改动热加载,无需重启;仅 host 半更新时需要重启)。

# 2. 再安装本插件
# 从 npm 安装(推荐):
dsh plugin --profile web add dsh-file-quote

# 本地开发(link: 热更新)
dsh plugin --profile web add "link:your path/dsh-file-quote"
```

装完硬刷新浏览器(Cmd/Ctrl+Shift+R);host 半改动需重启 `dsh web`。

## 使用

1. **引用会话消息**:在任意对话中划选一段文本,点击浮层「批注」(可加评论),点「插入输入框」——输入框光标处出现「引用#N」chip。
2. **引用文件文本**:在工作台编辑器、better-sidebar 编辑器或 Markdown 预览中划选代码,同样流程;发送后引用块自带**文件路径 + 行区间**,AI 可直接定位到原文。
3. **发送后**:引用块折叠为「引用内容 · 悬停查看」chip——悬停查看全文,**点击跳回原文并高亮**(编辑器选中高亮 / 消息行闪烁 / 原文浮层兜底)。

## 序列化格式(兼容红线)

发送时引用块序列化为 markdown `>` 块,来源行集成在块内(**中文原样,不随界面语言翻译**):

```
> 引用正文
> 📄 引用来源:src/a.ts(第 3-5 行)
```

- 引用块自带首尾换行:与前后普通文本/其他引用互不粘连,多个引用连续插入各自独占成块。
- 解析器同时兼容旧版 `> 📄 文件:…` 格式(v0.7),已发送的旧引用块仍可点击定位。

## 架构

```
dsh-file-quote (bundle: dsh.bundle + package.json#dsh.client)
├── src/index.js        host:/dsh-file-quote/read 安全文件读取端点
│                       (workspace realpath jail + 2MB 上限 + 二进制 NUL 检测)
└── src/client.js       浏览器:选区捕获、批注浮层、引用管线、回合按钮、已发送折叠、跳回定位
    ├── 引用管线       inputTriggers.registerSource('file-quote-ref'):chip → 引用块序列化 codec
    ├── 选区分流       消息选区 → anchorKey;编辑器选区(CM6 cmTile)→ relPath + 行区间
    ├── 定位链         编辑器跳转 → Markdown 预览高亮 → tab/文件树激活 → better-sidebar openFile → 原文浮层
    └── 已发送折叠     MutationObserver:把会话记录中的 `> 引用块` 折叠为悬停 chip
```

### 关键数据流

```
划选文本 ─▶ 批注浮层 ─▶ 「引用#N」chip 插入输入框(任意位置、数量不限)
  发送 ─▶ codec 序列化为 `\n> 引用正文\n> 📄 引用来源:路径(第 X-Y 行)\n`
       ─▶ 会话记录折叠为「引用内容 · 悬停查看」chip(AI 可见全文)
点击 chip ─▶ 解析来源行 → 编辑器定位高亮 / 消息行闪烁 / 原文浮层兜底
```

## 开发

源码位于 `src/`(`src/index.js` host 半区、`src/client.js` client 半区,`window.__ModuleLoader__.load` 格式),是唯一真源;`lib/` 为构建产物,由零依赖脚本 `scripts/build.js` 从 `src/` 复制生成(纯 JS 复制式构建,两者内容相同属正常),已被 `.gitignore` 忽略、不提交 GitHub。

```sh
npm run build   # src/ → lib/(npm 安装 / GitHub 安装 / 打包时经 prepare 自动执行)
```

**只改 `src/`,不要手改 `lib/`**:改完先 `npm run build`,再硬刷新浏览器调试 client;host 改动(`src/index.js`)需重启 `dsh web`。

## ⚖️ 第三方致谢

插件部分设计源自 [dsh-quote-annotate](https://github.com/wangwei-wade/dsh-quote-annotate)(MIT License,Copyright (c) 2026 wangwei-wade)。

## 许可证

MIT

数据来源:公开的 DeepSeek Harness 插件目录与各插件 GitHub 仓库。本站为独立第三方目录,与 DeepSeek、幻方(High-Flyer)及插件作者均无隶属或背书关系。

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。