{"id":16467021,"url":"https://github.com/boxfrommars/wprot-twitch-bot","last_synced_at":"2026-04-15T00:32:02.055Z","repository":{"id":243246013,"uuid":"811889195","full_name":"boxfrommars/wprot-twitch-bot","owner":"boxfrommars","description":"Title bot for Twitch","archived":false,"fork":false,"pushed_at":"2024-06-18T21:22:05.000Z","size":43,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-28T02:25:24.141Z","etag":null,"topics":["bot","chatbot","openai","twitch","twitchio"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/boxfrommars.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-07T14:08:13.000Z","updated_at":"2024-07-16T12:21:05.000Z","dependencies_parsed_at":"2024-06-19T03:29:53.737Z","dependency_job_id":"f7410f63-fd8e-421c-99a5-9110eacd8cb1","html_url":"https://github.com/boxfrommars/wprot-twitch-bot","commit_stats":null,"previous_names":["boxfrommars/wprot-title-bot","boxfrommars/wprot-twitch-bot"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/boxfrommars/wprot-twitch-bot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxfrommars%2Fwprot-twitch-bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxfrommars%2Fwprot-twitch-bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxfrommars%2Fwprot-twitch-bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxfrommars%2Fwprot-twitch-bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/boxfrommars","download_url":"https://codeload.github.com/boxfrommars/wprot-twitch-bot/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxfrommars%2Fwprot-twitch-bot/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31821480,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T18:05:02.291Z","status":"ssl_error","status_checked_at":"2026-04-14T18:05:01.765Z","response_time":153,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bot","chatbot","openai","twitch","twitchio"],"created_at":"2024-10-11T11:45:49.349Z","updated_at":"2026-04-15T00:32:02.027Z","avatar_url":"https://github.com/boxfrommars.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Twitch Title Bot\n\nTwitch Bot that allows users to purchase a title with channel points. When the user sends their first message in chat after a long time, the bot announces the user using the title. If the `IS_AI_ENABLED` setting is enabled, the bot will respond to the purchased title using OpenAI and will also advertise title purchases based on the current category of the stream\n\n### Installation\n\n```sh\ngit clone ...\ncd wprotbot\npip install -r requirements.txt\ncp ./.env.example ./.env\n```\n\nSet enviroment variables:\n* `ACCESS_TOKEN` *(required)* You can get access token using `oauth.htm` file: open the file and click the `Get token` link. Accept the permissions, and after the redirect to localhost copy `access_token` from the url\n* `CHANNEL` *(required)* Bot must be a moderator on this channel\n* `REWARD_ID` *(required)* The ID of the reward that the user must purchase to get a title\n* `DB_NAME` *(optional, default `wprotbot.db`)* If the file doesn't exist, it will be created during the first run\n* `TITLE_COOLDOWN_SEC` *(optional, default 6 hours)* If the user hasn't written in the chat for a long time, then announce them after their message\n* `TITLE_LIFETIME_SEC` *(optional, default 2 weeks)* A title is purchased for this period\n* `GREETING_TEMPLATE` *(optional, default `{title} @{username}`)* Announcement template\n* `IS_AI_ENABLED` *(optional, default `False`)* If enabled, the bot will react to the purchased title using OpenAI.\n* `OPENAI_API_KEY` *(required if `IS_AI_ENABLED`)* OpenAI API Key\n* `REACT_TITLE_PROMPT` *(optional)* Prompt for the bot reaction\n* `AD_IN_GAME_PROMPT` *(optional)* Prompt for advertising the purchase of a title during the game\n* `AD_IN_GAME_QUERY` *(optional)* Query for advertising the purchase of a title during the game\n* `AD_NO_GAME_PROMPT` *(optional)* Prompt for advertising the purchase of a title outside of the game\n* `AD_NO_GAME_QUERY` *(optional)* Query for advertising the purchase of a title outside of the game\n* `AD_TEMPLATE` *(optional)* Title purchase advertising template\n\nRun bot:\n```sh\npython main.py\n```\n\n### Usage\n\nPurchase custom reward with `REWARD_ID` to get a title\n\nAvailable commands:\n* `!tit` or `!tit info` Get your title info\n* `!tit delete` Delete your title\n* `!tit info @wprotvbanke` *(moderators only)* Get information about the title of a given user\n* `!tit delete @wprotvbanke` *(moderators only)* Delete this user's title\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboxfrommars%2Fwprot-twitch-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fboxfrommars%2Fwprot-twitch-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboxfrommars%2Fwprot-twitch-bot/lists"}