Show HN: Rowboat – AI coworker that turns your work into a knowledge graph (OSS) (github.com)

205 points by segmenta ↗ HN
Hi HN,

AI agents that can run tools on your machine are powerful for knowledge work, but they’re only as useful as the context they have. Rowboat is an open-source, local-first app that turns your work into a living knowledge graph (stored as plain Markdown with backlinks) and uses it to accomplish tasks on your computer.

For example, you can say "Build me a deck about our next quarter roadmap." Rowboat pulls priorities and commitments from your graph, loads a presentation skill, and exports a PDF.

Our repo is https://github.com/rowboatlabs/rowboat, and there’s a demo video here: https://www.youtube.com/watch?v=5AWoGo-L16I

Rowboat has two parts:

(1) A living context graph: Rowboat connects to sources like Gmail and meeting notes like Granola and Fireflies, extracts decisions, commitments, deadlines, and relationships, and writes them locally as linked and editable Markdown files (Obsidian-style), organized around people, projects, and topics. As new conversations happen (including voice memos), related notes update automatically. If a deadline changes in a standup, it links back to the original commitment and updates it.

(2) A local assistant: On top of that graph, Rowboat includes an agent with local shell access and MCP support, so it can use your existing context to actually do work on your machine. It can act on demand or run scheduled background tasks. Example: “Prep me for my meeting with John and create a short voice brief.” It pulls relevant context from your graph and can generate an audio note via an MCP tool like ElevenLabs.

Why not just search transcripts? Passing gigabytes of email, docs, and calls directly to an AI agent is slow and lossy. And search only answers the questions you think to ask. A system that accumulates context over time can track decisions, commitments, and relationships across conversations, and surface patterns you didn't know to look for.

Rowboat is Apache-2.0 licensed, works with any LLM (including local ones), and stores all data locally as Markdown you can read, edit, or delete at any time.

Our previous startup was acquired by Coinbase, where part of my work involved graph neural networks. We're excited to be working with graph-based systems again. Work memory feels like the missing layer for agents.

We’d love to hear your thoughts and welcome contributions!

24 comments

[ 4.0 ms ] story [ 53.5 ms ] thread
Big fan of the idea. 1: is the context graph tweakable in any way 2: how does the user handle/approve background tasks? Otherwise cool and good job!
Cool idea. I use Logseq with some custom scripts and plugins for that. Works very well with today's models capabilities.
Could you share your setup? Also a logseq fan here
How do you manage scope creep (ie, context size), and contradictory information in the context?
This is cool! A couple of pieces of feedback as I am looking for something in this family of things but haven't found the perfect fit: 1. I have multiple inboxes, and want to have them work on multiple. 2. I would really like to have skills and mcps visible and understandable. Craft Agents does a nice job of segmenting by workspace and making skills and mcps all visible so I can understand what exactly my agent is set up to do (no black boxes). 3. I want scheduled runs. I don't need push, I actually kind of prefer just the reliability of scheduled, but push would be fine too. In particular, I want to: a. After each granola meeting save in obsidian (I did this in Craft Code for example, but I prefer your more built in approach here, this is nice). b. On intervals, check my emails. I want to give it information on who/what is important to me, and ping me. E.g. billing on Anthropic failed, ping me. c. I also want it to email back and forth to schedule with approved categories of things on request. Just get it on my calendar (share calendly, send times, etc). d. I want junk etc archived. e. For important things, update my knowledge graph (ignore spam, etc). 4. Tying into a to-do list that actually updates based on priorities, and suggests auto archiving things etc would be good.

In practice, i connected gmail and asked it: "can you archive emails that have an unsubscribe link in them (that are not currently archived)?" and it got stuck on "I'll check what MCP tools are available for email operations first." But i connected gmail through your interface, and I don't see in settings anything about it also having configured the mcp? I also looked at the knowledge graph and it had 20 entities, NONE of which I had any idea what they were. I'm guessing its just putting in people trying to spam me into the contacts? It didn't finish running, but I didn't want to burn endless tokens trying to see if it would find actual people i care about, so I shut it down. One "proxy" for "people i care about" might be "people I send emails to"? I could see how this is a hard problem. I also think regardless I want things more transparent. So for the moment, I'm sticking with Craft Code for this even though it is missing some major things but at least its more clear what it is: its claude code, with a nice UI.

