Agent skill

Deprecate R Functions and Arguments

by tidyverse in tidyverse/dplyr

Walks through deprecating an R function or argument in a package: lifecycle warning, silenced tests, a new snapshot test, documentation badge and NEWS entry.

Custom licenceAuto-check passedDevelopment

Install Deprecate R Functions and Arguments

skills CLI
$ npx skills add tidyverse/dplyr --skill tidy-deprecate-function -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install tidyverse/dplyr tidy-deprecate-function --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/tidyverse/dplyr.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/tidy-deprecate-function .claude/skills/tidy-deprecate-function && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
tidy-deprecate-function
GitHub stars
5.1k
Used in
1 other repo
Token cost
~1.2k tokens
SKILL.md length
444 words
Files
1
Skills in repo
2
Repo updated
First seen
Licence
Custom licence

At a glance

Walks through deprecating an R function or argument in a package: lifecycle warning, silenced tests, a new snapshot test, documentation badge and NEWS entry.

  • Works in 5 steps: Determine deprecation version → Add lifecycle::deprecate_warn() call → Update tests → …
  • Deprecating an exported function in an R package
  • SKILL.md covers Overview, Workflow and Implementation checklist
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Deprecating a function or parameter in an R package takes several coordinated changes, and this skill lists them as a checklist so none is missed. It starts by reading the current version from DESCRIPTION and working out the deprecation version, the next minor release, so a development version of 2.5.1.9000 deprecates in 2.6.0.

Next it adds a lifecycle::deprecate_warn() call that names the version, what is deprecated and an optional replacement, using lifecycle::is_present() to detect a deprecated argument. Existing tests that still use the feature are quieted with withr::local_options and lifecycle_verbosity, a new test using expect_snapshot checks the warning in the matching testthat file, and the tests are run to confirm they pass.

Documentation gets a lifecycle badge, placed in the description for a deprecated function or in the matching param tag for a deprecated argument, and a bullet is added to NEWS.md.

When your agent uses it

  • Deprecating an exported function in an R package
  • Retiring one argument of a function while keeping it working for now
  • Adding the lifecycle badge, test and NEWS entry for a deprecation

Example prompts

  • “Deprecate the old drop argument in my summarise function and point users to the replacement.”
  • “Mark old_fun() as deprecated in favor of new_fun() and update tests, docs and NEWS.”
  • “Which version should this deprecation target, based on the version in DESCRIPTION?”

Requirements

  • An R package using lifecycle, testthat and withr
  • A DESCRIPTION file with the package version

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Determine deprecation version
  2. Add lifecycle::deprecate_warn() call
  3. Update tests
  4. Update documentation
  5. Add NEWS entry

What it can do on your machine

Read from SKILL.md and the folder at commit d5e94e7. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are r and markdown).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Deprecate R Functions and Arguments loads about 1.2k tokens when it runs. Until then it costs about 57 tokens; SKILL.md has 444 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~57
When it runs · the whole SKILL.md, loaded when a task matches
~1.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

Its licence (Custom licence) doesn't allow us to republish the file, so here is its outline and opening line. It has 444 words (~1,249 tokens).

“Use this skill when deprecating functions or function parameters in this package.”

— opening of SKILL.md by tidyverse, Custom licence
name
tidy-deprecate-function

Read the full SKILL.md on GitHub

Files

Just SKILL.md in .claude/skills/tidy-deprecate-function of tidyverse/dplyr.

Open the folder on GitHubat commit d5e94e7

Used in 6 other repositories

We found 6 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in tidyverse/dplyr, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Deprecate R Functions and Arguments next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Deprecate R Functions and Arguments compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Deprecate R Functions and Arguments this skilltidyverse/dplyr5.1k1 repos~1.2kAutomated safety check: PassCustom licence
Releasing Php Packageyansongda/pay5.4k—~1.6kAutomated safety check: PassMIT
Releasejaemk/self_update961—~2.2kAutomated safety check: PassMIT
Releasejaemk/cached2.1k—~2.8kAutomated safety check: PassMIT
Groovy 5 Developer Guideapache/grails-core2.9k—~3kAutomated safety check: PassApache-2.0
Mariadb Operator Release Notesmariadb-operator/mariadb-operator1k—~3.3kAutomated safety check: PassApache-2.0

