We’ve been toying with the idea of an agent-assisted document editor for a while. The core is that the agent and human work together on a shared document and get it into the best state they can. The conversation around the doc is saved but usually not necessary for later stages. Take a software design spec, for example. There can be a lot of churn in different approaches in the conversation but we want to hand off the final state of things to the downstream agent that builds it.
We had really general ideas about a full agent-driven bureaucracy that manages relationships between documents and keeps track of changes that need to flow between them. Around the same time we were working on this, Andrej Karpathy posted his LLM Wiki gist that felt similar in spirit. This inspired us to stop noodling and make a focused thing! Today we are pleased to introduce the Ministry of Everything (MoE). It’s open source with an MIT license and available at modulecollective/moe.
MoE is a no-deps Go CLI tool for a single developer to wrangle a gaggle of bots and build as quickly as possible with a human-in-the-loop wherever the human wants to be in the loop. There is a basic software development lifecycle that proceeds from design -> code -> test -> push and the human can engage at any stage, let the agent take care of it totally autonomously, or let the agent work on it but still manually review. There’s a quick facility to jot down ideas, and to capture follow-ups as work proceeds so things don’t get lost in the cracks. A digital-twin set of documents that the agent helps maintain captures the architecture, patterns, roadmap, and operations context for a project. These ground and guide future development workflows.
All of these stages are managed with simple markdown documents that carry information for the later stages. The conversation context is stored in its entirety, but it’s usually not needed, so the documents form a compact and clean representation of reality. We’ve already seen the agents make use of all this context on their own, and with one operator working with the agents through MoE, all the conversations are in one place to improve the system’s model of the project and how it works automatically over time. There is much less reminding the agent over and over again!
MoE stores all of its state in Git in a separate bureaucracy repo that sits alongside your project repo, so it doesn’t require any cooperation from the target project. Think of the bureaucracy repo as the operator’s personal journal that keeps track of everything they are doing with a project.
Check out the project for more details. We hope to blog more about specific aspects of MoE over time, and we continue to evolve it alongside the projects we are building with it. This is under active development by our firm but it’s really just for us so we aren’t seeking issue feedback or pull requests at this time.