#!/bin/sh set -e OS=$(uname -s | tr '[:upper:]' '[:lower:]') ARCH=$(uname -m) case "$ARCH" in x86_64) ARCH="amd64" ;; aarch64|arm64) ARCH="arm64" ;; *) echo "Unsupported architecture: $ARCH"; exit 1 ;; esac case "$OS" in linux|darwin) ;; *) echo "Unsupported OS: $OS (CostMeter supports Linux and macOS)"; exit 1 ;; esac REPO="ggonzalezaleman/costmeter-releases" VERSION=$(curl -fsSL "https://api.github.com/repos/$REPO/releases/latest" 2>/dev/null | grep '"tag_name"' | sed -E 's/.*"v([^"]+)".*/\1/') if [ -z "$VERSION" ]; then echo "Failed to fetch latest version. Check your internet connection." exit 1 fi URL="https://github.com/$REPO/releases/download/v${VERSION}/costmeter_${VERSION}_${OS}_${ARCH}.tar.gz" echo "Downloading CostMeter v${VERSION} for ${OS}/${ARCH}..." TMPDIR=$(mktemp -d) trap "rm -rf $TMPDIR" EXIT curl -fsSL "$URL" -o "$TMPDIR/costmeter.tar.gz" tar -xzf "$TMPDIR/costmeter.tar.gz" -C "$TMPDIR" if [ -w /usr/local/bin ]; then mv "$TMPDIR/costmeter" /usr/local/bin/costmeter else sudo mv "$TMPDIR/costmeter" /usr/local/bin/costmeter fi chmod +x /usr/local/bin/costmeter echo "" echo "✅ CostMeter v${VERSION} installed" echo "" echo "Get started:" echo " costmeter init # interactive setup" echo " costmeter init --from-openclaw # if you use OpenClaw" echo ""