Hope this was helpful. I know there are multiple people working on things in this family, and I will probably be "largely solved" by the end of 2026, and then we will want it to do the next thing! Good luck, I will watch for updates and these are some nice ideas!

It would be fantastic if this supported email and calendar providers that weren't Google. Supporting protocols like IMAP or JMAP alongside CalDav would be a fantastic step, as well as open source note-taking apps like Hyprnote would be neat.
yes - indeed, would love to see generic IMAP support.
How do you handle entity clustering/deduplication?
Fucking hate software dorks turning simple web searches into a polluted, unrelated results list, thanks to their stupid, unimaginative & completely unrelated one-word "product" names.
> We’d love to hear your thoughts

Google Mail should not be used, nor its use encouraged. Nor should you encourage the use of LLMs of large corporations which suck in user data for mining, analysis, and surveillance purposes.

I would also be worried about energy use, and would not trust an "agent" to have shell access, that sounds rather unsafe.

I think this is a good example of what a good landing page can do.. I can immediately tell what it can do and the visualization makes me want to try it. And I don't think it is particularly refreshing or anything.. it just seems cool.
The knowledge graph is well done. I think what's missing from all coworking apps is the UX.

Prompting is a very specialized skill, average users just don't know what to ask for to get the most out of the LLMs.

Ideally the UX should organize and surface information to the user that is important automatically, without needing to be prompted.

This is a product that just makes sense to me - well done on picking a great problem to solve and communicating it so well.

What are the plans for monetization?

currently using org-roam and was wondering about having something like this. Really cool!
This is exactly why I am betting on open source for the AI future. Local first, code I can audit, no black box APIs that change their terms overnight. The future of knowledge work is not locked behind some corporate API with rate limits and price hikes. It is tools like this that keep the user in control.
Nice work. I have two questions.

1. Do you see any downsides to storing your graph as markdown files on filesystem, rather than, say, a graph DB? I have little experience with either but I imagine there would be perf advatages to certain operations on a graph DB at least?

2. If you're using Obsidian-like .md files, why not use the Obsidian format? I bet some folks would love to have an AI coworker helping build and maintain their Obsidian vault.

Would this work by just feeding it my obsidian vault?
I'll be honest here, I just don't understand the point or value here.

I've seen a whole heap of graph-based startups start and then pivot or fail because having a graph doesn't seem to add any additional value that a Sqllite or Postgres database offers. That is, saying we have a "context graph" is just marketing speak, it doesn't really add any new possibility or feature that isn't possible from using other search and database tools.

Also, this kind of tool, using AI to extract a decision from Granola for example, is possible to one-shot prompt. I.e. you don't need any special tool to do it, you just need a single prompt. Granola itself has this kind of functionality.

I think you're trying to solve a problem that doesn't really exist, what surface patterns are you going to uncover that someone don't know to look for? Either there is a todo from a meeting or note or email or there isn't.

Writing notes or prep for a meeting isn't rocket science, and you don't need a graph database to "surface patterns" to prepare your pre-meeting notes. If you use something like Granola, 99% of the time (or maybe 100% really), the Granola summary is all you need. If you want something more you copy the whole transcript and send it to Claude for some specific reason.

Since you're a YC company, I assume this will become paid at some point, but why would I pay when just having an AI note-taker and Claude access is already perfect?

The scary: Utter lack of any kind of sandboxing here scares me. This thing is supposed to digest text from all kinds of sources, and runs nodejs for all kinds of tasks under the covers all the time.

The weird: the javascript it's supposed to run is included as part of the prompt, for the LLM to write to a file via tool calls.

The naive: "Never actually send emails - only create drafts" yeaah the text generator really doesn't work like that.

https://github.com/rowboatlabs/rowboat/blob/f68887496bcb608e...

https://github.com/rowboatlabs/rowboat/blob/f68887496bcb608e...