rowboat/README.md

107 lines
3.5 KiB
Markdown
Raw Normal View History

2025-04-03 23:11:40 +05:30
![ui](/assets/banner.png)
2025-01-13 15:05:09 +05:30
2025-04-07 16:49:47 +05:30
<h2 align="center">Let AI build multi-agent workflows for you in minutes</h2>
2025-04-03 19:58:39 +05:30
<h5 align="center">
[Quickstart](#quick-start) | [Docs](https://docs.rowboatlabs.com/) | [Website](https://www.rowboatlabs.com/) | [Discord](https://discord.gg/jHhUKkKHn8)
</h5>
2025-04-07 16:49:47 +05:30
-**Start from an idea -> copilot builds your multi-agent workflows**
2025-04-07 16:13:49 +05:30
- E.g. "Build me an assistant for a food delivery company to handle delivery status and missing items. Include the necessary tools."
2025-04-07 16:49:47 +05:30
- 🌐 **Connect MCP servers**
2025-04-07 16:13:49 +05:30
- Add the MCP servers in settings -> import the tools into Rowboat.
2025-04-07 16:49:47 +05:30
- 📞 **Integrate into your app using the HTTP API**
2025-04-07 16:13:49 +05:30
- Grab the project ID and generated API key from settings and use the API.
2025-04-03 19:58:39 +05:30
2025-04-07 16:49:47 +05:30
Powered by OpenAI's Agents SDK, Rowboat is the fastest way to build multi-agents!
2025-04-03 19:58:39 +05:30
2025-04-07 16:13:49 +05:30
## Quick start
2025-04-07 16:49:47 +05:30
1. Set your OpenAI key
```bash
export OPENAI_API_KEY=your-openai-api-key
```
2. Clone the repository and start Rowboat docker
2025-01-14 12:28:44 +05:30
```bash
2025-01-14 15:17:24 +05:30
git clone git@github.com:rowboatlabs/rowboat.git
cd rowboat
2025-01-14 12:28:44 +05:30
docker-compose up --build
```
2025-04-07 16:49:47 +05:30
3. Access the app at [http://localhost:3000](http://localhost:3000).
2025-04-07 16:13:49 +05:30
2025-04-08 01:23:46 +05:30
## Demos
2025-01-14 12:28:44 +05:30
2025-04-08 12:20:06 +05:30
#### Create a multi-agent assistant with tools from a single prompt
2025-03-10 12:22:27 +05:30
2025-04-09 01:03:36 +05:30
[![Prompt to agents](https://img.youtube.com/vi/3t2Fpn6Vyds/0.jpg)](https://www.youtube.com/watch?v=3t2Fpn6Vyds)
2025-03-31 14:28:56 +05:30
2025-04-08 12:20:06 +05:30
#### Add MCP servers
2025-03-31 14:28:56 +05:30
2025-04-09 01:03:36 +05:30
[![MCP server](https://img.youtube.com/vi/EbkIPCTyD58/0.jpg)](https://www.youtube.com/watch?v=EbkIPCTyD58)
2025-04-08 01:17:46 +05:30
2025-04-09 00:57:39 +05:30
#### Use Firecrawl's MCP server and build a quick url scraping agent
2025-04-09 01:03:36 +05:30
[![Firecrawl MCP](https://img.youtube.com/vi/KeXLKh4tUYU/0.jpg)](https://www.youtube.com/watch?v=KeXLKh4tUYU)
2025-04-09 00:57:39 +05:30
2025-04-08 12:20:06 +05:30
#### Improve agents with feedback
2025-04-08 01:17:46 +05:30
2025-04-09 01:03:36 +05:30
[![Feedback](https://img.youtube.com/vi/uoCEQtOe7eE/0.jpg)](https://www.youtube.com/watch?v=uoCEQtOe7eE)
2025-03-31 14:28:56 +05:30
2025-01-14 16:07:31 +05:30
2025-04-08 01:17:46 +05:30
## Integrate with Rowboat agents
2025-01-31 19:38:05 +05:30
2025-04-08 01:17:46 +05:30
There are 2 ways to integrate with the agents you create in Rowboat
1. HTTP API
- You can use the API directly at [http://localhost:3000/api/v1/](http://localhost:3000/api/v1/)
2025-04-09 01:03:36 +05:30
- See [API Docs](https://docs.rowboatlabs.com/using_the_api/) for details
```bash
curl --location 'http://localhost:3000/api/v1/<PROJECT_ID>/chat' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <API_KEY>' \
--data '{
"messages": [
{
"role": "user",
"content": "tell me the weather in london in metric units"
}
]
}'
```
2025-04-08 01:17:46 +05:30
2. Python SDK
2025-04-08 01:42:42 +05:30
- You can use the included Python SDK to interact with the Agents
2025-04-09 01:03:36 +05:30
- See [SDK Docs](https://docs.rowboatlabs.com/using_the_sdk/) for details
```python
from rowboat import Client
from rowboat.schema import UserMessage, SystemMessage
# Initialize the client
client = Client(
host="<HOST>",
project_id="<PROJECT_ID>",
api_key="<API_KEY>"
)
# Create messages
messages = [
SystemMessage(role='system', content="You are a helpful assistant"),
UserMessage(role='user', content="Hello, how are you?")
]
# Get response
response_messages, state = client.chat(messages=messages)
print(response_messages[-1].content)
# For subsequent messages, include previous messages and state
messages.extend(response_messages)
messages.append(UserMessage(role='user', content="What's your name?"))
response_messages, state = client.chat(messages=messages, state=state)
```
2025-04-08 01:17:46 +05:30
Refer to [Docs](https://docs.rowboatlabs.com/) to learn how to start building agents with Rowboat.