Agent skill

Update Changelog

by openchamber in openchamber/openchamber

Use only when the maintainer explicitly asks to update the changelog — then write changelog/unreleased.md (main app and VS Code extension) summarizing changes since the latest git tag.

MITAuto-check passedDevelopment

Install Update Changelog

skills CLI
$ npx skills add openchamber/openchamber --skill update-changelog -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install openchamber/openchamber update-changelog --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/openchamber/openchamber.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/update-changelog .claude/skills/update-changelog && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
update-changelog
GitHub stars
11k
Token cost
~2.6k tokens
SKILL.md length
1,490 words
Files
1
Skills in repo
21
Repo updated
First seen
Licence
MIT

At a glance

Use only when the maintainer explicitly asks to update the changelog — then write changelog/unreleased.md (main app and VS Code extension) summarizing changes since the latest git tag.

  • Tasks that involve Changelog and release notes
  • SKILL.md covers Gate, The shape of a release, The title and The bullet, plus 5 more sections
  • Calls git, bun and gh

What it does

Update Changelog is an agent skill from openchamber/openchamber. Use only when the maintainer explicitly asks to update the changelog — then write changelog/unreleased.md (main app and VS Code extension) summarizing changes since the latest git tag.

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: opencode

It sits in Development, covering Changelog and release notes. It works with Visual Studio Code and Git. The repository describes itself as: Agentic Development Environment based on OpenCode AI agent. The licence is MIT.

When your agent uses it

  • Tasks that involve Changelog and release notes

Example prompts

  • “/update-changelog”

Requirements

  • Compatibility (from SKILL.md): opencode

What it can do on your machine

Read from SKILL.md and the folder at commit 74b79d4. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • bun
    • gh

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git and gh, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    opencode

    From compatibility in the SKILL.md frontmatter.

Context cost

Update Changelog loads about 2.6k tokens when it runs. Until then it costs about 51 tokens; SKILL.md has 1,490 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~51
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from openchamber/openchamber at commit 74b79d4, republished under its MIT licence (© openchamber). 1,490 words, ~2,604 tokens.

