Release Roslynator
dotnet/roslynator
A skill your agent uses when shipping a roslynator release, rolling CHANGELOG.md [Unreleased], updating the VS Code extension changelog, creating a GitHub v release, or optionally tagging cli-v.
Polish the automated CHANGELOG on develop before the next stable build.
$ npx skills add forcedotcom/salesforcedx-vscode --skill changelog -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install forcedotcom/salesforcedx-vscode changelog --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/forcedotcom/salesforcedx-vscode.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/changelog .claude/skills/changelog && 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 "changelog" agent skill from https://github.com/forcedotcom/salesforcedx-vscode/tree/develop/.claude/skills/changelog into .claude/skills/changelog/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog", 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/forcedotcom/salesforcedx-vscode/tree/develop/.claude/skills/changelogType 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 forcedotcom/salesforcedx-vscode --skill changelog -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install forcedotcom/salesforcedx-vscode changelog --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forcedotcom/salesforcedx-vscode.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/changelog .agents/skills/changelog && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "changelog" agent skill from https://github.com/forcedotcom/salesforcedx-vscode/tree/develop/.claude/skills/changelog into .agents/skills/changelog/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog", 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 forcedotcom/salesforcedx-vscode --skill changelog -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install forcedotcom/salesforcedx-vscode changelog --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forcedotcom/salesforcedx-vscode.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/changelog .cursor/skills/changelog && 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 "changelog" agent skill from https://github.com/forcedotcom/salesforcedx-vscode/tree/develop/.claude/skills/changelog into .cursor/skills/changelog/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog", 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/forcedotcom/salesforcedx-vscode.git --path .claude/skills/changelog--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 forcedotcom/salesforcedx-vscode --skill changelog -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install forcedotcom/salesforcedx-vscode changelog --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forcedotcom/salesforcedx-vscode.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/changelog .gemini/skills/changelog && 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 "changelog" agent skill from https://github.com/forcedotcom/salesforcedx-vscode/tree/develop/.claude/skills/changelog into .gemini/skills/changelog/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog", 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 forcedotcom/salesforcedx-vscode changelogInstalls 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 forcedotcom/salesforcedx-vscode --skill changelog -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/forcedotcom/salesforcedx-vscode.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/changelog .github/skills/changelog && 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 "changelog" agent skill from https://github.com/forcedotcom/salesforcedx-vscode/tree/develop/.claude/skills/changelog into .github/skills/changelog/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog", 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 forcedotcom/salesforcedx-vscode --skill changelog -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install forcedotcom/salesforcedx-vscode changelog --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forcedotcom/salesforcedx-vscode.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/changelog .opencode/skills/changelog && 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 "changelog" agent skill from https://github.com/forcedotcom/salesforcedx-vscode/tree/develop/.claude/skills/changelog into .opencode/skills/changelog/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog", 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.
changelogPolish the automated CHANGELOG on develop before the next stable build.
Changelog is an agent skill from forcedotcom/salesforcedx-vscode. Polish the automated CHANGELOG on develop before the next stable build. Removes GUS refs, categorizes under-the-cover changes, improves customer-facing descriptions. Use when preparing/reviewing the changelog after a weekly prerelease promotion, or when user mentions changelog quality.
Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Development, covering Changelog and release notes. It works with Visual Studio Code. The repository describes itself as: Salesforce Extensions for VS Code. The licence is BSD-3-Clause.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 27807f6. It shows what the files ask for, not the result of running them.
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.
Shell commands in SKILL.md call:
gitghFrom the folder's file list and the shell code blocks in SKILL.md.
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.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Changelog loads about 3.3k tokens when it runs. Until then it costs about 74 tokens; SKILL.md has 1,495 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 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.
The full file from forcedotcom/salesforcedx-vscode at commit 27807f6, republished under its BSD-3-Clause licence (© forcedotcom). 1,495 words, ~3,332 tokens.
.claude/skills/changelog/SKILL.md (or your agent's skills folder).Improve the automated changelog delta committed to develop by promote-to-prerelease.yml.
Scope: the all-extensions release changelog at packages/salesforcedx-vscode/CHANGELOG.md. Root CHANGELOG.md contains full historical changelog (automatically prepended by scripts/prepend-release-changelog.js, run as part of the same promote job) — do not edit manually. Per-package CHANGELOG.md files (e.g. packages/salesforcedx-vscode-i18n/CHANGELOG.md) are scoped to their own package and out of scope here.
/changelog or asks to prepare/review the changelogdevelop, after a chore: changelog for prerelease vX.Y.Z commit landsbuild-github-release.yml's next scheduled run (Wednesdays, 7 AM UTC). That job reads develop's current packages/salesforcedx-vscode/CHANGELOG.md, relabels the header to the stable version, and bakes it into the stable VSIX. Once that's run, the content is frozen inside the built artifact — fixing it afterward means manually re-injecting into the release's VSIX asset, not editing this file.packages/salesforcedx-vscode/CHANGELOG.md on develop
develop and read the current changelog filegit log --oneline -- packages/salesforcedx-vscode/CHANGELOG.md | grep "changelog for prerelease"gh pr view <number> --json title,body,commits,labels. In the body, look for a "What issues does this PR fix or reference?" section and extract any issue or discussion numbers linked there.Strip any W-NNNNNNN or - W-NNNNNNN text from entries. These are internal tracking IDs not meaningful to customers.
Before: - Add a Max Rows input to SOQL Builder UI - W-22199672 ([PR #7261](...
After: - We added a **Max Rows** input to SOQL Builder UI so you can limit the number of rows retrieved. ([PR #7261](...
Under-the-cover (not visible to users):
Customer-facing (visible to users):
Use PR commits, title, body, and labels to decide. When uncertain, check the diff: gh pr diff <number> --name-only to see which files changed.
Under-the-cover entries go under a dedicated ## Under the Hood section (no package sub-headers needed). Consolidate all under-the-cover PRs into one or a few lines:
- We made some under the hood changes. ([PR #NNNN](...), [PR #MMMM](...)).
The automation lists the same PR under every package it touched. Consolidate to the most relevant user-facing package. If a change touched salesforcedx-vscode-services plus a feature extension, list it under the feature extension only.
We added…, We fixed a bug where…, We improved…, We reverted…, or The <X> now…. Full sentences ending in .jsconfig.json, sourceApiVersion, MetadataRegistryService, .soqlWe made some changes under the hood.We reverted <X> because <reason>.**Salesforce Live Preview** (salesforce.salesforcedx-vscode-ui-preview)VS Code over VSCode; on Windows not in Windows[ISSUE #NNNN](https://github.com/forcedotcom/salesforcedx-vscode/issues/NNNN)[DISCUSSION #NNNN](https://github.com/forcedotcom/salesforcedx-vscode/discussions/NNNN)([PR #7517](...), [ISSUE #4065](...))## Added — new features, new commands, new UI## Fixed — bug fixes## Changed — behavior changes to existing features (add section if needed)## Under the Hood — internal changes not visible to users (CI, telemetry, refactoring, dep bumps). No package sub-headers needed.Automated:
## Added
#### salesforcedx-vscode-metadata
- Filter packageDirs to those containing target folder - W-22049669 ([PR #7225](...))
#### salesforcedx-vscode-services
- Filter packageDirs to those containing target folder - W-22049669 ([PR #7225](...))
- Replace static activationEvents with programmatic activation W-21956120 ([PR #7154](...))Polished:
## Added
#### salesforcedx-vscode-metadata
- When creating an Apex class or LWC component, the output directory picker now lists only package directories that contain the relevant folder. ([PR #7225](...))
## Under the Hood
- We made some under the hood changes. ([PR #7154](...))After user approves the polished changelog:
develop and up to date: git checkout develop && git pullgit add packages/salesforcedx-vscode/CHANGELOG.mdgit diff --cached --name-only must show only packages/salesforcedx-vscode/CHANGELOG.md. If other files appear, unstage them before committing.git commit -m "chore: polish changelog [skip ci]"git push origin developNever include other file changes in this commit.
Use these chore: subjects for polish commits on develop:
chore: polish changelogchore: write into sentenceschore: changelog improvementschore: update changelogchore: missing changelog entrychore: clean up duplicate entrieschore: merge vX.Y.A and vX.Y.B changelogs (when prior patch's entries need to roll into current)promote-to-prerelease.yml runs 3-stage pipeline to generate & polish changelog before commit to develop. Background context; typically not interacted with during manual polish.
fromRef = newest marketplace-prerelease-* tag (set by last week's promote run) or latest stable v* tag (correct fallback before any tracking tag exists). Empty fromRef (identical to this week's nightly commit — a manual re-run or hotfix) skips changelog-body instead of feeding it an identical range..github/workflows/changelog-body.yml): Calls Cursor-backed AI (guided by .cursor/skills/changelog-judgment/SKILL.md) to produce polished, customer-facing markdown body from commits in range (fromRef, toRef]. Already removes GUS refs, rewrites sentences ("We added/fixed/improved..."), dedupes multi-package PRs, consolidates Under-the-Hood. Returns body output.# <version> - <date> + body to packages/salesforcedx-vscode/CHANGELOG.md. Immediately runs scripts/prepend-release-changelog.js to copy same content to root CHANGELOG.md. Both labeled with prerelease version (e.g. 67.17.9). Committed directly to develop.develop, this skill): Human review/touch-up before next build-github-release.yml run. Model-generated body is typically ready, but catch edge cases/errors using Rules 1–5 as checklist. Note: because prepend already ran in step 3, root CHANGELOG.md's copy of this version's section is not automatically re-synced by a polish edit.build-github-release.yml, next Wednesday 7 AM UTC): Pulls develop's current packages/salesforcedx-vscode/CHANGELOG.md (picking up any polish from step 4), relabels header from prerelease → stable version, bakes into stable VSIX.publishVSCode.yml, on final stable publish): Relabels same header in both changelogs from prerelease → stable, so history matches what shipped.prepend-release-changelog.js validates structure (version format, file existence, non-empty), runs idempotent (skips if already in root), reports errors (ENOSPC, EACCES, missing files).
chore: changelog for prerelease vXX.YY.ZZ [skip ci]feat/fix/perf commits in range)# XX.YY.ZZ - Month DD, YYYY
## Added
#### <package-name>
- <message> ([PR #<num>](https://github.com/forcedotcom/salesforcedx-vscode/pull/<num>))
## Fixed
#### <package-name>
- <message> ([PR #<num>](...))
## Under the Hood
- We made some under the hood changes. ([PR #<num>](...), [PR #<num>](...))# <version> - <release date>; date is +7 days from this Wednesday's prerelease (next Wednesday's stable release), written by the write-changelog job, not changelog-bodyAdded, Fixed, Changed, Under the Hood. Section is an AI judgment call per .cursor/skills/changelog-judgment/SKILL.md (Added = new capability, Fixed = bugfix, Changed = behavior change, Under the Hood = invisible to users), not a fixed commit-type mapping — see scripts/changelogBody/changelogBody.mtsfeat, fix, perf (everything else, e.g. chore/refactor/test/ci, is dropped before the AI step ever sees it)Under the Hood entries are consolidated into one bullet with all their PR links, no package sub-header#### <package-name>, alphabetical within a type- <message> ([PR #N](url)); PR url format https://github.com/forcedotcom/salesforcedx-vscode/pull/<num>([PR #A](...), [PR #B](...), [ISSUE #C](...), [DISCUSSION #D](...))[ISSUE #N](https://github.com/forcedotcom/salesforcedx-vscode/issues/N) or [DISCUSSION #N](https://github.com/forcedotcom/salesforcedx-vscode/discussions/N) when listed in the PR's "What issues does this PR fix or reference?" sectionsalesforcedx-vscode-core is touched, all other touched packages (except docs) are dropped for that commitsalesforcedx-vscode-services is touched alongside exactly one other (non-docs) package, salesforcedx-vscode-services is dropped and the other package keeps the entrysalesforce or docs count; path segments named images or test are ignored when detecting touched packagesUnder the Hoodtype(scope): message + trailing (#PR) to appear in the commit subject[W-XXXXXXXX] GUS refs from the subject before it reaches the AI step#### <package> subsections: leave in place if auto-generated (keeps structure obvious), or remove during polish — match surrounding stylechore: merge ... changelogs© forcedotcom, BSD-3-Clause. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/changelog of forcedotcom/salesforcedx-vscode.
Open the folder on GitHubat commit 27807f6
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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Changelog this skillforcedotcom/salesforcedx-vscode | 1k | — | ~3.3k | Automated safety check: Pass | BSD-3-Clause | |
| Release Roslynatordotnet/roslynator | 3.5k | — | ~1k | Automated safety check: Pass | Custom licence | |
| Releasesignageos/vscode-sops | 122 | — | ~2.2k | Automated safety check: Notes | MIT | |
| Releasequerylenshq/ef-querylens | 225 | — | ~887 | Automated safety check: Pass | MIT | |
| Changelog Entrycertinia/debug-log-analyzer | 114 | — | ~1.9k | Automated safety check: Pass | Custom licence | |
| Releaseryu1kn/vscode-partial-diff | 222 | — | ~830 | Automated safety check: Pass | MIT |
dotnet/roslynator
A skill your agent uses when shipping a roslynator release, rolling CHANGELOG.md [Unreleased], updating the VS Code extension changelog, creating a GitHub v release, or optionally tagging cli-v.
signageos/vscode-sops
Releases the vscode-sops extension end-to-end: determines the next version from the bump history, updates CHANGELOG.md and package.json/package-lock.json, builds via vscode:prepublish, publishes to…
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…
certinia/debug-log-analyzer
Write, review or trim CHANGELOG.md entries. An agent skill from certinia/debug-log-analyzer.
ryu1kn/vscode-partial-diff
Cut a new release of the Partial Diff VS Code extension - guides through version bump, changelog, validation, and publish
devlint/GitWand
Guide a clean GitWand release end-to-end: bump version, update CHANGELOG, commit, tag, and push.
forcedotcom/salesforcedx-vscode
Command palette, CodeLens, context menus, package.nls titles, and NotificationModeService.
forcedotcom/salesforcedx-vscode
Consume the salesforcedx-vscode-services extension API. An agent skill from forcedotcom/salesforcedx-vscode.
forcedotcom/salesforcedx-vscode
Public API exported by salesforcedx-vscode-core activate(). An agent skill from forcedotcom/salesforcedx-vscode.
forcedotcom/salesforcedx-vscode
Operate a real VS Code instance through drivable-vscode. An agent skill from forcedotcom/salesforcedx-vscode.
forcedotcom/salesforcedx-vscode
Enforces Effect-TS patterns for services, errors, layers, atoms, and Effect.pipe composition.
forcedotcom/salesforcedx-vscode
Known external consumers of APIs from this monorepo's extensions.
Works with
Categories
Polish the automated CHANGELOG on develop before the next stable build. Changelog is an agent skill from forcedotcom/salesforcedx-vscode. Polish the automated CHANGELOG on develop before the next stable build.
Changelog fits situations like: preparing/reviewing the changelog after a weekly prerelease promotion; user mentions changelog quality.
Run `npx skills add forcedotcom/salesforcedx-vscode --skill changelog -a claude-code`. Or copy the skill folder (.claude/skills/changelog in forcedotcom/salesforcedx-vscode) into .claude/skills/changelog in your project. Claude Code loads it when a task matches its description.
Run `npx skills add forcedotcom/salesforcedx-vscode --skill changelog -a codex`. Or copy the skill folder (.claude/skills/changelog in forcedotcom/salesforcedx-vscode) into .agents/skills/changelog 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 forcedotcom/salesforcedx-vscode --skill 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/changelog, .gemini/skills/changelog, .github/skills/changelog and .opencode/skills/changelog in your project.
Going by SKILL.md and its folder, Changelog needs the command-line tools its instructions call (git and gh).
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.
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.
Changelog is published under the BSD-3-Clause licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.3k tokens (SKILL.md is roughly 13k 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 Changelog: Release Roslynator (dotnet/roslynator, 3.5k stars), Release (signageos/vscode-sops, 122 stars), Release (querylenshq/ef-querylens, 225 stars) and Changelog Entry (certinia/debug-log-analyzer, 114 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
forcedotcom (a GitHub organization) maintains it in forcedotcom/salesforcedx-vscode, which has 1,035 GitHub stars. The repository holds 37 skills in this directory. The repository was last updated on October 8, 2026.
Source: forcedotcom/salesforcedx-vscode on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.