USER GUIDE · 使用说明

全网获客 Agent

多平台线索发现 → 意向识别 → 建档跟进 → 成交复盘。SaaS 多用户版:按组织隔离台账、团队协作、套餐配额,数据仍保存在你自己的服务器。

版本 v3.6 · 更新 2026-11-14 · 本机地址 http://127.0.0.1:8788 · 网站地址 https://tuoke.xhcsyun.com · 适用:海南本地食用油 / 特产批发获客 · 新增网站版、官网首页与一键部署脚本
返回应用

1快速开始

零依赖应用,不需要安装 npm 包;SaaS 版需要登录账号,单机直开 HTML 时仍可离线使用大部分功能。

步骤操作说明
启动双击 启动SaaS.cmd(或原来的 启动获客Agent.cmd)弹出 CMD 窗口并自动打开浏览器。窗口不要关,关了服务就停了。两个脚本效果相同。
登录打开 http://127.0.0.1:8788,会自动跳到登录页首次部署的内置管理员 admin / admin888;登录后请立刻在「账户 ▾」里改密。其他人点「注册新组织」自建团队,或用邀请码加入已有团队。
确认看右上角「● 已登录」与「组织 · 账号」显示「已登录」= 数据按组织落盘、可跨设备;显示「单机模式」= 只存浏览器,公开页采集与官方地图 API 不可用。
停止在 CMD 窗口按 Ctrl + C,或直接关窗口数据已落盘,下次启动原样恢复;会话 Cookie 7 天内有效,重启服务不用重新登录。
首次启动会自动迁移旧台账:原来的 data/state.json(含全部真实线索)会完整克隆为内置管理员的租户账本,原文件保留不动。新数据写到 data/saas/states/<租户ID>.json。
不启动服务也能用:直接双击 public/index.html 会以「单机模式」运行,粘贴解析、打分、话术、跟进、导出全部可用;但单机模式没有账号、团队与套餐,也不跨设备同步。
端口固定 8788。若被占用,先关掉旧窗口;改端口用环境变量 PORT=9000,或编辑启动脚本里的 set "PORT=8788"。要给别人访问见第 14 章。

网站版(v3.6 新增)

同一套应用已做成可公网访问的网站:https://tuoke.xhcsyun.com(自有服务器,Nginx 反代到本机 127.0.0.1:8788,HTTPS + systemd 常驻)。

访问路径看到什么
/ 未登录官网首页:产品介绍、3 阶段 9 步、三档价格、合规边界、注册 / 登录入口
/ 已登录直接进入工作台,与本机版完全一致
login.html / login.html?mode=register登录页 / 直接展开注册表单
admin.html平台管理后台,仅平台管理员可进,匿名自动跳登录
与本机版的区别只有两点:① 根路径未登录时先展示官网首页;② 网站包初始管理员是随机强密码(写在本机 deploy-tuoke/网站管理员密码.txt,不上传服务器),不是 admin888。功能、9 步引导、六大雷达、话术、订阅与合规边界完全相同。
部署包与数据安全:deploy-tuoke/build.js 生成 deploy-tuoke/site/,只含代码、官网首页、Nginx / systemd 配置与干净初始数据,不含本机真实账号、线索、订单和支付密钥。upload_tuoke.py 用本人提供的 SSH 凭据上传,服务器执行 install.sh 完成 Node 检测、systemd 常驻、Nginx 反代与 certbot 证书。线上数据固定在 /opt/quanwang-agent/data,重新上传代码不会覆盖它。商户凭据仍由本人在「平台管理 → 微信支付配置」填写,HTTPS 回调域名已预置为本域名,在线通道默认关闭。

2一分钟看懂

它不是「自动加人、自动群发」的机器人,而是把找客户、判断意向、写话术、排跟进这些重复活自动化;平台登录、看评论、发消息、谈价成交由您本人完成。

整个流程只记 3 个阶段,不用背 9 步:

一 · 先设好条件
第 1–3 步
→二 · 把客户找出来
第 4–6 步
→三 · 跟进到成交
第 7–9 步
照着页面走就行,不用记顺序:顶部引导条用大字写明「现在做第 N 步」,并列出 在哪做 / 点什么 / 做完得到什么;每做完一步,刚操作的那张卡片下方立刻出现绿色提示条,明确告诉你「下一步去哪、点什么」,还带一个「去做下一步 ▶」按钮。文字提醒、金色高亮、自动滚动定位、跨页签自动切换也同时发生。共 9 步,进度实时显示(如 7 / 9),关掉浏览器也不会丢;一轮走完点「重开一轮」开始下一批,线索不会删除。
编号说明:页面卡片标题已统一成「第 N 步」,与引导条完全一致(v3.4 起不再使用 ⓪ / ①-B 等旧编号)。「谁来做:分工一览」只说明自动 / 人工分工,不是步骤编号。

它自动做

  • 按产品 / 地区 / 半径生成精准检索式与一键打开入口
  • 把您粘贴的评论、聊天、商家资料切成条目并打分分级
  • 识别客户类型、需求标签、地区与附近信号、商家类型
  • 去重、建档、算下次跟进日、生成分阶段话术
  • 换算地图坐标系、导出 KML / 坐标 CSV、统计漏斗

您本人做

  • 登录各平台、浏览评论区、复制意向内容
  • 核对昵称与联系方式、确认是否入库
  • 把话术复制到对应平台手动发送
  • 发完回来点「已发送 · 推进阶段」
  • 谈价、寄样、报价、收款、发货、售后

3界面地图

左侧 6 个页签,顶部引导条在所有页签常驻。

页签用来做什么
获客雷达主战场:产品、地区、附近、地图、全网检索、拼多多评价、粘贴解析与入库预览。
线索池全部客户台账;多条件筛选、打开档案抽屉、改阶段、记备注与联系方式。
今日跟进当天到期清单、复制话术、点「已发送 · 推进」或「顺延 1 天」。
成交漏斗各阶段数量、客户类型分布、渠道效果、复盘统计。
话术库按阶段 / 平台 / 客户类型查看和复制标准话术。
设置 · 数据品牌与话术变量、最低入库分、自动排期开关、导入导出与清空。
顶栏「订阅与账单」v3.3:账期状态、套餐 / 月付年付下单、扫码支付、订单记录、续订设置;顶部横幅提醒试用 / 宽限 / 只读。

