# Release

> Cut a new release (build, sign, notarize, publish to GitHub) Use when this capability is needed.

- Skill: `tomevault-io/release-19` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/release-19`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/release-19/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/release-19

---


# Release Skill

Use this skill when the user says "cut a release", "release", "cut a new release", "publish a release", or similar.

## Two Modes

### 1. CI Release (default)

Triggered by: "cut a release", "release", "new release", etc.

Bumps the version, pushes, and triggers the GitHub Actions workflow to build, sign, notarize, and publish.

1. **Run the CI release script**:
   ```bash
   ./scripts/release-ci.sh
   ```

2. **If the release tag already exists**, automatically:
   - Bump the patch version again (e.g., 0.1.30 → 0.1.31)
   - Re-run: `./scripts/release-ci.sh`
   - **Do NOT stop or ask the user** - just handle it automatically

3. Report that the release was triggered and link to: https://github.com/saadnvd1/aTerm/actions

### 2. Local Release

Triggered by: "cut a release locally", "release manually", "local release", "manual release", etc.

Builds, signs, notarizes, and publishes entirely from the local machine.

1. **Run the local release script**:
   ```bash
   ./scripts/release.sh
   ```

2. **If the script says "Release vX.Y.Z already exists"**, automatically:
   - Bump the patch version in both:
     - `src-tauri/tauri.conf.json`
     - `src-tauri/Cargo.toml`
   - Commit with `chore: bump version to X.Y.Z`
   - Re-run `./scripts/release.sh`
   - **Do NOT stop or ask the user** - just handle it automatically

3. **If the script fails for other reasons**, you can manually:
   - Build: `npm run tauri build`
   - Create release: `gh release create v{VERSION} --title "aTerm v{VERSION}" --generate-notes src-tauri/target/release/bundle/dmg/aTerm_{VERSION}_aarch64.dmg`

4. Report the release URL when done.

## Requirements

- `gh` CLI authenticated
- For local releases: Apple signing credentials in `src-tauri/.env.local`
- For CI releases: GitHub Actions secrets configured (APPLE_CERTIFICATE, etc.)

---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/saadnvd1) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-11 -->

