ScriptLauncher runs scripts. That's it. It's really simple — but also powerful.
Use it to automate local tasks, simulate inputs, manage files, or send system commands from anywhere using Bitfocus Companion or a custom frontend.
-
Download: Grab the latest release
-
Run from Source (for development):
git clone https://github.com/josephdadams/scriptlauncher
cd scriptlauncher
yarn
yarn start- Configure: Right-click the tray icon and open Settings to set your password and preferences.
You'll need Node.js and Yarn. Then:
git clone https://github.com/josephdadams/scriptlauncher
cd ScriptLauncher
yarn
yarn startyarn build # Transpile code
yarn dist # Create platform-specific installersScriptLauncher exposes both Socket.IO and REST APIs for automation.
http://localhost:8810
Use io.connect('http://localhost:8810') to get started.
command— General-purpose command trigger. Send an object with:command: The command namepassword: Your password- Other properties depending on the command
Example:
socket.emit('command', {
command: 'shutdown',
password: 'admin',
time: 5,
})Every command replies on a single command_result event with an object of
the shape { command, status, result } (or { command, error } on failure):
socket.on('command_result', (msg) => console.log(msg))runScript— Run any local script/executableshutdown,shutdown_cancel,reboot,locksendAlert,getFonts,getSystemInfomoveFile,moveDatedFileInFolder,moveFileBasedOnSizefocusApp,quitAppsendInput(with subtypes like keyPress, mouseClick, etc.)
Send any command with JSON body:
{
"command": "shutdown",
"password": "admin",
"time": 5
}Returns a list of all available commands with metadata.
Most actions require the configured password for authorization. The default
password is admin — change it in Settings before exposing the app, and
keep it secret. ScriptLauncher can run arbitrary local commands, so treat
network access to it as equivalent to shell access on the machine.
- Fork this repo
- Create a new branch:
git checkout -b feature-name- Submit a pull request with clear description
MIT — Free to use, modify, and distribute.
Have a question or idea? Use GitHub Issues to start a discussion or report a bug.
Built with 💻 by @josephdadams