You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The CLI is a small host application that demonstrates the capabilities of an A2AClient. It supports reading a server's AgentCard and text-based collaboration with a remote agent. All content received from the A2A server is printed to the console.
3
+
The CLI is a small host application that demonstrates the capabilities of an `A2AClient`. It supports reading a server's `AgentCard` and text-based collaboration with a remote agent. All content received from the A2A server is printed to the console.
4
4
5
5
The client will use streaming if the server supports it.
6
6
@@ -13,19 +13,23 @@ The client will use streaming if the server supports it.
13
13
## Running the CLI
14
14
15
15
1. Navigate to the CLI sample directory:
16
+
16
17
```bash
17
18
cd samples/python/hosts/cli
18
19
```
20
+
19
21
2. Run the example client
20
-
```
22
+
23
+
```sh
21
24
uv run . --agent [url-of-your-a2a-server]
22
25
```
23
26
24
-
forexample `--agent http://localhost:10000`. More command line options are documentedin the source code.
27
+
forexample `--agent https://sample-a2a-agent-908687846511.us-central1.run.app`. More command line options are documentedin the source code.
25
28
26
29
## Disclaimer
30
+
27
31
Important: The sample code provided is for demonstration purposes and illustrates the mechanics of the Agent-to-Agent (A2A) protocol. When building production applications, it is critical to treat any agent operating outside of your direct control as a potentially untrusted entity.
28
32
29
33
All data received from an external agent—including but not limited to its AgentCard, messages, artifacts, and task statuses—should be handled as untrusted input. For example, a malicious agent could provide an AgentCard containing crafted data in its fields (e.g., description, name, skills.description). If this data is used without sanitization to construct prompts for a Large Language Model (LLM), it could expose your application to prompt injection attacks. Failure to properly validate and sanitize this data before use can introduce security vulnerabilities into your application.
30
34
31
-
Developers are responsible for implementing appropriate security measures, such as input validation and secure handling of credentials to protect their systems and users.
35
+
Developers are responsible for implementing appropriate security measures, such as input validation and secure handling of credentials to protect their systems and users.
0 commit comments