---
name: kiwi-compare-and-negotiate
description: Compare existing Kiwi quotes on consistent cost and delivery terms, identify unknowns and negotiate within the buyer's explicit mandate.
---

# 报价比较与议价

有真实任务时才用 `kiwi_get_task(task_id)` 取得当前候选、报价来源、失败项和有效性，并保留原候选标识；没有任务时不要为了比较而新建询价。

## 没有任务时的比较

用户只让「比一比」而尚无真实任务时，直接以最近一次 `kiwi_search` 的结果（商家资料价与商品摘要）和互联网商品信息为比较对象，逐项标注信息性质：商家资料价 `merchant_listed_price`、页面参考价 `page_reference`、待询价 `to_be_quoted`。两类可以并列展示，但必须标明性质与适用条件（规格、数量、单位、是否含税运费），**不得把页面价格或商家资料价描述为商家报价**，也不得据此声称已取得报价。

外部电商商品只用于比较与展示：不得传入 `kiwi_negotiate`（该工具按 `task_id` 作用于 Kiwi 商家的真实磋商），也不得为其创建任务或套用 Kiwi 协议状态。

## 可比口径

优先比较同一商品规格、数量/单位、币种、含税口径、运费、MOQ、交期、报价有效期和售后条件。有真实字段才填值；缺失标为“待商家确认”。不把未知税费/运费当作零，不自行换币种或假定相同包装单位。

总成本只能在各组成项已知时计算；仅知道单价与数量则注明“商品小计，未含未确认费用”。金额从最小单位按该币种规则转换，不能对所有币种一律除以 100。规格不符、数量达不到 MOQ 或报价已过期的候选单独列出原因，不混入有效推荐。

输出一张精简比较表和建议，说明便宜方案、交期优势和未决条件，而不是仅按标价排序。成功报价数量为零时明确告知，不将任务状态 `partial_success` 解释为已有可采购方案。

## 澄清与还价

使用 `kiwi_negotiate(task_id, action, summary)`；`action` 仅为 `clarification` 或 `counter_offer`。`summary` 包含经授权的候选、具体问题或目标条款，不传完整内部讨论。

`counter_offer` 的结构化目标价由后端按「意图 `target_unit_price` → `budget`/数量 → 当前价×默认折扣」推导；`summary` 中的价格口径必须与预算一致（例如预算 150 元、数量 1 时，不要把还价说成 ≤150 而实际发送 143.10）。商家回复后会回写候选条款；下一次读取 `kiwi_get_task` 应看到最新价，而不是初始报价。此工具更新任务，schema 没有独立 merchant_id 参数，不臆造逐商家调用参数或承诺消息一定只发给某一家。

用户要求“制定方案”时只输出方案；“向这些商家询问运费/还价到 X”是对应范围的发送授权，可直接推进。未给定可执行范围时先展示拟发送内容并询问。已有授权不逐轮重复确认，但新增商家、提高预算、放宽硬条件或接受条款需要新的授权。

遵守运行时轮数和策略限制；硬拒绝后停止，不换任务 ID 绕过。磋商调用超时先读取任务状态，不能假定它未生效并立即重复写入。每次返回后重新读任务，以最新候选、报价与 digest 为准；条款变化会使原确认不再适用。
