Skip to content

feat: add install script for macOS and Linux - #120

Open
whynowy wants to merge 1 commit into
a2aproject:mainfrom
whynowy:install
Open

whynowy wants to merge 1 commit into
a2aproject:mainfrom
whynowy:install

Conversation

@whynowy

@whynowy whynowy commented Nov 4, 2026 •

Copy link
Copy Markdown
  • Add install.sh, which downloads the release archive for the current OS/arch, verifies it against checksums.txt, and installs the a2a binary. Supports A2A_VERSION, INSTALL_DIR and BINARY_NAME overrides.
  • Document it in the README installation section.

Closes: #121

Signed-off-by: Derek Wang <whynowy@gmail.com>
Comment thread install.sh
Comment on lines +19 to +20
BINARY_NAME="${BINARY_NAME:-a2a}"
INSTALL_DIR="${INSTALL_DIR:-/usr/local/bin}"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

these names are too generic and might already be set in CI. let's prefix with A2A_

Comment thread install.sh
echo "v${A2A_VERSION#v}"
return
fi
local api_url="https://api.github.com/repos/${REPO}/releases/latest"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unauthenticated api calls are limited to 60 per hour per IP. we can use releases/latest/download/checksums.txt instead

Comment thread README.md
curl -fsSL https://raw.githubusercontent.com/a2aproject/a2a-cli/main/install.sh | bash
```

Set `A2A_VERSION` to pin a release and `INSTALL_DIR` to change the destination (default `/usr/local/bin`).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: A2A_VERSION=0.3.1 curl ... only sets it for curl. let's show curl ... | A2A_VERSION=0.3.1 bash

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: add a script to install from latest released binaries

2 participants