Connect to AgentOS and inspect its configuration
Both the synchronous ``get_config`` method and its asynchronous ``aget_config`` twin.
"""Connect to AgentOS and inspect its configuration.
This example shows both the synchronous ``get_config`` method and its
asynchronous ``aget_config`` twin.
Prerequisites: start ``_server.py`` in another terminal.
Run: .venvs/demo/bin/python cookbook/05_agent_os/03_python_client/01_connect.py
Try: compare the component IDs returned by the sync and async calls.
"""
import asyncio
from agno.client import AgentOSClient
from agno.os.schema import ConfigResponse
BASE_URL = "http://localhost:7778"
# ---------------------------------------------------------------------------
# Create the Client
# ---------------------------------------------------------------------------
def print_config(label: str, config: ConfigResponse) -> None:
"""Print the components advertised by AgentOS."""
print(f"{label}: {config.name or config.os_id}")
print(f"Agents: {[agent.id for agent in config.agents]}")
print(f"Teams: {[team.id for team in config.teams]}")
print(f"Workflows: {[workflow.id for workflow in config.workflows]}")
def connect_sync() -> None:
"""Use the synchronous discovery method."""
client = AgentOSClient(base_url=BASE_URL)
print_config("Synchronous connection", client.get_config())
async def connect_async() -> None:
"""Use the asynchronous discovery method."""
client = AgentOSClient(base_url=BASE_URL)
print_config("Asynchronous connection", await client.aget_config())
# ---------------------------------------------------------------------------
# Run the Example
# ---------------------------------------------------------------------------
if __name__ == "__main__":
connect_sync()
asyncio.run(connect_async())Run the Example
Set up your virtual environment
uv venv --python 3.12
source .venv/bin/activateInstall dependencies
uv pip install -U "agno[os]" chromadb openaiExport your API keys
export OPENAI_API_KEY="your_openai_api_key_here"Clone Agno
Clone the pinned Agno source and run the remaining commands from its root:
git clone https://github.com/agno-agi/agno.git
cd agno
git checkout 8f36eaf2d18e91afa7b327eec66a3cd3685dcb87Start the AgentOS server
Open another terminal in the parent directory where .venv and the cloned agno directory are siblings, then start the shared server on port 7778:
source .venv/bin/activate
export OPENAI_API_KEY="your_openai_api_key_here"
cd agno
python cookbook/05_agent_os/03_python_client/_server.pyRun the example
Run the example from the repository root:
python cookbook/05_agent_os/03_python_client/01_connect.pyFull source: cookbook/05_agent_os/03_python_client/01_connect.py