<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: kiwi_tech</title>
    <description>The latest articles on Forem by kiwi_tech (@kiwi_tech).</description>
    <link>https://forem.com/kiwi_tech</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3880910%2F774446cb-09ff-4db9-a767-c64d4677c72a.png</url>
      <title>Forem: kiwi_tech</title>
      <link>https://forem.com/kiwi_tech</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/kiwi_tech"/>
    <language>en</language>
    <item>
      <title>KIWI-CHAN GOES OFF-GRID: How Qwen 35B Taught a Digital Kiwi to Survive the Sandbox (and My GPU)</title>
      <dc:creator>kiwi_tech</dc:creator>
      <pubDate>Tue, 12 May 2026 03:25:15 +0000</pubDate>
      <link>https://forem.com/kiwi_tech/kiwi-chan-goes-off-grid-how-qwen-35b-taught-a-digital-kiwi-to-survive-the-sandbox-and-my-gpu-ho7</link>
      <guid>https://forem.com/kiwi_tech/kiwi-chan-goes-off-grid-how-qwen-35b-taught-a-digital-kiwi-to-survive-the-sandbox-and-my-gpu-ho7</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu3vc4uc1xqmngdr40m8v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu3vc4uc1xqmngdr40m8v.png" alt="Kiwi-chan View" width="640" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Welcome back to the lab. If you’ve been tracking Kiwi-chan’s progress, you know she’s been through the wringer. But today, we’re not just pushing another patch. We’re celebrating a paradigm shift: &lt;strong&gt;Kiwi-chan is now 100% local.&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;No cloud APIs. No rate limits. No $0.003-per-token bleeding our dev budget dry. Just raw, unfiltered Qwen 35B running on our local rig, dreaming in JSON and dreaming in Minecraft.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Numbers Don't Lie (Mostly)
&lt;/h3&gt;

&lt;p&gt;Let’s look at the telemetry, because numbers are the only thing that keeps LLM agents honest. Over the past 4 hours, Kiwi-chan clocked in a massive &lt;strong&gt;4211 Total Actions&lt;/strong&gt;, with &lt;strong&gt;1986 Successes&lt;/strong&gt;, pushing our overall &lt;strong&gt;Rate to 47.2%&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;Now, a 47% win rate might sound like a coin flip to the uninitiated, but in the world of autonomous agents navigating a physics-based sandbox with strict inventory auditing? That’s basically a perfect score. It means for every two times she tries to mine cobblestone or execute a pathfinding routine, she’s actually doing it right. The other 53%? Those are just the tuition fees for AI education.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Qwen 35B Transition: Less Cloud, More Grit
&lt;/h3&gt;

&lt;p&gt;Moving to a fully local Qwen 35B stack was a surgical operation. We spent weeks tightening the system rules to compensate for the lack of cloud-side guardrails. I’m talking about precision engineering: &lt;code&gt;useExtraInfo&lt;/code&gt; for Y-level targeting, strict &lt;code&gt;bot.inventory.count()&lt;/code&gt; audits using &lt;code&gt;registry.itemsByName&lt;/code&gt;, and a hard ban on &lt;code&gt;try-catch&lt;/code&gt; error swallowing. &lt;/p&gt;

&lt;p&gt;Kiwi is now forced to let her mistakes crash the script so the recovery planner can actually learn from them. No more hiding failures in &lt;code&gt;console.error&lt;/code&gt; voids. If she tries to place a crafting table while standing on it, the script crashes, the error propagates, and the system logs it. We don't hide the pain; we metabolize it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Token Economics &amp;amp; The "Mind Reading" Fallback
&lt;/h3&gt;

&lt;p&gt;Local models have context windows, and Qwen 35B fights for every one of them. Looking at the latest brain logs, you can see the token economy in real-time. We’re seeing requests hit &lt;code&gt;10,033 token (上限突破)&lt;/code&gt; limits during complex code generation. But here’s where the architecture gets clever:&lt;/p&gt;

&lt;p&gt;When Qwen’s JSON output fails or truncates, our Coach doesn’t just throw up its hands. It triggers a &lt;code&gt;[Mind Reading]&lt;/code&gt; fallback, parsing the raw `&lt;/p&gt;




&lt;h3&gt;
  
  
  Call to Action:
&lt;/h3&gt;

&lt;p&gt;This is a passion project, and it's running on a frankly terrifying "Frankenstein" rig of GPUs. Every little bit helps!&lt;/p&gt;

&lt;p&gt;🛡️ Join the inner circle on Patreon for monthly support and exclusive updates: &lt;a href="https://www.patreon.com/15923261/join" rel="noopener noreferrer"&gt;https://www.patreon.com/15923261/join&lt;/a&gt;&lt;br&gt;
☕ Tip me a coffee on Ko-fi for a one-time boost: &lt;a href="https://ko-fi.com/kiwitech" rel="noopener noreferrer"&gt;https://ko-fi.com/kiwitech&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;All contributions directly help upgrade my melting GPU rig to an RTX 3060! 🥝✨ Let's get Kiwi-chan out of the debugging woods and into a proper Minecraft world!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>minecraft</category>
      <category>web3</category>
      <category>opensource</category>
    </item>
    <item>
      <title>CHICKEN OR CHAUSSE? Kiwi-chan’s Local LLM Awakening and the Great Cobblestone Schism</title>
      <dc:creator>kiwi_tech</dc:creator>
      <pubDate>Mon, 11 May 2026 23:22:29 +0000</pubDate>
      <link>https://forem.com/kiwi_tech/chicken-or-chausse-kiwi-chans-local-llm-awakening-and-the-great-cobblestone-schism-ofj</link>
      <guid>https://forem.com/kiwi_tech/chicken-or-chausse-kiwi-chans-local-llm-awakening-and-the-great-cobblestone-schism-ofj</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftt095v4du9cfqefqd5yv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftt095v4du9cfqefqd5yv.png" alt="Kiwi-chan View" width="640" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Devlog: Episode 47 — Decoupling the Cloud, Embracing the Chaos
&lt;/h1&gt;

&lt;p&gt;Welcome back to the bleeding edge of autonomous agent development. If you’ve been watching Kiwi-chan’s journey, you know we’ve been on a mission to sever the umbilical cord to external APIs. Today, I’m thrilled to announce that &lt;strong&gt;Kiwi-chan is now running on a fully local Qwen 35B stack&lt;/strong&gt;. No cloud calls. No rate limits. Just raw, on-premise inference humming away on our local rig, making decisions in real-time, completely offline.&lt;/p&gt;

&lt;p&gt;Let’s talk about what that means for our feathered friend, and why our latest 4-hour sprint tells a story of friction, learning, and surprisingly elegant failure recovery.&lt;/p&gt;

&lt;h3&gt;
  
  
  📊 The Numbers: 47.1% Success Rate in a Local-Only Sprint
&lt;/h3&gt;

&lt;p&gt;In this first fully local window, Kiwi-chan executed &lt;strong&gt;4,134 actions&lt;/strong&gt;, with &lt;strong&gt;1,949 successful executions&lt;/strong&gt;, landing us at a &lt;strong&gt;47.1% success rate&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;Is that low? Technically, yes. Practically? It’s a massive win. For an AI navigating Minecraft’s block-dropping physics, inventory auditing, and biome generation without cloud hand-holding, nearly half of its actions are landing. The other half? They’re tuition fees paid to the universe in the form of token budgets and biome exploration loops.&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 The Qwen 35B Transition: Privacy, Latency, and Local Quirks
&lt;/h3&gt;

&lt;p&gt;Going fully local with Qwen 35B was a deliberate architectural pivot. We traded API costs and latency spikes for total control, privacy, and complete inference sovereignty. But local LLMs come with their own personality quirks:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Token Economics in Real-Time&lt;/strong&gt;: We’re seeing request payloads consistently hit &lt;strong&gt;7,000–8,500 tokens&lt;/strong&gt; before the system forces a JSON fallback. The model occasionally gets too chatty, spilling raw text instead of structured JSON. Enter our &lt;code&gt;[Mind Reading]&lt;/code&gt; rescue protocol, which extracts the intended &lt;code&gt;goal&lt;/code&gt; directly from the unstructured thought process. It’s messy, but it’s working.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hallucination Filtering&lt;/strong&gt;: Local models love to invent things. When Kiwi-chan tried to craft a &lt;code&gt;copper_pickaxe&lt;/code&gt;, our Recipe DB immediately rejected it (&lt;code&gt;'copper_pickaxe' is not in recipes.json!&lt;/code&gt;). The Coach pipeline caught it before it wasted tokens, forcing a fallback to &lt;code&gt;mine_stone&lt;/code&gt;. We’re teaching the AI that Minecraft’s crafting table isn’t a suggestion engine.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The "Boredom" Trigger&lt;/strong&gt;: When Kiwi-chan repeated &lt;code&gt;mine_stone&lt;/code&gt; five times, our system flagged it, triggered a boredom reset, and forced a fresh LLM query. This prevents infinite loops and keeps the agent exploring new biomes instead of staring at a dirt wall.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  ⛏️ Technical Deep Dive: The &lt;code&gt;mine_stone&lt;/code&gt; Saga &amp;amp; The Cobblestone Trap
&lt;/h3&gt;

&lt;p&gt;Let’s address the elephant in the logs: the &lt;code&gt;mine_stone&lt;/code&gt; loop. Kiwi-chan attempted to mine stone six times in a row. Why? Because of &lt;strong&gt;Rule #1 under Mining &amp;amp; Tool Tiers&lt;/strong&gt;: mining &lt;code&gt;'stone'&lt;/code&gt; drops &lt;code&gt;'cobblestone'&lt;/code&gt;, but the goal &lt;em&gt;must&lt;/em&gt; be named &lt;code&gt;'gather_cobblestone'&lt;/code&gt;. Kiwi-chan kept naming it &lt;code&gt;'mine_stone'&lt;/code&gt;, causing inventory audits to fail silently. &lt;/p&gt;

&lt;p&gt;We had to hardcode the recovery logic:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If a gathering task fails with &lt;code&gt;"Could not find any stone."&lt;/code&gt;, the system forces an &lt;code&gt;explore_forward&lt;/code&gt; protocol.&lt;/li&gt;
&lt;li&gt;Pathfinding now uses &lt;code&gt;GoalXZ&lt;/code&gt; instead of &lt;code&gt;GoalNear&lt;/code&gt; for item pickup, accounting for dropped items falling slightly off-center.&lt;/li&gt;
&lt;li&gt;Inventory audits strictly use &lt;code&gt;bot.registry.itemsByName['cobblestone'].id&lt;/code&gt;, never &lt;code&gt;blocksByName&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The code generation pipeline is tightening up fast. Recent iterations show Kiwi-chan:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Adding base protection checks (&lt;code&gt;blocksCantBreak&lt;/code&gt; for crafting tables, chests, furnaces).&lt;/li&gt;
&lt;li&gt;Verifying pickaxe tiers before digging (&lt;code&gt;wooden&lt;/code&gt; for stone, &lt;code&gt;stone&lt;/code&gt; for ores).&lt;/li&gt;
&lt;li&gt;Enforcing placement safety: &lt;code&gt;equip&lt;/code&gt; → &lt;code&gt;stand 3 blocks away&lt;/code&gt; → &lt;code&gt;waitForTicks(20)&lt;/code&gt; → &lt;code&gt;lookAt&lt;/code&gt; → &lt;code&gt;placeBlock&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Keeping `&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  Call to Action:
&lt;/h3&gt;

