Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Organize messy conference LaTeX template .zip files into clean Overleaf-ready structure. Use when the user asks to "organize LaTeX template", "clean up .zip template", or "prepare Overleaf submission template".
.claude/skills/brycewang-stanford-latex-conference-template-organizer/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-10 | ✗→✓ | ▲ Improved | 131% | 0% |
| case-01 | ✗→✓ | ▲ Improved | 31% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 195% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 145% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 120% | 0% |
Transform messy conference LaTeX template .zip files into clean, Overleaf-ready submission templates. Official conference templates often contain excessive example content, instructional comments, and disorganized file structures. This skill converts them into templates ready for writing.
Analyze-then-confirm mode: First analyze issues and present them to the user, then execute cleanup after confirmation.
Receive .zip file
↓
1. Extract and analyze file structure
↓
2. Identify main file and dependencies
↓
3. Diagnose issues (present to user)
↓
4. Ask for conference info (link/name)
↓
5. Wait for user confirmation of cleanup plan
↓
6. Execute cleanup, create output directory
↓
7. Generate README (with official website info)
↓
8. Output completeExtract .zip to a temporary directory:
bashunzip -q template.zip -d /tmp/latex-template-temp cd /tmp/latex-template-temp find . -type f -name "*.tex" -o -name "*.sty" -o -name "*.cls" -o -name "*.bib"
| File Type | Purpose | |-----------|---------| | .tex | LaTeX source files | | .sty / .cls | Style files | | .bib | Bibliography database | | .pdf / .png / .jpg | Image files |
Common main file names:
main.texpaper.texdocument.texsample-sigconf.textemplate.texIdentification methods:
\documentclassbash# Find files containing \documentclass grep -l "\\documentclass" *.tex
Present discovered issues to the user:
Detect the following patterns and flag for cleanup:
sample, example, demo, testsample, example, template, delete this.sty/.cls files missingAsk the user for the following information:
markdownPlease provide the following information (optional): 1. **Conference submission link** (recommended): Used to extract official submission requirements 2. **Conference name**: If no link available 3. **Other special requirements**: Such as page limits, anonymity requirements, etc.
Present the cleanup plan to the user and wait for confirmation:
markdown## Cleanup Plan ### Issues Found - [List diagnosed issues] ### Cleanup Approach 1. Main file: main.tex (clean example content) 2. Section separation: text/ directory 3. Resource directories: figures/, tables/, styles/ ### Output Structure [Show output directory structure] Confirm execution? [Y/n]
bashmkdir -p output/{text,figures,tables,styles}
Keep:
\documentclass declarationRemove:
Add:
\input{text/XX-section}Example main.tex structure (ACM template standard format):
latex\documentclass[...]{...} % Keep original template document class % Required packages (keep original template package declarations) %% ============================================================================ %% Preamble: Before \begin{document} %% ============================================================================ %% Title and author information \title{Your Paper Title} \author{Author Name} \affiliation{...} %% Abstract (in preamble, before \maketitle) \begin{abstract} % TODO: Write abstract content \end{abstract} %% CCS Concepts and Keywords (in preamble) \begin{CCSXML} <ccs2012> <concept> <concept_id>10010405.10010444.10010447</concept_id> <concept_desc>Applied computing~...</concept_desc> <concept_significance>500</concept_significance> </concept> </ccs2012> \end{CCSXML} \ccsdesc[500]{Applied computing~...} \keywords{keyword1, keyword2, keyword3} %% ============================================================================ %% Document Body %% ============================================================================ \begin{document} \maketitle %% Section content (imported from text/) \input{text/01-introduction} \input{text/02-related-work} \input{text/03-method} \input{text/04-experiments} \input{text/05-conclusion} \bibliographystyle{...} \bibliography{references} \end{document}
For KDD 2026 (using ACM acmart template), add the nonacm option to the document class to remove footnotes:
latex%% ============================================================================ %% Document Class - KDD 2026 Anonymous Submission Configuration %% Submission version: \documentclass[sigconf,anonymous,review,nonacm]{acmart} %% Camera-ready: \documentclass[sigconf]{acmart} %% ============================================================================ \documentclass[sigconf,anonymous,review,nonacm]{acmart} %% ============================================================================ %% Disable ACM metadata (submission version only) %% ============================================================================ \settopmatter{printacmref=false} % Disable ACM Reference Format \setcopyright{none} % Disable copyright notice \acmConference[]{}{}{} % Clear conference info (removes footnote) \acmYear{} % Clear year \acmISBN{} % Clear ISBN \acmDOI{} % Clear DOI %% Content to restore for camera-ready version: %% \acmConference[KDD '26]{Proceedings of the 30th ACM SIGKDD Conference on Knowledge Discovery and Data Mining}{August 09--13, 2026}{Jeju, Korea} %% \acmISBN{978-1-4503-XXXX-X/26/08} %% \acmDOI{10.1145/nnnnnnn.nnnnnnn}
Create independent .tex files for each section, containing only section content without \begin{document} etc.:
text/01-introduction.tex:
latex\section{Introduction} % TODO: Write introduction content
text/02-related-work.tex:
latex\section{Related Work} % TODO: Write related work content
text/03-method.tex:
latex\section{Method} % TODO: Write method content
text/04-experiments.tex:
latex\section{Experiments} % TODO: Write experiments content
text/05-conclusion.tex:
latex\section{Conclusion} % TODO: Write conclusion content
Important notes:
\begin{document}), after \maketitle\section{...}\begin{document} or other wrappers in text/ filesCopy all .sty and .cls files from the original template to styles/:
bashfind /tmp/latex-template-temp -type f \( -name "*.sty" -o -name "*.cls" \) -exec cp {} output/styles/ \;
Note: Maintain the original template's directory structure (e.g., acmart/), only move to styles/.
bash# Copy image files find /tmp/latex-template-temp -type f \( -name "*.png" -o -name "*.jpg" -o -name "*.jpeg" -o -name "*.pdf" \) -exec cp {} output/figures/ \; # Copy table files (if any) find /tmp/latex-template-temp -type f -name "*.tex" | grep -i table | while read f; do cp "$f" output/tables/; done
Important: Overleaf automatically deletes empty directories. To prevent the tables/ directory from being deleted, create an example table file:
bash# Create example table file cat > output/tables/example-table.tex << 'EOF' % Example table file % Can be deleted or replaced with your own tables \begin{table}[h] \centering \caption{Example Table} \label{tab:example} \begin{tabular}{lccc} \toprule Method & Metric 1 & Metric 2 & Metric 3 \\ \midrule Baseline & 85.3 & 12.4 & 0.92 \\ Method A & 87.1 & 11.8 & 0.95 \\ \textbf{Ours} & \textbf{89.4} & \textbf{10.2} & \textbf{0.97} \\ \bottomrule \end{tabular} \end{table} EOF
Notes:
\input{tables/example-table.tex} or copy table content directly into section filesbash# Copy .bib files find /tmp/latex-template-temp -type f -name "*.bib" -exec cp {} output/ \;
\documentclassmarkdown# [Conference Name] Submission Template ## Template Information - **Conference**: [Conference name] - **Website**: [Conference link] - **Template version**: [From template or website] - **Document class**: [Extracted documentclass] ## Submission Requirements ### Page and Format - **Page limit**: [From website or template] - **Two-column/Single-column**: [Detect layout] - **Font size**: [10pt/11pt etc.] ### Anonymity Requirements - **Blind review required**: [Detect template mode] - **Author information handling**: [Instructions] ### Compilation Requirements - **Recommended compiler**: [XeLaTeX/pdfLaTeX/LuaLaTeX] - **Special package requirements**: [If any] ## Overleaf Usage ### Upload Steps 1. Create a new project on Overleaf 2. Upload the entire `output/` directory 3. Set compiler to [specified compiler] 4. Click Recompile to test ### File Description - `main.tex` - Main file, start here - `text/` - Section content, edit as needed - `figures/` - Place images here - `tables/` - Place tables here - `styles/` - Style files, no modification needed - `references.bib` - Bibliography database ## Common Operations ### Adding Images
\begin{figure}h] \centering \includegraphicswidth=0.8\linewidth]{figures/your-image.pdf} \caption{Image caption} \label{fig:your-label} \end{figure}
### Adding Tables\begin{table}h] \centering \begin{tabular}{|c|c|} \hline Column 1 & Column 2 \\ \hline Content 1 & Content 2 \\ \hline \end{tabular} \caption{Table caption} \label{tab:your-label} \end{table}
### Adding References
Add entries to `references.bib` and cite in text using `\cite{key}`.
## Notes
- [Warnings extracted from template comments]
- [Important notes extracted from website]Use WebFetch to get conference submission page content and extract:
bash# Clean up temporary files rm -rf /tmp/latex-template-temp # Output completion message echo "Template cleanup complete! Output directory: output/" echo "Please upload the output/ directory to Overleaf to test compilation."
| Error Scenario | Handling Approach | |----------------|-------------------| | Main file not found | List all .tex files, let user choose | | Dependency file missing | Warn user, attempt to locate from template directory | | Cannot extract conference info | Use default info from template, mark as To be confirmed] | | Website inaccessible | Fall back to template comments, prompt user to fill in manually | | Extraction failed | Prompt user to check .zip file integrity |
| Conference | Document Class | Notes | |------------|---------------|-------| | KDD (ACM SIGKDD) | acmart | Anonymous submission requires nonacm option to remove footnotes | | ACM Conferences | acmart | Requires anonymous mode \acmReview{anonymous} | | CVPR/ICCV | cvpr | Two-column, strict page limits | | NeurIPS | neurips_2025 | Anonymous review, no page limit | | ICLR | iclr2025_conference | Two-column, requires session info | | AAAI | aaai25 | Two-column, 8 pages + references |
KDD 2026 uses the ACM acmart template and requires special configuration for anonymous submission:
Submission version (remove all ACM metadata footnotes):
latex\documentclass[sigconf,anonymous,review,nonacm]{acmart} \settopmatter{printacmref=false} \setcopyright{none} \acmConference[]{}{}{} \acmYear{} \acmISBN{} \acmDOI{}
Camera-ready version (restore ACM metadata):
latex\documentclass[sigconf]{acmart} \settopmatter{printacmref=true} \setcopyright{acmcopyright} \acmConference[KDD '26]{...}{...}{...} \acmYear{2026} \acmISBN{978-1-4503-XXXX-X/26/08} \acmDOI{10.1145/nnnnnnn.nnnnnnn}
bash# Detect document class grep "\\documentclass" main.tex # Detect anonymous mode grep -i "anonymous\|review\|blind" main.tex # Detect page settings grep "pagelimit\|pageLimit\|page_limit" main.tex
bash# Remove example files rm -f sample-* example-* demo-* test-* # Remove temporary files rm -f *.aux *.log *.out *.bbl *.blg
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-10 | fail→pass | 13,296 | 9,189 | -31% | 1 | 1 | 0% | 2,437 | 5,641 | +131% | 0 | 0 | — |
case-01 | fail→pass | 18,777 | 5,083 | -73% | 1 | 1 | 0% | 3,500 | 4,599 | +31% | 0 | 0 | — |
case-19 | pass→pass | 15,266 | 14,746 | -3% | 1 | 1 | 0% | 3,987 | 7,507 | +88% | 0 | 0 | — |
case-02 | fail→fail | 13,848 | 2,871 | -79% | 1 | 1 | 0% | 3,000 | 4,117 | +37% | 0 | 0 | — |
case-03 | fail→fail | 23,761 | 2,528 | -89% | 1 | 1 | 0% | 4,572 | 4,144 | -9% | 0 | 0 | — |
case-04 | pass→pass | 10,457 | 4,927 | -53% | 1 | 1 | 0% | 1,972 | 4,729 | +140% | 0 | 0 | — |
case-05 | fail→pass | 8,312 | 5,075 | -39% | 1 | 1 | 0% | 1,584 | 4,674 | +195% | 0 | 0 | — |
case-06 | pass→pass | 9,184 | 8,855 | -4% | 1 | 1 | 0% | 1,593 | 4,612 | +190% | 0 | 0 | — |
case-07 | fail→pass | 9,467 | 7,122 | -25% | 1 | 1 | 0% | 2,083 | 5,110 | +145% | 0 | 0 | — |
case-08 | pass→pass | 7,063 | 5,467 | -23% | 1 | 1 | 0% | 1,452 | 4,811 | +231% | 0 | 0 | — |
case-09 | fail→pass | 10,180 | 2,008 | -80% | 1 | 1 | 0% | 1,843 | 4,058 | +120% | 0 | 0 | — |
case-11 | pass→pass | 6,918 | 2,695 | -61% | 1 | 1 | 0% | 1,305 | 4,248 | +226% | 0 | 0 | — |
case-12 | pass→pass | 12,166 | 6,207 | -49% | 1 | 1 | 0% | 2,214 | 4,831 | +118% | 0 | 0 | — |
case-13 | pass→pass | 2,143 | 2,650 | +24% | 1 | 1 | 0% | 354 | 4,214 | +1090% | 0 | 0 | — |
case-14 | fail→pass | 12,205 | 5,325 | -56% | 1 | 1 | 0% | 2,406 | 4,785 | +99% | 0 | 0 | — |
case-15 | pass→pass | 7,101 | 3,767 | -47% | 1 | 1 | 0% | 1,542 | 4,468 | +190% | 0 | 0 | — |
case-16 | fail→pass | 5,294 | 2,932 | -45% | 1 | 1 | 0% | 895 | 4,293 | +380% | 0 | 0 | — |
case-17 | fail→pass | 7,066 | 3,103 | -56% | 1 | 1 | 0% | 1,401 | 4,352 | +211% | 0 | 0 | — |
case-18 | fail→pass | 8,490 | 4,123 | -51% | 1 | 1 | 0% | 1,557 | 4,564 | +193% | 0 | 0 | — |
case-20 | pass→pass | 19,575 | 11,057 | -44% | 1 | 1 | 0% | 3,744 | 5,840 | +56% | 0 | 0 | — |
case-21 | pass→pass | 11,977 | 8,600 | -28% | 1 | 1 | 0% | 2,615 | 5,477 | +109% | 0 | 0 | — |
case-22 | fail→pass | 11,237 | 8,229 | -27% | 1 | 1 | 0% | 2,127 | 5,137 | +142% | 0 | 0 | — |
case-23 | fail→pass | 16,580 | 6,537 | -61% | 1 | 1 | 0% | 2,794 | 4,850 | +74% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted. The headline lift of +48 percentage points is the difference between those two pass rates over the 23 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.