A pure Python 3 package containing hooks for running remote python consoles to interact with running scripts in real time.

pip install PyRemoteConsole==0.0.2



PyRemoteConsole contains hooks for connecting to running python scripts remotely. It contains a pure-python "encryption" scheme that is used to obfuscate communication between the client and the server.


pip install PyRemoteConsole

Setup & Usage

The key file that comes with PyRemoteConsole will work but you should generate a new key by running the file. You should see the following text:

Generating key...
Key generated.
Validating key for prosperity...
Key is valid.  Encryptor working successfully!

A key should never fail, but it's validated anyway.

Even repeating words and patterns will generate unique cipher-text:

hello hello hello hello hello hello hello hello


Anything sent and received while using the built-in encryption should be considered un-readable, but not necessarily secure.

Client & Server

If you have and want to be able to connect to it while it's running you need to include code from the file.

from PyRemoteConsole.client import Client, run_command_client

run_command_client should be launched in an additional thread.

from threading import Thread
from time import sleep

host = ''
port = 12347
includes = {'a': 'Some object'}
t = Thread(target=run_command_client, args=[host, port], kwargs={'includes': includes})

use the includes kwarg to pass whatever objects you want to have access to remotely. i.e. includes = {'some_obj': 'obj_val'}

Client tracks events that happen in the run_command_client thread and also allows you to shut down the run_command_client loop safely.

Client.restart = True
Client.shutdown = True
while Client.alive:

To connect to the script running the run_command_client thread you need to import run_server from the file.

from PyRemoteConsole.server import run_server

host =
port = 12347
run_server(host, port)