Light Typesetting

Compila manoscritti LaTeX in un PDF di sottomissione ed esegue un controllo preliminare di rifiuto

di Light0305 · Light0305/Light-skills

Promosso ★ 8.4/10

Light Typesetting — Compila manoscritti LaTeX in un PDF di sottomissione ed esegue un controllo preliminare di rifiuto

Cosa fa

Trasforma manoscritti, figure e materiali di citazione approvati per la scrittura di articoli in un bundle di sottomissione LaTeX/PDF riproducibile: seleziona il motore (pdfLaTeX/XeLaTeX/LuaLaTeX) e il backend bib, compila fino alla convergenza ed esegue un controllo preliminare statico di rifiuto che verifica i limiti di pagina, le fughe di autore/metadati in doppio cieco, il template, la dimensione della pagina e i font incorporati. Si attiva quando l'utente ha un manoscritto più references.bib/figure e desidera un controllo di compilazione e pre-volo prima di inviare a una sede, o quando diagnostica errori di compilazione/riferimento LaTeX. Distingue PASS, ERROR del manoscritto, UNAVAILABLE della toolchain e UNRESOLVED della convergenza dei riferimenti.

Rapporto di test

Ho clonato il repository; il frontmatter di SKILL.md si analizza (name+description) e tutti e 4 i file di riferimento controllati a campione (resource-map, references/build_contract.md, scripts/build_submission.py, templates/typesetting_input.json) hanno restituito HTTP 200. desk_reject_gate.py --selftest è passato e _shared/ + light-citation sono presenti. Per il test OUTPUT ho scritto un manoscritto in doppio cieco che rivela \author{Jane Smith...MIT} e ha un TODO/acknowledgements/github link/self-reference, l'ho compilato con tectonic in un vero paper.pdf di 7 pagine (pdfinfo ha confermato 7 pagine), quindi ho eseguito il gate con --double-blind --max-pages 6. È uscito con codice 1 e ha emesso light.findings.v1 JSON segnalando correttamente 2 criticità (fuga di autore BLIND_IDENTITY, PAGES_OVER 7>6) più avvisi per ack/link/selfref/TODO. La base (leggendo il .tex da solo) cattura la fuga di \author e il TODO ma non può sapere che il conteggio delle pagine compilate è 7 — la decisione di rifiuto del limite di pagina richiede la compilazione effettiva che la skill esegue, inoltre produce un artefatto di gating classificato per gravità leggibile dalla macchina. NON ho eseguito l'intera pipeline build_submission.py end-to-end (richiede latexmk + citation delivery.json + manifest di figure che non ho); ho testato il componente rappresentativo di pre-volo di rifiuto, che è un deliverable fondamentale documentato. Nessun problema di sicurezza: il subprocess avvia solo strumenti LaTeX/PDF, nessun curl|sh, base64 o esfiltrazione.

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

Installazione

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.

Comandi e prompt di esempio

  • /light-typesettingCompila manoscritti LaTeX in un PDF di sottomissione ed esegue un controllo preliminare di rifiuto

Gli skill si attivano con richieste in linguaggio naturale, senza comandi da ricordare. Dopo l'installazione, prompt come questi lo attivano (in inglese):

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