用途
typst-author 是一个智能体技能,用于帮助 AI 生成、编辑和推理 Typst 文档。其目标场景包括:生成符合 Typst 习惯用法的 .typ 代码,编辑和排查 Typst 文档与项目问题,以及回答 Typst 语法与参考相关问题。
主要能力
该技能提供快速上手示例、详细工作流程,以及指向 Typst 文档(概览、指南、教程、参考)的链接。它内置本地 Typst 0.15.0 的 docs/ 文件夹,覆盖以下主题:
- 概览与参考结构(docs/overview.md、docs/reference/index.md)
- 教程序列:基础标记、函数、标签、引用与数学(1-writing.md);设规则、页面设置、标题与文本格式(2-formatting.md);模板、show 规则与复杂样式(3-advanced.md);可复用模板与包(4-template.md)
- 语言语法(语法模式、注释、转义、标识符)、脚本、样式、上下文
- 库参考:基础类型与函数、文档模型、版式、文本、数学、绘图与媒体、内省、数据加载、符号与表情符号
- 导出格式:PDF、HTML、bundle、SVG、PNG
- 指南:页面设置、表格、无障碍、面向 LaTeX 用户的迁移
使用方式
技能给出了明确的工作流程与指令:
- 优先信任本地文档,因为内部训练数据可能过时或产生幻觉,生成代码前应核对本地 Typst 0.15.0 文档中的函数名、参数与语法。
- 使用本地文件搜索与打开工具阅读相关文档路径。
- 语法与参考问题以本地文档为准进行核对。
- 根据用户请求生成或修改 .typ 源码。
- 对每次创建或编辑的 .typ 文件执行修改后的格式化检查。
- 在格式化决策完成后,使用 typst compile 进行验证(在允许工具访问且用户要求验证时)。
- 总结涉及的文件与结果;仅在用户要求或无法直接编辑时提供完整 .typ 内容,可选附带渲染预览(PDF/HTML)。
格式化检查流程:先用 command -v typstyle 检查是否可用;不可用则跳过。每次修改 .typ 文件后运行 typstyle --check <file>;若失败,先运行 typstyle --diff <file> 查看格式化改动;仅当改动限于新建文件或本次任务中创建/编辑的代码时,才用 typstyle -i <file> 应用格式化;如果格式化会改动未触及的既有代码,则停止并询问用户。
对于不确定的运行时或求值行为,建议先用 typst eval 进行无文件表达式探测(例如 typst eval '1 + 2'),而不是创建临时 .typ 文件。
快速语法要点
技能强调若干关键区别:
- 数组:(item1, item2)(圆括号)
- 字典:(key: value, key2: value2)(圆括号加冒号)
- 内容块:[markup content](方括号)
- Typst 没有元组,只有数组
关于 # 的使用:在标记或内容块中用 # 开始代码表达式,用于区分代码与文本,例如 #figure[...]、#image("file.png");在代码上下文(参数列表、代码块、show 规则体)中不要使用 #。
样式方面:set 用于配置元素函数的可选参数(样式默认值,作用域为当前块或文件);show 用于定位选中元素并应用 set 规则或转换/替换元素输出。常见样式设置用 set,选择性或结构性改动用 show。
适用场景与限制
适用场景包括:新建 Typst 项目、编辑既有内容、格式与样式处理、语法与参考查询、大型项目组织(可用 #include "file.typ" 拆分多文件)、以及编译排查(字体缺失警告、包找不到、编译错误等)。
限制与注意事项:技能强调不要使用 LaTeX 语法(如 \begin{...}、\section)或臆造不存在的环境(如 tabular,应使用 table);不要混淆内容块 [] 与代码块 {};导入变量/函数时需注意命名空间。关于具体收费、价格、平台或效果,资料中暂未提供。