lifecycle

Manage R package function and argument lifecycle stages with tidyverse conventions.

33|Updated Jan 20, 2026
One-click install
npx skills add https://github.com/bbtheo/cuplyr --skill lifecycle-bbtheo
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: lifecycle
Source: https://github.com/bbtheo/cuplyr/tree/main/.claude/skills/lifecycle
Command: npx skills add https://github.com/bbtheo/cuplyr --skill lifecycle-bbtheo

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides a structured way to manage the evolution of R functions and arguments, ensuring clear communication about their stability and future.

Core Features & Use Cases

  • Package Setup: Integrates lifecycle management into your R package.
  • Deprecation & Superseding: Guides you through marking functions or arguments as deprecated or superseded.
  • Experimental Marking: Clearly identifies features that are under active development.
  • Use Case: You've updated an R package and need to inform users that a function's signature is changing, guiding them to the new version without breaking existing code.

Quick Start

Use the lifecycle skill to add a deprecated badge to the 'old_function' in your R package documentation.

Frequently Asked Questions about lifecycle

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I deprecate a function in an R package without breaking existing code?

To deprecate an R package function, the lifecycle package stages the transition by issuing warnings to users while redirecting them to the new function signature. This guides users to the updated version without breaking existing code.

What is the difference between experimental and deprecated lifecycle stages in R?

Experimental lifecycle stages indicate features under active development, whereas deprecated stages signal impending removal. The lifecycle package distinguishes these stages to communicate stability and guide users away from outdated functions.

How do I add a deprecated badge to R package documentation?

You add a deprecated badge to R package documentation by integrating lifecycle conventions into your roxygen2 tags. This visually marks the function's status directly in the manual pages.

Can I manage argument deprecation using the tidyverse lifecycle package?

Yes, the lifecycle package manages argument deprecation according to tidyverse conventions. It supports signaling stage changes for individual arguments, allowing you to update function signatures gradually.

What is the best way to supersede a function in an R package?

Superseding a function involves marking the old function with a lifecycle stage that points users to the replacement. This maintains backward compatibility while clearly communicating the preferred new function.

When should I mark an R package feature as experimental?

Mark an R package feature as experimental when it is under active development and its API might change. The lifecycle package provides the signaling to warn users that the feature is not yet stable.