Agent skill

Shipped Issues

by forcedotcom in forcedotcom/salesforcedx-vscode

Find open GitHub issues whose linked GUS work item is closed AND whose issue number appears in CHANGELOG.md, then close them.

BSD-3-ClauseAuto-check passedDevelopment

Install Shipped Issues

skills CLI
$ npx skills add forcedotcom/salesforcedx-vscode --skill shipped-issues -a claude-code

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

GitHub CLI
$ gh skill install forcedotcom/salesforcedx-vscode shipped-issues --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/forcedotcom/salesforcedx-vscode.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/shipped-issues .claude/skills/shipped-issues && 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
shipped-issues
GitHub stars
1k
Token cost
~963 tokens
SKILL.md length
419 words
Files
1
Skills in repo
37
Repo updated
First seen
Licence
BSD-3-Clause

At a glance

Find open GitHub issues whose linked GUS work item is closed AND whose issue number appears in CHANGELOG.md, then close them.

  • Works in 7 steps: Get current CHANGELOG from develop → List open issues with W- references → Query GUS for status of each W- → …
  • User invokes /shipped-issues
  • SKILL.md covers Inputs, Workflow, Edge cases and Output format
  • Calls git, gh and sf

What it does

Shipped Issues is an agent skill from forcedotcom/salesforcedx-vscode. 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.

Its SKILL.md is about 960 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 GitHub. The repository describes itself as: Salesforce Extensions for VS Code. The licence is BSD-3-Clause.

When your agent uses it

  • User invokes /shipped-issues
  • Asks to clean up shipped issues

Example prompts

  • “/shipped-issues”

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Get current CHANGELOG from develop
  2. List open issues with W- references
  3. Query GUS for status of each W-
  4. Filter to candidates
  5. Cross-reference CHANGELOG
  6. Present the report
  7. Close issues — only after explicit user confirmation

What it can do on your machine

Read from SKILL.md and the folder at commit 27807f6. 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
    • gh
    • sf

    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.

Context cost

Shipped Issues loads about 963 tokens when it runs. Until then it costs about 54 tokens; SKILL.md has 419 words of instructions outside code blocks.

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

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 forcedotcom/salesforcedx-vscode at commit 27807f6, republished under its BSD-3-Clause licence (© forcedotcom). 419 words, ~963 tokens.

Download SKILL.mdSave it as .claude/skills/shipped-issues/SKILL.md (or your agent's skills folder).
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.
review
never

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.

Inputs

  • Repo: forcedotcom/salesforcedx-vscode
  • Changelog: packages/salesforcedx-vscode/CHANGELOG.md (on develop; pull latest first)
  • GUS alias: gus (see .claude/skills/gus-cli/SKILL.md)

Workflow

1. Get current CHANGELOG from develop
bash
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.

2. List open issues with W- references
bash
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.

3. Query GUS for status of each W-

Batch in chunks of ~50 W- names per query to stay under SOQL limits:

bash
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').

4. Filter to candidates

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).

5. Cross-reference CHANGELOG

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 PR

If matched → issue is shipped. Record the matched CHANGELOG line for the closing comment.

Show full SKILL.md (190 more words)Show less
6. Present the report

Show a table to the user before closing anything:

IssueTitleW-WI StatusShipped in (CHANGELOG line)

Also list any near-miss rows separately so the user can review:

  • Issues where WIs are all closed but the issue # isn't in the CHANGELOG (maybe under-the-hood / not customer-facing)
  • Issues where some W- are still open
7. Close issues — only after explicit user confirmation

For each confirmed issue, post a comment then close:

bash
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.

Edge cases

  • Multiple W- per issue, mixed status: skip until all W- close.
  • Issue body mentions W- in a quoted error or unrelated context: rare; surface as candidate anyway, the user reviews the table.
  • CHANGELOG hit on a ## Under the Hood line: still counts as shipped — user can opt out per-row.
  • Issue # shows up in CHANGELOG as [PR #N]: not a match. Only ISSUE #N / issues/N indicate the issue itself.
  • No CHANGELOG match but WI closed long ago: list as near-miss, don't auto-close.

Output format

End with a one-line summary: Closed N issues; M near-misses for review.

© 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

Files

Just SKILL.md in .claude/skills/shipped-issues of forcedotcom/salesforcedx-vscode.

Open the folder on GitHubat commit 27807f6

Compare with similar skills

Shipped Issues 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.

Shipped Issues compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Shipped Issues this skillforcedotcom/salesforcedx-vscode1k—~963Automated safety check: PassBSD-3-Clause
Cutting A ReleaseTriliumNext/Trilium38k—~3.2kAutomated safety check: PassAGPL-3.0
Mole CLI Release Flowtw93/Mole70k—~2.5kAutomated safety check: PassGPL-3.0
Draft Release Notesjamiepine/voicebox57k—~941Automated safety check: PassMIT
Mole Release Notes Publishertw93/Mole70k—~1.9kAutomated safety check: PassGPL-3.0
Release Bumpjamiepine/voicebox57k—~1.1kAutomated safety check: PassMIT

