T

typst

by @lucifer1004v
4.8(22)

Used for Typst document creation and package development, providing powerful typesetting and content management features.

TypstDocument Markup LanguageTechnical WritingTypesettingGitHub
Installation
npx skills add lucifer1004/claude-skill-typst --skill typst
compare_arrows

Before / After Comparison

1
Before

Typst document creation and package development are complex, with a steep learning curve, affecting writing efficiency. Manual typesetting is time-consuming and laborious, making it difficult to achieve professional-level results.

After

Provides guides for Typst document creation and package development, simplifying the typesetting process. Improves document quality and writing efficiency, making it easy to produce professional-grade documents.

description SKILL.md


name: typst description: 'Typst document creation and package development. Use when: (1) Working with .typ files, (2) User mentions typst, typst.toml, or typst-cli, (3) Creating or using Typst packages, (4) Developing document templates, (5) Converting Markdown/LaTeX to Typst'

Typst

Modern typesetting system — simpler than LaTeX, faster compilation, programmable.

Compilation

typst compile document.typ              # compile once
typst compile document.typ output.pdf   # explicit output path
typst compile src/main.typ --root .     # set project root for /path imports
typst watch document.typ                # recompile on change

Agents cannot preview PDFs. Verify via exit code and pdftotext:

typst compile document.typ && pdftotext document.pdf - | head -20

Minimal Document

#set page(paper: "a4", margin: 2cm)
#set text(size: 11pt)

= Title

Content goes here.

Writing Documents

When you need to...Read
Learn syntax, imports, functions, control flowbasics.md
Learn data types, operators, string/array methodstypes.md
Style pages, headings, figures, layoutstyling.md
Tables, grids, cell spans, borders, data tablestables.md
Academic papers, bibliography, theorems, equationsacademic.md
Convert from Markdown or LaTeXconversion.md

Start with basics.md — it covers modes, imports, functions, control flow, and common pitfalls. For data types and operators, see types.md.

Developing Packages and Templates

When you need to...Read
Use state, context, query, or parse XMLadvanced.md
Create a reusable template functiontemplate.md
Create or publish a packagepackage.md
Debug output (pdftotext, repr, measure)debug.md
Profile performance (--timings, hotspots)perf.md

basics.md and types.md are also the foundation for developers.

Finding Packages

Search the embedded index of Typst Universe packages (updated weekly):

python3 scripts/search-packages.py "what you need"
python3 scripts/search-packages.py "chart" --category visualization
python3 scripts/search-packages.py --category cv --top 5
python3 scripts/search-packages.py --list-categories

Import Pattern

#import "@preview/package-name:version": *
#import "@preview/package-name:version": specific-func

Common Errors

ErrorCauseFix
"unknown variable"Undefined identifierCheck spelling, ensure #let before use
"expected X, found Y"Type mismatchCheck function signature in docs
"file not found"Bad import pathPaths resolve relative to current file
"unknown font"Font not installedUse system fonts or web-safe alternatives
"maximum function call depth exceeded"Deep recursionUse iteration instead
"can only be used when context is known"Missing context wrapperWrap in context { ... }
"unexpected argument"= instead of : for argsNamed args use : syntax: func(name: value)
"variables from outside are read-only"Mutating captured variableUse loop accumulation or state() — see advanced.md
"expected content, found string" (or vice versa)Content/string type mismatchUse [#str-var] to embed string in content
set/show rule has no effectRule placed after contentPlace set/show rules before the content they target

Examples

ExampleDescription
basic-document.typComplete beginner document with all common elements
styled-document.typSet/show rules, page layout, multi-region document
template-report.typReusable template with headers, counters, note boxes
tables-showcase.typTable features: spans, stripes, grids, data gen
academic-paper.typPaper with theorems, equations, bibliography layout
package-example/Minimal publishable package with submodules

Dependencies

  • typst CLI: Install from https://typst.app or via package manager
    • macOS: brew install typst
    • Linux: cargo install typst-cli
    • Windows: winget install typst
  • pdftotext (optional): For text-level output verification
  • Python 3.8+ (optional): For package search script

forumUser Reviews (0)

Write a Review

Effect
Usability
Docs
Compatibility

No reviews yet

Statistics

Installs545
Rating4.8 / 5.0
Version
Updated2026年3月17日
Comparisons1

User Rating

4.8(22)
5
0%
4
0%
3
0%
2
0%
1
0%

Rate this Skill

0.0

Compatible Platforms

🔧Claude Code
🔧OpenClaw
🔧OpenCode
🔧Codex
🔧Gemini CLI
🔧GitHub Copilot
🔧Amp
🔧Kimi CLI

Timeline

Created2026年3月17日
Last Updated2026年3月17日