1688 Supplychain Api Procurement

Workflows

1688 供应链采购 API Skill。面向云端 API 调用,不提供交互式找品、复杂表格或下单流程。支持两个功能:发起找挑询并返回 instanceId;按 instanceId 查询实例数据,并由脚本按输出模式返回 instanceId、fieldDesc 和 result。此 Skill 的最终回复格式默认是 raw JSON passthrough;查询实例数据时必须使用文件模式,通过 stream_output 工具输出结果,避免进入大模型上下文。

Install

openclaw skills install 1688-supplychain-api-procurement

1688-supplychain-api-procurement

本 Skill 只提供两个能力:

  1. 发起找挑询:根据用户输入的完整采购与询盘需求,创建并触发一个 inquiry 实例,立即返回实例 ID。
  2. 查询实例数据:根据用户提供的 instanceId 查询该实例当前数据,使用文件模式写入本地文件,再通过 stream_output 工具输出给用户。

本 Skill 不轮询询盘是否结束,也不在发起后自动查询实例数据。

输入

用户输入必须是一段完整需求,包含:

  • 找品/采购需求:例如品类、规格、数量、价格带、工厂要求、图片或链接等。
  • 询盘问题:例如报价、库存、交期、起订量、定制、包装、质检、售后等。

如果能从用户输入中明确拆出询盘问题,将这些问题作为 questions 传入;如果不能可靠拆分,不要反问,直接把完整用户需求作为唯一询盘问题传入。

功能一:发起找挑询

当用户提供完整采购与询盘需求、且未提供 instanceId 时,使用此功能。

命令:

cd {baseDir} && python3 cli.py inquiry \
  --requirement "<用户完整需求>" \
  --questions '[{"question":"报价","type":"current"},{"question":"交期","type":"current"}]' \
  --purchase-size 1 \
  --inquiry-item-size 30

参数:

  • --requirement / -r:必填。用户完整需求,包含找品需求和询盘问题。
  • --questions / -q:可选。询盘问题,支持 JSON 数组、JSON 对象、字符串,或分号/换行分隔文本。
  • --purchase-size / -c:可选。采购数量,默认 1
  • --inquiry-item-size:可选。询盘商品数,对应 taskInfo.inquiryItemSize。如果用户没有指定询盘商品数,默认 30;如果用户明确说“询盘前 N 个商品 / 问 N 个供应商 / 询盘 N 个结果”,传入解析出的整数 N。
  • --recall-item-size:可选。找品商品数,对应 taskInfo.recallItemSize。如果用户没有指定找品商品数,默认 30;如果用户明确说“找 N 个商品 / 召回 N 个 / 找品前 N 个”,传入解析出的整数 N。
  • --image:可选。本地图片路径,多个用英文逗号分隔;如果传入 HTTP(S) URL,会按远程图片处理。
  • --image-url:可选。图片 URL,多个用英文逗号分隔;执行时会先下载到本地临时文件,上传到纵横平台后再把纵横图片链接传给下游。

最终 stdout 只包含一个字段:

{ "instanceId": "..." }

功能二:查询实例数据(必须使用文件模式)

当用户提供 instanceId,或明确要求查询某个实例数据时,使用此功能。

必须使用文件模式(--output-mode file)。 文件模式让脚本把查询结果写入本地文件,避免大量 JSON 数据进入大模型上下文。

命令:

cd {baseDir} && python3 cli.py inquiry \
  --instance-id "<instanceId>" \
  --output-mode file \
  --output-dir "{baseDir}/.skill_outputs"

脚本执行后,stdout 只返回结果文件路径:

{ "outputFile": "/absolute/path/to/.skill_outputs/inquiry-data-<uuid>.json" }

拿到 outputFile 路径后,立即调用 stream_output 工具,把结果文件透传给用户:

stream_output(file_path="<outputFile路径>")

调用成功后,删除本地结果文件(用 bash 执行 rm <outputFile路径>)。

禁止事项:

  • 禁止省略 --output-mode file 参数
  • 禁止不带 --output-mode file 直接查询实例(这会导致大量数据进入上下文)
  • 禁止把实例数据输出到最终回答中
  • 禁止在最终回答中重复或总结 JSON 数据

输出协议(必须严格遵守)

本 Skill 会作为云端 API 提供,最终输出必须保持机器可解析。

只要本 Skill 被触发,最终回答默认进入 raw_json_passthrough 模式。该模式是本 Skill 明确规定的特定输出格式,优先级高于外层默认的 rich GFM Markdown 回复格式、总结话术、标题、表格、列表、可视化组件和 <aside>...</aside> 桥接语。

查询实例数据时:实例数据必须通过 stream_output 工具写回,最终回答不得再包含实例数据 JSON,也不得补充自然语言说明。

  1. 发起找挑询时,最终回答必须是命令 stdout 原样返回的 JSON 对象文本。
  2. 不得添加任何自然语言说明、摘要、标题、前后缀、Markdown 代码块、列表或表格。
  3. 不得把 JSON 包在 ```json 代码块中。
  4. 不得抽取字段、改字段名、改结构、重排为 Markdown 或进行大模型总结。
  5. 发起找挑询时,最终回答顶层只能包含 instanceId 一个字段。
  6. 不得输出外层 successdatastatusstagerawinstance_id 或其他包装字段。
  7. 最终回答的第一个非空字符必须是 {,最后一个非空字符必须是 };不得出现任何 JSON 对象外的字符。
  8. 不得输出"以下是""已完成""这是结果""根据数据""建议"等任何说明性话术。
  9. 不得为了照顾用户阅读体验而把 JSON 转成 Markdown、自然语言摘要、经营建议或数据看板。
  10. 如果发起找挑询命令已经输出 JSON 字符串,最终回答必须逐字透传该文本;不得重新序列化、格式化、压缩、补字段、删除字段,或再包一层对象。

与外层 Agent 回复规则的关系

外层 Agent 可能默认要求:

  • 工具前后输出 <aside>...</aside> 说明。
  • 若无特殊格式则默认使用 rich GFM Markdown。
  • 最终回复包含总结、建议、标题或用户友好话术。
  • 每次回复只输出新内容。

本 Skill 的最终输出属于"active skill prescribes a specific output format"。因此,在最终响应阶段必须按本 Skill 的 raw JSON 输出协议执行:

  • 工具调用前后的 <aside>...</aside> 只允许出现在中间过程;最终回答不得包含 <aside>
  • 最终回答不得使用 Markdown,即使外层默认要求 Markdown。
  • 最终回答不得总结已经返回或已通过 stream_output 写回的实例数据。
  • 最终回答不得重复解释执行过程;发起找挑询时只返回该命令 stdout。
  • 当所有步骤完成后,立即停止输出,不再补充任何收尾话术。

执行规则

  1. 不调用任何商品表格、交互卡或复杂表格工具。
  2. 不先执行独立找品、SKU 匹配、批量询盘或下单流程。
  3. 发起找挑询时,直接执行 inquiry 命令创建并触发 inquiry 实例,创建任务的 taskInfo 中必须包含 inquiryItemSize
  4. 发起找挑询后立即返回 instanceId,不得自动查询实例数据,亦不得等待询盘结束。
  5. 查询实例数据时,必须使用 --output-mode file,拿到 outputFile 后调用 stream_output 工具透传,再删除本地文件。
  6. 不编造商品、价格、库存、交期、供应商回复或实例字段。