A shell in the chat app
A shell bot, to run commands from a chat channel.
01 / What it was
We wanted to reach the workstation from a phone without opening ports or using SSH. There is an open-source project for this, remoteDiscordShell, by another developer. We tried it, then wrote a smaller, stricter bot to replace it.
You type a command in one chat channel, the bot runs it on the machine and posts the output back.
02 / How it worked
- Only a fixed list of user accounts may run commands. There is no password login.
- No sudo, no package installs, no system updates. The bot never raises its own rights.
- The channel is matched by its ID, not its name.
- Commands time out after 120 seconds and their output is capped. Every command is logged.
- A few built-in commands: help, current folder, running process, stop, and fetching a file, with a list of protected paths checked on the real path.
03 / What we saw
Writing it made the limits clear. The code says its deny list is 'a guardrail against fat fingers, NOT a security boundary'. The log shows it was used about twenty times over ten days.
04 / Where it led
Reaching the machine from the phone moved on to voice control of the chat app in October.
Sources
- Bot source. shell bot source, 20 Sep 2026
the shell bot: a small, allowlisted remote shell for this workstation.
- Bot source. shell bot source, 20 Sep 2026
The shell deny list is a guardrail against fat fingers, NOT a security boundary
- remoteDiscordShell (third-party project we tried). github.com/EnriqueMoran/remoteDiscordShell
remoteDiscordShell is a remote shell for Linux that makes use of Discord's conection to send commands