This and the past week I have been busy with client work, and so I have been experimenting with delegating more of my MPS ecosystem work to my agents.
I have this initiative to merge the mbeddr platform into MPS-extensions that has been cooking on a back-burner for a long time but that I really want to get done eventually. I decided to ask Astra to help me orchestrate it: review what’s there, suggest next steps. I don’t trust it enough to let it work completely on its own (I worry that there are not enough guardrails in the projects), but I have an idea of an overall workflow I would like to follow: align the Gradle builds of both projects so that I can “transplant” mbeddr platform into MPS-extensions by simply copy-pasting a subfolder there, then perform the actual transplant using git-filter-repo to preserve history.
This is roughly the third or fourth time that I come back to this effort and this time I think Astra can do a good job of keeping me on track – it’s nice to be able to ask it about the current status and get a report in a few minutes. Helps a lot when context switching back to it after some unrelated work. I also like that the Codex app lets me ask a model to start a new Codex thread. This is very similar to the usual subagent functionality, but the threads are directly visible in the UI just like the threads that I started myself, and I can talk to them (as well as the model that spawned them) and directly watch what they are doing.
Separately, I asked Astra to help me with the mops presentation I am going to give in a week at LangDev in Málaga. I have already tried mops on a few related tasks and keep encountering some rough edges that I would like to polish. There’s also a missing feature: running tests. It turns out to open another can of worms because there are several ways of running tests in MPS: from Ant, from MPS in-process, and from MPS out-of-process (for performance reasons, I assume). And each approach is characterized by a slightly different code path, slightly different way of choosing tests to run, slightly different environment setup, slightly different reporting of failures, and slightly different pitfalls. All of the slight differences then multiply to give a noticeable headache.
Another gap I discovered, and I also mentioned it previously, is that I am reaching the point where adding features to
mops or improving the existing features seems to give diminishing returns (for agents, not for humans). What’s becoming
more important are agent skills for guidance. Fortunately, JetBrains has been busy adding some of their own skills for
MPS development as part of their
Projectional Agent Toolkit. Their
skills are written with their MCP tooling in mind, but they contain much useful information about general MPS
development, and so Astra was able to adapt them to use mops right away. I think that we should establish a
tool-independent skills repository for MPS, similar to my
mps-api-research repo (which has got its first contributed research
notes, by the way!), but this is yet another initiative that I don’t have capacity for right now, so it will have to
wait, probably until after LangDev.