Implementation guide for cross-platform CLI binary distribution and installation
@unhook/cli
package has been enhanced to work seamlessly across all major platforms (macOS, Windows, Linux, ARM/x64) using a hybrid approach that downloads platform-specific binaries during installation.
linux-x64
(glibc)linux-arm64
(glibc)linux-x64-musl
(Alpine Linux)linux-arm64-musl
(Alpine Linux ARM64)darwin-x64
(macOS Intel)darwin-arm64
(macOS Apple Silicon)win32-x64
(Windows 64-bit)Package Installation
npm install @unhook/cli
Postinstall Hook
scripts/install.cjs
executes automaticallyPlatform Detection
Binary Download
Installation
~/.unhook/bin/{version}/
with proper permissionsCommand Execution
unhook [command]
Wrapper Execution
bin/cli.cjs
wrapper script executesBinary Location
Transparent Execution
Result Return
unhook-{platform}-{arch}[.exe]
unhook-darwin-arm64
(Apple Silicon)unhook-darwin-x64
(Intel)unhook-linux-x64
(glibc)unhook-linux-x64-musl
(Alpine)unhook-linux-arm64
(ARM64 glibc)unhook-linux-arm64-musl
(ARM64 Alpine)unhook-win32-x64.exe
(64-bit)~/.unhook/bin/{version}/
Corporate Firewalls
HTTP_PROXY
, HTTPS_PROXY
environment variablesPermission Issues
"Binary not found" errors
Permission denied on Linux/macOS
macOS security warnings
Corporate proxy issues
Update CI
.github/workflows/cli-github-release.yml
)Add Platform Mapping
install.cjs
and cli.cjs
Update Documentation
Test on Platform