<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="/rss-style.xsl" type="text/xsl"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Agni — Writing</title><description>Notes from the studio on operational software, professional-services workflows, and the careful integration work between systems.</description><link>https://agnilabs.io/</link><language>en-HK</language><managingEditor>hello@agnilabs.io (Agni)</managingEditor><copyright>© 2026 Agni</copyright><generator>Astro</generator><item><title>A weekly half-hour, ten years saved</title><link>https://agnilabs.io/writing/a-weekly-half-hour-ten-years-saved/</link><guid isPermaLink="true">https://agnilabs.io/writing/a-weekly-half-hour-ten-years-saved/</guid><description>Why the same operational pattern keeps appearing across accounting partnerships and boutique law firms — and the small, recurring half-hour task that, when it goes wrong, costs a partnership decades of effort.</description><pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate><dc:subtitle>On the audit pattern that recurs across professional services firms.</dc:subtitle><category>operations audit</category><category>professional services automation</category><category>partner time</category><category>law firm operations</category><category>accounting firm operations</category><category>the audit pattern</category><author>hello@agnilabs.io (Agni)</author></item><item><title>Boring choices in operational software</title><link>https://agnilabs.io/writing/boring-choices-in-operational-software/</link><guid isPermaLink="true">https://agnilabs.io/writing/boring-choices-in-operational-software/</guid><description>Why the right architecture for a professional services firm&apos;s automation layer is almost always the boring one. On choosing tools that the next maintainer can read.</description><pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate><dc:subtitle>A defence of Postgres, cron, and server-rendered HTML in the era of agentic everything.</dc:subtitle><category>postgres</category><category>boring technology</category><category>cron jobs</category><category>server-rendered HTML</category><category>operational software architecture</category><category>sustainable software</category><author>hello@agnilabs.io (Agni)</author></item><item><title>When the audit says don&apos;t build</title><link>https://agnilabs.io/writing/when-the-audit-says-dont-build/</link><guid isPermaLink="true">https://agnilabs.io/writing/when-the-audit-says-dont-build/</guid><description>Why a meaningful share of operations audits should end with a recommendation to fix process before automating. The cases where the right answer is no software at all.</description><pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate><dc:subtitle>On the one in five engagements that ends with a recommendation against software.</dc:subtitle><category>operations audit</category><category>workflow automation</category><category>process before software</category><category>professional services operations</category><category>when not to build software</category><author>hello@agnilabs.io (Agni)</author></item><item><title>Conflicts at intake</title><link>https://agnilabs.io/writing/conflicts-at-intake/</link><guid isPermaLink="true">https://agnilabs.io/writing/conflicts-at-intake/</guid><description>Why a sizeable share of qualified enquiries to a boutique law firm go cold before a partner can review them, and what the fix actually looks like in practice.</description><pubDate>Tue, 28 Apr 2026 00:00:00 GMT</pubDate><dc:subtitle>The structural reasons law firms lose qualified leads in the first hour.</dc:subtitle><category>law firm intake automation</category><category>conflict check automation</category><category>boutique law firm operations</category><category>legal intake triage</category><category>Hong Kong law firm</category><author>hello@agnilabs.io (Agni)</author></item></channel></rss>