{"id":44203549,"url":"https://github.com/danth/axyn","last_synced_at":"2026-02-14T01:06:49.702Z","repository":{"id":48946743,"uuid":"230120321","full_name":"danth/axyn","owner":"danth","description":"A chatbot using rudimentary algorithms","archived":false,"fork":false,"pushed_at":"2026-02-09T21:26:14.000Z","size":756,"stargazers_count":0,"open_issues_count":11,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-02-10T00:25:39.496Z","etag":null,"topics":["chatbot","discord"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/danth.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-12-25T15:24:55.000Z","updated_at":"2026-02-09T21:26:16.000Z","dependencies_parsed_at":"2025-12-07T09:02:08.798Z","dependency_job_id":null,"html_url":"https://github.com/danth/axyn","commit_stats":null,"previous_names":[],"tags_count":81,"template":false,"template_full_name":null,"purl":"pkg:github/danth/axyn","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danth%2Faxyn","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danth%2Faxyn/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danth%2Faxyn/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danth%2Faxyn/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/danth","download_url":"https://codeload.github.com/danth/axyn/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danth%2Faxyn/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29427783,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-13T22:20:51.549Z","status":"ssl_error","status_checked_at":"2026-02-13T22:20:49.838Z","response_time":78,"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":["chatbot","discord"],"created_at":"2026-02-09T22:08:36.520Z","updated_at":"2026-02-14T01:06:49.680Z","avatar_url":"https://github.com/danth.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg\n    src=\"images/axyn.png\"\n    alt=\"Axyn logo\"\n  /\u003e\n\u003c/p\u003e\n\n# Axyn\n\nA chatbot using rudimentary algorithms.\n\n![Screenshot of an example conversation](images/Screenshot_20200426_124703.png)\n\n## Instructions for users\n\n### Teaching Axyn\n\nEverything Axyn can say is a quote from a conversation it's seen in the past.\nAs you have real conversations, it will pick up on phrases you use, and\neventually repeat them back to you.\n\nFor Axyn to turn a message into a quote, it needs to match it up with a\nprevious message. This is so it has some context to know when the quote is\nrelevant. Using the reply button helps to make this more accurate, especially\nin busy channels.\n\n### Getting a reply\n\nAxyn will occasionally join in with real conversations. The chance of this\nhappening increases as Axyn learns more, but decreases when there are more\npeople in the chat.\n\nIf you seem to be talking to Axyn directly, then it is guaranteed to respond.\nThere are a few things you can do to trigger this:\n\n- Pinging it\n- Hitting reply on one of its messages\n- Sending it a direct message\n- Sending a message in a channel called `#axyn`\n\n### Maintaining privacy\n\nAxyn will only quote you if you give it permission to do so. You can do this by\ntyping `/consent` and making a choice from the menu. Alternatively, if it's\nable, Axyn will invite you to consent the first time you interact with it.\n\nYour consent choice applies retrospectively, so after you accept, Axyn may\ncollect historic messages from channels it can see. Similarly, removing consent\nwill erase all messages that were previously collected.\n\nTo avoid leaking private information, it is strongly recommended to choose the\nmiddle option. This means your messages can only be shared if everyone who\nwould see the quote can already see the original. For example, messages from\na group chat with you and a friend could be used in Axyn's direct messages to\nthat friend, but they could not be used in a larger server.\n\nThe top option requires extreme caution because it effectively makes all of\nyour messages public. However, it can be useful if you want to port quotes\nbetween different groups of friends, or feed Axyn lines in direct messages and\nhave them spontaneously appear.\n\n## Instructions for channel owners\n\nAxyn needs the following permissions to work fully:\n\n- Send messages\n- Embed links\n- Manage slash commands\n\nYou should remove its permission to send messages in important channels, such\nas those for announcements.\n\nYou should also ensure Axyn is not given permission to ping everyone.\n\n## Instructions for the bot owner\n\nObtain a bot token from the\n[Discord developer portal](https://discord.com/developers/applications).\nAccess to server members and message content must both be enabled.\n\nThen, run the following commands, inserting your bot token as shown.\n\n```sh\npython -m pip install -e .\nDISCORD_TOKEN=… python -m axyn\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanth%2Faxyn","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdanth%2Faxyn","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanth%2Faxyn/lists"}