rowboat/README.md

100 lines
3.3 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">
2025-05-07 19:09:08 +05:30
[Quickstart](#quick-start) | [Docs](https://docs.rowboatlabs.com/) | [Discord](https://discord.gg/gtbGcqF4) | [Website](https://www.rowboatlabs.com/) | [Youtube](https://www.youtube.com/@RowBoatLabs)
2025-04-03 19:58:39 +05:30
</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-16 13:54:22 +05:30
- 📞 **Integrate into your app using the HTTP API or Python SDK**
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
Note: See the [Using custom LLM providers](https://docs.rowboatlabs.com/setup/#using-custom-llm-providers) section of our docs for using custom providers like OpenRouter and LiteLLM.
2025-04-13 23:32:22 +05:30
## Demo
2025-01-14 12:28:44 +05:30
2025-04-13 23:32:22 +05:30
#### Create a multi-agent assistant with MCP tools by chatting with Rowboat
2025-04-23 00:29:47 +05:30
[![Screenshot 2025-04-23 at 00 25 31](https://github.com/user-attachments/assets/c8a41622-8e0e-459f-becb-767503489866)](https://youtu.be/YRTCw9UHRbU)
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-10 00:41:51 +05:30
],
"state": null
2025-04-09 01:03:36 +05:30
}'
```
2025-04-08 01:17:46 +05:30
2. Python SDK
2025-04-10 01:31:40 +05:30
You can use the included Python SDK to interact with the Agents
```
pip install rowboat
```
See [SDK Docs](https://docs.rowboatlabs.com/using_the_sdk/) for details. Here is a quick example:
2025-04-09 01:03:36 +05:30
```python
2025-04-10 00:41:51 +05:30
from rowboat import Client, StatefulChat
2025-04-09 01:03:36 +05:30
from rowboat.schema import UserMessage, SystemMessage
# Initialize the client
client = Client(
2025-04-22 12:03:45 +05:30
host="http://localhost:3000",
2025-04-09 01:03:36 +05:30
project_id="<PROJECT_ID>",
api_key="<API_KEY>"
)
2025-04-10 00:41:51 +05:30
# Create a stateful chat session (recommended)
chat = StatefulChat(client)
response = chat.run("What's the weather in London?")
print(response)
# Or use the low-level client API
2025-04-09 01:03:36 +05:30
messages = [
SystemMessage(role='system', content="You are a helpful assistant"),
UserMessage(role='user', content="Hello, how are you?")
]
# Get response
2025-04-10 00:41:51 +05:30
response = client.chat(messages=messages)
print(response.messages[-1].content)
2025-04-09 01:03:36 +05:30
```
2025-04-08 01:17:46 +05:30
Refer to [Docs](https://docs.rowboatlabs.com/) to learn how to start building agents with Rowboat.