Repository navigation
Releases: ChanMeng666/chanmeng-typst
Release list
v0.6.0 — CJK typesetting fixes and Typst 0.15 audit
Audited against the full Typst 0.15.0 and 0.15.1 release notes, the commits after 0.15.1, and the official accessibility guide.
Fixed
- CJK template and example: SimSun, SimHei and KaiTi have no bold or italic face, so bold and headings looked like body text. Bold, headings and emphasis now map to fonts that show a difference.
- CJK template and example:
first-line-indent: 2emskipped the first paragraph after a heading. They now use(amount: 2em, all: true). - Packages: updated
cetzto 0.5.3 andmodern-cvto 0.10.0, and replaced the unmaintainedtablexwith the nativetable. - CLI reference: added
typst eval --target, thetypst updateoptions, thebundlefeature, and combined PDF standards.
Added
references/typst-pitfalls.mdgains a CJK text section, covering fonts with no bold, source line breaks that add a space, first-paragraph indents,一、numbering, and Latin fonts taking Chinese punctuation.scripts/check-pdf.pywarns about line breaks between CJK characters and about bold in a font with no bold face, lists the fonts used, and matches--requiretext across wrapped CJK lines.references/typst-design-patterns.mdgains sections on accessible PDFs and experimental bundle export.references/typst-language-reference.mdgains a section on features added in 0.15, including renamed citation styles.- CI compiles the ATS example as PDF/UA-1.
evals/gains a Chinese report test case.
v0.5.1 — v() leading pitfall
Added
references/typst-pitfalls.mdcovers howv()replaces the leading between two lines and how a weakv()at the end of a block disappears, with measured gaps from Typst 0.14.2 and 0.15.1.
v0.5.0 — verified output and fixed templates
Added
scripts/check-pdf.pychecks a compiled PDF for page count, font embedding, text extraction, lost hyphens and bare~. Its--atsmode adds resume-specific checks.references/typst-pitfalls.mdcovers bugs the compiler does not report. Each entry was reproduced on Typst 0.15.1.references/ats-resume.mdandexamples/resume-ats.typcover resumes read by job-portal parsers.references/typst-design-patterns.mdgains a section on long-lived document projects.SKILL.mdgains a verification step: render the pages, run the checker, and re-check after layout changes.- CI compiles every template in the references and runs
check-pdf.pyon the ATS example. evals/holds three test cases for comparing versions of the skill.
Fixed
- Letter template: the code block was never closed, so copying it included the next section's heading and failed to compile.
- Two-column resume template:
theme: ()was an array, not a dictionary, which failed to compile.v(1fr)also spread sections across the page with large gaps. Education details are now optional, and degree titles keep their capitalisation. - Replaced the nonexistent
Linux Libertinefont withLibertinus Serif. target()examples now usecontext, which they require.- Language reference: corrected
angle.ltochevron.land ajoinexample that failed on integers. - CLI reference: updated to 0.15.1, moved
typst queryto its replacementtypst eval --in, and removed the nonexistenttypst packages. - Trigger terms in Chinese moved from the
SKILL.mdbody todescription, where they can affect triggering.
v0.4.0 — renamed to chanmeng-typst
Changed (breaking)
- Renamed to
chanmeng-typst: the repository, plugin, marketplace, and skill directory (skills/chanmeng-typst/) now share one name. Install with/plugin install chanmeng-typst@chanmeng-typstand invoke with/chanmeng-typst. Old GitHub addresses redirect.
Migration for existing users
- Plugin installs: the plugin and marketplace were both renamed, so remove the old install and add the new one:
/plugin uninstall typst@chan-typst /plugin marketplace remove chan-typst /plugin marketplace add ChanMeng666/chanmeng-typst /plugin install chanmeng-typst@chanmeng-typst - Copied skills: replace
~/.claude/skills/typst/with~/.claude/skills/chanmeng-typst/, using the install steps in the README.
Fixed
- CI failed after the rename because
validate.ymlstill asserted the oldtypstname. It now checks that the skill directory,SKILL.mdfrontmatter,plugin.json, andmarketplace.jsonagree, so a future rename cannot leave a hard-coded name behind. - README: finished the rename in the Windows install paths, the load check, the directory tree, and the troubleshooting table; corrected the plugin path to
verify-typst.sh.
CI
- Pinned Typst to 0.15.1 and derived the cache key from that version (it previously said
v0.14while installing the latest release). - Moved to
actions/checkout@v7andactions/cache@v6, which run on Node.js 24.
v0.3.0 — first verified release
What this skill does
A Claude Code skill that lets Claude Code generate professional PDFs — CVs, cover letters, academic papers, slide decks, invoices, reports — using the Typst typesetting system. Strong CJK (Chinese / Japanese / Korean) support out of the box.
After install, just ask in plain language:
Generate a one-page CV PDF for me with three sample work experiences.
帮我用 Typst 生成一份中文求职信 PDF。
Claude Code consults the bundled SKILL.md (decision tree, 9 templates, recovery recipes) and produces a .typ source plus the compiled PDF.
Install (recommended)
Inside Claude Code, run two slash commands:
/plugin marketplace add ChanMeng666/typst-claude-skill
/plugin install typst@chan-typst
Then /plugin list should show:
typst@chan-typst
Version: 0.3.0
Status: ✔ enabled
Three other install paths (git clone, manual ZIP, project-level) are covered in the README.
You also need the Typst CLI binary on your PATH:
winget install --id Typst.Typst # Windows
brew install typst # macOS
cargo install --locked typst-cli # any platform with RustWhy 0.3.0 is the first release
Tags v0.2.0 and v0.2.1 exist in git history but were never published as releases here. During acceptance testing of v0.2.1, we caught a runtime issue: the plugin manifest used "skills": ["./"] (a pattern documented in the Plugins reference under Path behavior rules) which is rejected at load time by Claude Code 2.1.123 with Error: Path escapes plugin directory: ./ (skills). The plugin would install but fail to load.
v0.3.0 is a structural fix — the actual skill content was moved from the repo root into skills/typst/ so the loader uses canonical auto-discovery — and it's the first version that has been verified end-to-end via the /plugin install path.
Breaking change vs. earlier git tags
If you previously installed via the v0.2.x direct git clone route (git clone … ~/.claude/skills/typst), do not git pull — the v0.3.0 layout would replace SKILL.md at the root with a skills/typst/ subdirectory and break the skill. Instead:
# remove the old direct-clone install
rm -rf ~/.claude/skills/typst
# then use the recommended plugin marketplace path aboveOr if you prefer a fresh direct clone, see Method 2 in the README — it's now a clone-and-move pattern.
The plugin marketplace install path was unchanged for direct end-users (same two slash commands), so anyone discovering the skill today can ignore this section.
What's bundled
SKILL.md— decision tree (which template?), recovery recipes (stderr first-line → fix), Vercel/serverless gotcha, CJK font fallback recipe, trigger cheat-sheet- 9 ready-to-use templates under
references/typst-templates.md— General Document, CJK Document, Academic Paper, Simple Resume, Typographic Resume, Letter, Technical Report, Presentation, Invoice - 3 self-contained example
.typfiles underexamples/—hello-world.typ,cjk-document.typ,resume-basic.typ scripts/verify-typst.sh— environment checker (CLI version, write permissions, available CJK fonts)- CI that compiles every example, validates SKILL.md frontmatter, and validates plugin/marketplace JSON on every push
Verified install (Claude Code 2.1.123)
/plugin marketplace add ChanMeng666/typst-claude-skill
✔ Successfully added marketplace: chan-typst (declared in user settings)
/plugin install typst@chan-typst
✔ Successfully installed plugin: typst@chan-typst (scope: user)
/plugin list
❯ typst@chan-typst
Version: 0.3.0
Status: ✔ enabled
Acknowledgements
- Typst — the typesetting engine
- typst-typographic-resume — inspiration for the theme system and two-column resume patterns
- pdf-writer — reference for the PDF capabilities documentation
- Claude Code — Anthropic's CLI for Claude
Full diff and per-version detail: CHANGELOG.md