一条持续产出新数据维度的产线

50 行时很聪明。到第 5000 行是另一回事。

你的 agent 一次长出一小批源里没有的列,它们直接落进下游能用的那张表 —— 线的状态存在服务端,不在它的上下文里,所以会话结束了它还在产。每一次尝试都落在同一本账上。

115 行原始 → 62 行净表 → 租出 62 行到本地 → 提交 → 被拒 → 第 2 次尝试接着同一个批次跑,从服务端状态续上,不是重开一次 → 62 行落库 · 录制时门是开着的 →

给你的 agent 装上
会话重放 · 录于 2026-07-28claude-code + tablize skill
>
生产线 · 供应商初筛 = tablize lineage 已是最新
3 张表
采集 ┄ 账外
源表
Supplier listings · raw
115
append-only · 保留重复
按 url 去重
折叠 −53
加工
Supplier listings · clean
62
首次出现的留下 · id 稳定
AI 提取
由你的 agent 执行
过程表
Supplier category
124条记录
每一次尝试都在账上
已验收版 · 镜头 62 行已验收 claude-sonnet-4.5 · 第 2 次 过程表的一个读法 —— 不是第四张表
验收门
4 条隐藏检查样本 · 门:开
4/4 · 第 2 次
 
放行 62 ·
拦下 62 次
消费 ┄ 账外
真实运行 —— 本机实例,2026-07-28。供应商行内容是为这次走查生成的样本数据; 这里重放的每一个计数、判决、模型和批次 id 都是产品自己记下来的状态。这次录制时门是开着的 —— 建线时不给金标文件,它就跑在 none 档:不判决、行标是「未验收」,而上面这套 批次流转一模一样。三个档位 →。 这张图是用官网自己的排版语言画的 —— 产品实物长这样 ↓
62 行在同一个批次的第 2 次尝试里落库 —— 这次跑批是从服务端状态续上的,没有重开。 给你的 agent 装上
在哪儿跑

在你自己的机器上,用你自己的模型 key。Tablize 不提供模型,也不提供运行时。

agent 一次拿多少

只有租给它的那一批,从来不是整张表。它没在处理的那些行留在服务端,所以表越长, 它的注意力也不会被摊薄。

明天会怎样

下一次会话从账上续跑 —— 未完的批次、租约、判决都在,不用靠一份聊天记录重建现场。

那道门是干什么的

没给金标,就没有门。给了金标文件,一道 agent 读不到的检查就会判每一批 —— 错一条拒整批, 而每一次拒批都留在账上。

01 / 为什么是现在

从来不存在的列。

LLM 能读懂从前只有人才能读的东西,并回答成一个从来不存在的列: 是制造商还是贸易商、是标准条款还是风险条款。新的数据维度,而且是规模化的。

但维度只有落进数据链路才产生价值 —— 成为一个可以 join、可以筛选、可以往上盖东西的 真实列,而不是一段随会话蒸发的回答。而规模化地生产列,就是生产:它需要能断点续跑的 批次、需要验收的门、需要一本记着「谁按什么规则产了什么」的账。

这就是 Tablize —— 新维度落地的那条链路,和让它们敢被下游使用的 那本账。

你的 agent · 任意 LLM supplier description category 4/4 Linyi Chenglong manufacturer Baoding Weiye trader Guangzhou Brightway manufacturer 62 行 · 每次只租一批
供应商表长出一列 category —— 你的 agent 写出来,验收门判过。

原始证据agent 尝试验收门下游能用的新列 完整机制,全文论证 →

02 / 产品实物

去看机制本身,别看承诺。

同一次运行,在应用里的样子,录制时门是开着的(enforce) —— 也正因为这样,拒批才看得见。未修图,100% 缩放,只在每张图头写明的地方做了裁切。

A / 产线

通过验收的行,始终连着它的来源。

整条边在一张画布上:115 行原始数据、按 url 折叠掉 53 条、62 行净表、提取,以及那道门。

门那条边上的文字是产品自己的标签,不是我们写的说明: 放行 62 · 拦下 62 次。记了但没晋升,直接画在线上。

