Sync Tex
Documentssync-texSync Tex is an Agent Skill for documents published in the brycewang-stanford/Auto-Empirical-Research-Skills repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.
Transfers prose edits from latex/index.tex (Overleaf) back into index.qmd. Use after pulling LaTeX edits from a collaborator.
How to use this skill
Bring this guide into your coding agent with a prompt tailored to the tool you use.
- Open your project in Codex.
- Copy and paste the prompt below.
- Review files and risks before approving any action.
Inspect the Agent Skill at https://github.com/brycewang-stanford/Auto-Empirical-Research-Skills/blob/HEAD/skills/29-quarcs-lab-project20XXy/dot-claude/skills/sync-tex/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/sync-tex, but wait for my approval before writing files or running scripts.
Copying this prompt does not install or run the skill. Review third-party files before use.
Sync LaTeX Edits to QMD
Transfer prose changes made by collaborators in latex/index.tex (e.g., via Overleaf) back into index.qmd.
Prerequisites
latex/.baseline.texmust exist (auto-created bybash scripts/render.sh)latex/index.texmust contain collaborator edits (pulled from Overleaf / GitHub)
Steps
-
Read these three files:
latex/.baseline.tex— the LaTeX snapshot from the last render (before edits)latex/index.tex— the LaTeX after collaborator editsindex.qmd— the current QMD manuscript source
-
Compare
latex/.baseline.texvslatex/index.texto identify changes. Focus on the document body only (everything between\begin{document}and\end{document}). Ignore the preamble (lines before\begin{document}) — these are auto-generated by Quarto. -
For each section (identified by
\section{...}\label{...}and\subsection{...}\label{...}markers), check if the prose text changed between baseline and modified. -
For each changed section, apply the edits to the corresponding section in
index.qmd:- Convert LaTeX formatting to QMD equivalents:
\textbf{...}→**...**\textit{...}or\emph{...}→*...*\href{url}{text}→[text](url)Section~\ref{sec-id}→@sec-idFigure~\ref{fig-id}→@fig-idTable~\ref{tbl-id}→@tbl-id\cite{key}or\citep{key}→[@key]\citet{key}→@key- Footnotes:
\footnote{...}→^[...]
- CRITICAL: Preserve all
{{< embed >}}shortcodes exactly as they are in the QMD. Do NOT replace them with\includegraphics,\begin{figure},\begin{longtable}, or any LaTeX equivalents. These shortcodes pull live outputs from notebooks and must remain intact. - If a collaborator edited a figure/table caption in LaTeX (
\caption{...}), note the change in the summary report but do NOT modify the embed shortcodes — captions are defined in the notebook source cells.
- Convert LaTeX formatting to QMD equivalents:
-
After applying all changes, show a summary:
- List each section that was modified
- For each, show a brief description of what changed (e.g., "Added two sentences to Introduction", "Rewrote paragraph 2 in Methods")
- Note any changes that could NOT be transferred (e.g., caption edits, preamble changes, new LaTeX packages)
-
Render the manuscript with
bash scripts/render.shto verify the round-trip is clean (no warnings, no errors).
Error handling
- If
latex/.baseline.texdoes not exist, tell the user to run/project:renderfirst. - If
latex/.baseline.texandlatex/index.texare identical, report "No changes detected" and stop. - If a section label in the LaTeX does not match any section in
index.qmd, flag it and skip.