UP

Updates the Dockerman website versioning, changelog, and release dates based on markdown input.

Install

mkdir -p .claude/skills/update-version && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/5109" && unzip -o skill.zip -d .claude/skills/update-version && rm skill.zip

Installs to .claude/skills/update-version

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Update Dockerman version and changelog. Use when releasing a new version with changelog content in markdown format.
115 chars✓ has a “when” trigger
Beginner

Key capabilities

  • Parse semantic versioning from markdown headers
  • Update central configuration files for site constants
  • Propagate release dates across multiple locale files
  • Inject release dates into UI component meta-versions
  • Handle date formatting for multiple languages

How it works

It regex-parses the provided markdown to extract version strings and maps them to pre-defined placeholders across local configuration files.

Inputs & outputs

You give it
Markdown changelog content with vX.Y.Z header
You get back
Updated source files containing new version and release dates

When to use update-version

  • Bumping project version
  • Adding new release dates
  • Updating changelog files

About this skill

Update Version Skill

Updates the Dockerman website with a new version release.

Single sources of truth:

  • Version lives in apps/landing/src/app/siteConfig.ts latestVersion. All components (Navbar, Hero, SnapshotHero) and the downloads.ts VERSION constant import from it; locale hero.eyebrow / hero.metaVersion use the {{version}} placeholder.
  • Release date lives in apps/landing/src/config/downloads.ts RELEASE_DATE (ISO). It flows to the latest history[] entry, the Download page hero, and Hero metaVersion via formatDate(downloadsConfig.latest.releaseDate, locale) from @/lib/format + a {{date}} placeholder.

Do not reintroduce hardcoded version or date strings in those files.

The historical / per-release locations (changelog MDX entries, README badges, locale tagline highlight phrases, the release-x-y-z slug) still need per-release edits, because they describe a specific release rather than "the latest version".

Input Format

User provides changelog content in markdown format:

## vX.Y.Z

### ✨ Features

- 🔔 **Feature Name**: Description of the feature

### 🎨 Improvements

- ⚡ **Improvement Name**: Description

Instructions

1. Extract Version Number and Date

Parse vX.Y.Z from the first ## vX.Y.Z heading. Use today's date as the release date.

Prepare the date in these formats — you'll need them in different files:

FormatWhere usedExample (Apr 26, 2026)
ISO YYYY-MM-DDdownloads.ts RELEASE_DATE (single source)2026-04-26
en Mon DD, YYYYen changelog, README badgeApr 26, 2026
zh YYYY 年 M 月 D 日zh changelog2026 年 4 月 26 日
ja YYYY 年 M 月 D 日ja changelog2026 年 4 月 26 日
es D de mes de YYYYes changelog26 de abril de 2026
URL-encoded enREADME release-date badge URLApr%2026%2C%202026

Hero metaVersion no longer needs a per-locale date string — it interpolates {{date}}, with formatDate() deriving the localized date from the ISO RELEASE_DATE automatically.

2. Update apps/landing/src/app/siteConfig.ts (single source of truth for version)

latestVersion: 'X.Y.Z',  // no 'v' prefix

This automatically propagates to:

  • Navbar.tsx brand badge (v{siteConfig.latestVersion})
  • Hero.tsx terminal animation line + eyebrow (interpolated via {{version}}) + metaVersion (interpolated via {{version}} and {{date}})
  • SnapshotHero.tsx metaBuild field
  • downloads.ts VERSION constant + latest history[] entry

Never edit those files for the version literal — they already read siteConfig.latestVersion or {{version}}.

3. Update apps/landing/src/config/downloads.ts

Two edits per release:

  1. Bump RELEASE_DATE to the new ISO date.
  2. Prepend a new entry to history[] (keep prior entries):
history: [
  { version: VERSION, date: RELEASE_DATE, summarySlug: 'release-x-y-z' },
  // ...previous entries (literal versions/dates — these are historical)
]

