B2B 销售工作台搭建(含定时任务)
Overview
把一份《工作台搭建提示词/需求规格》落地为一套可演示、可校验、跨模块自洽的完整交付:
单文件 HTML 工作台 + 文件层 xlsx 台账 / Markdown 主档 + 模块 Skill + 示范数据与每页案例 + 定时自动化任务
核心不是"画一个页面",而是建立文件即单一事实源的架构:HTML 是索引与操作台,真正的记录落盘为 xlsx 与 Markdown,两者由同一份数据源生成。
When to use
- 用户上传或指定一份搭建提示词/规格,要求"据此搭建工作台"。
- 需求涉及出海 B2B 销售链路:市场情报、线索采集与分级、客户背调、商机推进、内容资产、AI 可见性(GEO)监测。
- 用户要求补示范数据、要求"每个页面都要有案例示范"。
- 用户要求"生成相关定时任务 / 自动化"。
- 用户要求整套工作台"不得遗漏任何功能点"。
前置决策(每次必做)
- 加载资料库 skill(若以「小台 / 工作台搭建师」专家身份执行):按平台注册名「资料库」加载,不要用
library/skill-library/workbuddy-builtin这些别名或插件 id。 - 判断合规路径:若规格有"敏感数据不出本机 / GDPR 最小必要 / 客户资料不上云"之类约束,放弃云端方案,走本地单文件 HTML + localStorage,并在交付时明确告知"本地模式"。这是本方法的默认路径。
规模闸门(动工前强制)
- 每期最多 3-4 个模块。需求折算 > 4 模块时,先输出「核心 3 模块先行 + 后续迭代计划」,得到用户默认或确认后本期只搭核心,禁止一次性全量搭建。
- 单文件 HTML 体量过大时,先写骨架(HTML 结构 + 样式 + 各模块占位 +
init()入口),再按模块分多次增量写入,每次补完即保持文件可运行。 - 11 模块这类大需求用三层承载,HTML 页面本身控制在 7 个左右:
- 模块方法论 →
.workbuddy/skills/<模块名>/SKILL.md - 记录明细 → 文件层 xlsx 台账 + Markdown 主档
- HTML → 只做索引、看板与操作入口
工作流
Phase 0 · 解析规格 → 定主键与状态机
从规格中抽取并先固化三张表,后续所有页面都依赖它们:
- 主键规范:
LEAD-YYYY-NNNN/ACC-YYYY-NNNN/OPP-YYYY-NNNN/AST-YYYY-NNNN/INTEL-YYYYMM-NNN - 状态机:线索
raw → enriched → scored → assigned → converted / disqualified;商机S0 接触 → S1 需求确认 → S2 方案提交 → S3 报价谈判 → S4 赢单/输单 - 术语表:赛道、类型、阶段、优先级等枚举,避免同义词分裂
落盘为 00_workbench/主键与状态机规范.md 与 术语表.md。详见 references/data_schema.md。
Phase 1 · 建目录骨架
用 PowerShell New-Item -ItemType Directory 建目录(git-bash 没有 mkdir)。典型结构:
<项目>/
├── 00_workbench/ # 规范、HTML 工作台、总方案、手册
├── 10_intel/ # 市场情报 md
├── 20_leads/ # 线索池 xlsx + 评分模型 json
├── 30_accounts/ # 客户主档台账 + 各客户主档 md
├── 40_opportunities/ # 商机台账
├── 50_content/ # 内容登记表
├── 60_geo/ # GEO 监测台账(可选)
└── .workbuddy/skills/ # 各模块 Skill
Phase 2 · 批量产出模块 Skill
每个模块一个 SKILL.md,统一七要素:功能目标 / 输入 / 输出 / 上下游 / 实现步骤 / 使用场景 / 边界与禁止。保持模块间通过源 ID 强制引用(内容资产必须带 关联情报/商机 字段且指向真实 ID)。
Phase 3 · 搭 HTML 工作台
直接以 assets/workbench_template.html 为起点复制改造。该模板已跑通并包含本方法要求的全部机制:
- 7 个页面:概览·今天 / 管道看板 / 线索池 / 客户主档 / 内容资产 / GEO 监测 / 数据管理
- 首屏「今天要处理」:逾期标红 + 一键处理按钮;昨天没做完自动顺延,不凭空消失
- 统一刷新入口
refreshAll(),渲染函数之间严禁互调(防调用环) - 全内联零外链;图表与图标均为手写内联 SVG;严禁 emoji 当图标
- localStorage 前缀
wb_rg_sales_;导出 JSON / 导入恢复 / 清空二次确认 - 移动适配:按钮 ≥44px、输入字号 ≥16px、
env(safe-area-inset-bottom)
改造时只需替换业务词(产品线、赛道枚举、负责人)与 seedIfEmpty() 数据。
Phase 4 · 生成台账与文件层(单一数据源)
不要手写 xlsx。 用 scripts/gen_ledgers.py 从一份 JSON 数据源一次性生成,保证 HTML 与文件层永不脱节:
<受管python> scripts/gen_ledgers.py <data.json> --base <项目根目录>
产出:5 份 xlsx 台账 + 情报 md + 客户主档 md,并额外吐出 seed_snippet.js——把它粘进 HTML 的 seedIfEmpty(),即可保证两边数据完全一致。
用法与字段说明见 scripts/gen_ledgers.py 头部注释与 references/data_schema.md。
Phase 5 · 示范数据 + 每页案例示范
demo 的每个页面都必须有可见案例,两件事一起做:
- 种子数据:
seedIfEmpty()预置足够样本(建议 10 线索 / 7 客户 / 8 商机 / 7 内容 / 7 GEO),并刻意覆盖:
- 1 条逾期(驱动首屏红色"今天要处理")
- 各阶段商机(含 1 条 S4 赢单演示终态)
- 1 条disqualified演示否决逻辑、2 条raw待验证
- 引用完整性:商机的accRef必须全部命中真实客户主档(零孤儿引用) - 每页案例浮条:每个
<section>内放一个.casebox(模板已内置样式:橙色左边框 + 内联 SVG 旗帜图标),用旗舰客户把全链路串起来——
| 页面 | 案例示范要点 |
|---|---|
| 概览·今天 | 逾期商机 + P0 线索待分配,点「处理」跳转 |
| 管道看板 | S2 风险项 → S4 赢单,演示推进 |
| 线索池 | P0 诞生 + 已淘汰否决 |
| 客户主档 | 主档四件套落盘 md |
| 内容资产 | 情报驱动 + 客户案例复用 |
| GEO 监测 | 被提及实测 + 竞品占位 |
| 数据管理 | 本地闭环 + 备份 JSON 结构 |
浮条写成静态 HTML,不参与 JS 调用链,零循环风险。
Phase 6 · 生成定时任务
用 automation_update 工具创建周期性任务(不要手工写 RRULE 文本、不要用 shell 改文件系统)。六条标准配方与提示词写法见 references/automation_recipes.md:
市场情报月更 / AI 可见性月更 / 线索采集周更 / 销售周报周五 / 待办提醒每日 / 季度归因。
要点:提示词自包含(写清公司名、路径、口径定义),一个逻辑任务一条自动化(多天用逗号分隔 BYDAY,不要一天建一条),日程字段与提示词分离。
Phase 7 · 冒烟自检(交付前逐条过)
- 调用链无环路(渲染函数互不调用,统一走
refreshAll()) DOMContentLoaded → init()链路通畅,被调函数均已定义- 所有
getElementById目标在 HTML 中存在 - 空数据不崩:清空后页面正常,预置逻辑能重填
- 日期边界:跨月、跨年计算正确
- 事件绑定在 DOM 渲染完成后执行
- 无全局变量冲突,循环闭包变量正确捕获
- 模块数 ≤ 4 / 分期合规;跨模块引用零孤儿
自动化校验命令(见 references/environment_pitfalls.md):抽取 <script> 内容跑 node --check;统计 casebox 数量与 <section> 数量;校验 <div> 开闭配平。
十条硬规范(摘要)
| # | 规范 |
|---|---|
| 1 | 合规优先走本地 HTML + localStorage;前缀 wb_<标识>_ |
| 2 | 备份必须有:首屏「导出 JSON / 导入恢复」,清空二次确认 |
| 3 | 全内联零外链;SVG 手写图表;图标用 SVG,禁用 emoji |
| 4 | 移动适配:单列堆叠、按钮 ≥44px、输入 ≥16px、安全区 |
| 5 | 「今天要处理」置顶,逾期标红,未完成自动顺延 |
| 6 | 预置示范数据(含逾期),严禁首屏空白 |
| 7 | 规模闸门:≤4 模块/期,超限先分期 |
| 8 | 国内习惯:货币 ¥,日期 YYYY-MM-DD |
| 9 | 函数调用单向无环,统一 refreshAll() 调度 |
| 10 | 生成后冒烟自检,未过不交付 |
资源
assets/workbench_template.html— 已跑通的单文件工作台模板(7 页面 + 种子数据 + 案例浮条 + 漏斗图),复制后替换业务词即可scripts/gen_ledgers.py— 单一数据源生成 5 份 xlsx + 情报 md + 客户主档 md,并输出seed_snippet.jsreferences/data_schema.md— 主键、状态机、5 份台账列结构、评分模型references/automation_recipes.md— 6 条定时任务 RRULE 与提示词配方references/environment_pitfalls.md— Windows / git-bash 环境坑与校验命令
环境陷阱(务必先看)
git-bash 缺 mkdir/ls/cat/&;PowerShell 输出可能被吞;rm 与 Python 删除会被安全钩子拦截;深层路径 Glob 可能返回空。
全部绕法与命令在 references/environment_pitfalls.md,动手前先读一遍,能省掉大量返工。