Kumiko is a versatile Telegram bot written in TypeScript using Deno and the Grammy framework. It serves as both an anime information bot and a moderation tool for Telegram groups.
- Utilizes the Shikimori API to fetch anime details
- Two ways to search for anime:
- Inline mode:
@kumikorobot name - Command:
/anime name
- Inline mode:
(For admins and owners - wield your power wisely!)
/ban: Give a troublemaker an extended vacation from the chat/mute: Put a chatty user's keyboard on silent mode/unban: Grant a banned user a second chance at redemption/unmute: Restore a muted user's voice to the chat/warn: Issue a yellow card to a user who's skating on thin ice/unwarn: Erase a warning and wipe the slate clean/admin: Add new admin
Remember: Three strikes and they're out! (3 warnings = automatic ban)
- Uses middlewares to detect and handle:
- Admin users
- Owner
- Regular users
- Currency exchange functionality
- Post Github Webhook Updates in a Group
- Language: TypeScript
- Runtime: Deno
- Framework: Grammy (Telegram Bot API framework for Deno)
- Deployment: Deno Deploy
As Kumiko is a Telegram bot, there's no need for end-users to install anything.
To add Kumiko to your Telegram group, simply search for @kumikorobot on
Telegram and start a chat or add it to your group.
- Inline mode: In any chat, type
@kumiko_botfollowed by the anime name you want to search for. - Command mode: In a chat where Kumiko is present, use
/animefollowed by the anime name.
(Only available for admins and owners)
/ban,/mute,/unban,/unmute: Manage user restrictions/warn,/unwarn: Manage user warnings Note: 3 warnings result in an automatic ban, resetting the warning count/admin: Promote user to an admin
Simply type an amount followed by a valid currency code. Kumiko will respond with the equivalent amounts in UZS (Uzbek Som) and RUB (Russian Ruble).
Examples:
100 USD50 EUR1000 JPY
Kumiko automatically detects the currency and provides the exchange rates.
To set up the development environment:
- Install Deno: Deno Installation Guide
- Clone the repository:
git clone https://github.com/openexis/kumiko.git- Navigate to the project directory:
cd kumiko- Run the bot locally:
deno run -A --env --unstable-kv mod.ts-A- Allow all, in case we need access, in our case, we need access to network, kv and env variables, so instead of typing all of that I simply use this flag, the project doesn't have suspicious dependency or piece of code.--env- It is required to read env variables by Deno.--unstable-kv- As of know, as far as I know, KV feature is unstable, so it requires a special flag to use Deno KV.
Kumiko can be easily deployed using Deno Deploy. You will need to have a Deno Deploy account. Visit the website and sign up.
First, fork this repository by clicking Fork button or this link.
- Get your token from BotFather
HOSTshould be set toWEBHOOK- Optionally, set your organization name
Then copy your project URL, in my case https://akumarujon-kumiko-86.deno.dev/. Then navigate to /webhook route on browser.
Contributions to Kumiko are welcome! Please feel free to submit pull requests, create issues or spread the word.
This project is licensed under the MIT License - see the LICENSE file for details.












