The terminal is conceptually separate from process `stdin` and `stdout`. This can be confusing since we talk about "terminal" both for the keyboard input and the screen output.
However, a process can read input from the keyboard without echoing it back to the screen. E.g., when you log in, your password is read from your typed input, but it doesn't appear on the screen.
And of course a process can print output to the screen without you typing that on your keyboard.
It's possible (e.g. using `tee`) to both write an output stream to the screen _and_ pass it to another process, but that doesn't make them the same.
In a nutshell, **printing something on the screen is not the same as typing it in the keyboard** , even though we use the word "terminal" to describe both.