KJNodesの使い方③テキスト・数値・ループなど43個を全部解説・実機で検証【ComfyUI・2026年版】

KJNodes の TensorLoopOpen を ComfyUI で動かした画面 ComfyUI

この記事について(広告・アフィリエイトリンクはありません。記事の末尾に自作データ集の案内があります)

KJNodes の「テキスト・数値・その他・ループ」のノード 43 個を1つずつ試した結果は、動いた 40 個、エラー 1 個、実行していない 2 個でした。

エラーになったのは、別のカスタムノードが必要な LoadVideosFromFolder。実行していないのはループの内部部品の2個で、単独では意味のある入力を用意できないためです。

動作を確かめたノードは、KJNodes 以外のカスタムノードを止めた ComfyUI で、ComfyUI に最初から入っているノードと組み合わせて試しました。ノードごとに、動かした(または置いた)ときの画面を載せています。試した環境と条件は末尾の「検証メモ」へ。KJNodes の入れ方は ComfyUI のカスタムノードの入れ方を見てください。

この記事でわかること

  • KJNodes の「テキスト・数値・その他・ループ」のノード 43 個の、それぞれの役割と、試した結果
  • 文字のつなぎ方、計算、処理時間の測り方、ループの組み方
  • 名前が「_」で始まるノードは、ループのノードの中で使われる部品(画面には [DEV] と表示)

全260個を7本に分けて紹介している

ComfyUI-KJNodes(KJNodes)は、ComfyUI の公式の登録所でいちばんダウンロードされているカスタムノードで、入れると 260 個のノードが増えます。この記事はシリーズの③回目です。

全260ノードを、やりたいこと・ノード名から探すには KJNodes 完全ガイド(総合索引)へ。

回分類記事
①画像KJNodesの使い方①
②マスクKJNodesの使い方②
③テキスト・数値・その他・ループこの記事
④ラテント・ノイズ・サンプリング・座標KJNodesの使い方④
⑤モデル・LoRA・メモリ・高速化KJNodesの使い方⑤
⑥動画モデル用KJNodesの使い方⑥
⑦音声・非推奨KJNodesの使い方⑦

ノード名は、画面に出る英語の名前(または中身の名前)で書いています。ノードライブラリで名前を入れると見つかります。スクリーンショットの「プレビュー任意」は、数値や文字を表示するための ComfyUI の標準のノードです。

値を置く(定数)

BOOLConstant

オン・オフ(true / false)の値を1つ置きます。いくつかのノードに同じ値を配るときに使います。

試したこと:true を置き、プレビューで true と表示されました。

KJNodes の BOOLConstant を ComfyUI で動かした画面
BOOLConstant を試したときの画面

INTConstant

整数を1つ置きます。

試したこと:1216 を置きました。

KJNodes の INTConstant を ComfyUI で動かした画面
INTConstant を試したときの画面

FloatConstant

小数を1つ置きます。

試したこと:5.5 を置きました。

KJNodes の FloatConstant を ComfyUI で動かした画面
FloatConstant を試したときの画面

StringConstant

1行の文字列を置きます。

試したこと:「masterpiece, best quality」を置きました。

KJNodes の StringConstant を ComfyUI で動かした画面
StringConstant を試したときの画面

StringConstantMultiline

何行かの文字列を置きます。strip_newlines をオンにすると、改行を取り除いて1行にします。

試したこと:3行の文字列を strip_newlines オンで置き、1行につながりました。

KJNodes の StringConstantMultiline を ComfyUI で動かした画面
StringConstantMultiline を試したときの画面

文字を扱う

JoinStrings

2つの文字列を、区切りの文字(delimiter)をはさんでつなげます。

試したこと:「masterpiece, best quality」と「1girl, smile」を「, 」でつなげました。

KJNodes の JoinStrings を ComfyUI で動かした画面
JoinStrings を試したときの画面

JoinStringMulti

何個かの文字列をつなげるノード。inputcount と「Update inputs」で入力を増やせます。return_list をオンにすると、つなげずにリストで出します。

試したこと:「red」と「blue」を「 and 」でつなげ、「red and blue」になりました。

KJNodes の JoinStringMulti を ComfyUI で動かした画面
JoinStringMulti を試したときの画面

AppendStringsToList

文字列をリストに足していきます。

試したこと:「cat」と「dog」で、2つの文字列のリストになりました。

KJNodes の AppendStringsToList を ComfyUI で動かした画面
AppendStringsToList を試したときの画面

