<?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/" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Think agentic.</title><link>https://think-agentic.pages.dev/</link><description>Field notes on building agentic solutions across the Microsoft stack.</description><language>en-gb</language><generator>Hugo</generator><copyright>© 2026 Dan Finan</copyright><lastBuildDate>Sun, 18 Oct 2026 13:30:00 +0100</lastBuildDate><atom:link href="https://think-agentic.pages.dev/index.xml" rel="self" type="application/rss+xml"/><item><title>Hello, world</title><link>https://think-agentic.pages.dev/2026/hello-world/</link><guid isPermaLink="true">https://think-agentic.pages.dev/2026/hello-world/</guid><pubDate>Sun, 18 Oct 2026 13:30:00 +0100</pubDate><dc:creator>Dan Finan</dc:creator><description>A first post, to check the type, the code blocks and the feed all work. Replace it with something better.</description><content:encoded><![CDATA[<p><img src="https://think-agentic.pages.dev/images/sample-feature.jpg" alt=""></p><p>This is a sample post. It shows how each part of a post looks, so you can see the styles before writing anything real. Delete it, or set <code>draft: true</code>, when you publish your first proper post.</p>
<h2 id="a-heading">A heading</h2>
<p>Body text is set in EB Garamond. Paragraphs stay under about 70 characters a line so long posts are comfortable to read. Links look <a href="https://gohugo.io">like this</a>.</p>
<blockquote>
<p>Quotes are set large and in italic, for the line you want people to remember.</p>
</blockquote>
<h3 id="lists">Lists</h3>
<ul>
<li>Write in Markdown</li>
<li>Save the file in <code>content/posts/</code></li>
<li>Push to GitHub, and the site and RSS feed update</li>
</ul>
<h3 id="code">Code</h3>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-python" data-lang="python"><span class="line"><span class="cl"><span class="kn">from</span> <span class="nn">agents</span> <span class="kn">import</span> <span class="n">Agent</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">agent</span> <span class="o">=</span> <span class="n">Agent</span><span class="p">(</span><span class="n">name</span><span class="o">=</span><span class="s2">&#34;Researcher&#34;</span><span class="p">,</span> <span class="n">instructions</span><span class="o">=</span><span class="s2">&#34;Find three sources and summarise them.&#34;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="nb">print</span><span class="p">(</span><span class="n">agent</span><span class="o">.</span><span class="n">run</span><span class="p">(</span><span class="s2">&#34;What changed in Copilot Studio this month?&#34;</span><span class="p">))</span>
</span></span></code></pre></div><p>That&rsquo;s it.</p>
]]></content:encoded></item><item><title>This is a test from the CMS</title><link>https://think-agentic.pages.dev/2026/this-is-a-test-from-the-cms/</link><guid isPermaLink="true">https://think-agentic.pages.dev/2026/this-is-a-test-from-the-cms/</guid><pubDate>Sun, 18 Oct 2026 09:53:00 +0000</pubDate><dc:creator>Dan Finan</dc:creator><description>This is the summary box.</description><content:encoded><![CDATA[<p><img src="https://think-agentic.pages.dev/images/maxresdefault.jpg" alt=""></p><p>This is the test post.</p>
<h1 id="heading-1">Heading 1</h1>
<ul>
<li>List</li>
<li>List 2</li>
<li>List 3</li>
</ul>
<blockquote>
<p>Quote goes here</p>
</blockquote>
<pre tabindex="0"><code>Code code code...
</code></pre>]]></content:encoded></item><item><title>Agents need boring infrastructure</title><link>https://think-agentic.pages.dev/2026/agents-need-boring-infrastructure/</link><guid isPermaLink="true">https://think-agentic.pages.dev/2026/agents-need-boring-infrastructure/</guid><pubDate>Sun, 11 Oct 2026 08:00:00 +0000</pubDate><dc:creator>Dan Finan</dc:creator><description>The demo is the easy part. What makes an agent useful in production is logging, permissions, retries and someone who owns it on a Tuesday afternoon.</description><content:encoded><![CDATA[<p><img src="https://think-agentic.pages.dev/images/example-network.jpg" alt=""></p><p>Every agent demo looks the same. A prompt goes in, a tool gets called, a tidy answer comes out, and the room nods. Then someone asks what happens when the API times out, and the room goes quiet.</p>
<p>The gap between a good demo and a useful agent is mostly infrastructure. None of it is exciting, and all of it decides whether the thing survives its first month.</p>
<h2 id="what-production-actually-asks-for">What production actually asks for</h2>
<ol>
<li><strong>Identity.</strong> Whose permissions does the agent act with? &ldquo;The service account&rdquo; is an answer, but rarely a good one.</li>
<li><strong>Logging you can read.</strong> Not just that a tool was called, but why, with what inputs, and what came back.</li>
<li><strong>Retries and timeouts.</strong> Downstream systems fail. The agent should fail politely too.</li>
<li><strong>An owner.</strong> A named person who gets the alert and can switch it off.</li>
</ol>
<blockquote>
<p>If nobody can explain what the agent did yesterday, it isn&rsquo;t ready to do anything tomorrow.</p>
</blockquote>
<h2 id="start-smaller-than-you-think">Start smaller than you think</h2>
<p>The most reliable agents I&rsquo;ve seen do one narrow job, with clear inputs and a human checking the output for the first few weeks. Scope can grow once trust exists. It rarely works the other way round.</p>
<p>The boring work isn&rsquo;t a tax on the interesting work. It&rsquo;s what lets the interesting work keep running.</p>
]]></content:encoded></item></channel></rss>