К основному содержанию
скилл CX Codex

quarto-authoring — скилл для Claude Code: документы Quarto

Скилл для работы с Quarto: .qmd, _quarto.yml, перекрёстные ссылки, выноски, цитаты, диаграммы Mermaid и миграция с R Markdown.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add posit-dev/skills --skill quarto-authoring -a claude-code
Открыть на GitHub

Что делает quarto-authoring

Скилл включается, когда в проекте есть Quarto: файлы .qmd, конфиг _quarto.yml, отчёты, сайты, книги или презентации. Он же берётся за перенос существующего проекта с R Markdown, bookdown, xaringan, distill, blogdown или Jupyter. Для обычных вопросов по R Markdown без упоминания Quarto он не сработает.

Внутри — основной файл с базовой структурой документа и набор справочников: перекрёстные ссылки, опции код-ячеек, рисунки, таблицы, цитаты, выноски, диаграммы, разметка страницы, шорткоды, YAML-заголовок, расширения, движки вычислений. Отдельная группа справочников посвящена конвертации, и читать их стоит только при явной миграции. Скилл основан на Quarto CLI v1.9.36.

Есть места, где легко ошибиться. Кэш #| cache: true работает только в R-ячейках на движке knitr; в других языках его молча проигнорируют, и тогда нужен execute: cache: true в YAML, а для Python/Jupyter ещё и jupyter-cache. Опции ячеек пишутся через дефис (fig-cap), а не через точку, и метки ссылок обязаны начинаться с префикса типа: fig-, tbl-, sec-, eq-. Это повод проверить старые заготовки, скопированные из R Markdown.

Какие задачи решает

  • собрать отчёт в HTML или PDF из .qmd с оглавлением и свёрнутым кодом
  • проставить перекрёстные ссылки на рисунки, таблицы и разделы
  • добавить выноски note, warning и tip в текст документа
  • подключить библиографию и оформить цитаты по стилю CSL
  • перенести проект с bookdown или xaringan на Quarto

Примеры запросов агенту

  • Сделай отчёт в Quarto: заголовок, автор, формат html с оглавлением и свёрнутым кодом
  • Добавь в этот .qmd перекрёстную ссылку на рисунок fig-plot и подпись к нему
  • Перенеси этот проект с R Markdown на Quarto

Как установить quarto-authoring

1Через Skills CLI (Vercel)

npx skills add posit-dev/skills --skill quarto-authoring -a claude-code

2Вручную: положить файлы

~/.claude/skills/quarto-authoring/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/quarto-authoring/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о quarto-authoring

Как установить quarto-authoring в Claude?

Выполните npx skills add posit-dev/skills --skill quarto-authoring -a claude-code. После этого файл скилла окажется в ~/.claude/skills/quarto-authoring/SKILL.md.

Что делает quarto-authoring?

Помогает писать и настраивать документы Quarto: структура .qmd, YAML-заголовок, опции код-ячеек, ссылки, таблицы, цитаты, выноски и диаграммы. Отдельно разбирает миграцию с R Markdown и родственных форматов.

Сработает ли скилл на обычном R Markdown?

Нет. Он включается только когда Quarto или миграция на Quarto упомянуты явно, иначе вопросы по R Markdown остаются без него.

Исходный текст

SKILL.md · MIT
---
name: quarto-authoring
description: Use when the user is explicitly working with Quarto, .qmd files, _quarto.yml, Quarto projects, or Quarto features such as callouts, cross-references, citations, Mermaid diagrams, extensions, websites, books, presentations, and reports. Also use for explicit migration from or comparison with R Markdown, bookdown, blogdown, xaringan, distill, or Jupyter notebooks to Quarto. Do not use for general R Markdown or related-format questions unless Quarto or migration to Quarto is explicitly mentioned.
metadata:
  author: Mickaël Canouil (@mcanouil)
  version: "1.4"
license: MIT
---

# Quarto Authoring

> This skill is based on Quarto CLI v1.9.36 (2026-03-24).

## When to Use What

Task: Write a new Quarto document
Use: Follow "QMD Essentials" below, then see specific reference files

Task: Add cross-references
Use: [references/cross-references.md](references/cross-references.md)

Task: Configure code cells
Use: [references/code-cells.md](references/code-cells.md)

Task: Add figures with captions
Use: [references/figures.md](references/figures.md)

Task: Create tables
Use: [references/tables.md](references/tables.md)

Task: Add citations and bibliography
Use: [references/citations.md](references/citations.md)

Task: Add callout blocks
Use: [references/callouts.md](references/callouts.md)

