Coding

1688-shop-crm-customer-filter

Try it

1688 店铺 CRM 客户智能筛选 Skill。支持按标签、金额、活跃度、采购意愿、自定义属性等条件筛选客户,支持排序、分页、统计,以及查看和新增自定义属性。 触发词:筛选客户、查找客户、客户列表、询盘未转化、询盘未成交、有成交客户、新增字段、自定义属性、帮我找客户、我的客户。

What it does

只能通过 Bash/命令行执行 ,不要把它当作 Python 函数调用。Python 运行时使用 ,Windows 可使用 ;依赖第三方库 。

The skill document

1688 店铺 CRM 客户智能筛选

统一入口:

python3 {baseDir}/cli.py  [options]

只能通过 Bash/命令行执行 cli.py,不要把它当作 Python 函数调用。Python 运行时使用 python3,Windows 可使用 python;依赖第三方库 requests

常规筛选、排序、分页和字段管理只需阅读本文件。仅在需要低频接口契约或排障细节时查看 references/

核心工作流

  1. 判断需求属于客户筛选、统计还是字段管理。
  2. 将用户表述映射到本文件的字段和业务语义;只有预置字段无法覆盖时才查询动态字段配置。
  3. 构造 filters / sorts,范围和同字段多值用一次 in 表达。
  4. 执行一次查询并使用首次成功结果;只有明确错误或空结果需要诊断。
  5. 默认直接展示返回的 markdown,再用业务语言补充必要说明。

典型查询通常只需 2~3 步,无需额外维护任务清单。

命令

命令用途示例
alibaba.1688.customer.list筛选、排序、分页查询客户cli.py alibaba.1688.customer.list --filters-file filters.json --page-size 20
alibaba.1688.customer.attr.field.config查看最新动态字段和标签cli.py alibaba.1688.customer.attr.field.config --raw
customer_attr_add新增自定义属性cli.py customer_attr_add --key credit_score --label 信用分

客户查询

参数

选项说明
--filters-file 筛选条件 JSON 文件,所有平台推荐,Windows 必须
--sorts-file 排序条件 JSON 文件,所有平台推荐,Windows 必须
--filters 直接传筛选 JSON,仅 Unix/macOS 兼容
--sorts 直接传排序 JSON,仅 Unix/macOS 兼容
--page-num 页码,从 1 开始,默认 1
--page-size 每页 1~100 条,默认 20
--rawdata.items 返回当前页完整客户记录;默认仅返回摘要和分页元数据

不要使用 --items--limit--count 等未定义参数。

文件入参

filters 和 sorts 都必须写入 JSON 文件;把 JSON 串传给 --filters-file / --sorts-file 一定失败(直接传 JSON 只能分别使用 --filters / --sorts)。

[{"field":"site_flag","op":"=","value":"Y"}]
[{"field":"last_inquiry_time","order":"desc"}]

调用示例:

python3 {baseDir}/cli.py alibaba.1688.customer.list \
  --filters-file /absolute/path/filters.json \
  --sorts-file /absolute/path/sorts.json \
  --page-size 20

Windows 下禁止直接传 filters/sorts JSON,也不要用 shell echo 拼接 JSON。唯一稳定的形态是在同一条 python -c 命令内完成写文件和调用,把文件绝对路径通过 Python 变量直接传给 CLI:

python -c "import json,os,subprocess,tempfile; d=os.environ.get('NEWTON_SCRATCH_DIR') or os.environ.get('TEMP') or tempfile.gettempdir(); os.makedirs(d,exist_ok=True); f=os.path.join(d,'filters.json'); json.dump([{'field':'site_flag','op':'=','value':'Y'}],open(f,'w',encoding='utf-8')); print(f); subprocess.run(['python',r'{baseDir}/cli.py','alibaba.1688.customer.list','--filters-file',f,'--page-size','20'])"

