Native Binary Packages for goose
This directory contains the npm package scaffolding for distributing the
goose Rust binary as platform-specific npm packages.
Packages
| Package | Platform |
|---|---|
@aaif/goose-binary-darwin-arm64 |
macOS Apple Silicon |
@aaif/goose-binary-darwin-x64 |
macOS Intel |
@aaif/goose-binary-linux-arm64 |
Linux ARM64 |
@aaif/goose-binary-linux-x64 |
Linux x64 |
@aaif/goose-binary-win32-x64 |
Windows x64 |
Building
From the repository root:
# Build for current platform only
cd ui/acp
npm run build:native
# Build for all platforms (requires cross-compilation toolchains)
npm run build:native:all
# Build for specific platform(s)
npx tsx scripts/build-native.ts darwin-arm64 linux-x64
The built binaries are placed into ui/goose-binary/goose-binary-{platform}/bin/.
These directories are git-ignored.
Publishing
Publishing is handled by GitHub Actions. See .github/workflows/publish-npm.yml.
For manual publishing:
# From repository root
./ui/scripts/publish.sh --real
This will publish all native packages along with @aaif/goose-acp and @aaif/goose.
Usage
These packages are installed as optional dependencies by @aaif/goose (the TUI).
The appropriate package for the user's platform is automatically selected during
installation.
See ui/text/scripts/postinstall.mjs for how the binary path is resolved.