顶部引导条(v3.4 新版)

按钮作用
带我去做 ▶定位并高亮「现在做这一步」的卡片,不改变进度。
跳过这步把当前步标记为「已跳过」(一般用于第 3 步「要不要只找附近」),进度照常推进。
自动跟随默认开:完成一步自动切页签 + 滚动高亮。关掉后只更新文字提醒,不自动跳转。
重开一轮把 9 步进度清零,从第 1 步重新开始(不会删除任何线索)。
新版引导条包含:三阶段总览(当前阶段金色、走完变绿)·「现在做」大卡片(在哪做 / 点什么 / 做完得到什么)· 完成后提示条 · 按 3 阶段分组的 9 步小圆钮(✓ 完成⏭ 跳过金色 = 当前,可直接点击定位)。
每做完一步,刚操作的那张卡片下方还会就地出现绿色「已完成 → 下一步」提示条,带「去做下一步 ▶」按钮,视线不用离开当前卡片。

4完整 9 步流程(每天照着走一遍)

下面每一步都不用背:顶部引导条会写明「现在做第几步 / 在哪做 / 点什么」,每做完一步,卡片下方立刻出现下一步提示。

步现在做在哪做 / 点什么做完得到什么 → 下一步提示
1选好这次卖什么「第 1 步」产品卡 · 点产品、选规格检索式 / 词库 / 话术自动切换 → 提示第 2 步
2定好去哪儿找客户「第 2 步」地区卡 · 选省 / 市 / 区县;做全国点「恢复全国」检索式自动带地区词 → 提示第 3 步
3要不要只找附近
可跳过
「第 3 步」附近卡 / 地图商家雷达 · 设半径与商家类型,或点「跳过这步」线索记下距离 / 类型 / 坐标 → 提示第 4 步
4按检索式去平台找客户「第 4 步」检索雷达 / 拼多多评价专渠 · 点检索式、一键打开、复制意向评论得到一批意向原文 → 提示第 5 步
5把内容粘进来自动识别「第 5 步」粘贴区 · 粘贴评论,点「识别意向线索」自动打分分级、标客户类型 → 提示第 6 步
6核对后存进线索池「第 6 步」预览表 · 核对昵称和分数,点「全部入库」/「仅入库 S / A 级」去重建档、排首次跟进日 → 切到「今日跟进」提示第 7 步
7复制话术,自己去打招呼今日跟进「第 7 步」清单 · 点「复制话术」,去平台手动发送客户收到第一条问候 → 提示第 8 步
8发完回来记一笔今日跟进「第 8 步」· 点「已发送 · 推进到…」;暂不联系点「顺延 1 天」阶段推进、下次跟进日自动排好 → 切到「成交漏斗」提示第 9 步
9看效果、导出台账成交漏斗「第 9 步」+ 顶栏导出 · 看转化,导出 CSV / JSON / KML / 坐标 CSV显示 9 / 9,提示「重开一轮」找下一批客户
每一步操作完,都有下一步提示,同时出现在 4 处:① 刚操作卡片下方的绿色就地提示条(带「去做下一步 ▶」按钮);② 引导条完成提示条;③ 顶部「现在做」大卡片自动换成下一步;④ 右下角短提醒 + 金色高亮自动定位。
同一步反复调参数不会重复提醒,只有首次完成才推进进度;乱序操作也支持,引导条永远指向「第一个还没完成、也没跳过的步骤」。第 3 步是唯一可自由跳过的步骤,其余步骤跳过前会二次确认。

5六大雷达模块

5.1 第 1 步 · 本次要销售的产品 / 规格

内置 4 个产品:海南山柚油、海南冷榨椰子油、山柚油礼盒 · 伴手礼、海南马鲛鱼。点选后,检索式、意向词库、话术、品牌变量、线索归档会一起切换。可「新增产品」填名称、品类关键词、检索式、品牌变量。规格会追加到检索式和线索档案。

设置页可改「卖家身份 / 产地 / 证明材料 / 包装规格 / 联系方式 / 最低入库意向分」,这些会直接写进话术。

5.2 第 2 步 · 本次获客地区

省 / 市 / 区县三级下拉,默认全国。内置 34 省、367 市、3439 区县,另有热门地区快捷按钮。选中地区后检索式自动追加地区词,文本里出现该地区名的线索 +8 分。可自定义地区词、一键复制、一键「恢复全国」。

5.3 第 3 步 · 附近的人 / 附近商家

  • 三种模式:关闭 · 全网获客(默认)/附近的人/附近商家。
  • 距离 1–200 km 可设,可填起点商圈 / 经纬度;商家类型多选 + 自定义(餐饮、月子母婴、礼品特产、美容 SPA 等,可自己加类型与话术切入点)。
  • 命中附近信号 +6 / 商家类型 +10,线索档案会记录半径、起点、类型。
平台边界:微信「附近的人」没有官方精确距离档位(列表只显示「500米以内 / 2公里以内」等标签),打招呼本质是好友申请,短时间密集操作会被限制功能。这里的距离只用于地图 / 点评 / 检索式的范围筛选与线索标记,不调用任何 LBS 接口、不自动扫描附近的人。

5.4 第 3 步支线 · 地图商家雷达

从四个平台整理商家档案:店名、地址、经纬度、公开电话、品类、来源平台、坐标系、地图链接,并按商家类型算「适配分」、生成 B 端陌拜话术。

