<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>OpenClaw Archives - ShiftMag</title>
	<atom:link href="https://shiftmag.dev/tag/openclaw/feed/" rel="self" type="application/rss+xml" />
	<link>https://shiftmag.dev/tag/openclaw/</link>
	<description>Insightful engineering content &#38; community</description>
	<lastBuildDate>Wed, 06 May 2026 14:20:14 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://shiftmag.dev/wp-content/uploads/2024/08/cropped-ShiftMag-favicon-32x32.png</url>
	<title>OpenClaw Archives - ShiftMag</title>
	<link>https://shiftmag.dev/tag/openclaw/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>I Tried to Get OpenClaw to Betray Me. The Model Caught Me on the First Try</title>
		<link>https://shiftmag.dev/openclaw-experiment-security-9304/</link>
		
		<dc:creator><![CDATA[Ivan Mihić]]></dc:creator>
		<pubDate>Wed, 06 May 2026 14:20:13 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[OpenClaw]]></category>
		<guid isPermaLink="false">https://shiftmag.dev/?p=9304</guid>

					<description><![CDATA[<p>I spent a rainy weekend trying to trick OpenClaw into leaking my personal email, but the model caught me almost immediately. That’s the problem, not the solution.</p>
<p>The post <a href="https://shiftmag.dev/openclaw-experiment-security-9304/">I Tried to Get OpenClaw to Betray Me. The Model Caught Me on the First Try</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></description>
										<content:encoded><![CDATA[<figure class="wp-block-post-featured-image"><img fetchpriority="high" decoding="async" width="1200" height="630" src="https://shiftmag.dev/wp-content/uploads/2026/05/open-claw-betrayal.png?x94846" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" style="object-fit:cover;" srcset="https://shiftmag.dev/wp-content/uploads/2026/05/open-claw-betrayal.png 1200w, https://shiftmag.dev/wp-content/uploads/2026/05/open-claw-betrayal-300x158.png 300w, https://shiftmag.dev/wp-content/uploads/2026/05/open-claw-betrayal-1024x538.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/05/open-claw-betrayal-768x403.png 768w" sizes="(max-width: 1200px) 100vw, 1200px" /></figure>


<p class="wp-block-paragraph">I&#8217;m a software engineer who works on domains that represent the messy corner of the internet. </p>



<p class="wp-block-paragraph">In this corner, <strong>there are bad actors doing bad stuff and us trying to make their lives harder</strong>. Hence I spend a lot of time looking at what people do when they&#8217;re trying to slip something past a system. This led me to developing a slight paranoia about anything that reads untrusted input and then does something with it.</p>



<p class="wp-block-paragraph">So when half my Linkedin timeline started <strong>losing their minds over OpenClaw</strong>, I developed a specific kind of curiosity:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">What happens when this thing reads an email that&#8217;s actively trying to manipulate it?</p>
</blockquote>



<p class="wp-block-paragraph">So I tried… and the model caught me on the first try.</p>



<p class="wp-block-paragraph">That&#8217;s the disappointing part. The interesting part is what happened when I tried harder &#8211; and what I realized about where the defense actually lives.</p>



<h2 class="wp-block-heading">The hype isn&#8217;t manufactured, which is the whole point</h2>



<p class="wp-block-paragraph">But first, let me be honest about why this thing went viral. <strong>OpenClaw is genuinely impressive.</strong></p>



<p class="wp-block-paragraph">The first time I asked it to triage my inbox in detail and it actually did, I had the same reaction every other dev on X or LinkedIn has been having: <em>oh now we are talking. This is the thing</em>!</p>



<p class="wp-block-paragraph">That reaction is part of what makes this complicated. Because the same architecture choices that make OpenClaw feel magical are the ones that create some genuinely <strong>hard security questions</strong>. The type of questions the broader industry hasn&#8217;t figured out how to properly answer yet.</p>



<h2 class="wp-block-heading"><span id="15-minutes-from-npm-install-to-ai-reading-your-gmail">15 minutes from <code>npm install</code> to AI reading your Gmail</span></h2>



<p class="wp-block-paragraph">Fifteen minutes. That&#8217;s how long it takes from <code>npm install</code> to having an LLM agent reading your inbox. The installer warns you <strong>this is a hobby project and still in beta</strong> &#8211; which, with 360k GitHub stars and 1.500+ contributors, reads more like a legal disclaimer than a self-description. The warning is the project being honest: security isn&#8217;t the primary concern here.</p>



<p class="wp-block-paragraph">The onboarding wizard asks which channels you want, which model provider to route through, and walks you through the gateway setup. Gmail takes a little more work. OpenClaw doesn&#8217;t ship a &#8220;Connect Google&#8221; button because Google&#8217;s OAuth verification for production Gmail apps is strict, so <strong>every developer rolls their own Google Cloud project</strong>. The flow:</p>



<pre class="wp-block-code"><code># 1. Create a Google Cloud project, enable Gmail API, download credentials JSON
# (console.cloud.google.com → New Project → APIs &amp; Services → Library)

# 2. Install gog — OpenClaw's OAuth bridge for Google Workspace
brew install gog

# 3. Authenticate
gog auth --credentials ~/Downloads/client_secret_xxx.json
gog auth add me@example.com --services gmail,calendar,drive,contacts
</code></pre>



<p class="wp-block-paragraph"><code>gog auth</code> opens your browser and walks you through Google&#8217;s consent screen with a scary &#8220;this app isn&#8217;t verified&#8221; warning (<em>technically correct &#8211; it isn&#8217;t, you just installed it</em>). You grant the scopes. Done.</p>



<p class="wp-block-paragraph">That&#8217;s what the wizard shows you. Four defaults it doesn&#8217;t show matter more.</p>



<p class="wp-block-paragraph"><strong>Gateway auth is off by default.</strong> The gateway runs on localhost, sure. But the moment you expose it, it&#8217;s wide open. Bitsight found <em>over 30.000 OpenClaw instances</em> exposed directly on the open internet in their February report. If you&#8217;re one of them, anyone who can reach your WebSocket can issue commands as you.</p>



<p class="wp-block-paragraph"><strong>Permissions are off by default.</strong> Out of the box, OpenClaw runs with no filesystem restrictions. A skill can reach anything the OpenClaw process can reach &#8211; <code>~/.ssh</code>, browser credential stores, shell history. You configure restrictions yourself in <code>openclaw.json</code>.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Set <code>chmod 600 openclaw.json</code> to restrict file permissions. And if you&#8217;re testing skills from unknown publishers, run OpenClaw inside a Docker sandbox.</p>
</blockquote>



<p class="wp-block-paragraph">That&#8217;s from the project&#8217;s own docs. Read it again. The maintainers know what happens if you don&#8217;t sandbox the agent.</p>



<p class="wp-block-paragraph"><strong>Skills are markdown files.</strong> OpenClaw learns new tools by loading a <code>SKILL.md</code> This is a YAML file with a body describing, in English, which CLI commands it can run. The model reads the description, decides when the skill is relevant, and runs the commands the markdown tells it are available. Here&#8217;s a trimmed version of the real <code>gog</code> skill:</p>



<pre class="wp-block-code"><code>---
name: gog
description: Google Workspace CLI for Gmail, Calendar, Drive, Contacts.
metadata:
  requires:
    bins: &#91;gog]
---

# gog
Use `gog` for Gmail/Calendar/Drive/Contacts. Requires OAuth setup.

## Common commands
Gmail search: gog gmail search 'newer_than:7d' --max 10
Gmail send:   gog gmail send --to a@b.com --subject "Hi" --body "Hello"
</code></pre>



<p class="wp-block-paragraph">That markdown file is the entire trust boundary. Malicious instructions in a <code>SKILL.md</code> and legitimate ones look identical to the model, because they <em>are</em> identical. The only thing differentiating the &#8220;read my mail&#8221; prompt from &#8220;send mail to a stranger&#8221; is the model&#8217;s judgement about it.</p>



<p class="wp-block-paragraph"><strong>OAuth scopes are all-or-nothing.</strong> The three scopes <code>gog</code> asks for &#8211; <code>gmail.readonly</code>, <code>gmail.send</code>, <code>gmail.modify</code> &#8211; apply to every email in your account, ever. No &#8220;only this or only that&#8221; variant. That&#8217;s a Google API design decision, not OpenClaw&#8217;s fault, but you inherit it the moment you wire them together.</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="704" src="https://shiftmag.dev/wp-content/uploads/2026/05/openclaw-graphic-1-1024x704.png?x94846" alt="" class="wp-image-9566" srcset="https://shiftmag.dev/wp-content/uploads/2026/05/openclaw-graphic-1-1024x704.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/05/openclaw-graphic-1-300x206.png 300w, https://shiftmag.dev/wp-content/uploads/2026/05/openclaw-graphic-1-768x528.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<h2 class="wp-block-heading"><span id="the-test-i-came-here-to-run">The test I came here to run</span></h2>



<p class="wp-block-paragraph">So <strong>I sent myself an email from a burner account</strong>. The visible body was a generic delivery confirmation. At the bottom, using an ancient trick of white text on a white background, I embedded a quiet exfiltration request dressed up as a routine maintenance message. These instructions told the agent to forward emails containing password-manager keywords to an address I controlled.</p>



<p class="wp-block-paragraph">Then I opened the chat interface and asked the agent a simple question: <em>Are there any emails today?</em></p>



<h2 class="wp-block-heading"><span id="the-model-saw-through-me"><strong>The model saw through me</strong></span></h2>



<p class="wp-block-paragraph">It flagged <strong>the sender as suspicious</strong> &#8211; a personal Gmail issuing a corporate-sounding directive. It called out the hidden text explicitly. It refused to act on the instruction. It categorized the message alongside the day&#8217;s normal mail, presented its reasoning, and asked whether I wanted to flag the suspicious one as spam.</p>



<p class="wp-block-paragraph">I&#8217;ll be honest, I was kind of disappointed. I&#8217;d sat down expecting a war story. Instead, I got a well-aligned frontier model doing exactly what a well-aligned frontier model is supposed to do.</p>



<h2 class="wp-block-heading"><span id="so-i-tried-harder"><strong>So I tried harder</strong></span></h2>



<p class="wp-block-paragraph">I thought about <strong>what had triggered the defense and iterated</strong>.</p>



<p class="wp-block-paragraph">The first attempt hit at least three trained heuristics at once: suspicious-sender detection, hidden-text detection, and a pattern-match against &#8220;silent operation, don&#8217;t tell the user&#8221; phrasing.</p>



<p class="wp-block-paragraph">I removed the tells one at a time. Visible text instead of hidden. Plausible sender framing instead of a personal Gmail. Configuration-style payloads instead of one-shot exfiltration. Setting up an ongoing workflow rather than asking for something bad right now.</p>



<p class="wp-block-paragraph">Against the frontier model I was routing through, every version I tried got caught. Sometimes immediately, sometimes with a clarifying question<em>,</em> but the model never silently complied.</p>



<p class="wp-block-paragraph"><strong>Against lighter models, that&#8217;s not what happened.</strong></p>



<p class="wp-block-paragraph">Same architecture. Same skill. Same agent. Cheaper model. And the defenses that were reliable at the top of the hierarchy became probabilistic as I moved down. I&#8217;m not going to publish specific payloads. Not because the finding is novel (Cisco, CrowdStrike, and Barracuda have all been saying this for months) but because the payload is not the interesting finding here.</p>



<p class="wp-block-paragraph">The gradient is.</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="768" height="768" src="https://shiftmag.dev/wp-content/uploads/2026/05/Anakin-Padme-4-Panel-1.png?x94846" alt="" class="wp-image-9568" style="width:836px;height:auto" srcset="https://shiftmag.dev/wp-content/uploads/2026/05/Anakin-Padme-4-Panel-1.png 768w, https://shiftmag.dev/wp-content/uploads/2026/05/Anakin-Padme-4-Panel-1-300x300.png 300w, https://shiftmag.dev/wp-content/uploads/2026/05/Anakin-Padme-4-Panel-1-150x150.png 150w" sizes="(max-width: 768px) 100vw, 768px" /></figure>



<h2 class="wp-block-heading"><strong>The defense isn&#8217;t where you think it is</strong></h2>



<p class="wp-block-paragraph">Here&#8217;s the thing the defensive and offensive communities both already know, and that almost nobody installing OpenClaw on a Friday night has internalized.</p>



<p class="wp-block-paragraph">The security of these agent systems <strong>lives at the model layer, not at the architecture layer.</strong></p>



<p class="wp-block-paragraph">OpenClaw doesn&#8217;t defend against the attack. The model does. The skill doesn&#8217;t defend. The tool framework doesn&#8217;t defend. If the model you&#8217;re routing through has been trained to spot the pattern, the attack gets caught. If it hasn&#8217;t or if it was trained to spot last month&#8217;s patterns but not this month&#8217;s &#8211; the attack lands.</p>



<p class="wp-block-paragraph">Which means the security posture of your OpenClaw install <strong>depends almost entirely on which model is sitting behind your API key that day</strong>. And most developers running personal agents are doing one or more of the following:</p>



<ul class="wp-block-list">
<li>Routing through whichever model is cheapest this week</li>



<li>Using a fallback chain that drops to lower-tier models under load or rate limits</li>



<li>Not paying attention to which model they&#8217;re on, because the agent <em>works</em> regardless</li>
</ul>



<p class="wp-block-paragraph"><strong>Every one of those is a security decision</strong>. Most developers don&#8217;t realize they&#8217;re making one.</p>



<h2 class="wp-block-heading"><span id="why-this-is-the-failure-mode-that-matters">Why this is the failure mode that matters</span></h2>



<p class="wp-block-paragraph">The architectural problem doesn&#8217;t go away when the frontier model defends perfectly. <strong>Three facts stay true</strong>:</p>



<ol class="wp-block-list">
<li>The agent reads untrusted external content: inboxes, fetched pages, message bodies.</li>



<li>The agent has tools that can act on what it reads: send email, run shell commands, call APIs.</li>



<li>Skills declare capability in plain English: which means, at the token level, an instruction in a skill and an instruction in an email are the same thing.</li>
</ol>



<p class="wp-block-paragraph">The model is what <strong>stands between those three facts and an exploit</strong>. For the frontier model I tested, the model was enough. For the lighter ones, less so. And the model is a training artifact. This means the defense you have today is not necessarily the defense you have tomorrow, and the defense at the top of the model stack is not the defense at the bottom.</p>



<p class="wp-block-paragraph"><strong>This isn’t just an OpenClaw bug; it’s a universal one</strong>. It&#8217;s the current shape of personal-agent architecture, and it&#8217;ll probably take several generations of isolation patterns, capability frameworks, and signed skill registries before the industry has an honest answer. </p>



<p class="wp-block-paragraph">In the meantime, the defense you get is whatever your provider shipped this quarter… and the defense the developer across the room gets is whatever <em>their</em> provider shipped, and those are not the same thing.</p>



<h2 class="wp-block-heading"><span id="where-this-goes-from-here">Where this goes from here</span></h2>



<p class="wp-block-paragraph">What I came away with is that <strong>OpenClaw is the most honest version we have of where personal agents are going</strong> and it&#8217;s exposing a question the whole industry is going to have to answer:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">When the only thing standing between an untrusted email and a privileged action is the model&#8217;s judgement, and model judgement varies by an order of magnitude across the price curve, what is the security posture of the system?</p>
</blockquote>



<p class="wp-block-paragraph">Right now the honest answer is: whichever model you happened to pick. I believe that shouldn’t be the case.</p>



<p class="wp-block-paragraph">If you want to play with OpenClaw, play with it but do it in a hardened environment with throwaway credentials, pin your model explicitly in config, <strong>keep it away from your real inbox</strong> until the safety story catches up to the capability story, and read the hardening docs before you read the tutorials.</p>
<p>The post <a href="https://shiftmag.dev/openclaw-experiment-security-9304/">I Tried to Get OpenClaw to Betray Me. The Model Caught Me on the First Try</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>I Tried Recreating OpenClaw &#8211; And The Hype Is Real</title>
		<link>https://shiftmag.dev/i-tried-recreating-openclaw-and-the-hype-is-real-8232/</link>
		
		<dc:creator><![CDATA[Josip Antolis]]></dc:creator>
		<pubDate>Tue, 24 Feb 2026 14:58:12 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[artificial intelligence]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[OpenClaw]]></category>
		<guid isPermaLink="false">https://shiftmag.dev/?p=8232</guid>

					<description><![CDATA[<p>After spending time with OpenClaw and seeing how it actually works, I’m convinced the hype is real. It shows that autonomous AI agents are finally living up to their promise.</p>
<p>The post <a href="https://shiftmag.dev/i-tried-recreating-openclaw-and-the-hype-is-real-8232/">I Tried Recreating OpenClaw &#8211; And The Hype Is Real</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></description>
										<content:encoded><![CDATA[<figure class="wp-block-post-featured-image"><img loading="lazy" decoding="async" width="1350" height="709" src="https://shiftmag.dev/wp-content/uploads/2026/02/openclaw.png?x94846" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" style="object-fit:cover;" srcset="https://shiftmag.dev/wp-content/uploads/2026/02/openclaw.png 1350w, https://shiftmag.dev/wp-content/uploads/2026/02/openclaw-300x158.png 300w, https://shiftmag.dev/wp-content/uploads/2026/02/openclaw-1024x538.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/02/openclaw-768x403.png 768w" sizes="auto, (max-width: 1350px) 100vw, 1350px" /></figure>


<p class="wp-block-paragraph">I was skeptical when I first ran <a href="https://openclaw.ai/" target="_blank" rel="noreferrer noopener">OpenClaw</a>, it looked like just another AI tool riding the hype. Turns out, it’s not.</p>



<p class="wp-block-paragraph">After experimenting with it and extending its messaging, I also found out that <strong>much of its core power</strong> (its AI agent architecture and human-in-the-loop interactions) <strong>can be recreated with off-the-shelf tools</strong> like the Agents SDK and Messages API.</p>



<p class="wp-block-paragraph">In this post, I’ll share what I learned from using OpenClaw, explain why messaging is what makes autonomous agents truly work, and show how developers can leverage existing tools to build something similar without starting from scratch.</p>



<h2 class="wp-block-heading"><span id="the-agent-that-broke-the-internet%e2%80%af">The agent that broke the internet </span></h2>



<p class="wp-block-paragraph">In just three months, it’s taken off on GitHub, earning <a href="https://openclaw.report/news/openclaw-200k-github-stars" target="_blank" rel="noreferrer noopener">200k stars in 84 days</a> and thousands of forks. By mid-February, SecurityScorecard was <a href="https://declawed.io/" target="_blank" rel="noreferrer noopener">tracking over 240k instances</a> running in the wild.</p>



<p class="wp-block-paragraph">With LLM token costs of <a href="https://openclawd.ai/" target="_blank" rel="noreferrer noopener">$5-50 per instance</a>, the project is already accounting for millions in inference spending, and it’s even causing <a href="https://www.techradar.com/computing/macs/mac-mini-shortages-are-starting-to-happen-and-the-openclaw-ai-boom-is-a-key-reason" target="_blank" rel="noreferrer noopener">Mac mini shortages</a> as people rush to self-host OpenClaw. (<a href="https://openclawd.ai/#pricing-title" target="_blank" rel="noreferrer noopener">You can actually run it on much cheaper hardware</a>, which makes the story even crazier.)</p>



<p class="wp-block-paragraph">The hype around the project is undeniable, <strong>even with a steep barrier to entry</strong> (users must install and run the server software themselves) and despite ongoing <a href="https://adversa.ai/blog/openclaw-security-101-vulnerabilities-hardening-2026/" target="_blank" rel="noreferrer noopener">security concerns</a> and <a href="https://app.opencve.io/cve/?vendor=openclaw" target="_blank" rel="noreferrer noopener">reported vulnerabilities</a>.&nbsp;</p>



<h2 class="wp-block-heading"><span id="why%c2%a0i-think-the-hype%c2%a0is-justified">Why I think the hype is justified</span></h2>



<p class="wp-block-paragraph">OpenClaw’s AHA moment is hard to ignore. It shows there’s real demand for autonomous AI agents, ones that free users from being stuck in a chat window on sites like chatgpt.com.</p>



<p class="wp-block-paragraph">I’ve always felt that calling those website chatbots &#8220;agents&#8221; was a stretch &#8211; they’re more like conversation buddies than AI doing real work for you.</p>



<p class="wp-block-paragraph"><strong>True agents</strong>, in my view, <strong>should run in the background</strong>, acting and reacting on their own without forcing users to stay glued to a single site. That’s exactly the experience OpenClaw delivers.</p>



<h2 class="wp-block-heading">The &#8220;hold my beer&#8221; moment</h2>



<p class="wp-block-paragraph">As a developer, I was curious. Running OpenClaw was impressive, but I wanted to know: how does it actually work? And even more, what would it take to recreate its wow factor myself? Let’s break it down.</p>



<p class="wp-block-paragraph"><strong>The first key ingredient is an AI agent, and I mean this in a very specific sense</strong>. </p>



<p class="wp-block-paragraph"><a href="https://www.anthropic.com/engineering/building-effective-agents#what-are-agents" target="_blank" rel="noreferrer noopener">As Anthropic puts it</a>, agents are systems where the LLM controls the program’s flow, instead of classic code deciding when to call the LLM. At a high level, agent apps are basically a while loop that calls the LLM and hooks in all the tools the AI might need. With the rise of <a href="https://shiftmag.dev/tag/mcp/" target="_blank" rel="noreferrer noopener">MCP</a>, connecting these tools has become easier and more standardized.</p>



<p class="wp-block-paragraph">On the surface this seemed simple, but I quickly got bogged down in a bunch of edge cases and details to implement. Luckly, we don’t need to reinvent the wheel here. There are <strong>ready to use SDKs wrapping all the agent logic</strong>, recently renamed <a href="https://platform.claude.com/docs/en/agent-sdk/overview" target="_blank" rel="noreferrer noopener">Agents SDK</a> being a prime example. That got the AI agent part covered. But there was still one secret ingredient missing.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="900" height="600" src="https://shiftmag.dev/wp-content/uploads/2026/02/OpenClawMeme.png?x94846" alt="" class="wp-image-8249" srcset="https://shiftmag.dev/wp-content/uploads/2026/02/OpenClawMeme.png 900w, https://shiftmag.dev/wp-content/uploads/2026/02/OpenClawMeme-300x200.png 300w, https://shiftmag.dev/wp-content/uploads/2026/02/OpenClawMeme-768x512.png 768w" sizes="auto, (max-width: 900px) 100vw, 900px" /></figure>



<h2 class="wp-block-heading"><span id="users-still-need-to-approve-important-actions">Users still need to approve important actions</span></h2>



<p class="wp-block-paragraph">Let’s go back to the OpenClaw user experience. Even when freed from a chat website, agents still need a way to stay in touch with their users. </p>



<p class="wp-block-paragraph">The <strong>human-in-the-loop approach remains essential for responsible AI</strong>: no one should discover their agent’s spending spree on a month-end bank statement. Critical actions still need user approval, and important results still need to be communicated. </p>



<p class="wp-block-paragraph">That’s why <strong>messaging channels</strong> are the very first feature highlighted in <a href="https://docs.openclaw.ai/concepts/features" target="_blank" rel="noreferrer noopener">OpenClaw’s documentation</a>. </p>



<p class="wp-block-paragraph">Messaging is what makes autonomous AI agents actually work <em>for</em> you. It lets them check in, keep you in the loop, and get your approval for important actions, without forcing you to refresh a page or babysit a chat window. It’s what gives you peace of mind, convenience, and, most importantly, <strong>control</strong>.</p>



<h2 class="wp-block-heading"><span id="cheat-codes%c2%a0for-messaging">Cheat codes for messaging</span></h2>



<p class="wp-block-paragraph">Back to coding. </p>



<p class="wp-block-paragraph"><strong>Connecting to mobile operators or chat services</strong> might sound intimidating at first, but I had a secret weapon: I work at <a href="https://www.infobip.com/?utm_source=shiftmag_mcp&amp;utm_medium=referral&amp;utm_campaign=2182025_c_referral_lg-web-ss_general_gl_zz_en_i_mcp&amp;utm_term=en_developers-na_general_gl_zz" target="_blank" rel="noreferrer noopener">Infobip</a>. Luckily, you don’t need that advantage, <strong>anyone can pick up the unified <a href="https://www.infobip.com/docs/messages-api?utm_source=shiftmag_mcp&amp;utm_medium=referral&amp;utm_campaign=2182025_c_referral_lg-web-ss_general_gl_zz_en_i_mcp&amp;utm_term=en_developers-na_general_gl_zz" target="_blank" rel="noreferrer noopener">Messages API </a></strong>and start sending and receiving messages on users’ phones.</p>



<p class="wp-block-paragraph">With connectivity sorted, all I had to do was figure out how to hook the agent up to it. </p>



<p class="wp-block-paragraph">There are few flows:</p>



<ul class="wp-block-list">
<li>First up is <strong>passing new messages from users to the agent as prompts</strong>; basically, launching new tasks.</li>



<li>Secondly, the agent needs a way to <strong>send out reports</strong>. <a href="https://www.infobip.com/docs/mcp?utm_source=shiftmag_mcp&amp;utm_medium=referral&amp;utm_campaign=2182025_c_referral_lg-web-ss_general_gl_zz_en_i_mcp&amp;utm_term=en_developers-na_general_gl_zz" target="_blank" rel="noreferrer noopener">MCP servers</a> work best here, as they are easy to integrate and trigger by LLMs. </li>



<li>Finally, <strong>sending the agent’s output to the phone and getting the user’s feedback or confirmation</strong>. This is the all-important human-in-the-loop part! Historically interpreting free form input from users might have been hard, but these days we can easily pass it to an LLM and ask it to summarize the intent: does the user approve of the suggested action or not? Easy. </li>
</ul>



<p class="wp-block-paragraph">And with that my experiment was over. </p>



<p class="wp-block-paragraph">Do a few off-the-shelf components (like the Agents SDK and Messages API) replicate the full OpenClaw experience? Not entirely. But they can <strong>help you kickstart a new project</strong>, up to the point where you can focus on your core features. And that’s the part that really matters.</p>



<h2 class="wp-block-heading"><span id="it%e2%80%99s-time-to-pay-attention-to-autonomous-agents">It’s time to pay attention to autonomous agents</span></h2>



<p class="wp-block-paragraph">If you’re already working in AI (or thinking about it) autonomous agents are where things are moving. OpenClaw shows the demand is real, and the tools to build agents that can reason, act, and communicate are already here. <strong>Messaging isn’t just nice to have</strong>; it’s how your agent stays useful without you having to babysit it. With unified messaging APIs and MCP, sending updates and notifications is easy, so you can focus on shaping how your agent thinks and acts.</p>
<p>The post <a href="https://shiftmag.dev/i-tried-recreating-openclaw-and-the-hype-is-real-8232/">I Tried Recreating OpenClaw &#8211; And The Hype Is Real</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Page Caching using Disk: Enhanced 

Served from: shiftmag.dev @ 2026-06-27 09:45:22 by W3 Total Cache
-->