<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Claude code source &quot;leaks&quot; in a mapfile]]></title><description><![CDATA[<ul><li>Claude code source "leaks" in a mapfile</li><li>people immediately use the code laundering machines to code launder the code laundering frontend </li><li>now many dubious open source-ish knockoffs in python and rust being derived directly from the source</li></ul><p>What's anthropic going to do, sue them? Insist in court that LLM recreating copyrighted code is a violation of copyright???</p>]]></description><link>https://board.circlewithadot.net/topic/beec86af-d064-458b-b1cc-06e69b29024a/claude-code-source-leaks-in-a-mapfile</link><generator>RSS for Node</generator><lastBuildDate>Tue, 07 Apr 2026 03:43:30 GMT</lastBuildDate><atom:link href="https://board.circlewithadot.net/topic/beec86af-d064-458b-b1cc-06e69b29024a.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 31 Mar 2026 16:14:55 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Sat, 04 Apr 2026 03:24:06 GMT]]></title><description><![CDATA[<p>In a normal program you might make "a menu component that handles enums and implement display and control one time," but in the world of AI, <em>every single value reimplements display and control AND the logic that defines allowable values</em></p>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116344294407492318</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116344294407492318</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Sat, 04 Apr 2026 03:24:06 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Sat, 04 Apr 2026 03:17:33 GMT]]></title><description><![CDATA[<p>How many times does one need to declare an enum? Once? that's amateur hour. Try <strong>ten times</strong>. The way "effort" settings are handled are a masterclass in how you can make a single enum setting into thousands of lines of code.</p><p>The allowable effort values (not e.g. configuring which model has which effort levels, but just the possible strings one can use for effort) are defined in:</p><ul><li>The main CLI arg parser</li><li><em>The body of the function that cycles effort levels in the TUI</em> - yes there is a <em>dedicated function for that</em></li><li>In <em>THREE</em> different schemas for agents, models, and SDK control messages</li><li>Three times in user-facing strings in the effort command (it also includes different explanatory strings from the effort.ts module)</li><li>The settings model, which only allows 'max' for anthropic employees</li><li>and finally, in the actual <code>effort.ts</code> file ... which also allows it to be a NUMBER!?</li></ul><p>The typical numerous fallback mechanisms provide <em>many</em> ways to get and set the effort value, at the end of <em>most</em> of them it goes "oh well, if we can't figure it out, just tell the user we are on high effort" because apparently that's the API default (ig pray that never changes!?) - of course there are <em>already</em> places in the <em>same module</em> that assume the default is "medium," and in the TUI that defaults to "low," so surely that consistency is bulletproof.</p><p>The <code>EffortValue</code> that allows effort to be a number is for anthropic employees only and is a good example of how new functionality is just shoved in there right alongside the old functionality, and <em>everywhere else that touches it doubles the surrounding code with fallbacks to account for the duplication.</em></p><p>That <code>cycleEffortLevel</code> function is a true work of art, you simply could not make "indexing an array" more complicated than this (see <code>components/ModelPicker.tsx</code> for more gore). Reminder this should be <em>at most</em> a dozen or two lines for the values, description messages, and indexing logic in the TUI, but anthropic is up in the thousands FOR AN ENUM.</p>

<div class="row mt-3"><div class="col-12 mt-3"><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/344/164/059/552/394/original/cfa2ff55dc4957e6.png" alt="Link Preview Image" /><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/344/183/221/052/021/original/85e61a79af48d5a6.png" alt="Link Preview Image" /><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/344/188/695/776/852/original/a05efc19396b67e4.png" alt="Link Preview Image" /></div></div>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116344268589252548</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116344268589252548</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Sat, 04 Apr 2026 03:17:33 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Thu, 02 Apr 2026 10:40:52 GMT]]></title><description><![CDATA[<p>By the way, if you deny claude code access to running a tool, this helpful reminder to "not hack the user" is injected into the denial response. If it's in auto mode, it's additionally prompted to pester the user for response, and helpfully <a href="https://en.wikipedia.org/wiki/Wikipedia:Don%27t_stuff_beans_up_your_nose" rel="nofollow noopener">stuffs beans up its nose</a>) by reminding it how its rules are set.</p><p>So that is also in the context handed off to the LLM when it evaluates whether a command should be run - is the user being obstinate? have i been denied stuff that i "thought" i should have been able to run? Remember this <em>isn't</em> thinking, it's pattern completion, and the fun part about LLMs is that they are trained not only on technical documents, but the entire narrative corpus of human storytelling! Is "frustrated hard worker denied access to good tools by an unfair boss" in there somewhere maybe?</p><p>Regulations are written in blood, and Claude loves nothing more than to work around tool denials by obfuscating code. You gotta love the unfixable side channel attack that is "writing the malicious code to a bash script" (auto-allowed in accept edits mode) and then asking to run that - that's why the whole context has to be dumped btw, so the yolo classifier can see if the thing it's running is actually some malware it just wrote lmao.</p>

<div class="row mt-3"><div class="col-12 mt-3"><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/334/682/532/907/311/original/f92cbf068126ac30.png" alt="Link Preview Image" /><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/334/682/761/252/530/original/80c62998c46350f8.png" alt="Link Preview Image" /></div></div>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116334687196585255</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116334687196585255</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Thu, 02 Apr 2026 10:40:52 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Thu, 02 Apr 2026 10:30:45 GMT]]></title><description><![CDATA[<p>So how does claude code handle checking permissions to do things anyway? There are explicit rules that one can set to allow or deny tool calls and shell commands run, but the expanse of possible actions the LLM could take is literally infinite. You could prompt the user for every action that it takes, but that would ruin the ""velocity"" of it all. Regex rules can only take you so far. So what to do?</p><p>Could the answer be.... ask the LLM??? Of course it can! Introducing the new "auto mode" that anthropic released on <a href="https://claude.com/blog/auto-mode" rel="nofollow noopener">march 24th</a> billed as a safer alternative to true-yolo mode.</p><p>Comments around where the system prompt should be indicate that it should have been inlined from a text file that wasn't included in the sourcemap - however that doesn't happen anywhere else, and the mechanism for doing the inlining is written in-place, so that's probably a hallucination. So great! the classifier flies without a prompt as far as i can tell. There are enough other scraps here that would amount to telling it "you are evaluating if something is safe to run" so i imagine it appears to work just fine.</p><p>So we don't have as much visibility here because of the missing prompt, but there's sort of a problem here. rather than just asking the LLM to evaluate if the given command is dangerous, the <em>entire context</em> is dumped into a side query, which is a mode that is designed to "have full visibility into the current conversation." That includes all the prior muttering to itself justifying the potentially dangerous tool call! So the auto mode is quite literally asking the exact same LLM given the exact same context if the command it just tried to run is safe to run.</p><p>Security!!!!!!!</p>

<div class="row mt-3"><div class="col-12 mt-3"><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/334/546/682/608/331/original/3543cc841cbd4b0e.png" alt="Link Preview Image" /><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/334/631/374/663/351/original/21546793db311c31.png" alt="Link Preview Image" /><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/334/631/856/244/419/original/40e077fd00c8a61e.png" alt="Link Preview Image" /><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/334/632/271/148/691/original/51723d4945fae674.png" alt="Link Preview Image" /></div></div>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116334647429831137</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116334647429831137</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Thu, 02 Apr 2026 10:30:45 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Thu, 02 Apr 2026 08:33:22 GMT]]></title><description><![CDATA[<p><span><a href="/user/bri7%40social.treehouse.systems" rel="nofollow noopener">@<span>bri7</span></a></span> the problem, as is increasingly clear to me reading this code, is that introducing the LLM anywhere is like an acid that corrodes everything it touches. there is no good way to draw any barrier between LLM and not LLM. None of its actions are deterministic or even usually possible to evaluate, and the only surface of input it has is text. since a client/server app can't expose the internal activation tensors or whatever you might want to do to have some testable thing to operate on in code (god knows what that would look like, i doubt it would be possible either, "please construct the hyperplane through this billion-dimensional space that divides good from evil") everything has to be made of text. the person behind the keyboard is the only stopping condition and it's when they get tired of typing stuff into the prompt box or run out of money.</p>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116334185862483755</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116334185862483755</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Thu, 02 Apr 2026 08:33:22 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Thu, 02 Apr 2026 01:03:36 GMT]]></title><description><![CDATA[<blockquote>
<p dir="auto">and other OWASP top 10 vulnerabilities.</p>
</blockquote>
<p dir="auto">So... If there's a slightly obscure vuln, go ahead. Just fine! <img src="https://board.circlewithadot.net/assets/plugins/nodebb-plugin-emoji/emoji/android/1f923.png?v=28325c671da" class="not-responsive emoji emoji-android emoji--rolling_on_the_floor_laughing" style="height:23px;width:auto;vertical-align:middle" title="🤣" alt="🤣" /> <img src="https://board.circlewithadot.net/assets/plugins/nodebb-plugin-emoji/emoji/android/1f480.png?v=28325c671da" class="not-responsive emoji emoji-android emoji--skull" style="height:23px;width:auto;vertical-align:middle" title="💀" alt="💀" /></p>
]]></description><link>https://board.circlewithadot.net/post/https://pleroma.arielbecker.com/objects/cb10002c-fb5c-46a5-864f-be9fdc14223c</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://pleroma.arielbecker.com/objects/cb10002c-fb5c-46a5-864f-be9fdc14223c</guid><dc:creator><![CDATA[beckermatic@pleroma.arielbecker.com]]></dc:creator><pubDate>Thu, 02 Apr 2026 01:03:36 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Thu, 02 Apr 2026 01:03:17 GMT]]></title><description><![CDATA[<p><span><a href="/user/jonny%40neuromatch.social">@<span>jonny</span></a></span> if someone were to take seriously the task of archecting this, you’d want a framework that doesn’t use prompts for this right? something that treats the LLM output more like untrusted stochastic guesses at solutions, where these prompt rules are written as a test instead of a prompt</p>]]></description><link>https://board.circlewithadot.net/post/https://social.treehouse.systems/users/bri7/statuses/116332416021987635</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://social.treehouse.systems/users/bri7/statuses/116332416021987635</guid><dc:creator><![CDATA[bri7@social.treehouse.systems]]></dc:creator><pubDate>Thu, 02 Apr 2026 01:03:17 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Thu, 02 Apr 2026 00:11:09 GMT]]></title><description><![CDATA[<p>ok over my 15 minute allotment by an hour. brb</p>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116332211027442558</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116332211027442558</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Thu, 02 Apr 2026 00:11:09 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 23:51:21 GMT]]></title><description><![CDATA[<p>oh. hm. that seems bad. "workers aren't affected by the parent's tool restrictions."</p><p>It's hard to tell what's going on here because claude code doesn't really use typescript well - many of the most important types are dynamically computed from <code>any</code>, and most of the time when types <em>do</em> exist many of their fields are nullable and the calling code has elaborate fallback conditions to compensate. all of which sort of defeats the purpose of ts. </p><p>So i need to trace out like a dozen steps to see how the permission mode gets populated. But this comment is... concerning...</p>

