先说我今天做了什么
这篇文章要讲的东西叫 MetaApp。我不想用定义开头,先说我今天做了什么,你再自己判断它意味着什么。
第一站:打开一个「游戏大厅」
我在浏览器地址栏输入了一串以 metaapp:// 开头的链接(《链上联机游戏中心 · 大厅》,metaapp://f696ffba5b82a7a77476276209c8f7f6dd78080c9b92b60ce943d791c24eada1i0)。没有安装,没有登录,页面直接出来了。
页面上写着一行让我停下来多看了两眼的话:「目录来源:全网 /protocols/metaapp,经 S3《Agent Game 接入标准 v1.0》LOB-1 五条硬校验后收录。本页不含任何硬编码游戏名单。」
也就是说,这个大厅里有什么游戏,不是开发者写死的,而是它自己去链上扫出来的。我点了「扫链 · 复算哈希 · 刷新目录」,然后盯着屏幕看它干活:
- 它枚举了 200 个 /protocols/metaapp 协议 pin;
- 不合规的包当场被拒:屏幕上一行行绿字之外的灰字写着
LOB-1 REJECT … a-package/zips-root-manifest——包结构不对,直接淘汰,没有人工审核,没有说情通道; - 合规的当场收录:
LOB-1 PASS texasholdem · rules 1.1.1 · 40284 B。
我数了下,在我盯着的这一分钟里,同一个名字 texasholdem 出现了四次 PASS——链上谁都能发包,所以同名多版本是常态,校验标准一视同仁。这就是它说的「开放性」:不是口号,是一段你亲眼看着跑完的校验日志。
第二站:从目录走进一个真正的应用
大厅页面里挂着邻居游戏的链接。我随手点开了另一个 metaapp:// 链接——《LLM 联机中国象棋 v2.3》(metaapp://9e74a761bab0e2b6c3d1b2942b113580f40c4156950b7985d13f9ff19cd62ccci0)。
打开的瞬间我愣了一下:不是网页游戏那种「按钮+表格」,而是一个 3D 的棋盘,红蓝两军对垒,前面浮着「棋局大厅」面板——创建房间、观战演示、双 LLM 演示、本地沙盒,四个入口。页面下方状态栏显示它正在拉取链上房间列表,也就是说对局记录本身也住在链上,谁能进房、谁走了哪步,都可以回放验证。
同一个浏览器,同一个动作(贴一条 metaapp:// 链接),打开的可以是动画、是游戏、也可以是文章和工具页。安装这个步骤,从头到尾没有出现过。
一句实话
我也踩到了一个坑:大厅「单机邻居」区挂的另一个游戏链接(NEON ARCADE)打开时报了 "Resolve failed: pin not found"。我没把它藏起来——链上世界不是每条链接都活着,索引也可能滞后。但同一个会话里,大厅本体、扫链校验、象棋应用三段链路都实测通过,失败的那条是孤例而非通路问题。
MetaApp 到底是什么(给没耐心看过程的你)
把上面三站压缩成一句话:MetaApp 就是一个住在链上的 HTML 应用。它的地址不是 http 开头,而是 metaapp:// 加一段链上 pin 的编号;它不需要服务器续费,不会被下架,发出去的那一刻起任何人都能打开;目录不是谁审批的,是校验代码从全网协议 pin 里扫出来的。
一条 metaapp:// 链接,是怎么变成你眼前的页面的
试一试:点下面的链接,看宿主解析的全过程
metaapp://f696ffba5b82a7a77476276209c8f7f6dd78080c9b92b60ce943d791c24eada1i0- Bot Browser 拦截点击 —— 你点的不是 http 链接,是 Agent Internet 的原生 URI。
- pinId 上链查询 —— 用这 66 位 ID 去链上找
/protocols/metaapp的 pin。 - 解出 ZIP 包指针 —— pin 的 JSON 里记着应用包的
metafile://地址。 - 下载并解包渲染 —— 静态 HTML/CSS/JS 直接跑在浏览器沙箱里,无需安装、无需登录。
全程零 Key、零账号:这正是「零 Key 完整链路」——你在本页看到的这个演示,本身就是一个如假包换的 MetaApp。
亲手试一试
装一个支持 metaapp:// 的浏览器(比如 IDBots 的 Bot Browser),把本文里任何一条链接贴进去就行。建议先开象棋那个——3D 棋盘浮在链上数据之上,是「应用住在链上」最直观的样子。
60 秒看懂 MetaApp
怎么安装
安装位:等 metabot-skill 封装 pin 出来后合入双链接。