overleaf-sync

overleaf-sync is a skill for Claude Code from wanshuiyin/Auto-claude-code-research-in-sleep. It costs 97 tokens per session (2,840 once invoked), scanned B, original, MIT.

A two-way connection between a local paper folder and Overleaf, a web-based LaTeX editor for writing research papers. It lets you move changes between the local files and the shared Overleaf project.

In plain words
What is it for?
Use it to push a local paper to Overleaf, pull collaborators’ edits back, compare versions, and run local paper audits on the shared draft. The Overleaf Git connection requires a Premium account and one-time manual authentication.
Why use it?
It removes the need to choose between local automated paper checks and collaborative editing in a browser. It also lets you review changes from collaborators before continuing local work.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter.

Good fit Use it to push a local paper to Overleaf, pull collaborators’ edits back, compare versions, and run local paper audits on the shared draft. The Overleaf Git connection requires a Premium account and one-time manual authentication.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/wanshuiyin/auto-claude-code-research-in-sleep/overleaf-sync
About the project

ARIS is a collection of Markdown-based skills that define a workflow for autonomous machine-learning research, including idea discovery, experiment automation, and review loops. Researchers and AI coding agents use it across tools such as Claude Code, Codex, Cursor, and OpenClaw without depending on a single framework. The catalogue entries are ARIS workflow skills and agents.

wanshuiyin/Auto-claude-code-research-in-sleep · 15,970 stars · on GitHub

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill overleaf-sync
Clone the repo
git clone --depth 1 https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for overleaf-sync

