Damn, this is incredible! I've only had a brief chance to play with it but looks very promising so far. I'm glad, but not surprised, that it was able to reproduce the engine functionality. There was another experiment I did with the game "Captain Bible" (
https://github.com/peterkelly/captain-bible-re) where i had Codex reproduce a mostly-working implementation of the game engine.
Really nice work on the LSP + monaco editor integration btw.
What I love most is the concept - and the non-AI parts of are something I'd been dreaming about for years (interactive editing), having been inspired by Smalltalk and its ability to change the behaviour of a program (and in fact any part of the operating system) while its running without requiring a restart.
I can only imagine how much the game devs at Sierra would have loved to have something like this back in the day. I've heard some of the stories Al Lowe has told about what it was like trying to program in AGI back in the day and he often found it frustrating. That said, the idea of a high-level domain-specific language for making games is something that gave Sierra a massive advantage. And in the AI age I'm a big believer in the idea of using DSLs as a target for agentic coding due to the fact that simplicity can lead to better results (less of a search space) and be more comprehensible.
At my previous job, we had our own DSL we'd developed for scientific workflows (
https://github.com/peterkelly/rex), which we used as part of a drug-discovery platform. Researchers could interact with it via an agent and could ask it to carry out various types of in-silico experiments and it would write a program in the DSL to carry out the experiment. Most of our users didn't even know it was generating code since it all happened transparently in the background.
I think there's a really interesting opportunity here for applying the concepts from the development environment you've created to a modern engine (either existing or, as would be my preference, a custom-built one) as a way of making interactive storytelling accessible to a wider audience. I could see kids experimenting with this, initially using English but then eventually learning what the generated code does. AGI is pretty limited as a language and I'm sure we could come up with something that had more of the modern conveniences people expect. I've always thought of AGI as a great tech to experiment ideas with, due to its simplicity, before going on to apply them to more advanced systems. Have you had any thoughts about taking the idea further?