5cc1b8e3c3
* Python: Add hosted agent sample for the agent harness * Disable file providers and fix call_server usage in hosted harness sample Addresses PR review: disable the harness file-memory and file-access providers so the headless sample doesn't expose file tools or write outside storage/, and correct the app.py docstring to match call_server.py (which takes no prompt argument). * Python: update hosted harness sample for current APIs --------- Co-authored-by: Evan Mattson <evan.mattson@microsoft.com>
Hosting Samples
This directory contains Python samples that demonstrate different ways to host Agent Framework agents. Use this page to choose the hosting model that best fits your scenario, then continue to the README in the relevant subdirectory.
Hosting Options
| Option | Use this when you need... | Start here |
|---|---|---|
| A2A | Agent-to-Agent protocol interoperability or remote agent invocation. | a2a/README.md |
| Azure Functions | HTTP or serverless hosting on Azure Functions. | Durable extension Azure Functions samples |
| Durable Task | Durable execution, long-running flows, or orchestration patterns. | Durable extension samples |
| Foundry Hosted Agents | Microsoft Foundry hosted agent deployment. | foundry-hosted-agents/README.md |
| Self-Hosted Protocol Helpers | Application-owned OpenAI Responses endpoints or Telegram bots. | af-hosting/README.md |
How to Choose
- Start with A2A if you want one agent to call or expose another agent over the A2A protocol.
- Start with the Durable Agent Framework extension if you need Azure Functions hosting, persistent state, durable workflows, or orchestration across multiple steps.
- Start with Foundry Hosted Agents if you want to package and deploy an agent as a hosted agent in Microsoft Foundry.
- Start with Self-Hosted Protocol Helpers if you want to own the web framework or native SDK, routing, authorization, and state storage while using OpenAI Responses or Telegram helpers.
Common Prerequisites
Most hosting samples share a small set of prerequisites:
- A supported Python environment for running the samples locally.
- A Microsoft Foundry project endpoint and model deployment name for
FOUNDRY_PROJECT_ENDPOINTandFOUNDRY_MODEL. - Azure CLI authentication via
az loginwhen the sample usesAzureCliCredential. - Any hosting-specific tools or extra services called out in the subdirectory README.
Next Steps
- Pick the hosting approach that matches your scenario.
- Open the corresponding README for setup and run instructions.
- Follow that sample's environment, dependency, and execution steps.