ComfyUI mxToolkit 插件完全教程
1. 插件简介
插件地址: https://github.com/Smirnov75/ComfyUI-mxToolkit
这个插件就像是一个"超级工具箱"!它为ComfyUI提供了一套非常实用的小工具,让你在使用ComfyUI时更加方便和高效。想象一下,如果ComfyUI是一个厨房,那么这个插件就是为你准备的各种贴心小工具:自动调料盒(随机种子)、暂停按钮(停止生成)、调节旋钮(滑块控制)、还有智能管道(重新路由)。
主要功能:
- 🎲 智能种子管理:自动随机化种子,还能记住之前用过的值
- ⏸️ 生成暂停控制:可以随时暂停生成过程,需要时再继续
- 🎚️ 滑块控制器:用直观的滑块来调节参数,比输入数字方便多了
- 🔄 智能重新路由:比原版更灵活的连线节点,可以自定义方向
能给我们带来什么效果:
- 不用手动改种子值,自动帮你随机
- 可以随时暂停生成,不浪费计算资源
- 用滑块调参数更直观,就像调音量一样简单
- 连线更灵活,工作流看起来更整洁
2. 如何安装
方法一:Git克隆(推荐)
cd ComfyUI/custom_nodes/
git clone https://github.com/Smirnov75/ComfyUI-mxToolkit.git
方法二:手动下载
- 去GitHub下载插件压缩包
- 解压到
ComfyUI/custom_nodes/目录 - 重启ComfyUI
安装完成后,所有节点都会出现在 utils/mxToolkit 分类下。
3. 节点详解
3.1 mxSeed 节点 - 智能种子管理器
这个节点就像是一个"智能抽奖机",能自动帮你生成随机种子,还能记住之前用过的种子值,让你可以轻松回到之前的效果。
3.2 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| X | X | 整数 | 0 | 当前的种子值,就像抽奖的号码 | 随机种子参数 | 这个值会自动变化,你也可以手动设置 |
| seed | seed | 整数 | 0 | 内部存储的种子值 | 内部种子属性 | 系统自动管理,不需要手动设置 |
| min | min | 整数 | 0 | 最小种子值,就像抽奖号码的最小值 | 随机种子最小值 | 设置为0即可,一般不需要改 |
| max | max | 整数 | 4294967296 | 最大种子值,就像抽奖号码的最大值 | 随机种子最大值 | 保持默认值即可 |
| autorunQueue | autorunQueue | 布尔值 | true | 是否自动开始生成,就像自动播放功能 | 自动运行队列 | true表示点击随机后自动开始生成 |
| interruptQueue | interruptQueue | 布尔值 | true | 是否打断当前生成,就像换台功能 | 中断当前队列 | true表示开始新生成时停止旧的 |
特殊功能:
- 点击节点标题栏的箭头按钮:随机生成新种子
- 按住Shift点击:种子值增加1(微调功能)
- 点击显示的种子值:手动输入种子
- 自动记住最近3个种子值,点击可以快速切换
3.3 mxStop 节点 - 生成暂停器
这个节点就像是"暂停按钮",能让正在进行的图片生成暂停下来,需要时再继续,不会浪费已经计算的部分。
3.4 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| In | In | 任意类型 | 连接输入 | 输入的数据,就像水管的进水口 | 输入数据流 | 连接任何需要暂停控制的节点输出 |
| showOutputText | showOutputText | 布尔值 | false | 是否显示输出类型文字 | 显示输出类型标签 | true会在节点上显示数据类型名称 |
特殊功能:
- 点击节点标题栏的Continue按钮:继续被暂停的生成
- 数据会原样传递到输出端,不会改变内容
- 暂停后可以修改其他参数,然后继续生成
3.5 mxSlider 节点 - 单轴滑块控制器
这个节点就像是"音量调节旋钮",让你用拖拽的方式来调节数值参数,比手动输入数字直观多了。
3.6 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Xi | Xi | 整数 | 20 | 整数模式下的当前值 | 整数输出值 | 当decimals为0时使用这个值 |
| Xf | Xf | 浮点数 | 20 | 小数模式下的当前值 | 浮点数输出值 | 当decimals大于0时使用这个值 |
| isfloatX | isfloatX | 整数 | 0 | 是否输出小数,0=整数,1=小数 | 输出类型标志 | 0输出整数,1输出带小数的数 |
| value | value | 数值 | 20 | 滑块的当前值,就像音量大小 | 当前滑块值 | 拖拽滑块改变这个值 |
| min | min | 数值 | 0 | 最小值,就像音量的最小声 | 滑块最小值 | 设置滑块能调到的最小值 |
| max | max | 数值 | 100 | 最大值,就像音量的最大声 | 滑块最大值 | 设置滑块能调到的最大值 |
| step | step | 数值 | 1 | 每次调节的步长,就像音量格数 | 调节步长 | 1表示每次增减1,0.1表示每次增减0.1 |
| decimals | decimals | 整数 | 0 | 小数位数,0=整数,1=一位小数 | 小数精度 | 0输出整数,2输出两位小数 |
| snap | snap | 布尔值 | true | 是否按步长对齐,就像磁性吸附 | 步长对齐功能 | true会按step值对齐,false可以任意值 |
特殊功能:
- 拖拽滑块:调节数值
- 按住Shift拖拽:临时反转snap设置
- 按住Ctrl拖拽:可以超出min/max范围
- 双击数值:手动输入精确值
3.7 mxSlider2D 节点 - 双轴滑块控制器
这个节点就像是"游戏手柄的摇杆",可以同时控制两个数值(X和Y),特别适合调节图片尺寸、坐标位置等需要两个参数的场景。
3.8 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Xi | Xi | 整数 | 512 | X轴整数模式下的当前值 | X轴整数输出值 | X轴为整数时使用 |
| Xf | Xf | 浮点数 | 512 | X轴小数模式下的当前值 | X轴浮点数输出值 | X轴为小数时使用 |
| Yi | Yi | 整数 | 512 | Y轴整数模式下的当前值 | Y轴整数输出值 | Y轴为整数时使用 |
| Yf | Yf | 浮点数 | 512 | Y轴小数模式下的当前值 | Y轴浮点数输出值 | Y轴为小数时使用 |
| isfloatX | isfloatX | 整数 | 0 | X轴是否输出小数 | X轴输出类型标志 | 0=整数,1=小数 |
| isfloatY | isfloatY | 整数 | 0 | Y轴是否输出小数 | Y轴输出类型标志 | 0=整数,1=小数 |
| valueX | valueX | 数值 | 512 | X轴当前值,就像横坐标 | X轴滑块值 | 左右拖拽改变X值 |
| valueY | valueY | 数值 | 512 | Y轴当前值,就像纵坐标 | Y轴滑块值 | 上下拖拽改变Y值 |
| minX | minX | 数值 | 0 | X轴最小值 | X轴最小值 | X轴能调到的最小值 |
| minY | minY | 数值 | 0 | Y轴最小值 | Y轴最小值 | Y轴能调到的最小值 |
| maxX | maxX | 数值 | 1024 | X轴最大值 | X轴最大值 | X轴能调到的最大值 |
| maxY | maxY | 数值 | 1024 | Y轴最大值 | Y轴最大值 | Y轴能调到的最大值 |
| stepX | stepX | 数值 | 128 | X轴调节步长 | X轴步长 | X轴每次调节的增减量 |
| stepY | stepY | 数值 | 128 | Y轴调节步长 | Y轴步长 | Y轴每次调节的增减量 |
| decimalsX | decimalsX | 整数 | 0 | X轴小数位数 | X轴小数精度 | 0=整数,2=两位小数 |
| decimalsY | decimalsY | 整数 | 0 | Y轴小数位数 | Y轴小数精度 | 0=整数,2=两位小数 |
| snap | snap | 布尔值 | true | 是否按步长对齐 | 步长对齐功能 | true按步长对齐,false任意值 |
| dots | dots | 布尔值 | true | 是否显示网格点,就像坐标纸 | 显示网格点 | true显示参考点,false不显示 |
| frame | frame | 布尔值 | true | 是否显示选中区域框 | 显示选择框 | true显示当前选中的矩形区域 |
| frameAlert | frameAlert | 数值 | 0 | 面积警告值,超过变红色 | 面积警告阈值 | 当X*Y超过这个值时框变红,0=关闭 |
特殊功能:
- 在2D区域内拖拽:同时调节X和Y值
- 按住Shift拖拽:临时反转snap设置
- 按住Shift点击数值区域:交换X和Y值(需要满足条件)
- 双击X或Y数值:手动输入精确值
- 红色框警告:当X*Y乘积超过frameAlert值时提醒
3.9 mxReroute 节点 - 智能重新路由器
这个节点就像是"智能管道接头",比ComfyUI原版的Reroute节点更灵活,可以自定义输入和输出的方向,让你的工作流连线更整洁美观。
3.10 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| inputDir | inputDir | 字符串 | LEFT | 输入方向,就像水管的进水方向 | 输入连接方向 | LEFT/RIGHT/UP/DOWN,或简写L/R/U/D |
| outputDir | outputDir | 字符串 | RIGHT | 输出方向,就像水管的出水方向 | 输出连接方向 | LEFT/RIGHT/UP/DOWN,或简写L/R/U/D |
| showOutputText | showOutputText | 布尔值 | false | 是否显示输出类型文字 | 显示输出类型标签 | true会显示数据类型名称 |
特殊功能:
- 右键菜单:选择预设的方向组合(12种箭头图标)
- 键盘快捷键:选中节点后连续按两个方向键设置输入输出方向
- 自动类型检测:会根据连接的节点自动识别数据类型
- 智能连线:输入输出会根据设置的方向显示在节点的不同位置
方向设置说明:
- LEFT/L:左侧
- RIGHT/R:右侧
- UP/U:上方
- DOWN/D:下方
- TOP/T:上方(等同于UP)
4. 使用技巧和建议
4.1 mxSeed 使用技巧
基础用法:
- 连接到任何需要种子的节点(如KSampler)
- 点击箭头按钮随机生成新种子
- 开启autorunQueue可以自动开始生成
高级技巧:
- 关闭autorunQueue,手动控制生成时机
- 利用历史记录功能快速回到之前的效果
- 按住Shift点击进行微调(+1)
4.2 mxStop 使用技巧
使用场景:
- 长时间生成过程中需要暂停检查
- 想要修改后续节点参数再继续
- 调试工作流时逐步执行
注意事项:
- 暂停不会丢失已计算的进度
- 可以在任何节点链中插入
- 适合放在耗时较长的节点前
4.3 滑块使用技巧
mxSlider技巧:
- 用于单个参数的快速调节
- 设置合适的min/max范围
- 根据需要调整step和decimals
mxSlider2D技巧:
- 适合图片尺寸、坐标等双参数调节
- 利用frameAlert监控面积大小
- 开启dots显示网格便于精确定位
4.4 mxReroute使用技巧
布局优化:
- 根据工作流布局选择合适的方向
- 利用不同方向让连线更整洁
- 可以替代原版Reroute节点
快捷操作:
- 使用右键菜单快速选择方向
- 键盘快捷键更高效
- 支持链式连接多个重路由节点
5. 常见问题解答
Q: mxSeed节点的历史记录怎么用?
A: 节点会自动记住最近3个种子值,显示在节点上。点击任意一个历史值可以快速切换回去,非常适合对比不同种子的效果。
Q: mxStop节点暂停后如何继续?
A: 点击节点右上角的"Continue"按钮,或者重新点击Queue按钮都可以继续生成。暂停不会丢失进度。
Q: 滑块节点的snap功能是什么?
A: snap就像磁性吸附,开启后滑块会按照step设置的步长对齐。比如step=10,滑块只能停在10、20、30这样的位置上。
Q: mxSlider2D的frameAlert有什么用?
A: 当X*Y的乘积超过设置值时,选择框会变成红色提醒你。比如设置为1000000,当图片尺寸超过1M像素时就会警告。
Q: mxReroute和原版Reroute有什么区别?
A: mxReroute可以自定义输入输出方向,让连线更灵活。原版只能左进右出,mxReroute可以上下左右任意组合。
Q: 滑块的Ctrl和Shift键有什么作用?
A: Shift键临时反转snap设置,Ctrl键允许超出min/max范围。这样可以在特殊情况下进行更灵活的调节。
6. 实际应用示例
6.1 图片生成工作流优化
使用mxSeed:
- 连接到KSampler的seed输入
- 开启自动运行,快速测试不同效果
- 利用历史记录对比最佳结果
使用滑块控制:
- mxSlider控制CFG Scale、Steps等单一参数
- mxSlider2D控制图片宽高,实时预览尺寸
6.2 复杂工作流调试
使用mxStop:
- 在关键节点前插入Stop节点
- 逐步执行,检查中间结果
- 发现问题时暂停修改参数
使用mxReroute:
- 整理复杂的连线
- 让工作流更易读易维护
- 减少连线交叉
7. 性能和兼容性
7.1 性能特点
- 所有节点都是轻量级的,不会影响生成速度
- 前端交互响应迅速
- 内存占用极小
7.2 兼容性
- 支持所有ComfyUI版本
- 与其他插件兼容性良好
- 可以与任何节点类型配合使用
总结: mxToolkit插件提供了5个实用的工具节点,虽然数量不多,但每个都很实用。mxSeed让种子管理更智能,mxStop提供了暂停控制,两个滑块节点让参数调节更直观,mxReroute让连线更灵活。这些工具就像是给ComfyUI装上了更好用的控制面板,让整个使用体验更加流畅和高效!