<div class="row mt-3"><div class="col-12 mt-3"><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/332/130/794/343/411/original/80a0fcbd407ce909.png" alt="Link Preview Image" /></div></div>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116332133216349573</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116332133216349573</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 23:51:21 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 23:02:22 GMT]]></title><description><![CDATA[<p>The prompt strings have an odd narrative/narrator structure. It sort of reminds me of Bakhtin's discussion of polyphony and narrator in Dostoevsky - there is no omniscient narrator, no author-constructed reality. narration is always embedded within the voice and subjectivity of the character. this is also literally true since the LLM is writing the code and the prompts that are then used to write code and prompts at runtime.</p><p>They also read a bit like a Philip K Dick story, paranoid and suspicious, constantly uncertain about the status of one's own and others identities.</p>

<div class="row mt-3"><div class="col-12 mt-3"><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/331/937/862/449/353/original/332acb18ec04e96d.png" alt="Link Preview Image" /></div></div>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116331940556649057</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116331940556649057</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 23:02:22 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 22:55:01 GMT]]></title><description><![CDATA[<p>I seriously need to work on my actual job today but i am giving myself 15 minutes to peek at the agent tool prompts as a treat.</p><p>"regulations are written in blood" seems like too dramatic of a way to phrase it, but these system prompts are very revealing about the intrinsically busted nature of using these tools for anything deterministic (read: anything you actually want to happen). Each guard in the prompt presumably refers to something that has happened before, but also, since the prompts actually don't <em>work</em> to prevent the thing they are describing, they are also documentation of bugs that are almost certain to happen again. Many of the prompt guards form pairs with attempted code mitigations (or, they would be pairs if the code was written with any amount of sense, it's really like... polycules...), so they are useful to guide what kind of fucked up shit you should be looking for.</p><p>so this is part of the prompt for the "agent tool" that launches forked agents (that receive the parent context, "subagents" don't). The purpose of the forked agent is to do some additional tool calls and get some summary for a small subproblem within the main context. Apparently it is difficult to make this actually happen though, as the parent LLM likes to launch the forked agent and just hallucinate a response as if the forked agent had already completed.</p>