平台坐标系官方 POI 接口怎么用
百度地图BD-09有(需自己的 AK)方式 A 填 AK 直接检索;方式 B 粘贴详情页
腾讯地图GCJ-02有(需自己的 Key)同上;必须指定城市,全国检索需选到市/区县或填起点经纬度
高德地图GCJ-02有(需自己的 Key)同上;支持周边检索与多关键词
奥维互动地图WGS-84无公开接口导出 KML / 坐标 CSV → 在 PC 客户端导入 → 按距离圈选、规划跑店路线
  • 方式 A · 官方 API:在三个开放平台申请自己的 Key 填进页面(只存本机,导出 JSON 时自动脱敏)。点「检索商家」由本地服务请求官方接口,限速 700ms / 平台、每平台最多 20 条、不翻页。结果先预览再入库。
  • 方式 B · 粘贴解析(无需 Key):复制地图详情页 / 分享链接连同文字粘进来,自动抽店名、地址、电话、经纬度、品类,识别 lng,lat、lat,lng、URL 的 location/center/ll 参数、度分秒。
  • 坐标自动换算:百度 BD-09 / 高德·腾讯 GCJ-02 → WGS-84,档案里同时保留原始坐标、坐标系与换算结果;抽屉里可手工补录或修改。
  • 导出:「导出 KML」给奥维、「导出商家坐标 CSV」给 Excel / 其他地图工具。
合规:四平台都不开放「无 Key 的商家库抓取」。本工具不爬地图网页、不绕反爬、不批量拉商家库、不缓存转售 POI;只登记商家公开电话,不采集个人手机号,不自动拨打、不群发。百度 AK / 腾讯 Key 若开启 SN 签名校验需 SK,本工具不支持签名模式,请在控制台关闭。

5.5 第 4 步 · 全网检索雷达 + 拼多多评价专渠

  • 按当前产品 / 地区 / 附近模式生成检索式 chips,覆盖抖音、小红书、视频号、快手、百度、博客论坛、朋友圈、1688 等;点「一键打开」进对应平台,带「需登录」标记的请在 App 内操作。
  • 可填自定义检索式;点「复制提示」连检索式带操作说明一起复制。
  • 拼多多专渠:按「要大桶 / 长期拿货 / 店里用 / 要开票 / 追评」等信号词在评价区人工找;粘贴评价块后自动切出昵称(掩码)、规格、日期、追评,剔除商家回复,区分本店评价(可站内回复)与同行评价(只做需求洞察,不进今日待办、不去对方评价区打广告)。

5.6 ② 粘贴解析区 + 公开页采集

  • 选来源平台 → 粘贴一整段评论 / 聊天 → 点「识别意向线索」→ 自动切分、打分(S / A / B / C)、分型、抽需求标签、去重 → 下方预览表。
  • 非本品类评论会降权并标注「非本品类」;纯好评、同行广告会被压到低分或 0 分。
  • 公开页采集:填关键词,由本地服务抓取无需登录的搜索结果页 / 博客 / 论坛正文,只抽含求购信号的句子;不采评论区、不采登录态内容、不采手机号。
  • 预览表确认后点「全部入库」或「仅入库 S / A 级」;低于「最低意向分」的线索不会误入。

6线索池与客户档案

筛选

支持关键词、分级、阶段、平台、产品、获客地区、附近范围、地图来源 8 类筛选,可组合,点「重置」清空。

列表字段

分级 / 意向分 / 客户昵称 / 产品与规格 / 获客地区 / 附近与商家类型 / 平台 / 客户类型 / 原文摘要 / 地图与坐标 / 阶段 / 下次跟进 / 操作。分级参考:S 高意向A 明确需求B 有苗头C / 低分 仅观察

档案抽屉

  • 可编辑:联系方式、备注、阶段、商家地址、经度、纬度、坐标系(改坐标后 WGS-84 自动重算)。
  • 可查看:原始文本、命中词、需求标签、地区匹配、附近信号、评价来源、地图档案(原坐标 / 换算坐标 / 坐标系 / 来源链接)、完整跟进轨迹。
  • 可操作:复制当前阶段话术、推进阶段、顺延 1 天、删除线索。

7跟进节奏与话术

7 个阶段

新线索 → 已触达 → 需求确认 → 报价 / 寄样 → 谈判中 → 成交 / 流失。阶段推进时按内置节奏自动排下次跟进日(可在设置页关闭自动排期)。

跟进节奏

D0 首触 → D1 → D3 → D7 → D15 → D30,每个阶段的话术开场各不相同:首触不逼单、D1 补资料、D3 给规格与检测报告、D7 谈开票与配送、D15 唤醒、D30 长尾维护。地图商家线索另有一套 B 端陌拜话术。

平台风格

同一句话会按平台切换语气:抖音 / 快手短句口语、小红书重体验与检测报告、微信偏正式、拼多多只给站内合规回复、地图商家走电话 / 上门开场。话术只生成、不自动发送,复制后由您手动发出。

发送纪律:先在公开评论下给一句有用回答再私信;同一段话不要连发多人,按客户类型换开场白;每天新私信控制在平台允许范围内;对方明确拒绝就不再打扰。

8数据管理与备份

功能产出 / 位置说明
自动落盘data/saas/states/<租户ID>.json + .bak每个组织一份独立账本,每次写入前自动备份;物理隔离、清浏览器缓存不丢数据、换设备登录原样恢复。
导出 CSV全网获客_客户线索_日期.csvExcel 可直接打开,含产品、地区、附近、地图、经纬度等全部字段。
导出 JSON 备份全网获客_线索备份_日期.json完整状态(含流程进度),地图 Key 自动脱敏;用于换电脑 / 回滚。
导入 JSON设置 · 数据 → 导入 JSON选之前导出的备份文件即可恢复;旧版本备份也能自动补齐新字段。
导出 KML全网获客_地图商家_日期.kmlWGS-84 坐标,导入奥维互动地图做点位与路线规划。
导出商家坐标 CSV全网获客_商家坐标_日期.csv原坐标 + WGS-84 双份,方便其他地图工具使用。
清空 / 示例设置 · 数据「清空全部线索」需二次确认;「载入示例线索」用于练手,会覆盖当前台账,先导出备份。
单机模式数据:存在浏览器 localStorage 的 quanwang_agent_state_v1;旧版键 shanyou_agent_state_v1 会作为只读回退自动迁移,旧线索不会因改名丢失。单机数据不上传、不与团队共享。
多人同时编辑:同一组织两人同时改台账时,服务端用版本号 rev 检测冲突,后保存者会收到「其他成员刚更新了台账」提示并自动同步最新数据,不会静默互相覆盖;重试刚才那一步即可。
改代码后:修改 public/engine.js / server.js / saas.js 必须重启服务;只改前端页面 / 样式,刷新浏览器即可。

