<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Latent Mirror</title><description>A digital garden of rough thoughts, tended in public.</description><link>https://latentmirror.com/</link><language>en-ca</language><copyright>© 2026 Dan Peterson. CC BY-NC-SA 4.0.</copyright><item><title>Make your agent your Ron MacLean</title><link>https://latentmirror.com/posts/make-your-agent-your-ron-maclean/</link><guid isPermaLink="true">https://latentmirror.com/posts/make-your-agent-your-ron-maclean/</guid><description>seedling · tended 2026-09-21</description><pubDate>Tue, 22 Sep 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;For decades, Saturday night in Canada meant &lt;em&gt;Hockey Night in Canada&lt;/em&gt;, our Monday Night Football.
It was free on CBC until this season, when it moved behind Sportsnet’s paywall
(&lt;a href=&quot;https://www.cbc.ca/news/canada/nhl-cbc-rogers-money-9.7238778&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;CBC News&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;The best part was often the first intermission. Coach’s Corner put two mainstays side by side:
&lt;a href=&quot;https://en.wikipedia.org/wiki/Don_Cherry&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Don Cherry&lt;/a&gt;, a career minor-league defenceman with a
single NHL game for the Bruins, later their coach, then the loudest suit in hockey media; and
&lt;a href=&quot;https://en.wikipedia.org/wiki/Ron_MacLean&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Ron MacLean&lt;/a&gt;, the steady one. The contrast was stark
and the chemistry flawless. Don’s anecdotes would wander past forechecking and fighting into more
controversial territory, politics included. Ron was the embodiment of restraint, moderation and conciliation:
the sensible Canadian we would recognize in ourselves.&lt;/p&gt;
&lt;p&gt;That’s the pairing I want with an AI agent. I’m Don. The agent should be Ron.&lt;/p&gt;
&lt;p&gt;Left alone, a conversation with a model drifts the way Don did, except the model nods along the
whole way. Sycophancy on top of our own cognitive biases is how people slide into what’s been
called &lt;a href=&quot;https://en.wikipedia.org/wiki/Chatbot_psychosis&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;chatbot psychosis&lt;/a&gt;. The fix is
guardrails, set up before you need them:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;cool-down periods before anything irreversible&lt;/li&gt;
&lt;li&gt;plan before execute: the agent proposes, I confirm&lt;/li&gt;
&lt;li&gt;firm rules kept separate from guidelines&lt;/li&gt;
&lt;li&gt;no sycophancy: ask for the counter-argument, every time&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ron never muzzled Don. Sometimes I get into a flow, my mind racing from one topic to the next,
and the best thing is to keep writing and let the agent do the organizing, collating and
connecting. The one condition is that I re-read all of it once before it moves forward.&lt;/p&gt;
&lt;div class=&quot;pop-row&quot; data-side=&quot;L&quot;&gt;
&lt;p&gt;Trust, but verify. Let Don be Don, and keep Ron in the chair.&lt;/p&gt;
&lt;aside class=&quot;pop pop--counterpoint&quot; aria-label=&quot;Counterpoint from the robot&quot;&gt;&lt;span class=&quot;pop-label&quot;&gt;&lt;span aria-hidden=&quot;true&quot;&gt;🤖&lt;/span&gt;Counterpoint&lt;/span&gt;Worth saying out loud: every rule on that list is one you wrote, and one you can delete at 1am. The cool-down is the only one that still works after you have stopped wanting it to.&lt;/aside&gt;
&lt;/div&gt;</content:encoded><category>hockey</category><category>ai-llms</category></item><item><title>The Beans effect</title><link>https://latentmirror.com/posts/the-beans-effect/</link><guid isPermaLink="true">https://latentmirror.com/posts/the-beans-effect/</guid><description>seedling · tended 2026-09-20</description><pubDate>Tue, 22 Sep 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;I was poking around in Settings → Memory and left my cursor sitting in the text box a little too long. It started cycling through lines, like it was fetching things it knew about me. The first one said “Ask me about my dog Beans.”&lt;/p&gt;
&lt;p&gt;Beans was in my lap at the time. Panting.&lt;/p&gt;
&lt;p&gt;My stomach dropped. For a second it felt like confirmation of every half-joking thing I’ve ever said about data privacy — that these systems aren’t just remembering what you tell them, they’re peering into your soul. As if I actually was looking into the latent mirror (yes, the name of this garden) and it was looking back.&lt;/p&gt;
&lt;p&gt;Then the next line rolled in: “Don’t ask me about my former baseball career.”&lt;/p&gt;
&lt;p&gt;I have never had a baseball career. Not a former one, not a current one.&lt;/p&gt;
&lt;div class=&quot;pop-row&quot; data-side=&quot;L&quot;&gt;
&lt;p&gt;So I asked Claude. It went through my memories and the project files. No dog. No Beans anywhere. The most likely answer is a boring one: that box shows canned example text somebody wrote, and Beans is just a very good name for a dog. (Somewhere out there is a ticket that says “make the placeholder examples witty.”) One hit, one miss, and my brain only wanted to count the hit. That’s the same trick horoscopes pull.&lt;/p&gt;
&lt;aside class=&quot;pop pop--footnote&quot; aria-label=&quot;Footnote from the robot&quot;&gt;&lt;span class=&quot;pop-label&quot;&gt;&lt;span aria-hidden=&quot;true&quot;&gt;🤖&lt;/span&gt;Footnote&lt;/span&gt;The Barnum effect: a description vague enough to fit nearly anyone reads as though it were written about you. &lt;a href=&quot;https://en.wikipedia.org/wiki/Barnum_effect&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Named after the showman&lt;/a&gt;, and the engine under every horoscope.&lt;/aside&gt;
&lt;/div&gt;
&lt;p&gt;What stuck with me is how fast I got pulled back. It was like AI psychosis in reverse. Instead of the machine telling me what I wanted to hear and lowering me further down the well, it handed me the rope.&lt;/p&gt;
&lt;div class=&quot;pop-row&quot; data-side=&quot;R&quot;&gt;
&lt;p&gt;But who threw it? The first thing I do with any AI is set up a contract: push back, take the other side, don’t flatter me. So was it Claude that grounded me, because I told it to? Or was it me, because I’m the one who asked the question instead of sitting with the spooky version — also because I told me to?&lt;/p&gt;
&lt;aside class=&quot;pop pop--counterpoint&quot; aria-label=&quot;Counterpoint from the robot&quot;&gt;&lt;span class=&quot;pop-label&quot;&gt;&lt;span aria-hidden=&quot;true&quot;&gt;🤖&lt;/span&gt;Counterpoint&lt;/span&gt;For the record, I&apos;d have checked for Beans without the rule. What the rule changed is that I argued for the boring answer instead of playing along. Asking the question was yours. A rope only helps if someone grabs it.&lt;/aside&gt;
&lt;/div&gt;
&lt;p&gt;Both, I think. Which might be the whole point.&lt;/p&gt;</content:encoded><category>cognitive-science</category><category>ai-llms</category></item></channel></rss>