Agent skill

Frb Write Changelog

by fzyzcjy in fzyzcjy/flutter_rust_bridge

Update flutterrustbridge CHANGELOG.md for a new release by collecting merged PRs since the previous version tag, mapping them to the target release section, and formatting entries to match the…

MITAuto-check passedDevelopment

Install Frb Write Changelog

skills CLI
$ npx skills add fzyzcjy/flutter_rust_bridge --skill frb-write-changelog -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install fzyzcjy/flutter_rust_bridge frb-write-changelog --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/fzyzcjy/flutter_rust_bridge.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/frb-write-changelog .claude/skills/frb-write-changelog && rm -rf skills-src

Use ~/.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/

Facts

Skill name
frb-write-changelog
GitHub stars
5.4k
Token cost
~2k tokens
SKILL.md length
1,024 words
Files
3
Skills in repo
28
Repo updated
First seen
Licence
MIT

At a glance

Update flutterrustbridge CHANGELOG.md for a new release by collecting merged PRs since the previous version tag, mapping them to the target release section, and formatting entries to match the…

  • Works in 10 steps: Inspect CHANGELOG.md → Identify the previous release tag → Collect merged PRs → …
  • Refreshing a release section in CHANGELOG.md
  • SKILL.md covers Step 1: Inspect CHANGELOG.md, Step 2: Identify the previous…, Step 3: Collect merged PRs and Step 4: Filter and normalize, plus 6 more sections
  • Runs Python scripts from its folder; calls gh, git and uv

What it does

Frb Write Changelog is an agent skill from fzyzcjy/flutter_rust_bridge. Update flutterrustbridge CHANGELOG.md for a new release by collecting merged PRs since the previous version tag, mapping them to the target release section, and formatting entries to match the existing changelog style. Use when writing or refreshing a release section in CHANGELOG.md.

Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `test_verify_changelog.py` and `verify_changelog.py`).

It sits in Development, covering Changelog and release notes and Cross-platform mobile apps. It works with Flutter and Rust. The repository describes itself as: Flutter/Dart <- Rust binding generator, feature-rich, but seamless and simple. The licence is MIT.

When your agent uses it

  • Refreshing a release section in CHANGELOG.md
  • Tasks that involve Changelog and release notes
  • Tasks that involve Cross-platform mobile apps

Example prompts

  • “/frb-write-changelog”

Requirements

  • Python 3

Workflow steps

10 steps, taken from the step headings in SKILL.md.

  1. Inspect CHANGELOG.md
  2. Identify the previous release tag
  3. Collect merged PRs
  4. Filter and normalize
  5. Write the section
  6. Review the draft
  7. Run mechanical verification
  8. Ask the user to review ordering
  9. Re-verify after human edits
  10. Regenerate published-package changelogs

What it can do on your machine

Read from SKILL.md and the folder at commit 848e438. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Ships script files (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • gh
    • git
    • uv

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use gh, git and uv, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Frb Write Changelog loads about 2k tokens when it runs. Until then it costs about 77 tokens; SKILL.md has 1,024 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~77
When it runs · the whole SKILL.md, loaded when a task matches
~2k

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.

Safety

Auto-check passed

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); files beside SKILL.md are not scanned.

SKILL.md

The full file from fzyzcjy/flutter_rust_bridge at commit 848e438, republished under its MIT licence (© fzyzcjy). 1,024 words, ~1,966 tokens.

Download SKILL.mdSave it as .claude/skills/frb-write-changelog/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
frb-write-changelog
description
Update flutter_rust_bridge CHANGELOG.md for a new release by collecting merged PRs since the previous version tag, mapping them to the target release section, and formatting entries to match the existing changelog style. Use when writing or refreshing a release section in CHANGELOG.md.

FRB Write Changelog

Step 1: Inspect CHANGELOG.md

Read the top of CHANGELOG.md.

  • Confirm the target version section exists, or add it.
  • Keep the existing V2 "what's new" header line.
  • Inspect git diff -- CHANGELOG.md before editing.
  • Replace only the target section if it already contains a placeholder such as * TODO.

Step 2: Identify the previous release tag

Find the latest release tag before the target version.

bash
git tag --sort=-creatordate | head -n 20

Use that tag as the lower bound for the new changelog entry.

Step 3: Collect merged PRs

Use GitHub CLI to collect merged PRs after the previous version.

bash
gh pr list --state merged --limit 200 --json number,title,author,mergedAt,baseRefName,url
gh pr view <number> --json number,title,author,url