README.md
[![agentmods](https://agentmods.dev/badge/skills/wanshuiyin/auto-claude-code-research-in-sleep/overleaf-sync/github.svg)](https://agentmods.dev/skills/wanshuiyin/auto-claude-code-research-in-sleep/overleaf-sync)
Your own site
<a href="https://agentmods.dev/skills/wanshuiyin/auto-claude-code-research-in-sleep/overleaf-sync"><img src="https://agentmods.dev/badge/skills/wanshuiyin/auto-claude-code-research-in-sleep/overleaf-sync/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for overleaf-sync

Your own site · 80×15
<a href="https://agentmods.dev/skills/wanshuiyin/auto-claude-code-research-in-sleep/overleaf-sync"><img src="https://agentmods.dev/badge/skills/wanshuiyin/auto-claude-code-research-in-sleep/overleaf-sync.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 97 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,840 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 1 finding. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 4 findings, up to high

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • high Privilege Escalation · line 27
    Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
    Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
  • high Tool Misuse · line 177
    Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
    Fix: Validate all tool parameters against an allowlist. Reject dangerous parameter values (shell=True, --force, -rf /) and use safe defaults.
  • high Tool Misuse · line 177
    Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
    Fix: Validate all tool parameters against an allowlist. Reject dangerous parameter values (shell=True, --force, -rf /) and use safe defaults.
  • high Privilege Escalation · line 196
    Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
    Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00097 $0.02840
Opus 5 $0.00048 $0.01420
Sonnet 5 $0.00019 $0.00568
Haiku 4.5 $0.00010 $0.00284

Measured 11d ago against content hash 15644b418d9d, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade B, and why

overleaf-sync scanned grade B with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Reaches for credential filesmediumPrivilege escalation

SSH keys, cloud credentials, git-credentials, .npmrc, /etc/shadow: reading these is how a config file becomes a credential leak.

- **Never** write a token to a file (`.env`, `.netrc`, `tools/*.sh`, etc.) committed to any repo.

Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.

Origin

Copies of this mod

1 near-identical copy found in the catalogue:

skills/overleaf-sync/SKILL.md · 221 lines

How it starts

The opening of the file, as written. The whole thing — 221 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Overleaf Sync

Bridge a local paper directory with an Overleaf project so that:

  • You can keep editing in the Overleaf web UI (or share editing access with collaborators)
  • ARIS can read your changes, run audits (/paper-claim-audit, /citation-audit, /auto-paper-improvement-loop), and push fixes back

This uses the official Overleaf Git bridge (Premium feature). The agent never sees your authentication token — you do the one-time auth manually so the token lives in macOS Keychain, not in chat history or .git/config.

When to Use This Skill

  • You want to use Overleaf as the editing surface (better collaboration, shared with team) but still run ARIS pipelines locally
  • You want to take an existing local ARIS paper and push it to Overleaf for a co-author to edit
  • A collaborator made changes in Overleaf and you want to pull + diff them before continuing local work

Constants

  • CLONE_DIR_DEFAULT = paper-overleaf (sibling of existing paper/, NOT inside paper/)
  • CREDENTIAL_HELPER = osxkeychain (macOS) / manager (Windows) / cache (Linux fallback)
  • TOKEN_HANDLING = NEVER write token to disk, env var, or chat. User pastes it once into the terminal credential prompt; the OS keychain stores it from then on.

Architecture

┌─────────────────┐       git pull/push      ┌─────────────────┐
│  Local paper/   │ ◄─── rsync ──── ►       │ paper-overleaf/ │ ◄──► Overleaf web
│  (ARIS audits)  │                          │ (git bridge)    │     (collaborators)
└─────────────────┘                          └─────────────────┘

The paper-overleaf/ directory is a git clone of the Overleaf project. The paper/ directory is the working copy where ARIS skills run. They are kept in sync via rsync.

Single-source-of-truth rule: at any given time, treat one of them as authoritative for active editing. Switch directions explicitly with pull or push, and run a status check before either to surface unexpected divergence.

Read the full file on GitHub · 221 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 11d ago First seen · 221 lines · 97 tokens per session scan B 15644b418d9d

Subscribe to this mod's changes

overleaf-sync is a skill published in the GitHub repository wanshuiyin/Auto-claude-code-research-in-sleep (15,970 stars, last pushed yesterday), licensed MIT. It adds 97 tokens to every session and 2,840 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it B with 1 finding (reaches for credential files). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

paper-figures

Extract figures from downloaded papers and include them in survey/review reports. Use when the report covers other groups' work and benefits from their architecture diagrams, experimental plots, or system schematics. Your brain prompt supplies the absolute path to the extract-figures script as {{EXTRACTFIGURES}} — use…

Muuuun/luxas · 79 tokens

google_workspace

Google Workspace via gog CLI — Gmail, Calendar, Drive, Contacts, Sheets, and Docs. Use when: the user asks to send/search Gmail, check calendar, manage Drive files, read or edit Sheets, export Docs, or look up contacts. NOT for: Google Cloud APIs, Firebase, or services outside Workspace.

ericwang915/PythonClaw · 67 tokens

notion

Notion API for creating and managing pages, databases, and blocks. Use when: user asks to create a Notion page, query a database, search notes, add content to Notion, or manage Notion workspace items. NOT for: local file editing (use readfile/writefile), Obsidian vaults (use obsidian skill), or real-time collaboration.

ericwang915/PythonClaw · 78 tokens

obsidian

Work with Obsidian vaults (plain Markdown notes). Use when: user asks to search notes, create notes, move/rename notes, or manage their Obsidian vault. NOT for: Notion pages (use notion skill), non-Markdown files, or Obsidian plugin configuration.

ericwang915/PythonClaw · 63 tokens

csv_analyzer

Analyze CSV and Excel files — statistics, filtering, grouping, and data previews. Use when: user asks to read, analyze, query, summarize, or explore tabular data in CSV, TSV, or Excel files. NOT for: database queries, writing new files, or non-tabular formats.

ericwang915/PythonClaw · 64 tokens

pdf_convert

Convert between PDF and image formats. Use when: user asks to convert PDF pages to images (PNG/JPEG) or combine images into a PDF. NOT for: text extraction (use pdfreader), PDF editing, or document format conversion (DOCX/HTML).

ericwang915/PythonClaw · 56 tokens