Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计异常

pkgmgr-homebrew-formula-devpkgmgr 自制公式开发

Agent Skill

pkgmgr-homebrew-formula-dev 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

356

周安装

15

GitHub Stars

7

下载量

125
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:pkgmgr-homebrew-formula-dev(pkgmgr 自制公式开发)
来源仓库:https://github.com/arustydev/ai
仓库路径:skills/pkgmgr-homebrew-formula-dev
安装命令:
npx skills add https://github.com/arustydev/ai --skill pkgmgr-homebrew-formula-dev
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/arustydev/ai --skill pkgmgr-homebrew-formula-dev

简介

pkgmgr-homebrew-formula-dev 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。

  • 它支持通过关键词、任务场景或来源仓库进行信息检索与筛选,帮助 Agent 快速获取相关资源。
  • 可通过 npx skills add 命令从指定 GitHub 仓库安装并使用该技能。
  • 安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写操作。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Homebrew Formula Development

Guide for researching, creating, testing, and maintaining Homebrew formulas in a custom tap.

When to Use This Skill

  • Creating a new Homebrew formula for a project
  • Debugging formula build or test failures
  • Running local validation before CI
  • Understanding Homebrew's Ruby DSL
  • Setting up livecheck for automatic version detection

Template Pipeline

This skill includes a JSON Schema → Mustache template pipeline for generating formulas from structured data.

Workflow

  1. Create a JSON file conforming to scripts/formula.schema.ts
  2. Run just template-formula <path-to-json> to validate and render
  3. The pipeline validates with AJV, preprocesses (PascalCase, language dispatch, license rendering), then renders via Mustache

Key Files

