Can you not have a shared shell between users?
When you make a Repl for Python, you get a bash shell alongside the Repl. However, each user gets their own shell. If I type python main.py, the command and the output doesn't show up on anyone else's screen.
If I'm going to be using this tool to try and help someone learn programming, it's kind of super important that I have a way to run a program and make sure that what they see is exactly what I see. For example, if the program has a back-and-forth of input and output on the command line, we really need to be looking at the same thing so I don't have to be like "okay so type 'y', now you should see this... you don't? Wait, did you type y before? Did you... aaaahh, okay restart the whole thing. You have to hit Ctrl+C... did it work? Well it should show a dollar sign..."