路径规范(违反必现文件找不到):

  • 写文件和调用必须在同一条命令内完成;若平台强制分步,写文件命令必须 print(f) 出绝对路径,下一步只能使用这个打印出的字面路径。
  • 禁止自行重新推导路径:不要用 %TEMP%$TEMP$env:TEMP/tmp./filters.json 等相对路径或 shell 变量。
  • NEWTON_SCRATCH_DIR%TEMP% 在 Newton/Windows 沙箱中指向不同目录,混用一定失败。
  • 两个环境变量都缺失时,示例会 fallback 到 tempfile.gettempdir(),避免 makedirs(None) 崩溃。

filters 与 sorts

filter 结构:

{"field":"user_interest_level","op":"=","value":"高意愿"}
  • field:筛选字段。
  • op=><>=<=likeinnot in。不支持 or,也没有跨字段 OR 能力;同字段多值请用 in 单次表达。
  • value:筛选值;in / not in 必须传 JSON 数组字符串,例如 "[\"VIP\",\"L3\"]"

sort 结构:

{"field":"last_inquiry_time","order":"desc"}

order 只能是 ascdesc。可排序字段:

  • last_inquiry_time
  • recent_30d_purchase_amount
  • gmt_create
  • pay_ord_amt_std_all

可筛选字段

以下字段可直接使用,无需先查询字段配置:

字段业务含义常用值或操作符
buyer_nick买家昵称like
site_flag客户来源渠道Y=站内,N=站外
source历史买卖关系INQUIRY=询盘未成交,ORDER=历史有成交
phone手机号= / like
follower跟进人=
shop_ids归属店铺=
tags标签、买家等级in / not in
recent_30d_activity_score近 30 天活跃度高、中、低
user_interest_level采购意愿高意愿、中意愿、低意愿
procurement_mode_30d近 30 天合作关系新买家、未复购老买家、复购老买家
user_label_preset客户身份B类买家、非淘电商、个人买家、内容&社交电商、实体店、淘天电商、餐饮住宿店、国内跨境、海外买家、超市百货店、淘宝直播、微商、抖音小店、企业自采、超级买家;使用 in
buyer_credit_level买家等级L0~L6
lost_status流失状态未流失、已流失、稳定复购、即将流失
pay_ord_amt_std_all历史累计支付金额数值比较
pay_mord_cnt_std_all历史累计支付订单数数值比较
recent_30d_purchase_amount近 30 天成交金额数值比较
pay_ord_amt_1w近 7 天支付金额数值比较
pay_mord_cnt_1w近 7 天支付订单数数值比较
pay_ord_amt_1m近 30 天支付金额数值比较
last_inquiry_time最近询盘时间日期比较
gmt_create客户创建时间日期比较
web_action_1m_level月度网站活跃度高、中、低
ord_cnt_1m_level月采购频率等级高、中、低
gmv_1m_level月采购金额等级高、中、低
se_1m_level月度搜索频率高、中、低
interest_action_1m_level月度兴趣行为高、中、低
inq_action_1m_level月度询盘频率高、中、低
pay_action_1m_level月度下单频率高、中、低

gmt_modifiedlast_order_time 可能出现在结果中,但不可用于筛选。用户需要预置表以外的自定义属性时,调用 alibaba.1688.customer.attr.field.config --raw,直接使用返回的 attrKey,不要添加 attr_ 前缀。

标签由商家维护,实际可用标签可能变化;只有需要确认最新标签时才查询字段配置,不要把 field_config 作为每次查询的固定前置步骤。

业务语义

范围和多值

  • “X 以上”不包含 X;“X 及以上”包含 X。
  • L3 以上 → L4、L5、L6。
  • L3 及以上 → L3、L4、L5、L6。
  • 即使上游括注与该规则冲突,也按“以上不含本级、及以上含本级”处理。
  • 同字段多值和等级范围必须用一次 in 查询,不要拆成多次查询再汇总。
  • 标签筛选固定使用 tagsin;单标签也使用数组字符串。

示例:

