Light Typesetting

Kompilerer LaTeX-manuskripter til en indsendelses-PDF og kører en desk-reject preflight-gate

Af Light0305 · Light0305/Light-skills

Testet · Virker ★ 8.4/10

Light Typesetting — Kompilerer LaTeX-manuskripter til en indsendelses-PDF og kører en desk-reject preflight-gate

Hvad det gør

Omdanner godkendte manuskripter, figurer og citationsleverancer til en reproducerbar LaTeX/PDF-indsendelsespakke: vælger engine (pdfLaTeX/XeLaTeX/LuaLaTeX) og bib-backend, kompilerer til konvergens og kører en statisk desk-reject gate, der kontrollerer sidetalgrænser, dobbeltblind forfatter-/metadata-lækager, skabelon, sidestørrelse og indlejrede skrifttyper. Udløses når brugeren har et manuskript plus references.bib/figurer og ønsker en kompilering-og-preflight-kontrol før indsendelse til et sted, eller ved diagnosticering af LaTeX-kompilerings-/referencefejl. Skelner mellem PASS, manuskript ERROR, toolchain UNAVAILABLE og reference-convergence UNRESOLVED.

Testrapport

Klonede depotet; SKILL.md frontmatter parses (name+description) og alle 4 stikprøvekontrollerede refererede filer (resource-map, references/build_contract.md, scripts/build_submission.py, templates/typesetting_input.json) returnerede HTTP 200. desk_reject_gate.py --selftest bestod, og _shared/ + light-citation er til stede. Til OUTPUT-testen skrev jeg et dobbeltblindt manuskript, der lækker \author{Jane Smith...MIT} og har en TODO/acknowledgements/github-link/selvhenvisning, kompilerede det med tectonic til en reel 7-siders paper.pdf (pdfinfo bekræftede 7 sider), og kørte derefter gaten med --double-blind --max-pages 6. Den afsluttedes med 1 og udsendte light.findings.v1 JSON, der korrekt markerede 2 kritiske (BLIND_IDENTITY forfatterlækage, PAGES_OVER 7>6) plus advarsler for ack/link/selvref/TODO. Baseline (læsning af .tex selv) fanger \author-lækagen og TODO, men kan ikke vide, at det kompilerede sidetal er 7 — sidegrænse-desk-reject-beslutningen kræver den faktiske kompilering, som færdigheden udfører, plus den giver en maskinlæsbar alvorligheds-klassificeret gating-artefakt. Kørte IKKE den fulde build_submission.py-pipeline ende-til-ende (kræver latexmk + citation delivery.json + figurmanifests, jeg ikke har); testede den repræsentative desk-reject preflight-komponent, som er en dokumenteret kerneleverance. Ingen sikkerhedsbrister: subprocess starter kun LaTeX/PDF-værktøjer, ingen curl|sh, base64 eller exfiltration.

Testet: 2026-07-21 · Claude Code 2.x (agent harness)

Installation

git clone --depth 1 https://github.com/Light0305/Light-skills.git /tmp/light-typesetting-src
mkdir -p ~/.claude/skills
cp -R /tmp/light-typesetting-src/skills/light-typesetting ~/.claude/skills/light-typesetting
# Requires: python3 + a LaTeX distro (TeX Live / MacTeX / MiKTeX / TinyTeX) OR `tectonic`; optional pdfinfo/pdffonts (poppler) for page-count/font checks.
# submission_check.py + desk_reject_gate.py run on Python stdlib alone (no LaTeX needed for the static desk-reject scan).
# NOTE: full desk-reject findings JSON and the cross-skill \cite<->.bib audit resolve `_shared/` and `skills/light-citation/` by walking UP the repo tree. Copying only this dir degrades those gracefully (submission_check critical scan still runs). For full functionality clone the whole repo into your skills dir instead:
#   cp -R /tmp/light-typesetting-src ~/.claude/skills/light-skills   # then reference skills/light-typesetting/SKILL.md
# Script command examples in SKILL.md are written in PowerShell (backtick line-continuation); on macOS/Linux use `\` continuations.

Kommandoer og eksempelprompter

  • /light-typesettingKompilerer LaTeX-manuskripter til en indsendelses-PDF og kører en desk-reject preflight-gate

Skills udløses af almindelige forespørgsler — ingen kommandoer at huske. Efter installationen aktiverer prompter som disse skillen (på engelsk):

  • Compile this manuscript into a submission-ready PDF
  • Fix unresolved references in this LaTeX file
  • Check this paper against the venue's page limit