Hikkaduwa is a powerful and modular Telegram userbot. This fork, maintained by Penggrin, aims to be a lightweight version of the upstream Hikka project developed by Dan Gazizullin (hikariatama).
- Modular Architecture: Easily extend functionality by loading custom modules.
- Inline Features: Supports inline forms, galleries, lists, and custom inline command handlers via its own bot.
- Configuration System: Interactive configuration for modules and core settings (
.config
command). - Terminal Access: Execute shell commands directly from Telegram.
- API Rate Limiting: Built-in protection against hitting Telegram API limits.
- Code Evaluation: Evaluate Python code on the fly.
- Advanced Logging: Configurable logging levels and Telegram log forwarding.
- Help System: Get help for specific modules or list all available commands.
- Translations: Supports multiple languages through language packs.
- Aliases: Create custom shortcuts for commands.
- Watchers: Automate actions based on incoming/outgoing messages with various filters.
- Python: 3.9 or higher (haven't yet tested on <3.12)
- UV: The
uv
package installer is recommended (Installation Guide). - Telegram API Credentials: API ID and API Hash from https://my.telegram.org.
- Dependencies: See
pyproject.toml
for the full list (includestelethon
,aiogram
,requests
, etc.). These are installed automatically byuv
. - FFMPEG: (Optional) Required by some modules for media processing.
- Install
uv
(if you haven't already): Follow the officialuv
installation instructions. A common method is:# Linux/macOS curl -LsSf https://astral.sh/uv/install.sh | sh # Windows (requires Python installed) pip install uv # Or see other methods like pipx, brew, etc. in the uv docs
- Clone the repository:
git clone https://github.com/penggrin12/Hikkaduwa.git cd Hikkaduwa
- Create and activate a virtual environment:
uv sync
- Run:
- Run the userbot for the first time:
uv run python -m hikka
- Follow the on-screen instructions to enter your Telegram API ID and API Hash.
- Then, You will be prompted to log in using either your phone number or a QR code.
- Run the userbot for the first time:
- Command Prefix: By default, commands start with
.
(e.g.,.help
,.ping
). This can be changed using.setprefix
. - Inline Bot: Use the userbot's features inline by mentioning its associated bot username (obtained during setup or via
.ch_hikka_bot
). - Help: Use the
.help
command to see available modules and commands. Use.help <module_name>
for specific module help. - Configuration: Use the
.config
command for an interactive menu to configure modules and core settings.
This project is licensed under the GNU Affero General Public License v3.0 (AGPLv3). See the LICENSE file for details.
- Fork Developer: Penggrin
- Upstream GitHub Repository: https://github.com/hikariatama/Hikka
- Upstream Developer: Dan Gazizullin (hikariatama)