# Write App Change Log

> Generates and updates the latest app changelog based on git history since the last version tag.

- Skill: `tomevault-io/write-app-change-log` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/write-app-change-log`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/write-app-change-log/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/write-app-change-log

---


# Write App Change Log

This skill automates the process of creating a concise and meaningful changelog for the app.

## Workflow

1.  **Fetch Latest Tags**:
    *   Ensure all tags are fetched from the remote repository.
    *   Example: `git fetch --tags origin`

2.  **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`

3.  **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---"`

4.  **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`).
    *   **Include** commits that modify:
        *   App source code (`app/`, `database/`, `network/`).
        *   Resources (`strings.xml`, UI layouts).
        *   User-facing features or bug fixes.

5.  **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).

6.  **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.

7.  **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.kts` or similar).

---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/anysoftkeyboard) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-11 -->

