📱 BySalim
BySalim is an AI-powered background agent that lets you control your computer via Telegram using plain natural language.
Features
- Natural language commands → the AI maps your words to the right tool automatically
- 40+ built-in tools — system health, screenshots, weather, shell, file management, reminders, volume, clipboard, and more
- 9 AI providers supported out of the box (OpenAI, Anthropic, Groq, Together, NVIDIA, Mistral, Cohere, Zhipu, OpenRouter) — several offer free tiers
- Encrypted config — your API keys and Telegram token are stored with Fernet symmetric encryption
- Dangerous-action confirmation — shell commands and deletes require a tap of ✅ before executing
- No external dependencies beyond stdlib + 3 packages (
click,psutil,cryptography) - Cross-platform — macOS, Linux, Windows
Quick Start
pip install bysalim
bysalim init # one-time interactive setup (~2 minutes)
bysalim run # start the agent in the foreground
Background daemon
nohup bysalim run &
Stop / check
bysalim stop
bysalim status
bysalim doctor # full diagnostic
CLI Reference
| Command | Description |
|---|---|
bysalim init |
Interactive setup wizard |
bysalim init --reconfigure |
Re-run setup (overwrites existing config) |
bysalim run |
Start the agent (foreground) |
bysalim run --background |
Start as a background daemon |
bysalim stop |
Gracefully stop the agent |
bysalim status |
Show running status and config summary |
bysalim doctor |
Full diagnostic (deps, connectivity, config) |
Telegram Commands
| Command | Description |
|---|---|
/start |
Welcome message & examples |
/help |
List all commands |
/health |
CPU / RAM / disk overview |
/screenshot |
Capture and send screen |
/weather <city> |
Current weather |
/ls [path] |
List directory contents |
/run <cmd> |
Run a shell command (with confirmation) |
/ps |
Top processes |
/battery |
Battery status |
/ping [host] |
Network latency |
/memory |
RAM usage |
/disk [path] |
Disk usage |
/time |
Current date/time |
/clear |
Clear AI conversation memory |
Or just type anything in natural language!
Natural Language Examples
how's my cpu?
take a screenshot
what's the weather in Paris?
remind me in 30 minutes to call mom
list files in ~/Downloads
show me the contents of /etc/hosts
run df -h
what's my IP?
calculate 12 * (3 + 7)^2
kill process firefox
open https://news.ycombinator.com
check if google.com is reachable
Available Tools
| Tool | Description |
|---|---|
system_health |
CPU, RAM, disk, swap, top processes |
uptime |
System uptime and boot time |
battery |
Battery level and charging status |
network_stats |
Network I/O and active connections |
list_processes |
All running processes |
kill_process ⚠️ |
Terminate by PID or name |
run_shell ⚠️ |
Execute any shell command |
list_directory |
Directory listing |
read_file |
Read a text file |
write_file ⚠️ |
Write/append to a file |
delete_file ⚠️ |
Delete a file or directory |
copy_file |
Copy file or directory |
move_file ⚠️ |
Move or rename |
search_files |
Find files by name pattern |
create_directory |
Create directory tree |
disk_usage |
Disk space for a path |
screenshot |
Full-screen capture |
get_volume |
Current volume level |
set_volume |
Set volume 0–100 |
mute_volume |
Mute audio |
get_clipboard |
Read clipboard |
set_clipboard |
Write to clipboard |
weather |
Current weather (open-meteo, free) |
ping |
Ping a host |
internet_speed |
Connectivity check |
open_url |
Open URL in browser |
open_application |
Launch an app |
datetime |
Current date/time/timezone |
reminder |
Timed Telegram reminder |
python_info |
Python version and packages |
env_vars |
Environment variables |
git_status |
Git repo status |
git_log |
Recent commits |
pip_install ⚠️ |
Install Python package |
pip_list |
List installed packages |
calculate |
Safe math evaluation |
word_count |
Word/char/line count |
⚠️ = requires confirmation tap before execution
Configuration
Config is stored in:
- Linux:
~/.local/share/bysalim/data/ - macOS:
~/Library/Application Support/bysalim/data/ - Windows:
%APPDATA%\bysalim\data\
The API key and Telegram token are encrypted at rest using a Fernet key stored at data/.enc_key (permissions: 600).
Requirements
- Python 3.10+
click,psutil,cryptography(auto-installed bybysalim init)- A Telegram bot token (free, from @BotFather)
- An API key for your chosen AI provider
License
MIT
Metadata
Release files for bysalim 2.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| bysalim-2.0.2.tar.gz | 61.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| bysalim-2.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 123.6 kB
Release files / bysalim-2.0.2.tar.gz
| Download URL | bysalim-2.0.2.tar.gz |
|---|---|
| Size | 61.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
06facd41c81ba16acb950a40d3a52d24ef3903f5c9ba16d081d3e47745b90b55
|
|
BLAKE2b-256 checksum How to use checksums |
9119d0f9872052ea3fc0759e7708626bde4bf24a24dd78eebf4bac8a93778d1d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.0rc1
|
Release files / bysalim-2.0.2-py3-none-any.whl
| Download URL | bysalim-2.0.2-py3-none-any.whl |
|---|---|
| Size | 62.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e4cf3e1cb9f281d9b693593e93b90604ef2e129928089cc92be7be5f424ef2f2
|
|
BLAKE2b-256 checksum How to use checksums |
881ec7d61da3893cd2baf5282cb670fc9d8e018e92d93999f014e068d81e296a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.0rc1
|