River Writer:一款安静、反云端的Mac写作工具

River Writer是一款无账号、无云、无AI、内置Git的纯文本开源Mac写作应用。
River Writer 是独立开发者 Arjun Acharya 推出的免费开源 Mac 写作应用,主打剧本、舞台剧与小说创作。用户以 .fountain 或 Markdown 纯文本写作,右侧实时渲染四种版式的可打印页面,让作者在写作中直接感知成稿节奏。其最具差异化的功能是把 Git 版本控制嵌入写作流程,支持提交草稿、恢复历史和在分支上并行尝试不同结局;大纲、便签与待办也以纯文件形式存放在项目目录中,整个项目对用户完全透明。产品明确声明无账号、无云同步、无遥测、无 AI、不发起任何网络连接,以隐私和可移植性为卖点,代价是缺少协作与跨设备同步,且 Git 对非程序员存在学习门槛。MIT 开源降低了信任成本,但长期可持续性尚不明确。
在AI写作助手和云端协作文档大行其道的今天,一款名为River Writer的Mac应用选择了完全相反的方向:没有账号、没有云同步、没有遥测、没有AI,甚至不发起任何网络连接。它只做一件事——让你安安静静地写剧本、舞台剧或小说。
这款由独立开发者Arjun Acharya打造的工具在Product Hunt上获得了73票支持,位列当日第14名,并获得了"Productivity"和"Open Source"标签。虽然票数不算亮眼,但它所代表的产品哲学值得认真审视。
纯文本为骨,实时预览为肉
River Writer的核心工作流围绕纯文本展开。用户以.fountain(剧本专用格式)或.md(Markdown)撰写内容,应用在右侧实时渲染出格式化的、可直接打印的页面。预览支持四种版式:Screenplay(标准剧本)、Multi-cam(多机位情景喜剧格式)、Stage Play(舞台剧)和Manuscript(小说手稿)。
这种"写纯文本、看排版稿"的双栏设计并不新鲜,但River Writer的克制之处在于它没有把格式渲染隐藏成一个导出按钮。预览始终可见,意味着写作者可以在创作过程中直接感知最终页面的节奏——对剧本作者而言,一页大约对应一分钟的屏幕时间,这种即时反馈有实际价值。
采用.fountain格式是个聪明的选择。Fountain是一种开源的剧本标记语言,用简单的缩进和关键词就能表达场景标题、角色名、对白和转场。它本质上是纯文本,因此不依赖任何特定软件,也不会被锁定在某个厂商的生态里。
Fountain 语法由编剧 John August 与开发者 Nima Yousefi 于 2012 年左右提出,规范公开在 fountain.io 上,被 Highland、Slugline 等剧本软件以及部分影视制作流程采用。它的设计思路与 Markdown 类似:用少量约定——场景标题以 INT./EXT. 开头,角色名单独成行并大写,对白紧随其后,转场以 > 开头或全大写加 TO: 结尾——来表达剧本结构,其余一律视为正文。由于文件本身是 UTF-8 纯文本,它可以被任何编辑器打开,也能被 Git 正常做行级差异比较,这恰好与 River Writer 的版本控制设计契合。
内置Git:把版本控制交给写作者
River Writer最具差异化的功能是把Git版本控制直接嵌入写作流程。用户可以提交草稿、恢复历史文件,甚至在一个分支上尝试另一个结局。
对非程序员来说,这听起来可能有些陌生,但它解决的问题很实在:写作本质上是一个不断试错的过程,而大多数写作软件只提供"撤销"和有限的版本历史。Git的引入意味着你可以保留一条完整的时间线,同时并行探索多个创作方向——比如在main分支上推进主稿,在另一个分支上写一个黑暗版结局,随时切换比较。
Outline(大纲)、scratchpad(便签)和todos(待办)也以纯文件形式存放在项目目录中。这种设计让整个项目对用户完全透明:所有内容都是可读、可迁移的文本文件,不藏在数据库或专有格式里。
有意思的是,Git内置对目标用户而言仍有学习门槛。产品目前只有3条评论,尚不清楚它是否提供了足够友好的Git界面来降低这个门槛。这是River Writer需要证明的地方。
Git 是 Linus Torvalds 于 2005 年为 Linux 内核开发创建的分布式版本控制系统。它的核心模型是“提交(commit)”:每次提交记录一次完整的项目快照,并指向父提交,从而串成一条可回溯的历史链;分支(branch)本质上只是指向某个提交的可移动指针,因此创建和切换分支的成本极低。所谓“在另一个分支上写黑暗版结局”,就是让两条创作线共享同一段早期历史,之后各自独立演进,需要时再合并或丢弃。Git 完全在本地运行,不需要服务器,这与 River Writer 的离线立场天然一致;但命令行式的概念(暂存区、提交信息、合并冲突)对写作者确实构成门槛。
“无AI、无网络”是一种产品立场
River Writer明确声明:无账号、无云、无遥测、无AI,不建立任何网络连接。在当下的工具市场,这既是技术选择,也是价值观表达。
它的吸引力在于几类用户:对隐私敏感的作者、厌倦了订阅制和云端锁定的创作者,以及希望自己的作品不被用于训练模型的人。纯文本加本地存储的组合,也意味着项目可以存活在任何未来工具中——只要文本还在,作品就不会丢失。
代价同样明显。没有云同步意味着换设备需要手动迁移;没有协作功能意味着合写剧本需要另寻方案;没有AI辅助意味着需要自己面对空白页。River Writer显然认为这些"缺失"对目标用户来说不是问题,甚至正是卖点。
“遥测(telemetry)”指软件在后台自动收集使用数据——启动次数、功能点击、崩溃日志、甚至编辑内容特征——并上传至厂商服务器,常用于改进产品和排查故障,但用户往往并不知情。与之相对,离线优先(offline-first)与本地优先(local-first)软件主张数据默认存放在用户设备上,网络仅作为可选的同步通道。这一理念近年由 Ink & Switch 等研究团队系统提出,强调用户对数据的长期所有权与软件的可迁移性。River Writer 的“不发起任何网络连接”属于这一谱系中最彻底的形态,其可验证性也正是它选择开源的原因之一。
开源与可持续性
River Writer以MIT协议开源,代码可自由使用和修改。这降低了用户的信任成本——你不需要相信开发者的承诺,可以直接看代码确认它确实不联网。
但开源免费应用也面临可持续性问题。开发者靠什么维持长期更新?目前没有明确信息。对于一个只有73票的Product Hunt发布来说,现在讨论商业模式或许为时过早,但这是用户在选择长期写作工具时不得不考虑的现实。
适合谁,不适合谁
如果你写剧本或舞台剧,重视纯文本的可移植性,愿意学习一点Git,并且反感云端和AI介入创作,River Writer值得一试。如果你需要多人协作、跨设备无缝同步或AI辅助生成,它显然不是为这类场景设计的。
在一个越来越"聪明"的写作工具市场里,River Writer的"安静"本身就是一种稀缺品。
相关推荐

Cognition SWE-2 实战:一个提示词搞定产品发布全流程
解析 YouTube 创作者用 Cognition SWE-2 发布产品的完整提示词:落地页、七封邮件序列与未购买用户跟进工具三段式结构,以及"测试并汇报"这一约束如何改变 AI 的交付质量。
AWS AgentCore Gateway:用MCP打通AI Agent与企…
AWS AgentCore Gateway:用MCP打通AI Agent与企业后端
AWS AgentCore Gateway如何作为主MCP服务器聚合REST API、Lambda与已有MCP服务?解析其AST实时映射、零冷启动、语义搜索治工具过载、会话隔离与密钥注入安全设计,以及企业AI Agent解耦后端的架构思路。

一个链接给Figma AI装上新技能:MCP连接器实战
通过粘贴一个MCP服务器链接,Figma中的AI Agent就能获得新工具能力。本文拆解配置流程、超过20个一键接入应用、读写权限与执行策略设置,以及公开HTTPS链接这一关键限制。