前言¶
DeepSeek Harness (DSH) 的核心理念是「一切皆插件」,開發者可以在 Web Profile 中通過插件擴展能力。對於需要編寫和調試 LaTeX 文檔的用戶,在 DSH 的對話窗口中直接調用 Overleaf 編輯器能顯著提升效率。然而,Overleaf 默認的響應頭包含 X-Frame-Options 和 CSP frame-ancestors 限制,直接通過 <iframe> 嵌入會被瀏覽器攔截。dsh-overleaf 插件通過在 DSH 主進程中運行 HTTP/1.1 反向代理,解決了同源問題,將 Overleaf 工作臺以第四個標籤頁的形式嵌入到會話頁面中。
插件定位¶
dsh-overleaf 是由 gychen-NJU 維護的 DSH 客戶端插件。它爲 DSH Web 增加了一個嵌入式 Overleaf 工作臺標籤頁,允許用戶在保持同源上下文的情況下,直接在瀏覽器中編輯、編譯和預覽 LaTeX 文檔,同時通過選擇引用、光標插入和 LaTeX 輔助面板,打通了編輯器與 AI 編寫器之間的數據流。
核心功能¶
該插件主要包含以下能力:
-
嵌入式工作臺標籤頁
在會話頁面的標籤欄增加第四個標籤[Overleaf]。該標籤加載配置的 Overleaf 實例(支持overleaf.com和tex.nju.edu.cn),保留文件樹、編輯器和 PDF 預覽功能,且不干擾下方原本的 DSH 編寫器。 -
同源反向代理
爲了繞過瀏覽器的同源策略限制,插件在 DSH 進程內提供了一個靜態反向代理。瀏覽器請求通過/overleaf-proxy/路徑轉發,目標由用戶配置。這確保了 iframe 與主界面共享同一源,從而允許瀏覽器層面的跨域交互。 -
LaTeX 輔助面板
在 Overleaf 標籤頁底部集成了三個功能面板:- AI 寫入:描述變更需求,Agent 生成內容後自動捕獲到面板,確認後插入編輯器光標位置。
- 選中重寫:選中編輯器文本,讓 Agent 解釋或重寫,確認後替換原選區。
- 編譯修復:在重新編譯後,讀取編譯日誌中的錯誤和警告,讓 Agent 提供修復方案。
-
雙向同步
- .tex 文件同步:支持將當前 Overleaf 源保存到本地工作區,或將本地
.tex文件上傳到 Overleaf。 - .bib 文件同步:在輔助面板中提供“Update Overleaf .bib”功能,支持從本地工作區遞歸檢測
.bib文件並更新 Overleaf 文檔。
- .tex 文件同步:支持將當前 Overleaf 源保存到本地工作區,或將本地
使用方式¶
插件需要 DeepSeek Harness 0.1.7-rc.2 或 Web Profile 環境。安裝後,在會話頁面的標籤欄即可看到 [Overleaf] 標籤。
典型用法如下:
-
代碼生成與插入
在聊天中描述代碼變更需求,讓 DSH Agent 生成內容,通過輔助面板的[ ai-insert ]功能捕獲內容並自動插入到編輯器當前光標位置。 -
文本交互
在 Overleaf 編輯器中選中一段文本,請求 Agent 解釋或重寫,確認後替換原選區。 -
編譯排錯
在 Overleaf 中重新編譯,若出現錯誤,通過[ compile-fix ]面板讀取日誌,讓 Agent 提供修復方案。 -
參考文獻同步
在輔助面板中選擇“Update Overleaf .bib”,從本地工作區遞歸檢測.bib文件並更新 Overleaf 文檔。
注意事項¶
- 版本兼容:插件依賴 DeepSeek Harness 0.1.7-rc.2 或更高版本,或 Web Profile。
- 升級重啓:升級插件後,必須重啓 DSH 並重新加載嵌入式項目。
- 配置即時生效:v1.0.0 版本中,修改代理目標等配置後保存即可立即生效,無需重啓 DSH。
- 許可證:該插件採用 MIT 許可證。
結語¶
dsh-overleaf 通過反向代理技術,在 DSH 中實現了無縫的 Overleaf 集成,將 AI 輔助能力直接下沉到編輯器層面,適合重度 LaTeX 用戶使用。