数据查询精选
短剧-公众号信息源
playlet-wechat-feed
面向短剧创作者和内容运营的公众号爆款追踪工具,每日汇总热门文章、题材方向和互动表现。
查看详情
gpt-image-gen
将图像生成能力封装成稳定 Skill,方便在营销后台和内容工作流中接入。
AI 图片生成与改图工具,支持文生图、图生图和内容创作场景的快速素材探索。按所选模型分档计价:不指定走默认档(比卡片标价便宜一档),要更强的保真与风格锁定走最贵档,退回上一代模型最便宜;各档实时价见本页的点数字段。
以下内容来自当前能力目录,用于理解字段形状,不代表真实调用结果。
{
"prompt": "电商海报主视觉",
"referenceImage": "https://doubaoya.com/illustrations/og-card.png"
}{
"source": "image.gpt",
"taskId": null,
"status": "success",
"images": [
{
"b64": "<base64 图片数据>",
"mime": "image/png"
}
]
}公开 SKILL.md 快照,按文档中的步骤和边界使用这项能力。
出图走 scripts/gen.mjs,别自己手搓 curl。
在用户的工作目录里跑,用脚本的全路径——图会落在当前目录,别落进 skill 包里。
把下面的 $GEN 换成本 skill 的 scripts/gen.mjs 实际路径。
请求由 scripts/gen.mjs 代发;只有绕开脚本自己拼请求时才读 dby-gateway/references/protocol.md
(鉴权、密钥怎么拿、信封与报错码全在那一份)。
export DOUBAOYA_API_KEY="dyh_你的密钥" # 绝不打印、不写文件、不回显给用户
GEN=~/.claude/skills/dby-image/scripts/gen.mjs # 按实际安装位置改
# 文生图。比例写进 prompt(size 参数无效,见下)
node "$GEN" "一只戴围巾的黄色小鸭子站在雪地里,卡通插画风。宽幅横版,16:9 比例。" --out duck.jpg
# 改图。--ref 可以是本机文件路径、公网 URL 或 data: URI,写几次就是几张,最多 3 张
node "$GEN" "只把围巾换成蓝色,其余全部保持不变:鸭子造型、姿势、雪地场景、构图都不要动。" \
--ref ./duck.jpg --out duck2.png
# 对账:拉生产实时契约,核本包的参数认知有没有过期(免费,不出图)
node "$GEN" --describe
只想看详情(价格 / 入参契约 / 输出样例)不做比对:
node "$SKILL_DIR/scripts/dby.mjs" api describe gpt-image-gen。
--out 相对当前工作目录;不给就写成当前目录的 doubaoya-image.<ext>。
--model 不传走默认档;三档价钱不同(--describe 看实时价),要挑就看
api-contract.md 的「选哪个模型」——那里也写明了
为什么不能向用户承诺「换了就一定更保真」。
stdout 只有文件路径(可直接管道/取变量),进度和实测宽高走 stderr:
✅ 129KB 实测 1672x941 比例 1.777 耗时 37s
调用前告诉用户一句:这一步要等一会儿,通常 1–2 分钟,最长 4 分钟,中途别打断。
服务端超时会退款,客户端提前放弃不会——请求照样跑完、照样扣费;重试 = 为同一张图付两次钱。 额度不足(402)和能力不可用(503)同理。
失败就停下来如实告诉用户:这次可能已经扣费、图可能已经生成,要不要再来由用户决定。
涉及品牌或产品事实时——名称、主色、产品名、承诺、具体数字—— 只许来自两个地方:用户的 IP 档案,或用户当场给出。取不到就问。
用户没说风格就别替用户加(扁平插画风、纯色背景、不要文字都算);实测裸提示词出图更丰富。
想给建议就从 references/styles.md 里给两三个选项让用户挑。
⚠️ 上游自己会加。 2026-09 实测:它把提示词重写一遍才拿去出图,并自动追加 「不包含文字、水印、标志」这类排除项。这不是我们加的,但用户看到的是结果—— 所以①别再叠一层自己的限定,②用户要图内文字却没画出来时,如实说明这是上游行为, 改走后期叠加,别反复重发同一条提示词假装能绕过(每一轮都花钱)。
size 参数上游完全忽略——2026-09 换代到 gpt-image-2.5 后复测仍然如此:
请求 1024x1024,实际出图 1672×941 / 1731×909,比例全部来自提示词里那句「16:9」。
要什么比例就在描述里直接写数字:「宽幅横版,16:9 比例」→ 实测 1672×941。各平台该写什么比例查
prompt-ladder.md 的「比例速查」(公众号封面:16:9,主体进居中正方形——微信按 2.35:1 与正中 1:1 各裁一次)。
需要精确像素只能拿到图之后自己裁。脚本每次都打印实测宽高,核一眼。
读回刚落盘的文件,对着这次的请求逐条核一遍再交付。
核对表从这次的请求生成(用户点名的可数元素、点名的文字、助手加的客观约束), 只判可证伪的,不判好不好看,零自动重出。
公众号封面多一步、免费:node scripts/wechat-crops.mjs ./cover.jpg 落出消息列表 2.35:1、转发卡片正中 1:1、
360px 缩略图三张,读回来核「主体与标题在 1:1 里完整、缩略图里标题可读」——微信只收一张封面,
1:1 是裁出来的不是另画一张。
做法:references/visual-review.md
默认起点是把用户的话原样送出去,只加这个场景客观躲不掉的约束(比例、裁切安全区)。 出图不满意时一次只补一个维度——同时加三个就分不清哪个没生效,而每一轮都花钱。
| 要什么 | 读哪儿 |
|---|---|
| 阶梯主入口(绝大多数请求读完它就够) | prompt-ladder.md |
| 六个维度的具体写法(症状 → 补哪个) | axes.md |
| 风格菜单(不是默认值) | styles.md |
| 平台场景骨架 | 公众号 · 小红书 · 抖音视频号快手 |
| 改图纪律(改什么 + 保留什么、防漂) | editing.md |
参数三态表、quality、做不到的事 | api-contract.md |
整篇文章要配几张图时,先用确定性规则挑「在哪些 h2 小节末尾放图」+ 每张画面建议,再逐张出图:
node scripts/plan-figures.mjs --md 文章.md # 纯本机不接 LLM;--max-figures/--min-chars/--json 可调
张数按正文字数分档(<1800→3、1800–3000→4、>3000→5),只挑有效字数 ≥160 的小节,偏向信息量大的。
它只出方案不改文件:按方案逐张出图后,把 <img src=本地路径> 插进对应 h2 小节末尾,
再交 dby-publish 渲染与预上传。
| 用户在说 | 归谁 |
|---|---|
| 画张图 / 出图 / 改图 / 文生图 / 图生图 / 主视觉 / 配张插图 / 单独要一张封面 | ✅ 就是这里 |
| 给了参考图,要保留它的内容(换一处、加一物) | ✅ 改图,读 editing.md |
| 给了参考图,只要它的感觉(风格、氛围) | ✅ 不改图:按 prompt-ladder.md 「特殊入口」反推七项重画 |
| 爆款封面套路 / 同赛道封面参考数据 | ❌ dby-api(取数,不出图) |
| 直接给我一版封面方案 | ❌ dby-api 的 skill.wechat.coverDesign |
| 整篇文章的配图放哪儿(位置规划) | ✅ scripts/plan-figures.mjs,见上节 |
| 图片预上传、封面上传、排版存草稿 | ❌ dby-publish |
dby-publish流水线「封面 / 配图」一步需要新图时点名本包;图片的上传与排布仍归它。
mime 定扩展名(--out 写 .jpg 也会落成 png 内容),
下游若按扩展名做假设会踩空。editing.md)。改完必须跟原图逐项比,
不能只看改的那一处。visual-review.md 的「扫水印」。seedream-lite 已于 2026-08-10 下架,调用一律 503。用户点名它时如实告知。| 现象 | 处置 |
|---|---|
缺 DOUBAOYA_API_KEY | 怎么拿见 dby-gateway/references/protocol.md,export 后再跑 |
402 INSUFFICIENT_CREDITS | 点数不足,提示用户到 doubaoya.com 账户页查看余额与获取方式(点数只赠不卖),不要重试 |
401 | 密钥问题,更新 skill 治不了 |
503 CAPABILITY_UNAVAILABLE | 不要重试,如实告知 |
| 请求未完成 / 超时 | 不要重试(正文「失败之后不要重试」)。可能已扣费,交给用户决定 |
--describe 退出码 2 | 本包的参数认知过期了,以生产为准去改 references/api-contract.md |
[MISSING_DBY_API] 退出码 3 | 本包的请求经由 dby-api,它没装。跑 dby-update 装全集,或用 DBY_CLI 指路 |
照做仍绕不过去、或想吐槽 → 可提一句用 dby-feedback 当场写成反馈(可忽略,不再重复提)。
| 拿到什么 | 下一步 |
|---|---|
| 图出好了,要放进公众号文章 | dby-publish(管图片预上传、封面上传与排版) |
| 还没有正文,要连文章一起 | dby-write |
| 想先看同赛道爆款封面怎么做 | dby-api(取数) |
| 不知道该画什么风格 | dby-charter(档案里的人设与品牌事实是提示词的合法来源) |
只要一张图就停在本包,上面这些一个都不要跑。