macos-release

macos-release is a skill for Claude Code, Codex from phun333/pi-infobar. It costs 132 tokens per session (1,941 once invoked), scanned A, original, MIT.

A release guide for publishing a native macOS app through GitHub with a DMG installer and Sparkle automatic updates.

In plain words
What is it for?
It is for shipping macOS app versions, creating and signing DMG files, updating Sparkle appcasts, and publishing GitHub releases.
Why use it?
It organizes versioning, building, notarization, signing, packaging, and release steps that are easy to miss when done manually.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: installed under .agents/ (shared by several agents).

Not installable on its own: it runs a file from its repository that does not travel with it. Clone the repository, or install whatever ships that file. The line is go run ./release/cli.

Install

Getting it into your agent

There is no command for this one: it runs only inside a plugin, and the catalogue could not identify which plugin ships it. The source is linked below.

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for macos-release

README.md
[![agentmods](https://agentmods.dev/badge/skills/phun333/pi-infobar/macos-release.svg)](https://agentmods.dev/skills/phun333/pi-infobar/macos-release)
Your own site
<a href="https://agentmods.dev/skills/phun333/pi-infobar/macos-release"><img src="https://agentmods.dev/badge/skills/phun333/pi-infobar/macos-release.svg" alt="Measured on agentmods" height="20"></a>
Per session 132 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,941 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00132 $0.01941
Opus 5 $0.00066 $0.00971
Sonnet 5 $0.00026 $0.00388
Haiku 4.5 $0.00013 $0.00194

Measured 6d ago against content hash fdff88b7e569, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

macos-release scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

Copies of this mod

1 near-identical copy found in the catalogue:

.agents/skills/macos-release/SKILL.md · 224 lines

How it starts

The opening of the file, as written. The whole thing — 224 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Release macOS App

This skill covers the full release pipeline for distributing a native macOS app outside the Mac App Store via GitHub Releases with Sparkle auto-update support.

Release Pipeline Overview

Bump version → Archive → Notarize → Export → Create DMG → Sign DMG → Update appcast.xml → Git push → GitHub Release

Prerequisites

The user needs these tools installed:

Tool Install Purpose
create-dmg brew install create-dmg Creates the DMG installer
gh brew install gh Creates GitHub releases
git Built-in Pushes appcast changes
Sparkle sign_update Built automatically when the project is built with Sparkle EdDSA-signs the DMG

The sign_update binary lives in DerivedData after building the project in Xcode:

find ~/Library/Developer/Xcode/DerivedData -name "sign_update" -type f 2>/dev/null | head -1

Step-by-Step Release Guide

1. Bump Version Numbers

In Xcode, update:

  • MARKETING_VERSION (e.g., 1.2) -- the user-facing version
  • CURRENT_PROJECT_VERSION (e.g., 5) -- the build number (must be unique per release)

Or via command line:

# Check current values
grep -E "MARKETING_VERSION|CURRENT_PROJECT_VERSION" YourApp.xcodeproj/project.pbxproj | head -4

2. Archive in Xcode

Product > Archive. This creates a release build with the proper signing identity.

3. Notarize and Export

In the Archives organizer:

  1. Select the archive > Distribute App
  2. Choose "Direct Distribution" (or "Developer ID" for notarization)
  3. Wait for notarization to complete
  4. Export to ~/Downloads/YourApp.app

4. Create DMG

create-dmg \
  --volname "YourApp" \
  --window-pos 200 120 \
  --window-size 660 400 \
  --icon-size 160 \
  --icon "YourApp.app" 180 170 \
  --app-drop-link 480 170 \
  --hide-extension "YourApp.app" \
  ~/Downloads/YourApp.dmg \
  ~/Downloads/YourApp.app

5. Sign DMG with Sparkle

/path/to/sign_update ~/Downloads/YourApp.dmg

Read the full file on GitHub · 224 lines

Files

What ships with it

3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 224 lines · 132 tokens per session scan A fdff88b7e569

Subscribe to this mod's changes

macos-release is a skill published in the GitHub repository phun333/pi-infobar (91 stars, last pushed 1mo ago), licensed MIT. It adds 132 tokens to every session and 1,941 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

ship

Ship a Pacer release using the install-first, single-gate flow. Use when the maintainer asks to release / ship / cut / publish a version, or — after a local install they've reviewed — to land and release the current work. Covers the version-bump + release-notes gate, landing the PR, and the backgrounded tag → watch →…

EricAndrechek/Pacer · 138 tokens

app-store-review

Evaluates code against Apple's App Store Review Guidelines. Use this skill when reviewing iOS, macOS, tvOS, watchOS, or visionOS app code (Swift, Objective-C, React Native, or Expo) to identify potential App Store rejection issues before submission. Triggers on tasks involving app review preparation, compliance…

jacklandrin/OnlySwitch · 76 tokens

swift-concurrency-pro

Reviews Swift code for concurrency correctness, modern API usage, and common async/await pitfalls. Use when reading, writing, or reviewing Swift concurrency code.

jacklandrin/OnlySwitch · 35 tokens

swift-testing-pro

Writes, reviews, and improves Swift Testing code using modern APIs and best practices. Use when reading, writing, or reviewing projects that use Swift Testing.

jacklandrin/OnlySwitch · 34 tokens

swiftui-pro

Comprehensively reviews SwiftUI code for best practices on modern APIs, maintainability, and performance. Use when reading, writing, or reviewing SwiftUI projects.

jacklandrin/OnlySwitch · 36 tokens

onlyswitch-deeplink

Invoke OnlySwitch built-in switches or buttons via deeplink. Use when the user asks to toggle or trigger an OnlySwitch action (e.g. empty trash, keep awake, dark mode, mute, hide desktop, clear clipboard, eject discs, Xcode derived data, and any other built-in switch or button). Resolve the request to the correct…

jacklandrin/OnlySwitch · 85 tokens