用途:通过 CLI 访问 Overleaf 项目,用于读取/写入 LaTeX 文件、将本地 .tex 同步到 Overleaf、下载项目以及管理 Overleaf 项目结构。触发场景包括 Overleaf、LaTeX 同步或向 Overleaf 上传 tex 文件。
主要能力:列出项目与项目内文件、读取文件内容、写入文件、创建目录、删除文件或文件夹、将项目下载为 zip。支持自托管 Overleaf,可通过环境变量 PYOVERLEAF_HOST 或 --host 参数指定主机。
使用方式:需要 Python 3.8+ 和 pyoverleaf(pipx install pyoverleaf),用户需在 Chrome/Firefox 中登录 Overleaf。首次运行需授予钥匙串访问权限(macOS 提示选择 Always Allow)。常用命令:pyoverleaf ls;pyoverleaf ls "Project Name";pyoverleaf read "Project Name/main.tex";cat local.tex | pyoverleaf write "Project Name/main.tex";pyoverleaf mkdir "Project Name/figures";pyoverleaf rm "Project Name/old-draft.tex";pyoverleaf download-project "Project Name" output.zip。上传推荐使用 Python API(api.login_from_browser()、api.get_projects()、api.project_upload_file()),因为 CLI write 存在 websocket 问题。
适用场景:论文 LaTeX 文件的本地与 Overleaf 双向同步、下载项目备份、批量管理项目文件结构。
限制:代理无法替用户登录,浏览器认证必须由用户完成;pyoverleaf 需要钥匙串访问权限以读取浏览器 Cookie;CLI write 有 websocket 问题,上传建议改用 Python API;默认主机 overleaf.com 可能因 301 重定向导致 websocket 报错,可设置 PYOVERLEAF_HOST=www.overleaf.com 修复;项目名区分大小写;用户可能没有编辑权限。推送规则要求不得自行推送到 Overleaf,推送需明确授权且每次授权只能推一次。