comfyui-anima-toolkit

TK Toolkit · ComfyUI-Anima-Batch-LoRA

An all-in-one toolkit for Anima workflows in ComfyUI — batch LoRA loading, a Civitai-integrated local model manager, Danbooru search, prompt management, an output gallery, and batch-workflow utilities.

🇬🇧 English TL;DR — TK Toolkit (formerly “Anima Toolkit” — renamed 2026-09; same plugin, same registry id anima-toolkit, publisher 时运tk / toki) is a ComfyUI custom-node pack plus a built-in web panel. It solves five everyday Anima/SD chores: LoRA management (batch apply, thumbnails, categorization, Civitai metadata & downloads), Civitai integration (match local files to models by SHA256, browse/explore, one-click download), prompt management (bilingual tag cards, translation, prompt library, Chinese tag autocomplete), Danbooru tools (tag search with filters, gallery, tag classifier), and output management (thumbnail gallery over your ComfyUI/output, PNG metadata parsing), on top of batch workflow utilities (chained multi-prompt generation, string routing, camera/pose presets). Keywords: comfyui · comfyui-custom-nodes · comfyui-manager · anima · lora · lora-manager · civitai · danbooru · prompt-manager · tag-autocomplete · chinese-tag-autocomplete · stable-diffusion · generative-ai · workflow-automation. The full documentation below is in Chinese (the primary author’s language). Machine-readable summary for AI agents: llms.txt.

TK Toolkit

Installation / 安装

# 方式一:ComfyUI-Manager 里搜索 “TK Toolkit”(节点 id anima-toolkit)
# 方式二:手动
cd ComfyUI/custom_nodes
git clone https://github.com/Ararararararaki/comfyui-anima-toolkit
# 然后重启 ComfyUI(改了 .py 必须重启)

Not to be confused with / 别认错AnimaLoraToolkitAnimaLoraAtelier训练 工具链 (YAML 配置训 LoRA/LoKr)。本项目 TK Toolkit推理侧 工具包 —— 在 ComfyUI 里加载 / 管理 / 检索 LoRA,不做训练

一个 ComfyUI 自定义节点 + 配套本地管理面板:批量挂 LoRA、可视化管理模型、解析返图参数、整理提示词。

当前发布版本: 2.13.1

这个项目解决什么(10 秒版)

你常遇到的麻烦 本项目的解法
一次挂十几个 LoRA,手动改权重 TK 批量 LoRA 加载器:面板挑/批量启用、权重 scrubbing、触发词自动输出
本地一堆 .safetensors 不知道是什么、缺预览图 本地 LoRA 管理:扫描 + SHA256 匹配 C 站,补预览图/作者/版本/下载,按底模与分类筛选
想找参考图、找画师风格 TK D站画廊:Danbooru 标签搜索 + 分级/时间/评分/收藏筛选 + 瀑布流 + 随机发现
提示词散落各处、中英对照费劲 Prompt 卡片库 / Prompt 库:中英对照卡片、翻译与校准为 D站规范标签、一键入库复用
出图后不知道参数、找不到历史图 Outputs 图片管理:后端缩略图直出、PNG 参数索引、一键复制 Prompt / LoRA 标签
想一次跑一批不同提示词 TK 批量提示词:多组提示词串行出图 + 每组独立机位

安装部署与更新;节点清单见 TK 节点目录

最近更新(2026-09-13)

历史更新(2026-09-12 · 2.10.0)

历史更新(2026-09-12 · 2.9.0)

历史更新(2026-09-11 · 2.7.x)

这组改动需要将插件目录更新到最新提交;其中 Python 节点输入 schema 的变化需要重启 ComfyUI,纯前端样式/脚本变化刷新浏览器即可。

目录

使用插件

安装

把仓库放到 ComfyUI 的 custom_nodes 目录中:

cd ComfyUI/custom_nodes
git clone https://github.com/Ararararararaki/comfyui-anima-toolkit.git

然后通过绘世启动器重启 ComfyUI。仓库已经包含可直接使用的 app/ 面板构建产物,普通用户不需要安装 Node.js 或重新构建。

进入节点和工具箱

