Skip to content
Open
52 changes: 52 additions & 0 deletions python/samples/04-hosting/azure_functions/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,58 @@ These samples illustrate the Durable extensibility for Agent Framework running i

All of these samples are set up to run in Azure Functions. Azure Functions has a local development tool called [CoreTools](https://learn.microsoft.com/azure/azure-functions/functions-run-local?tabs=windows%2Cpython%2Cv2&pivots=programming-language-python#install-the-azure-functions-core-tools) which we will set up to run these samples locally.

## Quick Prerequisites Checklist

Install and verify these tools before [Environment Setup](#environment-setup):

- **[Azure Functions Core Tools](https://learn.microsoft.com/azure/azure-functions/functions-run-local?tabs=windows%2Cpython%2Cv2&pivots=programming-language-python#install-the-azure-functions-core-tools)** – run samples locally with `func start`
- **[Azurite](https://learn.microsoft.com/azure/storage/common/storage-install-azurite)** – local storage emulator; must be running before `func start`
- **[uv](https://docs.astral.sh/uv/)** – create virtual environments (recommended, especially on Windows)
- **[Azure CLI](https://learn.microsoft.com/cli/azure/install-azure-cli)** – authenticate with `az login` for `AzureCliCredential`

**Windows (PowerShell):**

```powershell
winget install Microsoft.Azure.FunctionsCoreTools
npm install -g azurite
irm https://astral.sh/uv/install.ps1 | iex
winget install Microsoft.AzureCLI
```

**macOS:**

```bash
brew tap azure/functions
brew install azure-functions-core-tools@4
npm install -g azurite
curl -LsSf https://astral.sh/uv/install.sh | sh
# Azure CLI: https://learn.microsoft.com/cli/azure/install-azure-cli
```

**Linux:**

```bash
npm install -g azure-functions-core-tools@4 --unsafe-perm true
npm install -g azurite
curl -LsSf https://astral.sh/uv/install.sh | sh
# Azure CLI: https://learn.microsoft.com/cli/azure/install-azure-cli
```

**Verify:**

```bash
func --version
azurite --version
uv --version
az account show
```

Start Azurite in a separate terminal before `func start`:

```bash
azurite
```

## Environment Setup

### 1. Install dependencies and create appropriate services
Expand Down
32 changes: 32 additions & 0 deletions python/samples/04-hosting/durabletask/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,38 @@

This directory contains samples for durable agent hosting using the Durable Task Scheduler. These samples demonstrate the worker-client architecture pattern, enabling distributed agent execution with persistent conversation state.

## Quick Prerequisites Checklist

Install and verify these tools before [Running the Samples](#running-the-samples):

- **[Docker](https://docs.docker.com/get-docker/)** – run the Durable Task Scheduler emulator locally
- **[uv](https://docs.astral.sh/uv/)** – manage Python dependencies (optional but recommended)
- **[Azure CLI](https://learn.microsoft.com/cli/azure/install-azure-cli)** – authenticate with `az login` for `AzureCliCredential`

**Windows (PowerShell):**

```powershell
winget install Docker.DockerDesktop
irm https://astral.sh/uv/install.ps1 | iex
winget install Microsoft.AzureCLI
```

**macOS / Linux:**

```bash
# Docker: https://docs.docker.com/get-docker/
curl -LsSf https://astral.sh/uv/install.sh | sh
# Azure CLI: https://learn.microsoft.com/cli/azure/install-azure-cli
```

**Verify:**

```bash
docker --version
uv --version
az account show
```

## Sample Catalog

### Basic Patterns
Expand Down