Generates and updates the latest app changelog based on git history since the last version tag.
Installation
Details
Usage
After installing, this skill will be available to your AI coding assistant.
Verify installation:
skills listSkill Instructions
name: write-app-change-log description: Generates and updates the latest app changelog based on git history since the last version tag.
Write App Change Log
This skill automates the process of creating a concise and meaningful changelog for the app.
Workflow
-
Fetch Latest Tags:
- Ensure all tags are fetched from the remote repository.
- Example:
git fetch --tags origin
-
Identify the Base Tag:
- Find the latest git tag that matches the pattern
v*. - Example:
git tag -l "v*" --sort=-v:refname | head -n 1
- Find the latest git tag that matches the pattern
-
Collect Commits:
- Get all commits from the identified tag to the current
HEAD. - For each commit, collect the title and the full description.
- Example:
git log <base-tag>..HEAD --pretty=format:"%s%n%b%n---"
- Get all commits from the identified tag to the current
-
Filter App-Related Commits:
- Analyze the commit messages and files changed.
- Exclude commits that primarily affect:
- Repository infrastructure (e.g.,
.github/,scripts/,fastlane/except changelogs). - CI/CD pipelines (e.g., workflow YAML files, Dockerfiles).
- Build tools configuration (unless it directly impacts app behavior).
- Internal documentation or maintenance (e.g.,
README.md,AGENTS.md,task.md,implementation_plan.md).
- Repository infrastructure (e.g.,
- Include commits that modify:
- App source code (
app/,database/,network/). - Resources (
strings.xml, UI layouts). - User-facing features or bug fixes.
- App source code (
-
Identify Meaningful Changes:
- From the filtered list, select the 2-5 most significant changes.
- Focus on what is most impactful for the end-user (new features, major bug fixes, performance improvements).
-
Match Style and Tone:
- Read the existing changelogs in
fastlane/metadata/android/en-US/changelogs/. - Identify the highest numbered file (e.g.,
9.txt). - Analyze the language, tone, and formatting of recent entries.
- Maintain the same concise and professional style.
- Usually, the format is:
Welcome to Janus <version-name> (<version-code>)followed by bullet points if multiple changes are listed, or a single descriptive sentence.
- Read the existing changelogs in
-
Update the Latest Changelog:
- Take the identified meaningful changes.
- Draft the new content matching the established style.
- Update the highest numbered file in
fastlane/metadata/android/en-US/changelogs/with the new content.
Guidelines
- Be concise.
- Focus on user value.
- Avoid technical jargon unless necessary.
- Ensure the version name and code in the changelog match the current project state (can be found in
app/build.gradle.ktsor similar).
More by AnySoftKeyboard
View allCreate and run unit tests following the project's architecture and guidelines (Robolectric, naming, location).
Add a new third-party dependency to the project following the version catalog and approval workflow.
Create and run unit tests following the project's architecture and guidelines (Robolectric, naming, location).