# r-cursorrules-prompt-file-best-practices

Задаёт стандарты разработки на R: структуру каталогов, стиль tidyverse, изоляцию окружения через renv и правила оформления пакетов.

- правило · `type=rule` · Cursor · ★ 41024
- Автор: PatrickJS
- Лицензия: CC0-1.0 · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/PatrickJS/awesome-cursorrules/tree/HEAD/rules/r-cursorrules-prompt-file-best-practices.mdc
- Обновлён: 2026-05-30
- HTML: https://affpapa.org/nevibecode/rules/r-cursorrules-prompt-file-best-practices

## Что делает

Набор инструкций требует разделять проект на каталоги `R/`, `data/`, `output/` и `docs/`. Исходные данные остаются неизменными, а обработанные таблицы попадают в `data/processed/`. Для кода действует гайдлайн tidyverse. Отступы строго в 2 пробела, длина строки ограничена 80 символами, а вызовы внешних пакетов требуют явного указания пространства имён вроде `dplyr::select`.

В архитектуре пакетов правило требует фиксировать версии библиотек в файле `DESCRIPTION` и собирать справку через `devtools::document()`. При анализе больших таблиц ассистент переключается на `data.table::fread`, а если данные не помещаются в оперативную память, подключает `duckdb`. Строки объединяются через `glue::glue` вместо устаревших функций конкатенации.

Для генерации отчётов приоритет отдан Quarto. Без установленного в системе Quarto CLI ассистент вернётся к разметке RMarkdown.

## Установка

### Cursor (родная платформа)

**Вручную: положить файлы**
- Файл: `.cursor/rules/r-cursorrules-prompt-file-best-practices.mdc` — Во frontmatter: description, globs, alwaysApply

### Claude Code

**Вручную: положить файлы**
- Файл: `.claude/rules/r-cursorrules-prompt-file-best-practices.md` — Поле paths во frontmatter ограничивает файлы: globs из источника → paths

### Codex

**AGENTS.md**
- Codex читает AGENTS.md: вставьте текст правила туда

### GitHub Copilot

**Вручную: положить файлы**
- Файл: `.github/instructions/r-cursorrules-prompt-file-best-practices.instructions.md` — Поле applyTo задаёт, к каким файлам применять: globs из источника → applyTo

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/rules/r-cursorrules-prompt-file-best-practices.md`

### Cline

**Вручную: положить файлы**
- Файл: `.clinerules/r-cursorrules-prompt-file-best-practices.md`

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/PatrickJS/awesome-cursorrules/tree/HEAD/rules/r-cursorrules-prompt-file-best-practices.mdc

## Когда брать
- организовать структуру каталогов R-проекта или пакета
- оформить документацию функций с помощью roxygen2
- настроить изоляцию зависимостей через renv
- оптимизировать обработку данных с duckdb и data.table

## Примеры запросов агенту
- Сгенерируй модуль Shiny для фильтрации таблиц с использованием moduleServer и NS()
- Создай функцию расчёта метрик в каталоге `R/` с документацией roxygen2 и проверкой типов
- Перепиши обработку сырых CSV-файлов из `data/` с использованием data.table::fread

## Похожие
- [winui3](https://affpapa.org/nevibecode/rules/winui3.md) — правило · ★ 40451
- [vue](https://affpapa.org/nevibecode/rules/vue.md) — правило · ★ 40451
- [vsixtoolkit](https://affpapa.org/nevibecode/rules/vsixtoolkit.md) — правило · ★ 40451
- [tanstack-start-shadcn-tailwind](https://affpapa.org/nevibecode/rules/tanstack-start-shadcn-tailwind.md) — правило · ★ 40451
- [swift-mcp-server](https://affpapa.org/nevibecode/rules/swift-mcp-server.md) — правило · ★ 40451
- [svelte](https://affpapa.org/nevibecode/rules/svelte.md) — правило · ★ 40451

Из того же набора: [patrickjs/awesome-cursorrules](https://affpapa.org/nevibecode/by/patrickjs/awesome-cursorrules.md) — 210 карточек

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
