<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Approvals | The .NET Blog</title><link>https://thedotnetblog.com/tags/approvals/</link><description>Articles, tutorials and insights from the .NET community.</description><generator>Hugo</generator><language>en</language><managingEditor>@thedotnetblog (The .NET Blog)</managingEditor><webMaster>@thedotnetblog</webMaster><lastBuildDate>Sat, 11 Jul 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://thedotnetblog.com/tags/approvals/index.xml" rel="self" type="application/rss+xml"/><item><title>The Real Agent UX Win Is Safe Autonomy, Not Maximum Autonomy</title><link>https://thedotnetblog.com/news/emiliano-montesdeoca/agent-harness-safe-data-access-patterns/</link><pubDate>Sat, 11 Jul 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://thedotnetblog.com/news/emiliano-montesdeoca/agent-harness-safe-data-access-patterns/</guid><description>File access, approvals, and memory design are the practical triad for trustworthy agent behavior in production.</description><content:encoded>&lt;p&gt;Original source: &lt;a href="https://devblogs.microsoft.com/agent-framework/agent-harness-working-with-your-data-safely/"&gt;Agent Harness: Working with your data, safely&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This is one of the more useful agent engineering posts this year because it refuses the common trap of demo-first autonomy. Instead, it focuses on how agents should operate around real user data and real consequences.&lt;/p&gt;
&lt;p&gt;The three building blocks highlighted here are exactly right.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;File access&lt;/strong&gt; gives agents useful grounding in user-owned data.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Approval gating&lt;/strong&gt; prevents silent execution of consequential actions.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Durable memory&lt;/strong&gt; avoids repetitive interactions without sacrificing control.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Most teams overinvest in tool breadth and underinvest in permission semantics. That is backward. An agent with ten tools and weak approval boundaries is less valuable than an agent with three tools and predictable control points.&lt;/p&gt;
&lt;p&gt;The best practical pattern in this article is &lt;strong&gt;layered approval strategy&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Always require approval&lt;/strong&gt; for high-impact tools like trading or destructive operations.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Auto-approve&lt;/strong&gt; low-risk reads to preserve flow.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Use scoped standing approvals&lt;/strong&gt; for repetitive trusted actions within a session.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This creates a healthy risk gradient. Users are not interrupted for harmless reads, but they are still in the loop when consequences become expensive or irreversible.&lt;/p&gt;
&lt;p&gt;I also like the explicit split between &lt;strong&gt;file memory&lt;/strong&gt; and &lt;strong&gt;Foundry memory&lt;/strong&gt;. Teams should stop trying to force one memory model to solve every problem. Coarse, explicit file artifacts are excellent for user-visible state like reports and watchlists. Fact-level memory extraction is better for preferences and conversational context. Mixing both gives better outcomes than trying to pretend either one is sufficient.&lt;/p&gt;
&lt;p&gt;My opinionated take: the future of agent quality will be measured less by clever prompts and more by &lt;strong&gt;safety ergonomics&lt;/strong&gt;. If your approval prompts are noisy, users click through blindly. If your memory boundaries are unclear, users stop trusting the assistant. If your data access defaults are permissive, security teams will shut the project down.&lt;/p&gt;
&lt;p&gt;For .NET and Python teams adopting this pattern, the key move is to &lt;strong&gt;treat policy callbacks and approval rules as core business logic&lt;/strong&gt;, versioned and tested like any other critical code. Do not leave them as ad-hoc lambdas buried in samples.&lt;/p&gt;
&lt;h2 id="the-bottom-line"&gt;The bottom line&lt;/h2&gt;
&lt;p&gt;Agent systems that earn trust are not the ones that do the most. They are the ones that do exactly what users intended, no more, no less, with clear interruption points when risk rises.&lt;/p&gt;
&lt;p&gt;That is the difference between an impressive demo and software people are willing to delegate real work to.&lt;/p&gt;</content:encoded></item></channel></rss>