<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="/rss.xml.xsl" type="text/xsl"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>iammatthias — #imessage</title><description>Entries tagged imessage.</description><link>https://iammatthias.com/</link><language>en-us</language><item><title>Text your tools</title><link>https://iammatthias.com/posts/text-your-tools/</link><guid isPermaLink="true">https://iammatthias.com/posts/text-your-tools/</guid><description>Wiring a Farfield homelab up to iMessage with Photon and OpenPoke, so slash commands reach personal apps and talking to your agent feels like texting a friend instead of learning another tool.</description><pubDate>Tue, 25 Aug 2026 15:16:52 GMT</pubDate><content:encoded>&lt;p&gt;If you&amp;#39;ve spent enough time in the AI trenches, you&amp;#39;ve probably seen the different ways people message their agents. Back when I was fiddling with &lt;a href=&quot;https://iammatthias.com/posts/1768671170751-koios-memory-feedback-and-containment&quot;&gt;Koios&lt;/a&gt; I set up Telegram, and that&amp;#39;s been the stickiest solution. When &lt;a href=&quot;https://openclaw.ai/&quot;&gt;OpenClaw&lt;/a&gt; hit the scene and took over the meta I tried Slack and Discord, then repeated the process with &lt;a href=&quot;https://hermes-agent.nousresearch.com/&quot;&gt;Hermes&lt;/a&gt;. Eventually I found myself back on Telegram.&lt;/p&gt;
&lt;p&gt;And then a new wave of interfaces landed. Opinionated multiplexer and mobile shell stacks (&lt;a href=&quot;https://github.com/tmux/tmux/wiki&quot;&gt;tmux&lt;/a&gt; + &lt;a href=&quot;https://termius.com/index.html&quot;&gt;Termius&lt;/a&gt;, &lt;a href=&quot;https://herdr.dev/&quot;&gt;herdr&lt;/a&gt; + &lt;a href=&quot;https://getmoshi.app/&quot;&gt;moshi&lt;/a&gt;, etc), &lt;a href=&quot;https://t3.codes/&quot;&gt;T3 Code&lt;/a&gt;, &lt;a href=&quot;https://buzz.xyz/&quot;&gt;Buzz&lt;/a&gt;, &lt;a href=&quot;https://berd.xyz/&quot;&gt;Berd&lt;/a&gt;, &lt;a href=&quot;https://x.ai/bot&quot;&gt;Grok Bot&lt;/a&gt;. Honestly I&amp;#39;ve lost track of them all. Maybe I&amp;#39;m becoming a bit of a luddite, but I don&amp;#39;t want a &amp;quot;cute lil guy&amp;quot; in the default agent stack, and I really don&amp;#39;t want to be dealing with terminals on the go. The &lt;del&gt;Codex&lt;/del&gt; ChatGPT and Claude apps are both moving in the right direction with their remote functionality, but the sandbox friction drives me crazy. Grok Bot isn&amp;#39;t much better. It&amp;#39;s just OpenClaw for normies.&lt;/p&gt;
&lt;p&gt;What I keep coming back to is I want my agents to feel familiar. The new wave of tools like &lt;a href=&quot;https://poke.com/&quot;&gt;Poke&lt;/a&gt; and &lt;a href=&quot;https://instinct.co/&quot;&gt;Instinct&lt;/a&gt; are taking what I think is the right approach with their iMessage-first ethos. Talking to your agent should feel familiar. It should feel easy. Requiring an app and a bespoke mental model forces the end user to operate on your terms instead of theirs.&lt;/p&gt;
&lt;p&gt;Here is where things start getting messy for me. I don&amp;#39;t &lt;em&gt;like&lt;/em&gt; most of these platforms. OpenClaw and Hermes are bloated, Poke and Instinct are security nightmares, and Buzz, Berd, and Grok all put your tools behind a lil guy. Just give me the model and let me work on my terms, please.&lt;/p&gt;
&lt;p&gt;Most of what I want an &amp;quot;assistant&amp;quot; for day to day involves stuff I built for myself, namely my &lt;a href=&quot;https://farfield.systems/&quot;&gt;Farfield apps&lt;/a&gt;. These run a growing swath of my life. They&amp;#39;re the backend for &lt;a href=&quot;https://iammatthias.com/&quot;&gt;my site&lt;/a&gt;, OPDS, bookmark collection, QR generator, snippet pasteboard, and more. Farfield has grown into an &lt;a href=&quot;https://omarchy.org/&quot;&gt;Omarchy&lt;/a&gt;-style collection of dotfiles on top of Arch, a &lt;a href=&quot;https://os.farfield.systems/&quot;&gt;bespoke OS&lt;/a&gt; tailored to my &lt;a href=&quot;https://iammatthias.com/feed/3995b0udmg&quot;&gt;homelab&lt;/a&gt;. And like Omarchy, I included a &lt;a href=&quot;http://omp.sh/&quot;&gt;harness&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://wsrv.nl/?url=https%3A%2F%2Fblobs.farfield.systems%2Fblobs%2Fbafkreige6vpneau2c23qze5oxibvvatcalgccd4e5ztac3gacs32kh4oly&amp;amp;w=960&amp;amp;q=80&amp;amp;output=webp&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;&lt;p&gt;Enter &lt;a href=&quot;https://bluebubbles.app/&quot;&gt;BlueBubbles&lt;/a&gt;, &lt;a href=&quot;https://www.sendblue.com/&quot;&gt;SendBlue&lt;/a&gt;, and &lt;a href=&quot;https://photon.codes/&quot;&gt;Photon&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The goal was to interact with my homelab over iMessage. Simple enough (hah!). BlueBubbles was a nonstarter. I don&amp;#39;t want to add a Mac to my server stack just to proxy iMessages. SendBlue was intriguing, and &lt;a href=&quot;https://x.com/search?q=sendblue&amp;src=typed_query&quot;&gt;comes up frequently on X&lt;/a&gt;, but is very sales focused. It seems like an excellent product, but it had too many pipeline bells and whistles that I don&amp;#39;t need, and the price jumps from &lt;code&gt;free&lt;/code&gt; to &lt;code&gt;$100/month&lt;/code&gt;, which... no. Photon offers a similar free plan, an easier agent setup, and if I need the paid plan it starts at $25. Since I&amp;#39;m building this for an audience of one, I went with Photon.&lt;/p&gt;
&lt;p&gt;This is where things get fun. Remember the harness? OMP runs as part of Farfield OS and handles /slash commands and arbitrary prompts. So I can post to &lt;code&gt;/feed&lt;/code&gt;, &lt;code&gt;/qr&lt;/code&gt;, and &lt;code&gt;/bookmarks&lt;/code&gt;, or search my &lt;code&gt;/OPDS&lt;/code&gt; for a book. It is all intentionally opinionated, and that&amp;#39;s the point. &lt;a href=&quot;https://iammatthias.com/posts/1743724413087-code-and-cloth&quot;&gt;Software has been one-size-fits-all&lt;/a&gt; for too long. One of the coolest things about AI is that you can customize the tools you use every day, and even make them for yourself.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.shloked.com/openpoke&quot;&gt;OpenPoke&lt;/a&gt; was a huge help. Shlok&amp;#39;s work replicating Poke&amp;#39;s architecture gave my agents a roadmap they could use alongside the Omarchy source to bootstrap things. &lt;code&gt;Switchboard&lt;/code&gt;, the latest Farfield app, sits as a router layer outside of the Docker stack. Deterministic slash commands go straight to the app they need, and everything else is open-ended and left to the agent. Right now I&amp;#39;m using the Ox Alpha preview on OpenRouter, with a scoped API I can rotate free alpha previews through. Solid performance, rock-bottom prices. That might change down the line, but it&amp;#39;s working nicely for now, especially with Claude Code as an invokable process behind the scenes.&lt;/p&gt;
&lt;p&gt;No streaming, either. Following Poke and Instinct, tools should feel personal and familiar. Texting Farfield feels more like texting a friend than chatting with an agent, and some &lt;code&gt;/slash&lt;/code&gt; commands give me easy access to the apps. Posting something to &lt;a href=&quot;https://iammatthias.com/feed&quot;&gt;my feed&lt;/a&gt; is as simple as sending a text.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://wsrv.nl/?url=https%3A%2F%2Fblobs.farfield.systems%2Fblobs%2Fbafkreifhnzl4pl5fry2r56mqwuzsyy2vdzv54yig75uttblfgf25jk3noy&amp;amp;w=960&amp;amp;q=80&amp;amp;output=webp&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;</content:encoded><media:content url="https://wsrv.nl/?url=https%3A%2F%2Fblobs.farfield.systems%2Fblobs%2Fbafkreige6vpneau2c23qze5oxibvvatcalgccd4e5ztac3gacs32kh4oly&amp;w=960&amp;q=80&amp;output=webp" medium="image"/><category>Posts</category><category>ai-agents</category><category>imessage</category><category>self-hosting</category><category>homelab</category><category>personal-software</category></item></channel></rss>