app.tablize.com · 工作区画布2026-07-28 · 100% 缩放
Tablize 浅色主题下的画布:Supplier listings raw 115 行,一条 −53 去重边连到 Supplier listings clean 62 行,再经 AI 提取边连到 AI 过程表,卡片上写着 62 已验收和「全部 124」,然后是验收门,边上标着放行 62 · 拦下 62 次。 同一张 Tablize 画布,产品深色主题:Supplier listings raw 115 行,一条 −53 去重边连到 Supplier listings clean 62 行,再经 AI 提取边连到 AI 过程表,卡片上写着 62 已验收和「全部 124」,然后是验收门,边上标着放行 62 · 拦下 62 次。
115 → −53 → 62 → 62 已验收,门那条边上: 放行 62 · 拦下 62 次。产品自己也有两套主题 —— 这张图跟着你上面选的那个走。
B / 批次账

每一次尝试都保有自己的身份。

一行就承载了一个批次的全部账:批次 id、领了多少行、隐藏检查得分、 哪个模型产出的,以及它一共被提交了几次

下面那条状态筛条把被拒 62已验收 62 并排列着。 在这个产品里,被拒是一等状态,不是等着被清掉的错误日志。

过程表 · 批次与状态浅色主题 · 已裁切,不含行
过程表工具栏:Run 一栏显示 Waiting 0、Processed 62、Claimed 0;批次行写着 accepted、批次 id 结尾 SVCNRW6Q、62 rows、4/4、claude-sonnet-4.5、2 submissions、7/28 01:56 PM;下面的状态筛条是 All 124、accepted 62、rejected 62、corrected by a person、hand-edited · not vetted。
62 行 · 4/4 · claude-sonnet-4.5 · 提交 2 次 —— 通过的那一批,而更早那次被拒仍然算在同一本账里。

同一次运行还有一个角度 —— 账上的被拒行 →

截图来自 2026-07-28 的一台本机实例。机制、id、计数、判决和系统列都是产品自己的状态; 供应商那几行是为那次走查生成的样本数据。批次账那张只有产品浅色主题版,在两个站点主题下都照原样显示 —— 我们宁可给截图打标签,也不给证据加滤镜。这一页没有任何客户 logo,因为目前确实没有可展示的。

03 / 我该用吗?

大多数数据活儿这一整套都不需要。

一个 agent、一个下午、错了也不贵 —— 那么一个 CSV 就是正确答案, 上账本纯属额外开销。勾选真正符合你情况的那几条。

成立的条件

0/ 10

还没作答

勾选符合你实际情况的那几条。结果是一个建议, 而三个结果里有一个是「先别用」。

下一步 —— 装之前,先把下面那节边界读完。

04 / 边界

一行「落库」到底意味着什么,和不意味着什么。

这是整页最吃重的一节。一本夸大自己覆盖范围的账,比没有账更糟 —— 因为人会因此停止检查它从来就没管过的那一段。

采集 你的 · 账外 在账上 —— Tablize 管这一段 原始证据 尝试 ■ 验收门 已验收 消费 你的 · 账外
账管中间这一段。两头始终是你的。
这一段之内

Tablize 保证

标着「已验收」的行意味着它通过了当时那个版本的标准和检查样本,并且版本被记了下来。 标着未验收的行从来没被判决过 —— 标记本身会告诉你手上是哪一种

这一段之外

Tablize 不保证

结果真的被谁用了。在我们自己第一个跑通全流程的租户那里, 136 行里有 128 行通过验收之后从来没被下游取走过 —— 连续五轮,没人察觉,而账本自始至终是准的。

完整边界 —— 四条保证,四条不保证 →

05 / 怎么开始

给你的 agent 一条活得比这次对话更久的管线。

四条命令。配对时在浏览器里登录一次,不用看一遍控制台, 也不用把一个长期有效的密钥粘进终端

~/your-project · 安装
$ npm i -g @tablize/cli
$ tablize install
$ tablize login --url https://api.tablize.com
$ tablize doctor
给 Claude Code / Codex 的 prompt
展开完整的 9 步 prompt —— 「复制」按钮复制的是全文
把 Tablize 接成这个项目 clean → extract → accept 这一段的耐久管线。要点是:流程状态存在服务端,不在你的上下文里。

