Aither let's you work on software development projects with others on a browser-based full Linux desktop experience powered by ChatGPT and Github Copilot. Sharing your desktop is as easy as running two terminal commands. Each user has equal access to the desktop.
Check out our image on dockerhub: https://hub.docker.com/r/enokiinc/aither
Try it out at https://enoki.so
All you need is docker installed: Docker: https://docs.docker.com/engine/install/ \
To run locally, clone the repository and run the following:
sudo docker build -t aither -f Dockerfile .
sudo docker run --name aither \
--privileged \
-e XDG_RUNTIME_DIR=/home/dev \
-e XDG_CACHE_HOME=/home/dev \
-e XDG_CONFIG_HOME=/home/dev/.cache \
-e WAYLAND_DISPLAY=$WAYLAND_DISPLAY \
-e WLR_BACKENDS=headless \
-e WLR_LIBINPUT_NO_DEVICES=1 \
-e TEAM_NAME=enoki \
-e WORKSPACE_NAME=test-workspace \
-e USERS=2 \
-e --user=dev \
-v /var/run/docker.sock:/var/run/docker.sock \
-v $XDG_RUNTIME_DIR/$WAYLAND_DISPLAY:/home/1000/$WAYLAND_DISPLAY \
-p 6080:6080 \
-p 6081:6081 \
--rm aither dbus-run-session -- sway
Now you can access the desktop at https://0.0.0.0:6080/vnc.html
in your browser. For localhost, Aither uses a self-signed certificate, so you'll be prompted to connect anyway
To share your desktop with someone, first retrieve your free authtoken from ngrok (https://dashboard.ngrok.com/get-started/your-authtoken) and run the following within the terminal of Aither:
ngrok config add-authtoken <authtoken>
ngrok http https://0.0.0.0:6081
You'll see an ngrok url generated. Share this with your friend and they will have access to your desktop at <ngrok_url>/vnc.html
. You'll now be able to collaborate together in real-time!
We enable ChatGPT in Aither using ShellGPT (https://github.com/TheR1D/shell_gpt).
In order to use ShellGPT, all you need to do is retrieve your OPENAI_API_KEY
from https://platform.openai.com/account/api-keys and pass it in as an environment variable in the docker run
command.
You'll now be able to use ShellGPT in the terminal.
If you want to access a local folder within Aither, you can just add this line to the docker run
command:
-v /path/to/host/volume:/home/dev/localfolder
Just change the path /path/to/host/volume
to your local folder path