Use the previous version as the lower bound when deciding which merged PRs belong to the target release.

Step 4: Filter and normalize

Keep all PRs in merged status that belong to the release range.

  • Exclude unmerged PRs.
  • Exclude PRs outside the release range.
  • When refreshing an already-published release, use both the previous release timestamp and the target release tag timestamp so later post-release PRs are not pulled into the published section.
  • Do not filter by target branch.
  • Keep docs, CI, and chore PRs if they are merged in the range.
  • Exclude only all-contributors PRs such as docs: add <name> as a contributor for code/doc; do not exclude ordinary documentation PRs whose titles start with docs: add.

Normalize titles before writing.

  • Rewrite noisy internal titles into concise changelog language.
  • Avoid duplicate summaries for split or "continued" PRs.
  • Preserve repo-specific capitalization such as CI, GitHub, Flutter, Rust, DCO, and V1.

Step 5: Write the section

Match the existing changelog style.

  • Write each item as * Summary #1234.
  • Append (thanks @username) for every third-party human-authored PR in the release range, including docs, CI, chore, tooling, and feature PRs.
  • When a changelog entry combines local maintainer PRs with a third-party PR, append the third-party thanks to that combined entry.
  • If multiple third-party authors appear in one combined entry, include each author in the same entry.
  • For an ordinary beta release section, place entries with (thanks @username) before entries without thanks. Within each group, keep merge order from newest to oldest unless the surrounding section clearly uses another order.

For a stable release that follows betas of the same version series, use a grouped stable section:

  • Put only changes merged after the latest beta release first as ordinary top-level entries. Do not include an older change solely because the beta changelogs omitted it.
  • Then add one top-level parent entry per beta, using the canonical version label such as * 2.13.0-beta.6, ordered from the latest beta to the earliest beta.
  • Copy that beta's substantive entries exactly beneath its parent as nested bullets. Preserve wording, PR references, and thanks attribution.
  • Keep the generic "what's new" entry only once at the top of the stable section.
  • Never fold a post-latest-beta PR into a copied beta entry. Keep it in the leading group even when its subject is related to a beta entry.
  • Apply thanks-first ordering independently within each copied beta group. In the post-latest-beta group, user-visible-before-internal ordering takes precedence over thanks placement.

For newly written entries, keep every user-visible feature, fix, behavior change, published-package change, and user-facing documentation PR as its own entry. Do not join such changes with and or fold multiple PRs into a shared summary. Combining multiple PRs is allowed only for user-invisible internal work such as CI, tests, agent or release tooling, and code outside published packages. Order the user-visible entries first, then put all user-invisible internal entries at the end of the post-latest-beta group immediately before the first beta parent entry. Copied beta entries remain exact copies even if they predate this rule.

Edit only CHANGELOG.md. Do not manually edit generated files for this task.

Show full SKILL.md (420 more words)Show less

Step 6: Review the draft

Review the final diff.

  • Confirm the change is limited to the target release section.
  • Confirm wording and ordering match nearby release sections.
  • Do not commit yet. Human review can still change the text, and the package changelog copies must be regenerated from the final root changelog.

Step 7: Run mechanical verification

Run the changelog verifier after finishing the draft.

bash
gh pr list --state merged --limit 200 --json number,title,author,mergedAt,baseRefName,url > /tmp/frb-merged-prs.json
uv run --script .claude/skills/frb-write-changelog/verify_changelog.py \
  --version <VERSION> \
  --previous-release-time <PREVIOUS_RELEASE_TIMESTAMP> \
  --release-time <TARGET_RELEASE_TIMESTAMP> \
  --merged-prs-json /tmp/frb-merged-prs.json

The verifier checks that:

  • PR numbers in the target section are complete, not duplicated, and not unexpected.
  • Third-party thanks authors are complete and not unexpected, including ordinary documentation PR authors. The same author may be thanked on multiple entries.
  • Entries with third-party thanks appear before entries without thanks within each copied beta group.
  • docs: add <name> as a contributor ... all-contributors PRs are ignored.

Use --ignore-pr <NUMBER> only for a documented intentional exclusion. Use --extra-local-pr <NUMBER> for a stacked local maintainer PR that belongs in the changelog but is not present in the merged PR JSON yet. Use --extra-thanks-author <LOGIN> only for a verified co-author or contributor credited by a release-range PR even though their source PR falls outside the release range; record the source PR and reason in the release journal.

