A skill your agent uses when the user wants to release a new version.

MITAuto-check passedDevelopment

Install Release

skills CLI
$ npx skills add s-morgan-jeffries/apple-mail-fast-mcp --skill release -a claude-code

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

GitHub CLI
$ gh skill install s-morgan-jeffries/apple-mail-fast-mcp release --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/s-morgan-jeffries/apple-mail-fast-mcp.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/release .claude/skills/release && 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
release
GitHub stars
104
Token cost
~1.3k tokens
SKILL.md length
581 words
Files
1
Skills in repo
5
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when the user wants to release a new version.

  • Works in 12 steps: Milestone Check → Version Number → Create Release Branch → …
  • The user wants to release a new version
  • SKILL.md covers Phase 1: Milestone Check, Phase 2: Version Number, Phase 3: Create Release Branch and Phase 4: Bump Version, plus 10 more sections
  • Calls gh, git and make; needs OPENROUTER_API_KEY

What it does

Release is an agent skill from s-morgan-jeffries/apple-mail-fast-mcp. Use when the user wants to release a new version. Orchestrates the full release workflow including milestone check, version bump, changelog generation, validation, tagging, and PR creation. Also use when discussing release planning or version management.

Its SKILL.md is about 1.3k 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 Project management, Changelog and release notes and Product roadmapping. It works with Model Context Protocol. The repository describes itself as: 🤖 MCP server for Apple Mail - Manage emails with AI using Claude Desktop. Search, send, organize mail with natural language. The licence is MIT.

When your agent uses it

  • The user wants to release a new version
  • Discussing release planning
  • Version management

Example prompts

  • “/release”

Requirements

  • A credential in OPENROUTER_API_KEY

