From c03ee3b7ead3ae5d86b03ac39ddee3db8784e60c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=82=8B=E3=81=BF=E3=81=AA=E3=83=BC=E5=85=88=E7=94=9F?= Date: Fri, 19 Jun 2026 02:32:48 +0900 Subject: [PATCH 1/5] =?UTF-8?q?=E3=83=90=E3=83=BC=E3=82=B8=E3=83=A7?= =?UTF-8?q?=E3=83=B3=E3=82=920.1.3=E3=81=8B=E3=82=890.2.0=E3=81=AB?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E3=81=97=E3=80=81RELEASE=5FNOTES.md=E3=82=92?= =?UTF-8?q?=E6=96=B0=E3=81=97=E3=81=84=E3=83=AF=E3=83=BC=E3=82=AF=E3=83=95?= =?UTF-8?q?=E3=83=AD=E3=83=BC=E3=81=AE=E3=82=A2=E3=83=83=E3=83=97=E3=82=B0?= =?UTF-8?q?=E3=83=AC=E3=83=BC=E3=83=89=E3=81=AB=E5=90=88=E3=82=8F=E3=81=9B?= =?UTF-8?q?=E3=81=A6=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- RELEASE_NOTES.md | 181 +++++++++++++++++++++++++++++++++++++++++++---- pyproject.toml | 2 +- 2 files changed, 167 insertions(+), 16 deletions(-) diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index ca03a72..30ce9a2 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -1,21 +1,172 @@ -# ComfyUI-CheckpointHandpickerSuite 0.1.3 +# ComfyUI-CheckpointHandpickerSuite 0.2.0 -Stability and UI refinement release for Cycler, Selector, Tagger, and ImageDirPreview. +ComfyUI-CheckpointHandpickerSuite 0.2.0 is a major workflow upgrade for checkpoint review, tagging, thumbnail setup, and generated-image cleanup. -## Fixed +This release turns the suite from a checkpoint cycling/tagging helper into a more complete checkpoint review desk: you can now review generated images per checkpoint, choose the best image as the checkpoint thumbnail, delete failed preview images, and tag checkpoints while reviewing images either inside ComfyUI or externally on a tablet/shared folder/image viewer. -- Fixed a regression where Cycler filters could reset when switching tabs after the 0.1.2 filter persistence fix. -- Fixed Cycler title/status synchronization issues. -- Fixed stale Local List status icons after Tagger updates. -- Fixed Cycler title icon accumulation. -- Fixed ImageDirPreview progress display positioning. -- Restored the full `Push to Local List` selector button label. -- Confirmed delete script export and refresh behavior. +## Highlights -## Improved +### 👑 New `god!` status -- Added numbered Local List entries in Cycler status. -- Improved Cycler status layout for current checkpoint, mode, source, filter, shuffle deck, and local list information. -- Improved Tagger `none` display readability. +A new top-tier status has been added above `favorite`. -This release is primarily a regression-fix and UI stabilization update. \ No newline at end of file +Status order: + +* 👑 `god!` +* 💛 `favorite` +* 👍 `nice` +* ✔ `keep` +* 🗑 `delete` +* `none` + +Use `god!` for hall-of-fame checkpoints or models you absolutely want to keep. + +`delete` remains a reserved deletion state. Checkpoints are never deleted immediately when tagged. + +### ImageDir Preview actions + +`ImageDir Preview` can now do more than display a contact sheet. + +Left-click a preview image tile to open the image action menu: + +* `Delete image` +* `Set as checkpoint thumbnail` + +#### Set as checkpoint thumbnail + +You can now set the best generated image as the checkpoint thumbnail directly from `ImageDir Preview`. + +This is especially useful when paired with model manager tools that display sidecar checkpoint thumbnails. + +#### Delete generated preview images + +You can now delete failed generated images directly from `ImageDir Preview`. + +* Deletion asks for confirmation. +* Images are deleted directly from disk. +* The contact sheet layout is preserved. +* Deleted tiles are marked with a `NO IMAGE` overlay. +* Deleted tiles become inactive and do not open the action menu. + +This is intended for quickly cleaning up failed AI-generated images while reviewing checkpoints. + +### 🌑🌕 DirectLink mode + +`Checkpoint List Selector` now supports DirectLink mode for external image review. + +Use this when you want to review generated images outside ComfyUI, for example: + +* on a tablet +* in a shared folder +* in an external image viewer +* on a larger monitor + +Connect: + +```text +CheckpointListSelector.ckpt_name_str -> CheckpointStatusTagger.ckpt_name_str +``` + +When this connection is detected, the Selector button becomes: + +* `🌑 DirectLink OFF` +* `🌕 DirectLink ON` + +DirectLink is OFF by default. While OFF, selecting a checkpoint in the Selector does not update the Tagger target. + +When DirectLink is turned ON, the Tagger labels the checkpoint currently selected in the Selector. + +A confirmation dialog is shown once per browser page load: + +```text +Enable DirectLink? + +Use this mode only while checking generated images on a tablet, shared folder, or external viewer. + +Otherwise, connect ImageDirPreview and use Sync mode. + +Tagger will label the checkpoint selected in ListSelector. +``` + +If `ImageDir Preview` is connected, the Selector uses normal Sync mode instead. + +### Selector action button cleanup + +`Checkpoint List Selector` now changes its main action depending on what it is connected to: + +* No review node connected: + + * `🏹 Push to Local List` +* Connected to `ImageDir Preview`: + + * `🎯 Sync Checkpoint` +* Connected only to `Checkpoint Status Tagger`: + + * `🌑 DirectLink OFF` / `🌕 DirectLink ON` + +The old `List Only` button has been removed from the normal UI. +Internal refresh behavior remains available where needed. + +### Tagger UI improvements + +`Checkpoint Status Tagger` has been cleaned up for better readability. + +* The current tag status is easier to read. +* Delete guidance text is shorter. +* The message area is more compact. +* DirectLink source text is not shown in the Tagger, to keep focus on the current tag state. +* DirectLink ON/OFF state is shown by the Selector instead. + +### Delete script output moved to `output` + +Checkpoint deletion scripts are now exported to: + +```text +ComfyUI/output/CheckpointHandpickerSuite/delete_scripts/ +``` + +instead of the ComfyUI temp directory. + +The folder is created automatically when needed. + +This makes deletion scripts easier to find and less likely to disappear unexpectedly when temp files are cleared. + +### Sidecar thumbnail cleanup support + +When creating checkpoint deletion scripts, the suite now also includes managed sidecar thumbnail candidates for the checkpoint. + +This helps keep checkpoint folders cleaner after deleting reserved checkpoints. + +Checkpoint deletion is still script-based and confirmation-based. +No checkpoint file is deleted immediately from the UI. + +### ListSelector thumbnail preview + +`Checkpoint List Selector` can show sidecar checkpoint thumbnails while hovering checkpoint rows. + +This makes it easier to recognize checkpoints visually before selecting or tagging them. + +## Recommended companion saver nodes + +For best results, use this suite together with one of these saver nodes: + +* `ComfyUI-GMImageSaver` +* `ComfyUI-PillowImageSaver` + +Connect `ckpt_name_safe` to the saver node's `label` input. + +This lets generated images be saved into checkpoint-aware filenames or directories, making `ImageDir Preview`, thumbnail selection, and cleanup much more effective. + +## Notes + +This release keeps the review-first cleanup philosophy: + +* tagging a checkpoint as `delete` only reserves it for deletion +* checkpoint deletion is performed later by an exported script +* generated image deletion in `ImageDir Preview` is immediate, but requires confirmation + +## Upgrade notes + +After updating, restart ComfyUI. + +If an existing workflow contains old `Checkpoint Status Tagger` or `Checkpoint List Selector` nodes from earlier versions, recreating those nodes may help ensure the latest UI and connection behavior is used. diff --git a/pyproject.toml b/pyproject.toml index eb30a37..30a1a28 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "checkpoint-handpicker-suite" -version = "0.1.3" +version = "0.2.0" description = "A deluxe checkpoint jukebox and review desk for ComfyUI. Review-first checkpoint cycling and handpicking suite: non-invasive checkpoint switcher, rotation/cycler helper, random checkpoint selector, and cleanup workflow without replacing Load Checkpoint." license = { file = "LICENSE" } readme = "README.md" From 0c4b20058fd2f1872a6fa7f87f6f49172719b237 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=82=8B=E3=81=BF=E3=81=AA=E3=83=BC=E5=85=88=E7=94=9F?= Date: Fri, 19 Jun 2026 14:20:22 +0900 Subject: [PATCH 2/5] =?UTF-8?q?README.ja.md=E3=81=AE=E3=83=AA=E3=83=B3?= =?UTF-8?q?=E3=82=AF=E3=82=92=E4=BF=AE=E6=AD=A3=E3=81=97=E3=80=81=E6=AD=A3?= =?UTF-8?q?=E3=81=97=E3=81=84=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=83=91?= =?UTF-8?q?=E3=82=B9=E3=82=92=E5=8F=8D=E6=98=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/README.ja.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/README.ja.md b/doc/README.ja.md index d3f2f29..b5aee2e 100644 --- a/doc/README.ja.md +++ b/doc/README.ja.md @@ -53,7 +53,7 @@ v0.2.0の特大アップデートで、ついに「失敗画像の直接削除 「自動巡回ラインをどう組むか?」「生成を1秒も止めずに、別タブの特等席で優雅に目視検分(棚卸し)する禁断のマルチタブ運用の秘訣とは?」など、実戦に即した詳細なステップバイステップは、以下の魔導書を開くが良いぞ! -* 🏹 **[詳細な使用方法・ライフハックはこちら:HOW_TO_USE.ja.md](doc/README.ja.md)** +* 🏹 **[詳細な使用方法・ライフハックはこちら:HOW_TO_USE.ja.md](HOW_TO_USE.ja.md)** --- From afd162243319de73d087e728077c2c267bd73c1a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=82=8B=E3=81=BF=E3=81=AA=E3=83=BC=E5=85=88=E7=94=9F?= Date: Sun, 21 Jun 2026 13:16:25 +0900 Subject: [PATCH 3/5] =?UTF-8?q?=E4=B8=8D=E8=A6=81=E3=81=AA=E3=82=B3?= =?UTF-8?q?=E3=83=BC=E3=83=89=E3=82=92=E5=89=8A=E9=99=A4=E3=81=97=E3=80=81?= =?UTF-8?q?README=E3=81=AE=E3=82=BF=E3=82=A4=E3=83=88=E3=83=AB=E3=82=92?= =?UTF-8?q?=E6=95=B4=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/HOW_TO_USE.ja.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/doc/HOW_TO_USE.ja.md b/doc/HOW_TO_USE.ja.md index 82c9649..cbe0a9e 100644 --- a/doc/HOW_TO_USE.ja.md +++ b/doc/HOW_TO_USE.ja.md @@ -1,5 +1,4 @@ -```python -markdown_content = """# 📖 HOW_TO_USE.ja.md (大祭囃子・のじゃのじゃ確定版 v0.2.0) +# 📖 HOW_TO_USE.ja.md (大祭囃子・のじゃのじゃ確定版 v0.2.0) # 🖥️ 使用方法(How to Use) From 5f2567341c942300ffdae6d363a37ae76f9a8f45 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=82=8B=E3=81=BF=E3=81=AA=E3=83=BC=E5=85=88=E7=94=9F?= Date: Sun, 21 Jun 2026 13:18:49 +0900 Subject: [PATCH 4/5] Correct formatting in Japanese README section --- doc/README.ja.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/README.ja.md b/doc/README.ja.md index b5aee2e..7b9509d 100644 --- a/doc/README.ja.md +++ b/doc/README.ja.md @@ -1,6 +1,6 @@ # 🧬 ComfyUI-CheckpointHandpickerSuite (日本語版聖典 v0.2.0) -> ** 「ディスク容量が節約できる保証はありません。なぜなら、あなたが空いた容量に歓喜して、明日さらに多くのCheckpointをダウンロードしてしまうからです。」 ** +> 「**ディスク容量が節約できる保証はありません。なぜなら、あなたが空いた容量に歓喜して、明日さらに多くのCheckpointをダウンロードしてしまうからです。**」 エクスプローラーとの果てしない往復も、不要モデルを消すためだけの不毛なComfyUIの再起動も、すべては過去の遺物じゃ! `ComfyUI-CheckpointHandpickerSuite` は、膨大なCheckpoint(.safetensors)の海で戦うAI絵師のために、生成パイプラインを「一瞬も止めず」、常時稼働のままリアルタイムにモデルの格付け・棚卸し・サムネイル設定までを執行するために錬成された、究極のノンストップ・アセット管理システムじゃ。 From cc4303feb81a9e00ffa83552758a3f7108f52ceb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=82=8B=E3=81=BF=E3=81=AA=E3=83=BC=E5=85=88=E7=94=9F?= Date: Sat, 27 Jun 2026 21:24:39 +0900 Subject: [PATCH 5/5] =?UTF-8?q?HOW=5FTO=5FUSE.ja.md=E3=81=AB=E3=82=B8?= =?UTF-8?q?=E3=83=A7=E3=83=96=E4=B8=AD=E3=81=AECheckpoint=E8=A9=95?= =?UTF-8?q?=E4=BE=A1=E3=83=A2=E3=83=BC=E3=83=89=E3=82=92=E8=BF=BD=E5=8A=A0?= =?UTF-8?q?=E3=81=97=E3=80=81=E4=BD=BF=E7=94=A8=E6=96=B9=E6=B3=95=E3=82=92?= =?UTF-8?q?=E8=A9=B3=E7=B4=B0=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/HOW_TO_USE.ja.md | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/doc/HOW_TO_USE.ja.md b/doc/HOW_TO_USE.ja.md index cbe0a9e..832e340 100644 --- a/doc/HOW_TO_USE.ja.md +++ b/doc/HOW_TO_USE.ja.md @@ -67,7 +67,29 @@ git clone [https://github.com/ruminar/ComfyUI-CheckpointHandpickerSuite.git](htt ## 💪 本格的な使い方(ヘビーユーザー向け・祭りの本番!) -### ① 画像出力フォルダ参照 Checkpoint 評価モード ★超推奨★ +### ① ジョブ中 Checkpoint 評価モード + +### ── 複雑な多段生成の「スキマ時間」をハックし、その場で格付けせよ! + +> **⚠️ 注意:** +> これは画像生成を多段に組んでいる、高度なワークフロー(KSamplerの後にFaceDetailerで顔・指を修正したり、Upscale処理を挟んでいるなど)を構築している玄人向けの機能じゃ。 +> 生成の途中で「Checkpointの仮評価」が行えるのじゃが、シンプルな1段生成ワークフローの場合はプレビュー後すぐに次のジョブへ遷移してしまうため、この項目は読み飛ばして構わんぞ! + +1. 前述の通り、`Checkpoint Name Cycler` と `Checkpoint List Selector` を配置する。 +2. **`Ephemeral Preview`** を配置し、ワークフローの中間に存在する `VAE Decode` などの画像出力を受け取れるように繋ぐ。 +3. **`Checkpoint Status Tagger`(右手)** を配置する。 +4. Taggerの `ckpt_name` 入力を、`Checkpoint Name Cycler` の `ckpt_name` 出力へ接続する。 + +**🏆 執行結果:** +ジョブの実行中、中間プレビュー画像を確認しながら、**「今まさにこの画像を吐き出しているCheckpoint」に対して、お気に入りや削除予約などのタグをその場でダイレクトに打てるようになる!** +打たれたタグ(ステータス)は即座にSelectorへ通知され、Cycler側で「💛や👍が付いたモデルだけを狙い撃ちで巡回する」といった高度なフィルタリング巡回が可能になるのじゃ! + +image +*(※なぜこんな巡回ワークフローが組めるのか、深淵の秘密は Cycler の個別ドキュメントを読むが良いぞ!)* + +--- + +### ② 画像出力フォルダ参照 Checkpoint 評価モード ★超推奨★ ### ── メインの生成ラインを走らせたまま、別タブの特等席で優雅に目視検分(棚卸し)せよ! @@ -87,6 +109,8 @@ git clone [https://github.com/ruminar/ComfyUI-CheckpointHandpickerSuite.git](htt 裏の生成ラインの邪魔をすることなく、そのモデルが出力した画像だけがマッハで逆探知され、コンタクトシートとしてキャンバスに展開される! 画像を見ながら Tagger でステータスを刻めば、情報は一瞬でグローバル同期され、全タブのフィルタへ即時反映されるのじゃ! +image +*(※なぜ生成を止めずにこんな芸当ができるのか、深淵の秘密は Selector の個別ドキュメントを読むが良いぞ!)* #### ✨ 【神機能】ImageDir Previewのクリックアクション! @@ -97,7 +121,7 @@ git clone [https://github.com/ruminar/ComfyUI-CheckpointHandpickerSuite.git](htt --- -### ② タブレットで寝転がりレビュー!【DirectLink モード】 +### ③ タブレットで寝転がりレビュー!【DirectLink モード】 ### ── 外部ビューアで画像を楽しみながら、手元でポチポチ格付けせよ!