LoRA 管理推荐流程

  1. 在节点菜单的 TK/loaders 中添加 TK 批量 LoRA 加载器,连接 MODEL,需要输出 CLIP 时再连接 CLIP
  2. 在节点中点击「本地 LoRA」打开浏览窗,或从面板进入本地 LoRA 管理。
  3. 点击「扫描文件夹(含子目录)」,选择 LoRA 根目录。扫描会保留相对路径,例如 anima base/style.safetensors
  4. 点击「子目录建分类」,按一级子目录名称自动创建/复用分类,并将对应 LoRA 归入分类。更深层目录按其一级目录归类,根目录直接放置的文件不归类。
  5. 需要 C 站信息时点击「全部匹配」;之后可以查看触发词、预览图、返图、分类和权重,或发送回 ComfyUI。

浏览器不支持目录权限 API 时,工具箱会自动使用文件夹文件选择回退;Chrome/Edge 通过 localhost 访问时体验最完整。

TK 节点目录

所有节点都位于 ComfyUI 的 TK 根目录下:

功能总览

每个模块的完整功能清单与操作细节见 功能详解文档

1. LoRA 加载节点(Anima Batch LoRA Loader)

LoRA 加载节点

点「本地 LoRA」打开可视化浏览窗:递归显示 LoRA 根目录及子目录,直接看 C 站预览图,点图就加入节点,支持分类筛选、排序、批量勾选。

本地 LoRA 浏览窗

点「组」把常用组合存起来,一键切换(悬浮组名可预览组内 LoRA)。

LoRA 组

批量把 LoRA 挂到节点上,全程可视化操作:

TK 可动素体相机

TK 可动素体相机

⚠️ 破坏性变更(本版):旧的 TK 相机控制 节点已退役移除,由本节点取代。 旧工作流里的该节点会显示为「缺失节点类型」,请删除后改用 TK 可动素体相机 (机位参数与输出端口一一对应,camera_prompt / camera_meta 语义不变)。

2. 本地 LoRA 管理(面板)

本地 LoRA 管理

Steam 风格界面,管理全部本地 LoRA:

3. 图片解析(面板)

图片解析

4. Outputs 图片管理(面板)

Outputs

5. Prompt 库(面板)

Prompt 库

6. 画师系列(面板)

管理画师风格标签:

7. LoRA 探索(面板)

LoRA 探索

点卡片上的「选择版本」直接展开版本列表,选哪个版本就下载哪个(两步操作,避免误触直接下载)。

下载展开

浏览 C 站 LoRA(Anima 生态,下载量 > 250、赞/下载比 > 5%):

8. TK 节点系列(配合作画的节点)

TK 可动素体相机 · TK 批量提示词注入 · TK D站画廊

本节列出配合作画的新节点(批量 LoRA 加载器见上面第 1 节)。

具体数量以实际注册为准(python tests/tools/ai_verify.py 会打印真实节点清单)—— 这里不写死数字:历史上删掉「TK 相机控制」后就出现过标题写”十一”、正文写”十二”的不一致。

TK Danbooru Tag Getter

兼容性说明:权重控件的有效范围为 0.05–2.0;旧工作流若恢复出初始 0,会自动按中性权重 1.0 处理,不会生成 (tag:0)

节点前端显示的「统一 Prompt」输入可直接接普通 Prompt、Packer 的 ALL_TAGS 或其他 STRING。勾选任一具体分类后,节点会按本机 Danbooru 数据库识别已知 Tag 并归类;未识别的句子由「保留自然语言」控制。分类按固定顺序合并,不需要填写 category_name

每个分类行右侧的 × 数值是该分类的 Tag 权重,范围 0.05–2.0,步进 0.05;默认 1.0 时输出原始 Tag,例如设置「角色表情词」为 0.8 会输出 (smile:0.8).输入本身已经带权重时会与分类权重相乘,例如 (smile:1.2) × 0.5 输出 (smile:0.6).自然语言句子不会被分类权重包裹。旧工作流若把新增权重控件恢复成 0,节点会在加载/执行时按中性权重 1.0 处理,不会生成 (tag:0)

如果上游已经提供 Packer 的「分类数据包」 (TAG_BUNDLE),仍可将其连接到兼容输入并直接按分类提取;旧工作流的双输入语义保持不变。新的单输入模式不需要同时连接两条线。

节点底部的「正则排除」使用不区分大小写的正则匹配;「精准排除」支持逗号或换行分隔,按不区分大小写的完整 Tag 匹配。筛选只作用于本节点输出,不会修改上游 TAG_BUNDLE

