agentleFS
SamuelAlevSamuelAlev/control-center/.agents/skills/version-bump/SKILL.md

version-bump

Skill8 starsChanged 7 days agoMITView on GitHub

Prepare a Control Center version bump or release. Use when asked to bump the version, prepare the next release, update release metadata, or provide release Git commands. Synchronize the app and shared build identity, update both web deployment defaults, and always add release notes to the docs changelog.

25 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use security-audit and commit.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • CloudflareSkill

    security-audit

    Security guidance and vulnerability review for codebases, APIs, services, CLI tools, libraries, and daemons. Use for security questions, focused reviews, vulnerability research, security audits, or pen tests. Run the complete workflow only for explicit codebase audit or pen-test requests, full/comprehensive/end-to-end reviews, or requested report artifacts.

    Also in 3 projects that use this

  • SentrySkill

    commit

    Create commit messages following Sentry conventions. Use when committing code changes, writing commit messages, or formatting git history. Follows conventional commits with Sentry-specific issue references.

    Also in 3 projects that use this

The file

We split this skill into the rules it gives an agent

8 rules. 0 are common, 3 are distinctive, and 5 are very specific to this project.

  • 0

    Common

    Most of the 22 edited versions we read keep these.

  • 3

    Distinctive

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  • could be automatic: a setting could enforce it
  1. Very specific:

    Run commands from the repository root.

    line 10
  2. Distinctive:

    Use the requested version.

    line 15
  3. Distinctive:

    Keep these four committed values aligned:

    line 20
  4. Very specific:

    Keep BuildInfo.buildGitSha and both manifest gitSha values as dev.

    line 29
  5. Very specific:

    Read the existing Release shape and prepend the new entry to releases.

    line 37
  6. Very specific:

    Use the release version with its v prefix, a unique matching fragment ID, the intended release date in both display and ISO formats, a …

    line 38
  7. Very specific:

    Use fvm for all Dart/Flutter commands.

    line 46
  8. Distinctive:

    Do not commit, tag, push or publish unless the user explicitly asked you to execute those actions.

    line 51

“Common” is measured: kept by at least 6 in 10 of the 22 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Bump the version

Run commands from the repository root. Read RELEASING.md first; it owns packaging, signing, release gates and publication requirements.

Choose the version

  • Inspect the root pubspec.yaml, the latest release tags, published GitHub releases and commits since the last release. Preserve unrelated working-tree changes.
  • Use the requested version. If none was specified, follow the existing release sequence and state the choice. Check local and remote tags before choosing an unused version; never overwrite a tag or release.
  • Inspect the previous version-bump commit for conventions. Workspace package versions are independent; do not bump every pubspec.yaml.

Update metadata

Keep these four committed values aligned:

FileUpdate
pubspec.yamlversion: X.Y.Z+<build>; retain the existing build suffix unless a new one was requested
packages/cc_domain/lib/src/build_info.dartBuildInfo.buildVersion, without the build suffix
web/deploy.jsonversion, without the build suffix
apps/cc_remote/web/deploy.jsonversion, without the build suffix

Keep BuildInfo.buildGitSha and both manifest gitSha values as dev. Keep BuildInfo.buildTime and both manifest builtAt values empty. Do not run the stamping tools against tracked files: CI stamps the actual commit and timestamp when building.

Comments must describe invariants, not repeat the current release number. A routine bump should not require editing tool/gen_build_info.dart or explanatory comments.

Update the docs changelog

A version bump is incomplete without docs/src/data/changelog.ts.

  • Read the existing Release shape and prepend the new entry to releases.
  • Use the release version with its v prefix, a unique matching fragment ID, the intended release date in both display and ISO formats, a short title and a factual lead.
  • Group consumer-visible changes under the existing new, improved and fixed types. Base claims on the commit range and implementation, not commit titles alone. Mention removed behavior when users need to know about it.
  • Mark only the newest entry latest: true; preserve historical entries.
  • The note field renders with a Platform label; reserve it for platform information.
  • The changelog page, jump navigation, RSS feed and machine-readable copies must consume the same release data. Do not hardcode a new version or month into a renderer.

Verify and hand off

  • Use fvm for all Dart/Flutter commands. Analyze changed Dart sources and run the relevant existing version-comparison, deployment-manifest and release-tooling tests with --concurrency=1 for root Flutter tests. Never run test suites in parallel. Report skipped checks and missing prerequisites explicitly.
  • Smoke-run the build-identity and deployment-manifest generators in a temporary directory. Check both the pubspec-derived version and the explicit release override, and ensure the generated manifest agrees with the generated identity. Leave tracked defaults unstamped.
  • Preview the docs changelog. Check the new entry, its jump link and RSS item, and verify desktop and phone layouts. Do not launch the Flutter app; the user owns fvm flutter run.
  • Report any unresolved release gates from RELEASING.md, CI or packaging. Resolve public-distribution prerequisites before triggering the release workflow: it pushes GHCR images even while the GitHub Release stays a draft. Local metadata checks do not prove signed multi-platform artifacts are ready to publish.
  • Give exact Git commands using explicit changed paths: stage, commit, push the branch, then create and push the release tag after CI passes. Tag pushes trigger a draft GitHub Release; review builds, checksums, attestations, signing and required manual scenarios before publishing.
  • Do not commit, tag, push or publish unless the user explicitly asked you to execute those actions. Never suggest git add . when unrelated files are present.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.