Download SKILL.mdSave it as .claude/skills/update-changelog/SKILL.md (or your agent's skills folder).
name
update-changelog
description
Use only when the maintainer explicitly asks to update the changelog — then write `changelog/unreleased.md` (main app and VS Code extension) summarizing changes since the latest git tag.
compatibility
opencode
license
MIT

Gate

The changelog is written once per release, by the maintainer, as one story. changelog/ stays untouched by every other task; a fix or a merged PR lands without a changelog line. Proceed only when the current message asks to update the changelog.

Write changelog/unreleased.md and nothing else. Generation is not your job: oc-dev create-release turns the file into changelog/<version>.md with the date and renders packages/vscode/CHANGELOG.md and changelog/index.json from it. CHANGELOG.md at the root is a legacy copy for older installs. Never run the generator or touch any of these files. bun run changelog:check only validates the shape of what you wrote and writes nothing; changelog/README.md describes the format.

unreleased.md opens with a title: front matter line (see The title) and holds two sections:

  • ## App — Web, Desktop, Mobile/PWA, shared UI.
  • ## VS Code — the extension only, written separately (see below).

The shape of a release

Every release section is grouped. Under the version header come, in this order and only when non-empty:

markdown
### New
- **VS Code: comments on code.** Select lines, click the `+` in the gutter ... (thanks to @felipegenef)
- Project actions in worktrees: a session in a worktree can use the parent project's saved actions (thanks to @mattv8).

### Improvements
- Chat: Markdown tables are readable again, columns take the width their content needs (thanks to @ChangeHow).

### Fixes
- Chat: huge patches in tool cards open without freezing the page (thanks to @karimodm).

### SDK
- Actions: use `mode: "background"` to handle a message action without opening a panel.

### Misc
- Bundled OpenCode updated to 1.19.

Where a change goes:

  • New — something the user could not do before: a feature, a surface, a language.
  • Improvements — something they could do works better or reads clearer now.
  • Fixes — something was broken and showed a wrong result; the bullet names the symptom.
  • SDK — capabilities and API changes for extension authors, under ## App, after Fixes and before Misc. Name the API and what an author can build with it. User-visible extension features and fixes stay in the regular groups.
  • Misc — bundled tool versions, packaging, platform support, retirements. Rarely more than a few lines.

The maintainer's calls on the borderline cases:

  • A rework of something that already existed (multi-run moved into the composer) is an Improvement, however large.
  • Something that made the app hang or stutter (tooltips or menus jolting the whole window) is a Fix, named by that symptom.
  • Minor polish (a dialog laid out in two columns, quieter metadata text) gets no bullet at all.

The generator emits the groups in this order whatever order the source lists them and drops empty ones; version, date, and headers are its concern, not yours.

The title

Every release carries a one-line title: in its front matter. The website lists it beside the version and uses it as the heading of the release page, so it is the one line most people read. It answers "what would a user remember this release for":

  • Two to six words naming the change most users will notice. For a fix-only patch, name what works again: Terminal works again on Windows, Faster session switching.
  • Plain words, sentence case; product names keep their casing. No area prefix with a colon, no trailing period, no version number, no credit.
  • Never a category alone (Fixes, Stability, Improvements, Polish) and never a bare area (Git, Chat): the title has to teach the reader something.
  • Two headliners at most, joined with and, and only when the release really has two.

oc-dev create-release refuses a release without a title. In unreleased.md it sits at the top:

markdown
---
title: Comments on code in VS Code
---

## App

The bullet

The reader is a user of the app. They never opened the code, they will not open the PR, and they give a bullet about five seconds. Write for that reader:

  • One sentence, two at most. A bold highlight may take three. Under about 200 characters for a regular bullet.
  • Name what they see or do. The screen, the button, the gesture, the outcome. When a fix removed a symptom, name the symptom in plain words ("froze the page", "sent the comment by accident", "stopped at the first page").
  • Plain words only. Anything a user would have to look up is out: store, cache, route, payload, reconcile, authoritative, lifecycle, runtime, listing, revision, PTY, bridge. Internal component names are out unless the user sees them on screen.
  • State the new behaviour directly. Say what happens now. Framing it against the old way ("X, not Y", "instead of Y", "rather than Y") is the tell of machine-written notes; drop the second half and let the sentence stand.
  • Area prefix, then the fact. Chat:, Settings/Providers:, Git:, Mobile:, Server:, CLI:, VS Code: in the main file. A highlight bolds its prefix: - **Project actions:** ....
  • Details stay in the PR. No commit hashes, file paths, numbers that do not change what the user does, or mechanism. One concrete number is fine when it is the whole point ("more than 200 sessions").

Worked example, same change:

Weak: a saved action counts as running exactly while its command runs. When the command exits, the stop icon goes away even if the terminal tab stays open, and a second client can start the action again. Every client shows the same run, and the sidebar marks a directory that has one. Sessions in a linked worktree can use the parent project's actions; they run in the worktree by default.

Good: the running state of a saved action is reliable now. It shows as running only while the command is really running, every device sees the same state, and the sidebar shows which project has something running. Worktrees can use the parent project's actions.

The weak version is accurate and lost the reader at the first comma. The good version keeps the three things a user notices and drops the mechanics that explain them.

SDK bullets address extension authors: use exact API names in backticks and state how to use the new capability. Keep the same short bullet format; implementation internals still belong in the PR.

Load .agents/skills/communication-style/SKILL.md and run its pattern scan over the finished sections; its rules on em dashes, hedging, and puffery apply here unchanged.

Show full SKILL.md (566 more words)Show less

Gather

Determine the base and read everything through HEAD:

bash
BASE=$(git describe --tags --abbrev=0 2>/dev/null || git rev-list --max-parents=0 HEAD)
git log --oneline "$BASE"..HEAD
git diff --stat "$BASE"..HEAD

A squashed merge (subject ending in (#123)) or a Merge pull request #123 commit hides the real change behind a terse subject. Read the PR: gh pr view <number> --json number,title,body,author,mergedAt. Distill its intent into the bullet shape above; the body's own wording is reviewer-facing and stays there. When gh cannot fetch it, use the commit and diff and say what remains uncertain.

Follow-ups fold in. A maintainer commit that completes or reworks a merged PR (a "complete ... follow-ups" commit, a reshaping merge) has no bullet of its own; its user-visible effect goes into the bullet of the PR it finished, written as one behaviour. Changes that affect neither app users nor extension authors (tooling, CI, tests, docs, dead-code removal, internal guards) get no bullet.

Gathering is complete when every user-visible or SDK change has evidence, a known platform reach, and a contributor identity where one exists.

Order and highlights

  • Inside each group, sort by user impact: breaking changes, then what most users meet daily, then the rest, visual polish last.
  • Bold the prefix of the strongest one to three bullets in the whole release and put each at the top of its group. A highlight introduces a capability, changes a common workflow, or fixes something severe. Size of the diff and effort spent are not reasons to bold.
  • A change that is both a feature and a fix (a reworked area) gets one bullet in the group that describes what the user gains most; a second bullet only when the two halves are things a user would look for separately.
  • Rank each changelog on its own; a main-app highlight is not automatically a VS Code highlight.

VS Code section

An entry belongs here only when the extension actually mounts the surface: trace from packages/vscode/webview/main.tsx → VSCodeApp → VSCodeLayout, which mounts a subset of the shared UI, and read the surface map in packages/vscode/src/DOCUMENTATION.md. Server-side changes have no entry here; the extension runs no OpenChamber server. Prefixes drop the VS Code: part. Bullets are written separately from the App section rather than tagged, so reachability is a decision made per bullet. When reachability is uncertain, leave the entry out; a false entry becomes a bug report.

Credit

End the bullet with (thanks to @username) using the GitHub login from the PR or commit. The maintainers btriapitsyn and yulia-ivashko get no credit line: their work is the project's own and goes in like any other OpenChamber change. In a shared credit, drop only their login.

Done when

Read each finished section top to bottom and check every bullet:

  • A user could point at it in the app within five seconds of reading it; an SDK entry tells an extension author which API to use and why.
  • It is one or two sentences (three for a highlight) in plain words, with no mechanism and no contrast against the old behaviour.
  • It sits in the group its wording claims (a Fix names a symptom, a New names a capability) and no higher than the bullets above it in impact.
  • Empty groups are absent; present groups appear in the order New, Improvements, Fixes, SDK, Misc.
  • It appears only in the section whose runtime receives it.
  • Its contributor is credited.
  • The title: line names the release's headline change in two to six plain words.
  • bun run changelog:check passes; nothing else in the repo changed.

© openchamber, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/update-changelog of openchamber/openchamber.

Open the folder on GitHubat commit 74b79d4

Compare with similar skills

Update Changelog next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Update Changelog compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Update Changelog this skillopenchamber/openchamber11k—~2.6kAutomated safety check: PassMIT
Releasequerylenshq/ef-querylens225—~887Automated safety check: PassMIT
Releasedevlint/GitWand180—~1.8kAutomated safety check: PassMIT
React Router Release Notes Prepremix-run/react-router57k—~1.1kAutomated safety check: PassMIT
Draft Release Notesjamiepine/voicebox57k—~941Automated safety check: PassMIT
Mole Release Notes Publishertw93/Mole70k—~1.9kAutomated safety check: PassGPL-3.0

Similar skills

  • Release

    querylenshq/ef-querylens

    A skill your agent uses when: creating a release, publishing a version, cutting a release, tagging a release, releasing plugin, release workflow, prepare release, create git tag, create GitHub…

    225 GitHub stars~887 tokensUpdated 1 mo ago
    DevelopmentAuto-check passed
  • Release

    devlint/GitWand

    Guide a clean GitWand release end-to-end: bump version, update CHANGELOG, commit, tag, and push.

    180 GitHub stars~1.8k tokensUpdated today
    DevelopmentAuto-check passed
  • React Router Release Notes Prep

    remix-run/react-router

    Polishes pending React Router change files before the versioning scripts run, and decides whether a long-form What's Changed section is warranted.

    57k GitHub stars~1.1k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Draft Release Notes

    jamiepine/voicebox

    Writes or refreshes the Unreleased section of CHANGELOG.md as a themed narrative built from the commits, PRs and diff since the last version tag.

    57k GitHub stars~941 tokensUpdated 3 days ago
    DevelopmentAuto-check passed
  • Publishes curated, bilingual release notes for an existing Mole version tag with gh release edit, including contributor thanks and reactions, after the release workflow finishes.

    70k GitHub stars~1.9k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Release Bump

    jamiepine/voicebox

    Ends a release cycle by moving the Unreleased changelog notes under a dated version heading, bumping version files with bumpversion and tagging the commit.

    57k GitHub stars~1.1k tokensUpdated 3 days ago
    DevelopmentAuto-check passed

More from openchamber/openchamber

All 21 skills in this repo
  • Theme System

    openchamber/openchamber

    A skill your agent uses when creating or modifying OpenChamber UI components, styling, colors, buttons, visual states, themes, or icons.

    11k GitHub stars~1.4k tokensUpdated yesterday
    Auto-check passed
  • UI API Decoupling

    openchamber/openchamber

    A skill your agent uses when creating or modifying OpenChamber shared UI data access, OpenCode SDK calls, RuntimeAPIs, runtime fetch/auth/URLs, authenticated browser assets, bridges/proxies, runtime…

    11k GitHub stars~2k tokensUpdated yesterday
    Auto-check passed
  • Drag To Reorder

    openchamber/openchamber

    A skill your agent uses when implementing or modifying OpenChamber sortable or drag-to-reorder behavior, especially @dnd-kit, touch/mobile interactions, variable-width items, or wrapping layouts.

    11k GitHub stars~1.8k tokensUpdated yesterday
    Auto-check passed
  • Locale UI Patterns

    openchamber/openchamber

    A skill your agent uses when creating or modifying OpenChamber UI text, labels, buttons, placeholders, aria labels, empty states, toasts, dialogs, settings copy, navigation labels, or any…

    11k GitHub stars~1.5k tokensUpdated yesterday
    Auto-check passed
  • Performance Engineering

    openchamber/openchamber

    A skill your agent uses when implementing or reviewing code on interaction, render, event, polling, synchronization, list-processing, store-selector, cache, indexing, or high-volume data paths; when…

    11k GitHub stars~4.9k tokensUpdated yesterday
    Auto-check passed
  • Serve Sim

    openchamber/openchamber

    A skill your agent uses when working with the OpenChamber iOS Simulator app without opening Xcode - boot/install/launch the Capacitor iOS app, start a browser stream, tap/type/gesture/rotate…

    11k GitHub stars~619 tokensUpdated yesterday
    Auto-check passed

Categories

Questions about Update Changelog

What does Update Changelog do?

Use only when the maintainer explicitly asks to update the changelog — then write changelog/unreleased.md (main app and VS Code extension) summarizing changes since the latest git tag. Update Changelog is an agent skill from openchamber/openchamber.md (main app and VS Code extension) summarizing changes since the latest git tag.

When should I use Update Changelog?

Update Changelog fits situations like: tasks that involve Changelog and release notes.

How do I install Update Changelog in Claude Code?

Run `npx skills add openchamber/openchamber --skill update-changelog -a claude-code`. Or copy the skill folder (.agents/skills/update-changelog in openchamber/openchamber) into .claude/skills/update-changelog in your project. Claude Code loads it when a task matches its description.

How do I install Update Changelog in Codex?

Run `npx skills add openchamber/openchamber --skill update-changelog -a codex`. Or copy the skill folder (.agents/skills/update-changelog in openchamber/openchamber) into .agents/skills/update-changelog in your project. Codex loads it when a task matches its description.

Can I use Update Changelog in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add openchamber/openchamber --skill update-changelog -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/update-changelog, .gemini/skills/update-changelog, .github/skills/update-changelog and .opencode/skills/update-changelog in your project.

What does Update Changelog need to run?

Going by SKILL.md and its folder, Update Changelog needs the command-line tools its instructions call (git, bun and gh). Compatibility (from SKILL.md): opencode.

Does Update Changelog access the network?

SKILL.md contains no URLs. Its commands use git and gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Update Changelog safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Update Changelog use?

Update Changelog is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Update Changelog use?

About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Update Changelog?

Skills that share tags, products or a category with Update Changelog: Release (querylenshq/ef-querylens, 225 stars), Release (devlint/GitWand, 180 stars), React Router Release Notes Prep (remix-run/react-router, 57k stars) and Draft Release Notes (jamiepine/voicebox, 57k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Update Changelog?

openchamber (a GitHub organization) maintains it in openchamber/openchamber, which has 11,308 GitHub stars. The repository holds 21 skills in this directory. The repository was last updated on October 8, 2026.

Source: openchamber/openchamber on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.