跳到主要内容
TabbitAgent 案例 03 / 05
简体中文

真实录屏 · 一条指令 · 6 个商品 · 13m 33s

一条指令,6 个商品,后台自己填完了。Codex 负责决定,Tabbit 负责点击。

指令只说了一件事:把这个文件夹里的商品都录进店铺,全部到店自提。Codex 读完表格和图片,算出有 6 个商品在等着,把浏览的活交给 Tabbit。Tabbit 打开有赞后台,逐个创建商品——主图、类目、价格、库存、编码、描述、物流——保存后打开前台预览页核对,再回到列表确认商品真的在「销售中」。

6
个商品在源文件夹里
2
个在录屏中完成上架
13m 33s
状态胶囊显示的任务耗时
5
条 Agent 自己写下的纠错记录
Codex × Tabbit任务录入商品到系统用时13m 33s
左右分屏:左侧是有赞后台商品管理列表,只有 2 个系统测试商品;右侧 Codex 面板显示用户输入的指令、读取文件步骤和它的执行计划;左下角状态胶囊显示「Codex x Tabbit,任务:录入商品到系统,用时 13m 33s」。
整个现场:一个对话面板、一个浏览器、一个状态胶囊。
当时输入的指令

打开有赞商品管理页面,帮我把「上传商品案例」文件夹中的商品都录入到系统中。全部都是到点自提

一句话说清文件夹,一句话说清发货方式。录屏里紧跟的是一个本机绝对路径,本页只保留文件夹名。

00 · 完整录屏

看 Agent 怎么把后台表单填完

62 秒、无剪辑,是一段 13m33s 任务的加速回放。右边 Codex 一直在规划,左边 Tabbit 一直在操作商家后台。本页后面出现的每一个数字,都来自这一次会话。

录制于 2026-09-02。商品字段、日志文案与状态胶囊均取自录屏画面。

01 — 谁决策,谁执行

两个角色,一件事

这里没有为某一家店铺写死的脚本。一边决定每个商品要填什么,另一边真的把它敲进后台。

决策端 · Codex

读源文件、排顺序、每次保存都回头核对

  • 读取表格与图片文件夹,并把识别结果列出来:高强度螺栓、不锈钢管、金属齿轮、电动马达、钢制梁、电商项目软件。
  • 先检查现有商品列表,确认里面只有 2 个系统测试商品,所以这 6 个商品不会重复创建。
  • 每保存一个商品,都回到列表和前台预览页,确认价格、库存、图片、描述真的写进去了。

执行端 · Tabbit

像人一样操作商家后台

  • 打开发布商品页、上传主图,再逐项填写类目、价格、库存、编码、描述、参数和物流规则。
  • 跑在你已经登录的真实会话里——店铺、设置和权限都是运营自己那套。
  • 以 Tabbit CLI 任务运行(`--task youzan-goods-upload`),同一条命令可以复用到下一批商品。

Agent 列出的商品

6 个待录入2 个系统测试商品已在列表里

  • 高强度螺栓
  • 不锈钢管
  • 金属齿轮
  • 电动马达
  • 钢制梁
  • 电商项目软件
Codex 日志列出识别到的 6 个商品,说明当前列表只有 2 个测试商品,并显示一条 tabbit-cli 命令正在运行,任务名为 youzan-goods-upload。
还没碰页面,计划、查重结论和命令就已经在日志里了。

02 — 执行链路

从一句话到商品上架,十个节点

时间轴上的时间是 Agent 面板自己的「已处理」计时器读数,不是视频时间——视频是 13m33s 任务的加速录屏。

  1. 011m 33s

    读取源资料

    读入 6 张图片和 1 份 Excel 表。Agent 特别说明这一步只提取数据,不改动原文件。

  2. 022m 46s

    盘点要录的商品

    按名称识别出 6 个商品,价格、库存、单位、描述和对应图片都齐全;同时加载 Tabbit 的上传与重复操作规范。

  3. 033m 06s

    先查一遍重复

    现有列表里只有 2 个系统测试商品,这 6 个一个都不在里面,所以不会重复创建。

  4. 044m 06s

    启动浏览器任务

    通过 Tabbit CLI 启动名为 youzan-goods-upload 的任务,对接有赞后台。

  5. 056m 06s

    创建第一个商品

    打开发布商品页、选择实物商品、上传主图,然后填完名称、类目、价格、库存、编码、描述、参数和物流。5 条纠错记录里有 2 条发生在这段。

  6. 067m 46s

    保存并看前台

    点「保存并查看」直接跳到前台预览页,Agent 在那里核对价格、剩余库存和描述文案。

  7. 079m 06s

    回列表再确认一次

    回到管理页按名称搜索这个商品,找到那一行,读出编码和「销售中」状态。

  8. 0812m 19s

    按同一结构录第二个

    不锈钢管走同样的流程,换成它自己的图片、价格、库存、编码和描述。

  9. 0913m 18s

    改用编码复核

    新商品没有立刻出现在列表里,Agent 拒绝重新提交,改成按商品编码、跨全部状态搜索。

  10. 1013m 33s

    恢复浏览器实例,继续下一个

    录屏结束时,Agent 发现浏览器实例发生了切换,先恢复原任务连接,再准备录入第 3 个商品。