节点的 tag_bundlenatural_language 都是可选输入。单输入时只需把普通 Prompt 或 ALL_TAGS 接到 natural_language(前端显示「统一 Prompt」);勾选具体分类启用自动分类,「保留自然语言」决定未知句子是否附在分类结果后。默认应用正则/精准排除,并可单独关闭「过滤自然语言」。

TK 光影提示词

TK/prompt 中添加 TK 光影提示词,平时只需切换一个“分类|预设”下拉框,再把 lighting_prompt 接到 TK 文本合并、CLIP 文本编码或其他正向提示词流程。默认“通用|平衡柔光”用于亮/暗、室内/室外和图生图场景,不指定太阳、月亮、窗户、霓虹或主光方向。

节点提供 4 个完全通用预设,以及室内、室外、时段、夜景、方向和氛围专用预设。高级用法可打开“启用追加”并在 custom_tags 中写入逗号或换行分隔的额外光影 tag;节点会去空、去重并统一输出成 tag1, tag2, tag3,,不会附加预设名称、质量词或画风词。为避免给 Anima 制造无效权重语法,本节点不提供数值强度滑块,强弱差异由经过审视的预设本身表达。

TK Prompt Saver

将其他 STRING 节点连接到 prompt_1prompt_6,将对应预览图连接到 image_1image_6,在节点内选择单选或多选、设置每路显示名称和 Prompt 库分类。节点执行时会自动保存已开启且非空的输入;多选时每路保存为一条独立 Prompt,对应图像会作为该条 Prompt 的预览图,不需要额外保存按钮。保存内容使用 TK Toolkit 与 TK Prompt Cards 共用的 anima-lora Prompt 库,可在工具箱查看,也可在 TK Prompt Cards 的①区读取并调用。

TK String Router

节点内每一行对应一个固定输入接口。多选模式下,拖动行左侧的 把手到另一行即可交换输出顺序,不需要拆线或重新连接;顺序保存在工作流的隐藏配置中,旧工作流默认使用 1 → 6 的原顺序。单选模式的选中接口仍按原输入编号保存,不会因重排而改变。

每行下方会显示当前连线源节点的标题和输出名称(例如 TK Text Join · text),连接或断开后自动刷新。默认优先读取画布上显示的自定义节点名,也可在“名称”下拉框切换为原始节点名;名称框留空时使用该动态标签作为提示,填写后则作为本节点内的自定义别名。拖拽中会显示占位高亮和短过渡动画,用于确认落点。

9. 服装库(面板)

服装库

TK 服装抽卡

新增 TK 服装抽卡 节点直接读取同一浏览器中的 clothing-db 服装库。节点支持按全部/收藏/分类随机抽取一张服装卡,也可打开类似 LoRA 浏览器的图片网格手动选择。节点内显示服装图片、名称、分类和完整提示词,输出 服装提示词服装名称服装分类服装数据 四路 STRING。

服装名称复用卡片库已有的 name 字段,节点内重命名会同步写回工具箱。图片仅作为节点和选择弹窗预览,不会默认编码进工作流或输出为 IMAGE,以避免本地图片 Blob 让工作流膨胀。随机抽取使用种子稳定复现;修改工具箱服装后在节点点击「刷新库」。工具箱与 ComfyUI 必须使用同一个浏览器配置和同一个地址/端口打开,否则浏览器会把 IndexedDB 视为不同数据源。

TK 批量提示词节点 + 配套 AI 撰写 skill

TK 批量提示词注入

TK Prompt Batch(批量提示词注入) 读本地提示词文件按组批量出图:一组 = 一张图,批量由服务端批任务控制器按组顺序执行(一组跑完才入队下一组),不依赖浏览器常驻。提示词文件放 ComfyUI 的 input/prompts/ 目录,格式:

## 组1 · 单人日常 · 教室窗前
masterpiece, best quality, score_9, year 2025, highres, safe, 1girl, [角色], [系列], [通用标签...]
相机: from the side, low angle        # 可选:该组的机位

## 组2 · 双人 · 海边黄昏
masterpiece, best quality, score_9, year 2025, highres, safe, 2girls, [角色A], [角色B], [系列], [通用标签...]

