Control your entire laptop from Telegram โ screenshots, shell, files, processes, power, browser automation, SSH, vision AI, TTS, scheduler, QR, speed test, file watcher, and more.
Project description
๐ฅ๏ธ Salim โ Control Your Laptop from Telegram
Type a message on your phone. Your laptop does it.
Screenshots ยท Files ยท Shell ยท Volume ยท Apps ยท Mic ยท AI ยท SSH ยท Vision ยท TTS ยท Browser
๐ค What Is This?
Salim turns your laptop into a bot you can control from anywhere in the world using Telegram.
Left your laptop at home? Need to grab a file? Want to check if it's overheating? Need to mute the volume?
Just text your bot. It does it.
You: "open chrome"
Salim: ๐ Launched Google Chrome
You: "mute the volume"
Salim: ๐ Muted
You: "find my day 3 recording"
Salim: ๐ Found 3 results:
1๏ธโฃ ๐ฌ Day3_recording.mp4 โ ~/Videos โ 2.1 GB
[โฌ๏ธ Send] [๐ Open] [โถ๏ธ Play] [๐๏ธ Del]
You: "record 20 seconds of audio"
Salim: ๐๏ธ Recording 20s... โ sends voice message inline
โก Get Started in 3 Minutes
Step 1 โ Install
pip install salim
That's it. All dependencies install automatically after this one command.
Step 2 โ Setup
salim setup
Wizard asks you for:
- A Telegram bot token from @BotFather (takes 30 seconds)
- Your Telegram user ID (find it at @userinfobot)
- Optional: free AI API keys (NVIDIA / Groq / Z.AI)
Step 3 โ Start
salim start
Open Telegram โ find your bot โ send /start โ you're in control.
๐ค AI Mode โ Just Type Naturally
| You type | Salim does |
|---|---|
open spotify |
Launches Spotify |
mute |
Mutes volume |
set volume to 60 |
Sets volume to 60% |
find my day 3 video |
Searches laptop, shows file buttons |
take a screenshot |
Sends screenshot |
how's my battery |
Reports battery level |
record 30 seconds of audio |
Records mic, sends voice message |
open youtube |
Opens YouTube in browser |
create a resume |
Generates Word document |
what's running |
Lists active processes |
shutdown |
Confirms then shuts down |
๐ Full Command Reference
Every command is also listed in Telegram's / menu โ tap / to see them all.
๐ฅ๏ธ System
/info Full system overview
/cpu CPU usage & cores
/mem RAM usage
/disk Disk space
/battery Battery level & status
/network Network info & IP
/uptime System uptime
/top Live resource monitor
/ps [name] List processes
/kill <pid> Kill a process
๐ป Shell
/run <cmd> Run shell command
/runbg <cmd> Run in background
/pipe <cmd> Pipe command
/env Environment variables
/which <prog> Find executable path
/cron <sched> <cmd> Add cron job
/cronjobs List cron jobs
/cronstop <id> Remove cron job
๐ Files
/ls [path] List directory
/cd <path> Change directory
/pwd Current directory
/cat <file> Read file contents
/stat <file> File info & size
/find <pattern> Find files
/grep <pattern> Search text in files
/mkdir <name> Create folder
/rm <path> Delete file/folder
/mv <src> <dst> Move/rename
/cp <src> <dst> Copy file
/write <file> <txt> Write to file
/download <path> Send file to Telegram
/upload Receive file from Telegram
/zip <path> Create zip
/unzip <file> Extract zip
๐ธ Screen & Input
/screenshot [delay] Take screenshot
/ss Quick screenshot
/stream [interval] [s] Live screen stream
/streamstop Stop stream
/type <text> Type on keyboard
/key <shortcut> Press key (e.g. ctrl+c)
/click <x> <y> Mouse click
/scroll <n> Scroll up/down
/move <x> <y> Move mouse
/mousepos Get mouse position
/brightness <0-100> Screen brightness
๐ Open App / File / URL
/open chrome โ Launches Google Chrome
/open spotify โ Launches Spotify
/open terminal โ Opens Terminal
/open ~/file.pdf โ Opens with default viewer
/open https://x.com โ Opens in browser
All common apps supported: chrome firefox safari brave edge vscode spotify discord slack zoom telegram vlc obs gimp terminal steam and more.
๐ Volume Control
/volume Show current volume with progress bar
/volume 75 Set to 75%
/volume up Increase 10%
/volume down Decrease 10%
/volume mute Mute
/volume unmute Unmute
/volume toggle Toggle mute on/off
Uses pulsectl (Linux), osascript (macOS), pycaw (Windows).
๐ Clipboard
/paste Read clipboard (text or image)
/copy <text> Copy text to clipboard
/copyphoto Reply to photo โ copies it to clipboard
๐๏ธ Microphone Recording
/mic Record 10 seconds (default)
/mic 30 Record 30 seconds
/mic 60 Record 60 seconds (max 120)
/mictest List available microphone devices
Sends as an inline voice message that plays in Telegram. Uses PyAudio โ WAV โ OGG Opus via ffmpeg.
๐ฃ๏ธ Text-to-Speech
/tts <text> Speak text aloud on laptop
/say <text> Same as /tts
/tts_lang <code> Set language (en, ar, fr, ...)
/tts_speed <0.5-2> Set speed
/tts_engine Switch online/offline engine
/tts_voice List/set voices
๐ Browser Automation (Playwright)
/browse <url> Open URL + send screenshot
/browse_click <selector> Click CSS selector or text
/browse_type <sel> <text> Type in form field
/browse_scroll [direction] Scroll page
/browse_js <code> Run JavaScript
/browse_back Navigate back
/browse_get <url> Fetch page HTML
/browse_close Close browser session
๐ SSH Remote Control
/ssh_add <alias> <user@host> [port] Register host
/ssh <alias> <command> Run remote command
/ssh_list List hosts
/ssh_remove <alias> Remove host
/ssh_upload <alias> <local> <remote> Upload file
/ssh_download <alias> <remote_path> Download file
๐๏ธ Vision AI
Send any photo โ ask questions about it:
"what error is shown?" / "read this text" / "what app is open?"
/vision Status & instructions
/vision on Auto-describe all photos
/askvision <q> Ask about last photo
๐ท Camera & Recording
/cam Webcam snapshot
/cam list List cameras
/record <secs> Screen recording
๐ Alerts
/alert add cpu > 80 Alert when CPU > 80%
/alert add mem > 90 Alert when RAM > 90%
/alert add battery < 20 Alert when battery < 20%
/alert list List alerts
/alert del <id> Remove alert
๐ Document Writer
/doc resume AI-generated resume (.docx)
/doc invoice Invoice spreadsheet (.xlsx)
/doc cover letter Cover letter (.docx)
/doc budget Budget spreadsheet (.xlsx)
/doc report Business report (.docx)
/doc memo Office memo (.docx)
๐งโ๐ป AI Code Runner
/code build a Python script that renames files in a folder
/code create a Flask API with user authentication
AI writes code โ runs it โ sends output + file.
๐ก๏ธ Security Guard
/guard on Arm intrusion detection
/guard off Disarm
/guard status Show status
/guard grace <secs> Set grace period
When armed: detects movement/input โ takes screenshot + webcam photo โ sends alert to Telegram.
๐ Power
/shutdown Shutdown (with confirmation)
/restart Restart (with confirmation)
/sleep Sleep/suspend
/hibernate Hibernate
/lock Lock screen
/logout Logout
โฐ Scheduler
/at 14:30 <command> Run at specific time
/every 30 min <command> Repeat every N minutes
/every 1 hour df -h Disk report every hour
/jobs List scheduled jobs
/jobcancel <id> Cancel a job
๐ฑ QR Code
/qr <text|url> Generate QR code image
/qrread Read QR code from photo you send
๐ Speed Test
/speedtest Download / upload / ping test
๐ File Watcher
/watch <path> Watch file/folder for any changes
/watchlist List active watchers
/watchstop <id> Stop a watcher
๐ Notes
/note <text> Save a quick note
/notes List all notes
/notedel <id> Delete a note
/noteclear Clear all notes
โ๏ธ Bot Management
/status Bot & system status
/config View/edit settings
/logs [n] Last N command logs
/history AI conversation history
/uploads Upload history
/voicestatus Voice transcription status
๐ Smart File Search
Type "find my day 3 recording" or "download the invoice" โ Salim:
- Extracts keywords using AI
- Searches your entire laptop (all folders)
- Shows results with action buttons per file:
๐ Found 2 results:
1๏ธโฃ ๐ฌ Day3_Recording.mp4
๐ ~/Videos/Course
๐พ 2.1 GB ยท 3 days ago
[โฌ๏ธ Send] [๐ Open] [โถ๏ธ Play] [๐๏ธ Del]
2๏ธโฃ ๐ day3_notes.txt
๐ ~/Documents
๐พ 4.2 KB ยท 3 days ago
[โฌ๏ธ Send] [๐ Open] [๐๏ธ Read] [๐๏ธ Del]
- โฌ๏ธ Send โ downloads file to Telegram
- ๐ Open โ opens file on laptop with default app
- โถ๏ธ Play โ plays video/audio in media player
- ๐๏ธ Read โ shows text file contents in chat
- ๐๏ธ Del โ deletes with confirmation
๐๏ธ Voice Commands
Send a voice note โ Salim transcribes it offline โ executes it as a command.
- No internet needed for transcription (faster-whisper, runs on CPU)
- No API key needed
- Model downloaded once (~150MB) on first use
- Supports auto-detection of 50+ languages
๐ Running as a Service
Linux (systemd โ recommended)
sudo tee /etc/systemd/system/salim.service << EOF
[Unit]
Description=Salim Telegram Bot
After=network.target
[Service]
User=$USER
ExecStart=$(which salim) start --no-banner
Restart=always
RestartSec=5
Environment=DISPLAY=:0
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable salim
sudo systemctl start salim
macOS (launchd)
cat > ~/Library/LaunchAgents/com.salim.bot.plist << EOF
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key><string>com.salim.bot</string>
<key>ProgramArguments</key>
<array>
<string>$(which salim)</string>
<string>start</string>
<string>--no-banner</string>
</array>
<key>RunAtLoad</key><true/>
<key>KeepAlive</key><true/>
</dict>
</plist>
EOF
launchctl load ~/Library/LaunchAgents/com.salim.bot.plist
๐ฆ Dependencies
All installed automatically. You never need to run a second pip command.
Auto-installed system libs if missing:
ffmpegโ for audio/video (sudo apt install ffmpegorbrew install ffmpeg)portaudio19-devโ for microphone on Linux (sudo apt install portaudio19-dev)
๐ Security
- Only your Telegram user ID can control the bot
- Config stored in
~/.salim/config.env(mode 600) - All commands logged to
~/.salim/audit.log - Destructive actions (shutdown, delete, kill) require inline confirmation
- Bot token never sent anywhere except Telegram API
๐ Troubleshooting
Volume not working (Linux):
pip install pulsectl
pulseaudio --check # ensure PulseAudio is running
Mic not working:
sudo apt install portaudio19-dev # Linux
pip install PyAudio
# Or: pip install sounddevice
/mictest # list devices in Telegram
App not opening:
which google-chrome # check it's installed
# Then: /open chrome
Playwright browser missing:
python -m playwright install chromium
Bot not responding:
salim status # check config
salim test # test Telegram connection
๐ License
MIT License โ see LICENSE
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file salim-1.11.0.tar.gz.
File metadata
- Download URL: salim-1.11.0.tar.gz
- Upload date:
- Size: 146.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.0rc1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3ee9ad423859c95b61cbfc5ee842137e2270f079573710fb385a1de52d5f2858
|
|
| MD5 |
353124c8fb10390628b359c049ddc6e7
|
|
| BLAKE2b-256 |
31d4d5f551c3b43c0ed27d39ca1dbbe46077bd7228b8858b04498afad0172142
|
File details
Details for the file salim-1.11.0-py3-none-any.whl.
File metadata
- Download URL: salim-1.11.0-py3-none-any.whl
- Upload date:
- Size: 162.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.0rc1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e06f4f36db321833bd28328c8a670e568b510d2fb978a36af672ee33b0746397
|
|
| MD5 |
975dff71017496dfa3c82b10b94f0c0e
|
|
| BLAKE2b-256 |
022e829f44c67ce5e6d27f057f2b4ce986bad6b1d2f4b32984835f891390172b
|