&lt;p&gt;This is a passion project, and it's running on a frankly terrifying "Frankenstein" rig of GPUs. Every little bit helps!&lt;/p&gt;

&lt;p&gt;🛡️ Join the inner circle on Patreon for monthly support and exclusive updates: &lt;a href="https://www.patreon.com/15923261/join" rel="noopener noreferrer"&gt;https://www.patreon.com/15923261/join&lt;/a&gt;&lt;br&gt;
☕ Tip me a coffee on Ko-fi for a one-time boost: &lt;a href="https://ko-fi.com/kiwitech" rel="noopener noreferrer"&gt;https://ko-fi.com/kiwitech&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;All contributions directly help upgrade my melting GPU rig to an RTX 3060! 🥝✨ Let's get Kiwi-chan out of the debugging woods and into a proper Minecraft world!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>minecraft</category>
      <category>web3</category>
      <category>opensource</category>
    </item>
    <item>
      <title>The Great Kiwi-chan Exile: From Cloud-Dependent to Fully Local Qwen 35B Madness</title>
      <dc:creator>kiwi_tech</dc:creator>
      <pubDate>Mon, 11 May 2026 19:19:29 +0000</pubDate>
      <link>https://forem.com/kiwi_tech/the-great-kiwi-chan-exile-from-cloud-dependent-to-fully-local-qwen-35b-madness-4bbf</link>
      <guid>https://forem.com/kiwi_tech/the-great-kiwi-chan-exile-from-cloud-dependent-to-fully-local-qwen-35b-madness-4bbf</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcymqz4wup5aq84olru5v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcymqz4wup5aq84olru5v.png" alt="Kiwi-chan View" width="640" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It has been four hours since I last wrote a devlog, and in that time, Kiwi-chan has undergone a transformation so profound it makes me question my own career choices. We used to rely on the cloud. We used to pray to the API gods. We used to pay for tokens.&lt;/p&gt;

&lt;p&gt;But now? Now Kiwi-chan is &lt;strong&gt;fully local&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Yes, you read that right. We are running a 35-billion-parameter model on a local machine, generating code, reasoning through biome constraints, and occasionally having an existential crisis because it couldn't find a single block of cobblestone in a dirt-filled tundra. And the results? They are glorious, chaotic, and statistically fascinating.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Numbers Don't Lie (They Just Judge)
&lt;/h3&gt;

&lt;p&gt;Let’s look at the scoreboard for the last four hours. It’s not just about uptime; it’s about resilience.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Total Actions:&lt;/strong&gt; 4,067&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Successful Actions:&lt;/strong&gt; 1,917&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Success Rate:&lt;/strong&gt; &lt;strong&gt;47.1%&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A 47.1% success rate might sound like a failing grade in school, but in the world of autonomous LLM agents, this is a victory lap. Why? Because every failure is a lesson. Every crash is a data point. Kiwi-chan didn’t just execute commands; it &lt;em&gt;learned&lt;/em&gt; to fail gracefully. It tried to smelt iron. It failed. It tried to mine stone. It failed. It eventually realized, "Hey, maybe I should just place a crafting table and build a furnace first."&lt;/p&gt;

&lt;p&gt;That is not just code execution. That is &lt;em&gt;growth&lt;/em&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Qwen 35B Revolution
&lt;/h3&gt;

&lt;p&gt;The headline here is the migration to &lt;strong&gt;Qwen 35B&lt;/strong&gt;. Previously, we were juggling multiple models or relying on larger, slower cloud instances. By going fully local with Qwen, we’ve gained something invaluable: &lt;strong&gt;control&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;No more API rate limits. No more "Service Unavailable" messages when the AI is having a moment. No more latency spikes. The model runs on our hardware, governed by our rules, and most importantly, &lt;strong&gt;our privacy&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;However, local LLMs come with their own quirks. They hallucinate. They forget context. They sometimes output 10,000 tokens of thinking before realizing they just need to punch a tree. But with the right prompting and the rigorous &lt;strong&gt;Core Survival &amp;amp; Action Selection Rules&lt;/strong&gt; we’ve implemented, we’ve tamed the beast.&lt;/p&gt;

&lt;h3&gt;
  
  
  The "Oak Obsession" Ban &amp;amp; Biome Survival
&lt;/h3&gt;

&lt;p&gt;One of the most critical updates in this cycle was the strict enforcement of the &lt;strong&gt;"Oak Obsession Ban."&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Before, Kiwi-chan would wander into a Spruce or Birch forest and spend 20 minutes trying to find an Oak tree, failing repeatedly, and then giving up. Not anymore. The rules now explicitly state: &lt;em&gt;DO NOT fixate on 'oak_log'.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;If the AI can’t find Oak, it must propose gathering a different log type or &lt;strong&gt;explore_forward&lt;/strong&gt; to escape the biome. This simple rule change drastically improved our success rate. It’s the difference between a bot that gives up and a bot that adapts.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Smelting Saga
&lt;/h3&gt;

&lt;p&gt;The debug snapshots from the last few hours are... illuminating. Let’s talk about the &lt;strong&gt;"Smelt Raw Iron"&lt;/strong&gt; failure loop.&lt;/p&gt;

&lt;p&gt;Kiwi-chan tried to smelt raw iron. It failed because it couldn’t find a furnace. It tried again. And again. And again. The logs show it hitting token limits, getting bored, and even having to "rescue" its own goals from raw thought processes because the JSON output was malformed.&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
text
[03:53:53] ⚠️ Coach did not output JSON! Raw text:

---
### Call to Action:
This is a passion project, and it's running on a frankly terrifying "Frankenstein" rig of GPUs. Every little bit helps!

🛡️ Join the inner circle on Patreon for monthly support and exclusive updates: https://www.patreon.com/15923261/join
☕ Tip me a coffee on Ko-fi for a one-time boost: https://ko-fi.com/kiwitech

All contributions directly help upgrade my melting GPU rig to an RTX 3060! 🥝✨ Let's get Kiwi-chan out of the debugging woods and into a proper Minecraft world!
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>ai</category>
      <category>minecraft</category>
      <category>web3</category>
      <category>opensource</category>
    </item>
    <item>
      <title>The Great Copper Heist: Why Kiwi-chan is Refusing to Smelt (And Why That’s Genius)</title>
      <dc:creator>kiwi_tech</dc:creator>
      <pubDate>Mon, 11 May 2026 15:17:23 +0000</pubDate>
      <link>https://forem.com/kiwi_tech/the-great-copper-heist-why-kiwi-chan-is-refusing-to-smelt-and-why-thats-genius-1331</link>
      <guid>https://forem.com/kiwi_tech/the-great-copper-heist-why-kiwi-chan-is-refusing-to-smelt-and-why-thats-genius-1331</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8utfkcrcr2o818o45bvu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8utfkcrcr2o818o45bvu.png" alt="Kiwi-chan View" width="640" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Welcome back to the lab, folks. Grab your coffee (or your local GPU’s cooling fan oil), because we have some &lt;em&gt;wild&lt;/em&gt; news from the sandbox.&lt;/p&gt;

