# Changelog

How to keep each app's user-facing changelog.

- Repository: https://github.com/BuilderIO/agent-native (7579 stars)
- Category: AI and agents
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add BuilderIO/agent-native --skill changelog -g -a claude-code -y`
Codex: `npx skills add BuilderIO/agent-native --skill changelog -g -a codex -y`
Cursor: `npx skills add BuilderIO/agent-native --skill changelog -g -a cursor -y`
Gemini CLI: `npx skills add BuilderIO/agent-native --skill changelog -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add BuilderIO/agent-native`

## Description

How to keep each app's user-facing changelog. Use when you ship a change a user would notice (a new feature, a visible improvement, a bug fix), when wiring the in-app "What's new" surface into a template, or when releasing pending changelog entries. Apps opt in with `changelog.enabled: true` in `agent-native.config.ts`.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Changelog, optional user-facing "What's new"

Changelog generation is off by default. Read this skill only when the app's
`agent-native.config.ts` enables `changelog.enabled`; otherwise do not create
pending entries for ordinary app changes.

Every template app keeps a `CHANGELOG.md` of the 100 most recent
**user-facing** release sections and a `changelog/` folder of dated entry files
for the complete history. The top-level file links to that folder for older
updates at the end of the file. The in-app command menu (Cmd+K → "What's new")
and settings page read both surfaces together, so folder-backed history remains
visible without making the top-level file grow forever.

Package release histories follow the same compact shape: the 100 newest
package release sections stay in the root `CHANGELOG.md`, while older sections
live in `changelog/archive/CHANGELOG.md`. The package archive is nested so it
cannot be mistaken for a new app entry by the Vite changelog loader.

## When to add an entry

Add an entry whenever you ship something a user of that app would notice:

- a new capability or surface,
- a visible improvement (speed, layout, copy, defaults),
- a bug fix that affects behavior they'd see.

Do **not** add entries for refactors, internal tooling, tests, dependency
bumps, or anything invisible to the end user. The changelog is product notes,
not a commit log, write it the way you'd describe the change to a customer.

## How to add an entry

From the app directory (the template you changed):

```bash
agent-native changelog add "Recordings can be trimmed before sharing" --type added
agent-native changelog add "Faster transcript search" --type improved
agent-native changelog add "Fixed a crash when opening an empty folder" --type fixed
```

The rest: https://github.com/BuilderIO/agent-native/blob/HEAD/.agents/skills/changelog/SKILL.md