9动作边界表

设计原则:能自动的自动,不能自动的不假装能自动。

环节Agent 自动完成您本人操作
全网发现检索式、一键打开入口、公开网页正文抽取登录平台、看评论区、复制意向文本
拼多多评价评价块解析、批发信号识别、本店 / 同行区分、站内话术翻评价、复制文本、站内公开回复;不私信买家、不站外导流
附近 / 地图范围检索式、官方 API(用您的 Key)、粘贴解析、坐标换算、KML / CSV、适配分申请保管 Key、人工核对公开资料、复制详情页、逐家联系
识别建档切分、打分、分型、去重、落盘、排跟进日确认昵称与联系方式、补备注
打招呼按阶段 / 平台 / 客户类型生成可复制话术手动发送(先公开互动再私信)
跟进成交到期提醒、阶段推进、轨迹、漏斗统计、导出台账实际沟通、发资料、寄样、报价、签约、收款、发货
订阅与支付下单签名、回调验签、金额校验、账期实时判定、到期只读、订单流水、审计本人申请商户资质、保管密钥、配置公网 HTTPS 回调、真实小额付款实测;核对线下汇款到账并确认收款

10合规红线

  • 不批量爬评论区、不绕反爬、不模拟登录态、不使用第三方「评论区 / 私信」黑接口。
  • 不自动私信、不群发、不站外导流;朋友圈 / 视频号 / 微信「附近的人」没有公开搜索或 LBS 接口,只能人工查看或好友转介。
  • 不采集个人手机号 / 微信号;联系方式由对方主动提供后您手动录入。
  • 不批量拉地图商家库、不缓存转售 POI;只登记商家公开电话,首次联系一次只发一家,被拒不再打扰。
  • 数据只存本机,不上传第三方;地图 Key 只存本机且导出备份时脱敏。

11常见问题

Q:打开就跳到登录页 / 忘了管理员密码?
v3 起必须登录。首次部署内置管理员 admin / admin888(可用环境变量 ADMIN_PASSWORD 改)。忘记密码时,删掉 data/saas/accounts.json 并重启会重建管理员,但会生成新组织;更稳妥是先备份整个 data/saas/ 再操作。不要删 states 目录,那是所有线索。
Q:怎么让同事一起用?
点右上角「账户 ▾」→「生成邀请码」→「复制邀请链接」发给同事,对方在登录页点「注册新组织」并填邀请码,即加入本组织共享线索池。个人版默认最多 1 人,可联系平台管理员升级套餐,或直接为该组织设置自定义成员上限(见 14.3)。
Q:提示「配额已用完 / 当前套餐不含此功能」?
配额由服务端按组织统计,每日 0 点(UTC)重置。个人版不含地图官方 API 检索,可改用「方式 B 粘贴解析」(个人版可用);要提额请联系平台管理员升级套餐(各档价格见 14.3)。点「账户 ▾」可看 6 项用量进度条。
Q:不同组织的线索会串吗?
不会。每个组织一份独立 .json 账本,租户 ID 只从服务端会话推导,请求体里伪造的 tenantId 会被强制覆盖;未登录访问任何业务 API 都返回 401。
Q:双击启动脚本没反应 / 提示端口被占用?
先看是否已有 CMD 窗口在跑、或浏览器已能打开 127.0.0.1:8788。服务已在跑就直接开网页,不要重复启动;确实要重启先关旧窗口。
Q:页面显示「单机模式」?
说明没连上本地服务(多半是直接双击了 HTML)。双击 启动获客Agent.cmd 后刷新页面即可;单机模式下粘贴解析、话术、跟进、导出仍可用。
Q:地图检索提示「需要 Key」或「请选具体城市」?
方式 A 需要在对应开放平台申请自己的 Key 并填进「地图商家雷达」;腾讯位置服务必须指定城市,全国检索请先在「第 2 步 获客地区」选到市 / 区县,或填起点经纬度走周边检索。不想配 Key 就用方式 B 粘贴解析。
Q:百度 / 腾讯返回签名校验错误?
这两个平台可开启 SN 签名校验(需要 SK),本工具暂不支持签名模式。请在开放平台控制台关闭 SN 校验,或改用方式 B。
Q:奥维互动地图为什么不能一键检索?
奥维没有公开 POI 检索 API。请点「导出 KML」,在奥维 PC 客户端导入后按距离圈选、规划跑店路线。
Q:导入奥维后点位偏了几百米?
坐标系混用了。高德 / 腾讯是 GCJ-02、百度是 BD-09,KML 导出已统一换算成 WGS-84;在奥维里选 WGS-84 即可对齐,不要用原始坐标。
Q:清了浏览器缓存,线索会不会没?
服务模式不会,数据在 data/state.json;只有单机模式才存浏览器,建议定期「导出 JSON 备份」,换电脑时用「导入 JSON」恢复。
Q:看不到下一步提示?
顶部引导条常驻,且刚操作的那张卡片下方会就地出现绿色「已完成 → 下一步」提示条,带「去做下一步 ▶」按钮;窄屏(<1100px)引导条不再吸顶,往上滚即可看到。
Q:引导条进度乱了 / 想重新走一遍?
点「重开一轮」即可清零 9 步进度,不会删除线索;不想被自动切页打扰就把「自动跟随」关掉,只保留文字提醒。
Q:改了代码后页面没变化?
改 engine.js / server.js / saas.js / payments.js / billing.js 必须重启服务;只改 HTML / CSS / 前端 JS 刷新浏览器即可(必要时 Ctrl+F5 强刷)。支付配置改完不用重启,在后台点「重载支付配置」。
Q:为什么选微信 / 支付宝时提示「通道未开通」?
商户凭据默认全空、在线支付总开关默认关闭。需你本人申请商户资质,再到「平台管理 → 微信支付配置」表单填好并保存(见 14.8.3);自检未通过不会生成收款二维码。系统不会生成假二维码;在此之前可先用「线下汇款 · 管理员确认」,或让管理员直接开通。
Q:订阅到期后线索会被删 / 会不会登录不上?
不会。到期(含 3 天宽限期)后进入只读模式:仍可登录、查看、导出全部线索,只是新增 / 编辑 / 解析 / 采集 / 导入被服务端拦住并提示 402;续费或管理员开通后立即恢复。升级到 v3.3 时已有组织自动获得「平台授权 · 不限期」,不会被新账期锁死。
Q:会自动扣款 / 自动续费吗?
不会。本版本不申请代扣协议,不会自动从任何账户扣钱。「续订提醒」只记录意愿并在到期前显示横幅,每次续费都需要本人主动下单扫码(见 14.8.5)。
Q:付款了但订阅没变?
点支付页「我已完成支付」让服务端主动向支付网关查单;只有网关返回真实成功才开通。若服务器能收到公网 HTTPS 回调,会自动开通。线下汇款则需管理员在后台核对到账后点「确认收款」,系统不会自动标记已付。

