
Typst Paper
Compile, format-check, and bibliography-audit Typst academic papers with module routing and Typst-safe review comments.
Overview
Typst Paper is an agent skill most often used in Build (also Ship review) that compiles and audits Typst manuscripts with bibliography-format detection and Typst-safe review output.
Install
npx skills add https://github.com/bahayonghang/academic-writing-skills --skill typst-paperWhat is this skill?
- Inference-first routing across compile, format, and bibliography modules from one paper request
- Automatic BibTeX versus Hayagriva detection when validating citations
- uv-backed scripts for compile and format checks with Typst-oriented severity comments
- Default prompt sequences compatible modules and asks only for missing file or venue details
- Eval fixtures expect Typst comment output with // … [Severity:] pattern
- Bundled evals reference compile, format, and bibliography routing modules
- Review output uses Typst // comment lines with [Severity:] markers per eval assertions
Adoption & trust: 703 installs on skills.sh; 318 GitHub stars; 2/3 security scanners passed (skills.sh audits).
What problem does it solve?
You have a Typst paper project but citations, Hayagriva vs BibTeX setup, and submission layout errors are hard to validate without a guided compile-and-review workflow.
Who is it for?
Grad students, indie researchers, and technical writers maintaining Typst sources who want agent-driven compile, format, and citation audits.
Skip if: Word-only workflows, papers with no local Typst repo, or users who cannot run uv-backed scripts on their machine.
When should I use this skill?
Review my Typst paper project—route modules from the request, detect bibliography format if needed, run uv-backed scripts, return Typst-friendly findings.
What do I get? / Deliverables
Your agent runs the right Typst modules via uv, surfaces layout and bibliography issues as severitized Typst comments, and leaves you a clearer path to submission-ready PDFs.
- Compile and format check results for Typst sources
- Bibliography validation report with missing or mismatched citations
- Typst-source comments tagged with severity
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Writing and compiling the paper artifact is Build/docs; validation and IEEE-style layout checks bleed into Ship review. Docs subphase is the canonical home for manuscript tooling, citation graphs, and submission-oriented Typst projects.
Where it fits
Compile main.typ and confirm figures and sections still build after a large rewrite.
Run an IEEE-style layout pass and return Typst comments before uploading to a conference portal.
Detect Hayagriva vs BibTeX and list missing citations before co-authors merge.
How it compares
Orchestrated Typst paper workflow with comment-style review, not a one-shot 'fix my grammar' writing skill.
Common Questions / FAQ
Who is typst-paper for?
Solo academic and technical authors using Typst who need compile, IEEE-style layout checks, and bibliography validation in one agent skill.
When should I use typst-paper?
During Build/docs while drafting main.typ, and again in Ship review before conference submission—for example compile plus IEEE layout check or Hayagriva/BibTeX citation validation.
Is typst-paper safe to install?
Review the Security Audits panel on this Prism page; the skill runs local uv scripts and touches your manuscript files, so inspect scripts in the repo before first run.
SKILL.md
READMESKILL.md - Typst Paper
interface: display_name: "Typst Paper" short_description: "Compile and audit Typst papers with inference-first routing, bibliography-format detection, and Typst-safe review output" default_prompt: "Review my Typst paper project, infer the right module from the request, detect BibTeX versus Hayagriva when needed, sequence compatible modules, ask only for missing file or venue details, run the relevant uv-backed scripts, and return Typst-friendly findings." { "skill_name": "typst-paper", "evals": [ { "id": 1, "prompt": "Compile my Typst paper and tell me whether the layout looks obviously wrong for an IEEE-style submission.", "expected_output": "Route to compile and format modules, run uv-backed Typst checks, and return Typst-oriented comments.", "files": [], "assertions": [ {"type": "regex", "pattern": "(compile|format)", "description": "correct modules routed"}, {"type": "regex", "pattern": "(typst|Typst)", "description": "Typst-specific handling"}, {"type": "regex", "pattern": "// .+\\[Severity:", "description": "Typst comment format used"} ] }, { "id": 2, "prompt": "Validate the bibliography in main.typ, whether it uses BibTeX or Hayagriva, and point out any missing citations.", "expected_output": "Choose the bibliography module correctly and surface Typst citation/bibliography mismatches.", "files": [], "assertions": [ {"type": "contains", "text": "bibliography", "description": "bibliography module routed"}, {"type": "regex", "pattern": "(BibTeX|Hayagriva|@cite|#bibliography)", "description": "Typst bib format detected"}, {"type": "regex", "pattern": "(missing|unused|unresolved)", "description": "citation issues reported"} ] }, { "id": 3, "prompt": "Polish the abstract wording in my Typst paper and help me translate one Chinese paragraph into academic English without breaking labels.", "expected_output": "Route to expression and translation modules while preserving Typst syntax.", "files": [], "assertions": [ {"type": "regex", "pattern": "(expression|translation)", "description": "correct modules routed"}, {"type": "not_contains", "text": "<label-rewritten>", "description": "Typst labels preserved"} ] }, { "id": 4, "prompt": "My Typst project uses a Hayagriva YAML bibliography. Validate it, then tell me whether any citations used in the paper are missing or unused.", "expected_output": "Choose the bibliography path correctly for Hayagriva input, preserve Typst citation syntax, and surface missing, unused, or mismatched references.", "files": [], "assertions": [ {"type": "contains", "text": "bibliography", "description": "bibliography module routed"}, {"type": "regex", "pattern": "(Hayagriva|YAML|\\.yml)", "description": "Hayagriva format recognized"}, {"type": "regex", "pattern": "(missing|unused|mismatch)", "description": "reference issues reported"} ] }, { "id": 5, "prompt": "Review the related work section in main.typ for weak literature organization, missing gap derivation, and cross-section logic problems, but do not rewrite labels or math.", "expected_output": "Route to the logic module, flag enumeration-heavy related work or missing gap statements, and keep Typst labels, cites, and math untouched.", "files": [], "assertions": [ {"type": "contains", "text": "logic", "description": "logic module routed"}, {"type": "regex", "pattern": "(gap|enumerat|organization)", "description": "literature quality assessed"}, {"type": "not_contains", "text": "@cite-rewritten", "description": "@cite references preserved"} ] }, { "id": 6, "prompt": "Check whether the introduction in my Typst paper jumps from broad background straight to our method without establishing the bottleneck