Write release notes for a new Popochiu version. Use this skill whenever the user says "write release notes for vX.X.X", "draft the release notes", "prepare the release", "it's time to tag a new version", or anything indicating a Popochiu release is being prepared. The skill fetches "Done" issues from the Carenalgas GitHub project, groups them by configured priority, credits external contributors, and produces a polished draft in the team's characteristic voice — ready to review and commit to release-notes/.
Draft release notes for a new version of Popochiu by fetching "Done" issues from the GitHub project, grouping them by priority into sections, crediting contributors, and writing the first draft directly to the target file so the user can iterate on it in the editor.
carenalgas/popochiuhttps://github.com/orgs/carenalgas/projects/1/release-notes/vX.X.X.mdgh CLI for all GitHub data. See references/github_project.md for
the exact queries.Extract the target version from the user's prompt (e.g. "write release notes for
v2.0.4" → v2.0.4). If not provided, ask for it before proceeding.
Use gh project item-list instead of hand-written GraphQL. It is easier to read,
less error-prone, and already flattens the custom project fields into predictable
JSON keys like status, priority, labels, and content.
Important: gh project item-list defaults to 30 items. Always pass an
explicit limit large enough for the full board, e.g. --limit 500.
Run the command described in references/github_project.md to get all project
items whose Status field is "Done".
For each issue, collect:
bugfixing, polishing, maturity,
nice-to-havedocumentation)For each issue, check for merged PRs that reference it:
gh api "repos/carenalgas/popochiu/issues/{number}/timeline" \
--jq '[.[] | select(.event == "cross-referenced") |
select(.source.issue.pull_request != null) |
{pr: .source.issue.number, author: .source.issue.user.login}] | unique'
Consider a contributor external (worth crediting) when their GitHub login does
not appear in the list of core-team members: carenalgas, stickgrinder,
matjam, quovernight. When in doubt, omit the credit — it's better to miss one
than to misattribute.
| Priority value | Section |
|---|---|
bugfixing | Fixes |
polishing | Improvements |
maturity | Improvements |
nice-to-have | Improvements |
Override rules (applied before the table above):
documentation label, or title/body clearly describes a docs change
→ Documentation section (prose paragraph, not bullet list)If an issue's priority is missing or ambiguous, make a best-effort call and note it at the end of the draft so the user can sanity-check.
Before drafting, do a quick count by section so truncation bugs are obvious:
Bugfixing issues that will become FixesPolishing, Maturity, and Nice-to-Have issues that will become
ImprovementsReport these counts in the summary below the draft.
Use this structure (omit sections that have no entries):
# Popochiu vX.X.X
[Intro paragraph]
## Fixes
- [Entry description](issue_url).
- [Entry description](issue_url) — Thanks to [@username](https://github.com/username).
## Improvements
- [Entry description](issue_url).
## Documentation
[Short prose paragraph summarising the documentation work.]
## Final Notes
[Upgrade instructions or important caveats for users.]
Entry format:
— Thanks to [@username](https://github.com/username).Writing the intro paragraph: Write 2–4 sentences in the Popochiu team's voice: first-person plural ("we"), warm, enthusiastic, occasionally playful. Look at the mix of issues to pick a