← Back to Dev Log

Kimi K3 and the death of the loop

I spent too much money

Kimi K3 dropped. It's an open-weight model, it's pretty clearly great, and I have spent way too much money on it already. No regrets though.

So far I've used it to come up with new UI designs. Shifted from a hard-coded sidebar for Party, Quests, and Inventory to a dynamic panel system where the ruleset can declare what panels appear. Then I went further and started abstracting the ruleset system away from just tailoring to the D&D SRD.

I'm hoping to eventually make something so extensible that a ruleset could theoretically declare: the LLM narrates exploration, then hands off to a purely engine-driven battle system. That battle system could even be a full Godot Final Fantasy style game. Still way out of scope for launch, but I want the framework to support it. The ruleset should be able to say "narrate until combat, then call this tool that brings up a 3D Godot game in the panel, passing in parameters to populate the party and enemies." Whether anyone builds that Godot battle system is a separate question. The point is the framework wouldn't stop them.

Loops are out, drive-by is in

I look back on the plan-review-build-test-repeat stuff I was doing with DSV4 Pro with a bit of cynicism now. But I also have to remember: it genuinely got me a working agent loop with zero technical understanding of what that even was at the time. I couldn't have told you what a tool-calling loop was. DSV4 built one anyway.

Still. Here's the thing I've figured out since Kimi K3 arrived. Running those DSV4 loops and just asking Kimi K3 to do stuff from a single prompt cost a similar amount of money on average. Very limited dataset, very rough estimate, do not quote me. But Kimi K3 gets far better results for roughly the same price. The catch is those costs can blow out fast. Especially if it gets stuck trying to interact with the UI during a test phase and can't, so it keeps going because it feels like it can't end its turn until it's figured that out.

So here's the workflow I've settled on. Initial design back-and-forth with Kimi K3. Then I swap models in the same chat session to DSV4 Pro and do a "drive-by." The drive-by skill is simple: DSV4 inherits the full chat context from the conversation I just had with Kimi. It doesn't need to figure anything out. The thinking is already done. It just needs to take the design decisions from the chat history and write the code. DSV4 does the grunt work. Writing 1000-line scripts. Following patterns that Kimi already established. It's dramatically cheaper than having Kimi write all that code itself.

Then I swap back to Kimi K3 for a quick audit. Restricted to just the chat history, no complete repo audit. Hallucinated methods get caught by the test suite the same way any bad code does. Wrong function names produce import errors or attribute errors. Bad indentation gets caught by Python's parser immediately. I don't need to spend Kimi tokens on catching stuff that regular tooling catches for free.

So far so good. Right now I'm working through a structural change to use MCP for the LLM interacting with the engine. That way the ruleset can advertise all its tool calls through MCP and the engine doesn't need to hard-code what tools are available.

The Builder Agent goes quick-start

The Builder Agent is now fully able to go through the quick-start flow I intend to include by default. Pick the SRD ruleset. Pick the Severed Lands setting. Pick the Rift Awakening pre-made campaign plan. Done. A new user can see what the action looks like with as little setup as possible. The full Q&A tree that extends to custom plans, custom settings, custom rulesets will all flow on from there.

Next step: fixing the interview flow. To get the agent loop functioning the way I wanted, I had a pattern of think, ask, think, ask, think, ask. The LLM would pause, decide what question to ask next, call a widget, wait for the answer, repeat. It works. It's also slow and chatty. I'm replacing it with a proper interview question tree. All the questions get sent at once. All the answers come back at once. The builder agent gets the full picture in one shot instead of assembling it piece by piece across six turns.

Kimi K3 is definitely going to accelerate the release. Far less manual review is needed now. More on the MCP stuff when it's working.