SuperAPI AI 工具集

overleaf-comment

写作与研究

查看项目

更新于 10-16 01:29

技能介绍

用途:从 JSON 计划批量发布 Overleaf 评论,每条评论通过一次 CDP eval 提交,复用用户已登录的浏览器会话(依赖 chrome-cdp 技能)。约 5 条以上评论才划算,更少时建议直接在 Overleaf 中输入。

前提:已安装 chrome-cdp 技能(包装脚本会自动发现 cdp.mjs,或设置 $CDP_BIN);Brave/Chrome 以 --remote-debugging-port=9222 运行;该浏览器中已打开 Overleaf 项目标签页、已登录且有评论权限。

用法:先列出项目标签页:${CLAUDE_PLUGIN_ROOT}/skills/overleaf-comment/overleaf-comment --list;再发布计划(目标前缀来自 cdp list):${CLAUDE_PLUGIN_ROOT}/skills/overleaf-comment/overleaf-comment 6172EEAA plan.json;也可直接提供项目 URL:${CLAUDE_PLUGIN_ROOT}/skills/overleaf-comment/overleaf-comment --url https://www.overleaf.com/project/ plan.json。自托管 Overleaf 设置 OVERLEAF_HOSTS="overleaf.example.com"(多个用空格分隔)。

计划格式:JSON 数组,元素为 {file, line, text}。file 按 basename 匹配 Overleaf 文件树(含 / 时按路径后缀匹配);line 从 1 开始,空行无法评论;text 为评论正文,可用 \n 表示多行。

输出:逐条结果输出到 stdout,摘要、身份预检和 FAIL 诊断输出到 stderr。退出码:0 全部成功;1 至少一项失败或跳过;2 用法/校验错误;75 临时失败(后台标签页、"Out of sync" 弹窗,修复后重跑)。若有失败或跳过,会写出 <plan>.residual.json 仅含这些条目,可用 overleaf-comment <target> <plan>.residual.json 重试。

限制:每条仅一个顶层线程,不支持回复/嵌套;仅支持单行锚点,不支持多行范围;需要英文界面,非英文区域会在预检时警告;绑定 Overleaf 当前 React UI,选择器和字符串集中在 page-helpers.js 顶部便于改版后重定向;以标签页登录账号发布,运行前会打印 posting as Overleaf account: <email> 供核对;运行期间不要在 Overleaf 编辑器中输入或点击。

文件类型支持:可评论 Overleaf 用 CodeMirror 渲染的任何文件,包括 .tex、.bib、.bst、.cls、.sty。技能自动选择两条路径:工具栏路径(用于 .tex,选中行并点击静态 "Add comment" 按钮);弹出层路径(用于其他文件,如 .bib,Overleaf 对非 tex 模式隐藏工具栏按钮,但会在受信任的 PointerEvent 选择上挂载浮动添加评论弹出层,包装脚本通过 CDP Input.dispatchMouseEvent 合成真实鼠标拖拽触发弹出层再点击)。工具栏按钮不存在时自动回退,无需修改计划。