Ruby 3.4 リファレンスマニュアル

instance method IO#isatty

isatty -> bool[permalink][rdoc][edit]
tty? -> bool

入出力ポートがttyに結合している時、真を返します。そうでない場合 false を返します。

[EXCEPTION] IOError:
既に close されている場合に発生します。
p File.new("testfile").isatty # => false
p File.new("/dev/tty").isatty # => true