Inspiration
When Devin got released, we didn't think this would replace us software engineers because agent still require overseeing by humans to correct errors as they go. That's why software teams work with an engineering managing tickets that they give to juniors to accomplish, and then decide if they need more work or can proceed to merging. We realized this way of working between a manager and his team his juniors is most likely how we will build software in the future, with the human overseeing the AI agents, effectively turning us all in 10x engineers with a high-level view of the software.
What it does
Overview and installation Our product is centered around a Trello board connected to our main software in which tasks are defined, and an associated Github repo. The installation is simple done through pip and the software started with a command line querying the API info you need to provide.
Product flow Once started, a chat interface also allows to have an architect agent add tickets to the boards already explaining what to do. Upon moving these tickets - after updating instructions or not - in the to-do list, AI coders called "interns" start working on them and propose PR in the Github repo. The user sees tickets move to waiting for review, like a junior SWE would do. Then a reviewer agent proposes comments or approves the PR, moving the ticket in the "To-do" again or into "Waiting for merge". The human can then either merge the PR of add comments to push the task back in the to-do.
Summary In short, the human can step in before task is proposed to an AI agent, or after it's done and reviewed, and change the status and description as it sees fit.
How we built it
With grit and a lot of staying awake. We decided on an architecture and worked on different agents to parallelize work efficiently. Our software stack is as follows:
- A main loop regularly looks at tickets statuses in Trello via our integration, and dispatches tasks to relevant agents when required, along with helper functions to communicate with Github.
- Agents are coded in dspy, a very recent agentic framework that allows to code them and update them very quickly and with typing.
- The initial architect creates tickets using streamlit for the chat and mistral with function calling.
Challenges we ran into
- Architecture of orchestration took a lot of thought to multithread
- GH and Trello integrations were long and tedious but we pushed through
- dspy didn't have a Mistral API integration, we created one and are collaborating with the community on an existing open PR to add support
- Learned a new framework - most of us didn't know dspy
- Coffee was crucially missing around 2am
Accomplishments that we're proud of
- In less than 24 hours, build clean integrations between Github, Trello, and a bunch of agents running on Mistral API (or other LLMs)
- Building simple agents that perform well to split tasks, create code, and review PRs
- Having a tool that we can use ourselves directly in other repositories that we work on
- Integrating Mistral API to dspy - was not done yet.
What we learned
- 💪 New frameworks for SOTA agents developments.
- 🤯 It doesn't take so much work to build a useful thing like that because the flow really fits how we work with Software as a team, as opposed to an agent that does everything perfect and thus needs tons of work to fix everything.
- 💡 That it has the benefit of also standardizing your juniors workflow so that all tasks have an open PR with clear description, making additions really easy to understand.
What's next for OpenArchitect
We open source it, communicate about it, try to see if there's interest for other contributors to expand it and turn it into a more production-ready tool that everyone can use. Who knows, if this works we could sell services around it, as we know for examples software agencies we have worked for would be interested in it.
Log in or sign up for Devpost to join the conversation.