The latest history entry uses the VERSION and RELEASE_DATE constants directly. Older entries remain literal.

4. Update Locale Files in packages/shared/src/locales/

Update all four (en.json, zh.json, ja.json, es.json). Two keys per file:

  • hero.eyebrow — keep the v{{version}} — prefix; rewrite the highlight phrases for the new release (translated per locale).

    Pattern: "v{{version}} — <highlight 1>, <highlight 2>, <highlight 3>"

  • hero.metaVersion — pure template "v{{version}} · {{date}}". Do not edit per release — both placeholders are filled at runtime from siteConfig.latestVersion and formatDate(downloadsConfig.latest.releaseDate, locale).

The {{version}} placeholder is filled with siteConfig.latestVersion and {{date}} with the localized release date, so don't write either literal here.

5. Convert Markdown to MDX and Prepend to All Four Changelog Locales

Per-locale changelog files (translate body for zh/ja/es):

  • apps/landing/src/content/changelog/en/page.mdx
  • apps/landing/src/content/changelog/zh/page.mdx
  • apps/landing/src/content/changelog/ja/page.mdx
  • apps/landing/src/content/changelog/es/page.mdx

Conversion rules

  1. Wrap with <ChangelogEntry version="vX.Y.Z" date="<localized date>">…</ChangelogEntry>
  2. Add a short H2 title summarizing the release
  3. Replace **text:** patterns with <Bold>text:</Bold>
  4. Preserve emoji prefixes

MDX Template

<ChangelogEntry version="vX.Y.Z" date="<localized date>">
## Short Release Title

Brief description of what this release introduces.

### ✨ Features

- <Bold>Feature Name:</Bold> Description of the feature

### 🔧 Improvements

- <Bold>Improvement Name:</Bold> Description

### 🐛 Bug Fixes

- <Bold>Fix Name:</Bold> Description

</ChangelogEntry>

The version literal does appear in <ChangelogEntry version="vX.Y.Z"> — that's intentional, because each entry is a historical record of a specific release.

6. Update README Files

Update all four READMEs: README.md (en), README.zh-CN.md, README.ja.md, README.es.md.

Update version + release-date badges:

[![Version](https://img.shields.io/badge/version-vX.Y.Z-blue.svg?style=flat-square)](https://github.com/dockerman/dockerman/releases/tag/vX.Y.Z)
[![Release Date](https://img.shields.io/badge/release%20date-Mon%20DD%2C%20YYYY-green.svg?style=flat-square)](https://github.com/dockerman/dockerman/releases/tag/vX.Y.Z)

URL encoding: spaces → %20, commas → %2C.

7. Update README Features Section

Add new features to the Features section in all four READMEs:

  • One brief line per feature, no detailed sub-items
  • Add under the appropriate section (Container Management, Image Management, etc.) or create a new section
  • Translate for zh/ja/es

File References

FilePer-release?What changes
apps/landing/src/app/siteConfig.tslatestVersion (single source of truth — propagates to all UI)
apps/landing/src/config/downloads.tsRELEASE_DATE + prepend history[] entry (uses VERSION/RELEASE_DATE consts)
packages/shared/src/locales/{en,zh,ja,es}.jsonhero.eyebrow only (rewrite tagline highlights). hero.metaVersion is a pure template — don't touch.
apps/landing/src/content/changelog/{en,zh,ja,es}/page.mdxPrepend new <ChangelogEntry> (×4 locales, body translated)
README.md / README.zh-CN.md / README.ja.md / README.es.mdVersion + release-date badges + Features section
apps/landing/src/components/{shell/Navbar,landing/Hero,snapshot/SnapshotHero}.tsxAlready read siteConfig.latestVersion — never touch for a version bump

Section Types Supported

  • ### ✨ Features — New functionality
  • ### 🔧 Improvements / ### 🎨 Improvements — Enhancements (both emojis seen historically)
  • ### 🐛 Bug Fixes — Issue resolutions
  • ### ⚡ Performance — Performance optimizations
  • ### 🌐 Internationalization — i18n updates

Optional: Changelog Images

<ChangelogImage
  src="/screenshots/X.Y.Z/image.png"
  alt="Description"
/>

Verification Checklist

Single source of truth

  • siteConfig.ts latestVersion updated (without v prefix)
  • No new hardcoded vX.Y.Z strings introduced in Navbar.tsx, Hero.tsx, SnapshotHero.tsx, or locale JSON files

downloads.ts

  • RELEASE_DATE updated (ISO format)
  • New history[] entry prepended (using VERSION / RELEASE_DATE consts), prior entries kept

Locale files (×4 — en, zh, ja, es)

  • hero.eyebrow highlights rewritten (translated, v{{version}} placeholder kept)
  • hero.metaVersion left untouched (it's "v{{version}} · {{date}}" — both interpolated)

Changelog MDX (×4 — en, zh, ja, es)

  • New <ChangelogEntry> prepended to each locale (body translated)
  • Locale-specific date format used
  • All <Bold> and <ChangelogEntry> tags closed

README files (×4 — en, zh-CN, ja, es)

  • Version badge updated
  • Release-date badge updated (URL-encoded date)
  • Features section updated (brief, translated)

Final scan

  • grep "v?<previous-version>" returns only legitimate historical references: changelog entries for that version, "Added in v…" doc lines, downloads.ts history array, design specs in docs/superpowers/, and bun.lock (unrelated packages).
  • grep "v?<new-version>" (literal) outside siteConfig.ts and the new changelog/README entries should return nothing — if it does, you reintroduced a hardcoded version somewhere.

When not to use it

  • If the project lacks a centralized version configuration
  • When changing logic instead of metadata

Limitations

  • Requires strict adherance to the changelog markdown format
  • Limited to the project's specific configuration file structure
  • Dates must follow the predefined ISO format requirements

How it compares

It maintains a single source of truth for versioning instead of manually editing every instance.

Compared to similar skills

update-version side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
update-version (this skill)13moNo flagsBeginner
markdown-to-html166moReviewBeginner
docs-writer-reference16moNo flagsBeginner
deepwiki-rs259moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

markdown-to-html

github

Convert Markdown files to HTML similar to `marked.js`, `pandoc`, `gomarkdown/markdown`, or similar tools; or writing custom script to convert markdown to html and/or working on web template systems like `jekyll/jekyll`, `gohugoio/hugo`, or similar web templating systems that utilize markdown documents, converting them to html. Use when asked to "convert markdown to html", "transform md to html", "render markdown", "generate html from markdown", or when working with .md files and/or web a templating system that converts markdown to HTML output. Supports CLI and Node.js workflows with GFM, CommonMark, and standard Markdown flavors.

1662

docs-writer-reference

reactjs

Reference page structure, templates, and writing patterns for src/content/reference/. For components, see /docs-components. For code examples, see /docs-sandpack.

13

deepwiki-rs

sopaco

AI-powered Rust documentation generation engine for comprehensive codebase analysis, C4 architecture diagrams, and automated technical documentation. Use when Claude needs to analyze source code, understand software architecture, generate technical specs, or create professional documentation from any programming language.

25170

obsidian

gapmiss

Comprehensive guidelines for Obsidian.md plugin development including all 27 ESLint rules, TypeScript best practices, memory management, API usage (requestUrl vs fetch), UI/UX standards, and submission requirements. Use when working with Obsidian plugins, main.ts files, manifest.json, Plugin class, MarkdownView, TFile, vault operations, or any Obsidian API development.

29133

writing-registry-meta

siriwatknp

Use this skill when writing meta file for MUI Treasury registry.

587

project-overview

lobehub

Complete project architecture and structure guide. Use when exploring the codebase, understanding project organization, finding files, or needing comprehensive architectural context. Triggers on architecture questions, directory navigation, or project overview needs.

1548

Search skills

Search the agent skills registry