赤霄 WhatsApp助手 使用说明
1. 产品简介
赤霄 WhatsApp助手 是一款 Windows 桌面应用,通过 WebView2 前端 + Node.js 桥接进程,同时控制多个 WhatsApp Web 会话,提供批量群发、账号养号、AI 自动回复、文本/语音翻译等能力,并内置 20+ 维度的浏览器指纹反检测策略(Stealth Layer)。
核心能力一览
| 能力 | 说明 |
|---|---|
| 群发任务 | 三种目标源(手动号码 / Google 地图采集 / 账号既有联系人)、三种内容形态(纯文本 / 仅文件 / 文本+文件)、实时执行报告并可导出 CSV |
| 养号 Farming | 主动模式:账号间自动化交叉对话循环,按配置间隔调度(默认 300s,实际 ±50% 随机化),AI 生成或静态短语库话术,需要 ≥2 个账号 |
| AI 自动回复 | 被动模式:收到消息时由 LLM(DeepSeek / OpenAI / 自定义)生成回复,支持关键词过滤、接待人设提示词、回复冷却、语音转写、转人工 |
| 文本/语音翻译 | 查看窗口内 hover 收到的文本/语音消息出现 [译] 按钮:文本经 LLM 直译并在气泡内显示译文;语音经 STT 转写 + 翻译,可「发译文」或以 TTS 语音回复(edge-tts 免费合成);发送侧同样支持先翻译后发送 |
| 地图采集 | 在独立 Google Maps 窗口中采集商家公开号码,增量合并进全局数据池,随群发任务自动做注册验证 |
| 反检测 | 高斯随机延迟、模拟打字、WebRTC 防泄漏、多账号代理隔离、fail-closed 策略等 |
2. 系统要求与安装
2.1 系统要求
| 项目 | 要求 |
|---|---|
| 操作系统 | Windows 10 1809+ / 11(x64 与 ARM64 均可,ARM64 以 x64 兼容模式运行;32 位安装包仅限 32 位系统) |
| 运行时 | Node.js 与 WebView2 运行时 —— 安装程序会自动检测并静默安装(安装包已捆绑 Node(x64 为 v24.21.0 / x86 为 v22.23.2,均满足检索引擎要求的 Node 22.15+)与 Edge WebView2) |
| 权限 | 需要管理员权限安装(PrivilegesRequired=admin) |
| 网络 | 需要能访问 WhatsApp Web(web.whatsapp.com);AI 功能需要能访问所选的 LLM 端点;激活需要访问激活服务器 |
| 浏览器 | 应用自带便携版 Chromium,无需额外安装浏览器 |
| 账号数 | 单实例最多管理 20 个 WhatsApp 账号 |
2.2 安装步骤
- 从官方发布渠道(GitHub Releases:
CrimsonApex-Releases)下载对应架构的安装包:文件名形如CrimsonApex.WhatsApp.Tool-<版本>-Setup.exe(32 位)或CrimsonApex.WhatsApp.Tool-<版本>-x64-Setup.exe(64 位)——具体版本号以官网下载区 / Releases 页显示的最新版本为准(本文不写死版本号,避免与线上不一致)。 - 右键以管理员身份运行安装包,按向导完成安装(可勾选创建桌面快捷方式)。
- 若本机缺少 Node.js 或 WebView2,安装程序会自动静默安装捆绑的运行时,之后自动启动应用。
- 安装完成后首次启动,进入「未激活」状态 —— 请先完成激活(见第 3 节)。
2.3 数据与卸载
- 运行时数据目录:新装默认
%LOCALAPPDATA%\CrimsonApex;从旧版本升级的机器沿用原%APPDATA%\CrimsonApex(升级不会搬动你的数据)。
目录内统一放:账号会话.data_runtime\acc_{账号ID}\、配置config.json、授权license.bin、接待与知识包数据、线索库、日志、崩溃转储、检索引擎档目录dsh-home、工作区workspaces、临时目录temp、更新包update。 - 授权文件迁移:旧版本把
license.bin单独放在%APPDATA%\CrimsonApex,新版本首次启动会把它搬进数据根(拷贝校验通过后才删除旧文件;失败则继续用旧位置,不会导致重新激活)。 - WebView2 缓存目录:
%LOCALAPPDATA%\CrimsonApex.WebView2(浏览器内核配置,固定在本地,不随数据根移动) - 卸载时会弹窗询问是否一并删除业务数据(线索库、知识包、账号会话、密钥配置);选「否」即保留,以后重装可直接接着用。静默卸载(
/SILENT)默认保留。 - 企业环境若把
%APPDATA%重定向到网络共享:目录联接无法在网络路径创建,会直接影响「线索检索」。请设置环境变量CRIMSONAPEX_HARNESS_DIR=<本地路径>(只把档/工作区目录放到本地,会话数据不动),或CRIMSONAPEX_DATA_DIR=<本地路径>(整个数据根搬家)。
3. 激活与许可
本软件采用网络激活授权机制:客户端向激活服务器请求授权,服务器签发 Ed25519 签名授权凭证,客户端本地验签后解锁全功能。未激活时所有功能完全锁定(仅可查看界面)。
3.1 激活流程
- 点击标题栏右侧的 🔑 激活 按钮,打开「许可证激活管理」弹窗,查看当前许可状态。
- 点击「🔍 查询本机机器码」,把显示的机器码复制发给运营方(激活按机器码绑定)。
- 运营方在激活服务器核发授权后,客户端联网自动获取并本地验签解锁(也可在弹窗内按运营方指引完成绑定)。
- 激活成功后标题栏显示「已激活」,全功能解锁。
3.2 许可状态说明
| 状态 | 含义 |
|---|---|
| Unactivated(未激活) | 未获得授权,全部功能锁定 |
| Pending(待验证) | 已提交激活请求,等待服务器响应 |
| Authorized(已授权) | 验签通过,全功能可用 |
| OfflineGrace(离线宽限) | 短暂离线仍可用(约 48 小时时钟容忍),联网后自动续期 |
| Expired(已过期) | 授权过期,需重新激活/续期 |
| NetworkError(网络异常) | 无法连接激活服务器,请检查网络 |
3.3 申请 AI 与语音 Key(图文教程)
软件不自带任何 Key,需要你自备两个 —— 都只要几分钟,其中语音转写那个完全免费:
| 用来做什么 | 去哪申请 | 费用 | 填到程序的哪里 |
|---|---|---|---|
| AI 自动回复 意图评级、翻译也用它 |
DeepSeek 开放平台platform.deepseek.com |
按量付费,需先充值 一般 10 元左右就够用很久 |
⚙ 设置 → AI 引擎 → 「API 密钥(API Key)」 |
| 语音消息转写(STT) | Groqconsole.groq.com |
免费 有速率限制,量特别大再考虑付费端点 |
⚙ 设置 → 语音翻译 → 「语音转写 API Key」 |
3.3.1 DeepSeek(AI 自动回复用)
- 浏览器打开 DeepSeek 官网
https://www.deepseek.com/。
图 3-1 DeepSeek 官网首页(真实截图) - 点首页下方工具栏里的 「使用 API 开放平台」(会跳转到
platform.deepseek.com)。
图 3-2 点「使用 API 开放平台」入口(真实截图) - 用手机号 + 验证码登录;也可以直接微信扫码登录(没注册过的手机号会自动注册)。
图 3-3 手机号验证码登录 / 右侧微信扫码登录(真实截图) - 登录后左侧菜单选 「API keys」,再点右上角 「创建 API key」。
图 3-4 左侧「API keys」→ 右上「创建 API key」(真实截图) - 给这个 Key 起个自己好记的名字(例如
crimsonape-ai),点「创建」。
图 3-5 起一个易记的名字后点「创建」(真实截图) - 创建成功后会显示一次完整 Key:点「复制」并立刻妥善保存。
图 3-6 Key 只在这里显示一次,点「复制」保存(真实截图)⚠ 只显示这一次 关闭这个弹窗后再也看不到完整 Key(管理页只显示前后几位)。丢了只能删掉重建一个,所以务必当场复制保存。 - 左侧菜单进 「充值」:选金额(一般 10 元左右够用很久,也可自定义),支付宝或微信支付。
图 3-7 充值:选金额后支付宝/微信支付(真实截图)📌 不充值能用吗 DeepSeek 的网页版/App 免费,但调用 API 是按量计费的,账户余额为 0 时接口会直接报错(表现为 AI 不回复 / 测试连接失败)。 - 回到程序:⚙ 设置 → AI 引擎,把 Key 粘贴到「API 密钥(API Key)」,先点 「测试 AI 连接」确认通过,再点 「保存并应用配置」。
图 3-8 程序内「AI 引擎」:粘贴 Key → 测试 → 保存并应用配置(真实截图)供应商选「DeepSeek(V4 系列)」、模型实例默认
deepseek-flash、端点https://api.deepseek.com/v1一般不用改(点「拉取列表」可刷新可用模型)。
3.3.2 Groq Whisper(语音消息转写用,免费)
console.groq.com 与 api.groq.com 在国内需要走代理。程序调用转写时默认跟随 Windows 系统代理,请先确认系统代理已开启且可用,否则会返回 403 / 请求失败。
- 浏览器打开
https://console.groq.com,用 Google 账号或邮箱注册登录 —— 免费、不需要绑信用卡。
图 3-9 Groq 控制台登录(可用 Google 账号等方式)(真实截图) - 登录后进入右上角的 「API Keys」。
图 3-10 控制台首页 → 右上角「API Keys」(真实截图) - 点 「Create API Key」。
图 3-11 API Keys 页面点「Create API Key」(真实截图) - 起个名字(建议用英文/数字,不要写中文,例如
crimsonape-stt);Expiration 选「No expiration」(永不过期),然后点 「Submit」。
图 3-12 起英文名 + 有效期选「No expiration」→ Submit(真实截图) - 新 Key 同样只显示一次:点 「Copy」复制出来备用。
图 3-13 新 Key 只显示一次,点 Copy 复制(图中 Key 已打码)(真实截图) - 回到程序:⚙ 设置 → 语音翻译,按下表填写后点 「保存并应用配置」。
图 3-14 程序内「语音翻译」:选 Groq、改模型名、粘贴 Key(真实截图)字段 填什么 语音转写提供商(STT) Groq Whisper(免费) 转写模型 whisper-large-v3—— 选中提供商后程序会自己填好;若显示的是whisper-1说明当前是旧配置,见下方提醒语音转写 API Key 粘贴图 3-13 复制的 gsk_开头的 Key转写端点(Endpoint) 留空即可(选 Groq 时程序自动用 https://api.groq.com/openai/v1);也可显式填这个地址⚠ 选 Groq 时「转写模型」必须是 whisper-large-v3 程序会自动处理:把提供商切到「Groq Whisper(免费)」时,模型框会自动填成whisper-large-v3(切回 OpenAI 则自动变回whisper-1);你自己改过的模型名不会被覆盖。 对应关系:OpenAI Whisper →whisper-1;Groq(免费)→whisper-large-v3(Groq 上没有 whisper-1,填错会被判「模型不存在」而转写失败)。
若打开设置时看到红色提示「已自动改为 …」,说明你的旧配置是Groq + whisper-1这个不成立的组合 —— 点一下「保存并应用配置」即修复。
填好后如何验证:AI → 设置 → AI 引擎点「🧪 测试 AI 连接」;语音 → 在客户会话里对一条语音消息点 [译],能出译文即通。
4. 快速上手(5 分钟)
- 激活:标题栏 🔑 激活 → 提供机器码 → 激活成功后开始使用。
- 登录第一个账号:点击侧边栏「+ 登录新号」→ 用手机 WhatsApp 扫描二维码(第 6.1 节)。
- (可选)配置 AI:⚙ 设置 → AI 引擎 → 填入供应商/模型/API Key → 🧪 测试连接 → 保存(第 11.2 节)。还没有 Key?看 3.3 申请 AI 与语音 Key(图文) —— DeepSeek 按量付费、Groq 语音转写免费。
- (可选)配置代理:设置 → 代理库添加并测试代理 → 账号卡片「🌐 代理覆盖」绑定(第 11.6 节)。
- 发起第一条群发:粘贴号码 → 填写文案 → 选择执行账号 → 点击「启动集群群发任务」(第 8 节)。
5. 界面总览
- ① 标题栏:应用名、版本、⚙ 设置、🔑 激活、最小化/最大化/关闭(关闭时可选择最小化到托盘)。
- ② 账号侧边栏:「已连通道」账号卡片列表,可展开查看该账号的微信通知模式与代理覆盖配置。
- ③ 目标源与话术区:选择发送对象获取源(手动/地图/联系人/全部会话),填写文案(也可用接待的多条问候语池逐行随机取一条)。
- ④ 任务执行报告:每行一个目标号码,实时显示执行账号、注册状态、发送结果;右上角可清空/导出 CSV。
- ⑤ 日志监视器:进度条 + 实时日志;下方选择执行账号、任务模式(仅验证/发送消息)、启动/停止按钮。
6. 账号管理
6.1 扫码登录新号
- 点击侧边栏头部「+ 登录新号」。
- 弹出扫码窗口:可选「🌐 登录代理」(使用系统网络 / 强制直连 / 代理库条目)——扫码与后续使用必须同一网络出口,若需代理请先选好。
- 手机打开 WhatsApp → 「设置 → 已关联设备 → 关联设备」→ 扫描屏幕二维码。
- 扫码成功后弹窗自动关闭,账号卡片出现在侧边栏并开始同步(状态「在线」)。
6.2 账号卡片与操作
每个账号对应一张卡片,点击卡片可选中/展开(绿色高亮 + 展开配置区),卡片显示:
| 信息/操作 | 说明 |
|---|---|
| 账号名 + 号码 | 卡片标题(登录后的显示名)与手机号 |
| 累计发送 / 聊天数 | 该账号累计成功发送消息条数、当前会话总数 |
| 未读角标 | 卡片右上角红色数字,显示该账号未读消息总数 |
| 状态徽标 | 在线(绿)/ 离线(红)/ 登录中(黄)/ 养号中(蓝虚线)/ 养号暂停(黄,养号成员掉线时)/ 重连中 / 会话失效 / 代理异常 / 连接超时 等 |
| 🤖 AI 状态行 | 🤖 AI:开 · 接待 N · 待人工 M:开/关 = 该账号 AI 接管开关(开 为绿色文字高亮,不加深色底;开了但未绑定接待时不会真的接待);接待 N = 该账号已接待用户数(按 账号:会话 去重,同一人多轮只算 1;仅在开启意图评级时累加,累计值落盘 intent-stats.json,重启不清零);待人工 M = 已转人工冻结、等待你接管的对话数(红色,管理入口在查看窗口右上角 🤖 面板;该状态落盘 escalations.json,重启后仍在、该对话的 AI 也保持静默直到你点「✅ 已接管」)。悬停该行可见同样的说明 |
| 🌐 代理覆盖 | 展开区:使用系统网络 / 强制直连 / 代理库条目,🧪 可测试当前生效代理 |
| 🖥 查看窗口 | 打开该账号的 WhatsApp 会话查看窗口(离线时不可用;会话失效时变为「📱 重新扫码」) |
| 🤖 开启/停止养号 | 一键切换该账号养号模式(需 ≥2 个账号在养号队列中才会真正调度)。开启后卡片多出一行动作跑马灯,实时显示该账号当前在做什么(改状态 / 读消息 / 看资料 / 与哪个账号互聊),超 90 秒无动作显示"待机";账号掉线时跑马灯与徽标一起变成"养号暂停(重连后自动继续)",此时按钮仍可点(用于明确退出养号) |
| ✕ 退出账号 | 注销并断开该账号,销毁本地会话缓存(有二次确认) |
.data_runtime/acc_{账号ID}/,重启应用后自动恢复在线;会话过期时卡片提示「📱 重新扫码」。
6.3 查看窗口(界面一览)
「🖥 查看窗口」是每个账号的 WhatsApp 会话浏览界面(独立窗口,操作体验与 WhatsApp Web 一致),也是该账号所有 AI 能力的操作入口:
- 💬 聊天浏览:查看/搜索会话、收发消息与媒体,体验与 WhatsApp Web 一致;
- 🤖 AI 托管面板:窗口标题栏右上角的 AI 按钮进入,按账号配置 AI 接管(开关 / 意图评级 / 关键词过滤 / 专属提示词,详见 7.2)。该按钮本身带状态色,不打开面板也能一眼看出这个号是否在自动接待:按钮为亮绿 = AI 接管已开启,灰 = 未开启(配色随面板开关 / 互斥联动实时变化);
- [译] 消息翻译:hover 消息气泡出现 [译] 按钮,文本 / 语音一键翻译(详见 6.4);
- ⚠ 转人工处理:AI 冻结的对话在此由人工接管回复。
6.4 查看窗口:消息翻译(文本 / 语音)
在「🖥 查看窗口」的聊天界面中,hover 收到的消息气泡会出现 [译] 按钮,一键完成翻译,支持跨语言客服场景:
- 文本消息:点击 [译],气泡内直接显示目标语言译文。翻译由全局 AI 引擎完成(temp=0 确定性输出,译文走独立缓存与熔断统计,不影响 AI 回复链路);消息疑似已是目标语言时自动跳过,不消耗 API;相同文本只翻译一次(LRU 缓存)。
- 语音消息:点击 [译],自动完成「语音转写(STT)→ 翻译」,可选择 「发译文」(以文本回复对方)或 「语音发译文」(用 edge-tts 免费合成目标语言语音后发出);同一条语音只转写一次(有缓存),超长语音(默认 ≥600s)自动拒绝不消耗 API,转写任务全局串行排队。
- 发送侧:查看窗口输入条支持把拟发送的内容翻译成目标语言后再发送(可带语音合成),让回复始终与对方语言对齐。
- 配置入口:翻译默认开启(账号页就绪即注入 [译] 气泡,无需开关),仅需配置目标语言 → ⚙ 设置 → AI 引擎(「翻译目标语言」,默认中文);语音转写 → ⚙ 设置 → 语音翻译(STT 提供商 / 模型 / Key / 端点,Key 独立于 AI Key)。
7. 三种工作模式
每个账号在任何时刻只能处于一种模式:养号(主动)或 AI 自动回复(被动)。两种模式互斥——启用一种会自动禁用另一种(前端与后端双重实施)。
7.1 养号 Farming(主动模式)
一句话回答「开启养号之后到底在做什么」:不是不间断互聊,而是按"轮"间歇运行、刻意不规律的自动化行为循环——每轮从互聊(60%)/ 改状态(15%)/ 读消息(15%)/ 看联系人(10%)中给每个账号随机分配一个行为,模拟真实活跃用户。只要 ≥2 个账号已加入养号队列(成员,各自卡片点过「🤖 开启养号」)、且没有群发任务在跑,程序就无限循环地跑下去(机器 24 小时开着就一直有动作),但每个账号并非每轮都在发消息——成员偶尔掉线不会退出养号,只是该轮跳过,重连后自动继续。
一轮养号的完整流程
- 等待:轮与轮之间随机等待 配置间隔 × 50%~150%(默认 300s → 实际 2.5~7.5 分钟随机不等),且每轮有 30% 概率整轮跳过——刻意制造"不规律活跃",避免固定节奏被判定为自动化。等待从上一轮真正跑完才开始计(互聊那一轮本身可能已花掉 1~2 分钟)。
- 分配行为:为队列中每个在线账号随机分配一个行为(权重:互聊 60% / 改状态 15% / 读消息 15% / 看联系人 10%)——单个账号约六成的轮次才轮到互聊,其余轮次执行"更像真人的"其他动作;只有两个账号同时抽中互聊才会真的配对发言(约 36% 的轮次),其余轮次一条气泡都不会有(卡片跑马灯会写明原因)。
- 执行独立行为:
- 改状态:把个人签名更新为随机文案(如"忙碌中 / Busy"等),同一账号至少 30 分钟冷却;
- 读消息:随机选 1~3 个聊天标记已读(只读不回复);
- 看联系人:随机查看 1~2 个联系人的资料。
- 互聊(仅对分配到互聊的账号):按公平两两配对(圆桌轮转,每账号每轮恰好参与一次、奇数时一人轮空)。每个配对:A 发一条 → 等 3~8 秒 → B 回一条;配对之间再等 5~10 秒。一轮里每个配对只交换这一轮,不是持续对话。
- 每条消息的时序(与 AI 接待同一套,和真人一致):已读 → 输入中 → 发送——
- 已读:仅当对方会话里真有未读时才发(没未读就不发,真人不会去"已读"一个没有未读的会话);
- 输入中:走保活机制覆盖整段等待(对方能看到"正在输入…"直到消息抵达;此前的实现只发一次、25 秒就过期,常出现"闪一下正在输入然后没了");
- 发送:发出前显式关掉底层库"发送瞬间补一次已读"的默认行为,避免出现"已读和消息同时到达"这种最机械的时序;
- 上述时长就是下一条要说的高斯延迟(下限~上限),即"这一条的打字时间"。
- 续排:一轮结束自动排下一轮,循环往复。
设置页那两个参数分别管哪一段
- 养号对聊调度频率(秒) = 轮与轮之间的等待(不是消息之间的间隔)。实际等待 = 该值 × 50%~150% 随机,默认 300s;钳制 30~3600s,低于 30 按 30 生效(日志会留痕)。它决定"多久跑一轮",不决定一轮里气泡出现的快慢。
- 高斯延迟下限 / 上限(秒) = 每条消息发出前的随机等待(正态分布,均值 = 上下限中点)。养号的 A→B 与 B→A 各走一次,所以单条气泡的出现会被推迟 下限~上限 秒;该设置同时被 AI 接待与群发逐条间隔复用(全局口径)。默认 15~45s。
- 两者叠加才是"开启养号后多久看到第一条气泡":一轮要等 15~45s(间隔钳制后的最小值)到 2.5~7.5 分钟,抽中互聊还要再叠加两条消息各自的高斯延迟——分钟级才出现第一条气泡是正常现象,不是没生效。
怎么知道每个账号"此刻在做什么"
开启养号后,账号卡片会多出一行动作跑马灯(蓝底 + 呼吸点),实时显示该账号当前的动作:正在更新个人状态 / 正在读取会话(标记已读)/ 正在查看联系人资料 / 正在与账号 N 互聊 · 发送中 / 正在回复账号 N,动作完成后变为结果文案(如"已更新个人状态:忙碌中"、"已读 2 个会话(只读不回)"、"已发送给账号 2(18 字)")。
- 动效口径:状态常驻(不是闪一下就没,否则大部分时间你看不到它在做什么);每次文案变化时从左到右扫一次光,只有"动作进行中"才亮呼吸点,其余静止——不会用无意义的循环动画假装在动;
- 超过 90 秒没有新动作 → 显示"养号中 · 待机(等待下一轮调度)"(含最后一次动作)——说明调度还活着,只是在等下一轮;
- 账号掉线 → 显示"账号离线,养号暂停(重连后自动继续)";
- 长文案超出卡片宽度时才会持续滚动(避免读不全);未开启养号的卡片没有这一行。
互聊消息从哪来
- AI 生成优先(配置了 AI 引擎时):B 的回复按「你是一个普通微信用户,正在和朋友闲聊,自然口语 15~40 字,不要提及你是 AI」的提示词生成,语言跟随「养号对聊使用语言」;
- 静态短语库兜底:AI 未配置或生成失败时,自动回退内置日常寒暄短语(中文/英文各 20 条,如"在干嘛呢 / How are you?")——绝不会把 AI 的失败结果或对方原文当回复发出(避免"回声"机械特征);
- 养号消息计入该账号「累计发送」统计。
什么时候暂停 / 停止
- 群发任务执行中:本轮跳过,任务结束自动恢复(跑马灯显示"本轮跳过:有群发任务在跑"对应的日志留痕);
- 账号掉线:不退出养号——该账号按轮跳过(卡片显示"养号暂停"、跑马灯写明原因),重连后自动继续参与,无需重新点开启;
- 队列少于 2 个账号:调度定时器清除(只开启 1 个账号不会启动,必须 ≥2 个才开始调度)。此时日志会明确写出「调度已暂停:队列仅剩 N 个账号(互聊需 ≥2)…再开启一个账号即自动恢复」——另一个账号的卡片仍显示"养号中",因为它确实还在队列里,只是暂时没有对手;
- 重启应用:养号会自动恢复(开启意图已持久化到该账号配置文件)。重启后日志出现「已恢复养号(重启前处于开启状态)」,卡片自动回到"养号中",不需要重新点;
- 授权受限 / 档位变动:停掉运行时但保留养号意图,授权恢复后自动接着养号;
- 手动停止:账号卡片点「🛑 停止养号」(账号离线时也可点,用于明确退出养号)。
- 前置条件:至少 2 个账号在线,并分别在各自卡片点击「🤖 开启养号」加入养号队列(只有 ≥2 个账号时调度定时器才会启动);
- 频率与语言:⚙ 设置 → 风控养号 → 「养号对聊调度频率」(30~3600s,默认 300s)与「养号对聊使用语言」(如
English,留空 = 中文); - 话术来源:配置 AI 引擎(⚙ AI 引擎)后由 AI 生成对聊内容;未配置则使用内置静态短语库;
- 注意:养号账号不能同时作为群发执行账号;建议新号从低频开始养。
7.2 AI 自动回复(被动模式)
- 机制:账号收到消息 → 经启发式预过滤(纯表情/≤4 字确认语不烧 API)→ LLM 生成回复;AI 可自主决定不回复(
__NO_REPLY__门控)。 - 意图评级:每条入站消息按上下文评级为 7 类意图之一——
IGNORE(广告/骚扰/发错人)、CHITCHAT(闲聊)、INFO(业务咨询)、INTERESTED(询价/高意向)、BUYING(明确购买)、AFTER_SALE(售后/投诉)、ESCALATE(辱骂/敏感/无法判断)。两段式实现:广告词启发式零成本拦截 → LLM 结构化分类(temp=0,携带对话历史"根据上下文评级");评级驱动回复话术路由(如 INTERESTED 主动引导成交、AFTER_SALE 先安抚再给方案、CHITCHAT 自然回应不推销);账号卡片显示的「AI 接待用户数」即按意图评级去重统计;评级失败自动降级为未分类并照常回复,绝不影响回复链路。评级默认开启(账号绑定接待后即生效);意图评级开关(开/关,接待级,2026-09-13 起可关)、评级阈值、重点关键词、人设提示词都在接待里配置(设置 → 🧑💼 接待 → 编辑接待)。关闭评级的接待:不评级、不计入「接待 N」统计、不做话术路由与标签同步,AI 回复照常按人设进行(也省下评级模型的调用)。 - 群聊策略:仅在被 @ 或引用本号消息时才回复。
- 语音消息:配置 STT 后可转写为文字再回复。
- 人味化:阅读延时随消息长度缩放、打字延时随回复长度缩放(配合「模拟打字」),同一对话冷却默认 30s,间隔超 30 分钟视为新对话。
- 每账号独立配置:查看窗口右上角 🤖 面板负责该账号的接待绑定(绑定即开启 AI 接管、解绑即交回人工)、统计(含「AI 接管 / 意图评级」两个状态标签)与待人工处理;人设提示词、重点关键词、回复冷却、意图阈值、意图评级开关与知识包等回复规则都在所绑的接待里(设置 → 🧑💼 接待)。面板外的标题栏 AI 按钮颜色即该账号当前状态(亮绿 = 接管开启 / 灰 = 关闭),不必开面板即可核对。
- 知识注入:回复时自动注入所绑接待引用的「知识包」内容(设置 → 🧑💼 接待 → 知识包管理),让 AI 知道你的业务与话术规矩。
- 统计与清零:面板「统计」区按对话(用户)去重显示「接待(累计唯一用户数)/ 高意向 / 购买 / 转人工」与 8 类意图分布、最近评级明细;若历史计数偏大(早期版本去重表缺失导致的重复计数),可点「♻ 重置统计」清零后从此刻重新累计(全部账号,有二次确认,不影响配置与接待绑定)。
- 标签同步(列表分组,需手动配置):开启意图评级后,可将评级结果同步为 WhatsApp 标签,聊天列表按意图分组,直接在 WhatsApp 里查看/管理。配置方法:① 先在 WhatsApp 中创建标签
AI-高意向/AI-购买/AI-咨询/AI-售后/AI-转人工(对应 INTERESTED / BUYING / INFO / AFTER_SALE / ESCALATE,名字需完全一致,不会自动创建);② 探测到标签后,会话意图变化时自动移入对应标签(同一意图不重复搬运)。同步范围:只动AI-前缀标签——目标 AI 标签会被换上、旧的 AI 标签会被换下,你自建的其它标签会保留;闲聊/广告(CHITCHAT / IGNORE)与未分类(UNKNOWN)不移动、也不清任何标签。未建标签或建错名 → 面板「标签同步」一行给出缺失清单(AI 接管照常工作);删除 AI 标签即自动停止分组。个人号(非 Business)同样可用:WhatsApp 的「列表」与 Business「标签」在客户端内部是同一套对象,程序直连页面写入、不再受 wwebjs 库自身的"仅 Business"限制;若浏览器端真的拒绝,面板会显示"未能写入 + 原因"(不再含糊地说"不适用")。 - 转人工(何时交给人工,由你定):三条触发路径,可单用也可组合,命中即冻结该对话(AI 对其静默,等你在查看窗口 🤖 面板点「✅ 已接管」):
- ① 转人工触发词(接待字段,逗号分隔):命中即转人工,零成本、判定在评级之前(不调评级模型)。适合"人工 / 经理 / 负责人 / 投诉 / 退款"这类硬词;
- ② 转人工规则提示词(接待字段,自然语言):同时注入评级与回复两处提示词——评级侧命中即判
ESCALATE;回复侧还会授权 AI 用__ESCALATE__标记主动移交(模型只回该标记,系统就冻结并提醒,标记内容不会发给客户); - ③ 你自己在人设提示词里约定:写"遇到 X 只回
__ESCALATE__"同样生效(标记是显式协议,不受①②是否配置限制)。
ESCALATE(辱骂/敏感/超范围/无法判断)时也会转人工,即使你没配上述任何一项。 - 主动告诉客户"需要人工可以直说"(接待字段「给客户的人工入口提示」):选好时机并写好提示语(默认:需要人工服务的话,直接跟我说“转人工”,我帮您转接人工同事。),AI 会在回复里自然地补这一句(不是生硬照抄,也不会自称"我就是人工")。时机四档:仅首次接待(默认,跨重启记得这位客户接待过)/ 每段对话首次(间隔超 30 分钟算新一段)/ 每次回复都带 / 关闭。 开启后,「转人工 / 转接人工 / 人工 / 真人 / human」会自动并入该接待的转人工触发词——承诺了客户"跟我说转人工就转",就一定会真的冻结转人工。
- 转人工的提醒时机:冻结的那一刻主窗口弹警示 toast(账号 + 客户名 + 原因)、该账号卡片出现红色
⚠转人工 N角标与「待人工 M」计数、查看窗口 🤖 面板列出待接管对话;该状态落盘,重启后仍在(AI 保持静默直到你接管)。
- 必配 ① 全局 AI 引擎:⚙ 设置 → AI 引擎 → 选择供应商 / 填写模型、API Key、端点 → 点 🧪 测试连接通过(AI 引擎不可用时无法生成回复);
- 必配 ② 账号 AI 接管:查看窗口 → 🤖 面板 → 绑定接待即开启该账号「AI 接管」(解绑即交回人工);接待里可设置重点关键词(命中即按重点处理,不影响是否回复)、意图评级开关、转人工触发词 / 转人工规则提示词(何时移交人工,见 7.2)与人设/专属提示词(业务话术基调);
- 可选 · 意图评级:🤖 面板按账号开启(开关归属账号级);驱动话术路由与标签同步,账号卡片「AI 接待用户数」即按评级去重统计;
- 可选 · 知识注入:⚙ 设置 → 🧑💼 接待 → 「🗂 知识包管理」新建知识包,并在接待里勾选引用(建议必填业务事实);
- 可选 · 语音回复:⚙ 设置 → 语音翻译 → 配置 STT(语音消息先转写再回复);
- 可选 · 标签分组:在 WhatsApp 中创建
AI-高意向 / AI-购买 / AI-咨询 / AI-售后 / AI-转人工五个标签(仅 WhatsApp Business 账号支持); - 参数:回复冷却在接待里配置(⚙ 设置 → 🧑💼 接待 → 「回复冷却(秒)」,5-600s,默认 30s);阅读/打字节奏由「模拟打字」与高斯延迟钳制(⚙ 风控养号)。
8. 群发任务
8.1 目标源与话术
发送对象获取源(三选一)
| 来源 | 说明 |
|---|---|
| 手动输入 / 粘贴号码列表 | 每行一个号码,支持「名称 电话」格式(如 张三 8613800000000);号码需含国际区号(国家码 + 手机号,如中国 86 开头);点击「📋 添加到任务列表」 |
| Google 地图采集源 | 来自地图采集窗口的数据池(见第 9 节),支持多次留痕合并与自动注册验证 |
| 账号自身既有聊天对象 | 从账号登录后自动缓存的通讯录联系人中提取(不操作页面);见第 10 节 |
| 本账号全部会话 | 从账号聊天列表提取全部私聊会话(群聊/状态自动排除,仅 @c.us 个人会话可作为目标) |
内容形态(三选一)
| 形态 | 说明 |
|---|---|
| 纯文本 (Text) | 仅发送文字;文案在向导的「✍️ 直接手写」步骤填写,可点胶囊插入变量:{名称}(逐条替换为该目标的名称,无名则用号码)、{日期}/{时间}(按实际发送时刻) |
| 仅文件 (Media) | 仅发送媒体文件(点击选择文件) |
| 文本 + 文件 (Caption) | 带文字说明的媒体消息 |
8.2 执行报告与导出
任务列表每行一个目标号码,实时更新四列:
| 列 | 含义 |
|---|---|
| 任务号码 | 目标号码(地图/联系人来源时下方小字显示名称) |
| 执行号码 | 实际执行发送的账号(实例 ID),未分配时为「排队中...」 |
| 是否已注册 | 已注册(蓝)/ 未注册(灰)/ 排队中(黄)/ ⚠ 注册状态未知(验证失败) |
| 是否消息发送成功 | ✓ 成功 / ✕ 跳过(未注册等)/ ✕ 失败原因 |
- 底部统计:已发送成功数、过滤未注册数;
- 💾 导出 CSV:导出本次任务报告(名称/电话/是否注册)到本地文件;
- 🗑️ 清空:清空任务列表(有确认)。
8.3 启动任务
- 添加目标号码到任务列表(任一来源)。
- 选择执行账号(点击「选择执行账号」勾选;养号中的账号会被自动剔除)。
- 选择任务模式:仅验证(只检测号码是否注册 WhatsApp)或 发送消息(向号码发送指定内容)。
- 点击「启动集群群发任务 / 启动验证」;执行中可「紧急停止」。
- 需已激活许可证,否则任务被拒绝(提示「未激活许可证,无法群发」);
- 执行账号必须在线;任务执行中该账号的 AI 回复暂停、养号调度全局暂停;
- 超过单次群发数量上限会被 C++ 拦截(提示「超过单次群发数量上限」),请分批执行。
- 前置:已激活许可证;至少一个在线且非养号中的执行账号;
- 目标源:手动粘贴(每行一个,含国际区号)/ 地图数据池 / 账号既有联系人 / 全部会话,导入任务列表;
- 内容:形态(纯文本 / 仅文件 / 文本+文件);手写文案时可点胶囊插入变量(
{名称}逐条替换目标名称、{日期}/{时间}按发送时刻),插入与输入时实时预览实际发送效果,不支持的占位符会在预览里显式告警(发送时原样发出);也可在「接待」步骤选一个接待,用它的多条问候语池逐行随机发送(天然避免雷同); - 执行:勾选执行账号 → 选任务模式(仅验证 / 发送消息)→ 启动;超过单批数量上限请分批执行;
- 节拍:⚙ 风控养号 → 轮询策略(顺序/随机)、模拟打字、高斯延迟(建议上限比下限大 20~30s)。
9. Google 地图采集
在地图数据源下点击「🔍 执行新的地图检索」,应用会打开一个独立的 Google Maps 采集窗口(无边框窗口加载 Google Maps 网站,自动注入采集脚本)。在窗口内搜索行业+地区关键词(如 Spa in Singapore),点击右下角绿色「开始检索」按钮,脚本自动滚动加载全部结果卡片,并逐个进入商家详情页提取公开电话。
- 工作流程:搜索 → 自动滚动加载(按钮显示「加载 N 条」)→ 逐家进入详情页提取电话(按钮显示「提取中 X/N」,进度提示显示当前商家名)→ 全部完成后回到搜索页,结果回传主界面并增量合并;
- 多次留痕:每次采集结果按号码去重后增量合并到全局池,主界面显示「累积导入待验证总数」;
- 清空数据池:🗑️ 一键清空(有确认,清空后不可恢复);
- 自动验证:地图数据作为任务输入时,群发/验证任务会同步执行号码存活验证;
- 网络:采集窗口走系统代理检测(无需配置地图 API Key —— 新版为页面脚本采集,无 Key 依赖)。
- 无需任何 Key/设置:采集为页面脚本方式,无 Places API Key 依赖;网络走系统代理检测;
- 操作流程:主界面地图源 → 「🔍 执行新的地图检索」→ 独立窗口搜索关键词 → 点「开始检索」→ 自动加载并逐家提取 → 结果回传主界面增量合并;
- 关键词建议:行业 + 地区(如
Spa in Singapore);单次搜索建议控制在数百条以内,量大可分多次; - 数据管理:主界面显示「累积导入待验证总数」;🗑️ 可清空数据池(清空后不可恢复)。
10. 联系人导入
选择目标源为「账号本身的既有聊天对象」或「本账号全部会话」后,点击「💬 获取已缓存联系人 / 获取全部会话」,弹出联系人选择窗口:
- 按姓名跨账号去重(同一用户出现在多个账号通讯录只显示一行);全部会话模式自动排除群聊、状态/频道、无法解析的 LID 会话;
- 支持按名称/号码/来源账号搜索过滤;勾选后点击「📥 导入选中」写入任务列表。
- 前置:目标账号已登录在线;「既有联系人」模式依赖登录后自动缓存的通讯录(登录后等待数秒再获取);
- 操作:目标源选「账号本身的既有聊天对象」或「本账号全部会话」→ 确认执行账号 → 点「💬 获取已缓存联系人 / 获取全部会话」→ 勾选后「📥 导入选中」;
- 过滤规则:全部会话模式自动排除群聊 / 状态 / 频道 / LID 无法解析会话,仅
@c.us个人会话可作为群发目标。
11. 设置指南(逐项说明)
点击标题栏 ⚙ 打开「全局高级核心配置中心」,共 6 个标签页:🤖 AI 引擎、🧑💼 接待、🎙 语音翻译、🛡 风控养号、🗂 代理库、🔄 系统。修改后点击底部「保存并应用配置」生效。
11.1 功能 ↔ 设置 关联表
| 功能 | 依赖的设置 | 说明 |
|---|---|---|
| 群发任务(发送/仅验证) | 风控养号(轮询/打字/延迟);执行账号在线;许可证 | 「仅验证」模式只依赖账号在线,与消息类设置无关 |
| 养号 Farming | 风控养号(频率/语言);AI 引擎(AI 生成话术时);≥2 个账号 | 频率修改对运行中的养号即时生效;重启应用后自动恢复养号;账号掉线不移出队列(重连后自动继续) |
| AI 自动回复 | AI 引擎(供应商/模型/Key/端点/Temp);接待(人设提示词/回复冷却/关键词/禁区/知识包,账号绑定接待后才接待);语音(语音消息转写);标签同步需先在 WhatsApp 手动建标签 | 回复提示词、回复冷却与业务知识(知识包)均由接待负责(每账号可绑不同接待);意图评级驱动话术路由与标签分组 |
| 文本/语音翻译 | AI 引擎页(翻译目标语言;[译] 气泡默认注入,无开关);语音页(STT 提供商/模型/Key/端点、TTS 音色/语速) | 文本译文走全局 AI(temp=0 独立熔断);语音链路 = STT 转写 + 翻译 + 可选 TTS 合成;STT 的 Key 独立于 AI Key(DeepSeek Key 不通用) |
| 地图采集 | 无(无 Key 依赖) | 走系统代理检测 |
| 更新 / 语言 | 系统页 | 与业务功能无关 |
11.2 🤖 AI 引擎
| 设置项 | 作用 | 建议 |
|---|---|---|
| AI 模型供应商 | DeepSeek(性价比)/ OpenAI(能力更强)/ Custom(任意 OpenAI 兼容端点) | 优先 DeepSeek;有自建兼容端点选 Custom |
| 模型实例名称 | 下拉框,与「AI 模型供应商」一样直接选。选项由当前 Key 请求端点的 GET /models 现取(打开本页即自动拉一次),点「🔄 拉取列表」可手动重拉。未实现 /models 的 Custom 端点:下拉末尾会出现「✍ 手动输入模型名…」,选中后就地变成输入框 | 不要在多个模型间随意乱选:高频短回复(接待/翻译/意图分级)选 Flash 档更划算,难判断的场景再选 Pro 档 |
| ⚠ 停用名提示 | 若当前值是官方已停用的模型名(例如 deepseek-chat),下拉里会标 ⚠ 已停用,下方出现橙色提示(含停用日期与建议)并给出「改用 X」入口 | 提示只改下拉选项,不会自动保存——点「保存并应用配置」才生效。供应商会停用/改名模型,所以下拉是现取的;旧名字仍可能被兼容接受而不报错,用久了记得重拉一次 |
| API 密钥 | 供应商密钥,仅存本地 config.json | 填完点 🧪 测试连接验证;请妥善保管 |
| 接口端点 | API 地址;选 DeepSeek/OpenAI 自动填充。末尾的 /v1 是 OpenAI 兼容路径前缀,不是模型版本号 | Custom 模式手填,如 https://api.deepseek.com/v1;换模型不需要改端点 |
| 随机采样创造度 Temp | 回复随机性 0.0~1.0 | 推荐 0.7;要更稳定可调低 |
| 翻译目标语言 | 查看窗口 [译] 气泡的译文语言(留空默认中文);[译] 气泡默认注入,无开关 | 按客服语言填写 |
11.3 🧑💼 业务接待
🎬 视频教程:官网 → 视频教程 → AI 接待(创建接待 → 人设 / 知识包 / 转人工规则 → 绑定账号;下方图文是逐项对照版)。
接待 = 一套可复用的「人设 + 回复规则 + 产品知识包」。账号在 🤖 面板里绑定接待即开启 AI 接管,解绑即交回人工;一台机器可建多套接待(不同业务线 / 语言 / 话术风格),分别绑给不同账号。本标签页是接待的管理入口:列表显示每套接待及其绑定账号数,点「+ 创建接待」可从 行业模板 / AI 引导 / 克隆已有 三种方式起步(界面见图 7-2)。
| 配置项 | 作用 | 默认 / 范围 |
|---|---|---|
| 接待名称 | 内部标识,用于区分不同业务线(如「英文客服 A」) | 必填 |
| 机器人自称 / 人设名 | AI 在对话里的自称 | — |
| 头像 | 接待头像(内置头像库可选) | — |
| 问候语 | 首次接手时的开场白 | — |
| 语言 | 该接待使用的语言 | 中文 |
| 人设(Persona) | AI 的角色设定与话术基调;可由 AI 生成或模板微调 | — |
| 接待事实卡 | 业务事实(我们是谁、卖什么、价格口径、禁区)。没有独立输入框,由 AI 引导或模板写入草稿 | 建议填写 |
| 意图评级开关 | 是否对该账号收到的消息做 7 类意图评级(驱动话术路由与标签分组) | 开 |
| 意图置信度阈值 | 低于该值视为「AI 没把握」→ 按转人工处理 | 0.5(0~1) |
| 重点关键词 | 命中即按重点处理(不影响是否回复,只影响标注与优先级) | — |
| 回复冷却 | 同一会话两次回复的最小间隔 | 30s(5~600) |
| 首触节拍(最小 / 最大) | 首次触达的间隔区间(线索引擎首触时使用) | 8~20s(1~3600,0 = 用默认) |
| 转人工触发词 | 客户说出这些词即移交人工 | — |
| 转人工规则 | 给 AI 的判断指令(什么情况下该转人工) | — |
| 转人工处理方式 | 命中后是立即静默等待接管,还是先回一句再移交 | 默认「先回一句」 |
| 禁止事项 | AI 绝不能说的话 / 不能做的承诺(如「保号、包过、无效退款」) | 建议填写 |
| 知识包 | 勾选引用已有知识包(详见下方「知识包」小节——它是 AI 唯一的业务知识来源,不引用则 AI 拿不到业务事实) | 建议必配 |
创建接待:三种起步方式
点「+ AI 引导创建接待」后,向导先问你从哪开始(三种任选):
| 方式 | 流程 | 适合 |
|---|---|---|
| ① 套用行业模板 | 选一个行业模板 → 人设 / 行为 / 禁区已预填;可直接改草稿,或先看草稿再让 AI 按你的业务微调 | 行业通用场景,想快速起一版 |
| ② 从零 AI 引导 | 两步对话式收集业务信息 → AI 生成整套草稿(流程见下) | 业务特殊、想一次配准 |
| ③ 克隆已有接待 | 复制一套现成接待,名称自动加「克隆」后缀,保存后独立成卡(改它不影响原接待) | 多业务线微调(如「英文客服 A」→ 改语气/语言) |
「从零 AI 引导」的完整流程
- 第一步 · 交底业务:按提示介绍 业务 / 产品 / 目标客户,或直接粘贴现有资料(报价表、FAQ、产品介绍都行,一次说清最好)。AI 据此记录业务背景。
- 第二步(可选)· 补关键规则:补充容易踩坑的禁区、报价原则、服务流程;不想补就直接生成。
- 生成草稿:AI 产出这套接待的 接待自称 / 问候语 / 接待定位 / 人设提示词 / 事实卡,并展开成可编辑表单——每一项都能手改,改完保存即建卡。
- 不满意就对话式调整(可反复用):
- 🔁 让 AI 重新优化:整体重生成一版;
- ✍ 补充微调(其余保留):只改你点名的部分,其余字段保持不动。示例说法:「把语气改得更正式」/「事实卡补『账期 60 天』」/「禁区加『不承诺包换』」。
- 试聊验收:进入试聊模式,输入一句客户可能发来的话(如「这个多少钱?能便宜点吗?」),看这套接待会怎么回;不满意继续微调。「结束试聊」返回草稿。
知识包(Knowledge Pack)
入口:⚙ 设置 → 🧑💼 接待 →「🗂 知识包管理」(接待编辑页内也有同一入口)。
- 是什么:一块可命名的共享知识,可被多个接待同时引用(例如「A客户产品手册」既给中文客服引用,也给英文客服引用)。
- 为什么重要:知识包是 AI 回复唯一的业务知识来源——接待没有引用任何知识包时,AI 拿不到你的业务事实,只能泛泛回答。所以「接待 + 至少一个知识包」才算配置完整。
- 优先级:接待已引用知识包 → 注入知识包内容;未引用 → 回落用「接待里直存的事实卡」;两者互斥,不会重复注入。
- 改动是共享的:知识包内容一改,所有引用它的接待同时生效(不必逐个改);改之前先确认会影响哪几套接待。
知识包的设置项
一个知识包由三部分组成:名称 + 事实卡 + 文档条目(后两者都会被注入给 AI,见下)。
| 设置项 | 说明 |
|---|---|
| 知识包名称 | 给共享知识取个可识别的名字,例如「A客户产品手册」「售后政策(通用)」。建议把客户 / 业务线写进名字,接的包多了才不会认错。 这个名字还会出现在注入给 AI 的内容里(格式 [知识包 名称]),所以起得清楚一点有帮助 |
| 事实卡 (Markdown 要点,AI 直接注入) | Markdown 格式,官方建议用「- 」列表逐条写核心事实与规则——AI 按条目理解,比大段散文更准。适合放整体背景与规则:公司信息、主营、价格体系、付款方式、禁区。 注意:每次引用该包的回复都会注入这段内容,只放「必须随时知道」的事实 |
| 文档条目 (类型:文本 / 图片 / 文档) | 一条一个知识点,点「+ 添加条目」可加任意条。 文本类型:渲染成 • 标题:内容 注入给 AI(标题必填;「内容 / 要点」是单行输入框,写简短要点即可)。图片 / 文档类型 = 附件条目:选一个本地文件,客户索要时 AI 会自动把文件发出去——文件路径不会注入给 AI,客户也看不到路径(用法见下节) |
| 安全红线 | 事实卡与文本条目都会随请求发送给 AI 服务商,绝对不要写密码、API 密钥、上游渠道、成本价等敏感信息。 文本条目里也不要写本地文件路径(如 G:\桌面\123\1.jpg)——那只会被当成普通文字注入,AI 会把路径原样回给客户(客户看到无法点开的路径,还暴露你的目录结构)。要发文件请用「附件条目」,不要靠写路径 |
- 事实卡 = 整体口吻的规则清单(价格体系、禁区、公司介绍)→ 适合成段的 Markdown 列表;
- 文档条目 = 一条条的独立知识点(FAQ 式)→ 适合「标题 + 一句要点」,改一条不用动整段。
附件条目:让 AI 按需发图片 / 文档
把「产品图片」「产品手册」这类文件放进知识包,客户索要时 AI 会自动把文件发出去,不需要你盯着。
- 在知识包里点「+ 添加条目」,把条目类型从「文本」切换为 图片 或 文档;
- 填标题——这是 AI 判断"该发哪个文件"的依据,写清楚用途(如「产品图片-美区」「产品手册(英文)」);
- 点「选择文件」,选中本地文件(会显示文件名与大小);
- 保存。之后客户说「发下产品图」「有手册吗」,AI 就会把对应文件发给他(可一次发多个)。
- 大小:图片 ≤ 10MB、文档 ≤ 50MB(超限在保存时就会被拒绝并提示);
- 格式:图片
jpg / jpeg / png / webp / gif、文档pdf / doc / docx / xls / xlsx / txt(含 Word / Excel 的旧版格式);其他格式一律拒绝(视频暂不支持); - 按需发送:仅当客户明确索要时才发,AI 不会主动发文件;
- 频率:同一对话两次「发文件」之间至少间隔 60 秒;一次回复最多 3 个文件(同一条回复里发多个文件不会被互相挡住 —— 比如客户一次要两张图,两张都会发出去,只是第 2 张会隔 1~3 秒、像真人一样依次发出);
- 文件位置要稳定:条目里存的是文件路径,移动 / 删除 / 改名后就发不出去了(日志会记录失败原因)——建议把要发的资料放在固定目录(如
D:\资料\)再选进来。
知识包完整示例(可直接照抄修改):
① 事实卡(Markdown 要点):
- 公司:XX 国际供应链有限公司(深圳) - 主营:亚马逊礼品卡代充(美区)、谷歌 Play 礼品卡(日区) - 价格:1000 美元以下 92 折;1000 美元以上 90 折;量大面谈,不公开固定报价 - 到账:美区 24 小时内;日区 48 小时内 - 付款:USDT / PayPal / 银行转账;首次合作建议小额试单 - 售后:卡密错误 24 小时内可换,需提供订单号与截图 - 禁区:不承诺「保号 / 包过 / 无效退款」;不透露上游渠道与成本价
② 文档条目(标题 + 内容/要点,逐条添加):
| 标题 | 内容 / 要点 |
|---|---|
| 能开发票吗 | 可开电子普票,需提供抬头与税号,3 个工作日内发出 |
| 最低起订量 | 首次 100 美元起,后续不限;量大可谈账期 |
| 账期 | 首次合作款到发货;老客户可申请 7 天账期,需提前报备 |
| 支持哪些付款方式 | USDT(TRC20)/ PayPal / 银行转账;暂不支持信用卡 |
| 卡密错误怎么办 | 24 小时内凭订单号 + 截图可换新卡,超时需走售后流程 |
| 能不能退货 | 虚拟商品一经发出不支持退款;未使用的可按 95% 折返 |
| 大额折扣 | 5000 美元以上面谈;长期合作可签框架协议 |
| 发货要多久 | 工作时间(9:00–21:00)内下单 30 分钟内处理 |
【资料使用方式】…供你按需查阅后回答,不是要发给客户的内容…[知识包 A客户产品手册](事实卡原文,逐行)• 能开发票吗:可开电子普票,需提供抬头与税号,3 个工作日内发出• 最低起订量:首次 100 美元起,后续不限;量大可谈账期引用多个知识包时按引用顺序依次拼接;没有标题的条目会被跳过。
这段「资料使用方式」以及紧随其后的回复节奏(对方问什么答什么、一次最多问 1 个问题、 单条 2~4 行)会一并发给 AI:资料是按需查阅的底稿,不是要念给客户听的稿子。 所以客户只问一句「介绍一下你们的产品」时,AI 的正确反应是「一句话说清我们是谁 + 反问 1 个最关键的问题」, 而不是把品类、起订量、价格、交期、付款、售后挨个列一遍 —— 客户问什么,就答什么。
怎么给客户发图片 / 文件
三种做法,按需选:
| 做法 | 说明 | 适合 |
|---|---|---|
| ① 附件条目(推荐) | 在知识包里加「图片 / 文档」类型的条目(见上一节)→ 客户索要时 AI 自动发送,一次最多 3 个 | 常被索要的产品图、手册、价目表 |
| ② 人工发文件 | 在查看窗口手动发送(人工可发任意类型的文件);AI 只负责应答与引导 | 需要临时挑选、或不常发的文件 |
| ③ 群发任务带媒体 | 群发支持「仅文件 / 文本+文件」形态,批量发给一批号码(这是主动触达路径,不是 AI 回复) | 同一份资料批量推给很多客户 |
| ④ 给出可点击链接 | 把文件传到图床 / 网盘 / 官网,把 https://… 链接写进文本条目(AI 以文本形式发出,客户点开即可) | 超大文件、或想统计点击 |
类型:文本 标题:产品图片 内容:G:\桌面\123\1.jpg ← ❌ 路径被当普通文字注入,AI 会把这段路径原样发给客户
正确做法(改成一个附件条目):
类型:图片 标题:产品图片-美区 文件:D:\资料\美区产品图.jpg ← ✅ 客户索要时 AI 自动把这个文件发出去(路径不外泄)
- 建了知识包却没在接待里勾选 → 等于没配(AI 拿不到知识)。建完记得回接待编辑页勾上并保存。
- 把整份产品文档粘进去 → 每条回复都注入全文,既费 token 又容易让 AI 抓错重点。建议拆成多个知识包(如「价格与账期」「售后政策」「产品清单」),按接待职责分别引用。
- 包里只有文本、却指望 AI 发图 → 客户问「有图片资料吗」,AI 只会说「您留个邮箱/微信,我发过去」——因为它手里一个文件都没有(附件链路的触发条件是知识包里真有「图片/文档」条目)。这不是 AI 不肯发,是没得发:按上一节加一个附件条目即可,加完客户再要图就会直接收到文件。
- 一个账号同时只绑定一套接待;绑定即开启 AI 接管,解绑即回到人工回复。
- 删除接待 = 对所有绑定它的账号解绑:这些账号的 AI 接管会同时关闭(回到人工),卡片「🤖 AI」行与查看窗口标题栏的 AI 按钮颜色立即跟着变,界面右下角弹提示、日志里也会点名是哪几个账号。需要恢复自动接待时,重新建/选一套接待,再到 查看窗口 → 🤖 面板绑定即可。
- 接待里配的转人工触发词与规则,就是 7.2 节转人工行为的来源;微信通知的「仅转人工」模式在该账号产生不了转人工事件时会被置灰。
- 多业务线时建议建多套接待(不同语言/话术),再分别绑给对应账号,避免串话术。
11.4 🎙 语音翻译(STT / TTS)
| 设置项 | 作用 | 建议 |
|---|---|---|
| STT 提供商 | 语音转写:OpenAI Whisper / Groq(免费)/ Custom | 免费起步用 Groq;量大用 OpenAI |
| 转写模型 | 端点支持的模型名(框内默认 whisper-1) | Groq 必须填 whisper-large-v3(Groq 没有 whisper-1);OpenAI 用 whisper-1。程序现在会按提供商自动填默认值(切换提供商即联动),你自己改过就不会被覆盖 |
| STT API Key | 独立于 AI Key(DeepSeek Key 无转写 API) | 需 Whisper 兼容端点 Key |
| 转写端点 | Custom 必填;留空用官方端点 | Groq 填 https://api.groq.com/openai/v1 |
| 超长语音拒绝阈值 | 超过秒数不转写(0=不限制),防无谓消耗 | 默认 600s |
| TTS 音色 / 语速 | edge-tts 免费合成;自动按目标语言选音色 | 「自动(按目标语言·女声)」+ 1.0 |
| 语音发送前确认 | 语音不可撤回,发送前弹确认框 | 建议开启 |
11.5 🛡 风控养号
| 设置项 | 作用 | 建议 |
|---|---|---|
| 多账号轮询策略 | 群发时账号分配:顺序轮询 / 随机抽取 | 均匀负载选「随机抽取」;可控顺序选「顺序轮询」 |
| 模拟输入状态(全局) | 发送前先显示「正在输入…」(语音翻译发送显示「录音中」)。全局默认,AI 自动回复 / 养号 / 手动发送共用;群发可在任务向导里单独覆盖 | 建议开启(仅增加少量延迟)。关闭后以上所有路径都不再显示输入状态 |
| 高斯延迟下限/上限(秒) | 每条消息发出前的随机等待(高斯分布,均值 = 上下限中点;全局口径,AI 接待 / 养号 / 群发 / 手动发送共用)。养号的 A→B 与 B→A 各走一次,所以单条气泡会被推迟 下限~上限 秒 | 默认 15~45;上限建议比下限大 20~30s;日发量大可加大 |
| 养号对聊调度频率 | 轮与轮之间的等待(不是消息间隔):实际 = 该值 × 50%~150% 随机,另有 30% 整轮跳过;从上一轮跑完开始计。钳制 30~3600s(填 20 会按 30 生效并在日志留痕) | 默认 300s,不宜过短 |
| 养号对聊使用语言 | 养号 AI 提示词与预设短语语言 | 填目标市场语言(如 English);留空=中文 |
11.6 🗂 代理库与网络策略(VPN / 直连)
这是网络与风控的关键配置。原则:未配置代理的账号默认走本机系统网络(即本机开没开 VPN/系统代理,WhatsApp 流量就怎么走)。每个账号有三种选择:
| 选择 | 实现 | 适用场景 |
|---|---|---|
| 使用系统网络(默认) | 不注入代理参数,跟随系统代理设置 | 1~2 个账号、目标市场网络通畅 |
| 强制直连 | --no-proxy-server 绕过系统代理 | 系统开了代理但希望该账号直连 |
| 代理库条目 | 绑定指定 HTTP(S) / SOCKS5 代理(支持账号密码认证) | 多账号分散 IP、防关联风控 |
代理库使用步骤
- 「➕ 添加代理」:填写名称、协议(HTTP/SOCKS5)、地址、端口、用户名、密码(住宅代理常态需要认证)。
- 点条目右侧 🧪 测试:验证连通性并缓存出口 IP 与延迟(请求本身走代理,天然 fail-closed)。
- 到目标账号卡片展开区「🌐 代理覆盖」下拉中选择该代理;也可选「强制直连(绕过系统代理)」。
- 账号离线时卡片显示代理配置状态;在线时显示实际出口 IP。
disable_non_proxied_udp),防止真实 IP 从 WebRTC 通道泄露。
- WhatsApp 会话流量:按账号代理选择(系统网络 / 强制直连 / 代理条目);
- AI / LLM 请求:不走账号代理,走本机系统网络(需能直连 DeepSeek/OpenAI 或经系统代理);
- 线索检索(抓取网页):默认跟随系统代理(未开系统代理即直连)。检索用的模型与搜索调用始终直连,不会被塞进代理。任务日志里会写明本轮出口(例:
🌐 本轮检索出口:系统代理 127.0.0.1:10808);若系统代理是 SOCKS 或不可达,则如实退回直连并提示(检索的抓取只支持 HTTP(S) 代理)。想强制直连或指定代理:设环境变量CRIMSONAPEX_DSH_PROXY=direct或CRIMSONAPEX_DSH_PROXY=http://host:port后重启应用; - 地图采集窗口:走系统代理检测。
- 小规模试用:直连 + 系统 VPN 即可,无需在应用内配代理;
- 正式多账号运营:每账号配独立住宅代理(HTTP 或 SOCKS5,支持认证),出口尽量固定(重连换 IP 可能触发风控);
- 代理选离目标客户地区近的节点,延迟越低越好;用 🧪 测试确认出口 IP 与延迟后再绑定;
- 扫码登录时同步选好代理,保证「登录出口 = 使用出口」。
11.7 🔄 系统
| 设置项 | 说明 |
|---|---|
| 语言 Language | 中文 / English,切换立即生效 |
| 检查更新 | 检查 GitHub Releases 最新版本,可一键下载并静默安装(需管理员权限) |
11.8 推荐配置模板
AI 引擎 :DeepSeek + deepseek-chat + Temp 0.7 + 翻译目标语言([译] 气泡默认注入) 接待 :绑定接待后开始自动接待;回复冷却 30s(高频客服可降到 15s)+ 人设提示词 + 引用的知识包 语音 :Groq Whisper(免费起步)+ TTS 自动(按目标语言·女声) 风控养号:随机轮询 + 模拟打字开 + 高斯延迟 15~45s + 养号频率 300s + 养号语言 English 代理 :1~2 个账号 → 直连/系统 VPN;多账号 → 每账号独立住宅代理(先 🧪 测试再绑定)
12. 线索引擎(Lead Engine)
线索引擎是产品的第二个主界面:把「找客户 → 首次触达 → 谈成」做成全自动流水线。与调度中心的区别——调度中心是「你给名单,它负责发」;线索引擎是「它自己找名单、自己首触、自己谈,只在必要时叫你」。
12.1 入口与界面(正反面切换)
- 怎么切:点界面上的「切换视图」按钮(调度中心 ⇄ 线索引擎)——同一个窗口以 3D 翻转方式在正反两面之间切换,不需要另开窗口。
- 正面 = 调度中心:群发任务、目标源、执行报告、日志(第 8~10 章)。
- 背面 = 线索引擎:线索池、渠道接入、流水线状态、首触队列、DSH 检索任务(本章)。
- 授权受限时:没有取得线索引擎能力(见 12.4)时,翻到背面会被拦下并给出提示,调度中心不受影响。
12.2 线索来源渠道
线索可以来自多个渠道,进入引擎后统一去重、归一化并打上渠道标记:
| 渠道 | 说明 |
|---|---|
| Google 地图 | 在独立 Maps 采集窗口按「行业 + 地区」检索商家公开号码(见第 10 章) |
| DSH 研究 | 内嵌的 AI 研究引擎按你的客户画像(brief)自主检索,产出结构化线索包(公司、地区、来源链接) |
| 社媒 | Facebook / Instagram / LinkedIn:在社媒授权中心登录后,按关键词或标签采集公开主页与联系方式 |
| 海关数据 | 进出口/海关公开数据渠道(按品类与地区筛选目标买家) |
| 手动导入 | 粘贴号码列表或导入 CSV |
| 账号既有联系人 | 从已登录账号的通讯录/会话中提取(见第 11 章) |
12.3 流水线:从线索到成交
每条线索是一条独立记录,按阶段自动流转,默认全自动(不需要人工确认):
NEW(新入池)
└─▶ QUEUED_VALIDATE(待验证)──▶ VALIDATED(已验证:号码可用)
│ │
├─▶ DROPPED(无效 / 黑名单) └─▶ QUEUED_TOUCH(待首触)
└─▶ MISSING_NUMBER(缺号码,补全后可重新入队)
│
▼
SENT(已首触)
│
▼
CONVERSING(AI 对话中)
│
├─▶ ESCALATED(转人工:风控红线 / AI 没把握 / 账号异常)
└─▶ CONVERTED(成交)
- 转人工只暂停单条:被转人工的线索不占用工作槽位,也不阻塞其它线索;你在查看窗口处理完,可把它放回对话阶段或直接关闭。
- 不会重复首触:每条外发消息在发送前先记账(线索 + 内容指纹唯一),崩溃重启后按状态对账续跑,绝不盲目重发。
- 只有容量不足才会等:唯一让流水线慢下来的原因是「账号都离线 / 达到发送节拍上限」,此时表现为队列积压,而不是卡死。
- 风控优先:触碰红线、AI 判断没把握、账号异常,一律转人工,而不是硬发。
12.4 配置、授权与前置条件
① 授权能力(分级授权)
本软件按能力分级授权,线索引擎相关能力如下(未取得对应能力时,入口与命令会被拦下并提示):
| 能力 | 对应功能 |
|---|---|
lead_engine | 线索引擎本体(线索池、流水线、状态机) |
lead_outreach | 首次触达(按线索自动发出第一条消息) |
social_scrape | 社媒采集渠道 |
data_channel | 数据 / 海关数据渠道 |
ai_reply · voice · farming · bulk_send | AI 自动回复、语音翻译、养号、群发(见其余章节) |
② 前置条件
- 账号模式:参与线索引擎的账号需处于「线索引擎」模式——它与养号、AI 自动回复互斥(同一账号同时只能是一种模式)。
- AI 引擎:先在 ⚙ 设置 → AI 引擎配置供应商与密钥并测试通过(筛选与对话都依赖它)。
- 用 DSH 研究渠道时:需要 DSH 运行时(安装包已内置),并确认模型密钥可用。
- 用社媒渠道时:先在社媒授权中心完成对应平台登录(各平台会话独立)。
③ 客户工作区
每个客户/市场一个独立工作区(%APPDATA%\CrimsonApex\workspaces\<客户>\),内含 brief.md(客户画像与研究指令)、knowledge\(产品与禁区资料)、recipes\(该客户专用检索配方)、exports\(线索导出 CSV)。研究引擎只读这些材料,客户资料不会进入软件仓库或安装包。
13. 微信通知通道
把 WhatsApp 客户的来消息推送到你的微信,并支持你直接在微信里回复客户。适合离开电脑时盯客户回复 —— 不需要公网、不需要备案、不需要装额外 App。
- 做:按账号推送客户消息(含正文),或只推送「AI 判定需要人工介入」的;你在微信里回复,内容会原样发给对应的客户。
- 不做:不用微信操作本软件的其他功能。这个通道只承载 WhatsApp 的提醒与回复,碰不到群发、养号、线索引擎。
13.1 绑定与测试
- 打开 设置 → 📱 微信通知,点「🔗 扫码绑定微信」;
- 用手机微信扫弹窗里的二维码并在手机上确认;若弹窗提示输入数字,把手机显示的数字填进去;
- 扫码成功后窗口不会立刻关闭:它会显示「最后一步:请在微信里给机器人发一条消息」。
用你的微信给这个机器人发一条任意消息(例如「1」),窗口检测到后会提示「✅ 绑定完成」并自动关闭。
这一步没做就不算绑定成功 —— 微信的回复凭证是随你发来的消息一起下发的,没有它通知一条都推不出去 (此时设置页徽标显示「待打通」)。 - 点「📤 发送测试通知」确认能收到。
13.2 每个账号推什么
在账号卡片展开区的最上面(代理覆盖之上)选:
- 关闭:不推送。
- 全量:该账号收到的每条客户消息都推,含正文。与 AI 是否回复无关。
- 仅转人工:只推 AI 判定需要人工介入的(客户说了「转人工」、AI 判定敏感或超出接待范围、或按你配的转人工规则移交)。
「仅转人工」在该账号根本产生不了转人工事件时会置灰不可选,并直接告诉你原因(未开启 AI 接管 / 未绑定接待 / 接待既没开意图评级也没配转人工规则)。
已经选过的配置不会被自动改掉 —— 如果你后来临时关掉了 AI 接管,卡片上会显示红色的 📱 微信:仅转人工 ⚠,提醒你这条配置当前是死的。
通知长这样(同一会话的多条消息会在合并窗口内合成一条,逐条编号):
💬 全量通知 → 💬 8613649268495 - Henry ①「第一条:问价」 ②「第二条:顺便问交期」 回复 R-23GJ48 或引用本条直接回复 ⚠ 转人工通知 → ⚠ 转人工 - 8613649268495 用户 - Henry 原因:命中转人工触发词「转人工」 「我要转人工」 AI 已对该会话静默,等你接管 回复 R-M6Y9F2 或引用本条直接回复客户 (若该会话此前已经推过通知,转人工那条不再重复正文,改为写 「AI 已对该会话静默,等你接管(正文见上一条,不重复发送)」)
13.3 在微信里回复客户
两种方式,任选其一:
- 引用回复:长按那条通知 → 引用 → 打你想说的话 → 发送。推荐,不用管短码。
原理:微信引用时不回传被引用消息的正文,只给一个消息 id,所以通道靠"发通知时记下的 id"认路。 该记录只在本程序运行期间有效 —— 程序重启前发出的通知,重启后再引用会认不出来(会提示你引用较新的那条,或改用短码)。 - 带短码回复:直接回「R-7K2ABC 好的,明天发货」。短码就在每条通知的末尾。
回复发出后你会收到一条确认,格式为三行(发送方=你的哪个账号发出去的、接收方=发给了谁), 用来核对有没有发错人:
✅ 已回复 发送方:8613649268495 接收方:Henry
短码会被自动剥掉,客户看到的就是你打的那句话,不会看到内部标识。
13.4 状态、故障与隐私
- 标题栏的 📱 指示灯:绿色=已连接;灰色=未绑定;红色带 !=通道断开(登录态失效,需要重新登录)。点它可看详情、重新登录、发测试通知。
- 同一会话的多条消息会在 5 秒内合并成一条通知(合并窗口可在设置里调)。
- 主动推送有个前提:绑定后你要先用微信给这个机器人发一条消息(见上方步骤)。微信只把「回复凭证」随你发来的消息一起下发 —— 没有它,任何通知都发不出去,服务端会回
ret=-2 prepare failed。界面上会直接提示你补这一步。 - 群消息一概忽略。
通知正文包含客户消息内容,会经微信(腾讯)服务端传输。若你不希望客户消息正文离开本机, 请把对应账号设为「关闭」,或设为「仅转人工」(后者只在需要人工介入时才推,且带的是摘要)。
14. 常见问题 FAQ
是的。关闭时会弹出选择:「最小化到托盘」(应用继续在后台运行养号/自动回复)或「退出应用」。托盘图标可随时恢复窗口。
常见原因:① 未激活许可证(提示「未激活许可证,无法群发」);② 超过单次群发数量上限,请分批;③ 执行账号离线或处于养号模式(养号账号不能作为执行账号)。
说明手机端解绑或会话过期。点击卡片上的「📱 重新扫码」重新绑定即可;本地缓存的登录态会自动恢复。
这是 WhatsApp 网页版自己崩了(它内部的错误页),不是本工具的界面,也不是网络或账号问题。程序会自动处理:
- 自动重载:检测到该错误页后,程序先重新加载页面(几秒恢复,比重启客户端快得多);同一账号 3 分钟内只会这样重载一次。
- 仍不恢复 → 自动重建该账号客户端(≈30~60 秒,期间卡片显示「重连中」,登录态不会丢、无需重新扫码)。
- 想帮我们定位:日志里会写
[WA崩溃] 账号 N 页面停在 WhatsApp Web 错误页…以及崩溃前的脚本异常[WA崩溃] … 页面脚本异常: …——把这两行发给作者即可。若日志里出现的是页面无响应但未见 WA Web 错误页,说明是页面卡住而非崩溃,也请一并反馈。 - 反复崩在同一个会话:多半是该会话里有一条"渲染就崩"的坏消息(例如发送失败留下的半成品)。可在手机端删掉该会话中最近几条发送异常的消息,再重开窗口。
按顺序排查(每一步都能在日志里看到结论):
- ① 版本:附件功能需要含「知识包附件」能力的新版本(3.0.2 起,见「更新日志」)。旧版本里 AI 只能在文字里“说”要发图,没有真正发送的能力 —— 先在启动后的标题栏 / 关于里确认版本号,并到官网下载最新安装包覆盖安装。
- ② 附件条目是否配好:设置 → 🧑💼 接待 → 知识包 → 条目的「类型」必须是 图片 / 文档并已选好文件(不是文本条目);保存时会校验格式与大小,不通过会当场提示。
- ③ 文件是否还在原位:条目存的是路径,移动 / 改名 / 删除后就发不出去。日志里会写「文件不存在或无法访问,跳过」。
- ④ 看日志定性:打开
%APPDATA%\CrimsonApex\logs\app.log(新数据根为%LOCALAPPDATA%\CrimsonApex\logs\app.log),搜索[附件]与[媒体]:- 有
[附件] 已发送 A1 …→ 程序确实发出去了,问题在 WhatsApp 侧(客户网络/被折叠),可让对方下拉刷新; [附件] 发送失败 … Data passed to getter must include an id property→ 这是 WhatsApp Web 自身更新引起的媒体发送故障(图片/文件一律发不出、纯文字正常),3.0.2 起已内置兜底补丁:正常应能在日志里看到[媒体] 已应用 WA Web 媒体发送兜底补丁。若这条补丁日志缺失或仍是上面的报错,请升级到最新版并反馈;回复疑似要发文件但未输出标记→ 是 AI 没按规则输出发送标记(模型没遵守指令)。换更“听话”的模型(如 DeepSeek 官方 / GPT-4o 级别)或把该附件的标题写得更直白(如「产品A图(高清)」),再试一次;距上次发文件不足 60s→ 命中了频率保护,这一批只发了文字,让客户再说一句「发下图」即可(隔 1 分钟后自动恢复);跳过暂不支持的媒体类型→ 条目是视频(当前版本仅支持图片与文档);发送失败 …→ 后面会带具体原因(多为文件被占用、格式其实是改后缀得来的、网络中断)。
- 有
- ⑤ 别忘了解绑/绑定:附件属于 AI 接待能力,账号必须处于「已绑定接待 + AI 接管开启」状态;纯人工回复时不会自动发文件。
检查:① 设置 → AI 引擎是否已配置并 🧪 测试通过;② 账号是否已绑定接待(未绑定接待不接待);③ 是否触发冷却(接待「回复冷却」默认 30s 间隔);④ 消息是否为纯表情/极短确认语(启发式预过滤不回复);⑤ 群聊中未被 @ 时不会回复;⑥ 失败过多会熔断并转人工(标题栏 ⚠ 角标查看)。
口径是累计的“接待过的用户数”(按 账号:会话 去重:同一个人聊 100 轮也只算 1,不是回复条数),跨天累计、重启不清零,落盘在 %APPDATA%\CrimsonApex\.data_runtime\intent-stats.json;且只在该账号所绑接待的「意图评级」为开时累加(关掉评级的接待不产生评级事件 → 不计入)。
处理:打开查看窗口 → 🤖 AI 面板 → 统计区 →「♻ 重置统计」(有二次确认,全部账号的接待/意图/流水计数清零,从此刻重新累计;账号配置与接待绑定不受影响)。
运营方推送的公告(系统维护、版本更新说明等),启动时自动拉取并以弹窗展示,点「我知道了」即可;同一台机器每条公告只展示一次,与激活状态无关,无需任何操作。
AI 引擎连续失败达到阈值会自动熔断(暂时降级 AI 相关功能,防止反复请求拖垮链路),并在恢复后自动解除并提示。熔断期间人工回复不受影响;可检查 API Key 是否有效、额度是否充足、端点是否可达。
备份:复制 %APPDATA%\CrimsonApex\.data_runtime\ 目录即可(内含各账号登录态与配置)。换电脑:授权按机器码绑定,新机器需联系运营方重新激活;登录态可随备份目录迁移,若失效则重新扫码登录。
fail-closed 保护生效:代理不可用时拒绝启动,防止真实 IP 泄漏。请检查代理地址/端口/认证信息,在代理库重新 🧪 测试通过后再启动。
新版已把代理库与每账号配置持久化到 config.json 与账号目录,重启自动恢复。若仍丢失,请确认正常退出应用(而非强杀进程)。
确认搜索关键词有效(行业 + 地区,如 Spa in Singapore)、采集窗口能正常打开 Google Maps、且网络可访问 Google(必要时配置系统代理)。
可以,但养号中的账号不能作为群发执行账号(自动剔除)。群发执行期间所有账号的养号调度会全局暂停,任务结束自动恢复。
15. 合规与风控提示
- 批量消息行为可能违反 WhatsApp 服务条款,账号存在被临时封禁或永久封禁的风险;请控制发送频率、使用真实业务话术,不要发送垃圾信息;
- 请遵守目标国家/地区关于电子营销、数据隐私(如 GDPR/PDPA)的法律法规,确保号码来源合法合规;
- 不要将工具用于诈骗、骚扰、非法营销等用途;使用者需自行承担全部责任;
- 账号登录态与业务数据请妥善保管,退出/卸载会清除本地会话缓存。
- 新号「养」一段时间(养号模式)再用于群发,从低频小批量开始逐步加量;
- 高斯延迟上限与下限拉开差距(≥20s),避免固定节奏;
- 文案避免雷同:用接待的多条问候语池(逐行随机取一条)替代同一条重复文案;
- 多账号使用独立代理、固定出口 IP,避免同 IP 多号关联;
- 关注账号状态徽标,出现「会话失效/重连失败」及时处理。
附录 B · 功能配置速查表
从「我要用某个功能」出发,列出每个功能必须配置什么、在哪里配置、推荐值(详细逐项说明见第 11 节)。
| 功能 | 必配项(配置位置) | 选配项 / 参数 | 默认 · 推荐值 |
|---|---|---|---|
| 群发任务 | 激活许可证;≥1 个在线且非养号中的执行账号 | 目标源;内容形态;接待问候语池(逐行随机取一条);轮询/打字/高斯延迟(⚙ 风控养号) | 高斯延迟 15~45s(上限 ≥ 下限 + 20s);超单批上限分批执行 |
| 养号 Farming | ≥2 个账号各点「🤖 开启养号」 | 频率与语言(⚙ 风控养号);AI 话术(⚙ AI 引擎,可选) | 频率 300s(±50% 随机化);语言按目标市场;重启后自动恢复,无需重点 |
| AI 自动回复 | AI 引擎配置并 🧪 通过(⚙ AI 引擎);账号绑定接待(⚙ 设置 → 🧑💼 接待,绑定即开启 AI 接管) | 接待人设提示词/关键词/禁区/回复冷却/引用的知识包(接待内配置);语音 STT;标签同步 | 回复冷却 30s(接待内);知识包建议必填 |
| 文本翻译 | AI 引擎可用([译] 气泡默认注入,无开关) | 「翻译目标语言」(⚙ AI 引擎) | 默认中文;已是目标语言自动跳过不耗 API |
| 语音翻译 | ⚙ 语音翻译:STT 提供商 / 模型 / Key / 端点 + TTS 音色 | 语速;超长阈值;语音发送确认 | Groq 免费起步;超长阈值 600s |
| 地图采集 | 无(无 Key、无全局设置) | 系统代理;搜索关键词 | 关键词:行业 + 地区 |
| 联系人导入 | 账号在线(联系人缓存就绪) | 「全部会话」模式自动过滤非个人会话 | 登录后等待数秒再获取 |
附录 A · 术语表
| 术语 | 含义 |
|---|---|
| Bridge Session | 一个通过 Node.js 桥接进程管理的 WhatsApp Web 连接,封装了一个经过身份验证的浏览器实例(一个账号 = 一个 Bridge Session) |
| Stealth Layer | 浏览器指纹补丁层,覆盖 webdriver、plugins、WebGL、User-Agent 等 20+ 检测维度,用于降低自动化被识别的概率 |
| Account Mode(账号模式) | 每个账号任一时刻仅处于一种模式:养号(主动)或 AI 自动回复(被动);两者互斥,前端与后端双重实施 |
| Gaussian Delay(高斯延迟) | 自动化操作之间使用正态分布随机暂停,模拟人类打字与阅读节奏 |
| AccountId | 贯穿全栈的账号标识符,由应用生成,用于多账号并行路由;单实例最多 20 个账号 |
| Incognito Context | Chromium 无痕上下文,多个账号 Cookie/存储完全隔离,共享一个浏览器进程 |
| Account Session(账号会话) | 账号登录态持久化于 .data_runtime/acc_{账号ID}/,重启自动恢复 |
| Bridge Protocol | 主进程与桥接进程间的 JSON Lines 通信协议(stdin/stdout) |
| Target Source(目标源) | 群发接收号码的来源:手动粘贴 / 地图采集 / 账号既有聊天对象 |
| Task Report(任务报告) | 群发执行结果数据集(目标号码/执行账号/注册状态/发送结果),可导出 CSV |
| AI 意图评级 | 入站消息按上下文分为 7 类意图(IGNORE/CHITCHAT/INFO/INTERESTED/BUYING/AFTER_SALE/ESCALATE),驱动回复话术路由与标签分组 |
| 标签同步 | 把意图评级映射为 WhatsApp 标签(AI-高意向/AI-购买/AI-咨询/AI-售后/AI-转人工),聊天列表按意图分组(需手动建标签,仅 Business 账号) |
| fail-closed(代理) | 代理不可用时拒绝启动账号并报错,绝不静默回退直连泄漏真实 IP |
| 转人工(Escalation) | AI 连续失败或触发保底策略时冻结对话,进入「转人工待处理」面板由人工接管 |
| 网络激活 | 服务器签发 Ed25519 签名授权凭证,客户端本地验签解锁;设备按机器码绑定,含约 48h 离线宽限 |