Workflow steps

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

  1. Milestone Check
  2. Version Number
  3. Create Release Branch
  4. Bump Version
  5. Generate CHANGELOG
  6. Test Coverage Review
  7. Code Review
  8. Documentation Review
  9. 5: Refresh derived artifacts (mandatory, #288)
  10. Validation
  11. Commit, Push, PR
  12. Merge, Tag, Push Tag

What it can do on your machine

Read from SKILL.md and the folder at commit ed0cfbc. 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:

    • gh
    • git
    • make

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use gh and git, 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 these keys or tokens, usually read from environment variables:

    • OPENROUTER_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Release loads about 1.3k tokens when it runs. Until then it costs about 66 tokens; SKILL.md has 581 words of instructions outside code blocks.

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

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 s-morgan-jeffries/apple-mail-fast-mcp at commit ed0cfbc, republished under its MIT licence (© s-morgan-jeffries). 581 words, ~1,283 tokens.

Download SKILL.mdSave it as .claude/skills/release/SKILL.md (or your agent's skills folder).
name
release
description
Use when the user wants to release a new version. Orchestrates the full release workflow including milestone check, version bump, changelog generation, validation, tagging, and PR creation. Also use when discussing release planning or version management.

Release Workflow (12 Phases)

Phase 1: Milestone Check

  • List open milestones via gh api
  • Verify 0 open issues in target milestone
  • Stop if issues remain (ask user to move/close)

Phase 2: Version Number

  • Read current version from pyproject.toml (authoritative)
  • Milestone title = target version
  • Confirm with user

Phase 3: Create Release Branch

  • git checkout -b release/vX.Y.Z from main

Phase 4: Bump Version

Update ALL files (pyproject.toml is authoritative):

  1. pyproject.toml — version = "X.Y.Z"
  2. src/apple_mail_fast_mcp/__init__.py — __version__ = "X.Y.Z"
  3. .claude/CLAUDE.md — **Version:** vX.Y.Z
  4. README.md — all version references
  5. mcpb/manifest.json — "version": "X.Y.Z" (the .mcpb bundle; check_version_sync.sh enforces it)
  6. .claude-plugin/marketplace.json + .claude-plugin/plugin.json — every "version": "X.Y.Z" (the Claude Code plugin; check_version_sync.sh enforces all occurrences)

Phase 5: Generate CHANGELOG

  • Commits since last tag: git log v{prev}..HEAD --oneline
  • PRs since last release: gh pr list --state merged --search "merged:>YYYY-MM-DD"
  • Keep a Changelog format: ## [X.Y.Z] - YYYY-MM-DD
  • Categories: Added, Changed, Fixed, Removed

Phase 6: Test Coverage Review

  • Run coverage: make coverage
  • Compare against fail_under in pyproject.toml
  • Audit changed files for adequate coverage

Phase 7: Code Review

  • Launch superpowers:code-reviewer against cumulative diff
  • Critical issues block release

Phase 8: Documentation Review

  • README, CLAUDE.md, CHANGELOG, docs/**, tool docstrings, skills
  • The content-drift gate (check_docs.sh, Phase 9) automates the tool-set / removed-name / cross-ref / eval-description-sync parts; this phase is the human read for things it can't check (accuracy, tone, completeness).

Phase 8.5: Refresh derived artifacts (mandatory, #288)

Derived artifacts rot silently between releases — refresh them against the release commit so a stale snapshot can't ship:

  1. make eval-descriptions — regenerate the blind-eval tool descriptions; commit if changed. (check_docs.sh also fails on drift here.)
  2. Re-capture the benchmark baseline (#216): MAIL_TEST_MODE=true MAIL_TEST_ACCOUNT=<acct> uv run pytest tests/benchmarks/ --run-benchmark --capture-baseline (needs real Mail.app); commit the refreshed baseline.json.
  3. Re-run the blind agent eval (#219) and refresh its scored snapshot (needs OPENROUTER_API_KEY); commit.

Steps 2 and 3 are enforced by ./scripts/check_release_artifacts.sh (Phase 9): the benchmark baseline and the eval snapshot are version-stamped, and the gate fails the release if a stamp is stale. If an artifact genuinely can't be refreshed for this release (e.g. a CI/docs-only release), don't skip silently — record a waiver line (with a tracking issue) in release_artifact_waivers.txt. See docs/guides/RELEASE_ARTIFACTS.md. (#356)

Show full SKILL.md (230 more words)Show less

Phase 9: Validation

Run ALL checks (stop on failure):

  1. ./scripts/check_version_sync.sh
  2. ./scripts/check_client_server_parity.sh
  3. ./scripts/check_complexity.sh
  4. make test
  5. make test-e2e — mandatory (requires MAIL_TEST_MODE=true + a test Mail.app account). CI excludes e2e, so this is the only gate that catches a stale e2e failure. A pre-existing failure on main is a release-blocker, not a known issue to ship around (#257).
  6. ./scripts/check_dependencies.sh — hard-fails only on advisories in direct deps (fastmcp/imapclient); transitive advisories are warnings (exit 0), surfaced continuously off the release path by .github/workflows/dependency-audit.yml so they don't block a release (#296). A direct-dep advisory still blocks — bump the pin and re-run.
  7. ./scripts/check_applescript_safety.sh
  8. ./scripts/check_docs.sh — doc/artifact drift gate (tool-set coverage, removed-name, cross-refs, eval-description sync) (#288)
  9. ./scripts/check_release_artifacts.sh — fails if the benchmark baseline or eval snapshot isn't version-stamped for this release (Phase 8.5 #2/#3) and isn't waived in release_artifact_waivers.txt (#356)

Phase 10: Commit, Push, PR

  • Commit: "release: vX.Y.Z"
  • Push: -u origin release/vX.Y.Z
  • PR to main via gh pr create

Phase 11: Merge, Tag, Push Tag

  • Rebase merge: gh pr merge NNN --rebase --delete-branch
  • Tag on main: ./scripts/create_tag.sh vX.Y.Z
  • Push tag: git push origin vX.Y.Z
  • Verify: git describe --tags --abbrev=0

Phase 12: Close Milestone

  • gh api -X PATCH repos/{owner}/{repo}/milestones/{number} -f state=closed

Notes

  • CHANGELOG only updated on release branches
  • Tags created on main AFTER PR merge
  • Use rebase merge (linear history required)
  • Each phase has explicit stop conditions — if it fails, stop and report

© s-morgan-jeffries, MIT. 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/release of s-morgan-jeffries/apple-mail-fast-mcp.

Open the folder on GitHubat commit ed0cfbc

Compare with similar skills

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

Release compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Release this skills-morgan-jeffries/apple-mail-fast-mcp104—~1.3kAutomated safety check: PassMIT
LoopX PR Program Managerloopx-project/loopx6.2k—~1.9kAutomated safety check: PassApache-2.0
Roadmap Communicatoralirezarezvani/claude-skills28k1 repos~648Automated safety check: PassMIT
ReleasePrefectHQ/fastmcp28k—~2.9kAutomated safety check: PassApache-2.0
Plane Release Notes Generatormakeplane/plane61k—~2.5kAutomated safety check: PassAGPL-3.0
Release Prepjohnhuang316/code-index-mcp1k—~680Automated safety check: PassMIT

Similar skills

  • LoopX PR Program Manager

    loopx-project/loopx

    Tracks a group of pull or merge requests across repositories as durable LoopX state: inventory, reconcile changes, keep priorities and a roadmap, and monitor over time.

    6.2k GitHub stars~1.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Roadmap Communicator

    alirezarezvani/claude-skills

    A skill your agent uses when preparing roadmap narratives, release notes, changelogs, or stakeholder updates tailored for executives, engineering teams, and customers.

    28k GitHub starsUsed in 1 repo~648 tokens
    DevelopmentAuto-check passed
  • Release

    PrefectHQ/fastmcp

    Cut a FastMCP release end to end. An agent skill from PrefectHQ/fastmcp.

    28k GitHub stars~2.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Builds categorized release notes for a Plane release pull request from its commits and writes them into the PR description, for both the plane-cloud and plane-ee repos.

    61k GitHub stars~2.5k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Release Prep

    johnhuang316/code-index-mcp

    A skill your agent uses when code-index-mcp implementation is complete and a version bump, release notes, tag, package publication, or GitHub release is being prepared.

    1k GitHub stars~680 tokensUpdated 2 mo ago
    DevelopmentAuto-check passed
  • Store Submit

    zhitongblog/solomd

    Publish a SoloMD release to the stores that have no usable submission API — Google Play Console and Microsoft Partner Center — by driving them through the local Unzoo Browser REST API.

    1.2k GitHub stars~1.7k tokensUpdated today
    DevelopmentAuto-check: notes

More from s-morgan-jeffries/apple-mail-fast-mcp

  • API Design

    s-morgan-jeffries/apple-mail-fast-mcp

    Use BEFORE adding any new tool, parameter, or endpoint to the Apple Mail MCP server.

    104 GitHub stars~876 tokensUpdated 1 mo ago
    Auto-check passed
  • Applescript Mail

    s-morgan-jeffries/apple-mail-fast-mcp

    A skill your agent uses when writing, modifying, or debugging ANY AppleScript that interacts with Apple Mail.

    104 GitHub stars~2.5k tokensUpdated 1 mo ago
    Auto-check passed
  • Integration Testing

    s-morgan-jeffries/apple-mail-fast-mcp

    A skill your agent uses when setting up, running, or debugging integration tests against real Apple Mail.

    104 GitHub stars~1.2k tokensUpdated 1 mo ago
    Auto-check passed
  • Performance Patterns

    s-morgan-jeffries/apple-mail-fast-mcp

    A skill your agent uses when optimizing Apple Mail MCP operations, diagnosing slow queries, adding new filtering logic, or modifying how data is fetched from Mail.app.

    104 GitHub stars~1.5k tokensUpdated 1 mo ago
    Auto-check passed

Questions about Release

What does Release do?

A skill your agent uses when the user wants to release a new version. Release is an agent skill from s-morgan-jeffries/apple-mail-fast-mcp. Use when the user wants to release a new version.

When should I use Release?

Release fits situations like: the user wants to release a new version; discussing release planning; version management.

How do I install Release in Claude Code?

Run `npx skills add s-morgan-jeffries/apple-mail-fast-mcp --skill release -a claude-code`. Or copy the skill folder (.claude/skills/release in s-morgan-jeffries/apple-mail-fast-mcp) into .claude/skills/release in your project. Claude Code loads it when a task matches its description.

How do I install Release in Codex?

Run `npx skills add s-morgan-jeffries/apple-mail-fast-mcp --skill release -a codex`. Or copy the skill folder (.claude/skills/release in s-morgan-jeffries/apple-mail-fast-mcp) into .agents/skills/release in your project. Codex loads it when a task matches its description.

Can I use Release 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 s-morgan-jeffries/apple-mail-fast-mcp --skill release -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/release, .gemini/skills/release, .github/skills/release and .opencode/skills/release in your project.

What does Release need to run?

Going by SKILL.md and its folder, Release needs the command-line tools its instructions call (gh, git and make) and credentials named OPENROUTER_API_KEY. Our summary lists: A credential in OPENROUTER_API_KEY.

Does Release access the network?

SKILL.md contains no URLs. Its commands use gh and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Release 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 Release use?

Release is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Release use?

About 1.3k tokens (SKILL.md is roughly 5.1k 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 Release?

Skills that share tags, products or a category with Release: LoopX PR Program Manager (loopx-project/loopx, 6.2k stars), Roadmap Communicator (alirezarezvani/claude-skills, 28k stars), Release (PrefectHQ/fastmcp, 28k stars) and Plane Release Notes Generator (makeplane/plane, 61k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Release?

s-morgan-jeffries (a GitHub user) maintains it in s-morgan-jeffries/apple-mail-fast-mcp, which has 104 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on September 9, 2026.

Source: s-morgan-jeffries/apple-mail-fast-mcp on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.