CLI-приложение на R
Build command-line apps in R using the Rapp package. Use when creating a CLI tool in R, adding argument parsing to an R script, turning an R script into a command-line app, shipping CLIs in an R package, or using Rapp (the alternative Rscript front-end). Also use for shebang scripts, exec/ directory in R packages, or subcommand-based R tools.
Что делает навык
Навык позволяет создавать и использовать CLI-приложения на R с помощью пакета Rapp, который автоматически преобразует скрипты R в инструменты командной строки с разбором аргументов, справкой и поддержкой подкоманд. Он решает задачу превращения обычных R-скриптов в отполированные CLI-инструменты с нулевым количеством шаблонного кода.
Когда применять
- Создание CLI-инструментов на R с автоматическим разбором аргументов командной строки.
- Превращение существующих скриптов R в приложения командной строки с поддержкой help-текста.
- Поставка CLI-инструментов в составе R-пакетов через директорию exec/.
- Разработка скриптов с подкомандами (subcommands) и глобальными/локальными опциями.
- Написание shebang-скриптов для macOS/Linux, работающих как самостоятельные исполняемые файлы.
Как работает
- Установить пакет Rapp и добавить его исполняемый файл в PATH с помощью Rapp::install_pkg_cli_apps("Rapp").
- Написать R-скрипт, используя верхнеуровневые присваивания для определения аргументов (строки, числа, булевы значения, NULL для позиционных аргументов).
- Добавить shebang #!/usr/bin/env Rapp в начало скрипта и при необходимости метаданные через комментарии #| (name, description).
- Для сложных сценариев использовать switch() для объявления подкоманд, где опции до switch глобальны, а внутри ветвей — локальны.
- Тестировать скрипт из сессии R с помощью Rapp::run(), передавая аргументы командной строки как вектор.
- При упаковке в пакет поместить скрипты в директорию exec/ и добавить Rapp в Imports в DESCRIPTION, затем использовать Rapp::install_pkg_cli_apps для установки.
Примеры запросов агенту
Что понадобится
- R ≥ 4.1.0
- Пакет Rapp (CRAN или GitHub r-lib/Rapp)
- Доступ к PATH для исполняемого файла Rapp (например, ~/.local/bin на macOS/Linux)
Описание составлено по SKILL.md навыка, сверено 05.10.2026.
Как подключить
SKILL.md к навыкам ассистентаНавык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.