-
Notifications
You must be signed in to change notification settings - Fork 19
Description
First off, let me say this is a super helpful tool. Thanks for open sourcing this and happy to contribute if needed.
Was able to refactor / identify some key hotspots that decreased complexity / increased testability in angular, react, rails, and go codebases and made it much easier for my LLM setup to understand what was going on. 🔥
The following is just a formal ticket for adding to homebrew-- I am happy to create a PR if you have an idea on which direction you were heading with this (also a nod to your OIP release recently). Cheers!
Problem
The installation documentation at https://paiml.github.io/pmat-book/ch01-01-installing.html states that PMAT can be installed via Homebrew:
brew install pmatHowever, this command does not work. Running brew search pmat returns no results, and the formula does not exist in homebrew-core or any paiml tap.
Current State
- Documentation claims Homebrew support
- No Homebrew formula exists
- No
paiml/homebrew-pmattap repository - No release automation to publish to Homebrew
- Cargo installation works (
cargo install pmat)
Proposed Solution
Create a Homebrew tap to enable installation via brew install. This involves:
- Create tap repository:
paiml/homebrew-pmat - Add formula file:
Formula/pmat.rbthat builds from source or uses pre-built binaries - Automate releases: GitHub Actions workflow to update formula on new releases
- Update documentation: Change instructions to:
brew tap paiml/pmat brew install pmat
Alternatively, submit to homebrew-core once the tool reaches broader adoption.
Implementation Notes
Since PMAT is a Rust project with Cargo.toml, the formula would use cargo install under the hood. Example structure:
class Pmat < Formula
desc "Zero-configuration AI context generation with extreme quality enforcement"
homepage "https://paiml.github.io/pmat-book/"
url "https://github.com/paiml/paiml-mcp-agent-toolkit/archive/refs/tags/vX.Y.Z.tar.gz"
license "MIT"
depends_on "rust" => :build
def install
system "cargo", "install", *std_cargo_args
end
test do
assert_match version.to_s, shell_output("#{bin}/pmat --version")
end
endImpact
This discrepancy creates friction for macOS/Linux users who attempt to follow the documented installation process and encounter errors.