# Create Release Checklist

Create a release checklist and GitHub issue for an R package.

- Repository: https://github.com/posit-dev/skills (551 stars)
- Category: Git and review
- License: MIT
- Last updated: 2026-10-28
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add posit-dev/skills --skill create-release-checklist -g -a claude-code -y`
Codex: `npx skills add posit-dev/skills --skill create-release-checklist -g -a codex -y`
Cursor: `npx skills add posit-dev/skills --skill create-release-checklist -g -a cursor -y`
Gemini CLI: `npx skills add posit-dev/skills --skill create-release-checklist -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add posit-dev/skills`

## Description

Create a release checklist and GitHub issue for an R package. Use when the user asks to "create a release checklist" or "start a release" for an R package.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Create an R Package Release Checklist

Generate a release checklist for an R package and create the corresponding
GitHub issue.

## Overview

This skill guides you through creating a R package release checklist issue on
GitHub by:

- Determining the current version and prompting for release type.
- Generating an initial checklist.
- Prompting the user for additional customization.
- Creating a GitHub issue from the final checklist.

## Prerequisites

- The working directory must be an R package with a `DESCRIPTION` file at the
  root.
- The `usethis` R package must be available.

And to enable automatic issue creation:

- The `gh` CLI must be installed and authenticated.
- The R package must be associated with a GitHub repository.

## Workflow

### Step 1: Validation

First, check that the prerequisites are available (in this order for
efficiency):

1. Check that the working directory contains a file called `DESCRIPTION`. If
   not, inform the user that this must be run from an R package root directory
   and stop.
2. Use `Rscript -e 'utils::packageVersion("usethis")'` to check if the `usethis`
   package is installed. If not, instruct the user to install it with
   `install.packages("usethis")`, then stop.
3. Determine the GitHub URL for the repository, if one exists. First try
   `gh repo view --json url`. If that fails, diagnose the error:
   - If `gh` is not installed, try running `git remote -v` to find a GitHub URL.
   - If the local repo does not have a GitHub remote, suggest the user connect
     the package to GitHub using `usethis::use_github()`. Offer to run this
     command for the user; if they decline, continue without a GitHub URL.
   - If `gh` is installed but not authenticated and the repo has a GitHub
     remote, suggest that the user run `gh auth login`.

If any check fails, inform the user of the specific issue with clear
instructions on how to fix it, then stop the workflow. Do not proceed to the
next step until all prerequisites are met.

The rest: https://github.com/posit-dev/skills/blob/HEAD/open-source/create-release-checklist/SKILL.md
