MIT 许可的 DSH 插件,通过 MCP stdio 暴露 OverleafMCP,让 DeepSeek Harness 用一个 token 读取并 Git 提交修改多个 Overleaf LaTeX 项目。
DSH 适配
原生运行时
作者声明
安全审计
未审计
最后核验
2026-11-14
许可证
MIT
01它能帮你完成什么?
在 DeepSeek Harness 里看懂整个 LaTeX 项目,而不是粘贴零散片段
模型先用 `mcp__overleaf__list_projects` 列出 Overleaf 项目,再通过 OverleafMCP 的工具读取文件、查看章节与章节内容
希望 agent 在动手改之前先看到真实项目结构的 LaTeX 作者
修掉 LaTeX 编译错误,并统一全文的术语与符号
通过 Git 写回 Overleaf 的文件或章节,每次写入都带明确的 `commitMessage` 并推送一次提交
希望 agent 直接修补并规范整篇长文档、而不是手工套用建议补丁的论文作者
在同一个 DSH 会话里处理多个 Overleaf 项目
一组 MCP 工具覆盖 `dsh-overleaf.config.json` 里列出的所有项目 ID
同时维护多篇 Overleaf 论文或报告的人
02如何接入 DeepSeek Harness?
前置条件
- DSH `0.1.0-rc.5` 或 `0.2.x`(在 `0.2.0-rc.2` 上验证过)
- Node.js `22.19.0` 或更新版本
- 一个 Overleaf Git 集成 token
安装步骤
- 01
如果 DSH CLI 已在 `PATH` 上:执行 `dsh plugin --profile web add dsh-overleaf`,再执行 `dsh web`
$ dsh plugin --profile web add dsh-overleaf
- 02
从 DSH 源码 checkout 安装:`pnpm install`、`pnpm run build`、`pnpm dsh plugin --profile web add /path/to/dsh-overleaf`、`pnpm dsh web`
- 03
在 `$DSH_HOME/dsh-overleaf/`(没有 DSH_HOME 时是 `~/.dsh/dsh-overleaf/`)下创建 `dsh-overleaf.config.json`,填入 `gitToken` 与 `projectIds`,然后重启 DSH
验证接入成功
- 告诉模型要处理哪个项目,它会先调用 `mcp__overleaf__list_projects`,能列出来就说明 OverleafMCP 的工具已经接进 DSH
03DSH 适配与能力边界
DSH 插件:把 `@fly233338/overleaf-mcp` 装成依赖,用 MCP stdio 启动它,再把它提供的工具交给宿主提供的 DSH MCP Client
跨项目列出与读取文件
`dsh-overleaf.config.json` 里配置的 Overleaf 项目 ID→来自 `mcp__overleaf__list_projects` 的项目列表、文件内容,以及章节与章节内容
通过 Overleaf Git 写回文件与章节
文件或章节的修改,加上明确的 `commitMessage`→推送到 Overleaf 项目的一次 Git 提交
向 Overleaf 项目推送一次 Git 提交生成 OverleafMCP 的项目配置
`dsh-overleaf.config.json` 里共享的 `gitToken` 与 `projectIds`→同一目录下由 OverleafMCP 读取的内部 `.dsh-overleaf.projects.json`
在用户配置旁写入并重新生成 `.dsh-overleaf.projects.json`
04适合谁?何时不该用?
适合
- 希望 agent 在动手改之前先看到真实项目结构的 LaTeX 作者
- 希望 agent 直接修补并规范整篇长文档、而不是手工套用建议补丁的论文作者
- 同时维护多篇 Overleaf 论文或报告的人
不适合
- 插件不编译文档、不审阅 PDF、也不自动化浏览器,只通过这组 MCP 工具读写 Overleaf 项目内容。
- 需要一个 Overleaf Git 集成 token,README 提醒不要把 token 放进公开源码仓库或已发布的包内容里。配置只在启动时读一次,改完必须重启 DSH。
- README 写明 DSH 需要 `0.1.0-rc.5` 或 `0.2.x`(在 `0.2.0-rc.2` 上验证过),Node.js 需要 `22.19.0` 以上,并说明 npm 安装命令要等这个包发布后才可用。
- 每次写入都必须带明确的 `commitMessage`,并以 Git 提交的形式落到 Overleaf 上,所以改动是真实项目历史而不是本地草稿。
05兼容性、维护与安全提示
- 插件不编译文档、不审阅 PDF、也不自动化浏览器,只通过这组 MCP 工具读写 Overleaf 项目内容。
- 需要一个 Overleaf Git 集成 token,README 提醒不要把 token 放进公开源码仓库或已发布的包内容里。配置只在启动时读一次,改完必须重启 DSH。
- README 写明 DSH 需要 `0.1.0-rc.5` 或 `0.2.x`(在 `0.2.0-rc.2` 上验证过),Node.js 需要 `22.19.0` 以上,并说明 npm 安装命令要等这个包发布后才可用。
- 每次写入都必须带明确的 `commitMessage`,并以 Git 提交的形式落到 Overleaf 上,所以改动是真实项目历史而不是本地草稿。
MIT · 仅有 README 证据,无带 tag 的发布,未做安全审计
06常见问题
在 DeepSeek Harness 里怎么安装 dsh-overleaf?
DSH CLI 在 `PATH` 上时,执行 `dsh plugin --profile web add dsh-overleaf`,再执行 `dsh web`;从 DSH 源码 checkout 安装则用 `pnpm install`、`pnpm run build`、`pnpm dsh plugin --profile web add /path/to/dsh-overleaf`、`pnpm dsh web`。README 说明直接 npm 安装的命令要等这个包发布后才可用。
插件从哪里读 Overleaf token 与项目 ID?
从 `$DSH_HOME/dsh-overleaf/` 下的 `dsh-overleaf.config.json` 读;没有设置 `DSH_HOME` 时用 `~/.dsh/dsh-overleaf/`,目录与文件缺失时会在启动时创建。在 `projectIds` 里填一个共享的 `gitToken` 和每行一个项目 ID,然后重启 DSH —— 插件只在启动时读一次,并生成 OverleafMCP 使用的内部 `.dsh-overleaf.projects.json`。
模型怎么知道该处理哪个 Overleaf 项目?
由你告诉它,例如「处理 Overleaf 项目 project-id-a」。模型会先调用 `mcp__overleaf__list_projects`,再把选中的 ID 作为 `projectName` 传给后续的 Overleaf 工具,所以同一组 MCP 工具能服务你配置的所有项目 ID。
它在 DSH 里做不了什么?
README 写得很明确:当前版本不编译文档、不审阅 PDF、也不自动化浏览器。另外它需要 DSH `0.1.0-rc.5` 或 `0.2.x` 以及 Node.js `22.19.0` 以上,每次写入都必须带明确的 `commitMessage` 并推送一次 Git 提交到 Overleaf。
07相关的 DSH 工作流
rea
作者 morluto
用智能体逆向工程一切,从应用行为一直到原生二进制。
reactive-resume
作者 reactive-resume
开源简历制作插件,强调隐私保护,支持自定义、可移植和自托管。
next-ai-draw-io
作者 dayuanjiang
通过对话创建和编辑 draw.io 图表,提供 Web、桌面应用及 MCP 服务,可用于流程图和架构图绘制。
everos
作者 evermind-ai
为所有 AI 智能体提供的便携统一记忆层,本地优先、Markdown 原生、数据归用户所有,跨应用与工作流自进化。
08数据与来源
`dsh-overleaf` installs [@fly233338/overleaf-mcp](https://www.npmjs.com/package/@fly233338/overleaf-mcp) as an npm depen…
Browse and read files from multiple Overleaf projects, inspect document sections and section content, write files or sec…
页面基于项目公开文档、仓库元数据和 DSH Plugins 的结构化解析生成;最后核验于 2026-11-14。发现错误?提交更正。
最佳 DeepSeek Harness 插件
从全目录挑出的 12 个值得优先安装的插件,覆盖各个分类。
