sdBxb
The node that turns your workflow into a mini-program that charges money
- app_img1(optional)
- app_img2(optional)
- app_img3(optional)
- custom_img1(optional)
- custom_img2(optional)
- custom_img3(optional)
- custom_video1(optional)
- custom_video2(optional)
- custom_video3(optional)
This is the node the whole pack is named after. The pack is "SD变现宝" - roughly "SD money-making treasure" - and its one trick is wrapping an existing ComfyUI workflow into a WeChat mini-program, a Douyin mini-program, a Kuaishou mini-program, or an H5 that runs inside WeChat, all with working payments. The sdBxb node is where you tell that system what your little product looks like: its name, its price, and what the end user is allowed to do.
If you just want to generate images locally, this node is useless to you. If you've built a workflow you think other people would pay to use, it's the centerpiece.
How it actually works
Here's the counterintuitive part: sdBxb does nothing at runtime. It has no outputs, no execution function - it's a pure configuration block. When you hit the pack's "convert" button, the backend reads your workflow JSON, finds this node, and uses its widget values to build the mini-program's UI around your graph. Your generation pipeline stays exactly as it is; this node is just the settings panel the converter reads.
That's why you can drop it anywhere in the graph - even dead-ended. It's metadata, not data flow.
The inputs that matter
app_titleandapp_desc- what the mini-program lists as the product name and description. The defaults are placeholder text that literally says "please edit this in ComfyUI," and people genuinely forget.app_fee- price per generation, default 18. Set it to 0 and the README notes you can run a free product with lots of free tries.free_times- how many generations a user gets before payment kicks in. Default 0 (pay up front).app_img1–app_img3- cover/display images for the product page.custom_img1–3,custom_video1–3,custom_text1–3- the inputs your end users actually get in the app: "upload a photo," "enter a prompt," that kind of thing. The matchingcustom_*_descfields are the label text shown above each field.
Wire the node that saves your results - the pack's own sdBxb_saveImage - into your graph so generated images actually surface in the app.
Installing it
Same as any custom node - ComfyUI Manager (search ComfyUI_Bxb) or:
cd ComfyUI/custom_nodes
git clone https://github.com/zhulu111/ComfyUI_Bxb
Restart ComfyUI. Dependencies auto-install (aiohttp, websockets, Pillow, numpy, etc.) and there are no model downloads - it's all glue code.
The honest caveat, read this first
The free cloud service that powered the one-click conversion was shut down on January 10, 2026. As of now, recharges are closed, resource uploads are disabled, and the README points anyone still running it at a paid "source version" (private deployment) sold at code.sdbxb.com - a rewrite with cloud-GPU auto-start, WeChat/Douyin/Kuaishou/H5 support, and domain licensing. Refunds for leftover balance go through the WeChat mini-program's contact page. So the honest take: the "free, convert your workflow in one click" era of this pack is over, and building on it today means budgeting for the paid deployment path. Worth knowing before you invest a weekend.
One privacy note while you're at it: your workflow API data stays on your machine, per the README. But the plugin does talk to a third-party cloud server over WebSocket for its conversion machinery, so if "no phoning home" is your rule, weigh that before installing a pack whose entire purpose is commercial distribution.
Inputs (25)
| Name | Type | Default | Description |
|---|---|---|---|
| app_title | STRING | 这是默认作品标题,请在comfyui中修改 | — |
| app_desc | STRING | 这是默认功能介绍,请在comfyui中修改 | — |
| app_fee | INT | 180–999999 | — |
| free_times | INT | 00–999999 | — |
| app_img1(optional)opt | IMAGE | — | |
| app_img2(optional)opt | IMAGE | — | |
| app_img3(optional)opt | IMAGE | — | |
| custom_img1(optional)opt | IMAGE | — | |
| custom_img2(optional)opt | IMAGE | — | |
| custom_img3(optional)opt | IMAGE | — | |
| custom_video1(optional)opt | IMAGE | — | |
| custom_video2(optional)opt | IMAGE | — | |
| custom_video3(optional)opt | IMAGE | — | |
| custom_text1(optional)opt | STRING | — | |
| custom_text2(optional)opt | STRING | — | |
| custom_text3(optional)opt | STRING | — | |
| custom_img1_descopt | STRING | 请上传图片 | — |
| custom_img2_descopt | STRING | 请上传图片 | — |
| custom_img3_descopt | STRING | 请上传图片 | — |
| custom_video1_descopt | STRING | 请上传视频 | — |
| custom_video2_descopt | STRING | 请上传视频 | — |
| custom_video3_descopt | STRING | 请上传视频 | — |
| custom_text1_descopt | STRING | 请输入文本 | — |
| custom_text2_descopt | STRING | 请输入文本 | — |
| custom_text3_descopt | STRING | 请输入文本 | — |
Outputs (0)
No outputs