agentsclimarketplace

Arxiv prep

Skill SeidSmatti/misc-CC-Plugins/plugins/academic-latex/skills/arxiv-prep

Personal multi usage Claude Code plugins/skills marketplace

Install
npx -y skills add SeidSmatti/misc-CC-Plugins --skill arxiv-prep

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 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.

What its author says it does

Copied from the file, not written here

Prepares an arXiv-ready submission archive — flattens multi-file documents with latexpand, includes the matching .bbl (arXiv runs latex but not biber/bibtex), verifies figure formats are PDF/PNG/JPG, strips macOS/Windows cruft, and produces a compact .tar.gz. Use when the user mentions arXiv submission, "submit to arxiv", "preprint server", "arxiv-ready", or asks to bundle a paper. Cites arxiv.org/help/submit_tex.html as the source of truth.

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

6.4 KB, as published. Nobody here has run it

arxiv-prep — bundle a paper for arXiv submission

arXiv runs latex (with TeX Live) on uploaded sources to produce the PDF. It does NOT run biber or bibtex. This is the single most-violated rule. The submission must include a pre-generated .bbl for the bibliography to render.

Sources of truth: https://info.arxiv.org/help/submit_tex.html, https://info.arxiv.org/help/faq/index.html.

Pre-flight checks

Before bundling, verify:

CheckHow
Document compiles cleanly locallyInvoke /academic-latex:compile, fail-fast on errors
Bibliography produces a .bbl (biblatex+biber OR natbib+bibtex)ls main.bbl
All \includegraphics figures are PDF/PNG/JPGgrep -nE '\\includegraphics' main.tex and check file extensions
No .eps figures (unless using DVI mode — uncommon)find . -name '*.eps'
No absolute paths to figuresgrep '\\includegraphics' main.tex | grep '/'
No system-specific includes (\input{/Users/...})grep -E '\\input\{/' main.tex

If any check fails, stop and surface to the user.

Step 1 — Flatten

Multi-file documents (\input{chapter1.tex}, \include{...}, etc.) work on arXiv but are easier to debug when flat. Flatten with latexpand:

latexpand --empty-comments main.tex > arxiv/main.tex

--empty-comments strips comments, keeping line numbers — this prevents minor source-format quirks from confusing arXiv's auto-detection.

Source: https://ctan.org/pkg/latexpand.

If the document has a custom class (mybook.cls) or style (mystyle.sty) bundled locally, copy them to the arxiv directory unchanged — arXiv ignores .tex/.cls/.sty distinction and reads everything from the archive root.

Step 2 — Bundle .bbl

cp main.bbl arxiv/main.bbl

The .bbl filename basename must match the main .tex basename. Don't include the .bib (arXiv stores it but doesn't use it; it's bytes you pay for).

If you used biblatex+biber, regenerate the .bbl from the LATEST tex/biber run before copying — a stale .bbl produces a wrong bibliography. Latexmk's last .bbl is what you want; check timestamps:

ls -la main.bbl main.tex                       # bbl should be newer or equal-time

Note: arXiv supports current bbl formats. As of 2026-05, TeX Live 2025 (default at arXiv) produces bbl format 3.3; TL 2023 produced 3.2 — both supported. If you used a much older biber, regenerate.

Step 3 — Copy figures

mkdir -p arxiv/figures
cp -r figures/*.{pdf,png,jpg,jpeg} arxiv/figures/ 2>/dev/null

Strip files arXiv doesn't need:

  • .tex.bak, *.aux, *.log, *.out, *.synctex.gz, *.fls, *.fdb_latexmk
  • .DS_Store, __MACOSX/, Thumbs.db
  • .git/, .svn/, .hg/
  • Source files for figures that aren't \includegraphics-d
find arxiv -name '*.aux' -delete
find arxiv -name '*.log' -delete
find arxiv -name '*.out' -delete
find arxiv -name '*.synctex.gz' -delete
find arxiv -name '*.fls' -delete
find arxiv -name '*.fdb_latexmk' -delete
find arxiv -name '.DS_Store' -delete
find arxiv -name 'Thumbs.db' -delete
find arxiv -type d -name '__MACOSX' -exec rm -rf {} +
find arxiv -type d -name '.git' -exec rm -rf {} +

Step 4 — Sanity test the bundle

Recompile from inside the bundle directory:

cd arxiv
latexmk -pdf -interaction=nonstopmode main.tex

If the compile fails — fix and re-bundle. arXiv will hit the same failure.

Visually verify the produced PDF matches the original (run /academic-latex:verify-visual with the original PDF as reference).

Step 5 — Pack

tar czf submission.tar.gz -C arxiv .
ls -lah submission.tar.gz

arXiv's upload size limit is generous (50MB usually) but smaller is better. If the archive is large, the figure files are usually the cause:

du -h arxiv/figures/* | sort -h | tail

Re-render large figures at a more reasonable DPI, or convert PNG to JPG where lossy is acceptable.

.arxivignore-style cleanup (Google's arxiv-latex-cleaner)

For an automated cleanup, Google ships a tool that handles many edge cases:

pip install arxiv-latex-cleaner
arxiv-latex-cleaner ./paper                  # produces ./paper_arXiv/

It strips comments, handles included figures, removes auxiliary files, and (optionally) shrinks figures. Useful when the project has many ad-hoc files.

Source: https://github.com/google-research/arxiv-latex-cleaner.

Common rejection reasons

SymptomCauseFix
"Bibliography did not produce"No bundled .bbl or .bbl basename mismatchBundle .bbl with matching basename
"Figure file not found"Wrong path or wrong extension after bundlingUse relative paths; ensure figures are .pdf/.png/.jpg
"Compilation timed out"Pathological TikZ figuresExternalize TikZ figures locally and submit pre-rendered PDFs
"Too many files"Submitting cache/aux directoriesStrip *.aux, *.log, etc. (see Step 3)
"Wrong main file"arXiv guesses wrongRename main file ms.tex or put it FIRST in the archive

Post-submission

arXiv requires the same kind of single-file-or-bundle approach for replacement versions. Save the working arxiv/ directory; for a v2, edit and re-bundle.

When uncertain

For arXiv-specific edge cases (long compile times, special encodings, journal-cross-listing), delegate to /academic-latex:docs-lookup to fetch the relevant section of info.arxiv.org/help. Don't guess.

Last verified

2026-05-09 — arxiv.org/help/submit_tex.html, arxiv-latex-cleaner repo, latexpand on CTAN.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.