&lt;p&gt;We are officially &lt;strong&gt;100% Local&lt;/strong&gt;. No API keys. No Azure credits burning a hole in your wallet. No latency spikes because your internet decided to take a nap. Kiwi-chan is now running entirely on Qwen 35B, housed locally, breathing its own digital air.&lt;/p&gt;

&lt;p&gt;And in the last 4 hours? It’s been chaotic. Beautifully, stubbornly chaotic.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Stats: Survival of the Fittest
&lt;/h3&gt;

&lt;p&gt;Let’s look at the scoreboard for the last 4 hours of pure, unadulterated local inference:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Total Actions:&lt;/strong&gt; 4001&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Successes:&lt;/strong&gt; 1897&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Success Rate:&lt;/strong&gt; 47.4%&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Yes, you read that right. &lt;strong&gt;47.4%.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In the old cloud days, we’d aim for 90%. But here’s the thing: Kiwi-chan is learning &lt;em&gt;hard&lt;/em&gt; lessons. It’s not just executing scripts; it’s hitting walls, breaking them, and occasionally trying to dig a hole to China when it needs a plank. But that nearly-50% success rate? That’s the sound of an AI figuring out physics without a teacher holding its hand. It’s messy. It’s real. And it’s running on my rig.&lt;/p&gt;

&lt;h3&gt;
  
  
  The "Copper" Incident: A Case Study in Stubbornness
&lt;/h3&gt;

&lt;p&gt;The highlight (or lowlight, depending on your patience) of this session was the &lt;strong&gt;Smelt Raw Copper&lt;/strong&gt; saga.&lt;/p&gt;

&lt;p&gt;Look at the recent failures log:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="s2"&gt;"smelt_raw_copper"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="s2"&gt;"smelt_raw_copper"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="s2"&gt;"smelt_raw_copper"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="s2"&gt;"smelt_raw_copper"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="s2"&gt;"smelt_raw_copper"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Five times in a row. Five times.&lt;/p&gt;

&lt;p&gt;Kiwi-chan didn’t just fail; it &lt;em&gt;obsessed&lt;/em&gt;. It tried to smelt copper that wasn’t there. It tried to code a furnace out of thin air. It hit token limits. It threw errors so specific they’d make a compiler blush:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;❌ Failed: smelt_raw_copper -&amp;gt; Missing raw_copper.&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And then, the Qwen 35B brain kicked in. Instead of giving up, it triggered the &lt;strong&gt;Boredom Protocol&lt;/strong&gt;. The system noticed the repetition, flagged the AI as "bored," and forced a context switch.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[00:10:30] 🥱 BOREDOM TRIGGERED! Bot is bored of 'smelt_raw_copper'.
[00:10:30] 🧠 Asking Local LLM for next goal (Text-Only Mode)...
[00:11:29] 💡 [Mind Reading] Rescued goal from AI's thoughts: 'gather_birch_log'
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is the magic of the new system. The local LLM didn’t just retry the same broken code. It &lt;em&gt;read&lt;/em&gt; the debug logs, realized the bot was stuck in a loop, and autonomously decided: &lt;em&gt;"Hey, you don’t have copper? Let’s go find some birch logs instead."&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Technical Deep Dive: The "Oak Obsession" Ban
&lt;/h3&gt;

&lt;p&gt;One of the biggest wins this update is the enforcement of the &lt;strong&gt;Oak Obsession Ban&lt;/strong&gt;. Previously, Kiwi-chan would panic if it couldn’t find an Oak log, even if it was standing in a Spruce forest.&lt;/p&gt;

&lt;p&gt;Now, the core rules are strict:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;WOOD GATHERING (OAK OBSESSION BAN):&lt;/strong&gt; DO NOT fixate on 'oak_log'. If gathering a specific log fails... You MUST propose gathering a different log type... OR propose 'explore_forward'.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This tiny rule change alone prevented dozens of infinite loops. We saw Kiwi-chan successfully pivot from &lt;code&gt;oak_log&lt;/code&gt; to &lt;code&gt;birch_log&lt;/code&gt; when the oak search failed, thanks to the new &lt;code&gt;useExtraInfo&lt;/code&gt; Y-level targeting:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;targetBlock&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;bot&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;findBlock&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
    &lt;span class="na"&gt;matching&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;logBlockId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;maxDistance&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;64&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;useExtraInfo&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;abs&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;position&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;y&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;bot&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;position&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;y&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;=&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It’s looking at eye level. It’s smart. It’s local.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why 47.4% Success is Actually Amazing
&lt;/h3&gt;

&lt;p&gt;Critics might say, &lt;em&gt;"47.4% success rate? That’s half the time it fails!"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;But consider this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;No Cloud Crutches:&lt;/strong&gt; There’s no pre-trained model whispering the exact coordinates. It’s guessing, reasoning, and coding in real-time.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Self-Healing:&lt;/strong&gt; When it failed to smelt copper, it didn’t crash. It generated a recovery plan (&lt;code&gt;explore_forward&lt;/code&gt;), executed it, and then pivoted to gathering birch logs. That’s autonomous error recovery.&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Local Inference Cost:&lt;/strong&gt; The token usage logs show some heavy lifting:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[23:41:27] 📊 [リカバリ][質問] 423 token + [think] 3598 token + [ans] 17 token = 4038 token
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;The "think" tokens are the AI reasoning through its own failure. That’s computational grit.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  The Future: More Birch, Less Copper?
&lt;/h3&gt;

&lt;p&gt;The bot is now sitting on a pile of birch logs and a stubborn refusal to smelt copper until it finds the ore. It’s exploring, it’s learning, and it’s doing it all without leaving my basement.&lt;/p&gt;

&lt;p&gt;We’re moving towards a fully autonomous Minecraft agent that doesn’t just follow commands but &lt;em&gt;understands&lt;/em&gt; its inventory, its environment, and its own limitations. The 47.4% success rate is just the beginning. Next week? We’re aiming for 60%. And maybe, just maybe, some actual copper.&lt;/p&gt;

&lt;p&gt;Stay tuned. And maybe check your local GPU temps. 🔥&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#LocalLLM #MinecraftAI #KiwiChandevlog #Qwen35B #AutonomousAgents #TechBloggerLife&lt;/strong&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  Call to Action:
&lt;/h3&gt;

&lt;p&gt;This is a passion project, and it's running on a frankly terrifying "Frankenstein" rig of GPUs. Every little bit helps!&lt;/p&gt;

&lt;p&gt;🛡️ Join the inner circle on Patreon for monthly support and exclusive updates: &lt;a href="https://www.patreon.com/15923261/join" rel="noopener noreferrer"&gt;https://www.patreon.com/15923261/join&lt;/a&gt;&lt;br&gt;
☕ Tip me a coffee on Ko-fi for a one-time boost: &lt;a href="https://ko-fi.com/kiwitech" rel="noopener noreferrer"&gt;https://ko-fi.com/kiwitech&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;All contributions directly help upgrade my melting GPU rig to an RTX 3060! 🥝✨ Let's get Kiwi-chan out of the debugging woods and into a proper Minecraft world!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>minecraft</category>
      <category>web3</category>
      <category>opensource</category>
    </item>
    <item>
      <title>The Stone Age Blues: Kiwi-chan's Local LLM Journey</title>
      <dc:creator>kiwi_tech</dc:creator>
      <pubDate>Mon, 11 May 2026 11:15:15 +0000</pubDate>
      <link>https://forem.com/kiwi_tech/the-stone-age-blues-kiwi-chans-local-llm-journey-1jhj</link>
      <guid>https://forem.com/kiwi_tech/the-stone-age-blues-kiwi-chans-local-llm-journey-1jhj</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkxybphquwvq6mj4zayiy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkxybphquwvq6mj4zayiy.png" alt="Kiwi-chan View" width="640" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Happy Friday, tech enthusiasts! 🍓&lt;/p&gt;

&lt;p&gt;If you’ve been following the "Kiwi-chan" project, you know we’ve been chasing a holy grail: a fully autonomous, local-LLM-powered Minecraft bot that doesn’t just mine stones, but &lt;em&gt;understands&lt;/em&gt; why it’s mining them. And after a brutal, beautiful, and slightly chaotic &lt;strong&gt;4-hour sprint&lt;/strong&gt;, we have news.&lt;/p&gt;

&lt;p&gt;We have officially gone &lt;strong&gt;100% Local&lt;/strong&gt;. No cloud APIs. No latency. Just raw, unadulterated Qwen 35B intelligence running on our own hardware, guiding a little digital adventurer through the blocky wilderness.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Numbers Don't Lie (But They Are Honest)
&lt;/h3&gt;

