嗨,我是小华同学,专注解锁高效工作与前沿AI工具!每日精选开源技术、实战技巧,助你省时50%、领先他人一步。👉免费订阅,与10万+技术人共享升级秘籍!
以前的演示文稿只是“内容”:编辑器在软件里,播放能力在另一个程序里,协作还要再登录一个云平台。
Bento 的反差是:一个
.bento.html文件,自己就带着文档、编辑器、播放器和演示模式。你把文件发给别人,对方不需要安装软件或注册账号,打开现代浏览器就能编辑、演示和继续保存。这篇用几分钟讲清楚,Bento 为什么把“文件”和“软件”重新合在了一起。

Bento 到底是什么?
Bento 是 nyblnet/bento 开源的本地优先办公套件,目前最成熟的入口是 Bento Slides:一个可以自己运行的单文件演示文稿。
GitHub 页面显示,它已经积累了约 3.3k Star、211 个 Fork 和 700 次提交,采用 MIT 协议。这里真正值得看的,不是“又做了一个 PPT 工具”,而是它重新设计了文件的边界。
| 方案 | 文件里通常有什么 | 使用时还需要什么 |
|---|---|---|
| 传统 PPT | 主要是内容和资源 | 安装对应软件,或处理格式兼容 |
| 云端文档 | 内容和在线编辑入口分开 | 账号、网络和平台服务 |
| Bento | 内容、编辑器、播放器、演示逻辑 | 一个现代浏览器 |
官方素材也很直观:Bento 把“能打开的文件”进一步做成了“能工作的文件”。

最关键的设计:文件就是软件
Bento 的 .bento.html 不是一个只负责存数据的壳,它大致同时包含:
.bento.html
├── viewer 打开后负责展示
├── editor 直接进入编辑
├── presenter 进入演示模式
└── #bento-doc 靠近文件顶部的可读 JSON 数据
保存时,Bento 会通过浏览器的 File System Access API 把数据写回文件;不支持的浏览器则回退到下载新文件。文件体积只有几百 KB 级别,发邮件、传网盘、放进项目仓库都很轻。
这会带来一个很实在的体验变化:接收者拿到的不是“请安装某软件才能打开的内容”,而是一个带着工作能力的文件。

它不只是“能播放的 PPT”
Bento Slides 目前把几个高频能力放进了同一套运行时:
- Morph 动画:不同页面里只要元素拥有相同的
id,就能自然过渡位置、大小、颜色和渐变。 - 图表:内置柱状图、折线图、饼图、散点图,支持提示、缩放和页面间形态变化。
- 多媒体:可以把视频、音频和交互状态放进演示过程里。
- 离线优先:没有网络也可以继续打开、编辑和演示,离线模式会明确阻断协作和更新操作。
- 演示工作流:编辑、演示、讲稿、备注和观众视图围绕同一个文件组织。
这些功能的共同点是:它们都服务于“文件拿走就能继续工作”,而不是把用户重新推回某个网页后台。
协作也围绕文件来设计
Bento 的实时协作不是简单地把文档上传到一个中心数据库,而是让文件携带协作所需的密钥和状态。
官方设计中,内容使用端到端 AES-GCM 加密,密钥放在文件里;中继服务只看到密文,离线修改回来后再通过项目自研 CRDT 合并。换句话说,分享文件本身就接近于分享协作入口。

但这里有一个工程边界必须讲清楚:文件持有者模型并不等于企业级身份体系。 当前文档也说明了,在线显示的名字是声明而不是强身份凭证;实时协作中的撤销是快照式行为,可能影响同一属性的并发修改。个人项目、小团队和轻量分享很有意思,强审计、强身份和复杂权限场景仍然需要额外设计。
为什么它特别适合 AI 来改?
Bento 把文档数据放在可读 JSON 中,这让 AI Agent 不必先理解某个封闭二进制格式,就可以直接修改页面结构、文本、图表和元素属性。
官方提供了 docs/agents.md,还暴露了 window.bento.loadDoc 这类加载入口。对 Codex、Claude Code 或本地模型来说,最简单的协作方式就是:给 Agent 文件访问权限,让它读懂 JSON、改完文件,再由 Bento 打开检查。
这条路线的价值不在于“AI 会不会写一页 PPT”,而在于:演示文稿开始拥有了类似代码仓库的可读格式、可修改入口和可自动化空间。 后续完全可以把它接进内容生成、产品评审、数据周报或项目汇报流程。
3 分钟上手
最轻的方式是直接打开 Bento Slides 或从 GitHub Releases 下载单文件版本:不需要安装,不需要注册,打开后就可以编辑、演示和保存。
如果想研究源码,官方要求 Node.js 20+:
cd slides
npm install
npm run dev
npm run build:single
项目还提供了 node scripts/test-sync.ts 用来验证同步相关逻辑。第一次体验建议先做一个三页小 deck,分别试试编辑、Morph 动画、图表和离线打开,再决定是否深入源码。
适合谁?不适合谁?
| 适合 | 不一定适合 |
|---|---|
| 想把演示文稿发给别人就能打开的人 | 需要移动端深度编辑的人 |
| 做产品方案、技术分享、项目周报的团队 | 依赖企业统一身份、强审计权限的组织 |
| 想让 AI 直接生成和修改 deck 的开发者 | 需要复杂模板生态和海量插件的用户 |
| 想保存一份可长期打开的离线资料的人 | 重度依赖超大视频和复杂素材管理的场景 |
小华的判断
Bento 最值得关注的地方,不是它能不能替代 PowerPoint,而是它把 文件格式、运行时、编辑器和演示器 放回了同一个开源项目里。
这让演示文稿获得了三种新属性:可以单独携带,可以离线工作,也可以被 AI 直接理解和改写。它还没有解决企业协作的所有问题,但已经给出了一个很清晰的方向:未来的内容文件,可能不只是被打开,而是打开后就能工作。
下一篇可以继续拆它的 #bento-doc 数据结构,看看如何让 Codex 自动生成一份真正能演示的 Bento deck。