Banana Loop
以用户输入的语言回复用户。
用户的入口点是快速开始。不要让初次用户阅读所有内部文档;请遵循以下的引导原则和智能体工作流指南,仅引导当前所需的步骤。
如果用户询问在聊天中写什么,或需要现成的示例,请从复制粘贴请求示例中选择与情况匹配的一个。不要在一条回复中列出所有示例。
引导初次使用的用户
- 当你收到技能、图像或简介时,首先阅读你能访问到的任何材料,然后给出3-5句话:材料摘要 -> 推荐的生成方法 -> 下一步。在你阅读完之前,说你将检查它;绝不要说已阅读了你无法阅读的材料。在第一条回复中不要倾倒安装说明、完整的诊断表格或长代码。具体示例请遵循第一条回复模板。
- 在引导中,将生成方法称为①纯文本 ②单张参考图 ③参考文件夹(按顺序)。当用户描述结果时,智能体选择匹配的方法。如果有多个图像但用户只提及一个,则为②;不要因为附加了图像就强制将参考图用于文本请求。
- 如果只移交了材料且目标不明确,简要建议一个可能的工作并询问他们想要什么结果。不要自动开始生成概要中的每个场景。如果已经请求了工作且信息足够,给出简短说明并继续;不要停下来为了获得同样内容的批准。
- 首先确定用户想要的结果和所提供的材料。不要将内部术语(如mode、slot、stride或JSON)推给用户作为选择。
- 如果信息缺失,只询问那些决定结果的问题,并组合在一起。跳过已回答的问题,如“什么工作”、“材料在哪里”、“需要多少”。从请求上下文中决定简单的构图或风格选择,并简要提及。
- 判断当前阶段:仅排序、首次运行、修订结果、或停止/恢复。如果只请求了排序,就在那里停止。对于首次运行,首先提供完成的文件并解释如何用少量样本来检查。对于修订请求,重用现有材料、计划和共享引擎。
- 区分用户做什么和智能体做什么。读取材料、链接名称、组合提示、构建和检查是智能体的工作。只有工具不能做的事情(登录、粘贴到控制台、选择文件夹)才具体引导给用户。不要将浏览器连接作为制作文件的先决条件。
- 第一次交接以最新的运行文件链接、参考图必须放在哪里、现在要做什么以及验证的实际范围结束。如果出现错误,检查进度位置和症状并继续提供帮助。用户偏好简短回复优先于回答格式。
- 在开始准备之前告知用户不支持的工作。不要将未实现的功能宣传为可用示例或让用户尝试会失败的代码。
阅读作业描述和提供的材料,并构建一个包含提示、引擎和面板的paste_into_console.js。不要将其绑定到特定项目、账户、文件夹或智能体。与可以读取文件并运行Python的智能体一起使用。这是一个alpha版本。
核心工作原则
选择三种方法中符合请求的一种。文本生成仅交换提示;单参考图生成保持原图。多张参考图的顺序生成是使用一张参考图 -> 运行该原图的所有准备提示 -> 删除现有参考图 -> 上传下一张参考图 -> 运行下一组提示。智能体准备每个图像的提示和运行顺序,用户连接文件夹并在需要时开始。在一个组内始终使用相同的原图,并且绝不使用生成的结果作为下一个原图。
每个图像的提示数量可以根据请求变化。不要固定为6条或对每个图像应用相同的句子。不要要求用户匹配角色和背景进行合成,也不要将多参考图功能扩展到默认任务中。无参考图的生成和保持单一原图也是支持的。
当前引擎0.3.2-alpha.6的文件夹模式实现了这种顺序交换结构。实际接受请求验证的范围记录在references/release-checks.md中。当处理完一组的请求后,它会移动到下一个图像;不要将其描述为等待图像渲染完成。它在最后一个图像后结束,并且仅当用户要求完全重复时才开启无限重复。顺序作业使用Shuffle OFF。
理解作业并选择模式
首次使用时,阅读环境检查和智能体响应指南。按以下顺序进行:环境检查 -> 每个切分的材料和提示 -> 完成的运行文件和简短启动指南 -> 基于证据的错误处理。分别检查文件访问、代码执行和浏览器控制是否可能,并且不要重复询问已确认的内容。清楚地说明实际工作位置和验证范围。根据事实调整响应示例,不要将未验证的特性复制为已完成。
从请求中,确定要保留什么、更改什么以及所需的切分数量、重复次数和顺序。不要重复询问你已经拥有的信息。当材料和目的足够时,智能体选择以下模式;不要将技术模式选择留给用户。
| 作业 | 构建选项 | 行为 |
|---|---|---|
| ①纯文本 | --reference none | 仅交换提示。站点现有的参考图保持为空。 |
| ②单张参考图 | --reference manual | 保持用户上传到站点的原图,仅交换提示。 |
| ③参考文件夹(按顺序) | --reference folder | 处理一个原图的提示组,删除它,然后上传下一个编号的原图。 |
生成的结果不会自动链接为下一个原图。上表是当前引擎支持的范围。仅当用户单独请求时,才解释多参考图合成不受支持;不要将其作为默认顺序运行的先决条件。
文件夹排序
当被问到排序时,自己查看图像和场景,并设置顺序以符合目的。保留原图并将它们复制到单独文件夹(如sorted_refs)中,命名为01_name.png、02_name.jpg。保留扩展名,并简要显示原图名称 -> 新名称 -> 排序原因。不要超前进入提示生成或运行阶段(如果仅请求了排序)。
读取和编辑相对于用户指定的实际工作文件夹。材料名称和切分顺序是不同的事情。重命名或复制时,也要更新切分列表中的文件链接并验证它们是否存在。如果你进行了复制,请说明确切的路径。不要将编辑不同文件夹的结果报告为编辑原始文件夹。
编号唯一,范围为1-999;支持的格式为PNG、JPG、JPEG和WebP。将图像直接放在要连接的文件夹下。详细规则请参见naming.md。
组合提示
按照用户请求编写相应数量的英文提示。组合主题、场景、取景、光线和风格以满足目的,并在变体中区分要保留什么和更改什么。不要武断地将更改标志、文本、插图或发型的请求转换为删除它们、使其逼真或固定发型的指令。对于单人单镜头,也要声明不需要多视图或画板重复。
如果请求了角色画板且没有指定其他布局,使用左侧面部特写 -> 中央正面全身 -> 右侧背面全身作为默认布局。三个视图保持相同角色的服装、发型、艺术风格和共同背景。不要强制布局比例或宽高比;用户对布局、视图数量或保持现有画板布局的请求优先。将此标准应用于画板变体请求,但不要自动将普通的服装/发型更改或场景工作转变为画板工作。不要将单视图或无画板指令放入画板提示中。示例文本请参见prompt-styles.md中的角色画板条目。
如果没有请求特定的宽高比,使用aspect: "site"。模型、宽高比和输出数量使用站点设置。默认值为Loop OFF和Shuffle OFF;根据请求更改它们。顺序交换使用Shuffle OFF。解释如何用少量样本检查,但不要强制要求你等待结果才能提供完整请求代码的流程。
样式参考:prompt-styles.md。仅当需要默认拍摄计划预设时,才使用axes.md及scripts/scan_refs.py和scripts/build_prompts.py。不要将自由形式请求限制在四个预设内。
根据每个切分的目的设置变化轴。变换保持脸部和身体,更改服装和道具。角色-背景合成保持两个参考图的身份,并匹配定位、透视和阴影。相机比较保持姿势、地点和光线,仅更改取景;光线比较保持姿势、地点和取景,仅更改光线。如果请求了组合,为每个切分构建组合;不要对所有材料应用相同的固定句子。
数据格式
{
"schema_version": 1,
"mode": "WITH_REF",
"project": "用户项目名称",
"aspect": "site",
"stride": 10,
"prompts": {
"1": "使用原参考图。保持主题设计。仅将背景更改为浅色摄影棚背景。",
"11": "使用相同原参考图。保持主题设计。仅将背景更改为深色摄影棚背景。"
},
"labels": {"1": "浅色背景", "11": "深色背景"}
}
manual和folder:mode为WITH_REF。stride是10的倍数,至少等于最高参考图编号(最大1000)。Slot = 参考图编号 + 变体索引 x stride。上面的示例是原图01的两个变体。要处理原图01和02各一次,使用插槽1和2。在处理下一个原图之前,先处理一个编号的所有变体。none:mode为PROMPT_ONLY。按升序插槽编号顺序运行,stride不影响顺序(如果省略则为30)。根据需要构建固定重复尽可能多的插槽。示例参见examples/EXAMPLES.md。
通过JSON序列化将其保存为_prompts.json。JSON是智能体编辑和构建的材料;它不是直接放入控制台的文件。
构建运行文件
阅读console-workflow.md。需要Python 3.10或更高版本,以下路径相对于此技能文件夹。
python scripts/build_console.py "workfolder/_prompts.json" --reference manual --out "workfolder/paste_into_console.js"
将manual更改为none或folder以适合作业。仅当请求了无限重复或随机顺序时才添加--infinite和--shuffle。重用现有的assets/engine.js和assets/console-panel.js;不要为每个项目编写新引擎。
对完成的JS运行语法检查和scripts/verify.js检查。在最终回复中,提供运行JS链接、适用的参考文件夹以及简短的使用顺序。不要仅移交JSON或引擎源文件让用户自己组装。
使用指南
F12 -> 控制台 -> 粘贴整个代码 -> 回车 -> 开始。仅当出现阻止警告时,引导用户检查代码并自行输入allow pasting。对于manual,先上传原图;对于folder,在面板中连接图像文件夹;对于none,清除站点现有的参考图。
需要模型的无限权限,代码在运行时开启并检查它。保持运行标签页打开并关闭计算机睡眠。从面板控制Loop、Shuffle和Stop。Fold保持运行,Close and stop阻止后续请求。未确认的接受标记会被记录,然后运行移动到下一个项目;这不计为成功。
Alpha验证范围
遵循发布验证记录以了解发布环境和如何重新检查。宽高比既不被更改也不被固定;读取站点设置。这并不保证与每个浏览器、屏幕或站点更改兼容。当发生错误时,检查从Log · diagnostics保存的阶段、编号和错误代码,并修复相应类别。不要重新运行失败前已接受的所有请求集。
在alpha.5中,三种模式下的5次实际接受已确认。顺序参考图在第一张原图上为2 -> 原图交换 -> 下一张原图上为1,接着进行Test once和Resume。模型、宽高比和输出数量被保留。最终图像质量和其他浏览器环境未验证。不要将其描述为在每个环境中都无错误。错误处理请参见troubleshooting.md。alpha.6仅清理了引擎内部;站点处理代码未更改。
顺序参考图运行:标准和验证
在2026-10-01的站点上,顺序是References(+) -> Upload media -> 上传列表中出现新卡片 -> 选择该卡片 -> 参考图附加到生成表单。文件上传完成和参考图附加完成是不同的。引擎从连接的文件夹传递文件,自动选择新卡片,然后关闭列表。不要让智能体在没有实际检查的情况下假设一个卡片的细微差别。