$HOME/.local/bin/tabbit-cli nodejs --task youzan-goods-upload --reque…有赞 · youzan-goods-upload
左侧是发布商品页,图片上传弹窗已打开;右侧 Codex 日志说明第一次点击「上传图片」没有触发系统文件选择器,于是先检查弹窗状态,避免重复上传。
第一张表单,也是 Agent 第一次拦住自己不要做重复动作。

03 — 录进去了什么

真正落进系统里的字段

全部取自录屏画面。视频结束时,两个商品在列表里都还是「销售中」。

下表每个值都是 Agent 敲进商家后台的,之后又从列表和前台读回来核对过。

商品名称价格(元)库存商品编码商品描述
高强度螺栓¥8.001,000SZ001用于连接结构件
不锈钢管¥80.00500SZ002用于输送流体

配送方式到店自提

前台预览页

高强度螺栓

¥8剩余库存 1,000

商品描述
用于连接结构件

类目、参数和物流字段同样由 Agent 填好,录屏里能看到填写过程;本页只列出画面清晰、可以逐字引用的值。

发布商品表单显示价格 8.00、库存 1000、商品编码 SZ001、商品详情编辑器,以及物流信息里选中的「到店自提」。
价格、库存、编码,填的就是运营平时手填的那张表单。

04 — 卡住的时候

卡住 5 次,每次它都换了做法

下面这些是 Agent 自己写在运行日志里的话,原文照录。这段是大多数演示会剪掉的部分,也是「能不能放手不管」的关键。

01

上传按钮点了没反应

运行日志原文图片素材弹窗已打开,但第一次点击“上传图片”没有触发系统文件选择器;我先检查弹窗当前状态,不重复上传,避免潜在的重复素材。

02

描述编辑器藏在嵌套框架里

运行日志原文商品详情编辑器位于嵌套框架中,首次定位选错了框架,尚未写入内容。我会按可编辑元素逐层定位后继续,已有基本字段和图片不受影响。

03

保存把页面跳走了

运行日志原文“保存并查看”保存成功后自动跳到了商品购买页,导致后续返回列表的定位失效;商品本身已保存。我会直接回到你提供的管理页核对该商品,再继续后续录入。

04

保存成功但列表里查不到

运行日志原文“不锈钢管”表单显示“保存成功”,但回到列表后暂时没有检索到该商品。我不会立即重提;先按商品编码和全部状态复核,确认是否只是索引延迟或保存后的跳转尚未完成。

05

浏览器实例在它脚下换了

运行日志原文浏览器运行实例刚刚发生了切换:原任务仍在旧实例中,新命令落到了一个空白实例,因此“金属齿轮”尚未开始录入。根据 Tabbit 的恢复规范,我先恢复原任务连接,避免在错误实例里重复操作。

Codex 日志同时显示两条纠错记录:一条说上传弹窗没有触发文件选择器,一条说商品详情编辑器位于嵌套框架中、首次定位选错了框架。
5 条纠错记录里,有 2 条同时出现在这一屏。
Codex 日志的最后三条纠错记录:保存成功但列表查不到、改为按编码复核、浏览器实例中途切换。
最后几秒:它拒绝重新提交,而是先恢复原来的任务连接。

05 — 到底有没有成功

它用三种方式检查自己的活

「保存成功」不算证据。Agent 会自己去看。

01

回管理列表把那一行读出来

按商品名称搜索,从列表行里读出编码、价格、库存和「销售中」状态。

02

打开前台预览页

打开顾客会看到的那个页面,确认价格、剩余库存和描述文案就是刚填进去的内容。

03

按编码跨状态搜一遍

第二个商品没有立刻出现时,Agent 按编码和全部状态去查,而不是再保存一次。

