Discord

Engineering community systems

Year

2023-Present

Discord bot code

My role supporting the JonesySpaceCat YouTube and Twitch community on Discord began organically out of a genuine passion for the creator and their content. I joined the community in June 2022 and was an enthusiastic contributor to the daily conversation, sparking engagement in both Discord and YouTube comments. As the channel grew, I was asked to step up as the first member of the moderation team in 2023.

The initial focus was entirely cultural: fostering a strong sense of inclusion while fairly managing any disruptive behaviour.

As the community became more active, I came up with engagement and efficiency ideas that led to more ambitious technical projects. Rather than moderating everything manually, I began developing automated systems to handle backend processes, all in pursuit of a better experience for both the moderation team and our users.

What was the biggest problem?

Keeping track of a rapidly growing Discord server where new content is released almost daily can be overwhelming, especially when users are identified by constantly changing avatars and usernames.

The server featured over 30 distinct channels that require continuous updates and curation. Furthermore, user behaviour is managed on a three-strike system; manually tracking and remembering which users already had infractions quickly became an unsustainable administrative burden for the moderation team.

“Despite scattered tools, there was no unified system available to act as a comprehensive, brand-aligned support agent.”

While there were various off-the-shelf integrations and procedural bots handling legacy functionality, they required constant maintenance and customising to fit the specific tone and brand of the creator. Despite these scattered tools, there was no unified system available to act as a comprehensive, brand-aligned support agent.

Running CI/CD pipelines
Running CI/CD testing pipelines

Bringing unity to chaos

After establishing myself in the moderator role and discussing the ongoing challenges with Jonesy, it was clear her self-described "agent of chaos" approach to community organisation needed more structural support. I immediately conducted a comprehensive audit of the existing channels. By evaluating their specific purpose and framing, I proposed closing redundant spaces, renaming others for immediate clarity, and introducing a select few to encourage entirely new types of engagement.

Beyond just restructuring, I made strategic branding decisions to standardise the channel categories and the automated text used for various server functions. I aligned all of this terminology with the creator's existing brand identity, which is heavily inspired by the 1979 film Alien.

Carefully applying these thematic touches brought the community's presentation into sharp focus. This structured foundation ultimately served as a springboard for Jonesy to refocus her branding across her other social platforms, creating a unified, multi-channel experience even as her content output diversified into new subject areas.

Creating interactive experiences

Though this branded approach made the server more cohesive, it did not address the functionality challenges for the moderation team. There was also a strong desire to have a platform to launch new engagement ideas and experiences. This led me to explore the idea of an autonomous bot to address not only menial administrative tasks, but to be something members could genuinely interact with.

Despite not being a traditionally trained software engineer, I took a targeted, iterative approach. I spun up simple features in Python first, supported by Cline and Claude Sonnet 4.5 in Visual Studio Code, before iterating to more elaborate functionality. As the complexity grew, it became necessary to refactor the original monolith into a modular bot architecture, which vastly simplified ongoing maintenance and improved overall performance.

Cline asked to use my development as a model example
Cline asked to use my development as a model example
Ash-Bot runs database-generated Trivia Tuesday questions each week for members

Development was driven by a professional CI/CD pipeline in GitHub. I set up automated pytest testing and linting on a dedicated develop branch, allowing for rapid iteration without risking potentially breaking changes on the live server. From there, I branched stable releases to merge onto the main branch, whilst retaining the flexibility to deploy the odd hotfix directly to main when required. I also utilised the Google Gemini Code Review assistant on release branches as a second pair of eyes to scrutinise the code quality and offer alternative solutions.

“The bot, named 'Ash' after the android brought to life by the late Sir Ian Holm in the 1979 film, quickly became a beloved member of the server.”

The resulting features included a played games database, dynamic trivia question generation, and user strike tracking, all controlled via a natural language interface driven by Google's Gemini models. The bot, named "Ash" after the android brought to life by the late Sir Ian Holm in the 1979 film, quickly became a beloved member of the server, developing highly personalised interactions with users. Approaching content in this highly technical way added massive value to the community, proving to be a compelling reason for new users to join and interact with the Discord server.

CI/CD pipeline
CI/CD pipeline
Automated CI/CD testing pipeline
Ash-Bot natural user interaction
Ash-Bot natural user interaction
Live bot interaction

The user impact

The beauty of moderation is that when it is done well, the nuts and bolts of the operation are completely hidden from the audience. For a live Discord community, there is a delicate balance between introducing new features and preserving the established status quo. The goal is to avoid disruption while fostering the communication and engagement that allows the space to thrive.

“human contribution helps members feel confident to participate and ensures the mod team can actually enjoy the community themselves, rather than just acting as the speech police.”

Taking the manual elements out of the daily running of the server through reliable automation frees up time for authentic, human contribution. This helps members feel confident to participate and ensures the mod team can actually enjoy the community themselves, rather than just acting as the speech police. Furthermore, the bot brings a bit of welcome chaos of its own. There is a unique joy in users finding unexpected responses, conjured up by the complex layers of configuration and nuance that bring the character of Ash to life.

Applying my professional knowledge to this new, user-centred arena, driven by technology and coding tools I was using for the first time, is an achievement I am extremely proud of. To be a part of the continued success of the server, bringing fresh ideas that are warmly embraced by both the team and the community, is a real privilege. It is deeply encouraging to know that even in environments where people might not explicitly know what content design is, they inherently appreciate the value it brings.

Taking content to the next level

© 2026 James Parry

Taking content to the next level

© 2026 James Parry

Taking content to the next level

© 2026 James Parry