diff --git a/_snippets/chunking-document.mdx b/_snippets/chunking-document.mdx
index b90d794e7..68e34f184 100644
--- a/_snippets/chunking-document.mdx
+++ b/_snippets/chunking-document.mdx
@@ -1,4 +1,4 @@
| Parameter | Type | Default | Description |
| --------- | ---- | ------- | ----------- |
-| `chunk_size` | `int` | `5000` | The maximum size of each chunk. |
+| `chunk_size` | `int` | `5000` | Target size before overlap. A single long sentence or added overlap can produce a larger chunk. |
| `overlap` | `int` | `0` | The number of characters to overlap between chunks. |
diff --git a/agent-os/client/a2a-client.mdx b/agent-os/client/a2a-client.mdx
index 668f05936..32febb5f5 100644
--- a/agent-os/client/a2a-client.mdx
+++ b/agent-os/client/a2a-client.mdx
@@ -34,10 +34,18 @@ asyncio.run(main())
Google ADK uses JSON-RPC mode:
```python
+import asyncio
+
from agno.client.a2a import A2AClient
-client = A2AClient("http://localhost:8001/", protocol="json-rpc")
-result = await client.send_message(message="Hello!")
+
+async def main():
+ client = A2AClient("http://localhost:8001/", protocol="json-rpc")
+ result = await client.send_message(message="Hello!")
+ print(result.content)
+
+
+asyncio.run(main())
```
## Streaming Responses
@@ -45,13 +53,19 @@ result = await client.send_message(message="Hello!")
Stream responses in real-time:
```python
+import asyncio
+
from agno.client.a2a import A2AClient
-client = A2AClient("http://localhost:7003/a2a/agents/my-agent")
-async for event in client.stream_message(message="Tell me a story"):
- if event.is_content and event.content:
- print(event.content, end="", flush=True)
+async def main():
+ client = A2AClient("http://localhost:7003/a2a/agents/my-agent")
+ async for event in client.stream_message(message="Tell me a story"):
+ if event.is_content and event.content:
+ print(event.content, end="", flush=True)
+
+
+asyncio.run(main())
```
## Authentication
@@ -59,17 +73,24 @@ async for event in client.stream_message(message="Tell me a story"):
AgentOS instances running with `authorization=True` require a JWT on every A2A request. Pass it via `headers`:
```python
+import asyncio
import os
from agno.client.a2a import A2AClient
-client = A2AClient("https://my-agent-os.com/a2a/agents/my-agent")
-headers = {"Authorization": f"Bearer {os.environ['AGENT_OS_JWT']}"}
-result = await client.send_message(message="Hello!", headers=headers)
+async def main():
+ client = A2AClient("https://my-agent-os.com/a2a/agents/my-agent")
+ headers = {"Authorization": f"Bearer {os.environ['AGENT_OS_JWT']}"}
-async for event in client.stream_message(message="Hello!", headers=headers):
- ...
+ result = await client.send_message(message="Hello!", headers=headers)
+ print(result.content)
+
+ async for event in client.stream_message(message="Hello!", headers=headers):
+ ...
+
+
+asyncio.run(main())
```
`send_message`, `stream_message`, and `get_agent_card` all accept `headers`. The token needs the target's run scope (`agents:run`, or per-resource `agents:my-agent:run`) for `message:send` and `message:stream`. See [Scopes](/agent-os/security/authorization/scopes) for the full mapping.
diff --git a/agent-os/connect-your-os.mdx b/agent-os/connect-your-os.mdx
index 0a999763a..f20956d1d 100644
--- a/agent-os/connect-your-os.mdx
+++ b/agent-os/connect-your-os.mdx
@@ -6,7 +6,7 @@ description: "Connect your AgentOS to the control plane for monitoring and manag
## Connect Your AgentOS
1. Open [os.agno.com](https://os.agno.com) and sign in
-2. Click **"Add new OS"**
+2. Click **Connect OS**