Typical Use Cases for Rowboatlabs/Rowboat: A Local‑First AI Coworker
Rowboat is a personal, on‑device AI assistant that builds a Markdown‑based knowledge graph from your existing tools to provide context‑aware help without sending private data to the cloud.
Rowboat operates as a local‑first system that continuously ingests data from email, calendars, meeting notes, files, and voice memos into an Obsidian‑compatible vault. By keeping all data on your machine, it enables privacy‑preserving automation. Below are the typical use cases for rowboatlabs/rowboat, drawn directly from the source code implementation.
Meeting Preparation and Briefing Generation
One of the primary Rowboat use cases is automated meeting preparation. The system scans calendar events, gathers intelligence on attendees and organizations, and synthesizes structured briefing documents.
In apps/x/packages/core/src/pre_built/meeting-prep.md, the meeting‑prep agent automatically reads calendar data, cross‑references historical notes, and writes structured briefs to pre‑built/meeting‑prep/briefs/. These briefs surface past decisions, open questions, and relevant contacts before a meeting starts.
To trigger this agent programmatically, use the IPC bridge defined in apps/x/packages/shared/src/ipc.ts:
import { ipcRenderer } from 'electron';
import type { IPCChannels } from '@x/shared/ipc';
ipcRenderer.invoke('runs:create', {
name: 'meeting‑prep',
model: 'gpt‑4.1',
} satisfies IPCChannels['runs:create']['req'])
.then((run) => {
console.log('Meeting‑prep run started:', run.id);
});
Contextual Email Drafting
Rowboat automates email composition by generating draft replies grounded in your communication history and current schedule. This use case leverages the email‑draft agent specified in apps/x/packages/core/src/pre_built/email-draft.md.
The agent reads new Gmail messages, classifies them for importance, pulls calendar availability and related knowledge from the local graph, and writes markdown drafts to pre‑built/email‑draft/drafts/. This ensures every suggested reply references actual prior conversations and availability constraints without exposing data to external APIs.
Content Creation and Document Generation
Beyond communication, Rowboat supports content creation workflows including documents, slide decks, and PDF generation. The system uses the accumulated knowledge graph to fetch relevant notes and streams structured output to files.
This capability is implemented through the core ingestion and retrieval pipeline, allowing users to turn simple prompts into full‑featured deliverables. The local‑first architecture ensures proprietary content never leaves the machine during generation.
Voice Note Capture and Action Extraction
For rapid knowledge capture, Rowboat supports voice memo transcription and action item extraction. When configured with a local Deepgram API key, the system processes audio input, transcribes content, and extracts actionable tasks into the knowledge graph.
This use case is documented in the repository configuration sections and enables hands‑free capture of ideas during commutes or meetings, with immediate integration into the broader knowledge base.
Background Agents and MCP Integration
Advanced automation scenarios utilize Rowboat’s Model Context Protocol (MCP) implementation in apps/x/packages/core/src/mcp/mcp.ts. MCP enables Rowboat to plug in external tools such as search APIs, CRM systems, and custom endpoints, running agents on defined schedules.
Common MCP‑driven use cases include:
- Nightly summaries – Automated digest generation from the day’s activities
- Recurring project updates – Scheduled status reports pulling from multiple data sources
- Periodic outreach – Automated contact reminders and follow‑up drafting
To inspect available MCP tools programmatically:
import { ipcRenderer } from 'electron';
import type { IPCChannels } from '@x/shared/ipc';
ipcRenderer.invoke('mcp:listTools', {
serverName: 'example‑agent',
} satisfies IPCChannels['mcp:listTools']['req'])
.then((tools) => {
console.log('Available tools:', tools.tools.map(t => t.name));
});
Web Search and Custom Model Integration
Rowboat augments local knowledge with live web data through optional search provider integrations. By configuring API keys in ~/.rowboat/config/, users can enable Brave, Exa, or other search providers to enrich answers with current information.
Additionally, Rowboat supports flexible model configuration via ~/.rowboat/config/models.json, allowing users to swap between local LLMs (Ollama, LM Studio) and hosted APIs (OpenAI, Anthropic, Google, OpenRouter) without modifying workflow logic.
Summary
- Meeting preparation and email drafting are the primary Rowboat use cases, leveraging pre‑built agents in
meeting-prep.mdandemail-draft.mdto generate context‑aware briefs and replies. - Content creation, voice capture, and background automation extend Rowboat’s utility through local‑first processing and MCP integration.
- All data resides in an Obsidian‑compatible Markdown vault, ensuring privacy, portability, and full user control.
- Flexible configuration supports multiple LLM providers and optional web search augmentation without compromising local data sovereignty.
Frequently Asked Questions
What makes Rowboat different from cloud‑based AI assistants?
Rowboat operates entirely on your local machine, storing all data in a Markdown‑based knowledge graph within an Obsidian‑compatible vault. Unlike cloud‑based services, Rowboat processes emails, calendars, and documents without transmitting private information to external servers, ensuring complete data sovereignty while still supporting optional web search via configurable API keys.
How does Rowboat integrate with existing tools like Gmail and Google Calendar?
Rowboat connects to Google Workspace through OAuth authentication configured during setup (documented in google-setup.md). Once authorized, the email‑draft and meeting‑prep agents automatically ingest new messages and calendar events, cross‑reference them with your local knowledge graph, and generate contextual drafts and briefs without manual data export.
Can I use Rowboat with local LLMs instead of OpenAI or Anthropic?
Yes. Rowboat supports flexible model configuration through ~/.rowboat/config/models.json, allowing you to switch between local inference engines like Ollama or LM Studio and hosted APIs including OpenAI, Anthropic, Google, and OpenRouter. This configuration applies globally across all agents and workflows without requiring code changes.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →