Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 2 additions & 9 deletions .github/workflows/publish-python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,21 +67,14 @@ jobs:

- name: Bundle CLI with esbuild
run: |
npx esbuild src/cli.ts \
--bundle \
--platform=node \
--target=node18 \
--outfile=dist/cli-bundled.js \
--banner:js="#!/usr/bin/env node"
npx esbuild src/cli.ts --bundle --platform=node --target=node18 --outfile=dist/cli-bundled.js --banner:js="#!/usr/bin/env node"

- name: Create binary directory
run: mkdir -p dist/binaries

- name: Create binary with pkg
run: |
npx pkg dist/cli-bundled.js \
--targets ${{ matrix.target }} \
--output dist/binaries/${{ matrix.binary_name }}
npx pkg dist/cli-bundled.js --targets ${{ matrix.target }} --output dist/binaries/${{ matrix.binary_name }}

- name: Sign macOS binary (ad-hoc)
if: runner.os == 'macOS'
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/release-binaries.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@ name: Build and Release Binaries

on:
release:
types: [published]
types: [created] # Triggers when release is created (still allows asset uploads)
workflow_dispatch:
inputs:
release_tag:
description: 'Release tag to build binaries for (e.g., v1.2.0)'
description: 'Release tag to build binaries for (e.g., v1.2.1)'
required: true
default: 'v1.2.0'
default: 'v1.2.1'

# Explicit permissions for security
permissions:
Expand Down
36 changes: 21 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,25 +51,28 @@ capiscio validate ./agent-card.json --strict --json

| Platform | Architecture | Download | Size |
|----------|-------------|----------|------|
| **Linux** | x64 | [`capiscio-linux-x64`](https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-linux-x64) | ~50MB |
| **macOS** | Intel | [`capiscio-darwin-x64`](https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-darwin-x64) | ~54MB |
| **macOS** | Apple Silicon | [`capiscio-darwin-arm64`](https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-darwin-arm64) | ~48MB |
| **Windows** | Intel x64 | [`capiscio-win-x64.exe`](https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-win-x64.exe) | ~41MB |
| **Windows** | ARM64 | [`capiscio-win-arm64.exe`](https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-win-arm64.exe) | ~29MB |
| **Linux** | x64 | [`capiscio-linux-x64.tar.gz`](https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-linux-x64.tar.gz) | ~18MB |
| **macOS** | Intel | [`capiscio-darwin-x64.tar.gz`](https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-darwin-x64.tar.gz) | ~48MB |
| **macOS** | Apple Silicon | [`capiscio-darwin-arm64.tar.gz`](https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-darwin-arm64.tar.gz) | ~44MB |
| **Windows** | Intel x64 | [`capiscio-win-x64.exe`](https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-win-x64.exe) | ~45MB |
| **Windows** | ARM64 | [`capiscio-win-arm64.exe`](https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-win-arm64.exe) | ~42MB |

#### Quick Download Commands:
```bash
# Linux x64
curl -L -o capiscio https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-linux-x64
chmod +x capiscio
curl -L -o capiscio-linux-x64.tar.gz https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-linux-x64.tar.gz
tar -xzf capiscio-linux-x64.tar.gz
chmod +x capiscio-linux-x64

# macOS Intel
curl -L -o capiscio https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-darwin-x64
chmod +x capiscio
curl -L -o capiscio-darwin-x64.tar.gz https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-darwin-x64.tar.gz
tar -xzf capiscio-darwin-x64.tar.gz
chmod +x capiscio-darwin-x64

# macOS Apple Silicon (M1/M2/M3/M4)
curl -L -o capiscio https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-darwin-arm64
chmod +x capiscio
curl -L -o capiscio-darwin-arm64.tar.gz https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-darwin-arm64.tar.gz
tar -xzf capiscio-darwin-arm64.tar.gz
chmod +x capiscio-darwin-arm64

# Windows Intel (PowerShell)
Invoke-WebRequest -Uri "https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-win-x64.exe" -OutFile "capiscio.exe"
Expand All @@ -78,7 +81,9 @@ Invoke-WebRequest -Uri "https://github.com/capiscio/capiscio-cli/releases/latest
Invoke-WebRequest -Uri "https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-win-arm64.exe" -OutFile "capiscio.exe"

# Use the binary
./capiscio validate ./agent-card.json
./capiscio-linux-x64 validate ./agent-card.json
# or ./capiscio-darwin-* validate ./agent-card.json
# or .\capiscio.exe validate .\agent-card.json
```

## Key Features
Expand Down Expand Up @@ -202,9 +207,10 @@ Signature verification adds minimal overhead while providing crucial security gu
# GitHub Actions - No Node.js required
- name: Download and Validate Agent
run: |
curl -L -o capiscio https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-linux-x64
chmod +x capiscio
./capiscio validate ./agent-card.json --json --strict
curl -L -o capiscio-linux-x64.tar.gz https://github.com/capiscio/capiscio-cli/releases/latest/download/capiscio-linux-x64.tar.gz
tar -xzf capiscio-linux-x64.tar.gz
chmod +x capiscio-linux-x64
./capiscio-linux-x64 validate ./agent-card.json --json --strict
```

Exit codes: 0 = success, 1 = validation failed
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "capiscio-cli",
"version": "1.2.0",
"version": "1.2.1",
"description": "The definitive CLI tool for validating A2A (Agent-to-Agent) protocol agent cards",
"keywords": [
"a2a",
Expand Down
2 changes: 1 addition & 1 deletion python-package/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "capiscio"
version = "1.2.0"
version = "1.2.1"
description = "A2A protocol validator and CLI tool"
readme = "README.md"
requires-python = ">=3.7"
Expand Down