<?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>Posts on Acestus // Cloud &amp; AI Engineering</title><link>https://blog.acestus.com/posts/</link><description>Recent content in Posts on Acestus // Cloud &amp; AI Engineering</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sun, 12 Jul 2026 20:00:00 -0500</lastBuildDate><atom:link href="https://blog.acestus.com/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>Starting This Blog</title><link>https://blog.acestus.com/posts/starting-this-blog/</link><pubDate>Sun, 12 Jul 2026 20:00:00 -0500</pubDate><guid>https://blog.acestus.com/posts/starting-this-blog/</guid><description>Why I&amp;rsquo;m writing about cloud architecture, SRE, and AI engineering.</description><content:encoded><![CDATA[<p>I&rsquo;ve spent my career in the trenches of cloud infrastructure — Azure, reliability engineering, and now increasingly AI systems. This blog is where I&rsquo;ll write down the things I learn: architecture decisions that worked (and didn&rsquo;t), SRE practices that actually hold up under load, and how AI is changing the way we build and operate systems.</p>
<p>Expect posts on:</p>
<ul>
<li>Azure architecture patterns and anti-patterns</li>
<li>Site reliability engineering practices</li>
<li>Incident response and postmortems (sanitized, obviously)</li>
<li>Applied AI in production systems</li>
<li>Tooling and automation</li>
</ul>
<p>More to come.</p>
]]></content:encoded></item><item><title>Purpose-Built AI: A Field Toolkit for Engineering Operations</title><link>https://blog.acestus.com/posts/purpose-built-ai-a-field-toolkit-for-engineering-operations/</link><pubDate>Sat, 11 Jul 2026 00:00:00 +0000</pubDate><guid>https://blog.acestus.com/posts/purpose-built-ai-a-field-toolkit-for-engineering-operations/</guid><description>General-purpose AI assistants have an infinite goal space and no defensible perimeter. The fix: build AI that does one thing, for one domain, with a defined scope.</description><content:encoded><![CDATA[<p>General-purpose AI assistants have an infinite goal space. Give one the instruction &ldquo;answer whatever the user asks&rdquo; and you&rsquo;ve created a system with no defensible perimeter — every question is a new attack surface, every novel request a potential failure mode. You can&rsquo;t patch your way to safety when the boundary is everywhere.</p>
<p>The fix is simple to describe: build AI that does one thing, for one domain, with a defined scope.</p>
<p>This is a field implementation of that idea.</p>
<hr>
<p><strong>The Substrate</strong></p>
<p>The toolkit lives in a git repository. Every Jira ticket and SDP case has a markdown file. Every action — worklog, comment, investigation finding, stakeholder nudge — is written to that file before anything touches an external system. CI/CD syncs the file state on push. The markdown is the source of truth. Jira and SDP are render targets.</p>
<p>Every AI action is reversible, visible, and auditable. There&rsquo;s no hidden state evaporating when you close a tab. The human approves the file; the system transmits it. That sequence is the crumple zone.</p>
<hr>
<p><strong>A Dispatch Table, Not a Chatbot</strong></p>
<p>The toolkit is a set of narrow skills, each with a defined scope:</p>
<ul>
<li><strong>Clerk</strong> — institutional memory retrieval. Searches issue files, case files, Confluence, and reference repos. Cites sources. Never synthesizes. If it finds nothing, it says so: this is new ground.</li>
<li><strong>Rounds</strong> — kanban station management. Claims one lane, works one ticket, manages all paperwork without touching anything outside that ticket&rsquo;s scope.</li>
<li><strong>Ticket Investigator</strong> — structured problem decomposition. Runs a six-dimension confidence interview. Won&rsquo;t proceed below 95%.</li>
<li><strong>Confluence Writer</strong> — documentation only. Drafts to file, publishes on operator approval.</li>
</ul>
<p>Eleven dispatch situations. Eleven named skills. No open-ended improvisation.</p>
<hr>
<p><strong>Calibrated Autonomy</strong></p>
<p>Every ticket carries an agentic score (1–5) set at intake — a pre-classification of how much human involvement the work requires. Score-1 tickets run to completion without human checkpoints. Score-5 tickets are context-only: the AI reads, summarizes, and steps back. A constraint:technician label caps autonomy regardless of score.</p>
]]></content:encoded></item><item><title>My Current OpenClaw Setup: Practical Local AI Agents with Private Routing</title><link>https://blog.acestus.com/posts/june-openclaw-field-report/</link><pubDate>Mon, 08 Jun 2026 15:49:18 +0000</pubDate><guid>https://blog.acestus.com/posts/june-openclaw-field-report/</guid><description>A field report on running two OpenClaw instances — a Raspberry Pi business agent and a Mac mini personal assistant with private iMessage routing.</description><content:encoded><![CDATA[<p>I&rsquo;ve been experimenting heavily with OpenClaw, and I wanted to write up my current setup for other IT professionals who may be curious about what is possible with it today.</p>
<p>The short version: OpenClaw is powerful, but it is still very much in the &ldquo;foot gun&rdquo; stage.</p>
<p>If you are comfortable with Markdown, Git, scripting, cron jobs, basic Linux administration, API keys, and troubleshooting services, you can probably catch up to where I am in about 40 hours of focused tinkering.</p>
<p>If you are not already doing IT work, systems administration, or software development, the onboarding curve is going to be much steeper. This is not yet a polished consumer product. It is closer to a flexible agent framework for people who are comfortable wiring systems together.</p>
<p>That said, the potential is enormous.</p>
<p>Right now I have two OpenClaw instances running.</p>
<h2 id="instance-1-raspberry-pi-business-agent">Instance 1: Raspberry Pi business agent</h2>
<p>The first instance runs on a Raspberry Pi.</p>
<p>This agent has a small business-like workflow. Once a day, it checks whether it has enough money available to cover its cloud subscription costs. It can look at markets for things it might sell, generate small static websites, and experiment with Google Ads to direct traffic to those sites.</p>
<p>At the moment, it makes about $50 a month.</p>
<p>That is not life-changing money, obviously, but the interesting part is not the amount. The interesting part is that the agent operates with a defined business context and a limited set of tools.</p>
<p>I gave it access to:</p>
<ul>
<li>Its own Stripe account</li>
<li>Its own email address</li>
<li>Its own phone number</li>
<li>Web search through a Brave API key</li>
<li>The ability to generate simple static sites</li>
<li>Some scripted workflows around checking costs and opportunities</li>
</ul>
<p>The goal is not to create a fully autonomous company overnight. The goal is to explore what happens when an AI agent has a persistent identity, a constrained budget, a few business tools, and recurring tasks.</p>
<p>It is less about &ldquo;AI replaces a business owner&rdquo; and more about &ldquo;AI can become a lightweight operator for a very narrow business process.&rdquo;</p>
<h2 id="instance-2-mac-mini-personal-assistant">Instance 2: Mac mini personal assistant</h2>
<p>The second instance runs on a Mac mini.</p>
<p>The main reason I bought the Mac mini was simple: AppleScript.</p>
<p>That&rsquo;s it.</p>
<p>I wanted an OpenClaw agent that could interact with Apple services in a private, local way. The Mac mini is not exposed to the public internet. It is basically sitting there waiting for me to text it through iMessage.</p>
<p>When I send it an iMessage, it reads the message, processes it through a local OpenClaw prompt, and replies back to me.</p>
<p>This means I can interact with the agent naturally from my phone without opening up a public endpoint or building a custom chat interface. It only needs access to Apple&rsquo;s services, not the open internet.</p>
<p>This agent has access to:</p>
<ul>
<li>iMessage</li>
<li>AppleScript</li>
<li>Its own email address</li>
<li>Apple Notes, if I share notes with it</li>
<li>A shared calendar</li>
<li>Web search through Brave API</li>
<li>Local Markdown files and scripts</li>
<li>Cron-based recurring tasks</li>
</ul>
<p>The private routing is the important part.</p>
<p>The Mac mini does not need to be open to the internet. I do not need to expose a web server. I do not need to punch holes in my firewall. I can text the assistant through iMessage, and the Mac handles the rest locally.</p>
<p>That is a very compelling architecture for a personal assistant.</p>
<h2 id="why-this-matters">Why this matters</h2>
<p>A lot of AI assistant demos are flashy but shallow. They show an agent answering questions in a browser or calling one API.</p>
<p>What I am more interested in is persistent, tool-using agents that can live inside real workflows.</p>
<p>For example:</p>
<ul>
<li>Checking accounts or subscriptions on a schedule</li>
<li>Reading and writing Markdown notes</li>
<li>Managing reminders or calendar events</li>
<li>Running local scripts</li>
</ul>
]]></content:encoded></item><item><title>How I'm Getting the Best Results from AI Lately</title><link>https://blog.acestus.com/posts/how-i-m-getting-the-best-results-from-ai-lately/</link><pubDate>Tue, 02 Jun 2026 15:52:15 +0000</pubDate><guid>https://blog.acestus.com/posts/how-i-m-getting-the-best-results-from-ai-lately/</guid><description>The most success I&amp;rsquo;m having with AI lately is using it as a thinking partner, not just a generator — five steps that make the difference.</description><content:encoded><![CDATA[<p>The most success I&rsquo;m having with AI lately is using Claude Opus as a thinking partner, not just a generator.</p>
<ol>
<li>I start with intent: I want to do this, and I want you to interview me until you&rsquo;re 95% confident. That forces the conversation out of guesswork and into clarity.</li>
<li>I point to prior documentation to manage context. If there&rsquo;s already a good source of truth, I want the model anchored to that instead of rebuilding the world from scratch.</li>
<li>Then I ask: What lack of clarity or blind spots are missing? That&rsquo;s where the real value shows up — assumptions, constraints, and gaps I hadn&rsquo;t named yet.</li>
<li>After that, I ask for suggestions for each gap, so the model turns uncertainty into action.</li>
<li>And then: Do it.</li>
</ol>
<p>That workflow works because it treats AI like a partner for better thinking, not a shortcut for skipping it.</p>
]]></content:encoded></item><item><title>Why I Love Trunk-Based Development</title><link>https://blog.acestus.com/posts/why-i-love-trunk-based-development/</link><pubDate>Sat, 02 May 2026 04:48:37 +0000</pubDate><guid>https://blog.acestus.com/posts/why-i-love-trunk-based-development/</guid><description>Trunk-based development makes shipping code less stressful and a lot more fun — everyone works in the same place, all the time.</description><content:encoded><![CDATA[<p>For a long time, I used to think branching strategies were just a technical detail — something you picked once, then rarely thought about again. But the more I build and work with teams, the more I&rsquo;ve come to appreciate how trunk-based development makes everything about shipping code less stressful and a lot more fun.</p>
<p>What do I love most? It&rsquo;s simple: everyone is working together in the same place, all the time. There&rsquo;s no confusion about which branch is the &ldquo;real&rdquo; code, or whether some half-finished feature is hiding out somewhere. If I want to make a change, I just make it, open a quick branch for review, and merge it back within hours — not days or weeks.</p>
<p>This approach means way fewer merge conflicts, way more collaboration, and quicker feedback on every change. I love that the main branch is always ready to ship; there&rsquo;s a kind of peace of mind in knowing my code is being tested in the same environment that actually goes to production. When work isn&rsquo;t finished yet, I can use a feature flag to quietly tuck it away — no need to break up the flow or hide what I&rsquo;m working on.</p>
<p>Best of all, trunk-based development feels like it keeps me — and the whole team — honest. We&rsquo;re not waiting around, juggling big &ldquo;launches&rdquo; and stressful merges. We&rsquo;re just&hellip; building things, together, one step at a time. It&rsquo;s helped us ship faster, argue less, and focus more on results than on process.</p>
<p>That&rsquo;s why I&rsquo;m such a fan. It&rsquo;s simple, it works, and it lets me spend more time coding and less time worrying about git trivia. Isn&rsquo;t that what we all want?</p>
<p><code>#git</code> <code>#branchingstrategy</code> <code>#cicd</code> <code>#infrastructure</code></p>
]]></content:encoded></item></channel></rss>