# Package Ebook Release

> Package ebook projects into versioned release folders. Use when asked to create or update dist/v* releases, rebuild EPUB/cover/web preview, generate checksums and manifests, update release docs, inspect release contents, commit release changes, or create local git tags for ebook projects.

- Skill: `j945935cy/package-ebook-release` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add j945935cy/package-ebook-release`
- Raw SKILL.md: https://api.skillmd.com/api/skills/j945935cy/package-ebook-release/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: j945935cy (https://skillmd.com/u/j945935cy)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/j945935cy/package-ebook-release

---


# Package Ebook Release

## Core Workflow

Use this skill to prepare a versioned ebook release package. Prefer project scripts over manual packaging.

1. Determine the version:
   - Use the user-provided version if present.
   - Otherwise inspect `tools/package-release.ps1`, `PROJECT_STATUS.md`, `README.md`, `CHANGELOG.md`, or latest `dist/v*`.
   - Do not silently reuse an old tag if new changes exist.
2. Update release metadata when requested:
   - README command examples
   - PROJECT_STATUS
   - CHANGELOG
   - package script default version
   - timeless manuscript examples should use generic placeholders, not hardcoded old versions.
3. Run packaging:
   - Use `tools/package-release.ps1` if present.
   - Confirm it rebuilds EPUB, cover, preview, checksums, manifest, and release docs.
4. Validate release artifacts:
   - Check EPUBCheck output.
   - Check `dist/v<version>/` contains expected files.
   - Check SHA256/manifest coverage.
   - Inspect EPUB resources and metadata if needed.
5. Git handling:
   - Commit local source changes when appropriate.
   - Create a local annotated tag only when the release version is finalized.
   - Do not push unless the user explicitly asks.

## Common PowerShell Commands

Package a release:

```powershell
powershell -ExecutionPolicy Bypass -File .\tools\package-release.ps1 -Version <version>
```

Inspect release files:

```powershell
Get-ChildItem -LiteralPath .\dist\v<version> | Select-Object Name,Length
```

Read checksums:

```powershell
Get-Content -LiteralPath .\dist\v<version>\SHA256SUMS.txt
```

Check Git:

```powershell
git status --short --branch --ignored
git log --oneline --decorate --max-count=5
```

## Reporting

Report:

- Release version and folder.
- EPUB, cover, and preview filenames.
- EPUBCheck result.
- Release audit/checksum result.
- Commit hash and tag if created.
- Any ignored output files or untracked artifacts that might matter.

Do not delete old release folders, push to GitHub, or overwrite a finalized release without explicit user confirmation.