{"field":"tags","op":"in","value":"[\"L3\",\"L4\",\"L5\",\"L6\"]"}

金额口径

用户表述字段
累计、总、历史、全部支付/采购/消费金额pay_ord_amt_std_all
近 30 天、近一个月、近期成交金额recent_30d_purchase_amount
近 7 天支付或成交金额pay_ord_amt_1w
仅说“采购金额/消费金额”,无时间范围默认 pay_ord_amt_std_all

不要在累计口径和近 30 天口径之间替换。面向用户展示时说明所用口径;多轮追问若仍是相同金额维度,沿用上一轮字段,除非用户明确改变时间范围。

常见映射

用户意图筛选条件
高意愿user_interest_level in ["高意愿"]
中等意愿及以上user_interest_level in ["中意愿","高意愿"]
近 7 天有成交pay_mord_cnt_1w > 0
历史有成交source = ORDER
询盘未成交/未转化source = INQUIRY
近 7 天询盘未转化/未下单last_inquiry_time >= 当前日期-7天pay_mord_cnt_1w <= 0,默认 last_inquiry_time desc
流失风险lost_status in ["即将流失","已流失"]
累计支付超过 1 万pay_ord_amt_std_all > 10000
近 30 天成交超过 1 万recent_30d_purchase_amount > 10000

user_interest_level 空值表示未评估,不得归为低意愿。

查询规则

首次结果与重试

  • 首次调用成功后直接使用结果,不重复执行相同查询。
  • 只有参数、网络、限流等明确错误才修正后重试,最多 3 次。
  • 空结果先检查字段、操作符、枚举值、范围换算和金额口径。
  • 如需拆解空结果,每个子条件最多查询一次且 page-size=1,总诊断不超过 3 次。
  • 不要通过反复更换 page-size、重复 raw 查询或臆造字段探测后端能力。
  • 多轮追问仍指向同一业务维度时沿用上一轮字段;只有用户明确切换维度时才重新映射。

探索预算

  • 常规查询直接执行,不预先探测字段。
  • 只有预置字段无法覆盖时才查询一次 field_config。
  • 只有需要确认返回样例字段时才使用一次 --raw
  • 若字段不存在,明确告诉用户数据源没有该字段,不得静默省略或用相近字段冒充。

能力边界

  • 只能使用本文件「命令」表中列出的能力;禁止尝试加载或探测不存在的命令、参数或能力。
  • 不要为了满足用户而臆造字段、枚举值或操作符。

输出

所有命令输出 JSON,稳定包含 successdata

  • 默认 alibaba.1688.customer.list 返回 successmarkdown 和轻量分页元数据。
  • --raw 不返回 markdown,当前页客户位于 data.items
  • raw 客户字段使用下划线 attrKey,如 buyer_nicksite_flaglast_inquiry_timeextraAttrs 的键也使用 attrKey。
  • __state_update__filterssortsaction 是框架内部状态字段。Agent 不解析、不展示,存在时原样保留。

展示时直接输出 markdown,不要改写或把分析混入表格。补充说明使用业务语言,不向用户暴露命令名、filters、sorts、原始 JSON、接口字段结构、调用过程或内部思考过程。

若用户要求的结果字段不存在,必须说明数据缺口。例如只有流失状态而没有具体流失原因时,应明确说明无法直接提供原因。

退出码:0=成功,1=参数/业务错误,2=认证失败,3=限流/网络/服务异常。

字段管理

查看字段

仅当需求涉及未知自定义属性或需要确认最新标签时执行:

python3 {baseDir}/cli.py alibaba.1688.customer.attr.field.config --raw

新增字段

python3 {baseDir}/cli.py customer_attr_add \
  --key credit_score \
  --label 信用分 \
  --type number
  • --key:字段编码,只允许小写字母、数字和下划线。
  • --label:显示名称。
  • --typestringnumberdateboolean,默认 string
  • --value:可选初始值。

执行写操作前,先向用户展示 key、label、type 和 value;只有用户明确确认后才能执行。

