Skip to main content

BySalim — AI agent that controls your computer via Telegram

Project description

📱 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 by bysalim init)
  • A Telegram bot token (free, from @BotFather)
  • An API key for your chosen AI provider

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bysalim-2.0.2.tar.gz (61.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bysalim-2.0.2-py3-none-any.whl (62.4 kB view details)

Uploaded Python 3

File details

Details for the file bysalim-2.0.2.tar.gz.

File metadata

  • Download URL: bysalim-2.0.2.tar.gz
  • Upload date:
  • Size: 61.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0rc1

File hashes

Hashes for bysalim-2.0.2.tar.gz
Algorithm Hash digest
SHA256 06facd41c81ba16acb950a40d3a52d24ef3903f5c9ba16d081d3e47745b90b55
MD5 98e9f9dde8d46291c3a0311006f87b7d
BLAKE2b-256 9119d0f9872052ea3fc0759e7708626bde4bf24a24dd78eebf4bac8a93778d1d

See more details on using hashes here.

File details

Details for the file bysalim-2.0.2-py3-none-any.whl.

File metadata

  • Download URL: bysalim-2.0.2-py3-none-any.whl
  • Upload date:
  • Size: 62.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0rc1

File hashes

Hashes for bysalim-2.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e4cf3e1cb9f281d9b693593e93b90604ef2e129928089cc92be7be5f424ef2f2
MD5 d45936dc8dcc531d329f91da063a10ae
BLAKE2b-256 881ec7d61da3893cd2baf5282cb670fc9d8e018e92d93999f014e068d81e296a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page