Show HN: Rowboat – Open-source IDE for multi-agent systems
70 points
6 hours ago
| 6 comments
| github.com
| HN
Hi HN! We’re Arjun, Ramnique, and Akhilesh, and we are building Rowboat (https://www.rowboatlabs.com/), an AI-assisted IDE for building and managing multi-agent systems. You start with a single agent, then scale up to teams of agents that work together, use MCP tools, and improve over time - all through a chat-based copilot.

Our repo is https://github.com/rowboatlabs/rowboat, docs are at https://docs.rowboatlabs.com/, and there’s a demo video here: https://youtu.be/YRTCw9UHRbU

It’s becoming clear that real-world agentic systems work best when multiple agents collaborate, rather than having one agent attempt to do everything. This isn’t too surprising - it’s a bit like how good code consists of multiple functions that each do one thing, rather than cramming everything into one function.

For example, a travel assistant works best when different agents handle specialized tasks: one agent finds the best flights, another optimizes hotel selections, and a third organizes the itinerary. This modular approach makes the system easier to manage, debug, and improve over time.

OpenAI’s Agents SDK provides a neat Python library to support this, but building reliable agentic systems requires constant iterations and tweaking - e.g. updating agent instructions (which can quickly get as complex as actual code), connecting tools, and testing the system and incorporating feedback. Rowboat is an AI IDE to do all this. Rowboat is to AI agents what Cursor is to code.

We’ve taken a code-like approach to agent instructions (prompts). There are special keywords to directly reference other agents, tools or prompts - which are highlighted in the UI. The copilot is the best way to create and edit these instructions - each change comes with a code-style diff.

You can give agents access to tools by integrating any MCP server or connecting your own functions through a webhook. You can instruct the agents on when to use specific tools via ‘@mentions’ in the agent instruction. To enable quick testing, we added a way to mock tool responses using LLM calls.

Rowboat playground lets you test and debug the assistants as you build them. You can see agent transfers, tool invocations and tool responses in real-time. The copilot has the context of the chat, and can improve the agent instructions based on feedback. For example, you could say ‘The agent shouldn’t have done x here. Fix this’ and the copilot can go and make this fix.

You can integrate agentic systems built in Rowboat into your application via the HTTP API or the Python SDK (‘pip install rowboat’). For example, you can build user-facing chatbots, enterprise workflows and employee assistants using Rowboat.

We’ve been working with LLMs since GPT-1 launched in 2018. Most recently, we built Coinbase’s support chatbot after our last AI startup was acquired by them.

Rowboat is Apache 2.0 licensed, giving you full freedom to self-host, modify, or extend it however you like.

We’re excited to share Rowboat with everyone here. We’d love to hear your thoughts!

flynumber
2 hours ago
[-]
Now this is what I'm talking about — this checks all the boxes for me.

I was looking at "Agent builders" for a while now and nothing really stood out. They all seemed to use a "node" type structure, while I was looking to tell something what I need using natural language.

The only thing that came close was Vessium, but I never heard back after adding myself to the waiting list weeks ago. I also wasn’t so hot about their questions either — "Are you cool with paying for a product just to try it," or something to that effect. I’ll admit though, I said yes. =)

Either way, congrats on the launch and wishing you much success.

reply
segmenta
1 hour ago
[-]
Thanks! We wanted to have the copilot planning and building out agents be a core part of Rowboat (like how Cursor works with code).
reply
asnyder
4 hours ago
[-]
This sounds really really nice. Potentially exactly what I've been hoping would exist. Thank you for putting it out there!

Will try it out over the weekend. Exciting stuff.

reply
segmenta
3 hours ago
[-]
Thanks, that's great to hear! We'd love to learn what worked and what didn't for you.
reply
esafak
2 hours ago
[-]
1. Are you going to support Google's A2A protocol?

2. Are you going to support stateless chat?

reply
akhisud
1 hour ago
[-]
1. A2A is on our roadmap (still exploring), for agents built on Rowboat to communicate with external agents. I assume that's what you mean as well.

2. Rowboat agents are technically stateless in that they do not store any messages and state between turns. Our HTTP API [0] requires previous messages and state to be explicitly passed from the previous turn to the next turn. For now, the state is pretty simple - just the name of the last agent that responded to the user. This allows the system to start off directly from where the previous agent left off. The Python SDK [1] manages the state for you. Does that make sense?

[0] API docs - https://docs.rowboatlabs.com/using_the_api/

[1] SDK docs - https://docs.rowboatlabs.com/using_the_sdk/

reply
sirjaz
3 hours ago
[-]
It would be awesome if this could be wrapped around a native app rather than another webapp. Otherwise, great job!
reply
gavinray
1 hour ago
[-]
Why do you want to shove a web app into a native window?
reply
segmenta
2 hours ago
[-]
TBH we weren't sure if people preferred a native app or a web app for this kind of tool. This is useful feedback! We are trying to figure out how to bundle the micro-services together into maybe an electron app.
reply
ramnique
2 hours ago
[-]
Just to add more details here - currently the dashboard is a Next.js app, but the agents runtime (and Copilot) are Python apps since they're using the OpenAI agents sdk. We're trying to figure out the best way to bundle these into a single native app.
reply
sirjaz
2 hours ago
[-]
You could use tauri and use the native webview of the particular os
reply
ramnique
2 hours ago
[-]
We'll check this out, thanks!
reply
jstummbillig
3 hours ago
[-]
Web is native
reply
justanotheratom
4 hours ago
[-]
Congratulations on the launch. Suggest adding the demo video right in the landing page. That is the first thing I would be looking for. IMO.
reply
segmenta
4 hours ago
[-]
Thanks! We will put it out on our website.
reply
owebmaster
1 hour ago
[-]
I'm happy it is not another VSCode fork. But isn't this missing a text editor to be called a proper IDE?
reply
segmenta
55 minutes ago
[-]
Fair point. Increasingly the workflow for multi-agent systems involves structured agent instructions (almost resembling code), testing, connecting tools and improving agents. Given this we decided to call it an IDE.
reply
85392_school
1 hour ago
[-]
IDE just stands for Integrated Development Environment, so something that doesn't edit text could still be an IDE
reply