{"id":15660536,"url":"https://github.com/database64128/cubicbot","last_synced_at":"2025-04-30T08:20:31.826Z","repository":{"id":36970839,"uuid":"361709939","full_name":"database64128/CubicBot","owner":"database64128","description":"A stupid and annoying chatbot for your group chats.","archived":false,"fork":false,"pushed_at":"2025-04-26T07:26:11.000Z","size":466,"stargazers_count":20,"open_issues_count":1,"forks_count":4,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-26T08:28:21.836Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/database64128.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null}},"created_at":"2021-04-26T10:32:55.000Z","updated_at":"2025-04-26T07:26:14.000Z","dependencies_parsed_at":"2023-10-17T05:51:16.114Z","dependency_job_id":"830be57f-7cda-4ce6-a879-2679a559bf0e","html_url":"https://github.com/database64128/CubicBot","commit_stats":{"total_commits":279,"total_committers":4,"mean_commits":69.75,"dds":0.5806451612903225,"last_synced_commit":"80d9a9c435a7d0d3ce92c03214e8f4490f5e527e"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/database64128%2FCubicBot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/database64128%2FCubicBot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/database64128%2FCubicBot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/database64128%2FCubicBot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/database64128","download_url":"https://codeload.github.com/database64128/CubicBot/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251666617,"owners_count":21624341,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-10-03T13:22:13.990Z","updated_at":"2025-04-30T08:20:31.762Z","avatar_url":"https://github.com/database64128.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# \u003cimg alt=\"Cubic Bot Logo\" src=\"icons/robot-love.svg\" width=\"40\" /\u003e Cubic Bot\n\n[![Build](https://github.com/database64128/CubicBot/actions/workflows/build.yml/badge.svg)](https://github.com/database64128/CubicBot/actions/workflows/build.yml)\n[![Release](https://github.com/database64128/CubicBot/actions/workflows/release.yml/badge.svg)](https://github.com/database64128/CubicBot/actions/workflows/release.yml)\n[![AUR badge for cubic-bot-telegram-git](https://img.shields.io/aur/version/cubic-bot-telegram-git?label=AUR%20cubic-bot-telegram-git)](https://aur.archlinux.org/packages/cubic-bot-telegram-git/)\n\nA stupid and annoying chatbot for your group chats.\n\n## Features\n\n- Modular architecture: Disable any module you don't need.\n- Adaptive design: Detect bot privacy mode and automatically disable incompatible features.\n- Easy maintenance: Register enabled commands on startup.\n\n## Modules\n\n### Commands\n\n#### 0. Personal\n\n- `/add_pronouns`: ➕ Add pronouns.\n- `/remove_pronouns`: ➖ Remove pronouns.\n- `/get_pronouns`: ❤️ Get someone's pronouns by replying to someone's message, or display your own pronoun settings.\n- `/set_default_pronouns`: 📛 Set or unset default pronouns for all chats.\n- `/set_preferred_pronouns`: 🕶️ Set or unset preferred pronouns for this chat.\n\n#### 1. Common\n\n- `/apologize`: 🥺 Sorry about last night.\n- `/chant`: 🗣 Say it out loud!\n- `/drink`: 🥤 I'm thirsty!\n- `/me`: 🤳 What the hell am I doing?\n- `/thank`: 🦃 Reply to or mention the name of the person you would like to thank.\n- `/thanks`: 😊 Say thanks to me!\n- `/vax`: 💉 This ain't Space Needle!\n\n#### 2. Dice\n\n- `/dice`: 🎲 Dice it!\n- `/dart`: 🎯 Oh shoot!\n- `/basketball`: 🏀 404 Basket Not Found\n- `/soccer`: ⚽ It's your goal!\n- `/roll`: 🎰 Feeling unlucky as hell?\n- `/bowl`: 🎳 Can you knock them all down?\n\n#### 3. Consent Not Needed\n\n- `/cook`: 😋 Who cooks the best food in the world? Me!\n- `/throw`: 🥺 Throw me a bone.\n- `/catch`: 😏 Catch me if you can.\n- `/force`: ☮️ Use of force not recommended.\n- `/touch`: 🥲 No touching.\n- `/fuck`: 😍 Feeling horny as fuck?\n\n#### 4. Not A Vegan\n\n- `/eat`: ☃️ Do you want to eat a snowman?\n\n#### 5. Law Enforcement\n\n- `/call_cops`: 📞 Hello, this is 911. What's your emergency?\n- `/arrest`: 🚓 Do I still have the right to remain silent?\n- `/guilty_or_not`: 🧑‍⚖️ Yes, your honor.\n- `/overthrow`: 🏛️ Welcome to Capitol Hill!\n\n#### 6. Public Services\n\n- `/call_ambulance`: 🚑 Busy saving lives?\n- `/call_fire_dept`: 🚒 The flames! Beautiful, aren't they?\n\n#### 7. Chinese\n\n- `/interrogate`: 🔫 开门，查水表！\n\n#### 8. Chinese Tasks\n\n- `/ok`: 👌 好的，没问题！\n- `/assign`: 📛 交给你了！\n- `/unassign`: 💢 不干了！\n\n#### 9. Systemd\n\n- `/systemctl`: `➡️ systemctl \u003ccommand\u003e [unit]`\n\n#### 10. Query Stats\n\n- `/get_stats`: 📅 View your stats in this chat, or reply to a message to view the sender's stats in this chat.\n- `/leaderboard_grass`: 🍀 View grass growth rankings in this chat.\n- `/leaderboard_demanding`: 👉 Who's the most demanding person in this chat?\n- `/leaderboard_talkative`: 🗣️ Who's the most talkative person in this chat?\n\n### Stats\n\n#### 1. Grass\n\nThe Chinese charater \"草\" is commonly seen in Chinese text messages. It could mean \"Damn.\", \"Shit.\", \"Fuck!\", or simply \"Awesome!\".\n\nThis stats counter counts each individual's usage of \"草\" in group chats and generates usage rankings. Say it when you feel like it to unlock achievements.\n\nThe counter also recognizes common variants and typos like \"cao\", \"艹\", \"c奥\", \"c嗷\", etc.\n\n#### 2. Command Usage Stats\n\nCounts command usage and generates the demanding leaderboard.\n\n#### 3. Message Counter\n\nCounts text messages and generates the talkative leaderboard.\n\n## Build\n\nPrerequisites: .NET 8 SDK\n\n### Build with Release configuration\n\n```bash\ndotnet build -c Release\n```\n\n### Publish as framework-dependent\n\n```bash\ndotnet publish CubicBot.Telegram.App -c Release\ndotnet publish CubicBot.Telegram.Tool -c Release\n```\n\n### Publish as self-contained for Linux x64\n\n```bash\ndotnet publish CubicBot.Telegram.App -c Release \\\n    -p:PublishSingleFile=true \\\n    -p:PublishTrimmed=true \\\n    -p:DebuggerSupport=false \\\n    -p:EnableUnsafeBinaryFormatterSerialization=false \\\n    -p:EnableUnsafeUTF7Encoding=false \\\n    -p:InvariantGlobalization=true \\\n    -r linux-x64 --self-contained\ndotnet publish CubicBot.Telegram.Tool -c Release \\\n    -p:PublishSingleFile=true \\\n    -p:PublishTrimmed=true \\\n    -p:DebuggerSupport=false \\\n    -p:EnableUnsafeBinaryFormatterSerialization=false \\\n    -p:EnableUnsafeUTF7Encoding=false \\\n    -p:InvariantGlobalization=true \\\n    -r linux-x64 --self-contained\n```\n\n## Usage\n\n```bash\n# See usage guide.\n$ cubic-bot-telegram-tool --help\n\n# Set bot token in config.\n$ cubic-bot-telegram-tool config set --bot-token \"1234567:4TT8bAc8GHUspu3ERYn-KGcvsvGB9u_n4ddy\"\n\n# Disable all stats.\n$ cubic-bot-telegram-tool config set --enable-stats-mod false\n\n# Check config.\n$ cubic-bot-telegram-tool config get\n\n# Start bot.\n$ cubic-bot-telegram-app\n```\n\n## License\n\n- This project is licensed under [GPLv3](LICENSE).\n- The icons are from [Material Design Icons](https://materialdesignicons.com/) and are licensed under the [Pictogrammers Free License](https://dev.materialdesignicons.com/license).\n- [`System.CommandLine`](https://github.com/dotnet/command-line-api) is licensed under the MIT license.\n- `System.Linq.Async` and `System.Interactive.Async` are from [dotnet/reactive](https://github.com/dotnet/reactive). They are licensed under the MIT license.\n- [`Telegram.Bot`](https://github.com/TelegramBots/Telegram.Bot) and [`Telegram.Bot.Extensions.Polling`](https://github.com/TelegramBots/Telegram.Bot.Extensions.Polling) are licensed under the MIT license.\n\n© 2024 database64128\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatabase64128%2Fcubicbot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdatabase64128%2Fcubicbot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatabase64128%2Fcubicbot/lists"}