release-post
Create professional package release blog posts following Tidyverse or Shiny blog conventions.
Skill by Garrick Aden-Buie (@gadenbuie)
Chalk Labs
Need help deploying release-post?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/posit-dev-release-post
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: writing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/release-post
What's inside
- Skill name
release-post- Description
- Create professional package release blog posts following Tidyverse or Shiny blog conventions. Use when the user needs to: (1) Write a release announcement blog post for an R or Python package for tidyverse.org or shiny.posit.co, (2) Transform NEWS/changelog content into blog format, (3) Generate acknowledgments sections with contributor lists, (4) Format posts following specific blog platform requirements. Supports both Tidyverse (hugodown) and Shiny (Quarto) blog formats with automated contributor fetching and comprehensive style guidance.
- License
- MIT
- Metadata
- author: Garrick Aden-Buie (@gadenbuie) · version: 1.0
- Instructions
- 276 lines in SKILL.md · view on GitHub
Files (5)
- SKILL.md
- content-guidelines.md · references/
- shiny-formatting.md · references/
- tidyverse-formatting.md · references/
- get_contributors.R · scripts/
SKILL.md (first lines)
# Package Release Post Create professional R/Python package release blog posts following Tidyverse or Shiny blog conventions. ## Quick Start 1. **Identify the blog platform**: Tidyverse (tidyverse.org) or Shiny (shiny.posit.co) 2. Verify NEWS.md or changelog exists for the package 3. Gather package info: name, version, repository (e.g., "tidyverse/dplyr") 4. Follow the workflow below 5. Use `scripts/get_contributors.R` to generate acknowledgments 6. Reference the appropriate formatting guide for final polish ## Platform Selection This skill supports two blog platforms with different formatting requirements: - **Tidyverse blog** (tidyverse.org) - Uses hugodown - R packages primarily - More rigid structure and conventions - See `references/tidyverse-formatting.md` - **Shiny blog** (shiny.posit.co) - Uses Quarto - R and Python packages - More flexible, feature-focused structure - See `references/shiny-formatting.md` **First, determine which platform the post is for**, then follow the general workflow and apply platform-specific formatting. ## General Workflow These steps apply to both platforms. Content guidelines are based on Tidyverse best practices but adapt them as needed for Shiny posts. ### Step 1: Gather Information Collect required information: - **Platform**: Tidyverse or Shiny blog? - **Package name and version**: e.g., "dplyr 1.2.0" or "shiny 1.9.0" - **Repository**: GitHub repo in "owner/repo" format - **Package language**: R or Python - **NEWS content**: Read the package's NEWS.md, CHANGELOG, or NEWS - **Package description**: One-sentence core purpose - **Previous release tag**: For contributor fetching (optional) - **Featured image**: For frontmatter (optional but recommended) ### Step 2: Structure the Post Create the post outline following this order: 1. **Frontmatter**: Platform-specific YAML (see formatting references) 2. **Title and Opening**: - Title: Package name and version - Opening: Announcement with one-sentence package description - Installation: Code block with installation command - Overview: Brief summary with link to full release notes 3. **Main Content** (choose appropriate sections): - **Migration guide** (if breaking changes) - Always first when present - **Lifecycle changes** (deprecations, soft-deprecations, defunct) - **Feature sections** (one per major feature, descriptive headings) - **Minor improvements** (bulleted list) 4. **Acknowledgements** (when appropriate): - Use `scripts/get_contributors.R` - Format: "A big thank you to all the folks who helped make this release happen:" - Comma-separated GitHub links ### Step 3: Apply Content Guidelines Follow the best practices in `references/content-guidelines.md`: - **Opening style**: "We're [random adjective expressing excitement] to announce the release of..." - **Section organization**: Migration → Lifecycle → Features → Improvements → Acknowledgements - **Tone**: Conversational, professional, enthusiastic but authentic - **Technical precision**: Use exact function names in backticks - **Focus on benefits**: Explain "why" not just "what" - **Code examples**: Realistic, well-commented, properly formatted ### Step 4: Transform NEWS Content Convert NEWS.md bullets to blog-friendly content: - **Research features thoroughly**: Don't just copy NEWS bullets—read function docs, check PRs, understand the context - **Expand context**: Why changes matter, not just what changed - **Add complete code examples**: Show realistic usage with full workflows, not just function signatures - **Explain concepts first**: For unfamiliar features, explain what they are and how they work before showing code - **Group thematically**: Combine related NEWS items into coherent sections - **Use conversational tone**: Transform terse bullets into prose - **Link documentation**: Add relevant links to docs and resources - **Highlight breaking changes**: Make migration paths clear - **Multi-language parity** (Shiny only): For R+Python packages on the Shiny blog, ensure all examples show both languages in tabsets ### Step 5: Apply Platform-Specific Formatting **For Tidyverse posts**, read `references/tidyverse-formatting.md` and apply: - hugodown frontmatter with `slug`, `photo.url`, `photo.author` - Specific slug format: `packagename-x-y-z` (hyphens replace dots) - R code blocks with `r` language identifier - Acknowledgements always included as final section **For Shiny posts**, read `references/shiny-formatting.md` and apply: - Quarto frontmatter with YAML anchors for social media - Flexible title formatting - Use tabsets for Python/R or Express/Core variations - Platform-specific code block attributes - Acknowledgements optional, varies by post type - May use lead paragraphs, callouts, embedded media ### Step 6: Generate Acknowledgements Run the contributor script: ```bash Rscript scripts/get_contributors.R "owner/repo" ```
From posit-dev/skills, MIT.
More from posit-dev/skills
- 0.815score
r-cli
Garrick Aden-Buie (@gadenbuie)
Comprehensive R package for command-line interface styling, semantic messaging, and user communication.
SkillAFreshness: A★ 547Claude Code +9 - 0.815score
r-lifecycle
Garrick Aden-Buie (@gadenbuie)
Guidance for managing R package lifecycle according to tidyverse principles using the lifecycle package.
SkillAFreshness: A★ 547Claude Code +9 - 0.815score
pr-create
Garrick Aden-Buie (@gadenbuie)
Creates a pull request from current changes, monitors GitHub CI, and debugs any failures until CI passes.
SkillAFreshness: A★ 547Claude Code +9 - 0.815score
r-testthat
Garrick Aden-Buie (@gadenbuie)
Best practices for writing R package tests with testthat version 3+.
SkillAFreshness: A★ 547Claude Code +9 - 0.815score
shiny-r-optimize
Garrick Aden-Buie (@gadenbuie)
Diagnose and fix performance problems in Shiny for R apps — slow startup, sluggish interactions, long-running blocking operations, and apps that struggle…
SkillAFreshness: A★ 547Claude Code +9 - 0.815score
shiny-py-optimize
Garrick Aden-Buie (@gadenbuie)
Diagnose and fix performance problems in Shiny for Python apps — slow startup, sluggish interactions, blocking operations, and apps that struggle beyond a…
SkillAFreshness: A★ 547Claude Code +9 - 0.809score
r-mirai
Charlie Gao (@shikokuchuo)
Help users write correct R code for async, parallel, and distributed computing using mirai.
SkillAFreshness: A★ 547Claude Code +9 - 0.809score
critical-code-reviewer
Garrick Aden-Buie (@gadenbuie)
Rigorously review code or pull requests for correctness, security, accessibility, maintainability, tests, and edge cases.
SkillAFreshness: A★ 547Claude Code +9 - 0.809score
r-cran-extrachecks
Garrick Aden-Buie (@gadenbuie)
Prepare R packages for CRAN submission by checking for common ad-hoc requirements not caught by devtools::check().
SkillAFreshness: A★ 547Claude Code +9 - 0.809score
review-testing
Garrick Aden-Buie (@gadenbuie)
Review test code for quality, design, and completeness after implementing a feature or fixing a bug.
SkillAFreshness: A★ 547Claude Code +9 - 0.809score
r-cran-status
Garrick Aden-Buie (@gadenbuie)
Look up an R package's live status on cran.r-project.org - submission/review state (queue, human review, waiting, archived, past version's fate) or R CMD…
SkillAFreshness: A★ 547Claude Code +9 - 0.809score
describe-design
Garrick Aden-Buie (@gadenbuie)
Research a codebase and create architectural documentation describing how features or systems work.
SkillAFreshness: A★ 547Claude Code +9
Signals
- Stars
- 547
- Forks
- 57
- Open issues
- 6
- Last commit (this folder)
- Feb 20, 2026 (8 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.0
- License
- MIT
- Repository
- github.com/posit-dev/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Garrick Aden-Buie (@gadenbuie)
- 0.815score
r-lifecycle
Garrick Aden-Buie (@gadenbuie)
Guidance for managing R package lifecycle according to tidyverse principles using the lifecycle package.
SkillAFreshness: A★ 547Claude Code +9 - 0.815score
r-cli
Garrick Aden-Buie (@gadenbuie)
Comprehensive R package for command-line interface styling, semantic messaging, and user communication.
SkillAFreshness: A★ 547Claude Code +9 - 0.815score
shiny-py-optimize
Garrick Aden-Buie (@gadenbuie)
Diagnose and fix performance problems in Shiny for Python apps — slow startup, sluggish interactions, blocking operations, and apps that struggle beyond a…
SkillAFreshness: A★ 547Claude Code +9 - 0.815score
r-testthat
Garrick Aden-Buie (@gadenbuie)
Best practices for writing R package tests with testthat version 3+.
SkillAFreshness: A★ 547Claude Code +9 - 0.815score
shiny-r-optimize
Garrick Aden-Buie (@gadenbuie)
Diagnose and fix performance problems in Shiny for R apps — slow startup, sluggish interactions, long-running blocking operations, and apps that struggle…
SkillAFreshness: A★ 547Claude Code +9 - 0.815score
pr-create
Garrick Aden-Buie (@gadenbuie)
Creates a pull request from current changes, monitors GitHub CI, and debugs any failures until CI passes.
SkillAFreshness: A★ 547Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get release-post running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
release-post skill. Agent Mart. https://agentmart.dev/skills/posit-dev-release-post (last updated 2026-10-24)