FilePurpose
scripts/formula.schema.tsJSON Schema (draft-2020-12) defining formula structure
scripts/formula.helper.tsPreprocessing: PascalCase, license rendering, install flattening, partials loading
reference/templates/main.mustacheMain template — renders all shared fields, dispatches to language partials
reference/templates/langs/*.mustacheLanguage-specific install partials (go, rust, python, zig, cmake, autotools, meson)
test/data/*.jsonTest fixtures covering each scenario
test/cases/*.shTest cases that validate rendered output

Running

# Render a formula from JSON
just template-formula path/to/formula.json

# Run all tests
just test

Adding a New Language

  1. Add install-<lang> definition to scripts/formula.schema.ts
  2. Add language dispatch allOf entry in the formula definition
  3. Create reference/templates/langs/<lang>.mustache partial
  4. Add "<lang>" to the language enum
  5. Add a test fixture in test/data/ and test case in test/cases/

Research Phase

Before creating a formula, gather this information:

FieldHow to Find
Latest versiongh api repos/owner/repo/releases/latest --jq '.tag_name' (404 → HEAD-only)
LicenseCheck LICENSE file or repo metadata (use SPDX identifier)
Build systemLook at Makefile, go.mod, Cargo.toml, pyproject.toml, etc.
DependenciesCheck build docs, CI files, or dependency manifests
Default branchCheck repo settings — may be main or master
Binary nameMay differ from formula name — check Cargo.toml [[bin]], Go cmd/, or pyproject.toml [projectcli]

Determine Formula Type

ScenarioTypeHas url/sha256?Has livecheck?
Tagged releasesStandardYesYes
No releasesHEAD-onlyNoNo
Monorepo subdirectoryStandardYesYes

Calculate SHA256

curl -sL "https://github.com/owner/repo/archive/refs/tags/vX.Y.Z.tar.gz" | shasum -a 256

Formula Naming

  • Formula name: kebab-case (hex-patch, jwt-ui)
  • Class name: PascalCase (HexPatch, JwtUi)

Formula Structure

File Location

Formulas are organized alphabetically: Formula/<first-letter>/<name>.rb

Key Elements

ElementPurpose
descShort description (~80 chars) for brew info
homepageProject homepage URL
urlSource tarball URL (omit for HEAD-only)
sha256Checksum (omit for HEAD-only)
licenseSPDX identifier
headGit URL for --HEAD installs
livecheckAuto-detect new versions (omit for HEAD-only)
depends_onBuild or runtime dependencies
testVerification block

SPDX License Identifiers

LicenseSPDX
MIT"MIT"
Apache 2.0"Apache-2.0"
GPL 3.0 (only)"GPL-3.0-only"
GPL 3.0 (or later)"GPL-3.0-or-later"
BSD 2-Clause"BSD-2-Clause"
BSD 3-Clause"BSD-3-Clause"

Always specify -only or -or-later for GPL/LGPL/AGPL.

Language-Specific Patterns

Each language has a reference doc with install patterns, schema fields, and common issues:

  • Go: reference/langs/go.md
  • Rust: reference/langs/rust.md
  • Python: reference/langs/python.md

Additional languages supported by the template pipeline (cmake, autotools, meson, zig) — see their Mustache partials in reference/templates/langs/.

Reference Materials

TopicLocation
Local validation stepsreference/checklists/local-validation.md
Common issues & FAQreference/faq/common.md
Test block patternsreference/testing/patterns.md
Generated formula examplesreference/templates/formulas/*.rb
JSON Schema definitionscripts/formula.schema.ts
Bottle attestation & provenancereference/security/attestation.md

Batch Formula Creation

When creating many formulas at once:

  1. Compute SHA256 hashes in parallel — launch multiple curl | shasum calls concurrently
  2. Research build details in parallel — check build manifests concurrently
  3. Write all formula files — no dependencies between them
  4. Create branches/PRs sequentially — one branch per formula, each from main
  5. **Use ruby -c *.rb** to syntax-check all formulas before pushing

Architecture-Specific Binaries

When a project provides pre-built binaries for different architectures:

Preferred: Build from source (avoids architecture complexity)

If pre-built binaries required: Use resource blocks, NOT url/sha256 in on_arm/on_intel:

on_arm do
  resource "binary" do
    url "https://github.com/org/repo/releases/download/vX.Y.Z/tool-darwin-arm64.tar.gz"
    sha256 "..."
  end
end

on_intel do
  resource "binary" do
    url "https://github.com/org/repo/releases/download/vX.Y.Z/tool-darwin-amd64.tar.gz"
    sha256 "..."
  end
end

def install
  resource("binary").stage do
    bin.install "tool"
  end
end

See reference/faq/common.md for details on deprecated patterns.

Common Pitfalls

Dependency Issues

ProblemSymptomSolution
Missing runtime dependencybrew linkage --test shows broken depsAdd dependency globally, not just in on_linux
Wrong dependency orderbrew style fails with ordering errorBuild deps (=>:build) before runtime deps, alphabetically within each
Rust + OpenSSL linkageLinkage test shows libssl.3.dylib brokenAdd depends_on "openssl@3" globally (not just Linux) if binary links dynamically

Python Formula Issues

ProblemSymptomSolution
pip_install buildpath missing depsModuleNotFoundError at runtimeUse pip_install "package==#{version}" to install from PyPI
PyPI name differs from repopip can't find packageCheck pyproject.toml for actual name field (e.g., ktoolk2l)
Missing setuptoolsNo module named 'pkg_resources'Add venv.pip_install "setuptools" before main package
Wrong pip invocationFailed to execute:.../libexec/bin/pipUse venv.pip_install, not system libexec/"bin/pip"

Test Block Issues

ProblemSymptomSolution
Binary name mismatchTest can't find binaryCheck Cargo.toml [[bin]] or pyproject.toml [projectcli] for actual name
Help text mismatchassert_match failsRun binary locally to verify actual output before writing test
Output to stderrshell_output returns emptyAdd 2>&1 redirect: shell_output("#{bin}/tool --help 2>&1")

See reference/faq/common.md for detailed explanations and additional issues.

Checklist

  • Research complete (version, license, build system, deps, binary name, default branch)
  • Formula type determined (standard vs HEAD-only)
  • SHA256 calculated (if not HEAD-only)
  • Formula file created at Formula/<letter>/<name>.rb
  • ruby -c passes (syntax check)
  • brew audit --new passes
  • brew style passes (or issues addressed)
  • brew install --build-from-source succeeds
  • brew test passes
  • Binary executes correctly
  • PR created with CI passing

References

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

38.04%
按下载量换算48

Claude

29.19%
按下载量换算36

Cursor

17.01%
按下载量换算21

Gemini CLI

9.48%
按下载量换算12

安全审计

Gen Agent Trust Hub

未通过

Socket

可疑

Snyk

可疑

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills