An A2A Protocol client TUI and CLI.
Project description
Handler
An A2A Protocol client TUI and CLI.
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d029fcf2984efa886553bf7a29f799c958d6dbb00c0aac7f2e566101bb73ceca
|
|
| MD5 |
d2b57ef046d5a9c3747bab19715f0ac2
|
|
| BLAKE2b-256 |
b71aec10929f4f4ce61d8a193dfd28cd49e51f9c57f8bb72374588a2f58ff327
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df645b5cc395714ef5a933a2a26558bcbb483984844cc02118792cdd3e1fa8d0
|
|
| MD5 |
8704d011c187c601314c10336149f763
|
|
| BLAKE2b-256 |
6a99425a2c28011c5bb0c9cf2667448d325c7ecc9b913d1be09b083828a9591b
|