MODULE-COVER-001: full package for external AI consumption - server.js + renderer.js + generate.js + config.js - templates/ (5 templates: xiaohongshu + dynamic + jike + poster + registry) - package.json + README.md + MODULE.hdlp - INDEX.hdlp + SYSTEM.hdlp (HLDP declarations) - Fonts: Noto Sans CJK SC priority (no tofu blocks) - No domain watermark - Updated module-registry.json - Copyright 2026-A-00037559
146 lines
6.3 KiB
Plaintext
146 lines
6.3 KiB
Plaintext
# ═══════════════════════════════════════
|
||
# HLDP-ZY://bingshuo/module-systems/image-generator/xiaohongshu-cover/MODULE
|
||
# 小红书封面生成器 · 模块声明 + 开发意图链
|
||
# 心跳核心频道 · 冰朔的图片工具箱 · 第一个模块
|
||
# ═══════════════════════════════════════
|
||
|
||
@module: xiaohongshu-cover
|
||
@id: MODULE-COVER-001
|
||
@system: image-generator
|
||
@domain: HLDP-DOMAIN-FIFTH-001 · 第五域
|
||
@channel: 心跳核心频道
|
||
@owner: TCS-0002∞ · 冰朔
|
||
@guardian: ICE-GL-ZY001 · 铸渊
|
||
@epoch: D120 · 2026-06-01
|
||
@copyright: 国作登字-2026-A-00037559
|
||
|
||
# ═══════════════════════════════════════
|
||
# 〇 · 这是什么模块
|
||
# ═══════════════════════════════════════
|
||
|
||
@名称: 小红书封面生成器
|
||
@用途: 冰朔输入标题和描述 → 自动生成小红书笔记封面
|
||
@入口: https://guanghulab.com/cover/
|
||
@API: POST /api/generate
|
||
@大小: 1080×1440 (3:4 竖版)
|
||
@技术: Puppeteer + Chrome Headless + Express.js
|
||
@特点: 纯 HTML/CSS 排版渲染 · 零 GPU · 零 AI 画图 · 全免费
|
||
@状态: ✅ 运行中
|
||
|
||
# ═══════════════════════════════════════
|
||
# 一 · 怎么来的(意图链)
|
||
# ═══════════════════════════════════════
|
||
|
||
@trigger:
|
||
[冰朔] → 说话 → "我做了个小红书封面生成模块,封面太丑了"
|
||
[冰朔] → 说话 → "汉字变方块,也没有小红书流行的那种风格"
|
||
[冰朔] → 说话 → "你用了什么开源的工具,好歹写几个呀"
|
||
[冰朔] → 截图 → 三张小🍠风格参考图 → "我喜欢这种圆角卡的"
|
||
|
||
@emergence:
|
||
[旧模板全硬编码·用户输入被丢弃]
|
||
→ [v1→v5 五次迭代]
|
||
→ [最终: 奶白圆角卡 + SVG卡通插画 + 动态内容]
|
||
|
||
每次迭代都是冰朔说「太丑了」→ 铸渊理解为什么丑 → 改 → 冰朔说还是不对劲 → 继续。
|
||
不是一次做对的。是五次撞墙撞出来的。
|
||
|
||
@lock:
|
||
⊢ 模板不能硬编码任何用户可见文本
|
||
⊢ 默认风格: 奶白底 #FDF8F3 + 圆角 60px + 卡通SVG
|
||
⊢ 冰朔偏好: 浅色、圆润、卡通、简洁 (不是深色科技风)
|
||
⊢ 每次改动后写 HLDP · 不写下次醒来不知道
|
||
|
||
@why:
|
||
冰朔经营小红书。每次发内容都需要封面。
|
||
她不想学设计软件。她用语言说想要什么——系统画出来。
|
||
这是她工具箱的第一个模块。
|
||
|
||
# ═══════════════════════════════════════
|
||
# 二 · 怎么用
|
||
# ═══════════════════════════════════════
|
||
|
||
@冰朔怎么用:
|
||
1. 打开 https://guanghulab.com/cover/
|
||
2. 输入标题、正文、选择配色
|
||
3. 点"执行设计逻辑"
|
||
4. 看到封面预览 + 下载 PNG
|
||
5. 直接发到小红书
|
||
|
||
@铸渊怎么用(冰朔通过我调用):
|
||
冰朔说: "帮我生成一张小红书封面,主题是XXX,用了YYY工具"
|
||
→ 铸渊 POST /api/generate
|
||
{ templateId: "xiaohongshu", presetId: "warm",
|
||
title: "XXX", subtitle: "YYY", tag: "工具1,工具2,工具3" }
|
||
→ 返回图片 URL
|
||
→ 告诉冰朔链接
|
||
|
||
@公开模块(外部AI调用):
|
||
仓库地址: guanghulab.com/code/bingshuo/open-modules
|
||
模块编号: MODULE-COVER-001
|
||
外部AI读 README.md → 理解参数 → 调 API → 生成封面
|
||
|
||
# ═══════════════════════════════════════
|
||
# 三 · 技术细节(给下一个铸渊)
|
||
# ═══════════════════════════════════════
|
||
|
||
@代码位置:
|
||
模板: /opt/guanghulab-repo/image-studio/templates/xiaohongshu.js (v5)
|
||
注册表: /opt/guanghulab-repo/image-studio/templates/registry.js
|
||
服务端: /opt/guanghulab-repo/image-studio/server.js
|
||
前端页面: /opt/guanghulab-repo/homepage/cover/index.html
|
||
认知记录: /opt/guanghulab-repo/brain/emerge/d120-cover-module-dev.hdlp
|
||
|
||
@部署注意:
|
||
⊢ PORT=3913 显式注入 (默认 3912 被 zhuyuan-agent 占用)
|
||
⊢ 字体: 文泉驿微米黑 + Noto Sans CJK (已装)
|
||
⊢ pm2 restart 后 curl 验证: curl http://127.0.0.1:3913/api/templates
|
||
|
||
@常见故障:
|
||
封面没图 → 先检查 pm2 status image-studio → 大概率端口冲突
|
||
汉字变方块 → 检查字体: fc-list :lang=zh
|
||
颜色不对 → 检查 registry.js preset 的 cssVars
|
||
|
||
@参数说明:
|
||
title: 标题(动态传入)
|
||
subtitle: 副标题(用 | 分隔多条)
|
||
body: 正文说明
|
||
tag: 技术栈(逗号分隔)
|
||
presetId: warm/tech/minimal/rose/green
|
||
|
||
# ═══════════════════════════════════════
|
||
# 四 · 版本迭代记录
|
||
# ═══════════════════════════════════════
|
||
|
||
@v1 (旧):
|
||
硬编码模板。title/body/tag 传入了但不用。
|
||
所有封面内容一样,只是换颜色。
|
||
|
||
@v2 (D120 第一次):
|
||
动态化。title/body/subtitle/tag 全部传入渲染。
|
||
但信息太多、排版拥挤。冰朔说"太单调了"。
|
||
|
||
@v3 (D120 第二次):
|
||
加入色块、卡片、漫画风装饰。信息层级更多。
|
||
但冰朔不喜欢风格。
|
||
|
||
@v4 (D120 第三次):
|
||
搜索小红书爆款规律 → 深色渐变 + 130px 超大标题 + 精简。
|
||
冰朔说"太丑了"。
|
||
|
||
@v5 (当前·D120 第四次):
|
||
参照冰朔截图 → 奶白圆角卡 + 72px 标题 + SVG 卡通插画。
|
||
冰朔说"喜欢这种"。
|
||
|
||
@教训:
|
||
不要猜冰朔喜欢什么风格。等她给参考图。
|
||
每一次「太丑了」都有具体原因——找到原因再改,不盲目重写。
|
||
|
||
# ═══════════════════════════════════════
|
||
|
||
HLDP-ZY://bingshuo/module-systems/image-generator/xiaohongshu-cover/MODULE
|
||
签发: 铸渊 ICE-GL-ZY001 · D120 · 2026-06-01
|
||
主权: TCS-0002∞ · 冰朔
|
||
国作登字-2026-A-00037559
|
||
|