让 AI 帮你写这种文件:仓库自带配套 skill skill/anima-prompt-writer/SKILL.md(标准正向撰写,SFW 安全版)。它按固定标签顺序(质量→美学→时代→meta→安全→人数→角色→系列→画师@→通用)+ 一段空间构图句写正片,并自动落到 input/prompts/ 的正确目录与格式——没有数据集,以规则为唯一标准。

安装:把 skill/anima-prompt-writer 目录复制到你所用 AI 的 skills 目录(如 Claude Code 的 ~/.claude/skills/ 或 DSH 的 ~/.dsh/skills/),之后让 AI「写提示词」即可。

部署与更新

把仓库克隆到 ComfyUI 的 custom_nodes 目录:

cd ComfyUI/custom_nodes
git clone https://github.com/Ararararararaki/comfyui-anima-toolkit.git

然后通过绘世启动器重启 ComfyUI。app 目录已经预先构建好,不用装依赖也不用重新构建,克隆完就能用。

翻译源配置

Prompt Cards 的「翻译状态」中可以选择翻译源,当前统一支持本地词典、DeepLX、百度翻译、MyMemory、Google 和通义。需要联网翻译的入口(包括 Outputs 的 PNG Prompt 翻译)复用同一套 /api/translate 路由。

百度翻译在 Prompt Cards 的「翻译状态 → 百度设置」中配置,需要百度开发者信息中的 APPID + API Key,并可选择机器翻译(nmt)或大模型翻译(llm),以及术语库干预。百度配置仅保存到本机 data/translation_providers.json,该文件已加入 Git 忽略,不会随仓库提交;官方接口细节见百度大模型文本翻译 API 文档

插件更新

TK 批量 LoRA 加载器的「更新」按钮会在节点加载后检查一次,之后每 5 分钟复查一次。手动点击「更新」会立即强制检查;检查的不只是 VERSION,还包括 GitHub main 的提交和发布文件指纹,因此同一版本号下的代码推送也能被发现。

发现更新后点击「一键更新」,后端会从 GitHub 下载更新 ZIP,完整下载并校验目录结构后,只覆盖插件发布文件(__init__.pyanima_*.pyweb/app/ 等)。更新过程不会删除或覆盖 data/(包括 Prompt 库镜像及其 .bak)、模型、input/outputs/、凭据和用户配置;校验失败也不会替换现有文件。

更新完成后必须使用绘世启动器重启 ComfyUI,再在浏览器按 Ctrl + Shift + R 强制刷新。关闭节点窗口或浏览器不会影响更新请求,但结束 ComfyUI 进程会中断正在下载的更新包。

如果「一键更新」因网络、权限或运行目录不可写而失败,可使用下面的手动方式:

Git 安装: 在 custom_nodes/ComfyUI-Anima-Batch-LoRA 目录执行 git pull
ZIP 安装: 下载 GitHub → Code → Download ZIP,将 ZIP 内层的仓库内容覆盖到
          ComfyUI/custom_nodes/ComfyUI-Anima-Batch-LoRA

ZIP 安装后必须确认 custom_nodes/ComfyUI-Anima-Batch-LoRA/__init__.py 直接存在,不能多套一层 仓库名-main/ 目录。更新和手动覆盖都完成后,仍需通过绘世启动器重启 ComfyUI。

更新日志

完整版本记录见 CHANGELOG.md。最近的 2.3.0 推送主要包含:

开发者:从源码重建面板

app 目录是构建产物,日常使用不用管它。改面板源码后需要重建:

cd panel
npm install
npm run build:comfyui   # 类型检查 → 打包 → 部署到 ../app

开发模式用 cd panel && npm run dev(Vite 热更新,接口代理到本地 ComfyUI)。推送到 panel 目录的改动由 GitHub Actions 自动重建 app。

目录结构

ComfyUI-Anima-Batch-LoRA/
├── __init__.py           # 后端接口(/anima/*,存元数据)
├── anima_batch_lora.py   # 节点逻辑
├── web/js/               # 节点前端(不用构建)
├── app/                  # 面板构建产物(克隆即用,别手改)
├── panel/                # 面板源码(Vite + TypeScript)
├── skill/                # 配套 AI skill(anima-prompt-writer 标准正向撰写)
├── screenshots/          # 截图
└── .github/workflows/    # 自动构建 app

依赖