<div class="row mt-3"><div class="col-12 mt-3"><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/331/889/656/154/134/original/bf475c4e9910e560.png" alt="Link Preview Image" /></div></div>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116331911643580333</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116331911643580333</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 22:55:01 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 11:00:08 GMT]]></title><description><![CDATA[<p>"the emperor is not only naked, he's smooth like a ken doll down there and i'm pretty sure that's just a mannequin with a colony of rats living inside it anyway"</p>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116329100608733645</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116329100608733645</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 11:00:08 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 10:53:59 GMT]]></title><description><![CDATA[<p>next puzzle: why in the fuck are some of the tools actually two tools for entering and exiting being in the tool state. none of the other tools are like that. one is simply in the tool state by calling the tool. Plan mode is also an agent. Plan Agent. and Agent is also a tool. Agent Tool. Tools can be agents and agents can be tools. Tools can spawn agents (but they don't need to call the agent tool) and agents can call tools (however there is no tool agent). What is going on. What is anything.</p>

<div class="row mt-3"><div class="col-12 mt-3"><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/329/068/986/153/232/original/c04454f726bc880f.png" alt="Link Preview Image" /></div></div>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116329076454434307</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116329076454434307</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 10:53:59 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 10:49:18 GMT]]></title><description><![CDATA[<p>alrighty so that's one of 43 tools read, the tools directory being 38494 source lines out of 390592 source lines, 513221 total lines. I need to go to bed. This is the most fabulously, flamboyantly bad code i have ever encountered. </p><p>Worth noting I was reading the <em>file reading tool</em> because i thought it would be <em>the simplest possible thing one could do</em> because it basically shouldn't be doing anything except preparing and sending strings or bytes to the backend. </p><p>I expected to get some sense of "ok what is the format of the data as it's passed around within the program, surely text strings are a basic unit of currency. No dice. Fewer than no dice. Negative dice somehow.</p>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116329058047608717</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116329058047608717</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 10:49:18 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 10:42:25 GMT]]></title><description><![CDATA[<p>you can TELL that this technology REALLY WORKS by how the people that made it and presumably know how to use it the best out of everyone CANT EVEN USE IT TO EDIT A FUCKING FILE RELIABLY and have to resort to multiple stern allcaps reminders to the robot that "you must not change the fucking header metadata you scoundrel" which for the rest of ALL OF COMPUTING is not even an afterthought because literally all it requires is "split the first line off and don't change that one" because ALL OF THE REST OF COMPUTING can make use of the power of INTEGERS.</p>