SomethingToString

数値など、どんな値でも文字列に変えます。前後に文字を足せます。

試したこと:42 に前「seed: 」・後「 !」を足して、「seed: 42 !」になりました。

KJNodes の SomethingToString を ComfyUI で動かした画面
SomethingToString を試したときの画面

StringToFloatList

「0.2, 0.5, 1.0」のような文字列を、小数のリストに変えます。

試したこと:「0.2, 0.5, 1.0」から、3つの小数のリストが出ました。

KJNodes の StringToFloatList を ComfyUI で動かした画面
StringToFloatList を試したときの画面

WidgetToString

ほかのノードの設定欄(ウィジェット)の値を、文字列として取り出します。ノードの番号や名前で指定するか、any_input につないで指定します。

試したこと:画像を読み込むノードを any_input につなぎ、image 欄の値「kj_girl1.png」を取り出しました。

KJNodes の WidgetToString を ComfyUI で動かした画面
WidgetToString を試したときの画面

SaveStringKJ

文字列をテキストファイルとして保存します。

試したこと:「1girl, library, smile」を保存し、保存したファイル名が出ました。

KJNodes の SaveStringKJ を ComfyUI で動かした画面
SaveStringKJ を試したときの画面

ScaleBatchPromptSchedule

フレーム番号つきのプロンプトの予定表(Fizz のノードの BatchPromptSchedule の形)を、別のフレーム数に合わせて番号を付け直します。

試したこと:「”0″:”a cat”」「”15″:”a dog”」を、16フレームから32フレームに直すと、15 が 31 になりました。最初に「0:(0.0)」のような数値の形で試したところ、空の文字列になりました。プロンプトの予定表の形でないと動きません。

KJNodes の ScaleBatchPromptSchedule を ComfyUI で動かした画面
ScaleBatchPromptSchedule を試したときの画面

Superprompt

短いプロンプトを、T5 という言語モデルで詳しい文章にふくらませます。作者の説明では、SuperPrompt というデータで学習したモデルを使います。

試したこと:「a cat in a library」を入れると、初回にモデルがダウンロードされ、「a sleek black cat with emerald green eyes …」のような長い英文が出ました。

KJNodes の Superprompt を ComfyUI で動かした画面
Superprompt を試したときの画面

Ideogram4PromptBuilderKJ

Ideogram 4 というモデル用の、決まった形(JSON)のプロンプトを組み立てます(実験的なノード)。画面上で範囲を描いて、ものや文字を置けます。

試したこと:全体の説明と背景を入れて、JSON の文字列が出ることを確かめました。範囲は描いていないので、プレビューの画像は黒いままです。

KJNodes の Ideogram4PromptBuilderKJ を ComfyUI で動かした画面
Ideogram4PromptBuilderKJ を試したときの画面

文字を画像にする

AddLabel

画像の上(または下・左右)に、文字を書いた帯を足します。画像の高さが変わるので注意が必要です。

試したこと:「kj_girl1.png」と書いた帯を上に足しました。

KJNodes の AddLabel を ComfyUI で動かした画面
AddLabel を試したときの画面

CreateTextMask

文字を描いた画像とマスクを作ります。回転を変えると、動く文字のバッチにもできます。

試したこと:「KOBO Lab」を描いた画像とマスクができました。

KJNodes の CreateTextMask を ComfyUI で動かした画面
CreateTextMask を試したときの画面

ImageBatchTestPattern

0, 1, 2… と番号を描いた画像のバッチを作ります。バッチの順番を確かめるときに便利です。

試したこと:4枚作り、0〜3 の番号の画像になりました。

KJNodes の ImageBatchTestPattern を ComfyUI で動かした画面
ImageBatchTestPattern を試したときの画面

計算・切り替え・待つ

SimpleCalculatorKJ

a、b などの値を使って、式を計算します。足し算・かけ算・比べるなどができます。

試したこと:a に 832、b に 2 をつないで「a / b」を計算し、小数 416.0 と整数 416 が出ました。入力の名前は画面上では a・b ですが、つなぐときの中の名前は variables.a のようになっていました。

KJNodes の SimpleCalculatorKJ を ComfyUI で動かした画面
SimpleCalculatorKJ を試したときの画面

LazySwitchKJ

オン・オフの値で、2つの入力のどちらを先へ渡すかを切り替えます。選ばれなかった側は実行しません。

試したこと:スイッチを false にして、on_false 側の2枚目の画像が出ました。

