I break work up into four loose tiers:
1. flash - deepseek flash 4.1 / luna / haiku
2. pro - mercury 3 / terra / sonnet
3. heavy - opus 5.5 / sol
4. frontier - fable 5.1 / astra / argon
The decision of how to classify each piece of work is done by the coordinator (typically Opus 5.5...). If a card fails at a particular tier, it's going to get escalated up tiers until it gets sorted.
Each card has multiple readers (code review). I find mercury is very good at reading quickly. Deepseek as well. I will be honest, I think for 99% of stuff I need to do Opus 5.5 @ medium is ideal. I just use the additional models for different points of view, especially the absolute frontier models fable, astra, argon at max effort for security audits and code review.
For example, my work on schema, my protobufs/flatbuffers language replacement for multiplayer games, parallelizes very nicely across 15 languages on the sprint system. https://github.com/mas-bandwidth/schema.
See roadmap here: https://github.com/mas-bandwidth/schema/blob/main/ROADMAP.md
Very difficult to coordinate this amount of work in || without some sort of structured work system.
Even more AI coding work here if you are curious: https://patreon.com/masbandwidth
I did some prototype games, one thing that worked really well for me was having a deterministic replay system where the agents could drive the gamestate via recorded inputs. Kept me from having to do any playtesting or debugging in the main agentic loop.
https://github.com/mas-bandwidth/fixed3d -- port of box3d to fixed point :)
https://github.com/mas-bandwidth/fixed -- fixed point math library
I do you think now need to watch out for the opposite problem. These things become so easy to build that the temptation is just to go ahead and build. But unless you really do need them, all that new code just goes to waste. The cost to produce has become very low, but sometimes the value can end up being negative.
Big fan of RDF, your sexpr notes are hilarious https://github.com/mas-bandwidth/fixed/blob/main/docs/roadma...
What tooling do you have around this?
And then the AIs can easily write tooling in lisp to manipulate these structures, and you can talk to them from some golang program in a verb like way, sort of like a redis client.
I was planning on doing this to effectively replace issues/PRs in git, and have my entire future work set that I import into sprints stored inside this lisp sexpr.
It's implemented in nova-sprint as a tracer bullet (search for "roadmap" scripts in lisp...), but I definitely see this as something I want to keep pushing harder on.
It's a really effective thing, storing all your work in a data structure, and then being able to manipulate that data structure. beats having to hammer the GitHub API when you ask questions like "OK so what else can we bring into the sprint now?"
=)
At what point do you think you tip over from getting away with a handful of agents working on different things in one repo, to needing a comms/coordination system for your tasks?
I think there must be a burden to run this and I'm guessing it only pays off when you get to some kind of scale. What is that scale? Other human team members? Sheer workload?
Past a certain number of things, you can have a conversation with Claude in one session but even in Fable 5.1 or Opus 5.5 it's going to forget some and they just scroll out of context and get compacted away. Once enough things are in flight they start getting forgotten, or half-started, then the next thing is in flight and so on. When I start noticing this, I know it's time to switch over to the sprint system.
The other thing is simply I want to go really wide and work on something and it's too slow when working with traditional child agents per-model. The LLMs generally won't "work to width" naturally (for whatever reason) and the sprint system is really good at pushing and ensuring that each model involved in the sprint not only works, but works at whatever particular width they are assigned (16, 32, 64 cards...) and stays working that way.
If you work without a sprint system, you'll find yourself continually reminding the AIs manually "hey, can you please work to width?", "hey, you have 10 cards ready can you please work on them now?". These things are "squishy" when worked on in LLM space, they'll kinda do it, then a few hours later forget, and by morning they're puttering along at a few cards each.
But by putting everything into mechanical structure (sprint system that drives all the LLMs via push notifications), they will more reliably remember to work at width, they will not forget anything they were assigned to work on (this is stored in redis cards, not in their memory that compacts), and the whole system can work much wider and you get done a lot faster!
I can't.see myself specifying 60 bits of work to work on in parallel. So I guess you're doing some kind of task decomposition.
But I'm not convinced that this is that much more efficient, given the complexity of the coordination overhead.
E.g. in my mental model, 3 big tasks takes about the same amount of time as 60 small tasks after planning and coordination.
What's your experience?
Edit: and all the harnesses do subagents pretty well now anyway, so dynamic parallelism when you need it.
I have one agent and already find it quite intense to outsource code writing and basically just make and document decisions.
I feel like I could be rich working like you, I also feel like it is impossible for me to meet the needs of my clients if I'd work like this (so I can't be rich, it's a paradox). I wouldn't be able to answer their questions (without the active agent on-call, context window fully loaded), I wouldn't be able to explain just where the data model needs changing, or why some role really can't exist they way they envision etc, etc, etc.
I could of course branch the whole project and basically discuss multiple implementations during stakeholder meetings, but then still I'd need to explain the advantages/disadvantage of choosing one system over the other and guide them through it.
Can the AI do it? Not yet I think. Maybe someday, for now I feel like clients of mine simply have the vocabulary, nor the mental models, to guide the LLMs. Ie, they have no idea of what one-to-many is, or why it's smart to put some information in separate tables, whereas some information is ok to filter row-based on a user attribute, etc.
I've been having conversations with normies about how they can use AI, but they don't really seem to grasp the basic idea of an automation, something that does something or 100 times something, on some trigger. The don't understand that a loop is free, that 100x is as difficult as 1x.
Ie, I tell someone, you could set up something that makes a Word doc for you with math problems, based on a theme, optionally picked from a pool of "approved" problems. That'd take about 30 min to make. "No I can't do that every time, 30 minutes!" No, I mean then it's there, forever, for all your colleagues to use, I mean. Ok how?
Well... I don't know copilot in MS365 and stay away from it, but I can imagine it can do with Word and Excel what I do with Markdown and websites?
I'm starting to see MS' "problem" now :)
Hah, I think there's quite a few of us like this. We didn't have the time to spend doing this work in the past, but now with AI we can have it build what we want by giving it our ideas and framework.
It's going to be interesting to see what kind of new innovations across various industries comes from this over the next few years as the subject matter experts gets to work on their own ideas.
People who have a bunch of ideas they want to create!
The people who get really pissed off about AI coding seem to be all about the doing, but those who are really excited about creating things and the end result not the process come out OK