Build a living knowledge graph from all your work context
Rowboat is a local-first desktop AI coworker that indexes your work into a knowledge graph and acts on it via email, browser, and code surfaces.
Why it matters
Rowboat indexes your email, meetings, Slack messages, and assistant conversations into a persistent, backlinked knowledge graph that accumulates context over time. It uses this long-lived memory to automate work across built-in surfaces including email drafting, meeting notes, code generation, and browser automation-all running locally with your choice of models.
Outcomes
What it gets done
Index emails, meetings, and Slack into an Obsidian-style knowledge graph stored as local Markdown
Auto-draft email responses using accumulated work context from the knowledge graph
Transcribe meetings live and generate summaries that update the knowledge graph
Run background agents on schedules or events that can search, browse, and write code
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/rowboatlabs-rowboat | bash Overview
Rowboat
Rowboat is a local-first desktop AI coworker that indexes email, meetings, Slack, and notes into a living, backlinked knowledge graph stored as plain Markdown, with built-in surfaces (email client, browser, meeting note-taker, code mode) and background agents to act directly on that accumulated context. Use it for a persistent-memory AI coworker that acts on your email, meetings, and coding tasks locally, with model choice left to you (local or hosted); it's a desktop app requiring installation, with optional API keys needed for voice, web search, and external tool integrations.
What it does
Rowboat is a desktop AI coworker that indexes your work - email, meetings, Slack, and assistant conversations - into a living, Obsidian-style backlinked knowledge graph, and provides built-in surfaces to act on that context directly. The built-in email client sorts incoming mail into important versus everything else and automatically drafts responses to important email using full work context. Background agents run on events (a new email arriving) or a schedule (every day at 8am), and can connect to tools, search the web, use a built-in isolated browser, and write code via Claude Code or Codex. A local meeting note-taker taps mic and speaker audio, produces a live transcript, summarizes the meeting into a Markdown file, and updates the knowledge graph automatically. Code mode spins up parallel coding agents (Claude Code or Codex) with Rowboat feeding them work context where needed, and "Apps" let you build your own custom work surfaces inside Rowboat that get access to the same tools and integrations, shareable with other people.
The core difference from typical AI tools, per the source: most AI tools reconstruct context on demand by re-searching transcripts or documents each time, starting cold every session. Rowboat instead maintains long-lived knowledge that accumulates over time, with explicit and inspectable relationships, notes editable directly by the user (not hidden inside a model), and everything stored on your machine as plain Markdown rather than a proprietary or hosted format.
When to use - and when NOT to
Use Rowboat when you want a desktop AI assistant with actual persistent, accumulating memory of your work - rather than one that re-derives context from scratch each session - and built-in surfaces (email, browser, meeting notes, code) to act on that memory directly. It fits users who want to bring their own model (local via Ollama or LM Studio, or a hosted provider with your own API key) and who want their data to remain fully local, inspectable, editable, and portable as plain Markdown rather than locked into a proprietary format or hosted service.
It's a desktop application (Mac/Windows/Linux) rather than a hosted service, so it requires local installation and, for full functionality, separate optional API keys for voice input (Deepgram), voice output (ElevenLabs), web search (Exa), and external tool integrations (MCP servers or Composio). The isolated built-in browser is specifically designed so you only log the assistant into accounts you intend it to access - a deliberate boundary, not a limitation to work around.
Inputs and outputs
Download the latest build for your platform from rowboatlabs.com/downloads or the GitHub releases page. Optional integrations are configured via JSON key files in ~/.rowboat/config/:
{
"apiKey": "<key>"
}
saved as deepgram.json (voice input), elevenlabs.json (voice output), exa-search.json (web search), or composio.json (external tool access) as needed. Google services (Gmail, Calendar, Drive) connect through a separate documented OAuth setup flow.
Input day-to-day is your work itself - incoming email, meeting audio, browser tasks, coding requests - captured automatically or via direct interaction with each work surface. Output is drafted email responses, meeting summaries and updated knowledge-graph notes, background-agent results, and code changes from driven coding agents - all persisted locally as plain Markdown that can be inspected, edited, backed up, or deleted at any time.
Integrations
Rowboat connects to external tools and services via the Model Context Protocol (MCP), plugging in search, databases, CRMs, support tools, or custom internal tools - the source names Exa (web search), Twitter/X, ElevenLabs (voice), Slack, Linear/Jira, and GitHub as examples, alongside Composio-brokered tool access. Coding work routes through Claude Code or Codex as the underlying coding-agent engines. Model choice is fully swappable: local inference via Ollama or LM Studio, or any hosted provider using your own API key, with your Markdown vault staying local regardless of which model is active.
Who it's for
Knowledge workers who want a single AI coworker with real, accumulating memory of their email, meetings, and notes, plus built-in surfaces to act on that memory (drafting email, taking meeting notes, running background agents, driving coding agents) - especially people who want local-first, model-agnostic, Markdown-based data ownership rather than a hosted AI assistant with a proprietary knowledge store.
Source README
Rowboat
A desktop AI coworker with a memory of your work and built-in surfaces to act on it.
Rowboat indexes your work into a living knowledge graph and uses that to get work done on your machine. It includes work surfaces for collaborating with AI: email client, notes, browser, code mode, meeting note taker, and workspaces for different projects.
Download latest for Mac/Windows/Linux: Download
Demo - apps to code · Demo - knowledge graph
⭐ If you find Rowboat useful, please star the repo. It helps more people find it.
Overview
BrainRowboat indexes email, meetings, slack and assistant conversations into a living Obsidian-style backlinked knowledge graph. |
|
|
|
|
Background agentsYou can set up background agents that run on events like new email or on schedule like every day at 8am. They can connect to tools, search the web, use the browser and write code using Claude Code or Codex. |
|
Built-in BrowserRowboat includes a browser that lets you and assistant collaborate on web tasks. Because it's isolated from your main browser, you can log in only to the accounts that want the assistant to access. |
|
Meeting NotesA local meeting note-taker that taps into mic & speaker, produces live transcript and summarizes the meeting in a markdown file and updates the knowledge graph. |
|
Code ModeCode mode lets you spin up parallel coding agents with Claude Code or Codex, and have Rowboat drive them with all the work context where needed. |
|
AppsYou can build your own work surfaces inside Rowboat - they get access to all the tools and integrations, and you can share them with other people. |
|
IntegrationsIncludes one-click integrations to most popular products. |
|
Installation
Download latest for Mac/Windows/Linux: Download
All release files: https://github.com/rowboatlabs/rowboat/releases/latest
Google setup
To connect Google services (Gmail, Calendar, and Drive), follow Google setup.
Voice input
To enable voice input and voice notes (optional), add a Deepgram API key in ~/.rowboat/config/deepgram.json
Voice output
To enable voice output (optional), add an ElevenLabs API key in ~/.rowboat/config/elevenlabs.json
Web search
To use Exa research search (optional), add the Exa API key in ~/.rowboat/config/exa-search.json
External tools
To enable external tools (optional), you can add any MCP server or use Composio tools by adding an API key in ~/.rowboat/config/composio.json
All API key files use the same format:
{
"apiKey": "<key>"
}
How it’s different
Most AI tools reconstruct context on demand by searching transcripts or documents.
Rowboat maintains long-lived knowledge instead:
- context accumulates over time
- relationships are explicit and inspectable
- notes are editable by you, not hidden inside a model
- everything lives on your machine as plain Markdown
The result is memory that compounds, rather than retrieval that starts cold every time.
Bring your own model
Rowboat works with the model setup you prefer:
- Local models via Ollama or LM Studio
- Hosted models (bring your own API key/provider)
- Swap models anytime - your data stays in your local Markdown vault
Extend Rowboat with tools (MCP)
Rowboat can connect to external tools and services via Model Context Protocol (MCP).
That means you can plug in (for example) search, databases, CRMs, support tools, and automations - or your own internal tools.
Examples: Exa (web search), Twitter/X, ElevenLabs (voice), Slack, Linear/Jira, GitHub, and more.
Local-first by design
- All data is stored locally as plain Markdown
- No proprietary formats or hosted lock-in
- You can inspect, edit, back up, or delete everything at any time
FAQ
Common questions
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.