用途
zonasul-groceries 用于通过命令行界面(CLI)在巴西里约热内卢的 Zona Sul 超市(zonasul.com.br)订购食品杂货。当用户需要搜索商品、构建购物清单、管理购物车、安排配送或使用信用卡结账时可以使用本技能。
主要能力
- 商品搜索:使用葡萄牙语关键词搜索商品,结果包含 SKU ID、名称、价格与库存状态,缺货商品会被标注。
- 购物车管理:按 SKU 添加商品并指定数量(卖家须为 zonasulzsa,CLI 自动处理);查看购物车(人类可读或 JSON);清空购物车;按索引移除购物车中的商品。
- 配送窗口查询:显示可用配送时段。2 小时窄窗口收费 R$7.00,5 小时宽窗口免费,当天窗口优先显示。
- 结账下单:使用信用卡结账,可先预览(不加 --confirm),再以 --confirm 正式下单;需指定配送窗口索引。
- 订单查询:查看订单列表,支持 JSON 输出。订单状态包括 "Pagamento Aprovado"(已批准)与 "Faturado"(已开票/已发货)。
- 基于食谱的下单流程:给定食谱或餐食计划时,识别配料对应的葡萄牙语杂货术语,逐项搜索,为常用食材选择最便宜项、关键食材选择中档项,向用户展示选项与价格,检查是否达到 R$100 最低金额,必要时建议添加商品,最后加入全部商品并下单。资料还提供了常见英文与葡萄牙语杂货术语对照表(如洋葱 Cebola、大蒜 Alho、番茄 Tomate、橄榄油 Azeite、黑豆 Feijao preto 等)。
使用方式
使用前需确认 CLI 已构建且认证有效:运行 make build 和 bin/zonasul auth status --json。若认证返回 "status":"expired" 或 "status":"unauthenticated",用户需重新认证,见 SETUP.md。
常用命令示例:
- 搜索:
./zonasul search "banana" --limit 5、./zonasul search "feijao preto" --limit 5 --json - 加入购物车:
./zonasul cart add <SKU> [--qty N],例如./zonasul cart add 33277 --qty 3、./zonasul cart add 11240 - 查看/清理购物车:
./zonasul cart、./zonasul cart --json、./zonasul cart clear、./zonasul cart remove 2 - 查询配送窗口:
./zonasul delivery windows - 结账:预览
./zonasul checkout --window 0;正式下单./zonasul checkout --window 0 --cvv XXX --confirm - 查看订单:
./zonasul orders、./zonasul orders --json
CVV 可通过 --cvv XXX 参数或环境变量 ZONASUL_CVV 传入。
可用环境变量:ZONASUL_JSON=1(强制 JSON 输出)、ZONASUL_PLAIN=1(强制纯文本输出)、ZONASUL_NO_INPUT=1(禁用交互提示)、ZONASUL_TOKEN(JWT 令牌,跳过钥匙串)、ZONASUL_CVV(信用卡 CVV)。
退出码含义:0 成功、1 错误、2 用法/参数无效、3 无结果/购物车为空、4 需要认证(令牌过期)、5 未找到、6 权限被拒、7 被限速、8 可重试(临时错误)、9 低于 R$100 最低金额、10 配置错误。
适用场景
适合希望通过命令行完成 Zona Sul 超市从搜索、加购到结账全流程的用户,包括按食谱或餐食计划批量采购配料,以及需要以脚本或结构化输出方式管理购物车和订单的场景。
限制
定时(AGENDADA)配送最低订单金额为 R$100。搜索需使用葡萄牙语关键词。购物车商品卖家必须为 zonasulzsa(CLI 自动处理)。结账需提供信用卡 CVV。认证过期或未认证时需重新认证。其他功能细节、收费、平台支持等信息资料中暂未提供。