releaselisted
Install: claude install-skill lntvan166/claudegate
# Release ClaudeGate
ClaudeGate is a VS Code extension (`publisher: lntvan166`, `name: claudegate`). A release means: bump the version, record it in the CHANGELOG, verify it builds and tests pass, commit + tag it in git, and publish the `.vsix` to **two** registries — the VS Code Marketplace with `vsce`, and [Open VSX](https://open-vsx.org) with `ovsx`. Open VSX is the registry Cursor, VSCodium, and Windsurf pull from, so shipping there is what lets the extension **auto-update** in those editors — the Marketplace alone doesn't reach them.
The publish step is **irreversible on both registries** — you cannot unpublish or overwrite a version number on either, and neither lets you re-push a version that's already up. So the flow front-loads every check that can fail (tests, bundle, auth) *before* committing anything, and **pauses for the user's explicit go-ahead** before publishing.
Publish the **same `.vsix` artifact** to both registries — build it once with `vsce package`, then hand that one file to `vsce publish` and `ovsx publish`. That guarantees the two registries carry byte-identical builds instead of two independently-bundled ones.
## Before you start
Confirm you're on `main` with a clean-enough tree, and gather the current state so you pick the right version:
```bash
git branch --show-current # expect: main
node -p "require('./package.json').version" # current version
git tag --sort=-v:refname | head -5 # recent tags
git stat