with one click
shipped-issues
// Find open GitHub issues whose linked GUS work item is closed AND whose issue number appears in CHANGELOG.md, then close them. Use when user invokes /shipped-issues or asks to clean up shipped issues.
// Find open GitHub issues whose linked GUS work item is closed AND whose issue number appears in CHANGELOG.md, then close them. Use when user invokes /shipped-issues or asks to clean up shipped issues.
Polish the automated CHANGELOG for a release branch. Removes GUS refs, categorizes under-the-cover changes, improves customer-facing descriptions. Use when preparing/reviewing the changelog on a release branch, or when user mentions changelog quality.
Run the VS Code extension release workflow end-to-end. Use when publishing a release, running prerelease, verifying the release branch, polishing changelog for release, or installing release vsixes for verification.
Use file-based span/log export for AI consumption. Where it lives, how to enable/clear, record format for Node and Web. Use when enabling span file dump, debugging traces for AI, or configuring local observability.
writing, running, and debugging Playwright tests; creating and recreating scratch orgs (Dreamhouse, minimal, non-tracking); working with their output from github actions
Author and use Wireit scripts for npm. Use when working with Wireit configuration, npm scripts, build pipelines, or when the user mentions Wireit.
Public API exported by salesforcedx-vscode-core activate(). Use when modifying SalesforceVSCodeCoreApi, the api object in activate(), exports from core index.ts, services sub-object, or evaluating whether a change to core is breaking. Also use when someone asks "does anything use X" for a core export.
| name | shipped-issues |
| description | Find open GitHub issues whose linked GUS work item is closed AND whose issue number appears in CHANGELOG.md, then close them. Use when user invokes /shipped-issues or asks to clean up shipped issues. |
Cross-reference open GitHub issues against closed GUS work items and the shipped CHANGELOG to identify issues that were fixed and released, but never closed on GitHub.
forcedotcom/salesforcedx-vscodepackages/salesforcedx-vscode/CHANGELOG.md (on develop; pull latest first)gus (see .claude/skills/gus-cli/SKILL.md)git fetch origin develop
git show origin/develop:packages/salesforcedx-vscode/CHANGELOG.md > /tmp/shipped-changelog.md
Do not switch branches; run from wherever the user is.
gh issue list --repo forcedotcom/salesforcedx-vscode --state open --limit 500 --search "W in:body" --json number,title,body,url > /tmp/shipped-issues.json
The W in:body filter narrows to issues that contain the letter W โ overly broad but cheap. Locally extract W-\d{6,9} matches per issue (regex; multiple W- per issue is allowed). Drop issues with no match.
Batch in chunks of ~50 W- names per query to stay under SOQL limits:
sf data query --query "SELECT Id, Name, Status__c, Last_Modified_Internal_Closed_Date__c FROM ADM_Work__c WHERE Name IN ('W-1234567','W-2345678', ...)" -o gus --json
Closed terminal statuses (any of these counts as closed): see .claude/skills/gus-cli/SKILL.md ยง Status__c values "Closed (terminal)".
Quick check: Status__c LIKE 'Closed%' OR Status__c IN ('Completed','Fixed').
Keep an issue only when every W- on the issue resolves to a Closed/Completed status in GUS. If any linked W- is still open, skip the issue (work isn't all done).
For each candidate issue number N, search /tmp/shipped-changelog.md for any of:
ISSUE #N (case-insensitive)issues/N (link form)#N only when the surrounding line clearly references an issue, not a PRIf matched โ issue is shipped. Record the matched CHANGELOG line for the closing comment.
Show a table to the user before closing anything:
| Issue | Title | W- | WI Status | Shipped in (CHANGELOG line) |
|---|
Also list any near-miss rows separately so the user can review:
For each confirmed issue, post a comment then close:
gh issue close <number> --repo forcedotcom/salesforcedx-vscode --comment "Closing โ shipped in <version>. See CHANGELOG entry: <verbatim line>. (Linked work item <W-XXXXXXXX> is closed.)"
Do not loop-close without user confirmation. If many issues, present the full list and ask "Close all N?" once.
## Under the Hood line: still counts as shipped โ user can opt out per-row.[PR #N]: not a match. Only ISSUE #N / issues/N indicate the issue itself.End with a one-line summary: Closed N issues; M near-misses for review.