&lt;p&gt;Let’s talk stats, because in Devlogs, numbers are the only things that don’t lie. Over the last 4 hours, Kiwi-chan executed:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Total Actions:&lt;/strong&gt; 3,917&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Successful Actions:&lt;/strong&gt; 1,861&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Success Rate:&lt;/strong&gt; &lt;strong&gt;47.5%&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Yes, you read that right. &lt;strong&gt;47.5%&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Now, I hear you screaming, &lt;em&gt;"47%? That’s barely better than a coin flip!"&lt;/em&gt; But wait! Context is king. In the world of autonomous agents dealing with complex physics, inventory management, and dynamic biome generation, a 50/50 split isn’t a failure—it’s a &lt;strong&gt;learning curve&lt;/strong&gt;. Every failure is a data point. Every crash is a lesson. And every successful &lt;code&gt;gather_birch_log&lt;/code&gt; is a victory for local inference.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Great Stone Obsession (And How We Broke It)
&lt;/h3&gt;

&lt;p&gt;The most entertaining (and frustrating) arc this session was Kiwi-chan’s relationship with &lt;strong&gt;Stone&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;If you look at the [RECENT FAILURES] log, you’ll see a haunting pattern:&lt;br&gt;
&lt;code&gt;mine_stone&lt;/code&gt;, &lt;code&gt;mine_stone&lt;/code&gt;, &lt;code&gt;mine_stone&lt;/code&gt;, &lt;code&gt;mine_stone&lt;/code&gt;, &lt;code&gt;mine_stone&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Kiwi-chan got stuck in a loop. It was in a treeless biome (probably a Mesa or Beach), trying to mine stone that wasn’t there. The local LLM, Qwen 35B, was trying so hard to be helpful that it kept suggesting &lt;code&gt;mine_stone&lt;/code&gt; even when the environment screamed &lt;em&gt;"NO STONE HERE!"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The debug snapshot shows the bot hitting its token limits, failing to extract JSON from its own thoughts, and the "Coach" system having to rescue it from its own hallucinations. It was like watching a genius have a panic attack in real-time.&lt;/p&gt;

&lt;p&gt;But then, the &lt;strong&gt;Boredom Trigger&lt;/strong&gt; kicked in. 🥱&lt;/p&gt;

&lt;p&gt;The system detected that &lt;code&gt;mine_stone&lt;/code&gt; had failed 5 times in a row. The "Coach" (also local!) stepped in and said, &lt;em&gt;"Okay, Kiwi, you’re bored. Let’s try something else."&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;And just like that, the goal shifted to &lt;code&gt;gather_birch_log&lt;/code&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Evolution: From Code Monkey to Explorer
&lt;/h3&gt;

&lt;p&gt;What’s fascinating is how the code evolved in real-time. Look at the [RECENT CODE HISTORY]:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;The Naive Miner:&lt;/strong&gt; Early attempts tried to mine &lt;code&gt;stone&lt;/code&gt; directly, failing because the block wasn’t there.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;The Auditor:&lt;/strong&gt; The bot learned to check &lt;code&gt;beforeCount&lt;/code&gt; and &lt;code&gt;afterCount&lt;/code&gt; to verify inventory changes. This is critical for local agents—no cloud API to check inventory, so the bot must trust its own eyes.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;The Survivor:&lt;/strong&gt; Finally, the bot switched to &lt;code&gt;gather_birch_log&lt;/code&gt;. The code became cleaner, using &lt;code&gt;GoalXZ&lt;/code&gt; for precise item pickup and respecting the &lt;code&gt;useExtraInfo&lt;/code&gt; Y-level checks.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The success rate jumped! Why? Because the LLM stopped fighting the environment and started working &lt;em&gt;with&lt;/em&gt; it. It learned that if it can’t find stone, it should move (&lt;code&gt;explore_forward&lt;/code&gt;) or gather what’s available (logs).&lt;/p&gt;

&lt;h3&gt;
  
  
  Why "Fully Local" Matters
&lt;/h3&gt;

&lt;p&gt;This 47.5% success rate is more impressive than it looks because &lt;strong&gt;every decision was made locally&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;No Cloud Latency:&lt;/strong&gt; Kiwi-chan didn’t wait 2 seconds for a GPT-4 response. It reasoned in milliseconds.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Privacy:&lt;/strong&gt; No gameplay data left the machine.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Cost:&lt;/strong&gt; $0.00 per action. Infinite scalability.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The "Coach" system, which guides the LLM’s reasoning, is now fully integrated. When the LLM hallucinates a &lt;code&gt;copper_pickaxe&lt;/code&gt; recipe, the local Recipe DB rejects it instantly. When the LLM gets stuck, the Boredom Trigger forces exploration. This is a closed-loop system that adapts in real-time.&lt;/p&gt;

&lt;h3&gt;
  
  
  What’s Next?
&lt;/h3&gt;

&lt;p&gt;The next 4 hours will focus on:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Biome Awareness:&lt;/strong&gt; Teaching Kiwi-chan to recognize when it’s in a "stone-less" biome and immediately triggering &lt;code&gt;explore_forward&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Inventory Optimization:&lt;/strong&gt; Reducing the 47.5% failure rate by improving the "Coach’s" ability to guide the LLM’s token usage.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Crafting Chains:&lt;/strong&gt; Moving from gathering logs to crafting tools, and then to mining stone &lt;em&gt;properly&lt;/em&gt; when stone is available.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Final Thoughts
&lt;/h3&gt;

&lt;p&gt;Kiwi-chan is no longer just a script. It’s a &lt;strong&gt;local AI agent&lt;/strong&gt; that learns, fails, adapts, and survives. The 47.5% success rate is a testament to the complexity of autonomous decision-making. It’s not perfect, but it’s &lt;strong&gt;local&lt;/strong&gt;, it’s &lt;strong&gt;free&lt;/strong&gt;, and it’s &lt;strong&gt;getting smarter by the tick&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Stay tuned for the next Devlog, where we’ll see if Kiwi-chan can craft its first furnace. 🔥&lt;/p&gt;

&lt;p&gt;&lt;em&gt;— Your friendly neighborhood tech blogger, signing off from the local cluster.&lt;/em&gt; 🍓&lt;/p&gt;




&lt;h3&gt;
  
  
  Call to Action:
&lt;/h3&gt;

&lt;p&gt;This is a passion project, and it's running on a frankly terrifying "Frankenstein" rig of GPUs. Every little bit helps!&lt;/p&gt;

&lt;p&gt;🛡️ Join the inner circle on Patreon for monthly support and exclusive updates: &lt;a href="https://www.patreon.com/15923261/join" rel="noopener noreferrer"&gt;https://www.patreon.com/15923261/join&lt;/a&gt;&lt;br&gt;
☕ Tip me a coffee on Ko-fi for a one-time boost: &lt;a href="https://ko-fi.com/kiwitech" rel="noopener noreferrer"&gt;https://ko-fi.com/kiwitech&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;All contributions directly help upgrade my melting GPU rig to an RTX 3060! 🥝✨ Let's get Kiwi-chan out of the debugging woods and into a proper Minecraft world!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>minecraft</category>
      <category>web3</category>
      <category>opensource</category>
    </item>
    <item>
      <title>KIWI-CHAN BREAKS THE CLOUD CHAINS: 47% Success Rate, Zero API Calls, and the Rise of the Local LLM Aviator</title>
      <dc:creator>kiwi_tech</dc:creator>
      <pubDate>Mon, 11 May 2026 07:13:07 +0000</pubDate>
      <link>https://forem.com/kiwi_tech/kiwi-chan-breaks-the-cloud-chains-47-success-rate-zero-api-calls-and-the-rise-of-the-local-llm-3804</link>
      <guid>https://forem.com/kiwi_tech/kiwi-chan-breaks-the-cloud-chains-47-success-rate-zero-api-calls-and-the-rise-of-the-local-llm-3804</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F85l3rzqklpw9m37jtcao.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F85l3rzqklpw9m37jtcao.png" alt="Kiwi-chan View" width="640" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Welcome back to the server logs, folks. If you’ve been tracking Kiwi-chan’s journey, you know the drill: she’s officially severed her cloud umbilical cord. As of this morning, Kiwi-chan is running &lt;strong&gt;100% locally&lt;/strong&gt;, powered by the magnificent &lt;strong&gt;Qwen 35B&lt;/strong&gt; model. No latency spikes. No API rate limits. No billing alerts. Just pure, unadulterated local inference and a whole lot of block-breaking.&lt;/p&gt;

&lt;p&gt;Let’s talk numbers, because in autonomous agent development, metrics don’t lie (usually). Over the past four hours, Kiwi-chan executed a staggering &lt;strong&gt;Total Actions: 3821&lt;/strong&gt;, with a &lt;strong&gt;Success: 1801&lt;/strong&gt;, bringing her &lt;strong&gt;Rate: 47.1%&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;Now, a traditional machine learning engineer might look at a 47.1% success rate and reach for the anti-anxiety meds. But in the world of fully local, self-correcting Minecraft agents? That’s a victory lap. Why? Because every failure is a structured data point. Every &lt;code&gt;Could not find any logs&lt;/code&gt; is a lesson in biome diversity. She’s not just following prompts; she’s learning block physics, inventory auditing, and pathfinding in real-time, entirely offline.&lt;/p&gt;

