Gin SSR 前端模板生成(OpenClaw)
0. 最高优先级
- 1. 必须生成两个真实文件
- - HTML: INLINECODE0
- CSS: INLINECODE1
- 2. 必须保证页面可运行
- - 输出的 HTML 必须是完整可渲染结构
- 不要依赖
{{.data.Config.*}}、{{.data.Path}}、{{.Title}} 这类动态模板变量 - 除
{{define "页面名"}} 和 {{end}} 外,默认不要输出其他 Go 模板变量 - 优先生成“直接打开就有完整结构”的静态页面骨架
- 3. 必须最终回复
- - 回复中必须包含:页面名、HTML 路径、CSS 路径
- Telegram 会话必须追加两个
MEDIA: 行 - 禁止静默结束
- 4. main 必须按截图严格还原
- - 不允许只写占位注释
- 不允许 main 为空
- 必须把截图里的核心模块、文案、按钮、输入框、卡片、列表都写出来
1. 页面名规则
1.1 标题识别
- - 优先识别截图顶部标题或页面主标题
- 如果标题太泛(如“详情”“设置”“中心”),必须结合 main 首屏核心内容决定页面名
- 如果识别不到标题,在 HTML 顶部加注释: INLINECODE8
1.2 页面名生成
页面名必须和“标题 + main 语义”一致,禁止随便命名。
优先级:
- 1. 优先用准确英文语义命名:
- -
个人信息 + 资料编辑表单 → INLINECODE10 - INLINECODE11 + 地址列表 → INLINECODE12
- INLINECODE13 + 订单信息卡片 → INLINECODE14
- INLINECODE15 + 表单 → INLINECODE16
- 2. 无法稳定翻译时,使用拼音小写下划线:
最终:
- - HTML define: INLINECODE19
- HTML 文件: INLINECODE20
- CSS 文件: INLINECODE21
2. 输出原则
2.1 禁止动态取值
生成内容时,禁止出现以下写法:
- - INLINECODE22
- INLINECODE23
- INLINECODE24
- INLINECODE25
- INLINECODE26
- INLINECODE27
也就是说,页面内容、SEO、链接、标题、描述、JSON-LD 都必须使用硬编码静态值。
2.2 允许保留的模板语法
只允许保留:
CODEBLOCK0
INLINECODE28
Gin SSR 前端模板生成(OpenClaw)
0. 最高优先级
- 1. 必须生成两个真实文件
- - HTML:app/templates/page/{页面名}.html
- CSS:app/static/css/{页面名}.css
- 2. 必须保证页面可运行
- - 输出的 HTML 必须是完整可渲染结构
- 不要依赖 {{.data.Config.*}}、{{.data.Path}}、{{.Title}} 这类动态模板变量
- 除 {{define 页面名}} 和 {{end}} 外,默认不要输出其他 Go 模板变量
- 优先生成“直接打开就有完整结构”的静态页面骨架
- 3. 必须最终回复
- - 回复中必须包含:页面名、HTML 路径、CSS 路径
- Telegram 会话必须追加两个 MEDIA: 行
- 禁止静默结束
- 4. main 必须按截图严格还原
- - 不允许只写占位注释
- 不允许 main 为空
- 必须把截图里的核心模块、文案、按钮、输入框、卡片、列表都写出来
1. 页面名规则
1.1 标题识别
- - 优先识别截图顶部标题或页面主标题
- 如果标题太泛(如“详情”“设置”“中心”),必须结合 main 首屏核心内容决定页面名
- 如果识别不到标题,在 HTML 顶部加注释:
1.2 页面名生成
页面名必须和“标题 + main 语义”一致,禁止随便命名。
优先级:
- 1. 优先用准确英文语义命名:
- - 个人信息 + 资料编辑表单 → userprofile
- 收货地址 + 地址列表 → addresslist
- 订单详情 + 订单信息卡片 → orderdetail
- 修改密码 + 表单 → passwordedit
- 2. 无法稳定翻译时,使用拼音小写下划线:
最终:
- - HTML define:{{define {页面名}}}
- HTML 文件:app/templates/page/{页面名}.html
- CSS 文件:app/static/css/{页面名}.css
2. 输出原则
2.1 禁止动态取值
生成内容时,禁止出现以下写法:
- - {{.data...}}
- {{.Config...}}
- {{.Path}}
- {{.Title}}
- {{range ...}}
- {{if ...}}
也就是说,页面内容、SEO、链接、标题、描述、JSON-LD 都必须使用硬编码静态值。
2.2 允许保留的模板语法
只允许保留:
html
{{define {页面名}}} ... {{end}}
这是为了兼容 Gin 模板文件结构。
3. head 模板要求
head 必须完整,字段不得缺失。所有值全部硬编码,保证页面开箱可运行。
html
{{define {页面名}}}
VERIFICATIONREPLACE_ME />
VALIDATEREPLACE_ME />
页面标题
largeimage />
{{end}}
4. main 区域还原规则
4.1 结构必须完整
main 中必须包含截图里能看到的真实结构,例如:
- - 页面标题区
- 面包屑/说明文案
- 卡片区
- 表单区
- 列表区
- 操作按钮区
- 头像/封面/图标区
- 标签/状态区
4.2 文案必须补齐
- - 能识别出的文案必须直接写入 HTML
- 看不清时写中文注释:
html
4.3 CSS 必须可用
CSS 必须包含: