Overleaf

📄 CLI 云端 LaTeX 协作管理器

通过浏览器 Cookie 认证,CLI 管理 Overleaf 项目,支持 LaTeX 文件读写、同步与协作邀请处理

收藏
11.2k
安装
2.4k
版本
1.2.0
CLS 安全性认证2026-08-03
点击查看完整报告 >

使用说明

核心用法

pyoverleaf 是一款基于浏览器 Cookie 认证的命令行工具,允许用户直接在终端与 Overleaf 云端 LaTeX 项目交互。其工作流程分为三步:用户在 Chrome/Firefox 登录 Overleaf → 首次运行时授权钥匙串访问 → 通过 CLI 或 Python API 执行文件操作。主要功能包括:

  • 项目浏览pyoverleaf ls 列出所有可访问项目
  • 文件读写read/write 直接操作 .tex 文件,download-project 批量打包下载
  • 目录管理mkdir/rm 维护项目结构
  • 邀请处理:Python API 可程序化接受项目协作邀请,无需手动点击邮件链接
  • 私有化部署:通过 PYOVERLEAF_HOST 环境变量支持自托管 Overleaf 实例

显著优点

1. 无缝集成本地工作流:直接将本地编辑的 LaTeX 文件推送至云端,保留 Overleaf 的版本历史,便于追溯和回滚
2. 免密码认证:复用浏览器登录状态,无需配置 API token 或管理额外凭证

3. 程序化协作:自动处理项目邀请,适合团队批量管理多个协作项目

4. 代码可审计:v0.1.7 版本经安全审计,代码库精简透明,用户可自行审查

潜在局限与风险

  • 平台依赖:仅支持 Chrome/Firefox 的 Cookie 存储,Safari 或 headless 环境需额外配置
  • 钥匙串权限争议:macOS 需授予"始终允许"钥匙串访问,涉及浏览器 Cookie 的敏感读取权限
  • CLI 写入稳定性write 命令存在 WebSocket 重定向 bug,生产环境建议使用 Python API 直接覆盖
  • 权限边界模糊:工具获得的是用户完整的浏览器 Cookie 上下文,理论上可访问同浏览器会话中的其他服务
  • 版本锁定风险:审计仅覆盖 v0.1.7,后续版本需用户自行验证

适合人群

  • 学术研究者:需要在本地 IDE 与 Overleaf 间频繁同步 LaTeX 手稿
  • 技术文档团队:管理多个协作项目,批量处理成员邀请
  • DevOps 工程师:将 Overleaf 集成至 CI/CD 流程,自动化文档构建与发布

常规风险

| 风险类型 | 说明 | 缓释措施 |
|---------|------|---------|
| 凭证泄露 | Cookie 被盗用可导致 Overleaf 账户完全失控 | 仅在受信任设备使用,避免共享浏览器配置文件 |
| 数据丢失 | `write` 直接覆盖云端文件,无本地确认环节 | 优先使用 API 上传以保留历史版本,操作前执行 `download-project` 备份 |
| 供应链攻击 | pipx 安装的包可能被篡改 | 校验 GitHub 源码哈希,审计后锁定版本 |
| 隐私泄露 | 钥匙串访问可能暴露其他站点 Cookie | 使用专用浏览器配置文件隔离 Overleaf 会话 |

安全解读

核心用法

Overleaf Skill 是一款面向科研人员与学术写作者的 CLI 工具集成方案,通过浏览器 Cookie 认证实现本地环境与 Overleaf 云端 LaTeX 项目的无缝交互。其核心功能覆盖四大工作流:

项目浏览与文件操作:使用 pyoverleaf ls 列出云端项目,支持精确读取 (read)、写入 (write)、目录创建 (mkdir) 及文件删除 (rm) 等操作,命令结构清晰直观。

本地-云端双向同步:既可将 Overleaf 项目打包下载为 ZIP 解压至本地,也能通过 Python API 将本地 .tex 文件直接覆盖上传至云端。后者特别采用直接写入模式,完整保留 Overleaf 的版本历史记录,用户可随时回溯或撤销修改。

项目邀请自动化:无需手动点击邮件链接,通过调用 /notifications API 获取待处理邀请,提取 CSRF Token 后自动完成接受流程,大幅提升团队协作效率。

企业私有化部署支持:通过 PYOVERLEAF_HOST 环境变量或 --host 参数,可灵活对接自托管 Overleaf 实例,满足机构数据合规需求。

显著优点

学术生态深度整合:直接对接 Overleaf 这一全球广泛使用的学术写作平台,无需改变用户既有工作流即可实现 AI 辅助增强。

版本历史无损保留:区别于简单的文件替换,Python API 上传方式确保每次修改都被记录在 Overleaf 的 Git 版本库中,符合学术出版对可追溯性的严格要求。

安全审计透明可验:SKILL.md 明确披露安全依赖关系,并提供 pyoverleaf v0.1.7 的审计结论,用户可自行复核开源代码,信任建立过程清晰。

权限边界清晰可控:采用浏览器 Cookie 认证而非账号密码,用户始终掌握登录状态的主动权;macOS Keychain 访问需用户显式授权"Always Allow",符合最小权限原则。

潜在缺点与局限性

依赖外部工具链:需独立安装 Python 3.8+ 及 pyoverleaf CLI,且版本未锁定可能导致行为不一致,对技术门槛较低的用户存在配置负担。

平台兼容限制:当前仅支持 Chrome/Firefox 浏览器 Cookie 读取,Safari 或其他浏览器用户需切换环境;Windows 平台的 Keychain 等效机制文档说明不足。

网络与认证脆弱性:WebSocket 连接对 301 重定向敏感,需手动设置 PYOVERLEAF_HOST=www.overleaf.com 规避;Cookie 过期后需用户重新登录浏览器刷新,Agent 无法自主恢复。

上传功能稳定性缺陷:CLI 的 write 命令存在 WebSocket 已知问题,推荐转向 Python API 实现可靠上传,增加了使用复杂度。

适合的目标群体

  • 高校科研人员:需要频繁在本地编辑器(如 VS Code)与 Overleaf 云端环境间切换的 LaTeX 用户
  • 学术团队协作组:涉及多人共同编辑、频繁接受项目邀请的课题组或论文合著者
  • 技术写作者:偏好命令行工作流、具备基础 Python/Shell 能力的开发者型用户
  • 机构 IT 管理员:部署私有化 Overleaf 且需要自动化文档管理的企业用户

使用风险提醒

供应链风险:pyoverleaf 为个人开发者维护的 T3 级开源项目(50-100 stars),虽经 v0.1.7 版本审计,但后续更新需持续关注安全动态。

权限过度授予:macOS Keychain "Always Allow" 授权具有持久性,用户应理解该权限允许工具持续读取浏览器敏感 Cookie 数据。

数据同步冲突:直接覆盖上传可能覆盖协作者的并发修改,建议在重要操作前通过 download-project 创建本地备份。

网络中断影响:Overleaf 官方服务可用性直接影响功能正常使用,离线场景下完全无法操作云端项目。

Overleaf 内容

scripts文件夹
手动下载zip · 5.2 kB
sync-to-overleaf.shtext/x-shellscript
请选择文件