I have not enabled any Ai features as far as I am aware. But suddenly there are a whole lot of bot accounts i did not create. These appeared after the latest set of updates. Why did these get created and how can I get rid of them? I have no need of Ai for the forum.
AI-generated summary
Users reported the sudden appearance of numerous AI bot accounts on their self-hosted Discourse instances, despite not using AI features. Andro and Crocodilus_CZ expressed concern over these accounts being created without explicit consent or clear communication, questioning the level of control administrators have over their platforms.
Sam explained that this change is deliberate: previously, users were created per language model (e.g., gpt-6.1-bot), which was confusing. The new system creates a specific user for every enabled AI Bot agent to improve clarity. While nickdb noted that system accounts are part of standard updates, he agreed the change should have been more transparent. Satonotdead preferred the previous single-user approach for simplicity in chat integrations, though they acknowledged the benefits of task-specific agents.
To address immediate concerns, Sam provided steps to remove unwanted bots by disabling the “AI Bot” flag on the agent and deleting the user, confirming they would not return. However, when Petrikas reported that bots reappeared even with AI modules disabled, Sam linked a pull request fixing the issue so that bots are no longer created if AI features are disabled. Sam also announced plans to adjust the default installation experience to enable fewer AI bots initially. Crocodilus_CZ thanked the team for listening to feedback and resolving the issue quickly.
They are part of the build whether you use them or not, recently a single account for the agent was broken out to individual ones for the relevant features.
Something I also noticed. If the system will let you, can’t see why you can’t remove them and their dependencies, if you will never use them.
It’s something that is becoming integral to the platform, I couldn’t imagine anti-spam without the AI agent..
I still think it would be great to be able to use just one user for all the AI bots.
Keeping them separated by agent makes using them from chat or personal message users extremely complicated.
You could just create your own agent and bind the required, built-in, discourse tools to it.
I am also a fan of the less-is-more philosophy but there is something to be said about the agentic approach, being task-specific. Makes accuracy and consistency better imo.
This change is deliberate.
We used to create users per language model, this is very confusing and was very hard to explain.
Instead we now create a user for every AI agent that has AI Bot enabled. This is a far easier to explain state of affairs.
You have a user for “forum helper” cause you are allowing users to talk to “forum helper”
I know this was disruptive, but at least the current new state of affairs is a lot easier to explain.
Yeah, I understand there are technical limitations from time to time and the current new state of affairs is better than the original. I am grateful for all the effort the Core Team put into it.
I ended up adding Jev and using a Senior Bot to delegate tasks to subagents. This was not possible before, and I am happy testing it.
I find it rather concerning that a self-hosted Discourse instance can suddenly create a dozen AI bot accounts without my knowledge or consent, especially when I don’t use any AI features whatsoever.
What makes this even more troubling is that these accounts are created with elevated trust levels, apparently without any clear communication to administrators beforehand.
At what point does a self-hosted installation stop feeling like something I actually control? Is this still my platform, running on my own infrastructure, or am I simply expected to accept whatever changes Discourse decides to introduce, whether I want them or not?
I fully understand the need for security updates and improvements, but silently creating privileged accounts for features I never enabled is a different matter entirely.
I think the Discourse team should at the very least provide clear instructions on how administrators can safely remove these unwanted accounts, prevent them from being recreated, and effectively revert this change.
This really should have been opt-in, not something administrators discover by accident while reviewing their user list.
System accounts are part of any update, but I agree this change should have been more visible beyond an entry on github - though maybe I missed it.
A batch of new users appearing- we also scan for spam accounts being batch processed - did cause some concern, but it was easy enough to clarify by digging into the details and asking support.
As a hosted platform I would prefer this be a bit more transparent, there are plenty of mechanisms for communicating upcoming changes that can avoid unnecessary concern.
I hear you, this is one change that is not really doable in a practical way in an upcoming change, I can post release notes though.
I deleted all the service accounts we created for LLMs, it was a massive vector of complexity and confusion, every time an LLM is released you would have a weird gpt-6.1-bot account created. However now agents you interact with need service accounts.
I will see if we can change the first install experience to enable less AI bots. Maybe all we need is forum helper bot by default and then let admins discover all the other agents.
Thinking about this stuff.
Hello,
I’m failing to find this setting. I have all LLM features disabled where possible, “AI Bot module” disabled as well. Yet, when I remove the bot users they are re-created the next day.
Thank you in advance
Sorry about that, this will fix it so people with ai bot disable or ai disabled no longer get the bots:
Thanks, Sam. I really appreciate you taking the feedback seriously and fixing this so quickly.
Looking back, my original post was probably a bit harsher than necessary. Discourse is a great piece of software, and I genuinely appreciate the work you and the team put into it.
Mistakes happen, and it’s great to see developers listening to their community and acting on feedback. Thanks again!
