Skip to content

mymanao/Manao-v4

Manao Logo

Manao

A collection of utilities and tools for Twitch and Kick streamers.

wakatime commits license
top language discord CoC version


NOTICE: Manao v4 will receive only critical bug fixes and security patches and will receive no new features. Meet the newer version of Manao at Manao v5 or its GitHub mirror


Table of Contents


πŸ€” About

Manao Bot is an open-source, multi-platform chatbot built for Twitch and Kick streamers. It provides out-of-the-box multilingual support (English and Thai) and integrates standard streamer utilities into a single application, eliminating the need to bridge multiple third-party bots.

Security & Architecture: Manao is entirely self-hosted. Your Twitch API credentials and broadcast tokens remain on your local machine and are never routed through external proprietary servers.

Note: Manao operates with a Twitch-first architecture. Kick users can sync their accounts, but an active Twitch integration is structurally required and cannot be opted out of.


πŸ“– Wiki & Documentation

For comprehensive setup guides and API references, please visit our dedicated documentation site. Both English and Thai translations are fully supported.


πŸ“ Features

Chat Commands

Below is an overview of the core chatbot modules. For extended command flags and usage syntax, refer to the ManaoWiki.

Category Command Description
Moderation Announce Broadcast an announcement to chat.
Game Update the stream's current category/game.
Shoutout Trigger a native Twitch shoutout.
Stream Update the stream title.
Event Connect to external webhooks/events.
Economy Balance Check user wallet balance.
Gamble Wager currency.
Give Transfer currency to another user.
Autobet Execute multiple automated wagers.
Leaderboard Display top balances.
Set (Admin) Modify a user's balance.
Social Eat RNG food selection.
Hate / Love RNG affinity calculators.
Stomp Chat interaction command.
Info Help Output the standard help dialog.
Uptime Display current stream duration.
Version Output current bot build/version.
Link Bind a Twitch account to a Discord user.
Preferences Nickname Set local alias (syncs with Chat Overlay).
Currency Define the global currency string/emoji.
Language Toggle standard bot response language.
Music Song-* Standard queue management (sq, sd, rm, sk, sr, np).

Overlays

Manao exposes local web endpoints meant to be ingested as Browser Sources in OBS, Streamlabs, or other broadcast software.

Assuming default local hosting settings, add these URLs to your broadcast software:

  • Chat Overlay: http://localhost:3000/overlays/chat (Integrates with the Nickname command)
  • Event Feed: http://localhost:3000/overlays/feed (Integrates with Economy commands)
  • Music Player: http://localhost:3000/overlays/music
  • Soundboard: http://localhost:3000/soundboard/player

Entertainment & Audio

(Requires ManaoBot v2.2.0+)

  • Soundboard & Channel Points: You can map Twitch Channel Point redemptions directly to local audio files. Manage your mappings via the Local Rewards Manager. To trigger audio manually, use the Soundboard Controller.
  • Custom Chat Replies: The bot can parse chat for specific RegEx/keywords and output pre-defined responses. Configure these triggers at the Local Replies Manager.

πŸ‘‹ Contributing & Community

We welcome contributions from the community! Whether it's adding a new feature, fixing a bug, or expanding our multilingual support, please review our CONTRIBUTING.md guidelines before opening a Pull Request.

If you have questions about the codebase or want to discuss a feature request, feel free to drop into our Discord server.


πŸ“œ License

This repository is licensed under the GNU General Public License v3.0. For full legal details, refer to the GNU Official Website.


πŸ™‹‍♂️ FAQ & Troubleshooting

How do I configure my Twitch API credentials?

You must generate OAuth tokens for Manao to interface with Twitch.

  1. Create a New Application (not an extension) in the Twitch Developer Portal.
  2. Set the "OAuth Redirect URL" to http://localhost:3000/.
  3. Set Category to "Chat Bot" and Client Type to "Confidential".
  4. Copy your Client ID and Client Secret into your .env file.
  5. Install the TwitchCLI.
  6. Run the following command to generate your access token with the necessary scopes:
twitch token -u -s "user:edit user:read:email chat:read chat:edit channel:moderate moderation:read moderator:manage:shoutouts moderator:manage:announcements channel:manage:moderators channel:manage:broadcast channel:read:vips channel:read:subscriptions channel:manage:vips channel:read:redemptions channel:manage:redemptions moderator:read:followers bits:read"

Security Note: You must run this command twice—once while logged into your bot account, and once while logged into your broadcaster account. Ensure you log out of Twitch in your browser between runs. Append the resulting User Access Tokens and Refresh Tokens to your .env file accordingly.

Is Bun supported on Windows?

Yes. While historically limited to Unix environments, Bun is now natively supported on Windows. You can follow the Official Bun Windows Installation Guide. If you run into environment-specific issues, check the Bun Discord.

How do I interact with the Music Player in OBS?

Add http://localhost:3000/overlays/music as a Browser Source. To skip songs manually or adjust the YouTube Player volume:

  1. Right-click the Browser Source in OBS and select Interact.
  2. Use the pop-up window to scrub the timeline, pause, or adjust volume. (Note: Pausing the video here will not break the bot's internal queue logic).

How do I change the bot's command prefix?

The default prefix is defined in the source configuration. Open src/config.ts in your editor, locate the PREFIX constant, and modify the string to your preferred character(s).

How do I report a security vulnerability or get direct help?

For general troubleshooting, feel free to ask in the Discord server or open an issue on the GitHub tracker.

If you have discovered a security vulnerability, please do not open a public issue. Instead, join the Discord server and DM @acsp (Tin) directly.

About

twitch and kick chatbot and other stuff for twitch and kick also discord tooπŸ₯€πŸ‹

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Contributors