releaselisted
Install: claude install-skill ledtorch/coding-agent-workflow
## Context
Run these first and read the output:
```
git status --short
git branch --show-current
git tag -l | tail -5 # the version series you are continuing
```
## Charter
**Cut the release named by the input, end-to-end: clean tree → push → tag → release notes → deploy.**
One invocation = one release. Every gate below either passes or **stops the run with a
report** — a partial release (e.g. tagged but not deployed) is worse than no release.
The input is the tag name — `/release v1.2.0` (Claude Code) or `$release v1.2.0` (Codex). Required — never infer or
auto-increment.
> **This is a static site.** There is no app binary, no store build, and no version string
> that has to agree across build configs — so there is no version-match gate. The tag is
> the only version that exists. If `package.json` is ever brought under real versioning,
> add the check back here in the same pass.
## Workflow
### 1. Preflight — all three must pass, else report and stop
- **Tag is new:** the tag exists neither locally (`git tag -l`) nor on the remote
(`git ls-remote --tags origin`). Never re-tag or move a tag.
- **On `main`,** no rebase/merge in progress, not detached.
- **No secret-shaped files** anywhere in the pending changes (`.env*`, `deploy.env`,
`*.key`, `*.pem`, credentials). Found one → report and stop.
### 2. Clean the tree — via the /commit flow, never blind
If `git status` is dirty, run the full [`/commit`](../commit/SKILL.md) workflow: group the
changes by