Claude
Cursor
Skill
r-conventions
R code conventions covering R 4.1+, tidyverse/base style, styler/lintr, roxygen2, testthat, error handling, input validation, C/C++/Rust interop, and CRAN compliance. Load when writing or reviewing R code.
Virus-scanned
Reviewed automatically before listing.
Download
goldziher-ai-rulez-internal_builtins_languages_r_skills_r-conventions-ca967ad.zip · 0 KB
Install
skills CLI
npx skills add https://github.com/Goldziher/ai-rulez/tree/main/internal/builtins/languages/r/skills/r-conventions
Claude Code
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install goldziher-ai-rulez@llmmart
Git
git clone https://github.com/Goldziher/ai-rulez.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole goldziher/ai-rulez collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
- R 4.1+, a consistent style guide (e.g., tidyverse), a formatter (e.g., styler) and a linter (e.g., lintr).
- Base R pipe
|>over magrittr%>%, prefer base R when tidyverse not needed. - Package dev:
devtools/usethis/roxygen2,testthat(80%+ via a coverage tool, e.g., covr). - Documentation: roxygen2 for inline docs and NAMESPACE management.
@exampleson all exports. - Vignettes with
knitr/rmarkdownfor long-form documentation and tutorials. - Error handling:
tryCatch()/withCallingHandlers(),cli::cli_abort()for user-facing errors. - Input validation:
checkmateorrlang::arg_match()for function parameter validation. - Security: a dependency vulnerability scanner (e.g., oysteR).
- C/C++:
Rcppor.Call(), PROTECT/UNPROTECT all R objects. Rust:extendr/rextendr. - CRAN:
R CMD check --as-cranzero warnings/notes, maintain DESCRIPTION with proper versioning. - Anti-patterns:
eval(parse(text=))with user input, mixing Rcpp and raw C API,T/Finstead ofTRUE/FALSE.
Files (ai-rulez)
-
SKILL.md 1.2 KB
--- name: r-conventions description: R code conventions covering R 4.1+, tidyverse/base style, styler/lintr, roxygen2, testthat, error handling, input validation, C/C++/Rust interop, and CRAN compliance. Load when writing or reviewing R code. --- - R 4.1+, a consistent style guide (e.g., tidyverse), a formatter (e.g., styler) and a linter (e.g., lintr). - Base R pipe `|>` over magrittr `%>%`, prefer base R when tidyverse not needed. - Package dev: `devtools`/`usethis`/`roxygen2`, `testthat` (80%+ via a coverage tool, e.g., covr). - Documentation: roxygen2 for inline docs and NAMESPACE management. `@examples` on all exports. - Vignettes with `knitr`/`rmarkdown` for long-form documentation and tutorials. - Error handling: `tryCatch()`/`withCallingHandlers()`, `cli::cli_abort()` for user-facing errors. - Input validation: `checkmate` or `rlang::arg_match()` for function parameter validation. - Security: a dependency vulnerability scanner (e.g., oysteR). - C/C++: `Rcpp` or `.Call()`, PROTECT/UNPROTECT all R objects. Rust: `extendr`/`rextendr`. - CRAN: `R CMD check --as-cran` zero warnings/notes, maintain DESCRIPTION with proper versioning. - Anti-patterns: `eval(parse(text=))` with user input, mixing Rcpp and raw C API, `T`/`F` instead of `TRUE`/`FALSE`.
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.