A year ago this project was eight files that logged into Discord as a person rather than as an application, which is the category of software Discord bans accounts for. It is now listed in Discord's own App Directory.
The listing sits on Discord's App Directory — an install button, five screenshots, an overview, and the furniture that comes with being catalogued: a Utilities category, three supported languages, a declared permission set, and links to a Terms of Service and a Privacy Policy that have to resolve to real pages. It is worth being accurate about what that means. A directory listing is not a quality award. It certifies that an application is verified, that it discloses what data it touches and for how long, and that it passed a review. It is a floor, not a ceiling. What makes it worth writing about is how far above the starting point that floor turned out to be.
The first commit in the repository is dated 26 August 2025 and is called GO BLOX v1.2.0. Eight files, 540 lines, two dependencies, and a package named goblox-assistant-bot. The entire program was seventeen lines of main.js that initialised a logger, a welcomer, a forwarder and a chatbot. The first import was discord.js-selfbot-v13 — a library for automating a user account. Discord's terms prohibit it and accounts get removed for it. This did not begin as a bot that was going to be listed by Discord one day. It began as the specific thing Discord takes down.
Nothing happened for seven weeks. Then, on 15 October 2025, three commits in a single day, the last of which was called Adding official bot. It split the codebase in two: one bot that logs in as an application the way Discord intends, and one that does not. Version 3.0.0 shipped two days later. Every feature the project has grown since came out of the official half of that one diff, and the decision cost almost nothing at the time because the whole thing was still small enough to fork cheaply.
The year that followed was not disciplined and there is no point pretending otherwise. Two months produced no commits at all. Two more produced exactly one each. One month produced 395. It ran in bursts, and the thing that mattered was not consistency but that every return found a codebase that still ran. It ended the year at 1,040 commits, 79 merged pull requests, 391 files and 93,253 lines of TypeScript, Svelte and SQL, in the same repository that started with eight files.
The most surprising part is that almost none of the final stretch was features. Getting listed meant writing 333 lines of Terms of Service and Privacy Policy, structured as data rather than prose, enumerating every third party the bot hands information to — CoinGecko, Google, OpenAI, Roblox, TikTok, MediaWiki — each linked to its own policy. That document was the first time the full list existed in one place, and it was longer than expected. A privacy policy promising deletion also has to be backed by something that deletes, so a seven-day retention window and a purge that actually runs went in behind it; before that, leaving a server meant the data stayed indefinitely, because nobody had ever asked what the answer to that question was. The rest was a dependency audit, a security policy, and the licence and contribution files that turn a repository you own into a project someone else could join. Becoming official was a week of writing down what was already being done, discovering in a few places that it was not, and then doing it.
Two things are worth stating plainly rather than leaving for someone to find in the source. The original selfbot code is still in the tree as a separate, opt-in bot type, and its dependency is still in the manifest — it is not what got listed, but it is still there. And the reservations published here last month have not been resolved by a directory entry: the zero-edge wagering game, the task metrics that pay members for wagering, and the items built for taking experience points off other people are all still in it. Being findable by strangers makes each of those a slightly larger question, not a smaller one. A listing is a distribution event, not an absolution.
All of which is true at the same time as this. Nobody funded it, there is no team, it is free and MIT licensed, and one person merged all seventy-nine pull requests and reviewed none of them. The best measure of the year is not the line count. It is that being forced to write down what the software promises exposed a gap between the promises and the code that took a week to close. A year ago it would have taken a rewrite. The panel is at bot.dansday.com and the source is on GitHub.