Wiki Context Provider: AgentOS Streaming
Serve a WikiContextProvider-backed agent on AgentOS at localhost:7777 so sub-agent tool calls and content stream live into os.agno.com.
Tests sub-agent event streaming through os.agno.com. When the parent agent calls a context provider's query tool, the sub-agent's events (tool calls, content) are streamed back in real-time.
This program deletes and recreates demo-wiki-os beside the script at import time. Keep that directory disposable, and do not import the demo into an application that stores data there.
"""
Wiki Context Provider — AgentOS Streaming
==========================================
Tests sub-agent event streaming through os.agno.com. When the parent agent
calls a context provider's query tool, the sub-agent's events (tool calls,
content) are streamed back in real-time.
Run locally:
python cookbook/12_context/23_wiki_agentos_streaming.py
Then open os.agno.com and connect to http://localhost:7777
Requires: OPENAI_API_KEY
"""
from __future__ import annotations
import shutil
from pathlib import Path
from agno.agent import Agent
from agno.context.wiki import FileSystemBackend, WikiContextProvider
from agno.models.openai import OpenAIResponses
from agno.os import AgentOS
WIKI_PATH = Path(__file__).resolve().parent / "demo-wiki-os"
if WIKI_PATH.exists():
shutil.rmtree(WIKI_PATH)
WIKI_PATH.mkdir()
(WIKI_PATH / "README.md").write_text(
"# Demo Wiki\n\nA tiny wiki for testing sub-agent streaming on AgentOS.\n"
)
(WIKI_PATH / "architecture.md").write_text(
"# Architecture\n\n"
"The system uses a three-tier architecture:\n"
"1. Frontend (React)\n"
"2. API (FastAPI)\n"
"3. Database (PostgreSQL)\n"
)
(WIKI_PATH / "deployment.md").write_text(
"# Deployment\n\n"
"We deploy to Kubernetes using Helm charts.\n"
"The CI/CD pipeline runs on GitHub Actions.\n"
)
wiki = WikiContextProvider(
id="wiki",
backend=FileSystemBackend(path=WIKI_PATH),
model=OpenAIResponses(id="gpt-5.6-luna"),
)
agent = Agent(
name="Wiki Assistant",
model=OpenAIResponses(id="gpt-5.4"),
tools=wiki.get_tools(),
instructions=[
wiki.instructions(),
"You help users explore a wiki. Use the query_wiki tool to find information.",
],
markdown=True,
)
agent_os = AgentOS(
description="Context provider streaming demo",
agents=[agent],
)
app = agent_os.get_app()
if __name__ == "__main__":
print("\nWiki files:")
for f in WIKI_PATH.iterdir():
print(f" - {f.name}")
print()
print("Starting AgentOS on http://localhost:7777")
print("Connect via os.agno.com and ask: 'What is our system architecture?'")
print()
agent_os.serve(app="23_wiki_agentos_streaming:app", reload=True)Run the Example
Set up your virtual environment
uv venv --python 3.12
source .venv/bin/activateInstall dependencies
uv pip install -U "agno[os]" openaiExport your OpenAI API key
export OPENAI_API_KEY="your_openai_api_key_here"Run the example
Save the code above as 23_wiki_agentos_streaming.py, then run:
python 23_wiki_agentos_streaming.pyFull source: cookbook/12_context/23_wiki_agentos_streaming.py