我和你 · AI 成长写真
使用场景
当用户希望搭建以下类型产品时使用本 Skill:
- 上传两张已授权人像,生成融合双方神韵的未来孩子写真;
- 输出婴儿、幼儿、孩童三个年龄阶段;
- 支持男孩/女孩、画质、风格、尺寸选择;
- 支持游客免费体验、用户注册、积分扣费与充值;
- 支持管理员查看用户、生成、消费、充值记录并确认赋分;
- 支持新充值订单邮件提醒。
产品文案
主标题:
> 遇见,属于你们的未来模样
介绍:
> 想不想看看,你俩小孩的模样?
> 想不想在 AI 的想象里,遇见小时候的自己?
> 两张照片,三段成长光景。让未曾抵达的时光,先与你温柔相见。
注册提示:
> 免费注册即赠 10 积分,先体验一次心动创作,喜欢再充值。每次创作仅约 1 元。
隐私提示:
> 我确认已获得两位照片人物的授权,并同意仅将照片用于本次 AI 创作。生成结果为艺术想象,不用于预测真实遗传结果。
功能契约
游客体验
- 用户点击“游客登录”;
- 数据库创建
is_guest=true的临时用户; - 自动赠送 10 积分;
- 可完整生成一次三年龄段写真;
- 游客不显示充值入口;
- 积分耗尽再次生成时弹出注册窗口;
- 注册时原游客账户原地升级,保留用户 ID、作品、积分和消费记录;
- 游客升级不得重复领取注册赠送积分。
图片生成
输入:
reference_images: 两张人像文件
gender: 男孩 | 女孩
quality: low | medium | high
style: 自然写实 | 温暖胶片 | 日系清新 | 童话绘本 | 电影质感
size: 1024x1024 | 1536x1024 | 1024x1536
consent: true
输出:
images:
- age: baby
label: 婴儿 · 约6个月
- age: toddler
label: 幼儿 · 约3岁
- age: child
label: 孩童 · 约8岁
处理要求:
- 在服务端读取两张图片;
- 修正 EXIF 方向;
- 统一裁切尺寸;
- 左右拼接成一张双人参考板;
- 调用 GPT Image 2 编辑接口;
- 针对三个年龄阶段分别生成;
- 成功后保存结果并扣除 10 积分;
- 失败时记录错误并退回 10 积分。
模型接口:
POST https://code.heihuzi.ai/v1/images/edits
Authorization: Bearer ${HEIHUZI_API_SECRET}
model: gpt-image-2
禁止把 API Key 放入浏览器代码、公开仓库或 Skill 文件。
积分规则
guest_bonus: 10
registered_user_bonus: 10
guest_upgrade_bonus: 0
generation_cost: 10
recharge_rate: 1元 = 10积分
images_per_generation: 3
积分扣除必须使用数据库条件更新,避免并发超扣。图片生成失败必须使用事务退回积分。
充值流程
个人支付宝二维码不具备自动回调能力,必须采用人工核实:
用户创建充值订单
→ 数据库保存 pending 订单
→ 邮件通知管理员
→ 用户扫码付款并备注订单号
→ 管理员核实到账
→ 管理员点击确认收款并入账
→ 订单标记 paid
→ 自动增加用户积分
→ 用户前台自动刷新积分
同一订单只能确认一次。确认收款必须使用数据库事务和行锁。
邮件通知
使用 QQ 邮箱 SMTP:
host: smtp.qq.com
port: 465
secure: true
sender: ${SMTP_SENDER}
secret: ${SMTP_SECRET}
recipient: ${ADMIN_EMAIL}
邮件包含:用户昵称、邮箱、订单号、金额、待发积分、付款备注。邮件失败不得阻止充值订单创建。
积分同步
- 生成成功后立即更新前端积分;
- 充值页面每 5 秒查询一次;
- 其他页面每 15 秒查询一次;
- 浏览器重新获得焦点时立即查询;
- 管理员赋分后刷新后台和当前用户积分。
数据库结构
使用平台托管 PostgreSQL 和版本化迁移。禁止使用 drizzle-kit push。
users
idnameemail,唯一;游客使用内部临时邮箱password_hashsaltcreditsis_adminis_guestcreated_at
sessions
id,会话 Token 的 SHA-256 哈希user_idexpires_atcreated_at
generations
iduser_idstylegenderqualitysizecoststatusoutputserrorcreated_at
recharges
idorder_nouser_idamount_fencreditsstatusnotecreated_atpaid_at
环境变量
复制 ENV.example 为部署环境配置,再填写真实值:
DATABASE_URL=
HEIHUZI_API_SECRET=
ADMIN_NAME=
ADMIN_EMAIL=
ADMIN_PASSWORD=
SMTP_SENDER=
SMTP_SECRET=
所有密码、API Key、SMTP 授权码必须由部署环境注入,禁止写入 Skill。
安全约束
- 必须取得参考图人物授权;
- 密码使用 scrypt 加盐哈希;
- 会话 Cookie 使用 HttpOnly、Secure、SameSite=None、Partitioned;
- 充值确认需要管理员权限;
- 游客不可直接充值;
- 管理员确认订单时检查状态并锁行;
- 图片生成失败自动退款;
- API Key 与 SMTP 授权码仅在服务端使用;
- 不得宣称 AI 图片是真实遗传预测。
开发与发布检查
pnpm install
pnpm run db:generate
pnpm run db:migrate
pnpm lint
pnpm build
上线前验证:
- 游客登录后获得 10 积分;
- 游客不显示充值入口;
- 游客积分耗尽后弹出升级注册;
- 升级后保留作品且不重复赠送积分;
- 正式用户可以创建充值订单;
- 管理员收到邮件;
- 管理员确认后只赋分一次;
- 用户积分自动更新;
- 图片失败时积分退回;
- 数据库迁移可在空生产库完整执行。