把数据放进
链接里。
不是数据的截图,也不是仪表盘的入口。数据本身就在 URL 里—— 人读图,agent 读数,读的是同一串东西。
喂给模型最贵的东西,是一张图。
当一张图表以图片的形式进入模型,会发生三件事:像素被重新编码成视觉 token; 数值靠读像素还原;结论就是某人从一张图上猜出来的数字。 然后它被引用、被写进报告,而没有人发现那个错误。
有损
图片是一种有损格式
图上没画的东西就没了——而模型被要求把它还原出来。
昂贵
像素比文本贵
一张 705×500 的图大约是 470 个视觉 token;同样的数字写成 JSON 大约 40 个。
无法核对
你没法验证答案
要来源,拿到的是图片的链接;要数据,拿到的是猜测。
别再给模型喂截图。
同一个链接同时给出渲染和数据。人拿到图,agent 拿到精确的、机器可读的数值—— 没有猜测这一步,也就没有翻译这一步。
人 · 渲染
加载中…
数字的一张照片。读得快,但没法核对。
agent · 数据
加载中…
改上面那串链接再回车。图变了是因为数据变了——agent 那一侧也跟着变, 因为它们本来就是同一串字符。
URL 就是 API。
每一条数据链接都是从参数到「真相的一张图」的纯函数。没有会话、没有登录、没有仪表盘、 没有刷新按钮。人改链接是为了看,agent 改链接是为了算。 除此之外什么都不用变,因为也没有别的。
加载中…
改数值、改类型、改标题。每一次输入都会重写链接并重新渲染。 界面就这些——没有别的界面了。
图只是一种渲染,链接才是通用形态。
「数据住在 URL 里」这件事跟饼图毫无关系。同一套扁平参数也能描述结构图、表格、 日历、幻灯片。换的是渲染器,不变的是链接。
同一串字符,两双手。
这是给人和 agent 协作用的工具,不是用来替代人。 人调参数是为了看清,agent 改参数是为了算清。 谁都不用去学对方的软件,因为共同的界面就是一个 URL—— 唯一一种双方早就知道怎么复制、修改和转发的格式。
人
探索
改链接、看图、转发。改了主意再改一次。链接就是一条笔记。
agent
计算
改写链接、读数据视图、返回数字。不做 OCR,不做估算,也不会把某一位数字读错。
数据链接最先证明自己的地方,是 GitHub。
不是仪表盘,不是 BI 工具。是那些「文字本来就在、图片本来就不在」的地方: issue、pull request、release note。 那里是用字写的,给人读的,而且越来越多是被 bot 读的。 链接三样都合适,而截图三样都不合适。
npx clawhub@latest install edwinjhlee/x-cmd-draw
curl 'https://datalink.ac/d?type=pie&labels=TS,Py,Go&values=4821,2312,980'
画一张饼图,把我们的错误预算按服务拆开,然后把精确的数值给我。
从链接里读,不要从图片里读——我要的是数值,不是你看图得到的印象。
最后把链接发给我,我自己想改参数。
最后那句话就是整个想法:让 agent 去读数据而不是像素, 再把链接交回给人——那串链接在人手里依然是一件可用的工具。
规范草案正在成形。
那几条不变量——自包含、双读者、参数化、可版本化、无损—— 正在被写下来,这样任何渲染器都能实现一条数据链接,任何 agent 都能放心依赖它。