Use approval for side effects, not for every tool call

Reserve human approval for actions where a wrong call would actually matter.

July 5, 2026 · 2 min · Lukas Walter

Use file-based C# apps for small repo utilities

Use a single C# file when a repo utility is useful but a full project would be ceremony.

July 5, 2026 · 1 min · Lukas Walter

Use HybridCache when cache stampedes matter

Use HybridCache for expensive shared lookups where many callers can miss at once.

July 5, 2026 · 2 min · Lukas Walter

Use managed identity before connection strings

Prefer Azure-managed identities over long-lived secrets in deployed applications.

July 5, 2026 · 2 min · Lukas Walter

Use OpenTelemetry before you need production debugging

Add traces, metrics, and logs while the system is still easy to reason about.

July 5, 2026 · 2 min · Lukas Walter

Use ProblemDetails as your API error contract

Return one predictable error shape instead of inventing a new JSON format for every failure.

July 5, 2026 · 1 min · Lukas Walter

Agent Frontends with AG-UI: Streaming, Tool Calls and Human Approval

How to expose Microsoft Agent Framework agents through AG-UI so frontends can handle streaming text, tool progress, approval requests, and shared state.

July 1, 2026 · 16 min · Lukas Walter

Use file-based C# apps for small utilities

A quick .NET 10 tip for running a single C# file without creating a project, with package directives, argument passing, conversion, and preview multi-file support.

June 28, 2026 · 3 min · Lukas Walter

Human-in-the-Loop Agents: When the AI Must Ask Before Acting

How to implement human-in-the-loop approval flows in Microsoft Agent Framework for risky tool calls, side effects, workflow state, and resumable review.

June 24, 2026 · 17 min · Lukas Walter

Deploy a .NET MCP server to Azure Functions

How to take an existing ASP.NET Core MCP server built with the official .NET SDK and run it on Azure Functions as a self-hosted custom handler.

June 21, 2026 · 11 min · Lukas Walter