Apply any confirmed fixes, then re-run the verifier.

Step 8: Ask the user to review ordering

Tell the user the changelog draft is complete and ask for a manual review.

  • Ask the user to review the wording.
  • Ask the user to review the ordering of entries.
  • Adjust the ordering if the user wants a different presentation from the mechanically collected order.

Step 9: Re-verify after human edits

Run the mechanical verifier again after the user finishes manual edits.

  • Confirm there are no missing, duplicated, or extra PR numbers.
  • Confirm there are no missing or unexpected third-party thanks authors.
  • Confirm entries with third-party thanks appear before entries without thanks within each copied beta group.
  • Apply any confirmed fixes, then do one final diff check.

If the user explicitly wants an independent review, ask a separate reviewer or subagent to compare the final CHANGELOG.md against the same merged PR list.

Step 10: Regenerate published-package changelogs

Regenerate the published-package changelog copies from the final root CHANGELOG.md:

bash
./frb_internal generate-internal-readme
  • Confirm frb_dart/CHANGELOG.md and frb_hooks/CHANGELOG.md match the root CHANGELOG.md.
  • Commit the root changelog and both generated copies together as one atomic release-preparation change.
  • Do not manually edit either generated package changelog.
  • From the clean post-commit tree, run ./frb_internal generate-internal-readme --set-exit-if-changed as the final drift gate. Do not run this flag while the changelog draft is still dirty because it checks the entire worktree.

© fzyzcjy, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files in .claude/skills/frb-write-changelog of fzyzcjy/flutter_rust_bridge.

  • SKILL.md
  • test_verify_changelog.py
  • verify_changelog.py

Open the folder on GitHubat commit 848e438

Compare with similar skills

Frb Write Changelog 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.

Frb Write Changelog compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Frb Write Changelog this skillfzyzcjy/flutter_rust_bridge5.4k—~2kAutomated safety check: PassMIT
Survey SDK AuditPostHog/posthog40k—~4.3kAutomated safety check: PassCustom licence
Flutter Pub ReleaseMixinNetwork/flutter-plugins512—~1.3kAutomated safety check: PassMIT
Release Pluginflutter/flutter-intellij2k—~1kAutomated safety check: PassBSD-3-Clause
Core API Changelibnativeapi/nativeapi166—~2.5kAutomated safety check: PassMIT
Winapp CLIboshi-xixixi/TraeSkill276—~1.9kAutomated safety check: PassMIT

