Overleaf leaflink sync
Sync a LaTeX project to an Overleaf project with LeafLink when the user wants to avoid Overleaf Git, browser login, or manual zip upload. Use when setting up or running a LeafLink-based Overleaf sync workflow, including conda environment setup, browser login, clone/pull/push, dry-run checks, or packaging a clean Overleaf source tree from an existing manuscript repo.From its SKILL.md
npx -y skills add MuQY1818/overleaf-leaflink-syncAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.4 KB, 458 tokens by cl100k_base, as published. Nobody here has run it
Overleaf LeafLink Sync
Use this skill to keep a local LaTeX source tree in sync with Overleaf through LeafLink.
Workflow
- Check the local repository for the clean Overleaf package target.
- Use a dedicated conda environment, never
base. - Install
leaflink[browser,watch]and Chromium if needed. - Login to Overleaf through LeafLink.
- Clone or update the dedicated sync directory.
- Copy only the packaged Overleaf sources into that directory.
- Run
statusandpush --dry-runbefore any real push. - Push only after the dry run looks correct.
Rules
- Keep the repository root as the source of truth.
- Sync only a clean Overleaf package directory, not the full repo.
- Exclude build products, research artifacts, and git metadata.
- Prefer
make overleaf-packagefrom the manuscript repo before syncing. - If browser login or Chromium setup is blocked, stop and report the blocker instead of guessing.
Practical checks
- Confirm
condaenvironment is notbase. - Confirm
output/overleaf_src/exists or can be generated. - Confirm the target Overleaf URL or project id.
- Confirm the sync directory contains only files meant for Overleaf.
- If Playwright browsers were installed outside the default home cache, set or preserve
PLAYWRIGHT_BROWSERS_PATH; common local path:/mnt/data/.cache/ms-playwright.
Reference command shape
Use the repo’s existing package target first:
make overleaf-package
Then run LeafLink in the dedicated sync workspace:
leaflink login --base-url https://www.overleaf.com
leaflink clone https://www.overleaf.com/project/<project-id> <sync-dir>
leaflink status
leaflink push --dry-run
leaflink push
Failure handling
- If the user has not logged in yet, ask them to complete the browser login.
- If LeafLink cannot resolve the project or remote tree, fall back to a clean package plus manual upload path.
- If the sync scope is unclear, default to the smallest Overleaf-safe source set.
What ships with it: 8 files
908.5 KB alongside SKILL.md, 1 of them executable
agents/
- openai.yaml215 B
scripts/
- leaflink_overleaf_sync.pyruns4.7 KB
- .gitignore140 B
- LICENSE623 B
- README.md4.9 KB
- skills.sh.json335 B