安全与合规

  • 禁止按城市、省份、区县筛选、展示、分析或分组,也不得用其他字段近似替代地区。
  • site_flag 仅表示来源渠道,不代表客户质量、有效性或启用状态。
  • 站内客户 site_flag=Y 的手机号必须隐藏;不要绕过 CLI 获取受限字段。
  • 不要在用户可见内容中暴露 AK、签名、内部接口、技术参数或原始响应。
  • 不要为了满足用户而猜测不存在的字段、枚举值或能力。

异常处理

情况处理
AK 未配置或失效提示检查平台配置,不要求用户在对话中发送密钥
参数错误修正字段、操作符、值或分页参数后最多重试 3 次
限流稍后重试,不高频连续调用
网络或服务异常简要说明暂时不可用,不输出内部响应正文
无匹配数据复核条件后如实告知,不伪造结果

相关环境变量由平台注入:ALI_1688_AKSKILL_ENVOPENCLAW_CONFIG_DIRSKILL_CHANNELSKILL_NAMESKILL_VERSION

按需参考

  • 客户列表完整接口契约:references/capabilities/alibaba.1688.customer.list.md
  • 动态字段配置契约:references/capabilities/alibaba.1688.customer.attr.field.config.md
  • 新增属性契约:references/capabilities/customer_attr_add.md

常规任务无需预读这些 references。

Related skills

Generate and edit Draw.io, Mermaid, and Excalidraw diagrams from natural language using a structured JSON spec.

by nssa.io1.0k installs47 stars

Join a video meeting as an AI bot with voice, avatar, and screenshare across four operating modes.

by johnpatternai21 installs8 stars

Trade crypto, manage a multi-chain wallet, and query an AI analyst from one CLI.

by lowesyang162 installs109 stars

Post videos, photos, text, and documents to 10 social platforms through a single REST API call.

by victorcavero14375 installs50 stars

Adaptive web scraping in Python that bypasses anti-bot systems and scales from single requests to concurrent crawls.

by d4vinci399 installs28 stars

More from 1688aiinfra

Browse all skills

Diagnose 1688 store health with a two-stage flow: overall judgment plus a deep-dive report in your chosen direction.

by 1688aiinfra13 installs

Diagnose 1688 product performance and traffic issues from real CLI data, then hand off to image or title optimizers.

by 1688aiinfra13 installs

1688商品搜索SKILL:提供完整的1688商品搜索能力,包括类目查询、关键词搜索、图片搜索、商品详情、相关性商品、拉取货盘底池等9个核心接口。 支持多语言搜索和商品推荐,使用1688开放平台官方API,统一鉴权,Token全局缓存共享。

by 1688aiinfra65 installs3 stars

1688智能选品找货能力。通过文字、图片或链接搜商品、找同款、找相似款,支持批量采购比价、热销选品、跨境找货、场景化选品及多条件筛选(价格/销量/材质/属性排除等)。 触发词:找商品、找同款、搜商品、帮我找、想要XX、图片找货、链接找货、以图搜图、选品、批发、找货源、热销、比价、最便宜、按销量排序、出口、跨境、找...

by 1688aiinfra39 installs

将1688的商品铺货到俄罗斯电商平台Ozon(上架),通过Ozon官方API实现商品信息的上传和状态查询。适用于需要将单个1688的商品上架到Ozon的场景。

by 1688aiinfra40 installs2 stars

1688商品标题优化 工具能力:为商品标题添加热词优化(快速、基于规则)和 LLM 深度重写(高质量、自然流畅),支持用户输入偏好。如果用户没有选择想优化标题的商品,技能中可以出组件让用户选择; 触发词:优化标题、标题优化、改标题、重写标题、商品标题、标题改写、分析标题、我要优化标题、标题里哪些词没用、标题里应该加哪些热搜关键词、我的商品标题怎么优化?、我的标题怎么优化?、我要优化商品标题

by 1688aiinfra15 installs