返回博客列表

Rowboat:开源版 Claude Desktop,多 Agent 编排与本地知识图谱的 AI 同事

2026-07-09T20:04:00+08:00
Rowboat多Agent知识图谱Claude Desktop本地优先AI编排开源

Rowboat:开源版 Claude Desktop,多 Agent 编排与本地知识图谱的 AI 同事

Claude Desktop 好用,但数据不在你手里。这个开源平替值得看看。

我用 Claude Desktop 大半年了,体验确实好。但每次把公司邮件、会议纪要、项目文档喂进去,心里总会咯噔一下--这些东西真的该存在 Anthropic 的服务器上吗?

直到我翻到 Rowboat,15,800+ Star,TypeScript 写的,Apache-2.0 协议,Y Combinator S24 批次。它给自己的定位是"a desktop AI coworker with memory"--一个带着记忆、帮你干活的桌面 AI 同事。和 Claude Desktop 最大的区别:所有数据存在你本机的 Markdown 文件里,一个字节都不上云。

本文提纲

  1. 为什么需要一个 Claude Desktop 的替代方案
  2. 核心架构:记忆层 + 编排层 + 工作面板
  3. 记忆管理:活的知识图谱,不是冷启动检索
  4. 多 Agent 协作:并行 Agent 与后台自动化
  5. 自动化编排:Skills 系统与预置工作流
  6. 模型无关与 MCP 生态
  7. 技术栈拆解
  8. 什么场景该认真考虑 Rowboat

为什么需要一个 Claude Desktop 的替代方案

先说结论:Claude Desktop 对个人用户足够好,但企业场景有三个硬伤。

第一,数据主权。 企业内部的邮件、会议、代码,直接传到第三方云端,合规团队第一个不答应。欧盟 GDPR、国内数据安全法,对这类数据出境都有严格要求。

第二,没有长期记忆。 Claude Desktop 的记忆是会话级的。你上周跟它聊过的项目背景,这周开新对话它全忘了。每次都要重新解释一遍"我们公司是做什么的""这个项目的上下文是什么"。

第三,不可定制。 闭源意味着你没法改它的行为逻辑,没法加自己的工具集成,没法让它按照你们团队的工作流自动跑任务。

Rowboat 这三点全解决了:本地存储、知识图谱长期记忆、完全开源可定制。代价是你得自己管理模型 API Key 和基础设施--但对企业来说,这恰恰是优势。

核心架构:记忆层 + 编排层 + 工作面板

Rowboat 不是"又一个聊天客户端"。拆开看,它是三层结构:

graph TB
    subgraph "Work Surfaces Layer"
        A[Email Client]
        B[Browser]
        C[Meeting Notes]
        D[Code Mode]
        E[Custom Apps]
    end

    subgraph "Orchestration Layer"
        F[Agent Runtime]
        G[Background Agents]
        H[Skills System]
        I[Workflow Engine]
    end

    subgraph "Memory Layer"
        J[Knowledge Graph]
        K[Qdrant Vector DB]
        L[Local Markdown Vault]
    end

    A --> F
    B --> F
    C --> F
    D --> F
    E --> F
    F --> J
    G --> F
    H --> F
    I --> F
    J --> K
    J --> L

    style J fill:#FF6B6B,color:#000000
    style F fill:#4ECDC4,color:#000000
    style A fill:#45B7D1,color:#000000
    style K fill:#96CEB4,color:#000000
    style L fill:#FFEAA7,color:#000000

最底层是记忆层:一个 Obsidian 兼容的本地 Markdown 知识图谱,配合 Qdrant 向量数据库做语义检索。中间是编排层:Agent 运行时、后台 Agent、Skills 系统、工作流引擎。最上面是工作面板层:邮件、浏览器、会议记录、代码模式、自定义 App。

关键在于,这三层是联动的。你在邮件里收到一封重要邮件,编排层会自动触发后台 Agent 处理,处理过程中读写的上下文全部沉淀到记忆层。下次再处理类似邮件,Agent 已经"记住"了上次的情况。

记忆管理:活的知识图谱,不是冷启动检索

这是 Rowboat 和绝大多数 AI 工具的根本分歧。

大多数 AI 工具的记忆机制:把对话历史存下来,下次问的时候做向量搜索。这叫"每次冷启动"--模型每次都得从头理解上下文。

Rowboat 的做法是把你的工作索引成一个活的知识图谱。邮件、会议记录、Slack 消息、和 AI 的对话,全部被解析成带双向链接的 Markdown 笔记,存到你本机的 vault 里。

这套记忆系统有四个特性:

长期积累。 上下文随时间增长,不会被截断。你三个月前的一个决策,今天依然在图谱里,Agent 可以直接引用。

关系显式化。 你能看到"这个会议和那个项目相关""这封邮件提到的 deadline 关联到那个任务"。不是模型在黑盒里猜,是你能亲眼看到、亲手编辑的关系网络。

可编辑。 所有笔记都是纯 Markdown 文件。AI 写错了?你打开文件改。漏了关键信息?你手动补。这对企业场景特别重要--审计的时候,你需要能追溯每一条信息的来源。

可审计。 Agent 引用了哪些信息做决策,你去查对应的 Markdown 文件,路径清清楚楚。不是"AI 觉得",是"这个文件第 23 行写的"。

用得越久,图谱越丰富,Agent 需要你重复解释的背景就越少。README 里说得很到位:memory that compounds, rather than retrieval that starts cold every time。

多 Agent 协作:并行 Agent 与后台自动化

这才是 Rowboat 真正区别于 Claude Desktop 的地方--多 Agent 编排能力

并行编码 Agent

Code Mode 支持同时启动多个 Agent 实例,用 Claude Code 或 Codex 驱动。Rowboat 会把工作上下文喂给这些编码 Agent,让它们带着完整背景写代码。

实际场景:你在重构一个微服务,需要同时改 API 层、数据库迁移脚本、前端调用代码。在 Rowboat 里,你可以起三个并行 Agent,每个负责一部分,它们共享同一个知识图谱的上下文。比你在三个终端窗口里手动切换 Claude Code 效率高得多。

后台 Agent

这是从"你问它答"到"它自己干活"的跨越。你可以设置 Agent 在特定条件下自动运行:

  • 事件触发:收到新邮件时,自动分类、标注优先级、起草回复
  • 定时触发:每天早上 8 点,整理今天的日程、生成语音简报
  • 条件触发:项目 deadline 临近时,检查进度并发提醒

这些后台 Agent 能调用的工具很丰富:网页搜索、浏览器操作、代码执行,通过 MCP 协议还能连数据库、CRM、客服系统。

从项目源码结构看,Rowboat 的 CLI 组件(apps/cli)包含完整的 Agent 运行时(runtime.ts,30KB 的核心逻辑),支持运行锁机制(runs/lock.ts)防止并发冲突,还有消息队列(message-queue.ts)做异步通信。这不是玩具级别的实现。

自动化编排:Skills 系统与预置工作流

Rowboat 内置了一套 Skills 系统,让 Agent 能执行结构化的多步骤任务。

从源码目录 apps/cli/src/application/assistant/skills/ 可以看到五个内置 Skill:

Skill 作用
builtin-tools 内置工具集,Agent 的基础能力
mcp-integration MCP 服务器的发现与调用
workflow-authoring 让 Agent 自己编写工作流
workflow-run-ops 工作流运行管理
deletion-guardrails 删除操作的防护栏,防止 Agent 误删数据

注意 workflow-authoring 这个 Skill--它意味着 Agent 不仅能执行预设工作流,还能根据你的需求自己编写新工作流。你跟它说"帮我每天监控 GitHub PR 并发到 Slack",它能自己编排出一套工作流来。

预置工作流

Rowboat 还自带了一批预置工作流卡片(在 apps/rowboat/app/lib/prebuilt-cards/ 目录下),拿来就能用:

  • customer-support:客服自动分类与路由
  • eisenhower-email-organizer:艾森豪威尔矩阵邮件优先级管理
  • github-issue-to-slack:GitHub Issue 同步到 Slack
  • github-pr-to-slack:GitHub PR 通知到 Slack
  • github-data-to-spreadsheet:GitHub 数据导出到表格
  • interview-scheduler:面试日程协调
  • meeting-prep-assistant:会前准备助手
  • reddit-on-slack:Reddit 帖子推送到 Slack
  • tweet-assistant:推特内容助手
  • twitter-sentiment:推特情感分析

这些工作流都是 JSON 格式定义的,意味着你可以读懂、修改、复制。对企业来说,这就是一批现成的自动化模板,改改就能上线。

模型无关与 MCP 生态

Rowboat 不绑定任何模型厂商,这是它和 Claude Desktop 的另一个核心差异。

模型支持

  • 本地模型:通过 Ollama 或 LM Studio 跑开源模型,数据完全不出机器
  • 云端模型:自带 API Key,接 OpenAI、Anthropic、Google 等任意厂商
  • 随时切换:换模型不影响数据,因为所有记忆都存在本地 Markdown vault 里

这意味着你可以做策略路由:简单的邮件分类用本地小模型省钱,复杂的代码生成调 Claude。数据始终在本地,模型只是"大脑",随时可换。

MCP 协议扩展

Rowboat 支持 MCP(Model Context Protocol),可以接入任意 MCP Server。Exa(网页搜索)、Twitter/X、ElevenLabs(语音)、Slack、Linear、Jira、GitHub 都能挂上去。还可以通过 Composio 接入更多第三方工具。

配置方式很简单,所有 API Key 以 JSON 文件存在 ~/.rowboat/config/ 目录下:

~/.rowboat/config/
├── deepgram.json      # 语音输入
├── elevenlabs.json    # 语音输出
├── exa-search.json    # 网页搜索
└── composio.json      # 第三方工具集成

每个文件就一行:

{
  "apiKey": ""
}

技术栈拆解

从 GitHub 仓库的文件结构,可以清楚看到 Rowboat 的技术选型:

桌面端:Electron 架构,分 main(主进程)、preload(预加载)、renderer(Vite + React 渲染层)。跨平台支持 Mac、Windows、Linux,最新版本 v0.7.1(2026 年 7 月发布)。

Web 端:Next.js 应用(apps/rowboat),用于项目配置和管理 Agent、数据源、Pipeline、Prompt、Tool。

CLI 端:独立的 TypeScript CLI(apps/cli),带 TUI 界面(基于 React 的终端 UI),是 Agent 运行时的核心。包含完整的 Skills 系统、MCP 集成、知识同步(Gmail、Calendar)。

向量数据库:Qdrant,专门做语义检索。有自己的 Dockerfile(Dockerfile.qdrant),可以本地部署。

语言占比:TypeScript 占绝对主体(8.27MB),其余是 CSS、JavaScript、少量 Python 和 Dockerfile。代码库干净,没有乱七八糟的混合语言。

许可证:Apache-2.0,商用友好。企业可以放心用在内部系统,甚至做二次开发分发。

什么场景该认真考虑 Rowboat

Rowboat 不适合所有人。以下场景它比 Claude Desktop 值得多:

数据合规要求高的企业。 金融、医疗、法律行业,客户数据不能出本地。Rowboat 的本地优先架构 + 本地模型,能过合规审计。

需要长期项目记忆的团队。 如果你的工作横跨多个长期项目,每个项目都有大量历史决策、邮件、会议记录,Rowboat 的知识图谱能让 AI 真正"记住"这些上下文。

需要自动化工作流的团队。 那些预置工作流(GitHub Issue 到 Slack、会前准备、邮件分类)直接覆盖了很多 DevOps 和项目管理的日常任务。加上 Agent 能自己编写工作流,定制空间很大。

想自建 AI 工作台的开发者。 Apache-2.0 协议 + TypeScript 全栈,你可以 fork 出来改成完全符合自己需求的内部工具。Apps 系统让你能构建自定义工作面板,分享给团队用。

反过来,这些情况别折腾:纯个人轻量使用,Claude Desktop 开箱即用更省心;完全不想碰配置和 API Key 的,Rowboat 的初始设置成本确实存在;需要多端同步的,Rowboat 目前是单机本地存储,没有官方云同步。

参考文档与链接

你觉得开源平替能打过 Claude Desktop 吗?评论区聊聊你的判断。觉得有用就点个赞,让更多人看到这个项目。


作者: itech001 来源: 公众号:AI人工智能时代 网站: https://www.theaiera.cn/ 每日分享最前沿的AI新闻资讯和技术研究。

本文首发于 AI人工智能时代,转载请注明出处。

分享给朋友