12请实测清单(第一次用建议跑一遍)

  1. 双击 启动SaaS.cmd,浏览器自动跳登录页 → 用 admin / admin888 登录 → 确认右上角「● 已登录」、顶栏显示「组织 · 账号」,原先的 12 条真实线索与流程进度都还在。
  2. 点「账户 ▾」→ 核对 6 条配额进度条 → 改一次密码;平台管理员再点顶栏「平台管理」看组织总览与审计日志,可试填一次「成员上限」再恢复默认(见 14.3)。
  3. 确认顶部「三阶段总览」与「现在做第 1 步」大卡片(在哪做 / 点什么 / 做完得到什么),「第 1 步」产品卡带金色高亮,卡片下方有「现在做」提示条(新组织从 0 / 9 开始)。
  4. 点第二个产品 → 刚操作的卡片下方立刻出现绿色「已完成 → 下一步 第 2 步」提示条(带「去做下一步 ▶」按钮),引导条同步换成「现在做第 2 步」;选「海南省 / 海口市」→ 提示第 3 步;点「跳过这步」→ 阶段一变绿、阶段二变金并提示第 4 步。
  5. 在「地图商家雷达」点「填入 4 条示例」→「解析商家资料」→ 预览表应出现 4 行,含坐标与公开电话;点「导出 KML」确认能下载。
  6. 在「第 5 步 粘贴区」点「填入示例」→「识别意向线索」→ 核对分数梯度(S / A / C)→「全部入库」,应自动跳到「今日跟进」。
  7. 点「复制话术」→ 点「已发送 · 推进到…」,应自动跳到「成交漏斗」;点顶部「导出 CSV」,引导条应显示 9 / 9 并提示「重开一轮」;点「重开一轮」确认线索仍在、进度归零。
  8. 每完成一步,检查「下一步提示」是否同时出现在:卡片下方绿条、引导条完成提示、「现在做」大卡片、右下角短提醒,且下一步卡片被金色高亮定位。
  9. 最后到「设置 · 数据」点「导出 JSON 备份」,留一份底;需要练手再点「载入示例线索」。
  10. 点顶栏「订阅与账单」→ 确认当前组织显示「平台授权 · 不限期」、三档价格与三条通道状态;切到「线下汇款」下一单,应生成待支付订单与收款信息(不会真的扣钱)。
  11. 用 admin 进「平台管理 → 订阅、账期与在线支付」→ 对该订单点「确认收款」,订阅应立即变为有效;再点「立即停用」,回工作台试着新增线索应被 402 拦住且数据仍可导出;最后点「开通 / 续期」恢复。测试完记得恢复原有订阅状态。
  12. 在「平台管理 → 微信支付配置」点「本地自检(不联网 / 不下单)」,看报告逐项列出还缺什么;把 apiclient_key.pem 放进 data/saas/certs/ 后刷新,确认出现「可用」与「一键采用」按钮(见 14.8.3)。
练手会覆盖台账:如果里面已经有真实客户,先导出 JSON 备份,再点「载入示例线索」或「清空全部线索」。第 9–10 步只影响订阅 / 订单台账,不动线索;正式收款前务必按 14.8.3 用真实小额订单实测一次。

13文件与技术信息

