It does something using neovim's internal terminal mode rather than use the file descriptors it was called with. Most commonly this breaks when a command produces an interactive prompt or uses a pager.
It doesn't support interactive commands. For example if you run a command that asks for input before finishing, it gets swallowed.