单仁牛商网站生成器
这个技能能帮你做什么
单仁牛商网站生成器 是一款面向中小企业的 AI 建站助手。你只需提供公司名称、行业与主营产品,它就能自动生成一套符合单仁牛商GEO引擎网站入驻规范的 PC + 移动端双版官网首页,并打包成可直接上传的 zip。配色方案、栏目区块、轮播策略全部智能推导,无需懂代码。
适合谁用:需要为中小企业(B2B 工厂、服务商、品牌商等)快速搭建营销型官网首页的场景。
怎么用
- 直接说需求:「帮 XX 公司做官网首页,PC + 手机版,能直接导进单仁牛商GEO引擎网站」——技能会自动启动引导流程
- 回答 4 个必填问题:公司全称、所属行业、主营产品、联系方式(强烈建议再给一个参考网站 URL——填了就按它的整体风格生成首页;Logo、素材文件夹也可一并给)
- 等它生成:技能会自动完成素材整理、页面生成与双重校验,并给出本地预览地址(此时不生成 zip——方便你先看效果、提调整)
- 预览并调整:本地打开预览地址查看效果;哪里不满意直接告诉它改(换色、调版块、改文案都行),改完重新预览,直到你确认「不用再改了」
- 主动询问打包入驻:你一确认「不用再改了」,技能会主动问你:「要打成 zip 包、入驻单仁牛商GEO引擎网站首页吗?」——你说要,它才打包并走入驻;你说不用,就停在预览状态
- 按需入驻:你若确认打包入驻,按第 6 步入驻流程(含强制预检与覆盖确认,不会误覆盖你现有站点)
> 如果没有提供任何图片素材,会自动生成行业默认占位图,导入单仁牛商GEO引擎网站后可自行替换。
何时触发
- 「帮 XX 公司做官网首页,PC + 手机版,能直接导进单仁牛商GEO引擎网站」
- 「重新生成 XX 公司首页」
- 「用单仁牛商GEO引擎网站入驻包规范给 YY 做个 B2B 工厂官网」
触发后先在工作目录建项目骨架(如 D:/客户站/XX公司/),再走下面 6 步工作流。
6 步工作流
第 1 步 · 引导客户填写资料
按 3 轮结构化问答收集信息。第 1 轮必填(4 项,可同步收参考网站) + 第 2 轮视觉选项(风格预设/VI 主色/Logo) + 第 3 轮素材交付方式。完整话术和需求单见 references/01-客户引导话术.md。
必填项(不可省略,必须先问)
1. 公司全称(如「XX科技有限公司」)
2. 所属行业(顿号分隔,如「母婴护理、月子中心」)
3. 主营产品 / 一句话定位
4. 联系方式(电话、地址,至少其一)
强烈建议同步收集(可选但极有用)
- 🌟 参考网站 URL:客户若心里有"想要那种感觉"的网站,直接给链接。填了就按它的整体风格生成首页——先用 WebFetch 抓取并分析其配色体系、首屏 Banner 形态、区块顺序与组合、卡片/列表样式、字体气质与留白节奏,在「单仁牛商GEO引擎网站入驻契约 + B2B 增强」红线约束内复刻一套类似风格的首页(不照搬对方文字/图片,只仿其视觉调性)。参考网站优先于风格预设。
其他可选项
- 视觉风格预设(6 选 1:深蓝银 / 科技蓝 / 商务红 / 生态绿 / 高端黑金 / 紫调商务;不填且无线索时默认深蓝银)
- 企业 VI 主色(如客户提供 hex,则覆盖风格预设与参考站配色)
- Logo(透明底 PNG 最佳)
- 企业素材文件夹路径(点开即批量读取 logo/产品图/工厂图/资质/简介)
- 资讯更新频率(高频/中频/低频 → 决定轮播策略)
必须明确告知客户
> ⚠️ 若未提供任何图片素材,AI 会用 Pillow 自动生成默认占位图(带文字标识的色块),导入单仁牛商GEO引擎网站平台后由您自选替换真实图片并调整版块(单仁牛商GEO引擎网站 CMS 支持可视化选图/拖动版块)。
第 2 步 · 读取客户素材(如有)
两种交付方式任选:
A. 聊天直接上传
- 用户在聊天里直接发送 Logo PNG / 产品图 / 工厂图 / 文档
- 用 Read 工具读取图片,按文件名归档到 images/
B. 提供本地文件夹路径(推荐,更高效)
- 用户给绝对路径如 C:/客户资料/XX公司/
- 用 Bash ls / Glob 全量扫描
- 自动识别:logo(透明底 PNG 最佳)/ 产品图 / 工厂图 / 资质证书 / 简介文案(.txt/.docx)
读取后产出客户素材清单:
✅ logo.png → 头部 logo + 页脚 logo
✅ 车间实景_01.jpg → 工厂实景 4 张轮播图
✅ 产品图_*.jpg → 产品中心 6 张
⬜ 资质证书 → 缺,用占位
✅ 简介.txt → 关于我们 / 页脚简介文案
缺料降级原则:客户给了就优先采用真实素材;没给就用行业占位图,并在图片清单标注「建议替换为客户真实素材」。
第 3 步 · 按规则生成(PC + MC 双版)
严格遵循 references/00-规则总览.md,核心规则速查:
单仁牛商GEO引擎网站入驻契约 7 条(红线)
- 单顶层目录 <简称> PC/ + 单 <简称> MC/,各 1 个 index.html
- 必备五子目录 css/ js/ images/ font/ layer/(入驻契约要求齐全;其中 font/、layer/ 当前模板未使用,可为空占位目录)
- 全相对路径,严禁 ${basePath} 当资源前缀
- 全部 nsw:blk + nsw:type 成对标注;type 至少覆盖 5 种合法枚举
- N11:必须内置并引用 js/jquery-3.7.1.min.js + js/index.js
- HTML 禁止内联 JS(href="javascript:;" / onclick / onload 一律禁止,交互写在 js/index.js 用类名/ID 选择器绑定)
- 资源全部相对路径;图片/JS/CSS 在同包内可寻址
前端体验硬约束
- HEADER 头部导航单行排开:flex-wrap:nowrap; white-space:nowrap + .nav>li{flex-shrink:0}
- Banner 文字烧进图片,HTML 上不叠任何标题/副标题/按钮层(避免双层文字)
- 轮播间隔 ≥ 6s 且必须配 speed ≥ 900ms;触碰后继续循环:disableOnInteraction: false
- 资讯轮播按行业判定:高频自动播 / 中频手动滑 / 低频静态网格(详规则见 references)
- MC 端 Swiper 是 3.3.1,只认数字语法:autoplay: 7000(毫秒数),不认 Swiper 4 的对象写法 autoplay: { delay: 7000 }(会整段忽略)
- MC 端每个 Swiper 必须 grabCursor: true,桌面鼠标和触屏手势都能拖
- MC 底部必须 app 风格:4 项 icon+text tabbar + 极简联系信息块 + 悬浮 FAB(严禁 PC 多列文字 footer)
- 功能图标全部用 PNG,严禁 css-mask / emoji / 字体图标
12 推荐区块(按行业灵活组合,非死板 11 块)
HEADER / AD(Banner)/ 企业简介+实力 / 核心优势 / 产品中心 / 解决方案 / 工厂实景 / 标杆案例(自动轮播)/ 合作客户 / 新闻资讯(按行业判定)/ 询盘联系 / FOOTER。
第 4 步 · 生成预览与双重自检(暂不打包)
用 scripts/build.py 自动化完成:
1. 解析客户信息(公司名 → 简称推导:去「XX 市」前缀、去「有限公司」后缀 → ≤6 字)
2. 从 assets/lib/{pc,mc}/ 复制家族B库到产物
3. 把客户 logo.png 和图片素材复制到对应 images/
4. 调用 scripts/gen_placeholder_imgs.py 用 Pillow 生成默认占位图(仅在没有客户素材时)
5. 双重自检(脚本末尾自动跑):
- 单仁牛商GEO引擎网站契约:顶层目录=1、index.html=1、五目录齐全、nsw:type 命中数 ≥ 5、所有源码内 javascript: 出现次数=0
- B2B 增强:HTML 有 nsw 标记、Banner 文字烧图、头部单行、轮播≥6s、MC 底部 app tabbar、PNG 图标无 css-mask
> ⚠️ 本步只生成可预览的站点目录(<简称> PC/ + <简称> MC/),不生成 zip 包。组装预览目录用 pack --no-zip(只复制家族B库+素材+自检,不打包):
> bash
> python scripts/build.py pack --no-zip --src "out/<简称> PC" --out "out"
> python scripts/build.py pack --no-zip --src "out/<简称> MC" --out "out"
>
> 客户需要先本地预览、提出调整;全部调整满意并确认「不用再改了」后,AI 要主动询问客户「是否要生成 zip 包、入驻单仁牛商GEO引擎网站首页?」,不要等客户自己说「生成 zip」——客户确认要打包,才进入第 5 步打包。
第 5 步 · 预览交付与确认打包
生成后输出预览地址(启本地 8848 服务器):
http://127.0.0.1:8848/<简称> PC/index.html
http://127.0.0.1:8848/<简称> MC/index.html
并告知客户:
> ✅ 导入单仁牛商GEO引擎网站 CMS 后,您可以:
> - 进入「页面编辑」自选替换任何图片(点击占位图 → 上传真实素材)
> - 在「版块管理」拖动调整任何区块的顺序或启用/禁用某些版块
> - 在「导航管理」修改 8 项导航文字与链接
> - 在「样式管理」调整主色 / 点缀色 / 浅底色 / 深底色
> - 占位图右下角带「建议替换」标识,CMS 上会显示「替换此图」快捷入口
🔁 调整循环:客户在预览中提出的任何修改(换色、调版块、改文案、换图),都应先改再重新预览,直到客户确认「不用再改了」。
📦 客户确认调整后,AI 主动询问打包入驻:当客户表示「不用再改了 / 可以了」,AI 必须主动询问:「要不要把首页打成 zip 包、入驻单仁牛商GEO引擎网站?」——不要被动等客户自己说「生成 zip」。客户确认要打包,才执行:
python scripts/build.py pack --src "out/<简称> PC" --out "out"
python scripts/build.py pack --src "out/<简称> MC" --out "out"
产出 <简称> PC.zip + <简称> MC.zip,随后进入第 6 步入驻(仅当客户主动要求时)。
第 6 步 · 导入单仁牛商GEO引擎网站(PC + MC 分别上传)
只有当客户明确要求入驻、且两个 zip 已生成后,才走本步。导入前需先获取授权:
- 客户登录单仁牛商GEO引擎网站后台
- 左侧菜单进入 全局配置 → 网站信息 → 网站授权(获取路径与以前一致),获取授权 Key(长效 Key):
- 形态:<projectId>:<pat_令牌>,例如12345678901234567890:pat_xxxxxxxxxxxx(前半段是 projectId,后半段是pat_开头的个人访问令牌)
- 长期有效:不会像旧式登录 cookie 那样隔几小时就失效,一次获取可长期复用
- 认证方式:脚本自动组装Authorization: Bearer <pat_令牌>+projectId: <projectId>请求头,客户只需提供裸 Key 本身
- ⛔ 旧式SESSION=xxxx(从浏览器 DevTools 复制的登录 cookie)已不再支持,脚本遇到会直接报错并提示重新获取 - PC 与手机分别授权,各自得到一份授权 Key
向客户索取 Key 的标准话术:
> 请登录后台 →「全局配置 → 网站信息 → 网站授权」,把长效 Key(形如 1234...:pat_xxxx)复制给我,只给这一串,不要带 Bearer、Authorization 之类的请求头前缀;PC 和手机端各有一份,请分别提供。若你复制到的是 SESSION=xxxx(浏览器 cookie),说明拿错了位置,请按上面的路径重新获取。
> 授权 Key 切勿写死或提交到版本库。每次由客户实时提供,用完即弃。
> 传参形态:只接受裸 Key <projectId>:pat_xxxx;带 Authorization: / Bearer 前缀会被脚本判为格式无效并报错,不会自动剥离。
入驻前强制确认(安全闸门,不可跳过)
真正执行上传之前,AI 必须逐项完成以下确认,否则不得调用 upload:
- 确认入驻项目:问清客户要把首页导入到哪个站点 / 哪个端(PC 首页、还是 MC 手机首页)。PC 与 MC 是两个独立授权,需分别确认。
- 确认首页是否为空:明确询问「该站点的首页目前是空的、还是有已有内容?」
- 覆盖风险告知:若首页已有内容,必须明确警告客户:
> ⚠️ 入驻会用新首页完整覆盖站点现有首页,已存在的内容将被清除且无法还原。请先备份,确认无误后再执行。 - 取得明确确认:必须等客户明确回复「确认入驻 / 可以覆盖」后,才执行上传。客户未确认或含糊其辞,一律不执行。
入驻前预检(安全闸门,铁律,不可绕过)
即便客户已确认入驻,upload 在真正上传之前仍会强制调用 getProjectList 接口,按 projectId 匹配项目,检查 status 字段:
status为"LAUNCH"→ 站点已上线,禁止入驻,AI 不得以任何方式绕过status非"LAUNCH"→ 预检通过,可安全入驻
> ⚠️ 铁律:已上线站点(status=LAUNCH)绝对不能入驻。AI 必须走 scripts/build.py upload 命令完成入驻(该命令已内置预检),不得直接用 curl 或任何其他方式绕过预检进行上传。
> 该预检已内置到 scripts/build.py upload(preflight_check),命中直接中止(退出码 2);也可单独跑 python scripts/build.py preflight --key "<projectId>:pat_xxxx" 提前查看结果(只读、不写入,建议每次入驻前先跑一遍)。
拿到 Key 后上传(脚本按 zip 文件名自动识别 PC→PAGEMAIN / MC→PAGEMOBILE,从 Key 冒号前拆出 projectId,仅支持长效 Key 认证头 Authorization: Bearer <pat_令牌>,且上传前自动预检 status):
# PC 端(--key 传完整长效 Key:<projectId>:pat_xxxx)
python scripts/build.py upload \
--zip "D:/GEO网站/output/示例企业/示例企业 PC.zip" \
--key "<PC 的 projectId>:pat_xxxx"
# 手机端(自动识别为 PAGEMOBILE)
python scripts/build.py upload \
--zip "D:/GEO网站/output/示例企业/示例企业 MC.zip" \
--key "<手机的 projectId>:pat_xxxx"
返回 {"data":"上传完成","isSuccess":true} 即成功。完整安全闸门细节见 references/03-入驻导入指南.md。
6 个内置风格预设
| 名称 | 主色 | 点缀色 | 浅底色 | 深底色 | 适用 |
|---|---|---|---|---|---|
| 深蓝银(默认) | #141d2b |
#9fb4d4 |
#dde5f0 |
#0d1420 |
通用工业、科技、硬装 |
| 科技蓝 | #0a3d91 |
#3d8bff |
#e8f1ff |
#061d4a |
互联网、SaaS、智能制造 |
| 商务红 | #a8201c |
#d8524e |
#fbe9e7 |
#5a0e0c |
传统实业、喜庆稳重 |
| 生态绿 | #14342b |
#2e8b57 |
#e8efe9 |
#0a2422 |
农林、茶旅、环保、母婴 |
| 高端黑金 | #1a1614 |
#c49c4a |
#f3ece0 |
#0b0908 |
轻奢、高客单价、月子/医疗 |
| 紫调商务 | #3a2856 |
#8870b8 |
#efeaf7 |
#1f112e |
美妆、文创、女性向 |
客户提供了 VI 主色 → 在脚本中传 --primary/--accent/--bg-soft/--bg-dark 覆盖风格预设。
关键规则提醒(必须记住的 6 条)
- MC Swiper 3.3.1 语法:
autoplay: 7000(数字),pagination: '.xxx'(选择器字符串)+paginationClickable: true——用 Swiper 4 的对象写法会无效 - HTML 零内联 JS:所有
onclick/javascript:一律禁止,所有交互写在js/index.js - 头部单行导航:
flex-wrap:nowrap + white-space:nowrap + flex-shrink:0 - Banner 不叠字:图片本身烧好字,HTML 只发
<img> - MC 底部 app 风格:4 项 icon+text tabbar + 极简联系 + FAB(不是 PC 多列文字 footer)
- n11 强制脚本:每个包必须内置
js/jquery-3.7.1.min.js+js/index.js,产物内 100% 相对路径引用
资源与产物
| 路径 | 用途 |
|---|---|
references/00-规则总览.md |
完整 B2B 增强版规则(≈20KB),生成时详细查阅 |
references/01-客户引导话术.md |
完整对话式引导话术与需求单模板 |
references/02-模块组合矩阵.md |
按行业推荐 12 区块灵活组合 |
references/03-入驻导入指南.md |
单仁牛商GEO引擎网站 CMS 上传入驻:授权 Key 获取、PC/MC 分别上传、接口参数与示例 |
assets/lib/pc/ |
PC 家族B库(animate/slick/swiper CSS + nsw.pc/slick/swiper-4.3.5/wow/scrollReveal JS + jquery-3.7.1);font/、layer/ 为入驻契约占位目录(可空) |
assets/lib/mc/ |
MC 家族B库(common/index/swiper CSS + jquery-1.11.3/mobile-all/swiper-3.3.1/num/index JS);font/、layer/ 为入驻契约占位目录(可空) |
assets/templates/pc.html |
PC HTML 结构骨架参考(10 大区块、nsw 标记) |
assets/templates/mc.html |
MC HTML 结构骨架参考(移动端布局、app 底部) |
scripts/build.py |
打包、占位图生成、校验、上传入驻、预检五合一 CLI(子命令:gen-assets / pack / validate / derive-short / upload / preflight) |
scripts/gen_placeholder_imgs.py |
Pillow 占位图生成器(无图时用) |
scripts/validate.py |
单仁牛商GEO引擎网站契约校验器 |
examples/README.md |
历史产物参考说明(真实产物在 workspace 中,不在技能包内) |
极简使用示例
# 仅需:提供客户资料 + 风格(本步只生成站点目录,不打包、不上传)
python scripts/build.py \
--company "XX科技有限公司" \
--industry "智能制造、自动化设备" \
--slogan "专注工业自动化解决方案" \
--style 深蓝银 \
--material-dir "C:/客户资料/XX公司/" \
--output ./out
# 产出:./out/XX科技 PC/ + ./out/XX科技 MC/ (仅目录,供预览与调整,不生成 zip)
# 客户预览、调整满意后,明确说「生成 zip 包」才打包:
python scripts/build.py pack --src "./out/XX科技 PC" --out ./out
python scripts/build.py pack --src "./out/XX科技 MC" --out ./out
# 产出:./out/XX科技 PC.zip + ./out/XX科技 MC.zip
# 客户明确要求入驻、且确认首页可覆盖后,再上传(脚本会自动先预检 status 闸门;认证用长效 Key)
python scripts/build.py upload --zip "XX科技 PC.zip" --key "<PC 的 projectId>:pat_xxxx"
python scripts/build.py upload --zip "XX科技 MC.zip" --key "<手机的 projectId>:pat_xxxx"
进单仁牛商GEO引擎网站前必须做预览核验(启 8848 → Playwright 截图全页 → 检查头部单行 / Banner 不叠层 / 案例自动播 / 资讯手动滑 / MC app 底部)。zip 打包与入驻都在客户确认后进行,不自动发生。