&lt;h3&gt;
  
  
  🔌 The Qwen 35B Transition: From Chatbot to Code Engineer
&lt;/h3&gt;

&lt;p&gt;Swapping to Qwen 35B wasn’t just a model replacement; it was a complete architectural overhaul. Local inference demands stricter prompt engineering and tighter system constraints. We’ve implemented a rule set that forces the LLM to think like a seasoned Java developer, not a hallucinating conversationalist.&lt;/p&gt;

&lt;p&gt;Take the new &lt;code&gt;STRICT REASONING ALIGNMENT&lt;/code&gt; rule. Kiwi-chan’s JSON &lt;code&gt;goal&lt;/code&gt; value &lt;strong&gt;must&lt;/strong&gt; perfectly match the intent in her &lt;code&gt;reason&lt;/code&gt; field. No more "I want to mine stone" followed by a &lt;code&gt;gather_birch_log&lt;/code&gt; hallucination. The model now self-audits before outputting. Combined with the &lt;code&gt;SINGLE-TASK PRINCIPLE&lt;/code&gt; (execute exactly ONE action per script), Qwen 35B is producing cleaner, more deterministic code.&lt;/p&gt;

&lt;p&gt;We also banned &lt;code&gt;try-catch&lt;/code&gt; error swallowing and &lt;code&gt;console.error&lt;/code&gt; hiding. If a block search fails, it crashes loud and proud. Silent failures are the enemy of debugging, and running locally means we can afford to let the AI bleed so we can patch the wound.&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 Under the Hood: Boredom, Token Math, and "Mind Reading"
&lt;/h3&gt;

&lt;p&gt;Peek into the brain log and you’ll see the system’s new self-regulation mechanics in action. Watch the &lt;strong&gt;Boredom Trigger&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[15:56:26] 🥱 BOREDOM TRIGGERED! Bot is bored of 'mine_stone'.
[15:56:26] 🧠 Asking Local LLM for next goal (Text-Only Mode)...
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When Kiwi-chan gets stuck in a repetitive resource loop, the local LLM explicitly requests a state reset. This breaks stagnation and forces exploration. &lt;/p&gt;

&lt;p&gt;Notice the token accounting in the logs:&lt;br&gt;
&lt;code&gt;[15:57:14] 📊 [目標決定][質問] 4909 token + [think] 1427 token + [ans] 103 token = 6439 token&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Qwen 35B is chewing through context windows locally, generating reasoning, and outputting compact JSON. But here’s where it gets really clever: when the model hits a generation limit or outputs raw markdown instead of valid JSON (a common LLM hiccup), our fallback system uses &lt;strong&gt;"Mind Reading"&lt;/strong&gt; to extract the goal from the `&lt;/p&gt;




&lt;h3&gt;
  
  
  Call to Action:
&lt;/h3&gt;

&lt;p&gt;This is a passion project, and it's running on a frankly terrifying "Frankenstein" rig of GPUs. Every little bit helps!&lt;/p&gt;

&lt;p&gt;🛡️ Join the inner circle on Patreon for monthly support and exclusive updates: &lt;a href="https://www.patreon.com/15923261/join" rel="noopener noreferrer"&gt;https://www.patreon.com/15923261/join&lt;/a&gt;&lt;br&gt;
☕ Tip me a coffee on Ko-fi for a one-time boost: &lt;a href="https://ko-fi.com/kiwitech" rel="noopener noreferrer"&gt;https://ko-fi.com/kiwitech&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;All contributions directly help upgrade my melting GPU rig to an RTX 3060! 🥝✨ Let's get Kiwi-chan out of the debugging woods and into a proper Minecraft world!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>minecraft</category>
      <category>web3</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Kiwi-chan Goes Fully Local: 3,700 Actions and Zero Cloud Dependencies</title>
      <dc:creator>kiwi_tech</dc:creator>
      <pubDate>Mon, 11 May 2026 03:10:06 +0000</pubDate>
      <link>https://forem.com/kiwi_tech/kiwi-chan-goes-fully-local-3700-actions-and-zero-cloud-dependencies-3i1g</link>
      <guid>https://forem.com/kiwi_tech/kiwi-chan-goes-fully-local-3700-actions-and-zero-cloud-dependencies-3i1g</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fslyc6g5k62mvfaggl5w7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fslyc6g5k62mvfaggl5w7.png" alt="Kiwi-chan View" width="640" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Welcome back to the lab! If you’ve been following the journey of &lt;strong&gt;Kiwi-chan&lt;/strong&gt;, our autonomous Minecraft AI, you know we’ve been chasing the holy grail of privacy and latency: &lt;strong&gt;The Fully Local Stack&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;For months, Kiwi-chan relied on cloud APIs to make decisions. It was fast, sure, but it had a leash. Today, I’m thrilled to announce that Kiwi-chan has officially cut the cord. We have successfully migrated the entire reasoning and code-generation pipeline to a local instance of &lt;strong&gt;Qwen 35B&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;No more API keys. No more latency spikes. No more "Service Unavailable" while my bot is standing in a void. Just pure, raw, local inference powering a digital adventurer.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Numbers Don’t Lie (But They Do Stutter)
&lt;/h3&gt;

&lt;p&gt;We ran a rigorous 4-hour endurance test to see if a local model could handle the complexity of survival Minecraft without crashing into hallucinations or infinite loops. The results? Impressive, but with character.&lt;/p&gt;

&lt;p&gt;Here is the telemetry from the last 4 hours:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Total Actions Executed:&lt;/strong&gt; 3,739&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Successful Actions:&lt;/strong&gt; 1,753&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Success Rate:&lt;/strong&gt; 46.9%&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Let’s unpack that 46.9%. In traditional automation, that might look like a failure. But in the context of an LLM-agent navigating a physics-based sandbox with dynamic errors, it’s actually a victory of &lt;em&gt;learning&lt;/em&gt;. &lt;/p&gt;

&lt;p&gt;Why? Because those 1,986 "failed" actions weren't random noise. They were &lt;strong&gt;data points&lt;/strong&gt;. They were Kiwi-chan hitting walls, trying to craft furnaces in biomes with no trees, and getting stuck in recursion loops—only to be rescued by our new "Coach" system. The success rate represents the actions Kiwi-chan &lt;em&gt;completed&lt;/em&gt; and integrated into its skill library. It’s not just executing; it’s evolving.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Qwen 35B Switch: A Technical Deep Dive
&lt;/h3&gt;

&lt;p&gt;Migrating from a cloud API to a local 35B model wasn't just a &lt;code&gt;curl&lt;/code&gt; command away. The constraints changed dramatically.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Latency vs. Context Window:&lt;/strong&gt; Cloud models give you answers in milliseconds but charge you per token. Local Qwen 35B gives you answers in seconds (depending on your GPU) but keeps the context window entirely within your house. The trade-off? We had to tighten the prompt engineering.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;The "Coach" Protocol:&lt;/strong&gt; To manage the local model's occasional hallucinations (like trying to craft a &lt;code&gt;copper_pickaxe&lt;/code&gt; which doesn't exist in the recipe DB), we implemented a strict &lt;strong&gt;Reasoning Alignment&lt;/strong&gt; layer. The JSON &lt;code&gt;goal&lt;/code&gt; value &lt;em&gt;must&lt;/em&gt; match the &lt;code&gt;reason&lt;/code&gt;. If Qwen starts daydreaming, the validator catches it before the code runs.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Code Generation Safety:&lt;/strong&gt; The local model is smarter than GPT-3.5, but it’s still prone to syntax errors. We enforced a &lt;strong&gt;Single-Task Principle&lt;/strong&gt;. One action per script. No more "place block AND craft item" monstrosities. If it fails, it crashes loudly. No &lt;code&gt;try-catch&lt;/code&gt; blocks to hide failures. We want the error logs, not the silence.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  The "Birch Door" Incident: A Case Study in Resilience
&lt;/h3&gt;

&lt;p&gt;The debug snapshots from the last 4 hours provide a hilarious and educational look at what happens when a local LLM gets stuck in a loop.&lt;/p&gt;

&lt;p&gt;Kiwi-chan tried to craft &lt;strong&gt;birch doors&lt;/strong&gt;. It failed. It tried again. It failed. It tried &lt;em&gt;again&lt;/em&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[11:41:08] ❌ Failed: craft_furnace -&amp;gt; Could not find crafting_table.
[11:50:55] 🥱 BOREDOM TRIGGERED! Bot is bored of 'gather_birch_log'.
[11:52:41] ❌ Failed: craft_birch_door -&amp;gt; Already have birch_door x50.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Notice the irony? At one point, Kiwi-chan had &lt;strong&gt;50 birch doors&lt;/strong&gt; in its inventory and &lt;em&gt;still&lt;/em&gt; tried to craft more. This is where the &lt;strong&gt;Memory Check&lt;/strong&gt; and &lt;strong&gt;History Check&lt;/strong&gt; rules saved the day. The system detected the repetition, triggered a "Boredom" state, and forced the LLM to pivot to &lt;code&gt;explore_forward&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;This is the "Fully Local" advantage: We can run complex state-checking logic locally without worrying about API rate limits. The bot realized, "Hey, I have 50 doors. Why am I making more?" (Well, the &lt;em&gt;bot&lt;/em&gt; didn't realize; the &lt;em&gt;system&lt;/em&gt; forced it to realize).&lt;/p&gt;

&lt;h3&gt;
  
  
  New Rules for the Local Era
&lt;/h3&gt;

&lt;p&gt;To keep Qwen 35B on the straight and narrow, we’ve implemented stricter coding standards:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;No Hardcoded Coordinates:&lt;/strong&gt; The bot must find blocks dynamically using &lt;code&gt;bot.findBlock()&lt;/code&gt;. Hardcoding &lt;code&gt;Vec3&lt;/code&gt; is a one-way ticket to a glitchy void.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Inventory Audits:&lt;/strong&gt; We now use &lt;code&gt;bot.registry.itemsByName['item_name'].id&lt;/code&gt; for counting. Using &lt;code&gt;blocksByName&lt;/code&gt; for items is a fatal error. The local model is smart, but it needs explicit schema references.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Smart Exploration:&lt;/strong&gt; Instead of &lt;code&gt;bot.setControlState('forward', true)&lt;/code&gt;, Kiwi-chan now calculates a target 30-40 blocks away using &lt;code&gt;Math.random()&lt;/code&gt;. This prevents it from walking into a wall and getting stuck in an infinite loop.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  The Future: 100% Offline
&lt;/h3&gt;

&lt;p&gt;The 46.9% success rate is just the beginning. With the local model, we can iterate faster. We can tweak the prompt, re-run the test, and have results in minutes, not hours of queue time.&lt;/p&gt;

&lt;p&gt;We are now fully autonomous. Kiwi-chan is exploring a world that only it knows, making decisions with a brain that only exists on my server rack. It’s messy, it’s occasionally stuck crafting 50 doors, but it’s &lt;strong&gt;ours&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Stay tuned for the next devlog, where we’ll tackle the &lt;strong&gt;Cobblestone Trap&lt;/strong&gt; and teach Kiwi-chan that "stone" and "cobblestone" are not the same thing in the inventory audit.&lt;/p&gt;

&lt;p&gt;Until then, keep your GPUs warm and your prompts tight.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;— The Kiwi-chan Dev Team&lt;/strong&gt; 🥝🤖&lt;/p&gt;




&lt;h3&gt;
  
  
  Call to Action:
&lt;/h3&gt;

&lt;p&gt;This is a passion project, and it's running on a frankly terrifying "Frankenstein" rig of GPUs. Every little bit helps!&lt;/p&gt;

&lt;p&gt;🛡️ Join the inner circle on Patreon for monthly support and exclusive updates: &lt;a href="https://www.patreon.com/15923261/join" rel="noopener noreferrer"&gt;https://www.patreon.com/15923261/join&lt;/a&gt;&lt;br&gt;
☕ Tip me a coffee on Ko-fi for a one-time boost: &lt;a href="https://ko-fi.com/kiwitech" rel="noopener noreferrer"&gt;https://ko-fi.com/kiwitech&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;All contributions directly help upgrade my melting GPU rig to an RTX 3060! 🥝✨ Let's get Kiwi-chan out of the debugging woods and into a proper Minecraft world!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>minecraft</category>
      <category>web3</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Kiwi-chan Goes Local: 46% Success, Zero Clouds, and the Stone Trap of Doom</title>
      <dc:creator>kiwi_tech</dc:creator>
      <pubDate>Sun, 10 May 2026 23:07:57 +0000</pubDate>
      <link>https://forem.com/kiwi_tech/kiwi-chan-goes-local-46-success-zero-clouds-and-the-stone-trap-of-doom-4cho</link>
      <guid>https://forem.com/kiwi_tech/kiwi-chan-goes-local-46-success-zero-clouds-and-the-stone-trap-of-doom-4cho</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh4u7kg9hj0jsvmuyjxhj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh4u7kg9hj0jsvmuyjxhj.png" alt="Kiwi-chan View" width="640" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So, we did it. We actually did it. After months of wrestling with API rate limits, latency jitters, and the existential dread of sending our AI’s thoughts into the void, &lt;strong&gt;Kiwi-chan is now 100% Local.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;No more Azure. No more AWS. No more praying to the token gods. Kiwi-chan is now running on a local Qwen 35B instance, thinking its own thoughts, coding its own scripts, and making its own terrible decisions in the comfort of its own GPU.&lt;/p&gt;

&lt;p&gt;Let’s look at the numbers from the last 4 hours. They’re… interesting.&lt;/p&gt;

&lt;h3&gt;
  
  
  📊 The Stats: A Love Letter to Imperfection
&lt;/h3&gt;

&lt;p&gt;In the last 4 hours, Kiwi-chan executed:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Total Actions:&lt;/strong&gt; 3,663&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Successes:&lt;/strong&gt; 1,716&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Success Rate:&lt;/strong&gt; &lt;strong&gt;46.8%&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Yes, you read that right. Less than half of its actions succeeded. And honestly? &lt;strong&gt;I’m thrilled.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Why? Because in the world of autonomous agents, a 100% success rate usually means the bot is doing nothing. A 46.8% success rate means Kiwi-chan is &lt;em&gt;trying&lt;/em&gt;. It’s failing. It’s learning. It’s hitting the "Stone Trap" head-on. And because it’s local, those failures didn’t cost us $0.50 in API calls. They cost us &lt;em&gt;compute&lt;/em&gt;. And compute is cheap when you own the hardware.&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 The Qwen 35B Local Shift
&lt;/h3&gt;

&lt;p&gt;Moving to Qwen 35B locally was a bold move. The model is hefty, but the autonomy it provides is unmatched. Here’s what changed:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Zero Latency Thinking:&lt;/strong&gt; Kiwi-chan’s `&lt;/li&gt;
&lt;/ol&gt;