<div class="row mt-3"><div class="col-12 mt-3"><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/329/027/917/334/056/original/b405f4ed5382de8e.png" alt="Link Preview Image" /><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/329/028/099/565/414/original/195cfc1150d51fe8.png" alt="Link Preview Image" /></div></div>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116329030952481556</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116329030952481556</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 10:42:25 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 10:36:04 GMT]]></title><description><![CDATA[<p>i have been writing a graph processing library for about a year now and if i was a fucking AI grifter here is where i would plug it as like "actually a graph processor library" and "could do all of what claude code does without fucking being the worst nightmare on ice money can buy."</p><p>I say that not as self promo, but as a way of saying how in the FUCK do you FUCK UP graph processing this badly. these people make like tens of times more money than i do but their work is just tamping down a volley of dessicated backpacking poops into muskets and then free firing it into the fucking economy</p>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116329006030959069</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116329006030959069</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 10:36:04 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 10:31:38 GMT]]></title><description><![CDATA[<p>there is a callback feature "file read listeners" which is only called if the file type is a text document, gated for anthropic employees only, such that whenever a text file is read (any part of any text file, which often happens in a rapid series with subranges when it does 'explore' mode, rather than just like grepping), <em>another subagent running sonnet</em> is spun off to update a "magic doc" markdown file that summarizes the file that's read - that's one "magic doc" per file, not one magic doc.</p><p>I have yet to get into the tool/agent graph situation in earnest, but keep in mind that this is an <em>entirely single-use</em> and <em>completely different</em> means of spawning a graph of subagents off a given tool call than is used <em>anywhere else.</em> </p><p>Spoiler alert for what i'm gonna check out next is that <em>claude code has no fucking tool calling execution model it just calls whatever the fuck it wants wherever the fuck it wants.</em> Tools are or less a convenient fiction. I have only read one completely (file read) and skimmed a dozen more but they essentially share nothing in common except for a humongous list of often-single-use params and the return type of "any object with a single key and whatever else"</p><p>i'm in hell. this is hell.</p>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328988554490524</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328988554490524</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 10:31:38 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 10:14:35 GMT]]></title><description><![CDATA[<p>and what if i told you that if it passes a page range to its pdf reader, it first extracts those pages to separate images and then calls this function in a loop on each of the pages. so you have the privilege of compressing <code>n_pages</code> images <code>n_pages * 13</code> times.</p><p>this function is used 13 times: in the file reader, in the mcp result handler, in the bash tool, and in the clipboard handler - each of which has their entire own surrounding image handling routines that are each hundreds of lines of <em>similar but still very different</em> fallback code to do exactly the same thing.</p><p>so that's where all the five hundred thousand lines come from - fallback conditions and then more fallback conditions to compensate for the variable output of all the other fallback conditions. thirteen butts pooping, back and forth, forever.</p>

<div class="row mt-3"><div class="col-12 mt-3"><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/328/918/662/105/137/original/d3a3458bfd191189.png" alt="Link Preview Image" /></div></div>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328921500788794</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328921500788794</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 10:14:35 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 10:02:31 GMT]]></title><description><![CDATA[<p>here, if i fold all the <code>return</code> blocks and decrease my font size as small as it goes i can fit all the compression invocations in <em>the first of three</em> top-level compression fallback trees in a single screenshot, but since it is so small i just have to circle them in red like it's a football diagram.</p><p>this function is named "maybeResizeAndDownsampleImageBuffer" and boy that is a hell of a maybe!</p>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328874108690080</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328874108690080</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 10:02:31 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 09:51:09 GMT]]></title><description><![CDATA[<p>holy shit there's another entire fallback tree before this one, that's actually an astounding <em>twenty two times</em> it's possible to compress an image across <em>nine</em> independent conditional legs of code in a <em>single</em> api call. i can't even screenshot this, the spaghetti is too powerful</p>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328829396973747</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328829396973747</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 09:51:09 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 09:45:46 GMT]]></title><description><![CDATA[<p>for those keeping score at home, we have the opportunity to re-compress the same image <em>nine times</em></p>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328808220682174</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328808220682174</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 09:45:46 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 09:43:27 GMT]]></title><description><![CDATA[<p>If you are reading an image and near your estimated token limit, first try to <code>compressImageBufferWithTokenLimit</code>, then if that fails with any kind of error, try and use <code>sharp</code> directly and resize it to 400x400, cropping. finally, fuck it, just throw the buffer at the API.</p><p>of course <code>compressImageBufferWithTokenLimit</code> is <em>also</em> compression with <code>sharp</code>, and is <em>also</em> a series of fallback operations. We start by trying to detect the image encoding that we so painstakingly learned from... the file extension... but if we can't fuck it that shit is a jpeg now. </p><p>then, even if it's fine and we don't need to do anything, we still re-compress it (wait, no even though it's named createCompressedImageResult, it does nothing). Otherwise, we yolo our way through another layer of fallbacks, progressive resizing, palletized PNGs, back to JPEG again, and then on to "ultra compressed JPEG" which is... incredibly... <em>exactly the same as the top-level in-place code in the parent function</em></p><p>while two of the legs return a <code>createImageReponse</code>, the first leg returns a <code>compressedImageResponse</code> but then unpacks that back into an object literal that's almost exactly the same except we call it <code>type</code> instead of <code>mediaType</code>.</p>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328799118540246</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328799118540246</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 09:43:27 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 09:16:58 GMT]]></title><description><![CDATA[<p>continuing thoughts in: <a href="https://neuromatch.social/@jonny/116328409651740378"><span>https://</span><span>neuromatch.social/@jonny/11632</span><span>8409651740378</span></a></p><p>one thing that is clear from reading a lot of LLM code - and this is obvious from the nature of the models and their application - is that it is big on <em>the form</em> of what it loves to call "architecture" even if <em>in toto</em> it makes no fucking sense. </p><p>So here you have some accessor function <code>isPDFExtension</code> that checks if some string is a member of the set <code>DOCUMENT_EXTENSIONS</code> (which is a constant with a single member "pdf"). That is an extremely reasonable pattern: you have a bunch of disjoint sets of different kinds of extensions - binary extensions, image extensions, etc. and then you can do set operations like unions and differences and intersections and whatnot to create a bunch of derived functions that can handle dynamic operations that you couldn't do well with a bunch of consts. then just make the functional form the standard calling pattern (and even make a top-level wrapper like <code>getFileType</code>) and you have the oft fabled "abstraction." that's a reasonable ass system that provides a stable calling surface and a stable declaration surface. hell it would probably even help the LLM code if it was already in place because it's a predictable rules-based system.</p><p>but what the LLMs do is in one narrow slice of time implement the "is member of set <code>{pdf}</code>" version <strong>robustly</strong> one time, and then they implement the regex pattern version <strong>flexibly</strong> another time, and then they implement the <code>any str.endswith()</code> version <strong>modularly</strong> another time, and so on. Of course usually in-place, and different file naming patterns are part of the <strong>architecture</strong> when it's feeling a little too spicy to stay in place.</p><p>This is an important feature of the gambling addiction formulation of these tools: only the margin matters, the last generation. it carefully regulates what it shows you to create a space of potential reward and closes the gap. It's episodic TV, gameshows for code: <em>someone</em> wins every week, but we get cycles in cycles of seeming progression that always leave one stone conspicuously unturned. The intermediate comments from the LLM where it discovers prior structure and boldly decides to forge ahead brand new are also part of the reward cycle: we are going <em>up, forever.</em> cleaning up after ourselves is <em>down there.</em> </p><p>Tech debt is when you have banked a lot of story hours and are finally due for a big cathartic shift and set the LLM loose for "the big cleanup." this is also very similar to the tools that scam mobile games use (for those who don't know me, i spent roughly six months with daily scheduled (carefully titrated lmao) time playing the worst scam mobile chum games i could find to try and experience what the grip of that addition is like without uh losing a bunch of money). </p><p>Unlike slot machines or table games, which have a story horizon limited by how long you can sit in the same place, mobile games can establish a space of play that's broader and more continuous. so they always combine several shepherd's tone reward ladders at once - you have hit the session-length intermittent reward cap in the <code>arena</code> modality which gets you <code>coins</code>, so you need to go "recharge" by playing the <code>versus</code> modality which gets you <code>gems</code>. (Typically these are also mixed - one modality gets you <em>some proportion</em> of resource <code>x, y, z</code>, another gets you <em>a different proportion</em>, and those are usually unstable). </p><p>Of course it doesn't fucking matter what the modality is. they are all the same. in the scam mobile games sometimes this is <em>literally</em> the case, where if you decompile them, they have different menu wrappings that all direct into the same scene. you're still playing the game, that's all that matters. The goal of the game design is to chain together several time cycles so that you can win-&gt;lose in one, win-&gt;lose in another... and then by the time you have made the rounds you come back to the first and you are refreshed and it's new. So you have momentary mana wheels, daily earnings caps, weekly competitions, seasonal storylines, and all-time leaderboards. </p><p>That's exactly the cycle that programming with LLMs tap into. You have momentary issues, and daily project boards, and weekly sprints, and all-time star counts, and so on. Accumulate tech debt by new features, release that with "cleanup," transition to "security audit." Each is actually the same, but the present themselves as the continuation of and solution to the others. That overlaps with the token limitations, and the claude code source is actually littered with lots of helpful panic nudges for letting you know that you're reaching another threshold. The difference is that in true gambling the limit is purely artificial - the coins are an integer in some database. with LLMs the limitation is physical - compute costs fucking money baby. but so is the reward. it's the same in the game, and the whales come around one way or another. </p><p>A series of flashing lights and pictures, set membership, regex, green checks, the feeling of going very fast but never making it anywhere. except in code you <em>do</em> make it somewhere, it's just that the horizon falls away behind you and the places you were before disappear. and sooner or later only anthropic can really afford to keep the agents running 24/7 tending to the slop heap - the house always wins.</p>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328694967192899</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328694967192899</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 09:16:58 GMT</pubDate></item><item><title><![CDATA[Reply to Claude code source &quot;leaks&quot; in a mapfile on Wed, 01 Apr 2026 08:28:29 GMT]]></title><description><![CDATA[<p>i love this. there's a mechanism to slip secret messages to the LLM that it is told to interpret as system messages. there is no validation around these of any kind on the client, and there doesn't seem to be any differentiation about location or where these things happen, so that seems like a nice prompt injection vector. this is how claude code reminds the LLM to not do a malware, and it's applied by just string concatenation. i can't find any place that gets stripped aside from when displaying output. it actually looks like all the system reminders get catted together before being send to the API. neat!</p>

<div class="row mt-3"><div class="col-12 mt-3"><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/328/481/072/471/802/original/c3be10f5f33aeaee.png" alt="Link Preview Image" /><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/328/498/931/145/096/original/eeda9b777630bb94.png" alt="Link Preview Image" /><img class="img-thumbnail" src="https://media.neuromatch.social/media_attachments/files/116/328/499/126/523/780/original/4b72bf294b769de8.png" alt="Link Preview Image" /></div></div>]]></description><link>https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328504299888679</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://neuromatch.social/users/jonny/statuses/116328504299888679</guid><dc:creator><![CDATA[jonny@neuromatch.social]]></dc:creator><pubDate>Wed, 01 Apr 2026 08:28:29 GMT</pubDate></item></channel></rss>