latex-production
Compile a .tex with latexmk and report ranked errors with file:line attribution across \input'd files, plus a diff against the last compile.
Skill by bobbyZhong10
Chalk Labs
Need help deploying latex-production?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/bobbyzhong10-latex-production
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, presentations, writing, research
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/latex-production
What's inside
- Skill name
latex-production- Description
- Compile a .tex with latexmk and report ranked errors with file:line attribution across \input'd files, plus a diff against the last compile. TRIGGER on "compile this", "build my paper", "build the beamer deck", "why won't this compile", "what are the latex errors", "did my edit add warnings", or any request to build or debug a LaTeX document. TRIGGER also on polishing or debugging a TikZ or pgfplots figure whose labels overlap or that "looks wrong" (the --figures loop). Quarto .qmd decks belong to research-talk and teaching-lecture.
- License
- MIT
- Instructions
- 318 lines in SKILL.md · view on GitHub
Files (2)
- SKILL.md
- log-patterns.md · references/
SKILL.md (first lines)
# latex-production This file is the canonical Empirical Workflow Kit implementation. Runtime views defined in `workflow.manifest.yaml` link here; edit only the canonical tree. Adapted from `ericluo04/claude-academic-workflow` at commit `8958cc246e65cdf7c36604f397a1c1719b7e2c14`; see `THIRD_PARTY_NOTICES.md`. Read `runtime-profile.yaml` for local tool, state, PDF helper, and presentation-asset paths before running commands. Compile a `.tex`, parse the log into a ranked report with correct `file:line` attribution, and diff it against the previous build. The default is compile-and-report only; nothing in the source is edited unless `--figures` is passed. Parsing detail (package tables, log regexes, file-stack rules, box thresholds, state schema) is in [`references/log-patterns.md`](references/log-patterns.md). Read it before steps 3 through 5. Diff-vs-last-compile is adapted from `compiledeck` in [scunning1975/MixtapeTools](https://github.com/scunning1975/MixtapeTools). Compilation and layout checks certify neither interpretation nor contribution. If a figure repair changes a substantive caption, claim, or magnitude, apply `../empirical-workflow/references/research-writing.md` and review its evidence; do not rewrite the economic story as part of routine formatting. ## Options | Option | Default | Meaning | |---|---|---| | positional path | required | Master `.tex`. Absolute path, or a basename to resolve. | | `--engine=` | `auto` | Force `pdflatex` / `xelatex` / `lualatex`. | | `--outdir=` | `build` | Aux directory (`latexmk -outdir`). | | `--box-threshold=` | `5pt` | Overfull reporting gate. | | `--figures` | off | Opt-in: run the step-6 review loop on every TikZ/pgfplots figure, then splice back. | | `--max-iter=` | 5 | Rounds per figure in the `--figures` loop. | | `--goal=` | from caption | What a figure should communicate. Passed to the reviewer verbatim. | | `--output=` | `$RUN/final.tex` | Where an approved standalone figure lands when there is no master to splice into. | | `--no-bib` | off | Skip the bib run (`-bibtex-`). | | `--force` | off | Compile even if a conflicted copy is present. | | `--clean` / `--clean-all` | off | `latexmk -c` / `-C`, then stop. | ## Resolving the file Read `runtime-profile.yaml`. In order: use an absolute or cwd-relative path if given; otherwise `Glob` the manuscript roots configured in `runtime-profile.yaml` and, if a project name was mentioned, filter to that project directory; otherwise `Glob` `*.tex` in the cwd and pick the one with `\documentclass`. Ask only if that leaves zero or several plausible masters. A `.tikz` path, or an inline TikZ block pasted into the request, has no master to compile. Take it as `--figures` on that one block: skip steps 1 through 5 and go to step 6 with the block as the single unit, wrapped as step 6 describes. There is nothing to splice back, so the approved source goes to `--output` (default `$RUN/final.tex`) and the path is reported. ## Step 0, pre-flight 1. `Read` the master. 2. Conflicted-copy guard. This setup assumes these projects sync through Dropbox (adjust to your machine), so compiling next to a stale sibling means reporting errors the user already fixed elsewhere. `Glob` the project directory recursively for `*conflicted copy*` (`.tex`, `.bib`, `.sty`, `.cls`). If any exist, stop and list them with mtimes so the user can resolve the conflict. `--force` overrides. 3. `--clean` / `--clean-all`: run `latexmk -c -outdir=<outdir> <file>` or `latexmk -C -outdir=<outdir> <file>` and stop. 4. Resolve `latexmk` and Ghostscript from the commands configured in `runtime-profile.yaml`. If the LaTeX command is unavailable, fail with `SETUP_MISSING:latexmk`. With `--figures`, also check the configured Ghostscript command; if absent, report `SETUP_MISSING:gs` and skip the figure pass, keeping the compile report. ## Step 1, detect engine and bib backend Read the preamble plus any `\input`'d preamble file (§6 of the reference). A `% !TEX program =` magic comment wins. Otherwise `fontspec` / `unicode-math` / `\setmainfont` / `xeCJK` / `ctex` implies xelatex; `\directlua` / `luacode` implies lualatex; else pdflatex. `--engine=` overrides both. Bib backend, unless `--no-bib`: `biblatex` or `\addbibresource` means biber; `natbib` plus `\bibliographystyle` means bibtex. Warn on a mismatch (biblatex loaded with a leftover `\bibliographystyle`, or `\addbibresource` with no biblatex). Print the detection before compiling: ``` File: <path> Engine: xelatex (\setmainfont in preamble) Bib: biber (\addbibresource) Outdir: build/ ``` ## Step 2, compile ```bash latexmk -f "$ENGINE_FLAG" -interaction=nonstopmode -synctex=1 -outdir=<outdir> <file> ``` `ENGINE_FLAG` comes from the step-1 detection: `-pdf` (pdflatex), `-pdfxe` (xelatex), `-pdflua` (lualatex). `-f` matters: without it latexmk stops at the first failing pass, so the log holds one error instead of all of them. Never pass `-halt-on-error`. Add `-bibtex-` for `--no-bib`. A nonzero exit code is expected on a failed document and is not a tooling failure; parse the log regardless. ## Step 3, parse the log Read `<outdir>/<jobname>.log` and run the file-stack tracker from §3 so every `file:line` lands on the right `\input`'d sub-file rather than the master. The tracker must push a placeholder for non-path `(` as well, otherwise the parens inside ordinary messages (`Overfull \hbox (15.83003pt too wide)`) pop real files off the stack and every subsequent attribution is wrong. Extract blocking errors (`! ...` plus the following `l.<N>`), undefined refs/cites (§4), and boxes (§5). ## Step 4, rank and report Lead with one verdict line, `BUILD OK` / `BUILD OK (with warnings)` / `BUILD FAILED (N blocking)`, and the PDF path. Then, in this fixed order: 1. Blocking errors. `<file>:<line>` plus the `! ...` message. For
From bobbyZhong10/empirical-workflow-kit, MIT.
More from bobbyZhong10/empirical-workflow-kit
- 0.570score
literature-review
bobbyZhong10
Find and synthesize the literature on a topic or research question, returning a ranked reading list with a takeaway per paper.
SkillAFreshness: AClaude Code +9 - 0.570score
empirical-workflow
bobbyZhong10
Question-driven workflow for empirical research, from source inventory through paper review.
SkillAFreshness: AClaude Code +9 - 0.565score
manuscript-review
bobbyZhong10
Referee a full manuscript against a named target journal through independent lenses on style, consistency, unsupported claims, math, exhibits, and…
SkillAFreshness: AClaude Code +9 - 0.565score
preregister
bobbyZhong10
Draft a registry-ready preregistration or preanalysis plan for AsPredicted, OSF, or the AEA RCT Registry.
SkillAFreshness: AClaude Code +9 - 0.565score
referee-response
bobbyZhong10
Draft an R&R response letter to a journal decision, sectioned by Senior Editor, Associate Editor, and each reviewer, and check a finished letter before…
SkillAFreshness: AClaude Code +9 - 0.524score
bibliography-audit
bobbyZhong10
Audit an existing .bib entry by entry against Crossref, OpenAlex, arXiv, and Zotero for wrong years, mis-cited authors, wrong venue or volume, dead DOIs, and…
SkillBFreshness: BClaude Code +9 - 0.520score
course-site
bobbyZhong10
Build and maintain the Quarto course website the lecture decks hang off: landing page, week table, site theme, navbar, handout hook, and publishing to GitHub…
SkillBFreshness: BClaude Code +9 - 0.519score
bibcheck
bobbyZhong10
Compatibility entry point for auditing an existing .bib against canonical metadata.
SkillBFreshness: BClaude Code +9 - 0.519score
causal-design
bobbyZhong10
Triage a causal question to a supportable identification strategy.
SkillBFreshness: BClaude Code +9 - 0.519score
compile-latex
bobbyZhong10
Compatibility entry point for compiling or debugging LaTeX and inspecting TikZ or pgfplots figures.
SkillBFreshness: BClaude Code +9 - 0.519score
council
bobbyZhong10
Compatibility entry point for independent multi-lens criticism of an idea, plan, design, R&R strategy, grant, or skill.
SkillBFreshness: BClaude Code +9 - 0.519score
litreview
bobbyZhong10
Compatibility entry point for finding and synthesizing literature on a topic or research question.
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 5, 2026 (26 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from bobbyZhong10
- 0.570score
empirical-workflow
bobbyZhong10
Question-driven workflow for empirical research, from source inventory through paper review.
SkillAFreshness: AClaude Code +9 - 0.570score
literature-review
bobbyZhong10
Find and synthesize the literature on a topic or research question, returning a ranked reading list with a takeaway per paper.
SkillAFreshness: AClaude Code +9 - 0.565score
manuscript-review
bobbyZhong10
Referee a full manuscript against a named target journal through independent lenses on style, consistency, unsupported claims, math, exhibits, and…
SkillAFreshness: AClaude Code +9 - 0.565score
preregister
bobbyZhong10
Draft a registry-ready preregistration or preanalysis plan for AsPredicted, OSF, or the AEA RCT Registry.
SkillAFreshness: AClaude Code +9 - 0.565score
referee-response
bobbyZhong10
Draft an R&R response letter to a journal decision, sectioned by Senior Editor, Associate Editor, and each reviewer, and check a finished letter before…
SkillAFreshness: AClaude Code +9 - 0.524score
bibliography-audit
bobbyZhong10
Audit an existing .bib entry by entry against Crossref, OpenAlex, arXiv, and Zotero for wrong years, mis-cited authors, wrong venue or volume, dead DOIs, and…
SkillBFreshness: BClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get latex-production running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
latex-production skill. Agent Mart. https://agentmart.dev/skills/bobbyzhong10-latex-production (last updated 2026-10-24)