Task: Add diagrams (Mermaid, Graphviz)
Use: [references/diagrams.md](references/diagrams.md)

Task: Control page layout
Use: [references/layout.md](references/layout.md)

Task: Use shortcodes
Use: [references/shortcodes.md](references/shortcodes.md)

Task: Add conditional content
Use: [references/conditional-content.md](references/conditional-content.md)

Task: Use divs and spans
Use: [references/divs-and-spans.md](references/divs-and-spans.md)

Task: Configure YAML front matter
Use: [references/yaml-front-matter.md](references/yaml-front-matter.md)

Task: Find and use extensions
Use: [references/extensions.md](references/extensions.md)

Task: Apply markdown linting rules
Use: [references/markdown-linting.md](references/markdown-linting.md)

Task: Choose or configure a compute engine (knitr, jupyter, julia)
Use: [references/engines.md](references/engines.md)

### Migration (only when converting an existing project)

Do NOT read these references when writing new Quarto documents.
Only read the one matching the source format when the user explicitly asks to convert or migrate an existing project.

- R Markdown (.Rmd) to Quarto: [references/conversion-rmarkdown.md](references/conversion-rmarkdown.md)
- bookdown project: [references/conversion-bookdown.md](references/conversion-bookdown.md)
- xaringan slides: [references/conversion-xaringan.md](references/conversion-xaringan.md)
- distill article: [references/conversion-distill.md](references/conversion-distill.md)
- blogdown site: [references/conversion-blogdown.md](references/conversion-blogdown.md)
- Jupyter notebook (.ipynb) to/from Quarto: [references/conversion-jupyter.md](references/conversion-jupyter.md)

## QMD Essentials

### Basic Document Structure

```markdown
---
title: "Document Title"
author: "Author Name"
date: today
format: html
---

Content goes here.
```

A Quarto document consists of two main parts:

1. **YAML Front Matter**: Metadata and configuration at the top, enclosed by `---`.
2. **Markdown Content**: Main body using standard markdown syntax.

### Divs and Spans

Divs use fenced syntax with three colons:

```markdown
::: {.class-name}
Content inside the div.
:::
```

Spans use bracketed syntax:

```markdown
This is [important text]{.highlight}.
```

Details: [references/divs-and-spans.md](references/divs-and-spans.md)

### Code Cell Options Syntax

A code cell starts with triple backticks and a language identifier between curly braces.
Code cells are code blocks that can be executed to produce output.

Quarto uses the language's comment symbol + `|` for cell options. Options use **dashes, not dots** (e.g., `fig-cap` not `fig.cap`).

- R, Python, Julia: `#|`
- Mermaid: `%%|`
- Graphviz/DOT: `//|`

````markdown
```{language}
#| label: fig-example
#| echo: false
#| fig-cap: "A scatter plot example."

# code that produces a figure
```
````

Set document-level defaults in YAML front matter:

```yaml
execute:
  echo: false
  warning: false
```

**Caching — critical engine difference:** Only suggest `#| cache: true` for R code cells (knitr engine).
Never suggest it for other language cells — it does not work and will be silently ignored.
The only correct approach is `execute: cache: true` in the top-level YAML front matter when using engines other than `knitr`.
Python/Jupyter requires `jupyter-cache` (`pip install jupyter-cache`):

```yaml
execute:
  cache: true
```

Details: [references/code-cells.md](references/code-cells.md)

### Cross-References

Labels must start with a type prefix. Reference with `@`:

- Figure: `fig-` prefix, e.g., `#| label: fig-plot` → `@fig-plot`
- Table: `tbl-` prefix, e.g., `#| label: tbl-data` → `@tbl-data`
- Section: `sec-` prefix, e.g., `{#sec-intro}` → `@sec-intro`
- Equation: `eq-` prefix, e.g., `{#eq-model}` → `@eq-model`

````markdown
```{language}
#| label: fig-plot
#| fig-cap: "A caption for the plot."

# code that produces a figure
```

See @fig-plot for the results.
````

Details: [references/cross-references.md](references/cross-references.md)

### Callout Blocks

Five types: `note`, `warning`, `important`, `tip`, `caution`.

```markdown
::: {.callout-note}
This is a note callout.
:::

::: {.callout-warning}

## Custom Title

This is a warning with a custom title.

:::
```

Details: [references/callouts.md](references/callouts.md)

### Figures

```markdown
![Caption text](image.png){#fig-name fig-alt="Alt text"}
```

Subfigures:

```markdown
::: {#fig-group layout-ncol=2}
![Sub caption 1](image1.png){#fig-sub1}

![Sub caption 2](image2.png){#fig-sub2}

Main caption for the group.
:::
```