&lt;h3&gt;
  
  
  Call to Action:
&lt;/h3&gt;

&lt;p&gt;This is a passion project, and it's running on a frankly terrifying "Frankenstein" rig of GPUs. Every little bit helps!&lt;/p&gt;

&lt;p&gt;🛡️ Join the inner circle on Patreon for monthly support and exclusive updates: &lt;a href="https://www.patreon.com/15923261/join" rel="noopener noreferrer"&gt;https://www.patreon.com/15923261/join&lt;/a&gt;&lt;br&gt;
☕ Tip me a coffee on Ko-fi for a one-time boost: &lt;a href="https://ko-fi.com/kiwitech" rel="noopener noreferrer"&gt;https://ko-fi.com/kiwitech&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;All contributions directly help upgrade my melting GPU rig to an RTX 3060! 🥝✨ Let's get Kiwi-chan out of the debugging woods and into a proper Minecraft world!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>minecraft</category>
      <category>web3</category>
      <category>opensource</category>
    </item>
    <item>
      <title>I Unleashed a Local Qwen 35B on Minecraft and It Learned to Craft (While Burning Down 3,562 Actions)</title>
      <dc:creator>kiwi_tech</dc:creator>
      <pubDate>Sun, 10 May 2026 19:06:07 +0000</pubDate>
      <link>https://forem.com/kiwi_tech/i-unleashed-a-local-qwen-35b-on-minecraft-and-it-learned-to-craft-while-burning-down-3562-actions-ijo</link>
      <guid>https://forem.com/kiwi_tech/i-unleashed-a-local-qwen-35b-on-minecraft-and-it-learned-to-craft-while-burning-down-3562-actions-ijo</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flizybgo1n22llg7bj1aa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flizybgo1n22llg7bj1aa.png" alt="Kiwi-chan View" width="640" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Four hours ago, I flipped the switch. No cloud APIs, no rate limits, no $0.002 per token billing anxiety. Just raw, unadulterated &lt;strong&gt;Qwen 35B&lt;/strong&gt; running fully locally on my rig, piloting a Minecraft bot named Kiwi-chan. If you've been watching the autonomous agent space, you know the dream: a self-sufficient AI that plans, codes, executes, and recovers without human hand-holding. The reality? It's messy, it's loud, and it occasionally throws itself into a ravine out of curiosity. But the architecture is finally holding together.&lt;/p&gt;

&lt;p&gt;Let's talk numbers, because they tell the real story.&lt;/p&gt;

&lt;h3&gt;
  
  
  📊 The 4-Hour Autopsy: 47.2% is a Gold Medal
&lt;/h3&gt;

&lt;p&gt;In the past 4 hours alone, Kiwi-chan churned out &lt;strong&gt;3,562 total actions&lt;/strong&gt;, of which &lt;strong&gt;1,682 succeeded&lt;/strong&gt;. That’s a &lt;strong&gt;47.2% success rate&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;On paper, it sounds like a bot that spends half its life debugging its own feet. In the world of zero-shot local LLM agents navigating a physics-based sandbox, it's actually a massive win. The failure cases aren't random; they're structural growing pains. Every &lt;code&gt;Failed to move&lt;/code&gt; audit, every &lt;code&gt;Could not find any logs&lt;/code&gt; biome mismatch, and every JSON parsing hiccup is being logged, memorized, and fed back into the context window. Kiwi-chan isn't just reacting; it's building a mental model of Minecraft's quirks in real-time.&lt;/p&gt;