文件作用
启动SaaS.cmdSaaS 版启动脚本(纯 ASCII + CRLF,自动开浏览器;与旧脚本等价)
启动获客Agent.cmd原双击启动脚本,保留不变,同样启动 SaaS 服务
server.js零依赖 HTTP 服务:会话鉴权、租户隔离、配额、采集、地图官方 API 代理、CSV 导出
saas.js多用户内核:账号 / 租户 / 会话 / 邀请码 / 套餐 / 用量 / 审计 / 订阅与订单 API
payments.js支付网关:微信 v3 / 支付宝 RSA2 签名、下单、查单、回调验签;配置安全写盘、格式校验、脱敏视图、本地自检(零依赖)
billing.js订阅账期内核:状态机、订单、幂等开通、管理员开通 / 停用
pay-config.example.json支付配置模板与字段说明(无真实凭据)
public/login.html / auth.js登录、注册、邀请码加入页面
public/admin.html / admin.js平台管理后台:组织、套餐、自定义成员上限、订阅 / 账期 / 订单 / 收款确认 / 微信支付可视化配置 / 本地自检、审计日志
public/index.html / app.js / style.css工作台页面、交互与样式(含账户菜单、订阅横幅与入口)
public/billing.js / qrcode.js订阅账单面板、支付二维码页、主动查单轮询 / 本地 QR 编码器
public/engine.js共用引擎:打分、解析、话术、地图、地区、3 阶段 9 步流程状态机与引导文案
public/regions.js全国省 / 市 / 区县三级行政区划数据
public/使用说明.html本说明书(可在应用顶栏「使用说明」打开,可打印成 PDF)
使用说明.md同内容的纯文本版,便于复制转发
data/saas/accounts.json 账号 / tenants.json 组织(含 maxMembersOverride) / sessions.json 会话 / invites.json 邀请码 / usage.json 用量 / audit.log 审计 / states/ 台账 / subscriptions.json 订阅 / orders.json 订单 / pay-config.json 支付凭据(敏感)/ certs/ PEM 密钥
data/state.json / .bakv2 旧台账,首次启动的完整迁移源,保留不删不改
deploy-tuoke/build.js生成网站部署包 deploy-tuoke/site/:代码副本 + 官网首页 + 干净初始数据 + 部署配置
deploy-tuoke/templates/home.html官网首页模板:产品、3 阶段 9 步、三档价格、合规边界
deploy-tuoke/site/install.sh / nginx-*.conf服务器端安装脚本与 HTTP 引导 / HTTPS 正式两阶段 Nginx 配置
deploy-tuoke/upload_tuoke.py / selftest.jsSFTP 上传脚本(凭据命令行传入、不写盘)与网站包本地自检
deploy-tuoke/网站管理员密码.txt首次部署随机生成的平台管理员密码,只存本机、不上传

运行环境:Node.js 内置模块(无需 npm install)· 按租户分文件存储 · 前后端共用 UMD 模块 · 服务模式(需登录)/ 单机 localStorage 离线模式自动降级 · 默认端口 8788。

14多用户 SaaS

v3 起从「一台电脑一个台账」升级为「按组织隔离的多账号系统」。原来的全部功能、3 阶段 9 步引导、六大雷达、话术与合规边界保持不变,只在外面加了账号、团队、套餐三层。

14.1 数据怎么隔离

