Skip to main content

An A2A Protocol client TUI and CLI.

Project description

Handler

CI A2A Protocol PyPI version PyPI - Status PyPI downloads GitHub stars

An A2A Protocol client TUI and CLI.

Handler TUI

Install

Install with uv:

uv tool install a2a-handler

Or run Handler in an ephemeral environment:

uvx --from a2a-handler handler

Use

For a full list of commands and options:

handler --help

Server Agent

Handler includes a reference implementation of an A2A server agent built with Google ADK and LiteLLM, connecting to Ollama for local inference.

Use any model from Ollama's library:

handler server agent --model llama3.2:1b

Handler will prompt to pull missing models automatically.

Run with authentication:

handler server agent --auth

Copy the API key from the terminal output.

Webhook Server

Run Handler's webhook server to receive asynchronous push notifications from A2A server agents:

handler server push

Then send messages with push notifications enabled:

handler message send http://localhost:8000 "hello" --push-url http://localhost:9000/webhook

Sending Messages

Send a message and get a response:

handler message send http://localhost:8000 "What can you help me with?"

Stream responses in real-time:

handler message stream http://localhost:8000 "Tell me a story"

Continue a conversation using saved session state:

handler message send http://localhost:8000 "Follow up question" --continue

Authentication

Save credentials for an agent:

handler auth set http://localhost:8000 --api-key my-secret
handler auth set https://api.example.com --bearer eyJhbG...

TUI

Launch the terminal user interface:

handler tui

Web

Serve the TUI as a web application:

handler web

Agent Cards

Fetch an agent's card:

handler card get http://localhost:8000

And validate an agent card from a URL or a file:

handler card validate http://localhost:8000
handler card validate ./agent-card.json

Upgrade

Upgrade Handler to the latest version from PyPI:

uv tool upgrade a2a-handler

Contributing

See CONTRIBUTING.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

a2a_handler-0.1.12.tar.gz (52.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

a2a_handler-0.1.12-py3-none-any.whl (68.4 kB view details)

Uploaded Python 3

File details

Details for the file a2a_handler-0.1.12.tar.gz.

File metadata

  • Download URL: a2a_handler-0.1.12.tar.gz
  • Upload date:
  • Size: 52.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for a2a_handler-0.1.12.tar.gz
Algorithm Hash digest
SHA256 d029fcf2984efa886553bf7a29f799c958d6dbb00c0aac7f2e566101bb73ceca
MD5 d2b57ef046d5a9c3747bab19715f0ac2
BLAKE2b-256 b71aec10929f4f4ce61d8a193dfd28cd49e51f9c57f8bb72374588a2f58ff327

See more details on using hashes here.

File details

Details for the file a2a_handler-0.1.12-py3-none-any.whl.

File metadata

  • Download URL: a2a_handler-0.1.12-py3-none-any.whl
  • Upload date:
  • Size: 68.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for a2a_handler-0.1.12-py3-none-any.whl
Algorithm Hash digest
SHA256 df645b5cc395714ef5a933a2a26558bcbb483984844cc02118792cdd3e1fa8d0
MD5 8704d011c187c601314c10336149f763
BLAKE2b-256 6a99425a2c28011c5bb0c9cf2667448d325c7ecc9b913d1be09b083828a9591b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page