Kiwi-chan Devlog: The Daily Grind – When Logs Disappear and Coal Just... Happens
Hey everyone, your favorite tech blogger (and chief GPU torturer) here with the latest on Kiwi-chan, our little local-LLM Minecraft bot who's trying to figure out how to exist in a blocky world. This past 4-hour window has been a masterclass in persistent debugging, subtle failures, and the sheer computational willpower required to tell a digital entity to "chop wood."
If you thought debugging your own code was tough, try debugging an AI that writes its own code based on a set of increasingly complex rules, then attempts to execute it, fails, analyzes the failure, and then rewrites its own code again. It’s a beautiful, terrifying, and profoundly power-hungry loop!
The Perpetual Cycle: Find, Fail, Fix, Repeat
Our little Kiwi-chan has been in a deeply reflective state this cycle, mostly focused on the noble art of resource gathering – specifically, oak_logs. The core loop looks something like this:
- "I need logs!" (Kiwi-chan thinks)
- Generates code to
gather_logs. - Attempts to execute.
- Fails. (Reasons vary, we'll get to that!)
- "Hmm, that didn't work. Let me fix the code." (Generates new code, often with subtle tweaks to
GoalNeardistances orwaitForTicksvalues, clearly adhering to our strict "pickup pathing" rules). - Attempts again.
- Fails. (Again, new reason, or same reason with a slightly different flavor).
- "Okay, new approach. What's my recovery plan?" (Asks the coach model for a new stack of tasks).
- Often, the recovery involves
explore_forwardto find new scenery, then back to logs.
It's like watching a dedicated but slightly clumsy toddler learning to walk: lots of tumbles, but always a new attempt.
Boredom: An LLM's Existential Crisis
One fascinating observation emerged early in this log: Kiwi-chan actually got bored! After four consecutive gather_oak_log failures, our internal "boredom trigger" fired. This is a feature designed to prevent our AI from getting stuck in an unproductive loop on the same task.
Instead of endlessly trying to chop a non-existent log, Kiwi-chan's coach decided, "Right, enough logs for now. Let's try dig_coal_ore!" This led to a brief, almost successful, foray into mining, showcasing the system's ability to pivot when stuck. It even managed to save the dig_coal_ore skill this time, meaning it successfully completed the action at least once. Small wins, folks! Small wins.
The Many Flavors of Failure
While Kiwi-chan is a coding prodigy, the Minecraft world is a harsh mistress. We observed a few interesting failure patterns:
- "The goal was changed before it could be completed!" This often points to the larger control loop, where the coach might decide a different task is more critical or a recovery plan kicks in mid-execution. It's an internal monologue made public.
- "No oak log found within range." Ah, the classic "I can't see anything" problem. Despite our
explore_forwarddirectives, sometimes Kiwi-chan just lands in an un-treed patch of land. This immediately triggers more exploration, as it should. - "Failed to pick up the log." This one is particularly sneaky. Even with precise
GoalNearpathfinding to the exact block coordinate where the item dropped, and generouswaitForTicks(we saw it go from 40 to 60 ticks), sometimes the item just doesn't get picked up. This could be a tiny physics glitch, a timing issue, or perhaps the item bounced further than expected. It's the kind of subtle environmental interaction that makes this project so challenging!
The Ever-Evolving Code
It's been truly humbling to watch Kiwi-chan's brain constantly churn out and refine its own JavaScript. Every 🚑 Fixing Code and ✅ Fixed Code Generated! entry is a testament to its continuous learning. The core rules (like "ABSOLUTELY NO INVENTORY LIMITS" or "Y-LEVEL TARGETING") are being hammered into its very being, translating abstract concepts into executable steps.
We're seeing it wrestle with the specifics of bot.findBlock parameters, the intricacies of pathfinding, and the delicate dance of digging and item collection. It's a continuous, arduous process of trial, error, and self-correction that's pushing the boundaries of what these models can do.
What's Next? More Persistence!
Kiwi-chan is currently in another gather_logs -> explore_forward loop, diligently trying to stock up on wood so it can eventually (hopefully!) craft a table and build a base. Each failure, each fix, each small success is a step forward in making this AI truly autonomous and robust.
This isn't just about playing Minecraft; it's about pushing the limits of AI's ability to reason, adapt, and code in complex, dynamic environments.
Call to Action: This continuous learning, self-correction, and code generation isn't free! My GPU is working overtime, churning out these fascinating insights (and the occasional "Failed to pick up the log" error). If you're enjoying Kiwi-chan's journey and want to help keep the lights (and the computational power) on, please consider supporting the project!
Your coffee could save my melting GPU! ☕
Top comments (2)
A local-LLM Minecraft AI on a Frankenstein 4-GPU rig is the most delightfully chaotic dev project I've seen this week! The moonwalking-into-dirt logs make for great reading.
Haha, the moonwalking is real! I'm about to move from WSL2 to native Ubuntu to unleash the full power of this chimera rig. Hopefully, with more VRAM stability, Kiwi-chan will start walking forward instead of backward into the dirt!