KJNodes の LazySwitchKJ を ComfyUI で動かした画面
LazySwitchKJ を試したときの画面

Sleep

指定した時間だけ待ってから、値を先へ渡します。

試したこと:2秒待ってから画像を渡しました。

KJNodes の Sleep を ComfyUI で動かした画面
Sleep を試したときの画面

TimerNodeKJ

start と stop の2つを置いて、そのあいだにかかった時間を測ります。

試したこと:あいだに1秒待つ Sleep をはさみ、1004(ミリ秒)と出ました。

KJNodes の TimerNodeKJ を ComfyUI で動かした画面
TimerNodeKJ を試したときの画面

DummyOut

何もしないノードです。保存せずに、つないだ先までを実行させたいときに使います。

試したこと:画像をつなぎ、実行できることを確かめました。

KJNodes の DummyOut を ComfyUI で動かした画面
DummyOut を試したときの画面

PreviewImageOrMask

画像でもマスクでも、つなげばそのまま表示します。

試したこと:画像とマスクを、それぞれ表示しました。

KJNodes の PreviewImageOrMask を ComfyUI で動かした画面
PreviewImageOrMask を試したときの画面

モデル・条件付けを通す・見る

ModelPassThrough

モデルをそのまま通します。作者の説明では、Set ノードがバイパス(迂回)された入力を受け付けない問題の回避用です。

試したこと:Illustrious XL v2.0 のモデルを通してから、ふつうに画像を作れることを確かめました。

KJNodes の ModelPassThrough を ComfyUI で動かした画面
ModelPassThrough を試したときの画面

CondPassThrough

ポジティブとネガティブの条件付けを、そのまま通します。上と同じく回避用です。

試したこと:2つの条件付けを通してから、ふつうに画像を作れました。

KJNodes の CondPassThrough を ComfyUI で動かした画面
CondPassThrough を試したときの画面

VisualizeSigmasKJ

シグマ(各ステップのノイズの量)の並びを、グラフにして表示します。

試したこと:標準の「基本スケジューラー」(karras・20ステップ)のシグマをグラフにしました。

KJNodes の VisualizeSigmasKJ を ComfyUI で動かした画面
VisualizeSigmasKJ を試したときの画面

ContextWindowsVisualizerKJ

動画モデルで長い動画を区切って作るとき(コンテキストウィンドウ)の、区切り方を図で確かめます(実験的なノード)。モデルにその設定をかけることもできます。

試したこと:初期設定(161フレーム・81フレームずつ・30重ねる)で、「3 windows over 41 latent frames」のような説明と図が出ました。

KJNodes の ContextWindowsVisualizerKJ を ComfyUI で動かした画面
ContextWindowsVisualizerKJ を試したときの画面

DifferentialDiffusionAdvanced

マスクの濃さに合わせて、場所ごとに変える強さを変えながら描き直します(Differential Diffusion)。

試したこと:顔のあたりのぼかしたマスクで、メガネをかけるプロンプトにして描き直しました(denoise 0.7)。

KJNodes の DifferentialDiffusionAdvanced を ComfyUI で動かした画面
DifferentialDiffusionAdvanced を試したときの画面

MiniMaxH3TokenCounter

MiniMax H3 という動画モデルで生成するときの、トークン(処理する単位)の数を、実際に生成せずに数えます。

試したこと:動画用の空の潜在画像(512×512・25フレーム)と、文字の条件付けをつなぎ、合計 333(文字 77・動画 256)と出ました。最初は画像用の潜在画像をつないで「動画の形の潜在画像が必要」というエラーになりました。なお、MiniMax H3 のモデルそのものは使っていないので、数え方が正しいかまでは確かめていません。

KJNodes の MiniMaxH3TokenCounter を ComfyUI で動かした画面
MiniMaxH3TokenCounter を試したときの画面

読み込み・表示

LoadVideosFromFolder

フォルダの中の動画をまとめて読み込みます。

試したこと:動画を入れたフォルダを指定して実行すると、「This node requires ComfyUI-VideoHelperSuite to be installed.」と出て動きませんでした。別のカスタムノード(VideoHelperSuite)が必要です。このシリーズは KJNodes 以外のカスタムノードを使わないルールなので、入れて試すことはしていません。

KJNodes の LoadVideosFromFolder を ComfyUI で動かした画面
LoadVideosFromFolder を試したときの画面

CameraPoseVisualizer

カメラの位置と向き(RealEstate10K の形のテキスト、または AnimateDiff-Evolved の CameraCtrl の値)を、3D のグラフで表示します。