Similar skills

  • A skill your agent uses when preparing to publish a new version of a PHP Composer package and need to write or update CHANGELOG, upgrade guides, and documentation before tagging and releasing

    5.4k GitHub stars~1.6k tokensUpdated 10 days ago
    DevelopmentAuto-check passed
  • Release

    jaemk/self_update

    Prepare a release (bump the crate version, update CHANGELOG.md with a migration guide for breaking changes, regenerate README, commit), or run a pre-release review.

    961 GitHub stars~2.2k tokensUpdated 1 mo ago
    DevelopmentAuto-check passed
  • Release

    jaemk/cached

    Prepare a release (bump versions across all Cargo.toml files, update CHANGELOG.md, refresh the migration guide, regenerate README, commit), or run a pre-release review.

    2.1k GitHub stars~2.8k tokensUpdated 7 days ago
    DevelopmentAuto-check passed
  • Groovy 5 Developer Guide

    apache/grails-core

    Guidance for Groovy 5 work in Grails projects: syntax, closures, traits, DSLs, metaprogramming, Spock tests, static compilation and Java 21 integration.

    2.9k GitHub stars~3k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Mariadb Operator Release Notes

    mariadb-operator/mariadb-operator

    Create the release notes and upgrade guide for a mariadb-operator release.

    1k GitHub stars~3.3k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Skia Analyst

    mono/SkiaSharp

    Analyze Skia features for SkiaSharp - produces a unified analysis of what shipped (upstream engine benefits, PR links, migration guides) and what's missing (impact/priority/effort scoring, hidden…

    5.6k GitHub stars~1.6k tokensUpdated yesterday
    DevelopmentAuto-check passed

More from tidyverse/dplyr

  • Validates arguments of exported R functions with the standalone check_* type checkers from rlang, in tidyverse style with clear error messages.

    5.1k GitHub starsUsed in 1 repo~2.3k tokens
    Auto-check passed

Categories

Questions about Deprecate R Functions and Arguments

What does Deprecate R Functions and Arguments do?

Walks through deprecating an R function or argument in a package: lifecycle warning, silenced tests, a new snapshot test, documentation badge and NEWS entry. Deprecating a function or parameter in an R package takes several coordinated changes, and this skill lists them as a checklist so none is missed.0.

When should I use Deprecate R Functions and Arguments?

Deprecate R Functions and Arguments fits situations like: deprecating an exported function in an R package; retiring one argument of a function while keeping it working for now; adding the lifecycle badge, test and NEWS entry for a deprecation.

How do I install Deprecate R Functions and Arguments in Claude Code?

Run `npx skills add tidyverse/dplyr --skill tidy-deprecate-function -a claude-code`. Or copy the skill folder (.claude/skills/tidy-deprecate-function in tidyverse/dplyr) into .claude/skills/tidy-deprecate-function in your project. Claude Code loads it when a task matches its description.

How do I install Deprecate R Functions and Arguments in Codex?

Run `npx skills add tidyverse/dplyr --skill tidy-deprecate-function -a codex`. Or copy the skill folder (.claude/skills/tidy-deprecate-function in tidyverse/dplyr) into .agents/skills/tidy-deprecate-function in your project. Codex loads it when a task matches its description.

Can I use Deprecate R Functions and Arguments in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add tidyverse/dplyr --skill tidy-deprecate-function -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/tidy-deprecate-function, .gemini/skills/tidy-deprecate-function, .github/skills/tidy-deprecate-function and .opencode/skills/tidy-deprecate-function in your project.

What does Deprecate R Functions and Arguments need to run?

SKILL.md names no scripts, command-line tools or credentials: Deprecate R Functions and Arguments is instructions for the agent only. Our summary lists: An R package using lifecycle, testthat and withr; A DESCRIPTION file with the package version.

Does Deprecate R Functions and Arguments access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Deprecate R Functions and Arguments safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Deprecate R Functions and Arguments use?

Deprecate R Functions and Arguments has a licence file (the repository's licence) that doesn't match a standard licence. Read it on GitHub before reusing the skill.

How many tokens does Deprecate R Functions and Arguments use?

About 1.2k tokens (SKILL.md is roughly 5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Deprecate R Functions and Arguments?

Skills that share tags, products or a category with Deprecate R Functions and Arguments: Releasing Php Package (yansongda/pay, 5.4k stars), Release (jaemk/self_update, 961 stars), Release (jaemk/cached, 2.1k stars) and Groovy 5 Developer Guide (apache/grails-core, 2.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Deprecate R Functions and Arguments?

tidyverse (a GitHub organization) maintains it in tidyverse/dplyr, which has 5,072 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on June 2, 2026.

Source: tidyverse/dplyr on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.