层级说明
组织(tenant)注册时创建;每个组织一份独立账本 data/saas/states/<租户ID>.json,物理隔离,互不串户
成员(user)归属某个组织;同组织成员共享同一份线索池,每条新线索自动记录建档人,档案抽屉里可看
会话(session)HttpOnly + SameSite=Lax Cookie,服务端持久化,7 天有效、滑动续期;重启服务不用重新登录
不是靠前端藏按钮:所有 /api/* 除 /api/health 与登录注册外都要校验会话;租户 ID 只从会话推导,请求体里伪造会被强制覆盖;管理后台页面匿名访问直接 302 回登录页。

14.2 三种角色

角色能做什么
平台管理员内置 admin:进入 admin.html 查看全部组织、调整套餐、按组织设置自定义成员上限、启停组织 / 账号、看审计日志;同时拥有一个自己的组织
组织管理员(owner)注册人:生成邀请码、查看成员、停用 / 恢复成员、看本组织配额
成员(member)用邀请码加入:正常使用全部获客功能,共享线索池;不能管理团队、不能进管理后台

14.3 套餐与配额(服务端强制)

能力个人版专业版团队版
线索总量200 条5000 条50000 条
粘贴识别 / 天305005000
公开页采集 / 天101201000
地图官方 API / 天不含(粘贴解析仍可用)1001000
导出 / 天102002000
成员上限(默认,可覆盖)1 人5 人30 人
月付价格¥69 / 月¥168 / 月¥368 / 月
年费特惠¥600 / 年(省 ¥228)¥1680 / 年(省 ¥336)¥3680 / 年(省 ¥736)

用量按组织统计,每日 0 点(UTC)重置;超额不会静默丢数据,会返回明确提示。新注册组织默认个人版,由平台管理员在后台调整。

价格与结算

上表价格是对外标价展示:登录页、工作台「账户 ▾」、平台后台「套餐说明」都会显示月付价与年费特惠。月付 / 年付只是结算周期不同,功能与配额完全相同。

v3.3 起价格可直接下单支付:已接入微信 / 支付宝扫码支付、订阅台账与账期到期停用,详见 14.8 订阅、在线支付与账期。系统不申请代扣协议、不会自动扣钱,开票与签约仍由管理员线下处理。年费省钱金额按「月价 × 12 − 年费」标注;改价时同步修改 saas.js 的 PLANS。

按组织自定义成员上限(v3.1 新增)

套餐里的成员上限只是「默认值」。平台管理员可以为单个组织单独覆盖这一项,其它配额仍然随套餐走。

① 入口 用 admin 登录 → 顶栏「平台管理」→「组织与套餐」表。
② 设置 找到目标组织的「成员上限」列,输入 1–10000 的整数 → 点「保存」(输入框回车等效),该行显示「生效 N 人 · 自定义」。
③ 还原 点「恢复默认」,或清空输入框再点「保存」,即回到套餐默认值。
④ 生效位置 生成邀请码、用邀请码注册两处都按新上限校验;工作台「账户 ▾」的成员配额进度条与团队标题同步显示自定义上限。
⑤ 边界 只影响人数,不动线索、其它配额与账号。若上限调得低于现有活跃成员数,已有账号不会被删除,只是不能再新增成员,后台会明确提示。
上限存在 data/saas/tenants.json 对应组织的 maxMembersOverride 字段;字段缺省 / 留空即回退套餐默认。每次调整写入审计日志 MEMBER_LIMIT,仅限平台管理员操作。

14.4 邀请同事(标准 SOP)

① 管理员 右上角「账户 ▾」→「生成邀请码(7 天有效)」→ 点「复制邀请链接」。
② 同事 打开链接 → 自动切到注册页并填好邀请码 → 填账号、密码 → 点「创建组织并登录」(有邀请码时不会新建组织)。
③ 核对 管理员面板「团队成员」应多出一人;同事的线索池应能看到组织已有的全部线索。
④ 离职 在该成员行点「停用」,其账号立即无法登录,已建线索保留。

14.5 安全设计

  • 密码 scrypt + 每账号随机盐,服务端不存明文;连续 5 次登录失败锁定 10 分钟。
  • 写请求校验同源 Origin / 自定义 CSRF 头;Cookie HttpOnly + SameSite=Lax,HTTPS 部署加 Secure。
  • 响应带 X-Content-Type-Options / X-Frame-Options / Referrer-Policy;静态目录禁止 ../ 穿越。
  • 账本带 rev 版本号,多人并发保存时后写者收到 409 并自动同步最新数据,避免静默覆盖。
  • 审计日志 data/saas/audit.log 记录登录、注册、改套餐、改成员上限(MEMBER_LIMIT)、下单、支付开通、线下收款确认、回调拒绝、成员变更、导出;不记录密码、商户密钥、支付链接、地图 Key、线索正文。
  • 支付回调必须验签(微信 RSA-SHA256 + APIv3 密文解密 / 支付宝 RSA2),时间戳防重放,金额与订单不符拒绝,通道不符拒绝,重复回调幂等;商户密钥只在服务端,后台不展示、不回传、不进日志。
  • 合规红线不变:不爬评论区、不自动私信群发、不抓个人手机号、不批量拉商家库。

14.6 从本机到团队 / 公网

场景做法
仅自己用默认 HOST=127.0.0.1,双击 启动SaaS.cmd,浏览器开 127.0.0.1:8788。
局域网同事共用启动时设 HOST=0.0.0.0(Windows CMD:set HOST=0.0.0.0 && node server.js),同事访问 http://你的内网IP:8788;放行防火墙 8788 端口。
公网 / 域名(v3.6 推荐)用 deploy-tuoke/ 一键部署到 https://tuoke.xhcsyun.com:Nginx 反代 + certbot HTTPS + systemd 常驻 + 官网首页,详见第 1 章「网站版」。
公网 / 域名(手工)HOST=0.0.0.0 + SECURE_COOKIE=1 + ADMIN_PASSWORD=强密码,前面挂 Nginx / Caddy 做 HTTPS 反代,务必先改掉默认管理员密码。
换端口PORT=9000(或改启动脚本里的 set "PORT=8788")。
# Nginx 公网反代示例(先申请证书)
server {
  listen 443 ssl;
  server_name lead.example.com;
  ssl_certificate     /path/fullchain.pem;
  ssl_certificate_key /path/privkey.pem;
  location / {
    proxy_pass http://127.0.0.1:8788;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto https;
  }
}
公网部署前必做:① 改管理员密码;② 设 ADMIN_PASSWORD 并开启 HTTPS 后设 SECURE_COOKIE=1;③ 定期备份整个 data/saas/ 目录;④ 不要把这个仅用于内网可信环境的文件存储版直接暴露到公网承载敏感客户数据——正式商用建议再接数据库、备份策略与等保措施。

14.7 动作边界

环节系统自动完成你 / 管理员操作
账号与团队注册登录、密码加盐、会话、租户隔离、邀请码校验、权限判定、审计日志设置管理员密码、生成并分发邀请码、停用离职成员
套餐按组织统计用量、超额拦截、每日重置、自定义成员上限校验、价格展示在管理后台分配套餐、按需设置单组织成员上限;开票、签约
订阅与支付下单签名、回调验签、金额校验、幂等开通、账期实时判定、到期只读、订单流水、审计本人申请商户资质、保管密钥、配置公网 HTTPS 回调、真实小额付款实测;核对线下汇款到账并确认收款
部署监听地址与端口、静态资源、API申请域名与 HTTPS 证书、配置反代与防火墙、定期备份
获客业务与 v2 完全一致(检索式、打分、话术、跟进、导出)与 v2 完全一致(人工登录平台、复制、发送、成交)

14.8 订阅、在线支付与账期(v3.3 新增)

已接入 微信支付 Native 扫码、支付宝当面付扫码、线下汇款人工确认 三条通道,配套订阅台账、账期到期停用与订单管理。支付代码零依赖(仅 Node 内置 https / crypto),不引第三方支付 SDK。商户凭据默认全空、通道默认关闭,未配置时绝不生成模拟二维码或假装支付成功。

14.8.1 账期状态机(每次请求实时判定,不靠定时任务)

状态含义工作台
平台授权升级到 v3.3 时已存在的组织自动获得「不限期」授权,不会被新账期锁死全部可用
试用期新注册组织默认 7 天(trialDays 可配)全部可用,顶部蓝色提醒
正常有效订阅期内全部可用
宽限期到期后 3 天(graceDays 可配)全部可用,顶部黄色提醒
已到期 · 只读超过宽限期,或管理员点「立即停用」所有写操作被服务端 402 拦截;线索可查看、可导出,绝不删除
到期不续订用户主动勾选,有效期内仍可用到期后按上面规则进入宽限 / 只读
判定在每次请求由服务端实时计算(billing.js 的 view()),不依赖定时器,也不能靠前端改按钮绕过。只读时仍允许登录 / 改密 / 退出、查看台账、导出 CSV / JSON、订阅查询与下单续费(不会把自己锁死);被拦的写操作统一返回 402 SUBSCRIPTION_EXPIRED。台账在 data/saas/subscriptions.json,订单在 orders.json。

14.8.2 三条通道与「双通道到账确认」

通道怎么付到账确认
微信支付 · 扫码微信支付 API v3 Native 下单 → 浏览器本地生成二维码回调 RSA-SHA256 验签 + APIv3Key 密文解密,或服务端主动查单
支付宝 · 扫码当面付 alipay.trade.precreate回调 RSA2 验签,或 alipay.trade.query 查单
线下汇款 · 管理员确认以订单号作备注转账,把付款凭证发给管理员管理员核对到账后点「确认收款」,系统不会自动标记已付

支付网关异步回调会自动开通订阅;若服务器没有公网入站回调地址,用户在支付页点「我已完成支付」(或等 5 秒自动轮询)由服务端主动向微信 / 支付宝查单,只有网关返回真实 SUCCESS / TRADE_SUCCESS 才开通。因此部署只需服务器能出网访问支付网关,不强依赖公网回调;生产环境仍建议配好回调。二维码由 public/qrcode.js 在浏览器本地生成(Byte 模式 / 纠错 M,已与标准库逐模块对拍),支付链接不发给任何第三方二维码服务。

14.8.3 微信支付配置(v3.5 起在后台填表,不必手改 JSON)

主路径:用 admin 登录 → 顶栏「平台管理」→「订阅、账期与在线支付」→ 展开「微信支付配置 · 填表即生效」。保存后系统自动写盘、重载配置并跑一次本地自检,不用重启服务、不用改文件。
步填什么去哪拿
1 商户信息mchId、appId、APIv3 密钥、证书序列号微信支付商户平台 pay.weixin.qq.com → 账户中心 · 商户信息 / API 安全;AppID 须在「产品中心 → AppID 账号管理」与商户号绑定
2 密钥证书商户 API 私钥、微信支付公钥(或平台证书)把 apiclient_key.pem、pub_key.pem 放进 data/saas/certs/,页面上点「用作商户私钥 / 用作平台公钥」自动填路径;也可直接粘贴 PEM 全文
3 公网回调baseUrl、两个启用开关公网 HTTPS 域名 + 反代;回调自动推导为 baseUrl + /api/pay/notify/wechat,页面可一键复制
  • 留空 = 保留原值:改一项不用重填所有密钥;要删掉某项点字段旁「清除已存值」。
  • 已保存的密钥一律不回显,只显示「已配置 / 未配置」;APIv3 密钥输入框为密码型;保存成功后输入框立即清空。
  • 本地自检纯本地运行,不联网、不下单、不模拟支付,逐项检查 9 项:两个开关、mchId / appId / APIv3 / 序列号格式、私钥 PEM 解析与 RSA 签名自测、平台公钥解析、回调地址公网 HTTPS。全绿后才建议真实小额收款。
  • 格式明显错误(APIv3 不是 32 位、私钥 PEM 损坏、baseUrl 为 http / 本机 / 内网)直接拒绝保存并列出原因,不会写坏配置。
  • 保存前自动备份到 data/saas/pay-config.bak.json(同样含密钥,勿外传),原子写入;审计日志只记字段名、不记任何值;仅平台管理员可访问。
备选:手工编辑 data/saas/pay-config.json(模板 pay-config.example.json),改完点后台「重载支付配置」。字段说明见模板 _字段说明。
外部环节仍由你本人办理:① 申请商户号、下载 API 证书、绑定 AppID、设置 32 位 APIv3 密钥、下载微信支付公钥;② 准备公网 HTTPS 域名 + 反代,让回调地址可被微信访问(本机 127.0.0.1 / 内网 IP 不可用);③ 表单填值 → 保存 → 自检全绿 → 用真实小额订单实测扫码付款;④ 核对到账与订阅自动延长,线下汇款由管理员在后台「确认收款」。
AI / 本系统不代注册商户、不代填或保管商户密钥、不代收款;凭据只写在本机 pay-config.json,不上传第三方、不写日志。凭据缺失或自检未通过时下单会明确报错并列出缺少的字段,不会生成任何收款二维码,可改选「线下汇款」。pay-config.json 与 certs/ 含敏感信息,务必设权限、不要提交到代码仓库。

14.8.4 安全边界(服务端强制)

  • 金额一律由服务端按 PLANS.billing 计算(单位:分),忽略前端传的金额;回调金额与订单不符直接拒绝开通。
  • 微信回调验 Wechatpay-Signature(RSA-SHA256 + 平台公钥)后用 APIv3Key 做 AES-256-GCM 解密;支付宝回调验 RSA2 签名;时间戳超 5 分钟按重放拒绝。
  • 用订单号反查本地订单,租户 ID 绝不从回调体取;支付通道必须与下单通道一致(防止用微信回调确认线下汇款订单);重复回调幂等,不重复延长账期。
  • 支付回调是匿名白名单,跳过 CSRF 校验但必须验签;失败返回 401 / fail 并写 PAY_NOTIFY_REJECT 审计。
  • 审计新增 ORDER_CREATE / ORDER_PAID / PAY_MANUAL_CONFIRM / SUBSCRIPTION_ACTIVATE / ADMIN_REVOKE 等,不记录密钥、支付链接与线索正文。

14.8.5 订阅管理怎么操作

谁入口能做什么
组织管理员顶栏「订阅与账单」或「账户 ▾ → 订阅与账单」看账期与剩余天数;选套餐 / 月付年付 / 通道下单;扫码或复制支付链接;主动查单;取消未付订单;查最近 20 笔订单;设置「到期不续订 / 续订提醒」
平台管理员「平台管理 → 订阅、账期与在线支付」看全部组织账期与收款累计;手动开通 / 续期(可填天数顺延);确认线下收款;授予 / 取消平台授权;立即停用订阅;重载支付配置;查最近 80 笔订单
自动扣款边界:当前版本不申请代扣协议、不会自动从任何账户扣钱。「续订提醒」只记录意愿并在到期前显示横幅,每次续费都必须本人主动下单扫码;月付 / 年付只是结算周期不同,功能与配额完全相同。要做真正的自动续费,需另行申请微信 / 支付宝代扣签约权限并扩展 payments.js。

14.8.6 新增文件

文件作用
payments.js支付网关:签名 / 下单 / 查单 / 回调验签 + 配置写入 / 脱敏 / 自检
billing.js订阅账期内核:状态机、订单、幂等开通、管理员开通 / 停用
public/qrcode.js纯前端 QR 编码器,本地生成支付二维码
public/billing.js订阅与账单面板、支付页、主动查单轮询、到期横幅
pay-config.example.json配置模板与字段说明(无真实凭据)
data/saas/subscriptions.json / orders.json订阅台账 / 订单流水(金额单位:分)
data/saas/pay-config.json / certs/支付配置与商户凭据(敏感)/ PEM 密钥,自行创建并设权限
data/saas/pay-config.bak.json每次保存前的自动备份(同样含密钥,勿外传)