1. 运行 `npm i -g @tablize/cli`,再运行 `tablize install` 把自带的 agent skill 铺下去。
2. 运行 `tablize login --url https://api.tablize.com`,然后叫我在浏览器里确认配对。
3. 运行 `tablize doctor`,把版本、skill、服务端、工作区的任何不一致修掉。
4. 读一遍这个项目,先提出原始证据的契约和提取结果的 schema,再建管线。
5. 第一次跑,提取边就建成不带金标文件的 —— 它跑在 `none` 档:不判决、行标是「未验收」。不要为了填满某个字段去编金标。
6. 按小批干活:`batch pull`、算、`batch submit`,然后再来一批。永远不要把整张表读进上下文;要续跑就读 `tablize context`,不是读这段对话。
7. 信一行数据之前,先用 `tablize transform show ` 读它的 `gateMode`:只有 `enforce` 会把行标成「已验收」。档位在建线时就定死,所以要切到 `observe` 或 `enforce` 就得新建一条线 —— 等这条管线值得保护了再提,而且先问我,因为金标由我签字,不是你。
8. 绝不为了躲开一直过不去的金标,把线重建成 `none` 档。那是门在干它该干的事。
9. 明确把「采集是否完整」和「下游有没有真的用上」留在 Tablize 的保证范围之外。

为什么是浏览器配对,而不是一个填 API key 的输入框: 这里的命令由 agent 执行的次数不比人少,而 agent 没有浏览器、也没有密码。 配对让它靠一次人工点击就拿到可用凭证 —— 而这个密钥从头到尾没有出现在网页、 剪贴板或者你的 shell history 里。

实际会发生什么 · CLI 与浏览器的真实输出

终端打出一个短码,然后等着。

  🔐 Sign in to tablize
  Opening: https://app.tablize.com/cli-login?code=…
  Confirm this code matches: BFTK-9QDX

  Waiting for approval....

此刻还什么都没授出去。没人确认的话,这个请求会自己过期。

浏览器写清是哪个客户端,以及具体授了什么。

允许这个命令行登录?
有一个命令行客户端请求连接到你的账户。

客户端   tablize CLI · your-mac · you
校验码   BFTK-9QDX

它将能做什么
读写你的数据。它不能管理成员、策略或账单,
并且不会过期 —— 想断开,随时到
个人资料 → API keys 里吊销。

[ 允许 ]   [ 拒绝 ]

确认之前,你要把这个校验码和自己终端里的那个对一遍。 点拒绝不会授出任何东西,并且正在等待的终端会收到通知、停下来。

CLI 收到密钥,doctor 查三层。

$ tablize doctor
{
  "summary": { "ok": 9, "warn": 0, "fail": 0 },
  "message": "all three layers healthy against
     https://api.tablize.com (9 ok, 0 warn) —
     this verdict covers that server only",
  "next": "tablize context   # open tasks, recipes, rules"
}

装的和跑的是同一个吗?skill 和 CLI 对得上吗?服务端能力在线吗? 任何一项不过,回执里都带着那一条的 fix 命令, 所以 agent 可以自己修,不用回头问你。

06 / 定价 —— 同一个底座,档位只是台阶

免费起步。线真的在产了再付费。

每个档位跑的是同一个引擎,只有当这条线的产量上去了,才需要往上迈一级。账本就是计量表,它数的是交付出去的列、不是花掉的力气:重试与被拒的批次一律不计

免费

$0

共享服务器 · 有配额上限

  • 完整 CLI + agent skill + MCP
  • 共享多租户服务器
  • 用量受配额限制

Pro

最多人选

按用量

只为真正跑起来的部分付费

  • 独占实例 · 空闲自动挂起
  • 工作区持久保留
  • 只为真正跑起来的部分付费

企业

自托管

常驻 · 私有

  • 真正的私有部署
  • 跑在你自己的基础设施上
  • 你的设施,你的数据

公开测试版 · 免费 · macOS、Linux 与 Windows

把源里没有的下一列,长出来。