Release
pwrdrvr/openclaw-codex-app-server
Plan and publish a GitHub Release in a tag-driven repository.
Add a hand-written Highlights section to a GitHub release whose notes were auto-generated, summarizing the release's PRs in user-facing language above the generated changelog.
$ npx skills add garfiec/Librechat-Mobile --skill release-highlights -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install garfiec/Librechat-Mobile release-highlights --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/garfiec/Librechat-Mobile.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/release-highlights .claude/skills/release-highlights && rm -rf skills-srcUse ~/.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/
Install the "release-highlights" agent skill from https://github.com/garfiec/Librechat-Mobile/tree/develop/.claude/skills/release-highlights into .claude/skills/release-highlights/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-highlights", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/garfiec/Librechat-Mobile/tree/develop/.claude/skills/release-highlightsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add garfiec/Librechat-Mobile --skill release-highlights -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install garfiec/Librechat-Mobile release-highlights --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/garfiec/Librechat-Mobile.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/release-highlights .agents/skills/release-highlights && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "release-highlights" agent skill from https://github.com/garfiec/Librechat-Mobile/tree/develop/.claude/skills/release-highlights into .agents/skills/release-highlights/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-highlights", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add garfiec/Librechat-Mobile --skill release-highlights -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install garfiec/Librechat-Mobile release-highlights --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/garfiec/Librechat-Mobile.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/release-highlights .cursor/skills/release-highlights && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "release-highlights" agent skill from https://github.com/garfiec/Librechat-Mobile/tree/develop/.claude/skills/release-highlights into .cursor/skills/release-highlights/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-highlights", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/garfiec/Librechat-Mobile.git --path .claude/skills/release-highlights--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add garfiec/Librechat-Mobile --skill release-highlights -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install garfiec/Librechat-Mobile release-highlights --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/garfiec/Librechat-Mobile.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/release-highlights .gemini/skills/release-highlights && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "release-highlights" agent skill from https://github.com/garfiec/Librechat-Mobile/tree/develop/.claude/skills/release-highlights into .gemini/skills/release-highlights/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-highlights", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install garfiec/Librechat-Mobile release-highlightsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add garfiec/Librechat-Mobile --skill release-highlights -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/garfiec/Librechat-Mobile.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/release-highlights .github/skills/release-highlights && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "release-highlights" agent skill from https://github.com/garfiec/Librechat-Mobile/tree/develop/.claude/skills/release-highlights into .github/skills/release-highlights/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-highlights", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add garfiec/Librechat-Mobile --skill release-highlights -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install garfiec/Librechat-Mobile release-highlights --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/garfiec/Librechat-Mobile.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/release-highlights .opencode/skills/release-highlights && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "release-highlights" agent skill from https://github.com/garfiec/Librechat-Mobile/tree/develop/.claude/skills/release-highlights into .opencode/skills/release-highlights/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-highlights", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
release-highlightsAdd a hand-written Highlights section to a GitHub release whose notes were auto-generated, summarizing the release's PRs in user-facing language above the generated changelog.
Release Highlights is an agent skill from garfiec/Librechat-Mobile. Add a hand-written Highlights section to a GitHub release whose notes were auto-generated, summarizing the release's PRs in user-facing language above the generated changelog. Reads every PR in the range, drafts the section in the repo's house style, asks about ambiguous wording, and writes only after approval. Use when a release has shipped and its notes are still a bare What's Changed list, or when backfilling releases that never got Highlights.
Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/insert_highlights.py`).
It sits in Development, covering Changelog and release notes. It works with GitHub and OpenAI. The repository describes itself as: Native Android & iOS client for LibreChat, built with Kotlin Multiplatform and Compose Multiplatform. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit bf2a609. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
BashReadWriteEditAskUserQuestionFrom allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
ghpython3From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use gh, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Release Highlights loads about 2k tokens when it runs. Until then it costs about 118 tokens; SKILL.md has 1,070 words of instructions outside code blocks.
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.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Bash, Read, Write, Edit, AskUserQuestionAutomated 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); the scripts in this folder are not scanned.
The full file from garfiec/Librechat-Mobile at commit bf2a609, republished under its MIT licence (© garfiec). 1,070 words, ~2,009 tokens.
.claude/skills/release-highlights/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Adds a # Highlights section between the badge row and ## What's Changed on a
published release. Nothing else about the release changes.
Everything from ## What's Changed down is generated once, at publish time, and cannot
be rebuilt. It carries the compare link, the New Contributors block, the build provenance
attestation ID, and the CI run URL. Those come from the publish-time workflow run. If they
are overwritten they are gone.
So: never regenerate a release body. Never call gh release edit --notes with prose you
composed. Never let gh release create --generate-notes near an existing release. The only
supported write is scripts/insert_highlights.py, which fetches the live body, splits it at
the marker, and reassembles it with the tail byte-identical — then re-fetches and proves the
tail did not change, printing a restore command if it did.
If the script refuses, that refusal is the feature. Do not work around it by editing the body by hand.
gh release list --repo garfiec/Librechat-Mobile --limit 1--backfill → every release with no Highlights section. Enumerate them and confirm
before touching any. There are releases going back to v0.1.1 that predate both calver
and the Switchboard rename; they are almost never what the user meant. --since <tag>
sets a floor. Backfill never runs implicitly.Refuse a tag that already has a Highlights section. Replacing one is a separate, explicit
request, and only then does --replace get passed.
gh release view "$TAG" --repo garfiec/Librechat-Mobile --json body -q .bodyExtract the PR numbers from the What's Changed list, then read every one of them:
for p in $PRS; do
echo "=== #$p"
gh pr view "$p" --json title,body -q '.title + "\n" + (.body | .[0:800])'
doneRead all of them, including the ones that look mechanical — a chore( prefix sometimes
hides a user-visible change, and a feat( prefix sometimes hides pure plumbing. The title
is a claim about the change, not a description of its effect; the body's Summary/Problem
section is what tells you whether a user would notice.
For each PR decide one thing: what changes for someone using the app? If the answer is "nothing they could observe", it is not a Highlights bullet.
Collect every uncertain item across the whole release and ask them in a single round. Do not draft first and ask afterwards, and do not interrupt per-PR.
What counts as ambiguous is not "I don't understand the change" — read the PR again for that. It is when the change is understood but its framing is a judgment call the user owns:
If nothing is ambiguous, ask nothing.
# Highlights
* Features
* <short user-facing phrase>
* Bug Fixes
* <short user-facing phrase>
* Performance Improvements
* Misc Tech Debt Refactors
* Misc Stability ImprovementsRules, in force regardless of what prior releases happen to look like:
* Performance Improvements
with no children is correct and common; it signals the work happened without itemizing it.Present the draft as a fenced markdown block, plus the judgment calls worth flagging. Do not write until the user approves.
On approval:
python3 .claude/skills/release-highlights/scripts/insert_highlights.py \
--tag "$TAG" --highlights-file "$HL" --applyDrop --apply first to dry-run it. The script backs up the original body, refuses on a
pre-existing Highlights section, refuses on a missing or duplicated marker, refuses on an
empty body, and verifies the tail after writing. Report what it prints — including the
backup path — rather than paraphrasing it as success.
If it exits non-zero after the write, run the restore command it printed immediately and say what happened.
garfiec/Librechat-Mobile; the local directory is LibreChat-Android for legacy
reasons.tr, sed, or a Python .replace("\r\n", "\n") on the way in.-q .body is fine — that is what step 2 does. What must never happen
is a write round-tripped that way (gh release view -q .body > f && edit f && gh release edit): that pipeline drops the CRLFs and appends a newline per pass.--backfill and --since are instructions in this file, not flags on the script. Nothing
enforces them; they hold only as long as they are followed. The script's own guards are
--apply, --replace, and the refusals listed above.© garfiec, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (scripts) in .claude/skills/release-highlights of garfiec/Librechat-Mobile.
Open the folder on GitHubat commit bf2a609
Release Highlights 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Release Highlights this skillgarfiec/Librechat-Mobile | 111 | — | ~2k | Automated safety check: Notes | MIT | |
| Releasepwrdrvr/openclaw-codex-app-server | 265 | — | ~2.2k | Automated safety check: Pass | MIT | |
| Releasedevoxx/DevoxxGenieIDEAPlugin | 684 | — | ~1.7k | Automated safety check: Pass | MIT | |
| AI Release Hunterdavila7/claude-code-templates | 33k | — | ~2.9k | Automated safety check: Notes | MIT | |
| Skills Constitutionjiabaobei/skills-constitution | 232 | — | ~5.6k | Automated safety check: Pass | MIT | |
| Publish ReleaseAyuilos/Miffan | 217 | — | ~680 | Automated safety check: Pass | AGPL-3.0 |
pwrdrvr/openclaw-codex-app-server
Plan and publish a GitHub Release in a tag-driven repository.
devoxx/DevoxxGenieIDEAPlugin
Release a new version of the DevoxxGenie IntelliJ plugin — prompt for the target version, bump it in the build files, write a curated CHANGELOG.md entry and plugin.xml change-notes from the git/PR…
davila7/claude-code-templates
Daily digest of AI releases from Anthropic, Meta, Vercel Labs, OpenAI and Google GitHub repos, the Claude Cowork changelog, the claude.dev blog and Hacker News, deduplicated against a local state…
jiabaobei/skills-constitution
当 Agent 接到专业任务(编码/爬虫/文件操作/API调用/数据分析/文档/部署/推送等)时,强制先查记忆层和技能索引,有匹配必用、无匹配必搜、答复时自动推荐(排除已装)。用于防止 Agent 跳过技能直接硬扛通用能力。跨平台通用(WorkBuddy/Claude/ChatGPT/Cursor/Gemini 等 20+ 框架)。完整版本史见 CHANGELOG.md。
Ayuilos/Miffan
Publish a GitHub release for this fork, with a bilingual changelog that separates fork-owned changes from changes introduced by upstream merges.
robinebers/openusage
Cut a release of OpenUsage (Swift menu-bar app): pick a version, generate a categorized changelog, tag from main, and publish the GitHub Release with notes.
garfiec/Librechat-Mobile
Audit open dependabot PRs in this repo. An agent skill from garfiec/Librechat-Mobile.
garfiec/Librechat-Mobile
Update the third-party JavaScript vendored into the app for the artifact, diagram, and math WebViews (KaTeX, mermaid, marked, highlight.js, Tailwind, Babel, React).
garfiec/Librechat-Mobile
Audit localization / i18n coverage across the compose-resources surface (10 modules x 9 locales).
garfiec/Librechat-Mobile
Sync the Switchboard client with a newer official LibreChat server version — a stable release, a release candidate, or a PARTIAL sync up to an untagged upstream commit (e.g.
Categories
Add a hand-written Highlights section to a GitHub release whose notes were auto-generated, summarizing the release's PRs in user-facing language above the generated changelog. Release Highlights is an agent skill from garfiec/Librechat-Mobile. Add a hand-written Highlights section to a GitHub release whose notes were auto-generated, summarizing the release's PRs in user-facing language above the generated changelog.
Release Highlights fits situations like: A release has shipped and its notes are still a bare Whats Changed list; backfilling releases that never got Highlights.
Run `npx skills add garfiec/Librechat-Mobile --skill release-highlights -a claude-code`. Or copy the skill folder (.claude/skills/release-highlights in garfiec/Librechat-Mobile) into .claude/skills/release-highlights in your project. Claude Code loads it when a task matches its description.
Run `npx skills add garfiec/Librechat-Mobile --skill release-highlights -a codex`. Or copy the skill folder (.claude/skills/release-highlights in garfiec/Librechat-Mobile) into .agents/skills/release-highlights in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add garfiec/Librechat-Mobile --skill release-highlights -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/release-highlights, .gemini/skills/release-highlights, .github/skills/release-highlights and .opencode/skills/release-highlights in your project.
Going by SKILL.md and its folder, Release Highlights needs Python for the scripts in its folder and the command-line tools its instructions call (gh and python3). Our summary lists: Python 3. Its frontmatter pre-approves these tools: Bash, Read, Write, Edit, AskUserQuestion.
SKILL.md contains no URLs. Its commands use gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Release Highlights is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2k tokens (SKILL.md is roughly 8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Release Highlights: Release (pwrdrvr/openclaw-codex-app-server, 265 stars), Release (devoxx/DevoxxGenieIDEAPlugin, 684 stars), AI Release Hunter (davila7/claude-code-templates, 33k stars) and Skills Constitution (jiabaobei/skills-constitution, 232 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
garfiec (a GitHub user) maintains it in garfiec/Librechat-Mobile, which has 111 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on October 10, 2026.
Source: garfiec/Librechat-Mobile on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.