Publish CLIs/TUIs to Homebrew via a personal tap. Use when asked to create or manage a Homebrew tap repo, generate or update formulae, compute sha256, test installs, or ship new releases for Go, Rust, Node/TypeScript, Python, or prebuilt binaries.
Detected risks:
The 'homebrew-publish' skill allows users to publish Command-Line Interfaces (CLI) and Text User Interfaces (TUI) to Homebrew via a personal tap repository. It streamlines the process of creating or managing a Homebrew tap repository, generating or updating formulae, calculating SHA256 hashes, testing installations, and shipping new releases for various languages such as Go, Rust, Node/TypeScript, Python, and prebuilt binaries. This skill helps developers and maintainers automate and manage the deployment of their software packages, making it easier for users to install them using the familiar 'brew install' command from a custom tap repository.
To publish a new formula, you must first ensure that your tap repository exists. If it does not, you can create it using `brew tap-new OWNER/homebrew-tap`. After that, create the formula using `brew create <url-to-tarball> --tap OWNER/homebrew-tap --set-name <formula>`, edit the formula file, compute the sha256 hash, test the installation, and then commit and push your changes.
Yes, this skill supports prebuilt binaries. You can specify a prebuilt binary URL when creating or updating a formula, and the skill will handle the necessary steps to ensure proper installation and testing. For prebuilt binaries, a specific template for prebuilt formulae is available in the references.
To update an existing formula for a new release, you need to update the 'url' and 'sha256' fields in the formula. If necessary, update the version field. After that, you should re-run the tests, commit the changes, and push them to the GitHub repository for the tap.
The 'homebrew-publish' skill supports Go, Rust, Node/TypeScript, Python, and prebuilt binaries. It provides specific templates and instructions for each of these languages to help you implement the correct formula for your project.
Quick Setup:
.claude/skills/Repository
regenrek/agent-skills