{"id":16876177,"url":"https://github.com/fuyukai/brooks","last_synced_at":"2025-03-19T04:41:48.184Z","repository":{"id":114486426,"uuid":"245403944","full_name":"Fuyukai/Brooks","owner":"Fuyukai","description":"Brooks GPT bot","archived":false,"fork":false,"pushed_at":"2020-03-24T17:17:04.000Z","size":28,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-25T03:39:49.854Z","etag":null,"topics":["bot","gpt","gpt-2","gpt2","python","python3","twitter","twitter-bot"],"latest_commit_sha":null,"homepage":null,"language":"Python","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/Fuyukai.png","metadata":{"files":{"readme":"README.rst","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":"2020-03-06T11:35:44.000Z","updated_at":"2020-09-19T06:50:16.000Z","dependencies_parsed_at":"2023-06-11T03:31:21.152Z","dependency_job_id":null,"html_url":"https://github.com/Fuyukai/Brooks","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fuyukai%2FBrooks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fuyukai%2FBrooks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fuyukai%2FBrooks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fuyukai%2FBrooks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Fuyukai","download_url":"https://codeload.github.com/Fuyukai/Brooks/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244358339,"owners_count":20440355,"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":["bot","gpt","gpt-2","gpt2","python","python3","twitter","twitter-bot"],"created_at":"2024-10-13T15:38:27.877Z","updated_at":"2025-03-19T04:41:48.166Z","avatar_url":"https://github.com/Fuyukai.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Brooks\n======\n\n`See Brooks in action \u003chttps://twitter.com/subahive\u003e`_\n\nBrooks is a Twitter bot for posting tweets from a pre-populated tweet list generated by the\ngpt2-simple package.\nBrooks requires Python 3.7+ and the Poetry tool installed.\nBrooks is licenced under the GPL version 3.0 (or later).\n\nInstallation\n------------\n\n1. Clone this repository\n2. ``poetry install``\n3. Set up your bots in the ``bots/`` directory\n4. ``poetry run python3.7 bot.py``\n\nBot Setup\n---------\n\nBrooks will tweet out a random tweet from the tweet list for every single bot simultaneously.\nA bot is defined by a folder under ``bots/``, with a ``bot.json`` defining the API keys and a\n``tweetlist.txt`` defining the tweets to be tweeted.\nExample ``config.json``:\n\n.. code-block:: json\n\n    {\n        \"api_key\": \"...\",\n        \"secret_key\": \"...\",\n        \"token\": \"...\",\n        \"secret_token\": \"...\"\n    }\n\nThe tweet list must delimit all tweets with the EXACT STRING ``====================``. If your\ntweets are generated from the gpt2-simple library, they will be correctly delimited.\n\nOtherwise, copy/paste that string and ensure all tweets to be posted are separated by it.\n\nTweets over 280 characters will be dropped from the list. Tweets will be sent the exact number of\ntimes they appear in the tweet list.\n\nBrooks will crash when it runs out of tweets from any bot.\n\nCheckpoints\n-----------\n\nBrooks will save a \"checkpoint\" file after every tweet is sent, to ensure that if the bot crashes\nor needs to be taken offline it will resume tweeting from where it left off. This is just a JSON\narray of all tweets not sent.\n\nEditing the tweet list whilst a checkpoint file exists will have no effect. Either edit the\ncheckpoint file, or delete the checkpoint file and allow the bot to run fresh from the tweet list.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffuyukai%2Fbrooks","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffuyukai%2Fbrooks","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffuyukai%2Fbrooks/lists"}