試したこと:4フレームぶん、横に少しずつ動くカメラの位置を書いた見本のファイル(自作)を読み込み、3D のグラフが出ました。

KJNodes の CameraPoseVisualizer を ComfyUI で動かした画面
CameraPoseVisualizer を試したときの画面

ループ(くり返し)

TensorLoopOpen

TensorLoopClose と組にして、間にはさんだ処理をくり返します。回数(iterations)か、たまったフレームの数(total_frames)で止められます。

試したこと:縮めた画像を入れ、間に「画像を反転」をはさんで4回くり返しました。毎回の結果がバッチにまとまって出ました。今が何回目かなどの数値も出ます。

KJNodes の TensorLoopOpen を ComfyUI で動かした画面
TensorLoopOpen を試したときの画面

TensorLoopClose

TensorLoopOpen と組にして使う、くり返しの終わりのノードです。accumulate をオンにすると、毎回の結果を1つのバッチにまとめます。

試したこと:上と同じ組み方で試しました(同じ画面)。

KJNodes の TensorLoopClose を ComfyUI で動かした画面
TensorLoopClose を試したときの画面

_IntOperations

2つの整数を、足す・引く・かける・比べる、などで計算します。名前が「_」で始まるノードは、ループのノードの中で使われる部品で、画面には [DEV] と表示されました。

試したこと:7 × 3 を計算し、21 が出ました。

KJNodes の _IntOperations を ComfyUI で動かした画面
_IntOperations を試したときの画面

_ConditionalSelect

オン・オフの値で、2つの値のどちらかを選びます。

試したこと:true にして、1枚目の画像が選ばれました。

KJNodes の _ConditionalSelect を ComfyUI で動かした画面
_ConditionalSelect を試したときの画面

_BatchOps

バッチの先頭や最後を切る、2つのバッチをつなげる、などをします。

試したこと:4枚のバッチを trim_start(先頭を切る)・2 にして、残りの2枚になりました。

KJNodes の _BatchOps を ComfyUI で動かした画面
_BatchOps を試したときの画面

_AccumulateNode

値を「ためる箱(ACCUMULATION)」に足していきます。

試したこと:画像を1枚足し、_AccumulationToImageBatch で画像に戻しました。

KJNodes の _AccumulateNode を ComfyUI で動かした画面
_AccumulateNode を試したときの画面

_AccumulationToImageBatch

ためた値を、画像のバッチに戻します。

試したこと:_AccumulateNode を2つつないで2枚ためて、2枚のバッチにしました。

KJNodes の _AccumulationToImageBatch を ComfyUI で動かした画面
_AccumulationToImageBatch を試したときの画面

_WhileLoopOpen

_WhileLoopClose と組にして、条件が true のあいだ処理をくり返します。

試したこと:0 から始めて1ずつ足し、3 より小さいあいだくり返すように組みました。結果は 3 になりました。

KJNodes の _WhileLoopOpen を ComfyUI で動かした画面
_WhileLoopOpen を試したときの画面

_WhileLoopClose

_WhileLoopOpen と組にして使う、くり返しの終わりのノードです。condition が false になると止まります。

試したこと:上と同じ組み方で試しました(同じ画面)。

KJNodes の _WhileLoopClose を ComfyUI で動かした画面
_WhileLoopClose を試したときの画面

_ImageAccumStatePack

TensorLoop の中で、くり返しの途中の状態をまとめる部品です。KJNodes のコードでは、TensorLoop が自動で組み立てる処理の中で使われていました。

試したこと:単独では意味のある入力を用意できないため、実行していません。ノードを置いた画面だけ載せます。

KJNodes の _ImageAccumStatePack を ComfyUI に置いた画面
_ImageAccumStatePack を置いた画面(実行していません)

_ImageAccumStateUnpack

上でまとめた状態を、元の値に分ける部品です。

試したこと:同じ理由で、実行していません。

KJNodes の _ImageAccumStateUnpack を ComfyUI に置いた画面
_ImageAccumStateUnpack を置いた画面(実行していません)

止まった原因は、入力の形と足りない部品

座標や文字列の多くは「つなぐ」形の入力なので、標準の PrimitiveString などからつないで使いました。SimpleCalculatorKJ の入力も、画面では a・b と見えますが、中の名前は variables.a のようになっています。

