Verdaccio Pull Request Workflow
verdaccio/verdaccio
Takes a change through a verdaccio pull request: branch, local checks, changeset, title and body, labels, CI and review rounds, and ports to other release lines.
Builds a reviewable changelog draft from the PRs merged between two release cuts, with contributor attribution and Markdown and JSON outputs.
$ npx skills add warpdotdev/warp --skill changelog-draft -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install warpdotdev/warp changelog-draft --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/warpdotdev/warp.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/changelog-draft .claude/skills/changelog-draft && rm -rf skills-srcUse ~/.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/
Install the "changelog-draft" agent skill from https://github.com/warpdotdev/warp/tree/master/.agents/skills/changelog-draft into .claude/skills/changelog-draft/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog-draft", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/warpdotdev/warp/tree/master/.agents/skills/changelog-draftType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add warpdotdev/warp --skill changelog-draft -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install warpdotdev/warp changelog-draft --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/warpdotdev/warp.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/changelog-draft .agents/skills/changelog-draft && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "changelog-draft" agent skill from https://github.com/warpdotdev/warp/tree/master/.agents/skills/changelog-draft into .agents/skills/changelog-draft/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog-draft", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add warpdotdev/warp --skill changelog-draft -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install warpdotdev/warp changelog-draft --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/warpdotdev/warp.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/changelog-draft .cursor/skills/changelog-draft && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "changelog-draft" agent skill from https://github.com/warpdotdev/warp/tree/master/.agents/skills/changelog-draft into .cursor/skills/changelog-draft/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog-draft", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/warpdotdev/warp.git --path .agents/skills/changelog-draft--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add warpdotdev/warp --skill changelog-draft -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install warpdotdev/warp changelog-draft --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/warpdotdev/warp.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/changelog-draft .gemini/skills/changelog-draft && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "changelog-draft" agent skill from https://github.com/warpdotdev/warp/tree/master/.agents/skills/changelog-draft into .gemini/skills/changelog-draft/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog-draft", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install warpdotdev/warp changelog-draftInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add warpdotdev/warp --skill changelog-draft -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/warpdotdev/warp.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/changelog-draft .github/skills/changelog-draft && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "changelog-draft" agent skill from https://github.com/warpdotdev/warp/tree/master/.agents/skills/changelog-draft into .github/skills/changelog-draft/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog-draft", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add warpdotdev/warp --skill changelog-draft -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install warpdotdev/warp changelog-draft --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/warpdotdev/warp.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/changelog-draft .opencode/skills/changelog-draft && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "changelog-draft" agent skill from https://github.com/warpdotdev/warp/tree/master/.agents/skills/changelog-draft into .opencode/skills/changelog-draft/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog-draft", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
changelog-draftBuilds a reviewable changelog draft from the PRs merged between two release cuts, with contributor attribution and Markdown and JSON outputs.
Given a release channel (stable, preview or dev) and a release tag, this skill works out the previous release cut to compare against. Tags share a date prefix with a numeric suffix, so the base must be the first tag of the previous cut on a different date, not just the previous tag. That range is then used to fetch merged PRs with a bundled Python script that also pulls out explicit changelog markers.
Unmarked PRs are classified by the agent, and attribution can be set to external contributors only (the default), all, or none. Helper scripts handle contributor classification, issue reporters, feature flags, TUI updates, release JSON conversion and a Slack payload. When run from the internal repository, PRs are resolved back to their public originals and private changes are left out.
The result is a Markdown draft plus JSON artifacts written to the output directory, which defaults to the runner temp folder or /tmp/changelog-draft. Nothing is published, and the skill does not modify channel_versions.json.
9 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit f571865. It shows what the files ask for, not the result of running them.
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.
Ships 8 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
python3gitFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Changelog Draft Generator loads about 3.1k tokens when it runs. Until then it costs about 67 tokens; SKILL.md has 1,050 words of instructions outside code blocks.
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.
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); the scripts in this folder are not scanned.
The full file from warpdotdev/warp at commit f571865, republished under its AGPL-3.0 licence (© warpdotdev). 1,050 words, ~3,137 tokens.
.claude/skills/changelog-draft/SKILL.md (or your agent's skills folder). This skill also uses 9 other files; get the full folder from GitHub.| Parameter | Required | Description |
|---|---|---|
channel | yes | Release channel: stable, preview, or dev |
release_tag | yes | The release tag to generate the changelog for (e.g. v0.2026.05.06.09.12.stable_00) |
output_dir | no | Directory to write output files. Defaults to $RUNNER_TEMP or /tmp/changelog-draft |
attribution | no | Attribution mode: external-only (default), all, or none |
Infer the previous release cut for comparison. Release tags follow the pattern v0.YYYY.MM.DD.HH.MM.<channel>_NN, where _NN is the RC/hotfix number within that release cut. Multiple tags can share the same date prefix (e.g. _00, _01, _02 are all part of one release cut).
The base tag must be the _00 tag of the previous release cut (i.e. a different date), not just the previous tag. For example, if generating a changelog for v0.2026.04.29.08.57.stable_01, the base should be v0.2026.04.22.08.57.stable_00, not v0.2026.04.29.08.57.stable_00.
# 1. Extract the date prefix from the release_tag (everything before _NN)
release_date_prefix="${release_tag%_*}"
# 2. List all _00 tags for the channel (these are release cut points), sorted descending
git tag --list "v0.*.${channel}_00" --sort=-version:refname
# 3. Pick the first _00 tag whose date prefix differs from release_date_prefixRecord the range as previous_cut_tag..release_tag.
Run the fetch_prs.py script to collect all public-release PRs merged in the release range and extract explicit changelog markers. Pass the repository that the workflow checked out, not necessarily the public repository. Release workflows run from warpdotdev/warp-internal, and the script deterministically resolves warp-repo-sync[bot] PRs back to their original public warpdotdev/warp PR metadata before emitting JSON. When running from warpdotdev/warp-internal, the script intentionally omits PRs that were not authored by the repo-sync bot, because those are private internal changes that must not be exposed to the changelog agent or generated artifacts.
python3 .agents/skills/changelog-draft/scripts/fetch_prs.py \
--repo "${GITHUB_REPOSITORY:-warpdotdev/warp}" \
--base-ref <previous_tag> \
--head-ref <release_tag>The script outputs JSON to stdout with this structure:
{
"range": { "base": "<previous_tag>", "head": "<release_tag>" },
"prs": [
{
"number": 1234,
"url": "https://github.com/warpdotdev/warp/pull/1234",
"title": "...",
"commit_subject": "... (#1234)",
"author": "username",
"body": "...",
"labels": ["..."],
"merged_at": "2026-05-01T...",
"explicit_entries": [
{ "category": "NEW-FEATURE", "text": "Added dark mode" }
],
"linked_issues": [5678],
"changed_files": ["app/src/ai/agent.rs", "crates/warp_features/src/lib.rs"],
"source_repo": "warpdotdev/warp",
"internal_pr": {
"number": 25712,
"url": "https://github.com/warpdotdev/warp-internal/pull/25712",
"author": "warp-repo-sync[bot]",
"title": "...",
"repo": "warpdotdev/warp-internal"
}
}
]
}Use the top-level number, url, commit_subject, author, body, labels, changed_files, and source_repo fields as the source of truth. internal_pr is audit-only and must never be used for contributor attribution or user-facing changelog links. If url is empty, omit the PR link from user-facing markdown rather than synthesizing one.
Run the classify_contributors.py script with the unique author logins from Step 2:
python3 .agents/skills/changelog-draft/scripts/classify_contributors.py \
--org warpdotdev \
--authors author1,author2,author3Output JSON:
{
"internal": ["author1"],
"external": ["author3"],
"bot": ["author2"],
"unknown": []
}Run the extract_feature_flags.py script to get the current flag gate lists:
python3 .agents/skills/changelog-draft/scripts/extract_feature_flags.py \
--file crates/warp_features/src/lib.rsOutput JSON:
{
"release_flags": ["Autoupdate", "Changelog", ...],
"preview_flags": ["Orchestration", ...],
"dogfood_flags": ["LogExpensiveFramesInSentry", ...]
}Collect all unique linked_issues from Step 2 and fetch the original reporter for each. Pass --org so the script checks org membership and filters out internal reporters automatically:
python3 .agents/skills/changelog-draft/scripts/fetch_issue_reporters.py \
--repo warpdotdev/warp \
--org warpdotdev \
--issues 5678,9012Output JSON (only external reporters are included):
{
"issue_reporters": [
{
"issue_number": 5678,
"title": "Crash when opening large file",
"reporter": "community-user",
"reporter_url": "https://github.com/community-user",
"url": "https://github.com/warpdotdev/warp/issues/5678"
}
]
}The --org flag checks each reporter's org membership via the GitHub API, filtering out internal members so they aren't misattributed as external community reporters. These reporters will be credited in the "Community" section of the changelog.
Whenever the markdown draft credits a PR author, contributor, or issue reporter, render the username as a GitHub profile link such as [@username](https://github.com/username).
Determine TUI impact independently from the regular changelog category for every PR. Explicit CHANGELOG-TUI and CHANGELOG-OZ markers are authoritative entries and may coexist with New Feature, Improvement, or Bug Fix entries. When a PR has an explicit TUI entry, preserve its other explicit entries. Otherwise, if commit_subject contains TUI as a standalone case-insensitive token, route any explicit New Feature, Improvement, or Bug Fix text to TUI instead of its regular category. This keeps clearly TUI-labeled changes out of the desktop changelog while allowing explicitly marked shared changes to appear on both surfaces.
For each PR that has no explicit CHANGELOG-* entries, decide whether to include it and under which category.
Follow the classification guidance in .agents/skills/classify-changelog-pr/SKILL.md.
For each unmarked PR, produce a classification:
{
"pr_number": 1234,
"include": true,
"category": "IMPROVEMENT",
"text": "Proposed changelog line",
"impacts_tui": true,
"confidence": "high",
"rationale": "...",
"feature_flag": null,
"needs_review": false
}Key rules:
include: falseinclude: false for stable channelinclude: false for stable, include: true for previewimpacts_tui: true when Warp Agent CLI users observe the change, including shared Agent capabilities such as tool-call or edit-file behaviorneeds_review: true and confidence: "low"include: falseFeature-flag detection: Use the changed_files list from Step 2 to check if any PR touches crates/warp_features/src/lib.rs or references a FeatureFlag variant in its title/body. Cross-reference with the flag lists from Step 4 to determine channel visibility.
Unknown contributors: Authors in the unknown bucket (org membership check failed due to auth) should be treated conservatively — do not attribute them as external. Note them in the output for manual verification.
Combine explicit entries (Step 2) and inferred entries (Step 6) into the final report. Group by category in this order:
NEW-FEATURE — New FeaturesIMPROVEMENT — ImprovementsBUG-FIX — Bug FixesTUI — TUI UpdatesOZ — Oz UpdatesPRs marked with CHANGELOG-NONE are explicitly opted out and must never appear in the changelog markdown.
Preserve every explicit entry independently. For an inferred regular entry with impacts_tui: true, also create a TUI entry with the same user-facing text and PR metadata. Do not duplicate an inferred entry whose category is already TUI.
When creating entries, copy pr_number, url, author, source_repo, and internal_pr from the normalized PR record. The release JSON converter uses url directly; do not invent public PR URLs from PR numbers.
Write two files to output_dir:
changelog-draft.md — Human-reviewable markdown, ready for Slack/Notion:
# Changelog Draft
**Channel:** stable
**Range:** v0.2026.05.01... → v0.2026.05.06...
**Generated:** 2026-05-06T15:00:00Z
## New Features
- Added dark mode ([#1234](https://github.com/warpdotdev/warp/pull/1234)) — [@external-contributor](https://github.com/external-contributor) ✨
## Improvements
- Faster tab switching ([#1235](https://github.com/warpdotdev/warp/pull/1235))
## Bug Fixes
- Fixed crash on startup ([#1236](https://github.com/warpdotdev/warp/pull/1236))
## TUI Updates
- Added inline command menus to Warp Agent CLI ([#1238](https://github.com/warpdotdev/warp/pull/1238))
## Oz Updates
- Improved agent memory ([#1237](https://github.com/warpdotdev/warp/pull/1237))
## Community
### Contributors
- [@contributor1](https://github.com/contributor1) — [#1234](https://github.com/warpdotdev/warp/pull/1234) ✨
### Issue Reporters
Thanks to the community members who reported issues fixed in this release:
- [@reporter1](https://github.com/reporter1) — [#5678](https://github.com/warpdotdev/warp/issues/5678) "Crash when opening large file"The markdown draft must not include "Needs Review" or "Skipped PRs" sections — those are internal details that belong only in the JSON audit artifact.
changelog-draft.json — Machine-readable audit artifact (internal only):
{
"channel": "stable",
"range": { "base": "v0...", "head": "v0..." },
"generated_at": "2026-05-06T15:00:00Z",
"entries": [
{
"pr_number": 1234,
"url": "https://github.com/warpdotdev/warp/pull/1234",
"category": "NEW-FEATURE",
"text": "Added dark mode",
"source": "explicit",
"author": "external-contributor",
"is_external": true,
"confidence": "high",
"rationale": null,
"feature_flag": null,
"source_repo": "warpdotdev/warp",
"internal_pr": null
}
],
"skipped": [...],
"needs_review": [...],
"issue_reporters": [...]
}The JSON artifact retains skipped, needs_review, and issue_reporters for audit purposes — every PR in the range must appear in either entries, skipped, or needs_review.
Run the conversion script to deterministically produce changelog-release.json from the audit artifact:
python3 .agents/skills/changelog-draft/scripts/convert_to_release_json.py \
--input <output_dir>/changelog-draft.json \
--output <output_dir>/changelog-release.jsonThis produces the flat JSON structure consumed by the create_release workflow for Slack and the in-app "What's New" dialog. Do not generate this file manually — always use the script so the output is deterministic and consistent.
channel_versions.json or any production config file.output_dir only.entries, skipped, or needs_review.After generating output, verify:
fetch_prs.py extracted (no dropped markers).© warpdotdev, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 9 other files (scripts) in .agents/skills/changelog-draft of warpdotdev/warp.
Open the folder on GitHubat commit f571865
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in warpdotdev/warp, which our catalogue first saw on October 7, 2026.
Changelog Draft Generator 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Changelog Draft Generator this skillwarpdotdev/warp | 65k | 1 repos | ~3.1k | Automated safety check: Pass | AGPL-3.0 | |
| Verdaccio Pull Request Workflowverdaccio/verdaccio | 18k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Create Cuda Python Pull RequestNVIDIA/cuda-python | 3.4k | — | ~1.1k | Automated safety check: Pass | Apache-2.0 | |
| pybind11 Release Preparationpybind/pybind11 | 18k | — | ~1.7k | Automated safety check: Pass | Custom licence | |
| Plannotator Release Preparationbacknotprop/plannotator | 9.2k | — | ~4.6k | Automated safety check: Pass | Apache-2.0 | |
| Ansible Pull Request Reviewansible/ansible | 71k | — | ~570 | Automated safety check: Pass | GPL-3.0 |
verdaccio/verdaccio
Takes a change through a verdaccio pull request: branch, local checks, changeset, title and body, labels, CI and review rounds, and ports to other release lines.
NVIDIA/cuda-python
Create a CUDA Python pull request from an approved personal or organization-owned fork, including the GitHub CLI GraphQL fallback for renamed organization-owned forks.
pybind/pybind11
Opens the pybind11 release-preparation pull request: picking the release base, bumping the version in common.h and integrating the changelog, following docs/release.rst.
backnotprop/plannotator
Drafts Plannotator release notes with full contributor credit, bumps versions in dependency order, builds, and starts the tag-driven release pipeline, in four reviewed phases.
ansible/ansible
Reviews an Ansible pull request by number, following the steps in the project's CLAUDE.md, with early checks for changelog fragments and tests.
pybind/pybind11
Walks a maintainer through publishing a pybind11 release after the preparation PR merges, with preflight checks, confirmations before each push and a GitHub release.
warpdotdev/warp
Builds or updates a design system in Figma from a codebase in ordered phases: discovery, variables and tokens, components, theming and documentation, with checkpoints.
warpdotdev/warp
Required groundwork before any use_figma call: the rules and reference files for running JavaScript in a Figma file through the Plugin API without common failures.
warpdotdev/warp
Authors and edits file-based Warp software factory definitions rooted at factory.yaml, covering agents, automations, scorers and webhooks, and validates them before a pull request.
warpdotdev/warp
Turns a Figma frame or component into production code that matches the design, using the Figma MCP server and the project's own design system.
warpdotdev/warp
Migrates the compatible subset of settings and global file-based MCP servers from the Warp desktop app into Warp Agent CLI without exposing credentials or state.
warpdotdev/warp
Creates project-specific design system rules from your codebase so coding agents implement Figma designs with your components, naming and tokens.
Categories
Builds a reviewable changelog draft from the PRs merged between two release cuts, with contributor attribution and Markdown and JSON outputs. Given a release channel (stable, preview or dev) and a release tag, this skill works out the previous release cut to compare against. Tags share a date prefix with a numeric suffix, so the base must be the first tag of the previous cut on a different date, not just the previous tag.
Changelog Draft Generator fits situations like: drafting release notes for a stable, preview or dev release; listing external contributors for a release; preparing a changelog for human review before publishing.
Run `npx skills add warpdotdev/warp --skill changelog-draft -a claude-code`. Or copy the skill folder (.agents/skills/changelog-draft in warpdotdev/warp) into .claude/skills/changelog-draft in your project. Claude Code loads it when a task matches its description.
Run `npx skills add warpdotdev/warp --skill changelog-draft -a codex`. Or copy the skill folder (.agents/skills/changelog-draft in warpdotdev/warp) into .agents/skills/changelog-draft in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add warpdotdev/warp --skill changelog-draft -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/changelog-draft, .gemini/skills/changelog-draft, .github/skills/changelog-draft and .opencode/skills/changelog-draft in your project.
Going by SKILL.md and its folder, Changelog Draft Generator needs Python for the scripts in its folder and the command-line tools its instructions call (python3 and git). Our summary lists: Python 3; Access to the GitHub repository's merged pull requests.
SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Changelog Draft Generator is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.1k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Changelog Draft Generator: Verdaccio Pull Request Workflow (verdaccio/verdaccio, 18k stars), Create Cuda Python Pull Request (NVIDIA/cuda-python, 3.4k stars), pybind11 Release Preparation (pybind/pybind11, 18k stars) and Plannotator Release Preparation (backnotprop/plannotator, 9.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
warpdotdev (a GitHub organization) maintains it in warpdotdev/warp, which has 65,380 GitHub stars. The repository holds 46 skills in this directory. The repository was last updated on October 7, 2026.
Source: warpdotdev/warp on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.