Name | ca2a JSON |
Version |
0.1.0
JSON |
| download |
home_page | https://github.com/RussellLuo/ca2a |
Summary | A command-line utility for interacting with A2A agents. |
upload_time | 2025-07-19 06:00:23 |
maintainer | None |
docs_url | None |
author | RussellLuo |
requires_python | <3.14,>=3.10.0 |
license | None |
keywords |
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# cA2A
`ca2a` is a command-line utility that helps you interact with [A2A][1] agents. It's basically `curl` for A2A agents.
## Installation
```bash
pip install ca2a
```
## Usage
```bash
$ ca2a -h
usage: ca2a [-h] [-v] url method [items ...]
A command-line utility for interacting with A2A agents.
positional arguments:
url The URL to connect to the A2A agent
method The method to be invoked
items The parameter values (in the form of `key=string_value` or `key:=json_value`), or the header values (in the form of `key:value`)
options:
-h, --help show this help message and exit
-v, --verbose Enable verbose output showing the JSON-RPC request/response
```
## Quick Start
Run an A2A agent (see [Helloworld Example](https://github.com/a2aproject/a2a-python#helloworld-example)):
```bash
git clone https://github.com/a2aproject/a2a-samples.git
cd a2a-samples/samples/python/agents/helloworld
uv run .
```
Send a message to the agent:
```bash
ca2a http://localhost:9999 message/send message:='{
"role": "user",
"parts": [{"kind": "text", "text": "Hello"}],
"messageId": "msg_123",
"taskId": "task_123"
}'
```
Send a streaming message to the agent:
```bash
ca2a http://localhost:9999 message/stream message:='{
"role": "user",
"parts": [{"kind": "text", "text": "Hello"}],
"messageId": "msg_123",
"taskId": "task_123"
}'
```
[1]: https://a2a-protocol.org/
Raw data
{
"_id": null,
"home_page": "https://github.com/RussellLuo/ca2a",
"name": "ca2a",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.14,>=3.10.0",
"maintainer_email": null,
"keywords": null,
"author": "RussellLuo",
"author_email": "luopeng.he@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/21/22/c3afb997979d5c8777b0585649131eb9177fcac3b026bf97e8eb81b24603/ca2a-0.1.0.tar.gz",
"platform": null,
"description": "# cA2A\n\n`ca2a` is a command-line utility that helps you interact with [A2A][1] agents. It's basically `curl` for A2A agents.\n\n## Installation\n\n```bash\npip install ca2a\n```\n\n## Usage\n\n```bash\n$ ca2a -h\nusage: ca2a [-h] [-v] url method [items ...]\n\nA command-line utility for interacting with A2A agents.\n\npositional arguments:\n url The URL to connect to the A2A agent\n method The method to be invoked\n items The parameter values (in the form of `key=string_value` or `key:=json_value`), or the header values (in the form of `key:value`)\n\noptions:\n -h, --help show this help message and exit\n -v, --verbose Enable verbose output showing the JSON-RPC request/response\n```\n\n## Quick Start\n\nRun an A2A agent (see [Helloworld Example](https://github.com/a2aproject/a2a-python#helloworld-example)):\n\n```bash\ngit clone https://github.com/a2aproject/a2a-samples.git\ncd a2a-samples/samples/python/agents/helloworld\nuv run .\n```\n\nSend a message to the agent:\n\n```bash\nca2a http://localhost:9999 message/send message:='{\n \"role\": \"user\",\n \"parts\": [{\"kind\": \"text\", \"text\": \"Hello\"}],\n \"messageId\": \"msg_123\",\n \"taskId\": \"task_123\"\n}'\n```\n\nSend a streaming message to the agent:\n\n```bash\nca2a http://localhost:9999 message/stream message:='{\n \"role\": \"user\",\n \"parts\": [{\"kind\": \"text\", \"text\": \"Hello\"}],\n \"messageId\": \"msg_123\",\n \"taskId\": \"task_123\"\n}'\n```\n\n[1]: https://a2a-protocol.org/\n\n",
"bugtrack_url": null,
"license": null,
"summary": "A command-line utility for interacting with A2A agents.",
"version": "0.1.0",
"project_urls": {
"Homepage": "https://github.com/RussellLuo/ca2a",
"Repository": "https://github.com/RussellLuo/ca2a"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "b72240e02993f0e7856dc3fc37f666707a6cd420b606a88cc826133a27e5793e",
"md5": "05256affd723851b446c915621143458",
"sha256": "8af294c203f0ae49643ddd32281905c0f42ea0c9ebdcd553179ee0496f040ed2"
},
"downloads": -1,
"filename": "ca2a-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "05256affd723851b446c915621143458",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.14,>=3.10.0",
"size": 3702,
"upload_time": "2025-07-19T06:00:22",
"upload_time_iso_8601": "2025-07-19T06:00:22.775522Z",
"url": "https://files.pythonhosted.org/packages/b7/22/40e02993f0e7856dc3fc37f666707a6cd420b606a88cc826133a27e5793e/ca2a-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "2122c3afb997979d5c8777b0585649131eb9177fcac3b026bf97e8eb81b24603",
"md5": "0bc986a631dc4ee89d6893e1b3191ced",
"sha256": "a735faaaad2c266e8837fe966bf3597df205d7119b53b2751b54dd61c83d336f"
},
"downloads": -1,
"filename": "ca2a-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "0bc986a631dc4ee89d6893e1b3191ced",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.14,>=3.10.0",
"size": 3024,
"upload_time": "2025-07-19T06:00:23",
"upload_time_iso_8601": "2025-07-19T06:00:23.829701Z",
"url": "https://files.pythonhosted.org/packages/21/22/c3afb997979d5c8777b0585649131eb9177fcac3b026bf97e8eb81b24603/ca2a-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-19 06:00:23",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "RussellLuo",
"github_project": "ca2a",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "ca2a"
}