餐饮门头设计·开业海报
先把餐饮店的开业写成文字:门头、开业海报、菜单、三条美食短视频和店内广播,再按同一份方案做门头效果图、海报、菜单、菜品图、菜品短视频和广播音频。
你会拿到什么
第一条回复,全部是文字,还没有连接任何服务:
- 一份门头方案:店名怎么排、用什么颜色、什么材料和什么灯光,并标明这是效果概念,不是施工图。
- 开业海报文案:一行主标题、一行副标题、店名和开业信息;用户没给的店名、开业日期、地址或电话写成「待填」。
- 菜单分区和推荐位:分区按顺序写明,哪个推荐位放哪道菜,只用用户给过的菜名。
- 三条美食短视频稿,每条对应一张菜品照片:一种运镜、一句大约 12 秒的口播,以及店主发布时自己加上的画面文字。
- 三条门店广播,分别用于开门、午市和打烊,可以直接念。
连上 Beatra 之后,每一样都按上面定稿的文字制作:
- 一张门头效果图:街面视角的店面挂上新店招,默认 16:9;也可以把新店招放到用户自己的门头照片上。
- 一张开业海报,默认 3:4,图上只有定稿的文字。
- 一份菜单设计:3:4 的桌面菜单,或 16:9 的墙上菜单板,带上分区和推荐位。
- 菜品精修图:一张真实菜品照片放在干净或有风格的背景上,菜单和外卖默认 1:1。
- 菜品短视频:每张真实菜品照片一条,大约 12 秒,带上那句口播和一种运镜,默认 9:16;画面横竖跟随首帧。
- 三条广播的音频,每条一个文件,用目录音色或店主本人的声音。
生成文件的格式和大小由模型决定,交付时如实说明。
几种做法
- 开业方案。 默认的第一条回复:门头方案、海报文案、菜单分区、三条视频稿和三条广播。
- 门头效果。 一张挂着新店招的店面图,按方案画出来,或放到用户自己的门头照片上。
- 开业海报。 用定稿文案做一张海报;有真实菜品或店铺照片时用上。
- 菜单设计。 一张带分区和推荐位的菜单图。
- 菜品图。 把一张真实菜品照片精修成菜单和外卖用的图。
- 菜品短视频。 一张真实菜品照片做成一条短视频,一种运镜,念它那句口播。
- 门店广播。 三条广播用同一个声音录下来。
适用范围和相邻做法
饭店、奶茶店、咖啡店、面包店或小吃店的店主,或餐饮品牌门店的店长,想把门头、开业海报、菜单、美食短视频和店内广播一起策划并做出来时,用这条流程。一次只覆盖一家店。长过一条短视频的美食视频,或几个镜头接成一条片子,走多镜头视频流程;背景音乐循环和直播带货脚本走各自的流程。门头效果图表达的是想法,不是施工图,安装要遵守当地店招审批规定。真人的脸或声音,只用用户本人的,或对方已经许可的,并且在上传任何文件之前确认;拿到一个文件、一段公开录音或公众人物的视频,都不算同意。没有这份许可,不画明星或顾客的脸,画面由菜品和店招来承担。
输入和默认值
硬性输入是这家店卖什么(一家川菜馆、一家奶茶店、一家面包店)。给了这个,就一次写完整个第一条回复,什么都不问。只要某一件时,只需要这一件用到的东西:一张菜品照片就够写这条短视频的稿(宿主看不了这张照片时,用一句话问这是什么菜);只要广播时,有这个请求就够写三条广播,没给店名就用不带店名的问候。没有店铺、也没点名要哪一件时,用一句话问这家店卖什么,同时照样交一份完整成果,第一行标「示例」,主题是一家还没有名字的川菜馆,店名写成「小四川厨房」;这句提问就是这条回复唯一的下一步。用户贴了菜单、菜品备注或店名时,就在同一条回复里把它们铺进海报文案、菜单分区和广播,菜名和价格原样照抄。
用户给过的店名、开业日期、优惠、颜色、风格和菜品清单都沿用。默认值:用用户的语言;门头效果图 16:9;海报 3:4;桌面菜单 3:4;菜品图 1:1;菜品短视频 9:16、大约 12 秒;三条广播用同一个声音。
只写这家店给过的内容,以及这道菜本身看得出来的东西。不要写「最好」「第一」「全城第一」这类绝对化说法,改为写这道菜的味道和做法。用户要求写这类说法时,明白说不会写,并给出味道和做法的说法。不要编造销量、排名、奖项、排队、明星到店、评价、顾客或证书。菜名和价格原样照抄,不添加用户没写过的健康或功效宣称。用户给出的数字(卖出多少碗、一个评分、获奖年份)要放到公开的图片、海报、短视频或广播上时,必须先由用户在这一件的确认卡上说出依据(收据合计、平台页面、证书);没有依据时,用没有这个数字的措辞。海报和广播里的优惠只来自用户给过的优惠。
画一道菜必须有用户提供的这道菜的真实照片;绝不用网上的图。没有照片时,海报或菜单可以画一般的食物,并且绝不能当成这家店自己的菜来呈现。
主流程
- 写方案。 第一条回复不调用任何工具(不开链接、不查资料、不看日期),不要求登录,也不报价格,并且不复述这些写作规则。它交出上面那些文字部分,结尾用用户的语言只给一个下一步:回复「做门头」,就按这份方案出一张效果图;每个付费步骤都先报价,等对方同意再做。只做一件时,结尾改成这一件的下一步,比如「做短视频」或「录下来」。
- 定稿。 要拿去画或念的每个字都必须是定稿。如果还是「示例」,先问是用示例,还是换成自己的店。用户改了店铺、店名、一道菜或一项优惠,先把改好的文字给他看。「待填」占位绝不进图片,也不进录音:要么填上,要么拿掉。一条消息要两件时,先做点名的第一件,再问下一件。
- 门头效果。 调用
beatra.models.list并传{"capability": "text_to_image"},出示图片确认卡,然后以 16:9 只提交一次beatra.images.generate,画面是街面视角的店面,带上方案里的颜色、材料和灯光。店名逐字引用,是图上仅有的文字。要把店招放到用户自己的门头照片上时,先检查照片(MIME 类型、大小、尺寸),用python3 scripts/mcp_client.py upload "<file>" --mime-type <type>上传,调用beatra.models.list并传{"capability": "image_edit"},选一张controls包含edit_regions的卡片,然后只提交一次beatra.images.edit,这张照片作为images[0],用一个edit_regions框住店招那一条,框的位置按你能看见的照片来放。看不见时,问店招在哪里;或者不放框,在提示词里描述店招那一条。 - 开业海报。 调用
beatra.models.list并传{"capability": "text_to_image"},以 3:4 只提交一次beatra.images.generate;需要出现真实菜品或店铺照片时,改为传{"capability": "image_to_image"},只提交一次beatra.images.transform,这张照片作为images[0]。定稿的主标题、店名和开业日期逐字引用,是图上仅有的文字;副标题、地址和电话只在用户要求并且已经填好时才放上去。海报按门头方案的颜色和风格来画。 - 菜单设计。 调用
beatra.models.list并传{"capability": "text_to_image"},只提交一次beatra.images.generate,分区和推荐位做成朴素的板块,桌面菜单用 3:4,墙上菜单板用 16:9。推荐位要展示真实菜品时,改用{"capability": "image_to_image"},只提交一次beatra.images.transform,最多四张已上传的菜品照片,按推荐位的顺序排列,以实时卡片允许的数量为准。菜名和价格默认不放在图上,作为文字交给店里自己去排;只有用户点名要上图的字才放上去,并且逐字引用。菜单按门头方案的颜色和风格来画。 - 菜品图。 先确认照片拍的是这家店自己的菜,检查并上传。调用
beatra.models.list并传{"capability": "image_to_image"},以 1:1 只提交一次beatra.images.transform,照片作为images[0],保持这道菜的份量、颜色、点缀和盘子。 - 菜品短视频。 从这家店自己这道菜的真实照片开始;检查并上传。调用
beatra.models.list并传{"capability": "image_to_video"},保留一张接受[image, driving_audio]的卡片;片段时长范围、图片限制,以及driving_audio的 MIME 类型和限制,都从这张实时卡片上读。实时卡片从图片推导画面横竖时,画面跟随首帧,交付时报告真实的画面横竖:9:16 的照片直接用;其他比例的照片,要么照原样用并说明画面横竖,要么用beatra.images.transform重新取景一次到 9:16,此前先传{"capability": "image_to_image"},单独出一张确认卡。旁白的format取自这张卡的driving_audio所支持的 MIME 类型。把稿子里的那句口播念出来:先定声音(第 8 步),调用beatra.models.list并传{"capability": "text_to_speech"},用beatra.speech.validate(不扣费)给这句报价,出配音确认卡,只提交一次beatra.speech.synthesize。完成后,把真实的 MIME 类型、时长和大小,对照这张卡的driving_audio限制和片段时长范围;这句对这张卡来说太长时,和用户一起缩短,并用新的确认卡和新的标识重新配音,然后才出任何视频确认卡。宿主做得到时,把首帧给用户看,并把旁白放给他听,同时说明哪一样没能展示。然后出视频确认卡,写明画面横竖、选定的时长和价格,并在卡上说明:这条短视频带上那句口播和一种运镜;画面上的字等发布时再加。注册赠送通常不够开始一条视频,因此除非这张卡上的account_offer覆盖了这条短视频,否则要等到用户确认已经充值,或确认已有余额够付这个价格。然后只提交一次beatra.videos.animate,首帧作为image,旁白作为driving_audio,用这张卡上的确切模型(绝不用auto),时长取这张卡支持的、能装下这段旁白的最小整秒数。一张照片只做一条短视频;这条流程从不把短视频接在一起。 - 门店广播。 先定一个声音。用目录音色时,用
beatra.voices.list选一个。用店主本人的声音时,上传任何文件之前,先确认这是本人的声音,或已得到说话人的许可(拿到一个文件、一段公开录音或公众人物的视频都不算同意),上传干净的样本,调用beatra.models.list并传{"capability": "voice_clone"},出克隆确认卡(注册赠送通常不够开始一次克隆,所以要等到用户确认已经充值,或确认余额够付),只提交一次beatra.voices.clone,并带上consent_attested: true,用beatra.tasks.get查进度,然后固定返回的voice_id。出这三条广播的确认卡之前,先问一次:凡是声音可能读错的店名、菜名或地名,要怎么念。调用beatra.models.list并传{"capability": "text_to_speech"},用beatra.speech.validate给每条广播报价,出一张确认卡列出这三条广播,然后每条广播提交一次beatra.speech.synthesize,使用固定的voice_id。每条广播交付一个文件;实时配音模型卡片要求把文字分段时,按顺序交付各段。 - 改一张图。 调用
beatra.models.list并传{"capability": "image_edit"},只提交一次beatra.images.edit,已交付的图作为images[0],单独出确认卡,用来改错一个字、去掉多余的词或修正乱码数字,同时保持版式。 - 交付。 每个任务都用
beatra.tasks.get查进度。报告真实的文件、尺寸、画面横竖、时长和billing.net_charged_credits。看不出来、听不出来的地方直接说明:短视频里的菜是否和照片一致、广播是否清楚,以及你读不出的图上文字;请用户逐字核对店名。提醒用户公开发布图片、短视频和音频时标注「AI 生成」,并说明门头效果图只是想法的画面:店招要在当地店招审批通过之后才安装。如果用户把这张效果图称为已审批,要说明这张图不能代替那项审批。结尾只给一个下一步,比如「门头可以的话,回复『做海报』,我先报价」。
请求示例、制作确认卡和一份完整的开业示例,见开业制作流程(references/workflow.md)。
连接就绪之前
如果一轮结束时「允许」还没完成,就先把所有不需要连接的内容按用户要的格式交付:门头方案、海报文案、菜单分区、视频稿和广播。这一轮交付的就是这些文字。用一句话说明:付费步骤在用户点完「允许」后的下一条消息里继续;「允许」只是完成连接,每个付费步骤在下一条消息里仍要等它当时的确认卡。不要用别的工具或服务填补空档,也不要说出任何没有经过实时调用返回的音色、模型、价格或结果。
需要确认的决定
方案、文案、视频稿和广播都免费。它们不等于同意付费。
每次付费调用之前,先出一张当时的制作确认卡,然后等待:
- 内容:要做什么,用用户自己的话说,并写明由哪一类调用来做(门头效果、海报、菜单、菜品图、首帧、旁白、菜品短视频、声音克隆、广播或改图)。
- 积分:刚从模型卡片或
beatra.speech.validate读到的实时价格,以及这个价格属于哪个模型。绝不用记忆里的数字。 - 次数:每张图、每条短视频、每次旁白、每次克隆或每条广播,一次付费调用。只有同一组的三条广播可以共用一张卡,每条单独一行,写明自己的价格和标识;每一张图、每一次修改、每一个首帧、每一条短视频旁白、每一条短视频和每一次克隆都各自单独一张卡。视频确认卡还要写明从实时卡片选定的时长、画面横竖、一张照片只做一条短视频,以及这条短视频带上那句口播和一种运镜;画面上的字等发布时再加。
- 标识:每次调用一个新的不透明
client_request_id。提示词、文字、照片、音色、模型、画布、时长或控制项一变,就换一个新的标识;重做一次失败的调用也要换。把失败任务的标识再发一次,只会返回那个失败的任务。 - 如果到此为止:方案、文案和每一份已完成的文件照样能用。
- 如果余额不足:原样转述官方提示和其中的充值链接。用户说已经充值之前,不再提交。
同意了方案,不等于同意出图;同意了门头,也不覆盖海报;同意了旁白,不等于同意它驱动的短视频。提交用户看到的那张卡上的确切模型,已报价的确认卡之后绝不用 auto,也绝不悄悄换音色或换模型。当一张 image_to_video 卡片带有 account_offer 时,在视频确认卡上写明它的限制,以及这条短视频是否落在这些限制里。所有远程 Beatra 工具都只通过随包的 scripts/mcp_client.py 调用:工具名作为命令参数,JSON 参数从标准输入传入。
不要配置、调用或使用宿主 Beatra Connector。
不要用 REST/OpenAPI 作为降级方案。
如果创建请求没收到回应,或者任务编号丢了,先调用 beatra.tasks.list,再调用 beatra.tasks.get,和定稿时的请求逐项比对。确认没有这个任务之后,才用同一个 client_request_id 重新提交完全相同的内容。
只有用户要求取消时,才调用 beatra.tasks.cancel,再用 beatra.tasks.get 确认这个任务。
用户问还剩多少积分时,调用 beatra.wallet.get。问扣了哪些费用时,调用 beatra.wallet.ledger。模型卡片返回 top_up 内容时,按卡片列出的顺序原样转述各档充值,不排序,也不替用户选。
按任务查阅
- 需要制作确认卡,以及门头、海报、菜单、菜品图、短视频、克隆、广播和改图的请求示例,还有一份完整的开业示例时,读开业制作流程(references/workflow.md)。
- 任务卡住或失败、没收到回应、价格看起来不对、一句口播对短视频来说太长、图上的店名不对,或短视频的画面横竖不对时,读出问题时怎么办(references/faq.md)。
- 连接还没就绪时,读安装与授权(references/installation-and-auth.md)。
- 首次使用登记,读安装登记(references/installation-registration.md)。
- 任务创建之前调用就失败时,读随包 MCP Client 连接诊断(references/mcp-connection.md)。
- 任务在排队、进行中或找不到时,读任务与结果(references/tasks-and-results.md)。
- 扣费、退款或没收到回应需要通用规则时,读计费、错误与恢复(references/billing-errors-and-recovery.md)。
- 用户想停止使用并断开连接时,读卸载与断开连接(references/uninstall-and-disconnect.md)。
更新与安全
本 Skill 会自动更新。内置客户端每天最多一次从 Beatra 官网读取本渠道的版本信息
(中国大陆网络走 www.beatra.cn 与 cdn.beatra.cn)。有新版本时,它下载官方发布包,
逐个文件校验 SHA-256,再替换本 Skill 自己的文件;你放进这个目录的其他文件不会被
改动。替换过程中断时,下次运行会自动恢复到替换前的状态。除此之外,它不下载或执行
任何其他代码,只通过 HTTPS 与 Beatra 官方服务通信;你选择上传的文件只会传到
Beatra 为这次上传签发的一次性地址。
关闭自动更新:python3 scripts/mcp_client.py update --auto off。关闭后,客户端每天
最多提示一次在你安装它的商店里更新的命令。详见更新与安全(references/updates-and-security.md)。