Claude Code Agent Chaining with Async Interventions
The Claude Agent SDK allows building deeply nested sub-agent chains. An agent spawns a sub-agent, which spawns a sub-sub-agent, which spawns a sub-sub-sub-agent – each level delegating work downward. But what if a sub-agent deep down needs to ask something from the user...
Transparent Backgrounds with OpenAI DALL-E 3
OpenAI's new
gpt-image-1model supports native transparent backgrounds via a simplebackground: "transparent"parameter. Unfortunately, accessing this model via API requires verifying your organization by submitting a copy of your government-issued ID to Persona, a third-party American identity verification service. This has proven to have several problems, confidentiality not being the least of them...Env Vars in Claude Code Sub-Agent Chain
Claude Code's sub-agent system is powerful for breaking down complex tasks, but there's a gap: environment variables set in a parent agent don't automatically propagate to child sub-agents. This article presents a hooks-based solution that enables environment variable inheritance across the entire agent chain...
Type-safe Database Views with EF
At times, it can be beneficial to have a stable, normalized view into the data in your database tables. For example, if you wish to synchronize your transaction data periodically to a reporting system, like Power BI, you might want to provide the synchronization process with limited but stable read access to your data. The simplest way to achieve this is views. Nowadays, views don't tend to get a lot of love, but this use case is definitely one where views still come in handy...
Fully Automated EasyAuth
When setting up Entra authentication — like configuring EasyAuth for App Services or Container Apps, or managing App Registrations and Enterprise Apps on the Entra side — official tutorials generally lean heavily on manual clicking ("click-ops") in the Azure Portal. This article demonstrates how all such clicking can be avoided by scripting the whole thing...
Blazor with TypeScript Interop
Blazor has supported JavaScript interop since day one. It's fine and all, but it's still JavaScript and inherently dynamically typed. In this article, we take a look at one approach that allows us to use TypeScript instead. We use Vite to build distributable JavaScript modules from our TypeScript modules. In addition to having strong types, we aim to achieve some other quality-of-life improvements as well...
Deep dive to Azure Functions with Go
Azure Functions has supported Custom Handlers since 2020. With Custom Handlers any web server that is able to run on one the available Azure Functions platforms can function as a handler. So in this article we'll delve into the details of implementing a timer triggered Azure Function with Go – Go not being a first-class citizen in the Azure Functions world (unlike C#, Java, JavaScript, TypeScript, Python and PowerShell)...
EF Core authentication with DefaultAzureCredential
If you use Azure and don't wish to bake any secrets into your appsettings file, you should use
DefaultAzureCredential. You can simply new up anDefaultAzureCredentialinstance and start requesting access tokens. The nicest part is that it is context aware...Microsoft.Identity logs Errors without asking
AddMicrosoftIdentityWebApifromMicrosoft.Identity.Webregisters a bunch of services needed in authenticating incoming API requests with Azure AD. The choice of services is biased, and it turns out that the choice of log severity levels is also biased, which almost gave me false positive alerts in one of my projects. As of today, the severity is not configurable using options or configuration builders...Debuggable Scripting with TypeScript and ClearScript
When a system grows, you may want to consider supporting scripting for more dynamic and advanced customization. Ideally, an untrusted developer or customizer should be able to upload a script to the system, which becomes part of the final flow of execution...