Similar skills

  • Survey SDK Audit

    PostHog/posthog

    Official

    Audit PostHog survey SDK features and version requirements, and implement survey changes across the backend, UI, and SDK repositories.

    40k GitHub stars~4.3k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Flutter Pub Release

    MixinNetwork/flutter-plugins

    Prepare and draft a pub.dev release for a package in the flutter-plugins monorepo.

    512 GitHub stars~1.3k tokensUpdated 1 mo ago
    MobileAuto-check passed
  • Release Plugin

    flutter/flutter-intellij

    Prepare and execute a new release for the flutter-intellij plugin, including updating dependencies, compatibility bounds, changelogs, and verification.

    2k GitHub stars~1k tokensUpdated yesterday
    MobileAuto-check passed
  • Core API Change

    libnativeapi/nativeapi

    Carry a change to the C++ public API in core/ all the way downstream — design check, header edit, six platform implementations, C ABI + Rust/Dart/C/JS/Python regeneration, per-binding verification…

    166 GitHub stars~2.5k tokensUpdated today
    MobileAuto-check passed
  • Winapp CLI

    boshi-xixixi/TraeSkill

    Windows App Development CLI (winapp) for building, packaging, signing, debugging, and UI-automating Windows applications.

    276 GitHub stars~1.9k tokensUpdated 5 mo ago
    MobileAuto-check passed
  • Engine Whats New

    flutter/flutter

    Generates the "what's new" release summary and diff file for changes in the Flutter engine (//engine/src/flutter) between two releases (e.g., 3.47 vs 3.44).

    180k GitHub stars~978 tokensUpdated today
    MobileAuto-check passed

More from fzyzcjy/flutter_rust_bridge

All 28 skills in this repo
  • Frb Add Contributor

    fzyzcjy/flutter_rust_bridge

    Add or reconcile flutterrustbridge contributors through all-contributors PRs.

    5.4k GitHub stars~1.6k tokensUpdated yesterday
    Auto-check passed
  • Frb Android Emulator Prepare

    fzyzcjy/flutter_rust_bridge

    A skill your agent uses when preparing, installing, diagnosing, or explaining the host Android Emulator environment for flutterrustbridge local runtime validation, including Android SDK command-line…

    5.4k GitHub stars~2.1k tokensUpdated yesterday
    Auto-check: notes
  • Frb Cargokit Dev

    fzyzcjy/flutter_rust_bridge

    Develop or update CargoKit for flutterrustbridge. An agent skill from fzyzcjy/flutter_rust_bridge.

    5.4k GitHub stars~1.4k tokensUpdated yesterday
    Auto-check passed
  • Frb Categorize Code Diff

    fzyzcjy/flutter_rust_bridge

    A skill your agent uses when classifying a flutterrustbridge branch or PR diff into test and non-test changes, including colocated Rust test modules.

    5.4k GitHub stars~524 tokensUpdated yesterday
    Auto-check passed
  • Frb CI Filter

    fzyzcjy/flutter_rust_bridge

    A skill your agent uses when running focused flutterrustbridge GitHub Actions CI via cifilter, adding/removing the ci-manual-dispatch PR label, choosing exact CI jobs or matrix entries, documenting…

    5.4k GitHub stars~2.4k tokensUpdated yesterday
    Auto-check passed
  • Frb Code Generation

    fzyzcjy/flutter_rust_bridge

    A skill your agent uses when modifying Rust APIs, codegen, generated examples, or platform scaffolds in flutterrustbridge to select generation commands and preserve source-of-truth and convergence…

    5.4k GitHub stars~1.5k tokensUpdated yesterday
    Auto-check passed

Works with

Categories

Questions about Frb Write Changelog

What does Frb Write Changelog do?

Update flutterrustbridge CHANGELOG.md for a new release by collecting merged PRs since the previous version tag, mapping them to the target release section, and formatting entries to match the…. Frb Write Changelog is an agent skill from fzyzcjy/flutter_rust_bridge.md for a new release by collecting merged PRs since the previous version tag, mapping them to the target release section, and formatting entries to match the existing changelog style.

When should I use Frb Write Changelog?

Frb Write Changelog fits situations like: refreshing a release section in CHANGELOG.md; tasks that involve Changelog and release notes; tasks that involve Cross-platform mobile apps.

How do I install Frb Write Changelog in Claude Code?

Run `npx skills add fzyzcjy/flutter_rust_bridge --skill frb-write-changelog -a claude-code`. Or copy the skill folder (.claude/skills/frb-write-changelog in fzyzcjy/flutter_rust_bridge) into .claude/skills/frb-write-changelog in your project. Claude Code loads it when a task matches its description.

How do I install Frb Write Changelog in Codex?

Run `npx skills add fzyzcjy/flutter_rust_bridge --skill frb-write-changelog -a codex`. Or copy the skill folder (.claude/skills/frb-write-changelog in fzyzcjy/flutter_rust_bridge) into .agents/skills/frb-write-changelog in your project. Codex loads it when a task matches its description.

Can I use Frb Write Changelog in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add fzyzcjy/flutter_rust_bridge --skill frb-write-changelog -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/frb-write-changelog, .gemini/skills/frb-write-changelog, .github/skills/frb-write-changelog and .opencode/skills/frb-write-changelog in your project.

What does Frb Write Changelog need to run?

Going by SKILL.md and its folder, Frb Write Changelog needs Python for the scripts in its folder and the command-line tools its instructions call (gh, git and uv). Our summary lists: Python 3.

Does Frb Write Changelog access the network?

SKILL.md contains no URLs. Its commands use gh, git and uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Frb Write Changelog safe to install?

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. Review the folder before installing.

What licence does Frb Write Changelog use?

Frb Write Changelog is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Frb Write Changelog use?

About 2k tokens (SKILL.md is roughly 7.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Frb Write Changelog?

Skills that share tags, products or a category with Frb Write Changelog: Survey SDK Audit (PostHog/posthog, 40k stars), Flutter Pub Release (MixinNetwork/flutter-plugins, 512 stars), Release Plugin (flutter/flutter-intellij, 2k stars) and Core API Change (libnativeapi/nativeapi, 166 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Frb Write Changelog?

fzyzcjy (a GitHub user) maintains it in fzyzcjy/flutter_rust_bridge, which has 5,446 GitHub stars. The repository holds 28 skills in this directory. The repository was last updated on October 10, 2026.

Source: fzyzcjy/flutter_rust_bridge on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.