<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title>Ju Lin's AI Weblog: Autonomy</title><subtitle>An independent research notebook on AI engineering, agents, models and the systems around them.</subtitle><id>https://julin.ai/atom/tags/autonomy/index.xml</id><link rel="self" type="application/atom+xml" href="https://julin.ai/atom/tags/autonomy/index.xml"/><link rel="alternate" type="text/html" href="https://julin.ai/tags/autonomy/"/><author><name>Ju Lin</name></author><updated>2026-09-24T00:00:00+12:00</updated><entry><title>Rio 0.5.0: One-Shot Agents Without Mid-Turn Steering</title><id>https://julin.ai/2026/09/24/rio-one-shot-agents/</id><link rel="alternate" type="text/html" href="https://julin.ai/2026/09/24/rio-one-shot-agents/"/><published>2026-09-24T00:00:00+12:00</published><updated>2026-09-24T00:00:00+12:00</updated><category term="agents"/><category term="autonomy"/><category term="rio"/><content type="html">&lt;p&gt;&lt;a href="https://pypi.org/project/rio/"&gt;Rio 0.5.0&lt;/a&gt; is released. It&amp;rsquo;s a one-shot agent framework that removes humans from the loop entirely.&lt;/p&gt;
&lt;p&gt;Other agent tools like Pi and Cursor offer mid-turn steering: you can prompt the agent mid-execution with options like &lt;code&gt;-p&lt;/code&gt;, inject guidance, course-correct decisions. It feels powerful.&lt;/p&gt;
&lt;p&gt;Rio takes the opposite approach. When an agent loop starts, it runs to completion or fails—no interruption, no mid-stream prompting, no human steering.&lt;/p&gt;
&lt;h2 id="why-remove-the-human"&gt;Why Remove the Human?&lt;/h2&gt;
&lt;p&gt;Mid-turn steering doesn&amp;rsquo;t scale. It works once, for one operator, on one task. But at scale—when you run the same agent hundreds of times, across a team, or in production—you can&amp;rsquo;t be present to steer every run. Each mid-turn intervention is a symptom fix, not a system fix. The instruction was wrong. Instead of fixing it, you bent this one execution.&lt;/p&gt;
&lt;p&gt;Tomorrow, someone else runs it and has to steer it again. Or nobody steers it correctly, and it fails silently.&lt;/p&gt;
&lt;p&gt;In software engineering, we don&amp;rsquo;t patch production live. We fix the code, test it, deploy it, then every run uses the fixed version. The fix is durable and scales.&lt;/p&gt;
&lt;p&gt;Rio applies the same principle to agents. Your agent&amp;rsquo;s behavior is wrong? Don&amp;rsquo;t steer mid-loop—fix the instruction. Document your flow in markdown. Refine the prompt. Test the whole thing. Then run it, and let it run to completion.&lt;/p&gt;
&lt;p&gt;Mid-turn steering is vibe-coding, not software engineering.&lt;/p&gt;
&lt;h2 id="what-if-you-need-human-input"&gt;What If You Need Human Input?&lt;/h2&gt;
&lt;p&gt;Document your flow in markdown. Describe the decisions that need human judgment and when. Then wrap Rio in a higher-level loop—a &amp;ldquo;ralph-loop&amp;rdquo;—that injects human prompts between full agent runs.&lt;/p&gt;
&lt;p&gt;The human acts between cycles, not during them. Each cycle runs autonomously to completion. Each cycle can be re-run independently. Each cycle produces clean, auditable logs. The human&amp;rsquo;s input becomes part of the documented system, not hidden in ephemeral prompts.&lt;/p&gt;
&lt;h2 id="the-path-to-autonomy-at-scale"&gt;The Path to Autonomy at Scale&lt;/h2&gt;
&lt;p&gt;Full autonomy requires the system to run without intervention. Not because you don&amp;rsquo;t trust the agent, but because you trust the instruction you gave it. If the instruction fails, you fix it and run again.&lt;/p&gt;
&lt;p&gt;This is uncomfortable at first—it requires discipline. But it&amp;rsquo;s the only way to reach full autonomy at scale. Removing the human from the loop isn&amp;rsquo;t moving backward. It&amp;rsquo;s the only way forward.&lt;/p&gt;</content></entry></feed>