mashengsbc-beep/openclaw-website-clone-kit
GitHub: mashengsbc-beep/openclaw-website-clone-kit
这是一个针对 OpenClaw 设计的网站分析与重建工具,能够将目标 URL 转化为结构化的重建规范和基于 Next.js 的初步本地实现。
Stars: 0 | Forks: 0
# OpenClaw 网站克隆套件
用于 OpenClaw 的实用网站分析与重建技能。
将其指向一个公开的 URL,它将检查页面、生成重建简报,并搭建一个初步的本地实现供你持续迭代——即使在浏览器捕获不可用的情况下。
## 存在原因
大多数“克隆此网站”的工作流会在以下两种方式中失效:
- 它们承诺像素级自动化,但在浏览器工具或环境依赖不完整时彻底失败
- 它们止步于模糊的分析,没有留下可用的项目文件
该技能采用了一条更实用的路线:
- 先检查
- 生成重建规范
- 搭建可用的本地实现
- 优雅降级而不是完全失败
- 适配真实的 OpenClaw 工作区和交付模型
目标不是伪造一个完美的克隆。目标是让每次运行都留下有用的制品,可以被检查、恢复和改进。
## 功能
一次完整的运行可以:
1. 检查目标 URL
2. 尝试基于浏览器的捕获
3. 当浏览器堆栈不可用时,回退到基于 HTTP 的提取
4. 生成 Markdown 格式的重建规范
5. 搭建初步的本地实现
6. 编写结构化的内容数据用于后续迭代
## 快速开始
运行完整流程:
```
node /home/node/OpenClawBox/skills/openclaw-website-clone-kit/scripts/run-complete.js \
--url "https://example.com" \
--slug example
```
这会在以下路径下创建一个运行目录:
```
/home/node/OpenClawBox/deliveries/website-clone-runs//
```
## 输出结构
每次运行都会生成一个可恢复的任务文件夹:
```
deliveries/website-clone-runs//
├── README.md
├── inspection/
│ └── .json
├── spec/
│ └── website-rebuild-spec.md
└── implementation/
├── README.md
├── package.json
├── next.config.ts
├── tsconfig.json
└── src/
├── app/
│ ├── globals.css
│ └── page.tsx
├── components/
└── data/
└── page-content.ts
```
当浏览器捕获运行正常时,运行结果还可能包含截图和更丰富的检查制品。
## 示例运行
针对 `https://vercel.com/ai` 生成了一个更现实的公开演示运行。
该运行现在拥有两种有用的状态:
- `vercel-ai-demo` — 回退安全型运行
- `vercel-ai-demo-browser` — 浏览器支持型运行,包含截图捕获
浏览器支持型运行产生了:
- 检查元数据
- 截图捕获
- 重建规范
- 初步实现脚手架
- 用于后续迭代的结构化内容数据
详情请参阅 `docs/EXAMPLE-RUNS.md`。
## 包含的脚本
- `scripts/run-complete.js` — 分析 + 脚手架生成的单命令入口点
- `scripts/analyze-website.js` — 检查一个 URL 并生成分析包
- `scripts/scaffold-implementation.js` — 基于现有运行生成初步实现脚手架
- `scripts/init-run.sh` — 初始化运行文件夹骨架
## 设计原则
### 1. 规范优先,而非炒作优先
该技能会在声称页面“完成”之前,先记录发现的内容以及应该重建的内容。
### 2. 优雅降级
如果浏览器自动化失败,工作流将回退到 HTTP 提取,而不是完全停止。
### 3. 工作区原生输出
所有内容都以可恢复的结构写入 OpenClaw 工作区。
### 4. 诚实的脚手架
生成的实现有意做得浅显但可用。它是真实重建的起点,而非对已完成保真度的虚假宣称。
## 适用场景
该技能最擅长处理:
- 落地页
- 营销站点
- 宣传型站点
- 简单的公开主页
- 早期阶段的逆向工程和重建规划
对于以下场景效果较弱:
- 需要认证的应用
- 仪表盘
- 重动画体验
- 依赖深度客户端行为的页面
- 在没有有效浏览器检查情况下的像素级克隆
## 浏览器设置
在完成 Playwright 主机依赖设置后,浏览器检查在此环境中现已正常工作。
如果浏览器堆栈再次损坏,请参阅 `docs/BROWSER-SETUP.md` 了解依赖说明和恢复路径。
## 当前限制
- 浏览器捕获依赖于健康的 Playwright + 系统库设置
- 如果浏览器堆栈再次损坏,工作流仍会回退到基于 HTTP 的分析
- 生成的实现是初步脚手架,并非最终克隆
- 复杂的视觉系统仍需要更深入的提取和人工优化
## 状态
当前状态:
- 可用于结构化分析和脚手架生成
- 基于浏览器的检查在此环境中已恢复正常
- 即使浏览器自动化再次不可用也具有韧性
## 路线图
计划升级:
- 在此环境中恢复完整的浏览器检查
- 提升区块提取质量
- 生成更丰富的组件脚手架
- 从目标站点提取更多资源和结构
- 将脚手架推向更接近真实的初步重建
## 理念
该技能遵循一条规则:
**绝不让网站克隆任务空手而归**
即使浏览器自动化不可用,一次运行仍应留下:
- 一个结构化的运行文件夹
- 检查元数据
- 重建规范
- 一个起始实现
这使得工作流可恢复、可调试,并且在真实的 OpenClaw 会话中具有实用性。
标签:GNU通用公共许可证, HTTP提取, Markdown文档, MITM代理, Node.js, OpenClaw, Syscall, TypeScript, Web开发, 代码生成, 前端脚手架, 威胁情报, 安全插件, 开发者工具, 技术栈分析, 渗透测试工具, 特征检测, 结构化数据, 网站克隆, 网站重建, 网络调试, 网页分析, 自动化, 自定义脚本, 项目重构