Is it possible to create a user that can log in to one's ssh server and chat, but is restricted from any other activity, i.e. cannot use any significant disk space, cannot access hardware (speakers, microphone, camera), and is perhaps even limited to a low CPU-percentage?
If the purpose is only to support a single application which does all of its input via
STDOUT, you should be able to use the old UNIX trick of specifying that program as the user's shell.
First off, you would need to create a user account for the person; I don't believe you would be able to use the built in "Guest account" since not only do I think it exists only when someone uses the GUI login (read: SSH won't trigger it), but also I don't think there is a concept of default shell for guest.
Second, you need to add the specific program (say
/bin/ttychat) to the
/etc/shells file. Finally, you need to specify that "shell" as the default for the account you created.
The idea is that when the SSH account logs in, it will redirect all
STDOUT for the session to the shell you specified. When the program terminates, it should close the connection as well.
I found an unrelated question on Stack Exchange showing how to add custom shells to OSX here.