@@ -45,46 +45,75 @@ Three agents running on the same host:
4545
4646---
4747
48- # # 🧪 Testing the Agents:
49-
50- Run the provided client app to send test requests:
51-
52- ` ` ` shell
53- uv run a2a_client_app.py
54- ` ` `
48+ # # 🧪 Testing Agents using A2AClient:
49+
50+ Run the provided client app to send test requests:
51+
52+ ` ` ` bash
53+ uv run a2a_client_app.py
54+ ` ` `
55+
56+ # # Testing Agents Using CURL request:
57+ ` ` ` bash
58+ Request:
59+ curl --location ' http://localhost:8000/a2a/conversation/' \
60+ --header ' Content-Type: application/json' \
61+ --header ' Accept: text/event-stream' \
62+ --data ' {
63+ "id": "6a39c736-fff7-45f8-b2b0-c44e705d2474",
64+ "jsonrpc": "2.0",
65+ "method": "message/stream",
66+ "params": {
67+ "configuration": {
68+ "acceptedOutputModes": [],
69+ "blocking": "True"
70+ },
71+ "message": {
72+ "contextId": "8bffff7b-3abc-4d85-bcce-0bcdbe321017",
73+ "kind": "message",
74+ "messageId": "82642fd2-f270-4a56-a7d9-5d26fddabc95",
75+ "parts": [
76+ {
77+ "kind": "text",
78+ "text": "Who is PM of India?"
79+ }
80+ ],
81+ "role": "user"
82+ }
83+ }
84+ }'
85+ Reponse:
86+ {
87+ " id" : " 6a39c736-fff7-45f8-b2b0-c44e705d2474" ,
88+ " jsonrpc" : " 2.0" ,
89+ " result" : {
90+ " artifact" : {
91+ " artifactId" : " 9474e1ac-1e35-425c-9c18-238b07739e6d" ,
92+ " parts" : [
93+ {
94+ " kind" : " text" ,
95+ " text" : " As of today, August 16, 2025, the Prime Minister of India is **Narendra Modi**.\n\nHe has been serving as the Prime Minister since May 26, 2014, and was sworn in for his third consecutive term on June 9, 2024, following the 2024 Parliamentary elections."
96+ }
97+ ]
98+ },
99+ " contextId" : " 8bffff7b-3abc-4d85-bcce-0bcdbe321017" ,
100+ " kind" : " artifact-update" ,
101+ " lastChunk" : true,
102+ " taskId" : " 23a93002-686b-4c8a-8bb6-ec649acea0c3"
103+ }
104+ }
105+ ` ` `
55106
56107---
57108
58- # # 📂 Project Structure
59-
60- ` ` ` text
61- ├── README.md
62- ├── a2a_client_app.py
63- ├── main.py
64- ├── pyproject.toml
65- ├── src
66- │ ├── __init__.py
67- │ ├── a2a
68- │ │ ├── __init__.py
69- │ │ ├── a2a_client.py
70- │ │ └── a2a_fastapi_app.py
71- │ └── agent
72- │ ├── __init__.py
73- │ ├── analyzer_agent.py
74- │ ├── conversation_agent.py
75- │ └── trending_topics_agent.py
76- └── uv.lock
77-
109+ # # How to run inside Docker:
110+ ` ` ` bash
111+ # Docker build
112+ docker build -t multiple-agents-on-single-a2a-server:v1.0.0 .
113+ # Docker run
114+ docker run --env-file ./.env -e PORT=8000 -p 8000:8000 multiple-agents-on-single-a2a-server:v1.0.0
78115` ` `
79116
80- ---
81-
82- # # ✅ Requirements
83-
84- Key dependencies defined in ` pyproject.toml` :
85-
86- * ` a2a-sdk`
87- * ` google-adk`
88117
89118---
90119
0 commit comments