Building a CLI coding agent that can execute multiple tasks in parallel! Minimal AI use, primarily for debugging and Python packaging.
Tools:
- Gemini API for LLM serving
- CrewAI for Python agent framework
- git for tracking and consolidating agent changes
No followers yet
Once you ship this you can't edit the description of the project, but you'll be able to add more devlogs and re-ship it as you add new features!
I set up the CLI! It definitely took longer than the time tracked because I had to read a lot of documentation about Python packaging.
I've set up all the crews! There's the inputhandler crew, which (1) validates what the user input is and (2) splits it into multiple tasks; Then, using the multiprocessing thread, I can kick-off multiple engineer crews, which each (1) create git worktrees for their respective task, (2) make file edits to complete the task, and (3) commits their changes to their worktrees; Finally, the outputhandler crew handles git merges and merge conflicts to combine the changes of all engineer crews. Working on CLI next. The trouble with that is how the steps for the tasks running in parallel would be displayed...
I changed the agent framework from adk (too little control) to crewai (also too little control). When that didn't accomplish what I'd like it to—running multiple agents asynchronously—I got too lazy to find a new framework or wire up a bunch of LLMs with tools myself, so I devised the obvious plan of running multiple crews asynchronously, each containing a single agent.
This way, I can, using hard code, also spawn any number of crews, each containing a single engineer, according to the number of tasks I have.
I also had to do some debugging.