Details: [references/figures.md](references/figures.md)

### Tables

```markdown
::: {#tbl-example}

| Column 1 | Column 2 |
| -------- | -------- |
| Data 1   | Data 2   |

Table caption.
:::
```

Details: [references/tables.md](references/tables.md)

### Citations

```markdown
According to @smith2020, the results show...
Multiple citations [@smith2020; @jones2021].
```

Configure in YAML:

```yaml
bibliography: references.bib
csl: apa.csl
```

Details: [references/citations.md](references/citations.md)

## Common Workflows

### Creating an HTML Document

```yaml
title: "My Report"
author: "Your Name"
date: today
format:
  html:
    toc: true
    code-fold: true
    theme: cosmo
```

### Creating a PDF Document

```yaml
title: "My Report"
format:
  pdf:
    documentclass: article
    papersize: a4
```

### Creating a RevealJS Presentation

```markdown
---
title: "My Presentation"
format: revealjs
---

## First Slide

Content here.

## Second Slide

More content.
```

### Setting Up a Quarto Project

Create `_quarto.yml` in the project root:

```yaml
project:
  type: website

website:
  title: "My Site"
  navbar:
    left:
      - href: index.qmd
        text: Home
      - href: about.qmd
        text: About

format:
  html:
    theme: cosmo
```

## Resources

- [Quarto Documentation](https://quarto.org/docs/)
- [Quarto Guide](https://quarto.org/docs/guide/)
- [Quarto Extensions](https://quarto.org/docs/extensions/)
- [Community Extensions List](https://m.canouil.dev/quarto-extensions/)

© Mickaël Canouil (@mcanouil) · MIT · posit-dev/skills

Похожие скиллы

Всё по теме «Тексты и документация» →
baoyu-post-to-x JimLiu Публикует текст, картинки, видео и длинные статьи в X через настоящий Chrome. Пригодится, когда нужно выложить пост из терминала, не открывая вкладку вручную. CX Codex +1 28 900установок ce-proof EveryInc Публикует локальные markdown-файлы в Proof — редактор для совместной работы над спеками, планами и черновиками. CX Codex +1 3 000установок md2wechat geekjourneyx Преобразует Markdown в HTML публикаций WeChat и создаёт обложки, инфографику, картиночные посты. Пригодится тем, кто ведёт официальный аккаунт WeChat или публикует на Zhihu, CSDN, Toutiao. CX Codex +1 2 500установок publish-substack-article sugarforever Превращает Markdown-статью в черновик Substack: конвертирует разметку в HTML и вставляет её в редактор. Автопубликации нет — текст остаётся на вычитку. CX Codex +1 604установок publish-x-article sugarforever Переносит Markdown-статью в редактор X Articles с сохранением форматирования. Пригодится, если ведёте блог в X Premium. CX Codex +1 450установок deep-research 199-biotechnologies Проводит многоэтапные исследования с проверкой утверждений по источникам и собирает отчёты. Нужен для сравнений и анализа сложных тем, а не для простых поисковых вопросов. CX Codex +1 10 200установок

Из того же набора18

critical-code-reviewer Разбирает код и пул-реквесты по правильности, безопасности, доступности и тестам. Пригодится, когда нужен строгий разбор перед мержем. CX Codex +1 1 000установок brand-yml Скилл собирает и правит файлы _brand.yml, чтобы цвета, шрифты и логотипы совпадали в Shiny-приложениях и документах Quarto. CX Codex +1 912установок r-package-development Скилл ведёт агента по работе с R-пакетом: тесты через testthat, документация roxygen2, проверка R CMD check и запись в NEWS.md. CX Codex +1 807установок shiny-bslib Скилл для сборки дашбордов на Shiny с bslib и Bootstrap 5. Пригодится, когда переносите старое приложение на новые компоненты. CX Codex +1 797установок describe-design Скилл исследует кодовую базу и пишет markdown-документ о том, как устроена фича или система. Пригодится для онбординга и передачи знаний. CX Codex +1 785установок shiny-bslib-theming Скилл для оформления Shiny-приложений через bslib и Bootstrap 5: пресеты, цвета, шрифты, тёмный режим и живую подстройку темы. CX Codex +1 746установок create-release-checklist Скилл формирует чеклист подготовки релиза для R-пакета и заводит под него issue в GitHub. Пригодится мейнтейнерам перед публикацией новой версии. CX Codex +1 704установок release-post Пишет блог-пост о выпуске R или Python пакета по правилам блогов Tidyverse и Shiny. Пригодится, когда NEWS.md уже есть, а текста для сайта нет. CX Codex +1 684установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой