
前两天,我在整理电脑文件时,突然发现了一个有趣的现象。
我的文档文件夹里躺着各种格式的文件:.pptx、.docx、.xlsx、.pdf……
更让我不安的是,这些文件格式都是封闭的。
十年前的PPT文件,今天打开可能已经面目全非;公司的旧文档,离开了特定的软件就无法编辑;甚至有些文档,离开了云端就无法访问。
我们真的需要这么复杂的办公软件吗?
就在我思考这个问题的时候,一个叫 Bento 的开源项目突然出现在我的视野里。

Bento,一个听起来像是便当盒的名字,却有着颠覆传统办公软件的野心。它的口号简单而有力:
The office suite that fits in a file
一个文件,就是整个办公套件。
你没听错。Bento把文档、查看器、编辑器、演示器,甚至字体、图片、图表、动画,全部打包进了一个HTML文件里。
这个文件目前只有约560KB,却拥有堪比 PowerPoint 的强大功能。
项目由 nyblnet 团队开发,在GitHub上开源,采用MIT许可证。
最让人惊叹的是,这个项目只用了一周时间就完成了——而且是用Claude Code辅助开发的。作者毫不掩饰这一点,在Hacker News上的讨论中坦诚分享了整个开发过程。
截至目前,项目已经获得了超过 2K 颗星标,并且还在快速更新中。

当你下载一个Bento文件时,你得到的不仅仅是文档内容,而是整个应用程序。
打开这个HTML文件,你就能直接编辑、演示、查看,不需要安装任何软件,不需要登录任何账号。
更神奇的是,当你保存文件时,它会自己重写自己——把你的编辑内容直接写入这个HTML文件中。
所以,当你把文件发给同事时,他们打开的就是完整的、包含所有编辑功能的应用。
传统办公文件(如.pptx)是二进制格式,你无法用文本编辑器查看其中的内容。
但Bento完全不同——你的数据以纯JSON格式存放在文件顶部的一个<script>标签里。
你可以用任何文本编辑器打开Bento文件,直接看到所有内容。没有二进制黑盒,没有格式锁死,你的数据永远属于你。
这种设计不仅让数据透明可审计,更为AI协作打下了坚实基础。
因为文档就是纯JSON,任何AI助手都可以直接读取和编辑它。
你不需要任何插件、API或转换工具,只需把文件交给AI,它就能直接修改内容。
Bento甚至提供了专门的agents.md[1]指南,告诉AI如何正确处理Bento文档格式。
协作功能是Bento的另一个亮点。它采用了自研的CRDT(无冲突复制数据类型)引擎,支持实时协作编辑。
更重要的是,Bento的协作是端到端加密的:
这种设计比任何云端协作工具都更安全——因为根本没有你的数据存储在服务器上。
为了把整个应用塞进560KB的文件里,Bento团队自研了多个核心引擎:
这种自研策略让Bento摆脱了对大型第三方库的依赖,实现了极致的文件体积控制。
最简单的方式是直接下载预构建的文件:
Bento_Slides.bento.html(约560KB)如果你不想下载,可以直接在线体验:
访问bento.page/slides[3],这是一个自带功能演示的入门模板。你可以直接在浏览器中编辑、演示,体验所有功能。
如果你想参与开发或自定义,可以从源代码构建:
# 克隆仓库
git clone https://github.com/nyblnet/bento.git
# 进入slides目录
cd bento/slides
# 安装依赖(需要Node 20+)
npm install
# 启动开发服务器
npm run dev
# 构建单文件版本
npm run build:single构建完成后,你会在dist-single/目录下找到Bento_Slides.bento.html文件。
Bento与AI协作有三种方式:
将.bento.html文件拖到支持文件操作的AI工具中:
对于不支持文件操作的聊天机器人:
Claude用户可以安装专门的bento-slides skill:
# 安装到Claude Code
/plugin marketplace add nyblnet/bento
/plugin install bento-slides@bento
# 或手动安装
mkdir -p ~/.claude/skills/bento-slides
curl -fsSL https://bento.page/skills/bento-slides/SKILL.md -o ~/.claude/skills/bento-slides/SKILL.md安装后,你只需要说"make me a deck about...",AI就会自动创建并打开一个完整的Bento演示文稿。
在这个云计算盛行的时代,Bento 选择了一条截然不同的道路。
它让办公文档重新成为"文件"——你拥有它,控制它,它永远属于你。
560KB的文件,却装下了整个办公套件的梦想。这不仅仅是技术的胜利,更是对"本地优先"理念的最好诠释。
项目地址:https://github.com/nyblnet/bento