前言¶
在 DeepSeek Harness(DSH)里写 LaTeX 论文时,智能体往往只能盯着源码和 .log:编译过了,不代表版面能投稿。孤行寡行、浮动体离引用太远、双栏空洞、Overfull、表格字号不齐等二维缺陷,单靠日志很难发现。若再把「编译 → 看页图 → 诊断 → 修 → 再验」拆成零散脚本,也很难在会话里稳定复现。
下面介绍社区插件 dsh-latex-studio(维护者 Qingzhu093),它把日常编译与 VTO(Visual Typesetting Optimization,视觉排版优化)流程做成 DSH 工具链,并带持久缺陷台账与插件页配置表单。方法学参考 PaperFit(MIT,arXiv:2605.10341);仓库当前版本为 0.4.1(MIT),要求宿主 dsh >= 0.2.0-rc.2、Node ^22.19.0 || >=24.0.0。目录页:SkillHub - dsh-latex-studio;源码:github.com/Qingzhu093/dsh-latex-studio。
这是什么¶
dsh-latex-studio 是面向 DSH 桌面端的工作流类插件:以 MiKTeX 为硬依赖,提供 10 个工具、3 个技能,并在 VTO 路径上维护跨轮 缺陷台账(state.json)。简介中的定位可以概括为:LaTeX compile gate + VTO typesetting loop——先保证能编、再按页图做受限修复与门禁复核。
插件在 apply() 时自行注册技能(latex-daily、latex-fix-catalog、latex-vto-loop),装完即可用,无需再把 skills/ 拷到 DSH 技能发现目录。
核心功能¶
两套命令线¶
README 将能力分为两条线,便于在会话里分工:
A 线(日常编译)
latex_doctor:检查本机 LaTeX / 页图 / 参考文献工具是否就绪,缺失项给出可执行advice。latex_build:多趟编译驱动;优先latexmk(需 Perl),不可用时回落内置多趟驱动(引擎 → 按需 bibtex/biber → 直至.aux稳定,最多 4 趟),产出结构一致并由via标明路径。latex_lint:静态检查(可选依赖chktex)。bib_tool:参考文献相关操作。
B 线(VTO 全流程)
vto_start/vto_inspect/vto_fix/vto_verify/vto_report/vto_rollback:覆盖「编译 → 读日志 → 渲染页图 → 诊断(18 类缺陷)→ 受限修复 → 门禁复核」。vto_fix默认apply:false,只给出配方与 diff;写操作走备份 → 写入 → 内容守卫 → 失败回滚。vto_report按id+page写入缺陷台账;vto_verify对「标了 fixed 又复发」判回归,并对未清阻断级缺陷降级 verdict。
环境与降级策略¶
- 硬依赖:MiKTeX(引擎、
bibtex/biber、页图用的 Popplerpdftoppm/pdfinfo、Ghostscriptmgs.exe等)。Windows 可用winget install MiKTeX.MiKTeX。 - 可选:Perl +
latexmk(推荐,用于.fls依赖追踪);缺则自动用内置多趟驱动。 - 页图:默认本地 Poppler/Ghostscript,零额外安装;MinerU 或宿主
read_pdf仅作可选兜底。 - 外部件缺失:不抛异常,返回
status:'skipped'与修复建议。 - 隐私:
uploadScope统一控制哪些 PDF 解析可上传,默认不外发本人稿件。
安装与启用¶
DSH 生态是「一切皆插件」;SkillHub 为社区目录,与 DeepSeek / 幻方无官方从属关系。安装前请自行审阅源码与 MIT 许可证;插件以当前 DSH 进程权限运行,涉及读写工程与调用本机 TeX,应在可信环境操作。
从 GitHub 安装(README 原文)¶
仓库直接提交可运行的 lib/(纯 JS,无构建步骤),可用 github: 源且无需授权构建脚本。在 Windows 上请使用桌面端自带 CLI 全路径(README 示例路径为 D:\DshDesktop\resources\runtime\cli\bin\dsh.cmd),避免 PATH 上旧版全局 dsh 误操作 profile:
& "D:\DshDesktop\resources\runtime\cli\bin\dsh.cmd" plugin --profile desktop add github:Qingzhu093/dsh-latex-studio
建议锁定 commit,避免后续推送改变实际运行代码:
& "D:\DshDesktop\resources\runtime\cli\bin\dsh.cmd" plugin --profile desktop add github:Qingzhu093/dsh-latex-studio#<sha>
README 还说明:本机实测在 Electron 独占管理的 profile 上,dsh plugin add 可能挂起,日常更推荐在克隆仓库后执行 node tools/install.mjs(打包、登记 profile、自检)。安装或升级后需重启 DSH 或开新会话,否则仍在用旧实例。
克隆仓库后的推荐安装(维护者脚本)¶
cd <本仓库>\dsh-latex-studio
node tools/install.mjs
装完应运行自检(可在插件外执行,避免「装上但未加载」却无处报错):
node tools/doctor.mjs
退出码:0 健康,1 有失败项,2 脚本自身出错。自检会核对文件、apply() 是否注册 10 工具与 3 技能、profile 登记、技能遮蔽、本机能否真编译与渲染页图等。
配置¶
插件在 DSH Plugins 页提供配置表单(README 称 0.4.x 起对 volatile 配置字段可在页面编辑;doctor 会报告 volatile 字段数量)。具体字段以仓库 docs/DEVELOPMENT.md 与 Schemastery 契约为准,本文不罗列未在已抓取资料中展开的每一项。
典型用法¶
1. 先诊断环境¶
在会话中让智能体调用 latex_doctor,根据返回的「已装 / 缺失」与 advice[] 补 MiKTeX 或可选组件(如 winget install StrawberryPerl.StrawberryPerl 以启用 latexmk)。
2. 日常编译与 lint¶
- 对工程主文件使用
latex_build(缺宏包时默认可--enable-installer自动补装)。 - 需要额外信号时跑
latex_lint(依赖chktex时才有完整外部通道)。 - 参考文献问题用
bib_tool与 A 线文档配合。
3. VTO 闭环¶
按 B 线顺序在会话中推进即可:vto_start 建立上下文 → vto_inspect 读日志与页图(可选 parse:true 时注意 uploadScope)→ vto_fix 先看配方(apply:false)→ 确认后再应用 → vto_verify 门禁 → vto_report 更新缺陷台账。需要撤销时用 vto_rollback。
三个技能分别覆盖日常编译、修复目录与 VTO 循环,模型可按任务选用;不依赖技能服务时,10 个工具仍可注册使用。
适用场景与注意¶
适合谁
- 在 DSH 里写学位论文、会议投稿 LaTeX,希望「编译通过」之后还能系统化查版面缺陷的智能体工作流。
- 本机以 Windows + MiKTeX 为主、希望页图与编译都走本地、默认不上传 PDF 的场景。
需要注意
- 以 MiKTeX 为设计中心;其他 TeX 发行版未在已抓取资料中作为一等公民描述。
- 不要假设「npm 包里的
skills/会被 DSH 自动发现」——本插件通过注册解决该问题。 - 升级可再次运行
node tools/install.mjs后node tools/doctor.mjs;卸载需改$DSH_HOME/profiles/<名字>/package.json中的依赖与dsh.profile.bundles,并删除安装副本(默认$DSH_HOME为~/.dsh)。
结尾¶
dsh-latex-studio 把 MiKTeX 编译、日志与本地页图、18 类视觉缺陷诊断、受限修复和缺陷台账绑进 DSH 的 10 个工具与 3 个技能,适合需要「能编且能看版」的 LaTeX 智能体流程。进一步了解请访问 SkillHub 目录页 与 GitHub 仓库(维护与排错见 docs/DEVELOPMENT.md)。