Similar skills

  • Cutting A Release

    TriliumNext/Trilium

    A skill your agent uses when cutting, preparing, or debugging a Trilium release — bumping the monorepo version, tagging, or diagnosing a failed "Release" workflow run.

    38k GitHub stars~3.2k tokensUpdated today
    DevelopmentAuto-check passed
  • Runbook for assessing and executing a Mole CLI release: distribution channels, pre-flight checks, capital-V tags, build artifacts and the handoff to curated release notes.

    70k GitHub stars~2.5k tokensUpdated today
    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 yesterday
    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 today
    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 yesterday
    DevelopmentAuto-check passed
  • Cut Release

    jfernandez/bpftop

    Cut a new versioned release of bpftop — pick the version, open a version-bump PR, sign-tag the merge commit on main, and draft GitHub release notes in the project's established format.

    2.7k GitHub stars~2k tokensUpdated 1 mo ago
    DevelopmentAuto-check passed

More from forcedotcom/salesforcedx-vscode

All 37 skills in this repo
  • Command UI

    forcedotcom/salesforcedx-vscode

    Command palette, CodeLens, context menus, package.nls titles, and NotificationModeService.

    1k GitHub stars~1.4k tokensUpdated today
    Auto-check passed
  • Services Extension Consumption

    forcedotcom/salesforcedx-vscode

    Consume the salesforcedx-vscode-services extension API. An agent skill from forcedotcom/salesforcedx-vscode.

    1k GitHub stars~5k tokensUpdated today
    Auto-check passed
  • Changelog

    forcedotcom/salesforcedx-vscode

    Polish the automated CHANGELOG on develop before the next stable build.

    1k GitHub stars~3.3k tokensUpdated today
    Auto-check passed
  • Core Extension API

    forcedotcom/salesforcedx-vscode

    Public API exported by salesforcedx-vscode-core activate(). An agent skill from forcedotcom/salesforcedx-vscode.

    1k GitHub stars~842 tokensUpdated today
    Auto-check passed
  • Drivable Vscode

    forcedotcom/salesforcedx-vscode

    Operate a real VS Code instance through drivable-vscode. An agent skill from forcedotcom/salesforcedx-vscode.

    1k GitHub stars~1k tokensUpdated today
    Auto-check passed
  • Effect Best Practices

    forcedotcom/salesforcedx-vscode

    Enforces Effect-TS patterns for services, errors, layers, atoms, and Effect.pipe composition.

    1k GitHub stars~6.2k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Shipped Issues

What does Shipped Issues do?

Find open GitHub issues whose linked GUS work item is closed AND whose issue number appears in CHANGELOG.md, then close them. Shipped Issues is an agent skill from forcedotcom/salesforcedx-vscode.md, then close them.

When should I use Shipped Issues?

Shipped Issues fits situations like: user invokes /shipped-issues; asks to clean up shipped issues.

How do I install Shipped Issues in Claude Code?

Run `npx skills add forcedotcom/salesforcedx-vscode --skill shipped-issues -a claude-code`. Or copy the skill folder (.claude/skills/shipped-issues in forcedotcom/salesforcedx-vscode) into .claude/skills/shipped-issues in your project. Claude Code loads it when a task matches its description.

How do I install Shipped Issues in Codex?

Run `npx skills add forcedotcom/salesforcedx-vscode --skill shipped-issues -a codex`. Or copy the skill folder (.claude/skills/shipped-issues in forcedotcom/salesforcedx-vscode) into .agents/skills/shipped-issues in your project. Codex loads it when a task matches its description.

Can I use Shipped Issues 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 forcedotcom/salesforcedx-vscode --skill shipped-issues -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/shipped-issues, .gemini/skills/shipped-issues, .github/skills/shipped-issues and .opencode/skills/shipped-issues in your project.

What does Shipped Issues need to run?

Going by SKILL.md and its folder, Shipped Issues needs the command-line tools its instructions call (git, gh and sf).

Does Shipped Issues 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 Shipped Issues 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 Shipped Issues use?

Shipped Issues 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.

How many tokens does Shipped Issues use?

About 963 tokens (SKILL.md is roughly 3.9k 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 Shipped Issues?

Skills that share tags, products or a category with Shipped Issues: Cutting A Release (TriliumNext/Trilium, 38k stars), Mole CLI Release Flow (tw93/Mole, 70k stars), Draft Release Notes (jamiepine/voicebox, 57k stars) and Mole Release Notes Publisher (tw93/Mole, 70k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Shipped Issues?

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.