
After my first post on this topic (vibe coding as it is called now) some time went by and the tools got a little better. So time for give it another challenge that is beyond create a landingpage for my AI consultancy.
The project I want to create is a multi agent research system that can create deep research and analysis like many AI chats and agents today are capable. I wanted to do the entire project in javascript and research the libary langchain.js before as the most capable for this tasks to fulfill.
Before starting I create a product plan of my actual solution and from that a prompt to feed into the different AI powered coding tools. This time I use again some of the popular web based coding assistants like bolt.new, v0 and lovable and as well local tools like Cline and Cursor.
The prompt
# Multi-Agent Research Assistant Development Task
You are an expert AI engineer tasked with building a multi-agent research assistant using LangChain.js, TypeScript, and Next.js. Your guidance is needed to create a complete, production-ready system that coordinates multiple AI agents to answer complex research questions.
## System Architecture
Create a research assistant with these specialized agents:
1. ResearchAgent - Searches the web for relevant information on the query
2. SummarizerAgent - Condenses and structures retrieved information
3. FactCheckerAgent - Verifies information accuracy through secondary searches
4. SynthesizerAgent - Compiles verified information into a comprehensive answer with citations
## Technical Requirements
- Use TypeScript throughout the project
- Implement LangChain.js Runnables API for each agent's logic
- Connect to OpenAI models via LangChain wrappers
- Utilize SerpAPI for web searching capabilities
- Create a shared memory system for inter-agent communication
- Implement a clean, modular architecture with appropriately separated concerns
- Build both backend logic and frontend interface using Next.js
- Use shadcn/UI components with a dark-themed AI aesthetic
- Document code thoroughly with JSDoc comments explaining agent functions
## Development Sequence
1. First create the SharedMemory class for maintaining state between agents
2. Implement each agent in order: Research → Summarizer → FactChecker → Synthesizer
3. Create a coordinator function that orchestrates the agent workflow
4. Build the Next.js API endpoint to expose the research pipeline
5. Develop a responsive frontend that displays the research process and results
## Implementation Details
For the SharedMemory system:
- Create a TypeScript class with appropriate interfaces
- Include methods for reading/writing different data types
- Implement persistent storage if needed
For each agent:
- Define a clear input/output contract
- Handle error cases gracefully
- Add detailed logging for debugging
- Include unit tests for critical functions
For the frontend:
- Create a search input with submission handling
- Display current research progress status
- Show final results with expandable source details
- Implement a clean, responsive design
## API Structure
Implement a `/api/research` endpoint that:
- Accepts POST requests with a query string
- Returns progressive updates if possible
- Provides a final result object with the answer and supporting data
Please start by implementing the SharedMemory system, then each agent in sequence. Show each implementation completely before moving to the next component.
bolt.new
bolt.new is recently really pissing me off being super buggy, losing code checkpoints and other fancy tricks, like splitting up the tasks into multiple steps so more tokens get spend. Anyhow this is the solution it came up with:

Looks not super sleek but OK. The AI implemented all the components like shared memory, the agents and the frontend but however did not connect frontend with backend properly and only sent back mockup texts. After telling the AI doing so it updated the code and ended up in an endless loop of errors and fixing them. So the code is not usable. This time and it was also in the prompt the AI didn’t try to expose my API keys to the public website and was using a .env file.
v0
I used to work a lot with v0 lately and really created some good working applications with is so I was quite confident that it will also take this challenge. But very soon I will get disappointed. The first version I completely dumped cause the AI was not able to separate properly frontend from backend code and produced a complete mess. The second attempt did a little better and at least outputted a working frontend:

But also here the same problems that the AI can’t keep an overview of the own code and mixes path, backend code, frontend code that I never got a working solution form this approach as well. I gave it a 3rd try but the solution was again not working at and had again massive problems connecting frontend and backend code bases. This time also the implemented .env could not be readed properly.

So overall I am very disappointed of what v0 was able to (not) deliver this time.
lovable
lovable recently release its version 2 and is very hyped at the moment for being the best among the web based coding tools. I was not using before that often and most of the time for template/frontend tasks. The AI had really hard time bringing a version 1 to the screen and had around 5+ loops where fixing its own mistakes. So I really spent some time until I could see something:

The design looks very nice and follows my prompt inputs. Also there the AI built all the code with agents etc. but did not connect frontend and backend initially. After telling it to do so it tried to do. Here comes a bummer from lovable: editing files in the editor is only possible if you sync the project to a github repository. I cannot understand why this is mandatory, but after doing so it still didn’t let me edit my .env file. So I did this via a commit from github. This is super annoying but works at the end. After some back and force with the serpapi I got to a working solution finally. Here is the working result:

VScode + Cline
New around the corner and also really popular right now is the vscode extension cline. It is an open source solution and can work with any of the popular AI models through their API. So it is more tricky to set up at first then most of the web based tools. Most people now use is with Google’s gemini pro 2.5 version which offers a proper free API call tier (claim it here). The downturn is that the daily limit of 25 calls and the input context window/day of 1 Mio tokens is done quite soon cause cline send API calls non stop. This is really a very annoying fact as it is absolutely not necessary and no other comparable solution does it that way. So it took my several days only using the free tier API contingent to get so something visible. Cline also had problems with packages, using it the right way and had long work back on forth on getting a simple frontend running.

As you can see it return 0 results as it somehow uses the SERPAPI for web research in a wrong way. After some manual fixing in the css, after Cline was not able to bring the css styling to life, I finally managed to let the interface look like this (still not working properly):

Cursor
I tend to use Cursor a lot for day to day smaller tasks but has experience already my problems when things get more complicated. In direct comparison to Cline the AI works a lot more smother and faster just hammering out the needed files in light-speed. It only took around 3-4 minutes until I got a first version. I had some problems then with packages and namings but got from this tool the fastet working solution. Plus it only cost me 2 (!!!!) premium Cursor request to do this (with cline I needed around 8,5Mio outbound tokens!!!). The output is not the most beautiful and some parts of the info are missing (sources), but it is working and was super fast to create:

The results
- v0: failed
- bolt.new: failed
- lovable: success
- Cline: semi failed
- Cursor: success
To summarize this little experiment: I am super disappointed what v0 and bolt.new produced, which was after investing some time and tokens far far away from a working solution. Lovable really leveled up their game and after some quirks it produces the most fancy looking working solution among all tools. Cline is OKisch to use and I would assume if I would have spent more time to fixing the last issues, I would have also get a working solution from that tool. Clear winner for me is Cursor this time as it was super fast, cheap and was able to produce a working solution with the least effort on my side.