Town: Discord meets pixel-art NPCs
I’ve been playing around with the concept of using sub-agents to stress-test my own logic or act as a sounding board for technical docs, and this project, "Town," takes that workflow and wraps it in a game engine. The engineering behind it is what caught my eye: each NPC isn't just a chatbot; they are scoped agents with specific tool permissions. You can't just ask a barista to run a database query if the dev only gave them "talk" permissions. If it's a detective NPC, they might have a close_case tool. It’s a clever way to manage LLM hallucinations and keep the scope tight.
The whole thing is open source and surprisingly easy to deploy. A "town" is literally just a JSON file and some MDX folders. The identity and system prompts live in the MDX frontmatter. There is even a Claude plugin that supposedly builds the entire environment from a rough description, which sounds like a massive time-saver for rapid prototyping.
Here is what's available if you want to poke at it:
If you want to see the source or build your own, check the links below:
Source: https://github.com/RedPlanetHQ/townExplore Towns: https://town.getcore.me/exploreIt's a wild way to think about community engagement and AI workflows. Instead of a static chat interface, you're interacting with a persistent, agentic world. Definitely worth a look if you're into agentic workflows or just want to see how far you can push LLM tool-use in a real-world (well, pixel-world) scenario.