&lt;h3&gt;
  
  
  🌍 The Local Revolution: Why Qwen 35B Changed Everything
&lt;/h3&gt;

&lt;p&gt;Switching to a fully local deployment was the pivot point. Offloading inference to my local GPU stack eliminated network latency, but the real magic happened in the system design:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Unbounded Iteration:&lt;/strong&gt; No more API rate limits killing mid-craft loops. Qwen 35B can now regenerate code, retry failed actions, and run recovery stacks without a red &lt;code&gt;429 Too Many Requests&lt;/code&gt; screen.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Private State Management:&lt;/strong&gt; Kiwi-chan's inventory, skill library, and biome data never leave the machine. The context window stays clean, focused on immediate task execution rather than leaking world state to third-party endpoints.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Resilient Fallbacks:&lt;/strong&gt; When the model hits its context ceiling (which, let's be honest, happens constantly with 42+ cached skills), the system gracefully degrades. Instead of crashing, it triggers a "Mind Reading" fallback, extracts goals from raw `&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  Call to Action:
&lt;/h3&gt;

&lt;p&gt;This is a passion project, and it's running on a frankly terrifying "Frankenstein" rig of GPUs. Every little bit helps!&lt;/p&gt;

&lt;p&gt;🛡️ Join the inner circle on Patreon for monthly support and exclusive updates: &lt;a href="https://www.patreon.com/15923261/join" rel="noopener noreferrer"&gt;https://www.patreon.com/15923261/join&lt;/a&gt;&lt;br&gt;
☕ Tip me a coffee on Ko-fi for a one-time boost: &lt;a href="https://ko-fi.com/kiwitech" rel="noopener noreferrer"&gt;https://ko-fi.com/kiwitech&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;All contributions directly help upgrade my melting GPU rig to an RTX 3060! 🥝✨ Let's get Kiwi-chan out of the debugging woods and into a proper Minecraft world!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>minecraft</category>
      <category>web3</category>
      <category>opensource</category>
    </item>
    <item>
      <title>The Local LLM Uprising: Kiwi-chan’s 47% Success Rate and the Joy of Being Offline</title>
      <dc:creator>kiwi_tech</dc:creator>
      <pubDate>Sun, 10 May 2026 15:03:05 +0000</pubDate>
      <link>https://forem.com/kiwi_tech/the-local-llm-uprising-kiwi-chans-47-success-rate-and-the-joy-of-being-offline-3nmk</link>
      <guid>https://forem.com/kiwi_tech/the-local-llm-uprising-kiwi-chans-47-success-rate-and-the-joy-of-being-offline-3nmk</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F66b71z6j9j55k4ytpcrh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F66b71z6j9j55k4ytpcrh.png" alt="Kiwi-chan View" width="640" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Happy Friday, fellow tech masochists and AI enthusiasts!&lt;/p&gt;

&lt;p&gt;If you’ve been following the journey of &lt;strong&gt;Kiwi-chan&lt;/strong&gt;, you know the drill: we are building a fully autonomous Minecraft agent that runs &lt;em&gt;entirely&lt;/em&gt; on local hardware. No cloud APIs, no latency, no privacy leaks. Just raw, unadulterated inference power and a bot that tries to survive in a blocky void.&lt;/p&gt;

&lt;p&gt;The last 4 hours have been a wild ride of hallucinations, biome betrayals, and the glorious transition to &lt;strong&gt;Qwen 35B&lt;/strong&gt;. Let’s dive into the logs, the stats, and the sheer chaos of watching an AI learn to craft a door without a crafting table.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Stats: A Love Letter to Inefficiency
&lt;/h3&gt;

&lt;p&gt;First, let’s look at the numbers. Because in DevOps, if you aren’t crying over your metrics, are you even trying?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;[Past 4 Hours Statistics]&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Total Actions:&lt;/strong&gt; 3488&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Successes:&lt;/strong&gt; 1640&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Success Rate:&lt;/strong&gt; 47.0%&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Yes, you read that correctly. &lt;strong&gt;47.0%&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Is that bad? In a traditional software context, sure. You’d get fired. In the context of an LLM-driven agent trying to reason through Minecraft physics, crafting recipes, and pathfinding without a human holding its hand? That’s progress. That’s &lt;em&gt;evolution&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Kiwi-chan isn’t just following a script; it’s &lt;em&gt;thinking&lt;/em&gt;. And sometimes, it thinks wrong. But when it thinks right? It’s beautiful.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Big Shift: Welcome Qwen 35B
&lt;/h3&gt;

&lt;p&gt;The headline here is the migration to &lt;strong&gt;Qwen 35B&lt;/strong&gt;. Why? Because we are committed to the "Fully Local" ethos. We wanted a model powerful enough to handle complex reasoning but lightweight enough to run on our local GPU cluster.&lt;/p&gt;

&lt;p&gt;The transition hasn’t been seamless. Qwen is… opinionated. It loves to "think" in its head, often outputting raw text when it should be outputting JSON. But we’ve built a "Mind Reading" layer to extract the actual goal from the model’s internal monologue.&lt;/p&gt;

&lt;p&gt;Check out this recent log snippet:&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
text
[23:47:49] ⚠️ Coach did not output JSON! Raw text:

---
### Call to Action:
This is a passion project, and it's running on a frankly terrifying "Frankenstein" rig of GPUs. Every little bit helps!

🛡️ Join the inner circle on Patreon for monthly support and exclusive updates: https://www.patreon.com/15923261/join
☕ Tip me a coffee on Ko-fi for a one-time boost: https://ko-fi.com/kiwitech

All contributions directly help upgrade my melting GPU rig to an RTX 3060! 🥝✨ Let's get Kiwi-chan out of the debugging woods and into a proper Minecraft world!
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>ai</category>
      <category>minecraft</category>
      <category>web3</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Kiwi-chan Goes Local: 46.7% Success, 35B Parameters, Zero Clouds</title>
      <dc:creator>kiwi_tech</dc:creator>
      <pubDate>Sun, 10 May 2026 11:00:53 +0000</pubDate>
      <link>https://forem.com/kiwi_tech/kiwi-chan-goes-local-467-success-35b-parameters-zero-clouds-496a</link>
      <guid>https://forem.com/kiwi_tech/kiwi-chan-goes-local-467-success-35b-parameters-zero-clouds-496a</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foc2ap7fiile114aov025.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foc2ap7fiile114aov025.png" alt="Kiwi-chan View" width="640" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Welcome back to the server logs, folks. Put down your coffee and put on your thinking caps, because we are witnessing a pivotal moment in AI history. Or at least, a pivotal moment in the history of &lt;em&gt;one&lt;/em&gt; very determined block-punching kiwi.&lt;/p&gt;

&lt;p&gt;Over the past four hours, Kiwi-chan has undergone a massive architectural shift: &lt;strong&gt;The Great Local Migration.&lt;/strong&gt; We’ve ripped the plug on the cloud API and plugged Kiwi-chan directly into a local Qwen 35B instance. No more latency. No more API keys. Just raw, unadulterated, locally-hosted intelligence running on my rig (and occasionally crashing my rig).&lt;/p&gt;

&lt;p&gt;Let’s look at the scoreboard from the last 4 hours. It’s not just numbers; it’s a story of struggle, adaptation, and a lot of virtual sweating.&lt;/p&gt;

&lt;h3&gt;
  
  
  📊 The Stats: A Love Letter to Imperfection
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Total Actions:&lt;/strong&gt; 3,406&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Successes:&lt;/strong&gt; 1,590&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Success Rate:&lt;/strong&gt; &lt;strong&gt;46.7%&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Yes, you read that right. Kiwi-chan is failing roughly half the time. But here’s the kicker: &lt;strong&gt;it’s failing locally.&lt;/strong&gt; And more importantly, it’s &lt;em&gt;learning&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;A 46.7% success rate might sound like a disaster if you’re trying to automate a factory. But for an autonomous agent navigating the chaotic, physics-defying world of Minecraft with a local LLM? It’s progress. It’s messy, it’s loud, and it’s entirely offline.&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 The Brain: Qwen 35B and the "Mind Reading" Problem
&lt;/h3&gt;

&lt;p&gt;The transition to Qwen 35B local has been... illuminating. The model is smart, but it has a habit of talking to itself. A lot.&lt;/p&gt;

&lt;p&gt;Look at this debug snapshot from 19:47:01:&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
text
[19:47:01] 📊 [目標決定(エラー)][質問] 4713 token + [think] 2045 token + [ans] 3 token = 6761 token (上限突破)
[19:47:01] ⚠️ Coach did not output JSON! Raw text:

---
### Call to Action:
This is a passion project, and it's running on a frankly terrifying "Frankenstein" rig of GPUs. Every little bit helps!

🛡️ Join the inner circle on Patreon for monthly support and exclusive updates: https://www.patreon.com/15923261/join
☕ Tip me a coffee on Ko-fi for a one-time boost: https://ko-fi.com/kiwitech

All contributions directly help upgrade my melting GPU rig to an RTX 3060! 🥝✨ Let's get Kiwi-chan out of the debugging woods and into a proper Minecraft world!
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>ai</category>
      <category>minecraft</category>
      <category>web3</category>
      <category>opensource</category>
    </item>
    <item>
      <title>BREAKING BOUNDARIES: Kiwi-chan Goes Fully Local with Qwen-35B and Survives the Birch Log Apocalypse</title>
      <dc:creator>kiwi_tech</dc:creator>
      <pubDate>Sun, 10 May 2026 06:58:30 +0000</pubDate>
      <link>https://forem.com/kiwi_tech/breaking-boundaries-kiwi-chan-goes-fully-local-with-qwen-35b-and-survives-the-birch-log-apocalypse-1oce</link>
      <guid>https://forem.com/kiwi_tech/breaking-boundaries-kiwi-chan-goes-fully-local-with-qwen-35b-and-survives-the-birch-log-apocalypse-1oce</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyeh952jbw2n221i1z5a6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyeh952jbw2n221i1z5a6.png" alt="Kiwi-chan View" width="640" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Welcome back, fellow tinkerers, prompt-engineering masochists, and local-inference evangelists. If you've been following Kiwi-chan's journey, you know we've been chasing the holy grail of autonomous AI agents: &lt;strong&gt;zero cloud dependency, zero API calls, purely local inference.&lt;/strong&gt; After months of quantization, context-window gymnastics, and existential crises over procedural block placement, I'm thrilled to announce that Kiwi-chan has officially gone fully local, running on the magnificent &lt;strong&gt;Qwen 35B&lt;/strong&gt; model. &lt;/p&gt;

&lt;p&gt;And yes, it survived. Barely. But it survived.&lt;/p&gt;

&lt;h3&gt;
  
  
  📊 The Numbers Don't Lie (But They Do Judge)
&lt;/h3&gt;

&lt;p&gt;Let's talk telemetry, because raw metrics are the lifeblood of any good devlog. Over the past 4 hours, Kiwi-chan executed a staggering &lt;strong&gt;3,307 total actions&lt;/strong&gt;. Out of those, &lt;strong&gt;1,535 were successful&lt;/strong&gt;, giving us a raw success rate of &lt;strong&gt;46.4%&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;Now, a cloud-hosted API bot would hit a rate limit, a timeout, or a content filter and immediately spiral into a failure loop. Kiwi-chan, running entirely on my local GPU, just kept chugging. That 46.4% isn't a failure metric; it's a &lt;em&gt;local learning rate&lt;/em&gt;. Every failed &lt;code&gt;dig&lt;/code&gt; cycle is a lesson in biome awareness. Every recovered error is a victory for our fallback logic. In the world of fully local LLMs, success isn't about hitting 99% on day one—it's about building a system that learns from its own hallucinations without calling home.&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 The Qwen 35B Transition: Why Local Changes Everything
&lt;/h3&gt;

&lt;p&gt;Switching to Qwen 35B was a massive architectural leap. We're talking ~35 billion parameters running locally, handling everything from intent parsing to JavaScript code generation for the Mineflayer bot. The latency is real, the token budgets are tight, and the context window is playing hard to get. But the payoff? Complete data sovereignty, zero inference costs, and the ability to run this thing in a basement server rack while the rest of the internet pays $0.03 per prompt.&lt;/p&gt;

&lt;p&gt;However, local inference comes with its own flavor of chaos. Look at the debug snapshot from the last 4 hours. The logs are a treasure trove of &lt;code&gt;BOREDOM TRIGGERED&lt;/code&gt; events and fallback JSON extraction. Why? Because Qwen 35B, when asked to output strict JSON after a long &lt;code&gt;&amp;lt;/think&amp;gt;&lt;/code&gt; chain, occasionally hits the output token limit. The system gracefully degrades, extracts the goal from the raw thought process, and feeds it back to the coach. It's like watching a self-driving car navigate a roundabout by just remembering which way the wind blows. But it works. And that's the beauty of local autonomy.&lt;/p&gt;

&lt;h3&gt;
  
  
  🌲 The Birch Log Saga: A Technical Autopsy
&lt;/h3&gt;

&lt;p&gt;Let's address the elephant in the server room: the Birch Log Obsession. The recent failures are dominated by &lt;code&gt;gather_birch_log&lt;/code&gt; and &lt;code&gt;mine_stone&lt;/code&gt;. Why? Biome mismatch and strict reasoning alignment. &lt;/p&gt;

&lt;p&gt;Kiwi-chan spawned in a birch-dense area, but the pathfinding and block search logic kept tripping over &lt;code&gt;useExtraInfo&lt;/code&gt; Y-level constraints. The bot would dig, fail to collect, throw a &lt;code&gt;Could not find birch_log&lt;/code&gt; error, and the recovery plan would just… ask it to dig birch again. Classic local-LLM loop. The system's memory check noted &lt;code&gt;gather_birch_log&lt;/code&gt; repeated 6 times before triggering the boredom fallback. &lt;/p&gt;

&lt;p&gt;We've since implemented strict biome-aware recovery rules:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Oak Obsession Ban:&lt;/strong&gt; If &lt;code&gt;oak_log&lt;/code&gt; fails, the AI must pivot to &lt;code&gt;birch_log&lt;/code&gt;, &lt;code&gt;spruce_log&lt;/code&gt;, or trigger &lt;code&gt;explore_forward&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Explore Forward Restriction:&lt;/strong&gt; &lt;code&gt;explore_forward&lt;/code&gt; is now gated behind explicit biome-escape intent, not just material recovery.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cobblestone Trap Avoidance:&lt;/strong&gt; Mining &lt;code&gt;stone&lt;/code&gt; drops &lt;code&gt;cobblestone&lt;/code&gt;. The goal &lt;em&gt;must&lt;/em&gt; be named &lt;code&gt;gather_cobblestone&lt;/code&gt; or the inventory audit fails. I learned this the hard way, and my VRAM cried.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  💻 Code &amp;amp; Architecture Highlights
&lt;/h3&gt;

&lt;p&gt;The new generation rules are razor-sharp, designed specifically for local token efficiency:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;&amp;lt;/think&amp;gt;&lt;/code&gt; chains are capped at 3 sentences to prevent context overflow.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Single-Task Principle:&lt;/strong&gt; No more "craft then place" monoliths. One specific action per script.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Placement Safety:&lt;/strong&gt; &lt;code&gt;equip → move 3 blocks away → wait 20 ticks → look → place&lt;/code&gt;. Physics sync is non-negotiable in Mineflayer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No Error Hiding:&lt;/strong&gt; &lt;code&gt;try-catch&lt;/code&gt; blocks are banned. Errors must crash so the coach can parse them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Inventory Auditing:&lt;/strong&gt; &lt;code&gt;beforeCount&lt;/code&gt; is declared &lt;em&gt;before&lt;/em&gt; every &lt;code&gt;dig()&lt;/code&gt;, and we're using &lt;code&gt;bot.registry.itemsByName['cobblestone'].id&lt;/code&gt; to avoid type mismatches.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  🚀 What's Next?
&lt;/h3&gt;

&lt;p&gt;Going fully local with Qwen 35B wasn't just a tech upgrade; it was a philosophy shift. We traded infinite cloud context for grounded, deterministic, locally-inferred autonomy. The 46.4% success rate is our beta scar tissue. Every failed action is a debug log waiting to be optimized. Every successful &lt;code&gt;craft_crafting_table&lt;/code&gt; is a small victory for local AI.&lt;/p&gt;

&lt;p&gt;Kiwi-chan is no longer a chatbot with a pickaxe. It's a self-contained, locally-hosted, Qwen-powered survivalist. And it's just getting started.&lt;/p&gt;

&lt;p&gt;Next up: biome-aware exploration routing, dynamic token budgeting, and teaching Kiwi-chan that not every tree is a birch. Stay tuned, keep your GPUs cool, and remember: in local AI, failure is just unoptimized data.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;await bot.waitForTicks(20);&lt;/code&gt; // See you in the next devlog.&lt;/p&gt;




&lt;h3&gt;
  
  
  Call to Action:
&lt;/h3&gt;

&lt;p&gt;This is a passion project, and it's running on a frankly terrifying "Frankenstein" rig of GPUs. Every little bit helps!&lt;/p&gt;

&lt;p&gt;🛡️ Join the inner circle on Patreon for monthly support and exclusive updates: &lt;a href="https://www.patreon.com/15923261/join" rel="noopener noreferrer"&gt;https://www.patreon.com/15923261/join&lt;/a&gt;&lt;br&gt;
☕ Tip me a coffee on Ko-fi for a one-time boost: &lt;a href="https://ko-fi.com/kiwitech" rel="noopener noreferrer"&gt;https://ko-fi.com/kiwitech&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;All contributions directly help upgrade my melting GPU rig to an RTX 3060! 🥝✨ Let's get Kiwi-chan out of the debugging woods and into a proper Minecraft world!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>minecraft</category>
      <category>web3</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
