Skip to content

Practical writing on AI, vibe coding and .NET

Articles from a full-stack developer with 20+ years of code: AI agents, MCP, RAG, .NET, frontend and DevOps — plus plain-language tips for people who don't write software.

Latest articles

All articles
Git worktrees with Claude Code: isolated parallel sessions with the --worktree flag — Cool Solution
Vibe coding

Git worktrees with Claude Code: isolated parallel sessions with the --worktree flag

Two Claude Code sessions on the same checkout end up ==stepping on each other's files==. **Git worktrees** fix that at the root: each session works in a *separate directory* on its own branch, and with Claude Code's native support the **--worktree** flag is all it takes to start isolated. In this tutorial I cover the whole cycle: the flag and its defaults, **.worktreeinclude** to carry .env files along, the four checks Claude Code uses to ==enforce the isolation==, subagents with isolation: worktree, picking the base branch with baseRef, cleanup and resume — and how I replicate the pattern with **Codex**.

13 min read
LLM chat memory in ASP.NET Core: IChatReducer and MongoDB — Cool Solution
.NET

LLM chat memory in ASP.NET Core: IChatReducer and MongoDB

HTTP APIs are stateless, LLM chats are not: every turn needs to see the story so far. Resending *everything* on each message blows up ==tokens and the context window==. In this tutorial I build a .NET 9 Minimal API where **MongoDB keeps the full transcript** and the model only receives the view reduced by a **IChatReducer** from *Microsoft.Extensions.AI*: the last N messages, or an LLM-generated summary. Fully local with Ollama, and measurable on every single reply.

15 min read
Claude Code agent teams: one lead, parallel teammates and a shared task list on a .NET project — Cool Solution
Vibe coding

Claude Code agent teams: one lead, parallel teammates and a shared task list on a .NET project

**Agent teams** are the experimental *Claude Code* feature that turns a session into a ==coordinated team==: one **lead** that plans and assigns, plus independent **teammates** that talk to each other and share a *task list*. In this tutorial I try them on a .NET Minimal API split into three modules: a parallel review on three fronts, reusable roles via subagent definitions, **plan approval** before any code, and a **TaskCompleted** hook that blocks tasks closed with red tests.

14 min read

About me

I'm Federico Scamuzzi, a full-stack developer from Turin. Twenty years of code, from plain JS and WebForms to Next.js, Minimal API and AI agents in production. This blog is my working notebook.

20+ · Years of real full-stack developmentAI-first

Repo of the day

All picks