录屏在任务中途结束:第二个商品已经在列表里核对过,Agent 正在恢复原来的浏览器实例、准备录第 3 个商品。本页不宣称整批 6 个都在镜头里做完了。

第一个商品的前台预览页,显示价格 ¥8、剩余库存 1000,以及商品描述文案。
顾客会看到的那个页面,Agent 打开它来确认刚保存的值。
有赞商品列表按第一个商品名称筛选,显示一行:编码 SZ001、价格 8.00、库存 1000、状态销售中。
第一个商品,在列表里被重新找到并逐项读回。
第二个商品的发布表单:价格 80.00、商品编码 SZ002、商品描述「用于输送流体」。
第二个商品走同一套结构,换成它自己的数据。
有赞商品列表按编码 SZ002 筛选,显示不锈钢管一行,库存 500、状态销售中。
第一次按名称没搜到之后,改成按编码核对。

06 — 这个组合为什么成立

三件事让这个组合站得住

它们都不取决于模型有多大。

01

后台本身就是接口

不需要 API Key,不需要对接项目,也不需要等对方开权限。运营能在浏览器里做的事,Agent 就能做——包括那些必须点开才出现的内容。

02

源资料不用搬家

表格和图片就放在你原本存放的文件夹里读,不需要先转格式,也不需要先上传到第三方服务。

03

它会检查自己的产出

保存不是终点。Agent 会打开前台和列表,把字段读回来,确认无误再进下一个——这才是「每周都能跑」和「只能演示一次」的区别。

07 — 复刻指南

四句话,让批量录入跑得更顺

贴给任何能调用 Tabbit 的 Agent 都可以。

01

说清数据在哪、要进哪个后台

把文件夹和管理页都点名。Agent 自己去读源文件,不用你先把内容贴给它。

提示词

打开【店铺】的商品管理页面,读取【路径】这个文件夹,把里面的商品全部录入到系统里,全部按到店自提。

02

要求第一次写入前先查重

真实后台里本来就有测试商品。先说好查重,整批才不会产出垃圾数据。

提示词

在创建任何商品之前,先列出你找到的商品,并检查现有商品列表。如果已存在,跳过它并说明原因。

03

每次保存后都要求读回核对

一个「保存成功」的提示什么都证明不了。要求它去前台和列表把值读回来。

提示词

每次保存后,打开前台预览页和商品列表,把你读到的价格、库存、编码和状态汇报出来。

04

明确告诉它列表没刷新时不要重提

索引延迟看起来很像失败。写清「先按编码跨状态核对,再决定是否重试」,能避免重复上架。

提示词

如果保存后的商品没有出现在列表里,不要重复提交。先按商品编码、跨全部状态搜索,并汇报结果。

08 — 继续看

Agent + Tabbit 案例系列

同一个模式,五种不同的活:通用 Agent 负责思考,Tabbit 负责浏览。

基准测试报告

浏览器 Agent 有多快,成本是多少?

同一批任务分别在 Tabbit、Codex Chrome 和 Agent Browser 上跑,按正确率、中位耗时和每个正确答案的输入 token 计分。

查看基准测试

常见问题

试之前大家会问的问题

需要给店铺开发接口吗?

不需要。Agent 操作的就是你手点的那套后台——已登录的会话、真实的发布表单、真实的保存按钮。店铺侧不用装任何插件。

商品数据从哪来?

从你原本存放资料的文件夹里来:一份表格加商品图片。这次运行中 Agent 读了 6 张图片和 1 份表格,并明确说明不改动原文件。

如果商品已经存在会怎样?

它会先查。日志里写着现有列表只有 2 个系统测试商品、6 个待录商品都不在里面,所以不会重复;之后每保存一个还会按编码再核对一次。

页面不配合的时候怎么办?

它换策略,而不是停在那里。这次运行里出现了 5 次:点击没打开文件选择器、描述编辑器在嵌套框架里、保存后页面跳走、列表还没索引到、浏览器实例中途切换。

整批 6 个都在镜头里做完了吗?

没有。录屏完整覆盖了前 2 个商品,结束时 Agent 正在恢复浏览器连接、准备录第 3 个。状态胶囊显示这次运行用时 13m 33s。

开始使用

让 Agent 去干这些重复录入

下载 Tabbit,交给你已经在用的 Agent,把它指向那个你每周要打开四十次的后台。

免费。支持 macOS 与 Windows。

© 2026 Tabbit Browser. 理解你上下文的 AI 原生浏览器。