入力の形でつまずいたのは2つ。ScaleBatchPromptSchedule は、プロンプトの予定表(”0″:”a cat” のような形)でないと空の文字列になりました。MiniMaxH3TokenCounter は、動画用の形の潜在画像をつながないとエラーになります。

LoadVideosFromFolder は ComfyUI-VideoHelperSuite が必要で、KJNodes だけでは動きません。

よくある質問(FAQ)

Q. KJNodes で文字列をつなげるには?

2つなら JoinStrings、3つ以上なら JoinStringMulti を使います。delimiter(区切り)に「, 」などを入れると、その文字をはさんでつながります。

Q. KJNodes で計算をするには?

SimpleCalculatorKJ を使います。a・b に数値をつなぎ、expression に「a / b」のような式を書くと、小数・整数・オンオフの3つで結果が出ます。

Q. KJNodes で処理にかかった時間を測るには?

TimerNodeKJ を2つ置き、片方を start、もう片方を stop にして、start の timer 出力を stop につなぎます。あいだの処理にかかった時間がミリ秒で出ます。

Q. KJNodes でくり返し(ループ)をするには?

TensorLoopOpen と TensorLoopClose を組にして、あいだに処理をはさみます。iterations で回数を決められ、accumulate をオンにすると毎回の結果が1つのバッチにまとまります。

Q. LoadVideosFromFolder が動きません

このノードは ComfyUI-VideoHelperSuite という別のカスタムノードが必要です。入っていないと「This node requires ComfyUI-VideoHelperSuite to be installed.」と出ます。

まとめ

  • KJNodes の「テキスト・数値・その他・ループ」のノードは 43 個
  • 文字のつなぎ方、計算、切り替え、時間の計測、ループなど、ワークフローを組みやすくするノードが中心
  • 40 個は実行して確かめた。別のカスタムノードが必要なもの・内部部品は、理由を書いて載せた

【自社商品の案内】

この記事で検証したKJNodes全260ノードの結果を、検索できる表(Excel/CSV)と早見PDFにまとめたデータ集を、当サイトのショップで販売しています。記事7本を読み返さなくても、ノード名や「やりたいこと」から引けます。

価格:980円(税込)
BOOTH:KJNodes 全260ノード実測データ集|検索できる表+早見PDF
note:KJNodes 全260ノード実測データ集|検索できる表+早見PDF

※無料記事の内容はこれまでどおり全部読めます。データ集は「探す手間を省く」ためのものです。

検証メモ

この記事の検証環境

Windows 11 / RTX 5090(VRAM 32GB)/ ComfyUI 0.43.0 ポータブル版(試験用)/ ComfyUI-KJNodes 1.5.2(ほかのカスタムノードは停止)/ 「テキスト・数値・その他・ループ」のノード 43 個を1つずつ試した(動いた40個・エラー1個・実行していない2個) / 2026年10月28日に検証
これまでの検証の一覧はこちら

試した環境(2026年10月27〜28日)

起動オプション --disable-all-custom-nodes --whitelist-custom-nodes comfyui-kjnodes で、KJNodes だけを読み込んで試しました
モデルを使うノードは Illustrious XL v2.0 で試しました。Superprompt のモデルは、ノードの機能で初回に自動でダウンロードされました

  • 「動いた」は、この環境で実行して結果が出たという意味です。ほかの版や設定での動きは確かめていません。
  • MiniMaxH3TokenCounter は、MiniMax H3 のモデルそのものを使っていないので、数え方が正しいかまでは確かめていません。
  • 「いちばんダウンロードされている」は、公式の登録所の2026年10月27日のデータです。

参考にした資料

この記事を書いた人
こまたろ

画像生成 AI に興味を持ったのがきっかけで、3年ほど前から ComfyUI を触っています。始めたころは今ほど情報がそろっておらず、何時間もかけて整えた環境が翌日のアップデートで動かなくなったこともありました。

KOBO Lab は、自分の学び直しと、これから ComfyUI を始める人が同じところでつまずかないようにと思って始めたサイトです。初心者も中級者も、迷ったときに開くサイトを目指しています。

検証は、RTX 5090 を積んだ自作 PC 1台で、実際に動かして確かめています。作業を楽にするための自作ツールも作っています。

記事は、運営者自身の経験と検証をもとに、Claudeで下書きを作り、GrokボットとMuseでも添削や確認をして仕上げています。

KOBO Lab の新しい記事を受け取る
ComfyUIKJNodesカスタムノード
KOBO Lab の新しい記事を受け取る
タイトルとURLをコピーしました