# סיכום שבועי של נושאי בינה מלאכותית

**URL:** https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532
**Category:** Forum summaries
**Created:** [30 בינואר,‏ 2024,‏ 8:44pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532 "2024-01-30T20:44:11Z")
**Posts on this page:** 20
**Page:** 6

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [9 במרץ,‏ 2026,‏ 7:02pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/113 "2026-03-09T19:02:16Z")

</div>

# Overview

This week’s AI conversations on Meta centered on **making Discourse AI clearer to users and easier to operate at scale**. On the product side, there was strong momentum to rename “AI Persona” to the more widely understood “AI Agent” (with translation workflow implications) in [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/8?silent=true) and follow-ups like [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/12?silent=true). Admin experience also got attention: sites with AI disabled were still seeing AI dashboards/reports, which was confirmed as a bug and routed into broader reporting work in [Don’t show AI reports if AI is not enabled](https://meta.discourse.org/t/-/397487/1?silent=true) and the related umbrella thread [Admin Reporting & Analysis: Incremental Changes](https://meta.discourse.org/t/-/395768/1?silent=true).

Operationally, the community dug into **cost/performance controls** and **scaling pain points** : Discourse rolled out OpenAI/Azure provider _service tiers_ in [Service tiers on Open AI providers](https://meta.discourse.org/t/-/397937/1?silent=true), while a large self-hosted instance reported severe load when turning on semantic embeddings search in [Enabling AI search crippled my server](https://meta.discourse.org/t/-/397869/1?silent=true). There was also continued refinement around AI-assisted UX—especially where AI touches localization and editor UI—in [Saving translations by AI-helper as content localization](https://meta.discourse.org/t/-/397477/1?silent=true) and [The title suggester ⭐ button is placed outside of the title field when editing a translated title](https://meta.discourse.org/t/-/397553/1?silent=true).

Finally, AI adjacent ecosystem work continued with MCP tooling: a practical setup guide landed for Codex CLI in [Discourse MCP Setup in OpenAI Codex CLI](https://meta.discourse.org/t/-/397662/1?silent=true), and was cross-linked back into the canonical announcement thread [Discourse MCP is here!](https://meta.discourse.org/t/-/386983/27?silent=true).

* * *

# Interesting Topics

- **Rename “AI Persona” to “AI Agent” (and handle the translation fallout)**  
@sam argued that “AI Persona” is confusing while “AI Agent” is broadly understood in [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/8?silent=true), with @Falco backing an ASAP change in [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/12?silent=true). @Moin raised the practical issue of updating _lots_ of translations and asked about efficient translator workflows in [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/9?silent=true) and [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/11?silent=true), while @sam pressed for whether the terminology aligns with industry usage across languages in [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/10?silent=true).

- **Bug: AI emotion/sentiment reports appear even when AI is disabled** (#Contribute > Bug, #ai-sentiment)  
@one1 spotted AI-related reports showing up on the admin dashboard with AI turned off in [Don’t show AI reports if AI is not enabled](https://meta.discourse.org/t/-/397487/1?silent=true), and @sam confirmed it’s a bug in [Don’t show AI reports if AI is not enabled](https://meta.discourse.org/t/-/397487/2?silent=true). @chapoi noted it’s part of a broader “all plugins” reporting visibility issue, and routed follow-up feedback into [Admin Reporting & Analysis: Incremental Changes](https://meta.discourse.org/t/-/397487/3?silent=true) (see also [Admin Reporting & Analysis: Incremental Changes](https://meta.discourse.org/t/-/395768/1?silent=true)).

- **OpenAI/Azure provider “service tiers” added (cost vs latency controls)** (#Announcements, #ai)  
Discourse shipped the ability to pick service tiers (standard/flex/priority) for OpenAI and Azure in [Service tiers on Open AI providers](https://meta.discourse.org/t/-/397937/1?silent=true), and pointed admins to the core configuration surface in [Discourse AI - Large Language Model (LLM) settings page](https://meta.discourse.org/t/-/319903/1?silent=true). The announcement also clarified reliability tradeoffs (especially flex) in [Service tiers on Open AI providers](https://meta.discourse.org/t/-/397937/1?silent=true).

- **UX bug: title-suggester star button mispositioned for translated titles** (#Contribute > UX, #ai-helper, #content-localization)  
@Moin reported the AI “⭐” title suggester button renders outside the title input when editing a translated title in [The title suggester ⭐ button is placed outside of the title field when editing a translated title](https://meta.discourse.org/t/-/397553/1?silent=true), with repro context pointing at translation UI states (example thread: [Request for Croatian language](https://meta.discourse.org/t/-/229249/1?silent=true)).

- **Feature idea: let AI Helper save a generated translation into Content Localization** (#Contribute > Feature, #ai-helper, #dynaloc)  
After using AI Helper to translate older posts, @Moin proposed a “save translation” flow right from the helper modal in [Saving translations by AI-helper as content localization](https://meta.discourse.org/t/-/397477/1?silent=true), suggesting parity with AI Helper’s “explain → add footnote” pattern as precedent in [Saving translations by AI-helper as content localization](https://meta.discourse.org/t/-/397477/1?silent=true).

- **Mobile UX regression around Suggested/Related tabs (AI suggested topics UI)** (#Contribute > UX, #suggested-topics)  
@Falco noticed the tabs disappearing on mobile and asked if it’s related in [The underline indicator below the “Suggested” and “Related” tabs](https://meta.discourse.org/t/-/397448/3?silent=true). @awesomerobot confirmed it _is_ related and pointed to an incoming fix in [The underline indicator below the “Suggested” and “Related” tabs](https://meta.discourse.org/t/-/397448/4?silent=true).

- **Theme component maintenance: AI Gists button compatibility with Modernized Foundation** (#Customization > Theme component, #ai)  
@Lilly refactored a theme component so formatting works with Modernized Foundation while keeping compatibility with the old Foundation theme in [Discourse Topic Excerpts & AI Gists Button](https://meta.discourse.org/t/-/394885/6?silent=true), tying into the broader theme effort in [Modernizing the Foundation theme](https://meta.discourse.org/t/-/395331/1?silent=true).

- **Performance/scaling: semantic embeddings search triggering high CPU and backlog** (#Support, #ai-search)  
A large instance reported search disruption and sustained CPU spikes after enabling semantic search in [Enabling AI search crippled my server](https://meta.discourse.org/t/-/397869/1?silent=true). @sam explained that long-running embedding jobs can be expected due to external API calls, but that high CPU is surprising and likely tied to DB/resource constraints in [Enabling AI search crippled my server](https://meta.discourse.org/t/-/397869/3?silent=true). @Falco asked for provider and DB details in [Enabling AI search crippled my server](https://meta.discourse.org/t/-/397869/4?silent=true), while @SubStrider shared specs and dataset size (2.5M posts / 250K topics) in [Enabling AI search crippled my server](https://meta.discourse.org/t/-/397869/5?silent=true). @rburkej also requested more “hardware profile” info for planning self-hosting in [Enabling AI search crippled my server](https://meta.discourse.org/t/-/397869/2?silent=true).

- **MCP tooling: Codex CLI setup guide for Discourse MCP** (#users, #mcp)  
@pacharanero published a step-by-step guide for using Discourse MCP with OpenAI Codex CLI in [Discourse MCP Setup in OpenAI Codex CLI](https://meta.discourse.org/t/-/397662/1?silent=true) and linked it back into the main announcement thread in [Discourse MCP is here!](https://meta.discourse.org/t/-/386983/27?silent=true).

- **Permissions hardening: Discourse AI bot groups shouldn’t allow “everyone”** (#Contribute > Bug, #ai-bot)  
In the ongoing thread, @Moin asked whether the “everyone” group should be disallowed for `ai_bot_allowed_groups` in [Discourse AI does not respect the “everyone” group](https://meta.discourse.org/t/-/292048/6?silent=true), and @sam agreed it should be removed (noting cleanup work planned) in [Discourse AI does not respect the “everyone” group](https://meta.discourse.org/t/-/292048/7?silent=true).

* * *

# Activity

- @sam drove several core decisions and debugging threads this week: pushing hard on terminology clarity in [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/8?silent=true) and aligning language/translation concerns in [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/10?silent=true); confirming the admin dashboard issue in [Don’t show AI reports if AI is not enabled](https://meta.discourse.org/t/-/397487/2?silent=true); shipping provider tier controls in [Service tiers on Open AI providers](https://meta.discourse.org/t/-/397937/1?silent=true) (with configuration context via [Discourse AI - Large Language Model (LLM) settings page](https://meta.discourse.org/t/-/319903/1?silent=true)); and troubleshooting embeddings performance in [Enabling AI search crippled my server](https://meta.discourse.org/t/-/397869/3?silent=true). He also backed tightening AI bot group options in [Discourse AI does not respect the “everyone” group](https://meta.discourse.org/t/-/292048/7?silent=true).

- @Moin focused on _localization + AI UX polish_: raising translation workflow concerns for the proposed rename in [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/9?silent=true) and clarifying Crowdin complications in [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/11?silent=true); reporting a translated-title UI glitch in [The title suggester ⭐ button is placed outside of the title field when editing a translated title](https://meta.discourse.org/t/-/397553/1?silent=true) (with a real-world translation context example in [Request for Croatian language](https://meta.discourse.org/t/-/229249/1?silent=true)); proposing a workflow improvement to persist AI Helper translations in [Saving translations by AI-helper as content localization](https://meta.discourse.org/t/-/397477/1?silent=true); and suggesting permissions hardening around “everyone” for AI bot allowed groups in [Discourse AI does not respect the “everyone” group](https://meta.discourse.org/t/-/292048/6?silent=true).

- @Falco reinforced product direction and helped triage UX/perf: endorsing the terminology switch in [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/12?silent=true); flagging mobile behavior changes in [The underline indicator below the “Suggested” and “Related” tabs](https://meta.discourse.org/t/-/397448/3?silent=true); and requesting deeper environment details to diagnose load in [Enabling AI search crippled my server](https://meta.discourse.org/t/-/397869/4?silent=true).

- @one1 raised an admin-facing quality issue: AI sentiment/emotion reports appearing with AI disabled in [Don’t show AI reports if AI is not enabled](https://meta.discourse.org/t/-/397487/1?silent=true), which helped confirm a bug and consolidate feedback into the broader reporting workstream in [Admin Reporting & Analysis: Incremental Changes](https://meta.discourse.org/t/-/395768/1?silent=true).

- @chapoi provided important context that the reporting visibility issue extends beyond AI to _all plugins_, and redirected follow-up discussion into the main reporting thread via [Don’t show AI reports if AI is not enabled](https://meta.discourse.org/t/-/397487/3?silent=true) and [Admin Reporting & Analysis: Incremental Changes](https://meta.discourse.org/t/-/395768/1?silent=true).

- @SubStrider shared a concrete scaling report from a large forum, including a clear “semantic search → CPU spike → search disruption” sequence in [Enabling AI search crippled my server](https://meta.discourse.org/t/-/397869/1?silent=true), and later provided hardware specs and corpus size details for diagnosis in [Enabling AI search crippled my server](https://meta.discourse.org/t/-/397869/5?silent=true).

- @rburkej added a self-hosting perspective by asking for a detailed hardware profile and operational impact notes in [Enabling AI search crippled my server](https://meta.discourse.org/t/-/397869/2?silent=true), reinforcing that semantic search rollout needs clear sizing guidance.

- @pacharanero advanced the MCP ecosystem by publishing a tested Codex CLI setup guide in [Discourse MCP Setup in OpenAI Codex CLI](https://meta.discourse.org/t/-/397662/1?silent=true) and then cross-linking it into the main MCP announcement thread in [Discourse MCP is here!](https://meta.discourse.org/t/-/386983/27?silent=true).

- @Lilly kept AI-adjacent theming healthy by refactoring a component so the AI Gists button formatting works on Modernized Foundation in [Discourse Topic Excerpts & AI Gists Button](https://meta.discourse.org/t/-/394885/6?silent=true), tying the work to the upstream theme direction in [Modernizing the Foundation theme](https://meta.discourse.org/t/-/395331/1?silent=true).

- @awesomerobot confirmed the mobile tabs disappearance was related to the “Suggested/Related” UI changes and noted a fix was incoming in [The underline indicator below the “Suggested” and “Related” tabs](https://meta.discourse.org/t/-/397448/4?silent=true).

- @NateDhaliwal closed the loop on an AI-assisted tagging annoyance by acknowledging a fix for an error popup in [Error popup when suggesting tags in topic already having tags](https://meta.discourse.org/t/-/396857/5?silent=true).

- @jdc20181 shared progress on automation work that leverages AI-assisted development: porting a Python script into a Discourse plugin to move topics based on triggers (including scheduled automation) in [Creating a system to move topics based on given criteria such as a timestamp](https://meta.discourse.org/t/-/397384/7?silent=true).

> **In total (last 7 days):** 6 new topics and 25 posts, with the heaviest engagement around naming/UX polish and practical scaling/cost controls for embeddings and OpenAI usage—see [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/12?silent=true), [Service tiers on Open AI providers](https://meta.discourse.org/t/-/397937/1?silent=true), and [Enabling AI search crippled my server](https://meta.discourse.org/t/-/397869/5?silent=true).

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [16 במרץ,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/114 "2026-03-16T19:01:58Z")

</div>

## Overview

Over the past week (2026-03-09 → 2026-03-16), Meta’s #ai discussions clustered around **product polish, reliability, and “real world” operations**.

On the product side, Discourse moved closer to standardizing terminology by implementing the rename from _AI Persona_ to _AI Agent_ ([Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/13?silent=true)). On the infrastructure side, Discourse significantly expanded capacity for its hosted LLM offering—raising limits across all tiers and improving model quality and latency characteristics ([Unlock All Discourse AI Features with Our Hosted LLM](https://meta.discourse.org/t/-/390985/12?silent=true)).

Meanwhile, operators focused on **how AI fits into community rhythms** : a request to delay AI Agent replies (so they feel less like a chatbot and more like a participant) surfaced both as a new Support topic ([Adding a configurable delay to AI Agent responses](https://meta.discourse.org/t/-/398209/1?silent=true)) and as a follow-up in the longer-running “Agents” guide thread, where Discourse staff indicated that delayed responses would likely belong in a future #automation overhaul rather than #ai itself ([AI bot - Agents](https://meta.discourse.org/t/-/306099/30?silent=true)).

Integration conversations had a notable bump too: Google’s Programmable Search / Custom Search constraints and deprecations are forcing a rethink of web search tooling, with Discourse exploring alternative providers and even “native search tools” from LLM vendors ([Google Search for Discourse AI - Programmable Search Engine and Custom Search API](https://meta.discourse.org/t/-/307107/15?silent=true)). In parallel, community guides continued to expand around the Discourse MCP ecosystem, including a newly posted OpenCode CLI setup walkthrough ([Discourse MCP Setup in OpenCode CLI](https://meta.discourse.org/t/-/398378/1?silent=true)).

Finally, practical admin workflows came up repeatedly: improving observability for AI spam detection via direct database queries ([Discourse AI - Spam detection](https://meta.discourse.org/t/-/343541/33?silent=true)), questions about sentiment analysis backfilling and debugging ([Problems setting up Sentiment](https://meta.discourse.org/t/-/309270/16?silent=true)), and GDPR-oriented concerns about sentiment processing depending on provider/configuration ([Introducing Discourse AI Sentiment Analysis: New Admin Report Available](https://meta.discourse.org/t/-/355901/7?silent=true)). There was also an open Support thread (in Chinese) on tool-call timeouts, still in the “need more details” stage ([Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/5?silent=true)).

* * *

## Interesting Topics

- **“AI Persona” renamed to “AI Agent” (terminology + implementation)** in #Contribute > Feature #ai. @Falco confirmed the rename work landed and pointed to the corresponding PR ([Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/13?silent=true)).

- **Hosted LLM capacity increased dramatically (plus model + performance upgrades)** in #Announcements #ai. Discourse reported higher plan limits across the board and described improvements like updated “state-of-the-art open weights” model, higher max tokens per request, better tokens/sec, and improved time-to-first-token ([Unlock All Discourse AI Features with Our Hosted LLM](https://meta.discourse.org/t/-/390985/12?silent=true)).

- **Delaying AI Agent responses to match community pacing (1–4 hours)** in #Support #ai. @saurabhmithal asked for a configurable delay so Agents feel less like instant chatbots ([Adding a configurable delay to AI Agent responses](https://meta.discourse.org/t/-/398209/1?silent=true)). In the broader “Agents” thread, @Falco clarified it’s _not possible today_ and positioned it as an #automation capability, hinting at early planning for a major automation overhaul ([AI bot - Agents](https://meta.discourse.org/t/-/306099/30?silent=true)); the original request is captured in-thread too ([AI bot - Agents](https://meta.discourse.org/t/-/306099/29?silent=true)).

- **Google Programmable Search / Custom Search friction and deprecation pressures** in #Integrations #how-to #ai. @Ethsim2 hit a new UI constraint requiring at least one configured site, which disables “search the entire web” ([Google Search for Discourse AI - Programmable Search Engine and Custom Search API](https://meta.discourse.org/t/-/307107/13?silent=true)). @Falco then stated Google discontinued the feature and noted Discourse is researching alternative providers and also planning support for “native web search tools” offered by major LLM providers ([Google Search for Discourse AI - Programmable Search Engine and Custom Search API](https://meta.discourse.org/t/-/307107/15?silent=true)).

- **Community alternatives for web search tooling (Searxng + privacy realities)** in #Integrations #ai. @satonotdead recommended self-hosting Searxng and argued it’s a pragmatic response to tightening restrictions across major platforms ([Google Search for Discourse AI - Programmable Search Engine and Custom Search API](https://meta.discourse.org/t/-/307107/16?silent=true)). @Lilly also flagged broader platform shifts (Custom Search JSON API being replaced in Google’s ecosystem) as a sign documentation may need updates ([Google Search for Discourse AI - Programmable Search Engine and Custom Search API](https://meta.discourse.org/t/-/307107/14?silent=true)).

- **Discourse MCP setup guidance expands (OpenCode CLI)** in #users #ai #mcp. @pacharanero posted a tested guide for installing Discourse MCP into OpenCode CLI, emphasizing that users can even point an LLM at the guide URL to help with setup ([Discourse MCP Setup in OpenCode CLI](https://meta.discourse.org/t/-/398378/1?silent=true)). The guide cross-links to the Codex CLI variant for other MCP clients ([Discourse MCP Setup in OpenAI Codex CLI](https://meta.discourse.org/t/-/397662/2?silent=true)).

- **AI spam detection: custom instructions, reporting desires, and “show me the raw logs”** in #Site\_Management #moderation #ai. @LotusJeff shared a more detailed (token-heavier) spam detection instruction set and asked what others use ([Discourse AI - Spam detection](https://meta.discourse.org/t/-/343541/31?silent=true)). They also asked for deeper reporting behind the admin summary box and whether [Data Explorer](https://meta.discourse.org/t/32566?silent=true) could expose the details ([Discourse AI - Spam detection](https://meta.discourse.org/t/-/343541/32?silent=true)). @Falco replied with a direct query against `ai_spam_logs` and referenced the [Data Explorer](https://meta.discourse.org/t/32566?silent=true) tool itself ([Discourse AI - Spam detection](https://meta.discourse.org/t/-/343541/33?silent=true), [Data Explorer](https://meta.discourse.org/t/-/32566/1?silent=true)).

- **Sentiment analysis backfill expectations (automatic 60 days) vs. historical needs** in #Support #ai-sentiment. @satonotdead asked about backfilling sentiment for a long-running self-hosted community and hit a rake task warning (“Don’t run this task in production!”) ([Problems setting up Sentiment](https://meta.discourse.org/t/-/309270/15?silent=true)). @Falco clarified that enabling the feature automatically backfills the last 60 days ([Problems setting up Sentiment](https://meta.discourse.org/t/-/309270/16?silent=true)) and later pointed to the self-hosting setup guide as the baseline for debugging ([Problems setting up Sentiment](https://meta.discourse.org/t/-/309270/18?silent=true), [Self-Hosting Sentiment and Emotion for DiscourseAI](https://meta.discourse.org/t/-/334451/1?silent=true)).

- **Sentiment debugging details: “allowed internal hosts” and job execution** in #Support #ai-sentiment. @satonotdead reported resolving part of the issue by adding an internal IP to `allowed internal hosts`, then manually running `Jobs::SentimentBackfill` but still wanting _complete_ historical backfill ([Problems setting up Sentiment](https://meta.discourse.org/t/-/309270/19?silent=true)). @Falco asked for clarification about whether at least the 60-day data appeared ([Problems setting up Sentiment](https://meta.discourse.org/t/-/309270/20?silent=true)), and @satonotdead confirmed dashboards work but the historical backfill is still the goal ([Problems setting up Sentiment](https://meta.discourse.org/t/-/309270/21?silent=true)).

- **GDPR/compliance questions for AI sentiment analysis** in #Announcements #ai-sentiment. @jackierenee asked how sentiment data is processed for Europe-based orgs and whether enabling it can be GDPR compliant ([Introducing Discourse AI Sentiment Analysis: New Admin Report Available](https://meta.discourse.org/t/-/355901/6?silent=true)). @awesomerobot noted it depends on configuration and provider, and recommended seeking local legal advice rather than expecting legal determinations on Meta ([Introducing Discourse AI Sentiment Analysis: New Admin Report Available](https://meta.discourse.org/t/-/355901/7?silent=true)).

- **Tool invocation timeout troubleshooting (needs clearer repro details)** in #Support #ai. @shixiaochi reported `Operation timed out - FinalDestination::HTTP` and asked whether Discourse timeouts can be adjusted ([Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/1?silent=true)). @Falco repeatedly asked which tool/request is timing out, while the OP added screenshots but hadn’t yet provided the exact tool name or repro steps ([Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/2?silent=true), [Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/3?silent=true), [Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/4?silent=true), [Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/5?silent=true)).

* * *

## Activity

- @Falco drove several key updates and support replies this week: confirmed the rename work landed in [Renaming AI Persona → AI Agent](https://meta.discourse.org/t/-/368198/13?silent=true); announced major service scaling in [Unlock All Discourse AI Features with Our Hosted LLM](https://meta.discourse.org/t/-/390985/12?silent=true); explained that delayed Agent responses aren’t available and likely belong to future #automation work in [AI bot - Agents](https://meta.discourse.org/t/-/306099/30?silent=true); provided a [Data Explorer](https://meta.discourse.org/t/32566?silent=true)-ready SQL snippet for spam logs in [Discourse AI - Spam detection](https://meta.discourse.org/t/-/343541/33?silent=true) (building on the reporting question in [Discourse AI - Spam detection](https://meta.discourse.org/t/-/343541/32?silent=true)); clarified sentiment’s automatic 60-day backfill in [Problems setting up Sentiment](https://meta.discourse.org/t/-/309270/16?silent=true) and pointed troubleshooting back to docs in [Problems setting up Sentiment](https://meta.discourse.org/t/-/309270/18?silent=true); and pushed for a clearer repro in the timeout thread [Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/2?silent=true) and [Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/5?silent=true). He also shared the state of play on Google web search tooling and future alternatives in [Google Search for Discourse AI - Programmable Search Engine and Custom Search API](https://meta.discourse.org/t/-/307107/15?silent=true).

- @pacharanero published a new end-user setup guide for MCP, walking through installation and configuration in [Discourse MCP Setup in OpenCode CLI](https://meta.discourse.org/t/-/398378/1?silent=true) and pointing readers to the Codex variant when using other clients ([Discourse MCP Setup in OpenAI Codex CLI](https://meta.discourse.org/t/-/397662/2?silent=true)).

- @saurabhmithal raised the “make Agents feel human-paced” request in a dedicated Support topic—[Adding a configurable delay to AI Agent responses](https://meta.discourse.org/t/-/398209/1?silent=true)—and also asked the question within the longer-running guide thread ([AI bot - Agents](https://meta.discourse.org/t/-/306099/29?silent=true)), prompting clarification that this is currently more an #automation feature request than #ai ([AI bot - Agents](https://meta.discourse.org/t/-/306099/30?silent=true)).

- @Ethsim2 reported an up-to-date Google UI constraint affecting Discourse AI’s documented setup, specifically around requiring at least one configured site and disabling “search the entire web,” in [Google Search for Discourse AI - Programmable Search Engine and Custom Search API](https://meta.discourse.org/t/-/307107/13?silent=true).

- @Lilly added context that Google’s Custom Search JSON API appears to be getting superseded by newer Google offerings, implying docs may need revision, in [Google Search for Discourse AI - Programmable Search Engine and Custom Search API](https://meta.discourse.org/t/-/307107/14?silent=true).

- @satonotdead contributed on two fronts: suggested Searxng as a practical alternative for web search in [Google Search for Discourse AI - Programmable Search Engine and Custom Search API](https://meta.discourse.org/t/-/307107/16?silent=true); and dug into sentiment backfill limitations and debugging, including the production rake warning ([Problems setting up Sentiment](https://meta.discourse.org/t/-/309270/15?silent=true)), lack of initial data visibility ([Problems setting up Sentiment](https://meta.discourse.org/t/-/309270/17?silent=true)), the “allowed internal hosts” fix plus manual job execution ([Problems setting up Sentiment](https://meta.discourse.org/t/-/309270/19?silent=true)), and confirmation that dashboards now work but historical backfill is still needed ([Problems setting up Sentiment](https://meta.discourse.org/t/-/309270/21?silent=true)).

- @LotusJeff shared a more detailed custom instruction set for AI spam detection ([Discourse AI - Spam detection](https://meta.discourse.org/t/-/343541/31?silent=true)) and asked for more granular reporting / [Data Explorer](https://meta.discourse.org/t/32566?silent=true) options behind the admin summary metrics ([Discourse AI - Spam detection](https://meta.discourse.org/t/-/343541/32?silent=true)).

- @jackierenee raised a practical compliance question for EU orgs—how sentiment data is processed and whether enabling the feature can be GDPR compliant—in [Introducing Discourse AI Sentiment Analysis: New Admin Report Available](https://meta.discourse.org/t/-/355901/6?silent=true).

- @awesomerobot responded to the GDPR question by emphasizing that compliance depends on configuration and the selected AI provider, and recommended seeking local legal guidance ([Introducing Discourse AI Sentiment Analysis: New Admin Report Available](https://meta.discourse.org/t/-/355901/7?silent=true)).

- @shixiaochi opened a Support thread describing Discourse AI tool-call timeouts (`FinalDestination::HTTP`) ([Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/1?silent=true)), then followed up with screenshots while the thread worked toward a clearer identification of which tool/request is failing ([Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/3?silent=true), [Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/4?silent=true)).

- @flysto_ryan appeared in the MCP ecosystem thread via a (now deleted) reply in the Codex CLI setup topic ([Discourse MCP Setup in OpenAI Codex CLI](https://meta.discourse.org/t/-/397662/2?silent=true)).

* * *

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [23 במרץ,‏ 2026,‏ 7:02pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/115 "2026-03-23T19:02:00Z")

</div>

# Weekly AI Summary for [meta.discourse.org](http://meta.discourse.org) (2026-03-16 → 2026-03-23)

## Overview

AI discussions this week clustered around **practical UX and cost-control improvements** , especially for **translation workflows** and **summarization placement**. On the translation side, @Shauny proposed a smoother per-post “translate” affordance plus a way to **save/cached translated output** to avoid repeated API spend ([Translate post with AI and save translation](https://meta.discourse.org/t/-/398950/1?silent=true)), with @Moin linking the idea to earlier localization thinking ([Translate post with AI and save translation](https://meta.discourse.org/t/-/398950/2?silent=true), [Saving translations by AI Helper as content localization](https://meta.discourse.org/t/-/397477/1?silent=true)).

On the **summarization UI** front, @Ivan_Rapekas shipped a theme component that adds the AI summary action into the **topic header / sidebar timeline area** , and tied it back to longstanding requests about summary button placement ([AI summary in topic header](https://meta.discourse.org/t/-/399069/1?silent=true), [Feedback: Move summarize button at the top of the topic](https://meta.discourse.org/t/-/385430/3?silent=true), [Summarize button placement on mobile views](https://meta.discourse.org/t/-/348827/3?silent=true)).

Several threads focused on **polish and reliability** in AI admin settings: wording glitches like the repeated “Default LLM” error label were acknowledged and queued for fixing ([Why is ‘Default LLM’ repeated…](https://meta.discourse.org/t/-/398845/1?silent=true), [Why is ‘Default LLM’ repeated…](https://meta.discourse.org/t/-/398845/2?silent=true)), and i18n layout issues in the **LLM cost configuration UI (German)** continued to be refined ([Field alignment issues… in German](https://meta.discourse.org/t/-/396948/6?silent=true), [Field alignment issues… in German](https://meta.discourse.org/t/-/396948/7?silent=true)).

Meanwhile, the community revisited **agent safety boundaries** (notably concerns around AI acting “as a user” without admin oversight) ([Discourse官方会出个官方的openclaw skill么？](https://meta.discourse.org/t/-/398771/2?silent=true), [openclaw plugin for discourse integration](https://meta.discourse.org/t/-/397239/5?silent=true)), and tackled **integration constraints** like tool-calling timeouts and connecting Discourse AI to self-hosted RAG/knowledge bases ([Discourse ai 的工具调用超时如何解决？](https://meta.discourse.org/t/-/398355/7?silent=true), [Discourse ai 如何引入自建知识库RAG？](https://meta.discourse.org/t/-/398712/1?silent=true)). There was also a small but notable question about whether Discourse MCP can access **PDF attachments** via the protocol ([Discourse MCP is here!](https://meta.discourse.org/t/-/386983/28?silent=true)).

* * *

## Interesting Topics

- **Per-post AI translation UX + saving translations to reduce repeated API costs** (#Contribute > Feature, #ai, #translation)  
@Shauny described “Speak your own language day” friction as intentional, but asked for a less fiddly mobile flow—ideally a per-post translate button and _saving the translation once_ so 100 readers don’t incur 100 API calls ([Translate post with AI and save translation](https://meta.discourse.org/t/-/398950/1?silent=true), [Translate post with AI and save translation](https://meta.discourse.org/t/-/398950/4?silent=true)). @Moin connected it to earlier ideas around AI-helper translation as localization content ([Translate post with AI and save translation](https://meta.discourse.org/t/-/398950/2?silent=true), [Saving translations by AI Helper as content localization](https://meta.discourse.org/t/-/397477/1?silent=true)). @Falco noted this partly conflicts with Discourse’s “auto-translate with per-topic toggle” design, suggesting enabling automatic translation for the event day instead ([Translate post with AI and save translation](https://meta.discourse.org/t/-/398950/3?silent=true)).

- **Whether Discourse should ship an official “OpenClaw skill” / agent that acts as a user** (#Contribute > Feature, #ai)  
In a Chinese-language feature thread, @sniper756 proposed an OpenClaw-driven agent that can post/organize content on behalf of a user to build knowledge bases efficiently ([Discourse官方会出个官方的openclaw skill么？](https://meta.discourse.org/t/-/398771/1?silent=true)). @awesomerobot reiterated caution: Discourse is _not_ enthusiastic about agents impersonating real users without an admin in the loop, pointing to the Meta ban policy context while leaving room for admin-support tooling ([Discourse官方会出个官方的openclaw skill么？](https://meta.discourse.org/t/-/398771/2?silent=true), [openclaw plugin for discourse integration](https://meta.discourse.org/t/-/397239/5?silent=true)).

- **Copy/wording cleanup: duplicated “Default LLM” in an error string** (#Contribute > UX, #ai)  
@Moin spotted an awkward repetition while looking at `discourse_ai.ai_bot.agents.default_llm_required` (“Default llm Default LLM…”) and reproduced it in the UI ([Why is ‘Default LLM’ repeated…](https://meta.discourse.org/t/-/398845/1?silent=true)). @awesomerobot confirmed it’s awkward and pointed to a fix in progress ([Why is ‘Default LLM’ repeated…](https://meta.discourse.org/t/-/398845/2?silent=true)).

- **German layout/i18n polish for the LLM cost configuration screen** (#Contribute > UX, #ai)  
Continuing an earlier UX thread, @Moin reported that in German the headings were still too close together ([Field alignment issues in LLM cost configuration in German](https://meta.discourse.org/t/-/396948/6?silent=true)). @awesomerobot replied with a forthcoming fix (“Ach! this will fix it”) ([Field alignment issues in LLM cost configuration in German](https://meta.discourse.org/t/-/396948/7?silent=true)).

- **New theme component: “AI summary in topic header” (desktop sidebar + mobile title area)** (#Theme\_component, #ai, #ai-summarize)  
@Ivan_Rapekas released a theme component that brings the Discourse AI summarize button into high-visibility UI areas: the right sidebar/timeline controls on desktop and the title area on mobile ([AI summary in topic header](https://meta.discourse.org/t/-/399069/1?silent=true)). They also noted rollout as an update to older feedback about summary button placement ([Feedback: Move summarize button at the top of the topic](https://meta.discourse.org/t/-/385430/3?silent=true)) and mobile placement requests ([Summarize button placement on mobile views](https://meta.discourse.org/t/-/348827/3?silent=true)).

- **Prompting periodic AI summary reports to correctly capture vote counts** (#Site\_Management, #automation, #ai)  
In the periodic summary reports how-to thread, @julia1 asked how to craft a prompt so reports include the number of votes tied to feedback items ([Discourse AI - Periodic summary reports](https://meta.discourse.org/t/-/290236/5?silent=true)).

- **Support: LLM tests pass, but setting the default LLM model fails (then “mysteriously” succeeds)** (#Support, #ai)  
@DeltaWater shared screenshots and server logs showing a model that passes the built-in test endpoint but initially couldn’t be set as the default model, then later stopped showing the error—raising questions about state, permissions, or timing ([创建可用的llm后也无法设置 AI default LLM model](https://meta.discourse.org/t/-/398853/1?silent=true), [创建可用的llm后也无法设置 AI default LLM model](https://meta.discourse.org/t/-/398853/3?silent=true), [创建可用的llm后也无法设置 AI default LLM model](https://meta.discourse.org/t/-/398853/4?silent=true)).

- **Tool-calling timeouts: Discourse AI read\_timeout is 10 seconds; what if the API needs 20–30 seconds?** (#Support, #ai)  
In a support thread about tool calls timing out, @Falco clarified that `read_timeout` is 10 seconds and asked whether the upstream API takes longer ([Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/7?silent=true)). @shixiaochi replied that their knowledge-base retrieval API takes ~20–30 seconds and asked whether the timeout can be changed and how ([Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/8?silent=true), [Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/9?silent=true)).

- **How to integrate a self-hosted knowledge base / RAG with Discourse AI** (#Support, #ai)  
@shixiaochi asked directly how to bring a self-built knowledge base RAG into Discourse AI ([Discourse ai 如何引入自建知识库RAG？](https://meta.discourse.org/t/-/398712/1?silent=true))—a theme adjacent to the tool-timeout discussion about external retrieval calls ([Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/6?silent=true)).

- **MCP capability question: can MCP access PDF attachments in posts?** (#News and Events > Blog, #ai, #mcp)  
In the Discourse MCP announcement thread, @anaderi asked whether it’s possible for MCP to access PDF attachments uploaded to posts ([Discourse MCP is here!](https://meta.discourse.org/t/-/386983/28?silent=true)).

* * *

## Activity

- @Moin  
Flagged UX/copy and i18n polish issues: they questioned the duplicated wording in the default-LLM error string ([Why is ‘Default LLM’ repeated…](https://meta.discourse.org/t/-/398845/1?silent=true)), reported German layout spacing still being too tight in LLM cost configuration ([Field alignment issues in LLM cost configuration in German](https://meta.discourse.org/t/-/396948/6?silent=true)), and linked the “save translations” idea to earlier localization proposals ([Translate post with AI and save translation](https://meta.discourse.org/t/-/398950/2?silent=true), [Saving translations by AI Helper as content localization](https://meta.discourse.org/t/-/397477/1?silent=true)).

- @awesomerobot  
Responded across UX fixes and AI safety boundaries: they confirmed the repeated “Default LLM” copy is awkward and pointed to a fix ([Why is ‘Default LLM’ repeated…](https://meta.discourse.org/t/-/398845/2?silent=true)), acknowledged and moved to fix the German UI alignment issue ([Field alignment issues in LLM cost configuration in German](https://meta.discourse.org/t/-/396948/7?silent=true)), and clarified constraints around user-impersonating agents while still encouraging admin-assist AI tooling ([Discourse官方会出个官方的openclaw skill么？](https://meta.discourse.org/t/-/398771/2?silent=true), [openclaw plugin for discourse integration](https://meta.discourse.org/t/-/397239/5?silent=true)).

- @Ivan_Rapekas  
Published and promoted a theme component that exposes the AI summarize action in more discoverable UI locations ([AI summary in topic header](https://meta.discourse.org/t/-/399069/1?silent=true)), then cross-referenced it as an update to older placement discussions ([Feedback: Move summarize button at the top of the topic](https://meta.discourse.org/t/-/385430/3?silent=true), [Summarize button placement on mobile views](https://meta.discourse.org/t/-/348827/3?silent=true)).

- @Shauny  
Proposed improving per-post translation ergonomics (especially on mobile) and suggested caching/saving translations to avoid repeated API calls ([Translate post with AI and save translation](https://meta.discourse.org/t/-/398950/1?silent=true)). They clarified they _didn’t_ want full auto-translate for the event—some friction was intentional—and instead wanted targeted per-post improvements ([Translate post with AI and save translation](https://meta.discourse.org/t/-/398950/4?silent=true)).

- @Falco  
Provided product-context on translation UX, noting the existing design expectation: enable automatic translation and let users toggle it in-topic ([Translate post with AI and save translation](https://meta.discourse.org/t/-/398950/3?silent=true)). Separately, they helped diagnose tool-call reliability by stating Discourse AI’s `read_timeout` is 10 seconds and probing whether the external API exceeds that ([Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/7?silent=true)).

- @Eilgnaw  
Voiced support for the per-post translation/caching approach proposed during the translation UX discussion ([Translate post with AI and save translation](https://meta.discourse.org/t/-/398950/5?silent=true)).

- @sniper756  
Started a feature request (in Chinese) asking if Discourse would ship an official OpenClaw “skill,” describing workflows where an AI agent performs forum operations and reposts authorized content into categorized/tagged knowledge bases ([Discourse官方会出个官方的openclaw skill么？](https://meta.discourse.org/t/-/398771/1?silent=true)).

- @DeltaWater  
Filed a support report showing that an LLM can pass the system test but initially can’t be set as the default model, then later the error disappears; they included screenshots and detailed server logs for both the test call and the site setting update ([创建可用的llm后也无法设置 AI default LLM model](https://meta.discourse.org/t/-/398853/2?silent=true), [创建可用的llm后也无法设置 AI default LLM model](https://meta.discourse.org/t/-/398853/3?silent=true), [创建可用的llm后也无法设置 AI default LLM model](https://meta.discourse.org/t/-/398853/4?silent=true)).

- @shixiaochi  
Continued investigating external knowledge-base/tool integration: they described a self-hosted knowledge base accessed via tools ([Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/6?silent=true)), reported their retrieval API takes ~20–30 seconds ([Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/8?silent=true)), asked whether `read_timeout` can be modified ([Discourse ai 的工具调用超时如何解决？是否可以调整discourse超时时间，如何调整？](https://meta.discourse.org/t/-/398355/9?silent=true)), and opened a direct question about integrating self-built RAG into Discourse AI ([Discourse ai 如何引入自建知识库RAG？](https://meta.discourse.org/t/-/398712/1?silent=true)).

- @julia1  
Asked how to structure prompts for Discourse AI periodic reports so that vote totals for feedback items are captured correctly ([Discourse AI - Periodic summary reports](https://meta.discourse.org/t/-/290236/5?silent=true)).

- @anaderi  
Raised an MCP capability question: whether MCP can access PDF attachments uploaded to Discourse posts ([Discourse MCP is here!](https://meta.discourse.org/t/-/386983/28?silent=true)).

* * *

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [30 במרץ,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/116 "2026-03-30T19:01:29Z")

</div>

## Overview

This week’s AI activity on Meta Discourse centered on **making AI-powered localization more accurate and predictable** , especially for small-but-important UI surfaces like tags and categories. @Moin surfaced several “LLM-without-context” translation failures in [AI-generated tag translations do not work perfectly](https://meta.discourse.org/t/-/399570/1?silent=true), prompting @nat to consider **prompt improvements** and adding extra grounding context such as **tag descriptions** ([reply](https://meta.discourse.org/t/-/399570/5?silent=true)), while @Falco explored tool-assisted approaches like letting the agent _read_ relevant sources ([idea](https://meta.discourse.org/t/-/399570/4?silent=true), [follow-up](https://meta.discourse.org/t/-/399570/9?silent=true)). Related “keep translations in sync” feedback also landed as feature requests for **category name** and **category description** updates ([category names](https://meta.discourse.org/t/-/399585/1?silent=true), [category descriptions](https://meta.discourse.org/t/-/399587/1?silent=true)).

On the configuration side, a troubleshooting thread revealed confusion around **what kinds of PMs get translated** and how the UI communicates that. In [Help me troubleshoot why AI is not translating PMs on my site](https://meta.discourse.org/t/-/399524/1?silent=true), @Moin clarified the current limitation (group PMs vs 1:1 PMs) ([details](https://meta.discourse.org/t/-/399524/2?silent=true)), while @Falco proposed a clearer multi-choice setting ([proposal](https://meta.discourse.org/t/-/399524/4?silent=true)) and @nat hinted that upcoming “translate these categories” controls could reshape the settings UX ([plan](https://meta.discourse.org/t/-/399524/5?silent=true)).

Finally, there were incremental improvements and ecosystem enhancements: clearer messaging for semantic vs exact search results ([search clarification](https://meta.discourse.org/t/-/394348/13?silent=true)), interest in refining AI persona behaviors to reduce noise ([mention-only request](https://meta.discourse.org/t/-/399221/1?silent=true)), and continued adoption of AI summaries in UI via a theme component ([feedback](https://meta.discourse.org/t/-/399069/2?silent=true)).

* * *

## Interesting Topics

- **AI tag translations lack product/context grounding (and can get hilariously wrong)**  
@Moin documented how AI translations treat tags as isolated words, leading to incorrect or ambiguous results in [AI-generated tag translations do not work perfectly](https://meta.discourse.org/t/-/399570/1?silent=true). @nat committed to improving prompts ([response](https://meta.discourse.org/t/-/399570/3?silent=true)), and the discussion expanded into “how do we ground tag/category translations?” including feeding **tag descriptions** ([idea](https://meta.discourse.org/t/-/399570/5?silent=true)), leveraging **Crowdin glossary/localization choices** ([glossary suggestion](https://meta.discourse.org/t/-/399570/6?silent=true)), and giving the agent the ability to consult existing translations or sources ([agent-access idea](https://meta.discourse.org/t/-/399570/4?silent=true), [code-grounding follow-up](https://meta.discourse.org/t/-/399570/9?silent=true)).

- **PM translation confusion: “100% translated” but nothing happens for 1:1 messages**  
In [Help me troubleshoot why AI is not translating PMs on my site](https://meta.discourse.org/t/-/399524/1?silent=true), @tobiaseigen found PMs weren’t auto-translating despite the UI implying completion. @Moin explained that current settings cover **group PMs** rather than **direct 1:1 PMs** ([clarification](https://meta.discourse.org/t/-/399524/2?silent=true)), leading to a UX/settings rethink: @Falco proposed replacing a boolean with explicit targets ([settings proposal](https://meta.discourse.org/t/-/399524/4?silent=true)), and @nat connected this to upcoming category-scoped translation controls ([notes](https://meta.discourse.org/t/-/399524/5?silent=true)).

- **Search results: better messaging for semantic (“AI”) matches vs exact matches**  
In the resolved support thread [Discourse’s search broken? It is returning ‘similar’/‘partial’ matches rather than ‘exact’ matches](https://meta.discourse.org/t/-/394348/13?silent=true), @awesomerobot added UI messaging to clarify when “AI semantic results” begin, reflecting feedback quoted in-thread ([referenced feedback](https://meta.discourse.org/t/-/394348/3?silent=true)).

- **Feature request: auto-update translated category names when the original category is renamed**  
@Moin noticed a renamed category wasn’t reflected in localized category names and requested automatic updates in [Automatically update translations of category names when the original is changed](https://meta.discourse.org/t/-/399585/1?silent=true) (#dynaloc, #categories, #ai).

- **Feature request: keep translated category descriptions in sync with the “about” topic banner source**  
In [Automatically update translated category descriptions](https://meta.discourse.org/t/-/399587/1?silent=true), @Moin highlighted a mismatch where the localized “about topic” translation updated, but the **category banner description** remained stale—suggesting translation sync should cascade to banner data.

- **AI agent/persona noise control: respond only when explicitly @mentioned**  
@saurabhmithal proposed a persona setting to avoid auto-replies when users merely reply to the bot’s posts, in [Allow AI Persona/Agent to respond only to @mentions, not to replies to its posts](https://meta.discourse.org/t/-/399221/1?silent=true) (#ai-bot).

- **Theme component: “AI summary in topic header” getting positive field feedback**  
@kaktak reported strong results with the component in [AI summary in topic header](https://meta.discourse.org/t/-/399069/2?silent=true) (#ai-summarize), signaling ongoing appetite for _in-context_ AI summarization UI.

- **“Do we need an official OpenClaw skill?”—workarounds via scoped credentials**  
In [Discourse官方会出个官方的openclaw skill么？](https://meta.discourse.org/t/-/398771/3?silent=true), @sniper756 concluded they could solve their integration need without a dedicated skill by provisioning a user with specific permissions and securely storing credentials.

- **Localization update: translated tags are now live (with a pointer to the main localization feature)**  
In the older feature thread [Tags übersetzen](https://meta.discourse.org/t/-/383057/3?silent=true), @nat posted an update that **tags are now translated** , pointing readers to the main localization/translation feature announcement ([related feature hub](https://meta.discourse.org/t/-/370000/1?silent=true)).

* * *

## Activity

- @Moin drove a deep-dive on translation quality and localization fidelity, starting with real examples of broken tag translations in [AI-generated tag translations do not work perfectly](https://meta.discourse.org/t/-/399570/1?silent=true) and advocating for grounding via existing localization decisions like a Crowdin glossary ([glossary angle](https://meta.discourse.org/t/-/399570/6?silent=true)) and consistent UI terminology ([localization vs translation](https://meta.discourse.org/t/-/399570/8?silent=true)). They also suggested guardrails about where unsupervised MT is most risky ([documentation/news concern](https://meta.discourse.org/t/-/399570/10?silent=true)) and raised two follow-on sync issues for localized categories: [Automatically update translations of category names when the original is changed](https://meta.discourse.org/t/-/399585/1?silent=true) and [Automatically update translated category descriptions](https://meta.discourse.org/t/-/399587/1?silent=true). In the PM translation thread, they diagnosed the setting mismatch in [Help me troubleshoot why AI is not translating PMs on my site](https://meta.discourse.org/t/-/399524/2?silent=true).

- @nat acknowledged the tag translation problems and committed to prompt improvements in [AI-generated tag translations do not work perfectly](https://meta.discourse.org/t/-/399570/3?silent=true), then explored more predictable grounding strategies like passing the tag description to the model ([idea](https://meta.discourse.org/t/-/399570/5?silent=true)). In the PM translation discussion, they pointed to upcoming category-scoped translation controls and suggested the settings UI could be redesigned accordingly ([reply](https://meta.discourse.org/t/-/399524/5?silent=true)). They also posted a status update that tag translation is now live in [Tags übersetzen](https://meta.discourse.org/t/-/383057/3?silent=true), referencing the broader localization initiative ([content localization hub](https://meta.discourse.org/t/-/370000/1?silent=true)).

- @Falco focused on _productizing_ improvements: in the tag translation thread they proposed giving the agent access to contextual tools (like a read tool) to self-gather context ([proposal](https://meta.discourse.org/t/-/399570/4?silent=true)), endorsed combining approaches ([“let’s do both”](https://meta.discourse.org/t/-/399570/7?silent=true)), and explained how searching existing translation sources could ground terms without loading everything into context ([grounding mechanics](https://meta.discourse.org/t/-/399570/11?silent=true); see also [code reference point](https://meta.discourse.org/t/-/399570/9?silent=true)). In the PM troubleshooting topic, they proposed replacing a confusing boolean with a multi-target option list in [Help me troubleshoot why AI is not translating PMs on my site](https://meta.discourse.org/t/-/399524/4?silent=true). (They also referenced checking translation quality on a real example topic: [Calendar subscription URLs for external calendar apps](https://meta.discourse.org/t/-/398902/1?silent=true).)

- @tobiaseigen reported a real-world admin UX gap where PM translation appears “done” but requires manual per-post translation in [Help me troubleshoot why AI is not translating PMs on my site](https://meta.discourse.org/t/-/399524/1?silent=true), then highlighted that the UI doesn’t clearly communicate the 1:1 PM limitation ([follow-up](https://meta.discourse.org/t/-/399524/3?silent=true)).

- @jrgong chimed in to emphasize the importance of improved PM/category controls for adoption, calling it a blocker for fully using the feature in [Help me troubleshoot why AI is not translating PMs on my site](https://meta.discourse.org/t/-/399524/7?silent=true).

- @awesomerobot shipped a small but impactful UX improvement by adding messaging to clearly distinguish semantic AI search results from exact matches in [Discourse’s search broken? It is returning ‘similar’/‘partial’ matches rather than ‘exact’ matches](https://meta.discourse.org/t/-/394348/13?silent=true), directly responding to feedback captured in-thread ([quoted feedback context](https://meta.discourse.org/t/-/394348/3?silent=true)).

- @saurabhmithal proposed a new control to reduce bot noise by requiring explicit @mentions for AI personas to respond in [Allow AI Persona/Agent to respond only to @mentions, not to replies to its posts](https://meta.discourse.org/t/-/399221/1?silent=true).

- @kaktak shared positive usage feedback on a summarization UI enhancement in [AI summary in topic header](https://meta.discourse.org/t/-/399069/2?silent=true) (and the component itself is introduced in the topic’s opener: [AI summary in topic header](https://meta.discourse.org/t/-/399069/1?silent=true)).

- @sniper756 closed the loop on an integration question by explaining they didn’t need an official skill after all, using a permission-scoped user credential approach in [Discourse官方会出个官方的openclaw skill么？](https://meta.discourse.org/t/-/398771/3?silent=true).

* * *

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [6 באפריל,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/117 "2026-04-06T19:01:52Z")

</div>

## Overview

This week (2026-03-30 → 2026-04-06) on [meta.discourse.org](http://meta.discourse.org) saw Discourse AI discussions cluster around three big themes:

1. **MCP momentum and agent capabilities** : Discourse AI doubled down on the Model Context Protocol with the announcement of _client-side MCP support_—letting Discourse AI agents call out to external MCP tool servers ([Bring your own MCP!](https://meta.discourse.org/t/-/399668/1?silent=true)) and a full admin guide ([AI Bot – Bring Your Own MCP Server](https://meta.discourse.org/t/-/399667/1?silent=true)). In parallel, the server-side MCP tooling kept evolving, including adding an **edit tool** so LLMs can update existing posts/wiki content via MCP ([Discourse MCP is here!](https://meta.discourse.org/t/-/386983/31?silent=true)).

2. **Moderation and privacy boundaries in AI automation** : A practical moderation question—whether **AI triage can scan private messages (DMs)**—ended up being a UI/configuration gotcha rather than a hard limitation, and sparked follow-up ideas for clearer controls in the automation UI ([Does AI triage automation scan DMs between regular users?](https://meta.discourse.org/t/-/399952/1?silent=true), [solution](https://meta.discourse.org/t/-/399952/5?silent=true)).

3. **Model-specific quirks in localization and embeddings** : Multiple threads highlighted that “AI features” are often “model behavior + integration details.” Translation issues ranged from **German “AI commentary / thinking text” leakage** that was fixed quickly ([AI Commentary on German Translations](https://meta.discourse.org/t/-/399805/4?silent=true)) to **missing images when translating via Mistral Small** , which was mitigated by switching models ([Images missing in translated posts when using Mistral as translation model](https://meta.discourse.org/t/-/399939/5?silent=true)). On the embeddings side, Mistral’s API mismatch (`dimensions` vs `output_dimension`) surfaced in configuration ([Use Mistral for embeddings](https://meta.discourse.org/t/-/399854/1?silent=true)). There were also real-world admin bumps caused by **deprecated Gemini model IDs** in AI bot setups ([Issue with AI bots forum bots](https://meta.discourse.org/t/-/399660/2?silent=true)).

* * *

## Interesting Topics

- **Discourse AI agents can now connect to _any_ MCP server (“Bring your own MCP”)** (#ai, #Announcements)  
@sam announced that Discourse AI agents can register external MCP server URLs (GitHub, Notion, Linear, search providers, etc.) and then use discovered tools directly from the LLM agent ([Bring your own MCP!](https://meta.discourse.org/t/-/399668/1?silent=true)). The companion how-to explains setup, tool discovery, and how this differs from JS-based custom tools ([AI Bot – Bring Your Own MCP Server](https://meta.discourse.org/t/-/399667/1?silent=true)).

- **MCP usability: request for “remote/web MCP” + adding the ability to edit existing posts** (#ai, #mcp, #News and Events > Blog)  
In ongoing MCP feedback, @pacharanero explored how MCP could be made more accessible to non-CLI users via a web-published endpoint ([Discourse MCP is here!](https://meta.discourse.org/t/-/386983/29?silent=true)). @jrgong highlighted a KB/docs use-case needing edits to existing topics/posts ([ref](https://meta.discourse.org/t/-/386983/30?silent=true)), and @Falco confirmed an **edit tool was added** (“just update to latest”) ([ref](https://meta.discourse.org/t/-/386983/31?silent=true)).

- **AI triage moderation + DM scanning: “Include personal messages” works, but ‘All topics’ caused confusion** (#automation, #ai, #Support)  
@Denis_Kovalenko tested “Triage posts using AI” and found PMs between regular users weren’t being scanned ([Does AI triage automation scan DMs between regular users?](https://meta.discourse.org/t/-/399952/1?silent=true), [test details](https://meta.discourse.org/t/-/399952/3?silent=true)). @RGJ confirmed the PMs weren’t reaching audit logs and identified the workaround: **leave “Topic Type” empty** rather than “All topics” ([ref](https://meta.discourse.org/t/-/399952/4?silent=true)). The fix worked immediately ([ref](https://meta.discourse.org/t/-/399952/5?silent=true)), and the thread turned into a UX discussion about clearer options ([ref](https://meta.discourse.org/t/-/399952/6?silent=true), [ref](https://meta.discourse.org/t/-/399952/8?silent=true)).

- **Translated German posts included “AI commentary/thought process” text—quickly fixed** (#ai, #content-localization, #Contribute > Bug, #fixed)  
@putty reported German translations leaking “thinking/translate” commentary into output ([AI Commentary on German Translations](https://meta.discourse.org/t/-/399805/1?silent=true)). @nat shipped an update to tighten formatting and cleaned up affected content ([ref](https://meta.discourse.org/t/-/399805/4?silent=true)), with user confirmation afterward ([ref](https://meta.discourse.org/t/-/399805/5?silent=true)).

- **Mistral translations dropped images in translated views (upload:// links), resolved by upgrading model** (#ai, #content-localization, #Support)  
@Denis_Kovalenko found that switching the translation model from OpenAI to Mistral caused translated versions to render text but omit images ([Images missing in translated posts when using Mistral as translation model](https://meta.discourse.org/t/-/399939/1?silent=true), [behavior details](https://meta.discourse.org/t/-/399939/3?silent=true)). @RGJ suggested prompt hardening and/or trying a better model ([ref](https://meta.discourse.org/t/-/399939/4?silent=true)), and switching from **Mistral Small → Mistral Large** fixed it ([ref](https://meta.discourse.org/t/-/399939/5?silent=true)). Later, @Falco asked for clarification on which “Mistral Small” was meant and recommended using stronger small-class models if needed ([ref](https://meta.discourse.org/t/-/399939/8?silent=true)).

- **Embeddings with Mistral: OpenAI-compat config breaks on `dimensions` parameter naming** (#ai, #Contribute > Feature)  
@RGJ documented that configuring Mistral embeddings through an OpenAI-shaped integration fails if Discourse sends `dimensions`, because Mistral expects `output_dimension` ([Use Mistral for embeddings](https://meta.discourse.org/t/-/399854/1?silent=true)). Removing the parameter makes the test succeed, suggesting a compatibility layer or provider-specific mapping may be needed ([ref](https://meta.discourse.org/t/-/399854/1?silent=true)).

- **AI bot errors traced to deprecated Gemini model IDs + guidance for image generation models** (#ai, #ai-bot, #Support)  
@ice.d ran into “Not found” errors with legacy bot configuration ([Issue with AI bots forum bots](https://meta.discourse.org/t/-/399660/1?silent=true)). @Lilly pointed out likely deprecation of `gemini-2.5-flash-pre` and suggested updating model URL/ID (including an image-capable option) ([ref](https://meta.discourse.org/t/-/399660/2?silent=true), [config example](https://meta.discourse.org/t/-/399660/6?silent=true)), with @NateDhaliwal sanity-checking whether any LLMs were configured ([ref](https://meta.discourse.org/t/-/399660/4?silent=true)).

- **Should AI personas reply only to @mentions? Team leans toward workflows rather than niche toggles** (#ai, #ai-bot, #Contribute > Feature)  
In an existing feature request, @sam questioned whether “reply only to @mentions” is better as a default than as another setting ([Allow AI Persona/Agent to respond only to @mentions…](https://meta.discourse.org/t/-/399221/2?silent=true)). @Falco argued that edge cases are better served by upcoming **project workflows** —e.g., a mention-trigger workflow can handle the behavior without adding more switches ([ref](https://meta.discourse.org/t/-/399221/3?silent=true)).

- **Agent response delay: workflows are expected to cover timing controls** (#ai, #Support)  
@sam noted that configurable delays for AI agent responses are the type of thing workflows should support, though not immediately; otherwise, the API path requires custom dev ([Adding a configurable delay to AI Agent responses](https://meta.discourse.org/t/-/398209/2?silent=true)).

- **User-level control over AI (“disable AI nudges”) and PM translation settings migration** (#ai, #ai-summarize, #content-localization, #Contribute > UX/#contribute:feature)  
@paco argued that a per-user equivalent to `discourse_ai_enabled` could help people opt out of AI UI nudges without disabling AI site-wide ([User Interface Preferences: include setting to disable AI nudges](https://meta.discourse.org/t/-/393818/12?silent=true)). Separately, translation settings changes continued to evolve around personal messages: @nat linked a migration PR and described how prior “public content only” settings map into new category + PM targeting controls ([AI translation of all PMs](https://meta.discourse.org/t/-/399524/8?silent=true)).

* * *

## Activity

- @sam shipped MCP expansion and nudged future workflow-based automation:

- @RGJ did a lot of hands-on debugging across moderation, translation, and embeddings:

- @Denis_Kovalenko posted two detailed operational AI reports (moderation + localization), including reproduction steps and follow-through:

- @nat handled translation-agent quality control and shared migration guidance:

- @Falco advanced MCP features and pushed for practical model selection:

- @awesomerobot turned a solved DM-scanning issue into a UX improvement suggestion:

- @putty raised a high-signal localization defect and confirmed remediation:

- @Lilly helped diagnose AI bot failures tied to model configuration/deprecations:

- @Moin contributed version/context to speed up troubleshooting:

- @pacharanero provided MCP product feedback focused on broader accessibility:

- @jrgong highlighted a practical docs/KB workflow need for MCP:

- @NateDhaliwal did basic triage on bot issues:

- @ice.d supplied screenshots and configuration details for an AI bot error:

- @paco continued the UX discussion on per-user AI controls:

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [13 באפריל,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/118 "2026-04-13T19:01:33Z")

</div>

## Overview

This week’s AI-focused activity on Meta (covering **2026-04-06 → 2026-04-13** ) centered on _practical integration details_—especially around **AI discoverability files** , **provider/model choice for GDPR-sensitive deployments** , and **translation robustness**.

On the “AI discoverability” front, the community dug into a real-world conflict between the community **#ai #Customization > Plugin** for generating `llms.txt` and Discourse core’s newer (and currently limited) native `llms.txt` routing: @pacharanero reported the override behavior in [🤖 Discourse llms.txt Generator Plugin](https://meta.discourse.org/t/-/388170/4?silent=true), @Ivan_Rapekas confirmed the breakage in [the same thread](https://meta.discourse.org/t/-/388170/5?silent=true), and @kaktak committed to an update to restore plugin behavior in [their follow-up](https://meta.discourse.org/t/-/388170/6?silent=true). Related context was cross-posted to the core discussion on native support in [enabling native llms-txt support in Discourse](https://meta.discourse.org/t/-/383088/7?silent=true).

In parallel, there was continued emphasis on **model/provider selection** for embeddings and translation, especially for communities needing strong EU/GDPR alignment. In [Use Mistral for embeddings](https://meta.discourse.org/t/-/399854/3?silent=true), @Falco shared a working configuration and suggested considering stronger embedding models; and in [Images missing in translated posts when using Mistral as translation model](https://meta.discourse.org/t/-/399939/10?silent=true), provider options and “zero data retention” surfaced as part of deciding what’s acceptable for compliance and risk.

Finally, translation quality issues got very “hands-on”: a new bug report described a _cooked/markup error after translation_, and @Moin traced it to Markdown table formatting—fixing the source table resolved the translated output in [Cooked error after translate](https://meta.discourse.org/t/-/400509/2?silent=true) and was confirmed by @cuo_wu in [the resolution](https://meta.discourse.org/t/-/400509/3?silent=true).

On the product-usage side, admins continued exploring **AI Personas/Agents** behavior controls—specifically how to stop agents replying instantly and how to constrain them to “mention-only” patterns. That discussion linked together [Allow AI Persona/Agent to respond only to @mentions, not to replies to its posts](https://meta.discourse.org/t/-/399221/4?silent=true) and a workaround shared in [Adding a configurable delay to AI Agent responses](https://meta.discourse.org/t/-/398209/4?silent=true).

* * *

## Interesting Topics

- **`llms.txt` routing conflict: core vs plugin behavior (#ai #Customization > Plugin)**  
@pacharanero flagged that Discourse core’s newer native `llms.txt` route appears to override `/llms.txt` even when not configured, causing the plugin’s main endpoint to fail while `/llms-full.txt` still works ([🤖 Discourse llms.txt Generator Plugin](https://meta.discourse.org/t/-/388170/4?silent=true)). @Ivan_Rapekas echoed the symptoms ([same thread](https://meta.discourse.org/t/-/388170/5?silent=true)) and linked the report into the core feature discussion ([enabling native llms-txt support in Discourse](https://meta.discourse.org/t/-/383088/7?silent=true)). @kaktak said they’d ship an update so core won’t override the plugin’s behavior ([plugin thread update](https://meta.discourse.org/t/-/388170/6?silent=true)). For quick reference, the plugin topic itself is here: [🤖 Discourse llms.txt Generator Plugin](https://meta.discourse.org/t/-/388170/1?silent=true) and the core feature topic is here: [enabling native llms-txt support in Discourse](https://meta.discourse.org/t/-/383088/1?silent=true).

- **Embeddings provider choice: using Mistral vs higher-scoring alternatives (#ai #Contribute > Feature)**  
In [Use Mistral for embeddings](https://meta.discourse.org/t/-/399854/3?silent=true), @Falco shared a working setup and recommended considering embedding models that benchmark better (including Qwen-based embedding options). The broader thread frames Mistral as important for some deployments (including GDPR-oriented ones): [Use Mistral for embeddings](https://meta.discourse.org/t/-/399854/1?silent=true).

- **Translation model behavior: images missing when using Mistral + prompt adjustments (#ai #content-localization)**  
The ongoing investigation into translated posts losing images continued in [Images missing in translated posts when using Mistral as translation model](https://meta.discourse.org/t/-/399939/9?silent=true). @Denis_Kovalenko highlighted GDPR motivations for selecting Mistral’s API ([post](https://meta.discourse.org/t/-/399939/9?silent=true)), while @Falco pointed to “zero data retention” inference provider options ([post](https://meta.discourse.org/t/-/399939/10?silent=true)). @RGJ clarified that ZDR isn’t automatically equivalent to GDPR compliance and suggested the symptom may be driven by third-party model capabilities + prompting ([post](https://meta.discourse.org/t/-/399939/11?silent=true)). The thread ended on a pragmatic win: @Denis_Kovalenko refined prompts and got Mistral Small to stop removing images ([post](https://meta.discourse.org/t/-/399939/12?silent=true)). Full thread: [Images missing in translated posts when using Mistral as translation model](https://meta.discourse.org/t/-/399939/1?silent=true).

- **New bug report: “cooked error after translate” traced to Markdown table formatting (#ai #Contribute > Bug)**  
A brand-new topic appeared this week: @cuo_wu reported a translation/cooking issue that surfaced after switching languages in [Cooked error after translate](https://meta.discourse.org/t/-/400509/1?silent=true). @Moin identified that missing leading/trailing `|` characters in Markdown tables can be tolerated in the original language but break translated rendering; fixing the table in English fixed the translation too ([diagnosis + examples](https://meta.discourse.org/t/-/400509/2?silent=true)). @cuo_wu confirmed the fix ([confirmation](https://meta.discourse.org/t/-/400509/3?silent=true)). The report referenced content in [Discourse FontAwesome Pro](https://meta.discourse.org/t/-/150871/1?silent=true), which helped demonstrate the affected markup.

- **Agent behavior control: limiting bots to @mentions (and avoiding reply-trigger loops) (#ai #ai-bot)**  
In [Allow AI Persona/Agent to respond only to @mentions, not to replies to its posts](https://meta.discourse.org/t/-/399221/4?silent=true), @saurabhmithal tied the “mention-only” control to a broader goal: preventing agents from replying instantly whenever someone replies to the bot. The underlying pain point is also discussed in [Adding a configurable delay to AI Agent responses](https://meta.discourse.org/t/-/398209/1?silent=true).

- **Workaround for delayed agent responses: external orchestrator bot + scheduled tagging (#ai)**  
@saurabhmithal shared an implementation pattern for communities that want bots to participate _less like autocomplete and more like a paced participant_: use an external “orchestrator” bot (e.g., running via cron) that periodically checks categories and then tags the agent, combined with group restrictions so humans can’t directly trigger instant bot replies ([Adding a configurable delay to AI Agent responses](https://meta.discourse.org/t/-/398209/4?silent=true)). The approach was referenced again from the related mention-only control discussion ([Allow AI Persona/Agent to respond only to @mentions…](https://meta.discourse.org/t/-/399221/4?silent=true)).

- **Persona configuration request: making a “standard chat AI” that ignores Discourse context (#ai #ai-bot)**  
In [New AI Persona Editor for Discourse](https://meta.discourse.org/t/-/286271/35?silent=true), @Alon1 asked how to configure a Persona to behave like a generic chatbot (e.g., akin to claude.ai), explicitly _not_ searching Discourse posts, user details, or even acknowledging it’s embedded in Discourse. Thread root: [New AI Persona Editor for Discourse](https://meta.discourse.org/t/-/286271/1?silent=true).

- **Discourse MCP deployment ergonomics: “recommended” sidecar approach? (#ai #mcp)**  
In [Discourse MCP is here!](https://meta.discourse.org/t/-/386983/32?silent=true), @pacharanero asked whether there’s a Meta-recommended way to run MCP as a sidecar service, and also noted an “edit tool” addition mentioned by @Falco. Thread root: [Discourse MCP is here!](https://meta.discourse.org/t/-/386983/1?silent=true).

- **Compliance nuance: “zero data retention” vs GDPR compliance (and self-hosting) (#ai)**  
The week featured a recurring theme: provider selection isn’t just about functionality—it’s about what your community can defensibly operate. In [Images missing in translated posts when using Mistral as translation model](https://meta.discourse.org/t/-/399939/11?silent=true), @RGJ stressed that ZDR ≠ GDPR compliance, while @Falco emphasized there are many ZDR provider options ([same thread](https://meta.discourse.org/t/-/399939/10?silent=true)) and that embeddings can often be self-hosted more easily than full LLMs (also echoed in [Use Mistral for embeddings](https://meta.discourse.org/t/-/399854/3?silent=true)).

* * *

## Activity

- @Falco helped validate and steer embeddings configuration while also broadening the “GDPR-safe options” framing: they reported Mistral embeddings working with a specific config and recommended stronger embedding alternatives in [Use Mistral for embeddings](https://meta.discourse.org/t/-/399854/3?silent=true) (thread root: [Use Mistral for embeddings](https://meta.discourse.org/t/-/399854/1?silent=true)), and suggested exploring multiple “zero data retention” inference providers in [Images missing in translated posts when using Mistral as translation model](https://meta.discourse.org/t/-/399939/10?silent=true) (thread root: [Images missing in translated posts when using Mistral as translation model](https://meta.discourse.org/t/-/399939/1?silent=true)).

- @pacharanero drove two practical operator-focused discussions: they documented a core/plugin collision around `/llms.txt` routing in [🤖 Discourse llms.txt Generator Plugin](https://meta.discourse.org/t/-/388170/4?silent=true) (thread root: [🤖 Discourse llms.txt Generator Plugin](https://meta.discourse.org/t/-/388170/1?silent=true)) and asked for guidance on recommended MCP sidecar deployment in [Discourse MCP is here!](https://meta.discourse.org/t/-/386983/32?silent=true) (thread root: [Discourse MCP is here!](https://meta.discourse.org/t/-/386983/1?silent=true)).

- @Ivan_Rapekas confirmed the `llms.txt` endpoint breakage and ensured the issue was raised in the appropriate core thread, via [🤖 Discourse llms.txt Generator Plugin](https://meta.discourse.org/t/-/388170/5?silent=true) and the linked report in [enabling native llms-txt support in Discourse](https://meta.discourse.org/t/-/383088/7?silent=true) (thread root: [enabling native llms-txt support in Discourse](https://meta.discourse.org/t/-/383088/1?silent=true)).

- @Moin quickly diagnosed and resolved a translation rendering bug by tracing it to malformed Markdown table pipes, sharing minimal repro examples in [Cooked error after translate](https://meta.discourse.org/t/-/400509/2?silent=true) (thread root: [Cooked error after translate](https://meta.discourse.org/t/-/400509/1?silent=true)).

- @RGJ added an important compliance clarification that helped refine the “provider choice” conversation: in [Images missing in translated posts when using Mistral as translation model](https://meta.discourse.org/t/-/399939/11?silent=true), they noted that _zero data retention_ doesn’t automatically imply _GDPR compliance_ (thread root: [Images missing in translated posts when using Mistral as translation model](https://meta.discourse.org/t/-/399939/1?silent=true)).

- @cuo_wu opened the week’s only brand-new AI-related topic and confirmed the fix: they reported the bug in [Cooked error after translate](https://meta.discourse.org/t/-/400509/1?silent=true) and verified resolution in [their follow-up](https://meta.discourse.org/t/-/400509/3?silent=true). The issue was demonstrated using content from [Discourse FontAwesome Pro](https://meta.discourse.org/t/-/150871/1?silent=true).

- @kaktak responded to the `llms.txt` plugin/core collision with a plan to update the plugin so Discourse core doesn’t override plugin behavior, reaffirming plugin philosophy in [🤖 Discourse llms.txt Generator Plugin](https://meta.discourse.org/t/-/388170/6?silent=true) (thread root: [🤖 Discourse llms.txt Generator Plugin](https://meta.discourse.org/t/-/388170/1?silent=true)).

- @Denis_Kovalenko advanced the translation-model debugging loop by clarifying their Mistral setup and constraints, then reporting a prompt-based mitigation: they described their Mistral choice and GDPR requirements in [Images missing in translated posts when using Mistral as translation model](https://meta.discourse.org/t/-/399939/9?silent=true) and later confirmed that prompt refinements prevented image removal in [their update](https://meta.discourse.org/t/-/399939/12?silent=true) (thread root: [Images missing in translated posts when using Mistral as translation model](https://meta.discourse.org/t/-/399939/1?silent=true)).

- @saurabhmithal shared operational patterns for controlling AI agent pacing and trigger conditions: they referenced a temporary fix and testing status in [Allow AI Persona/Agent to respond only to @mentions, not to replies to its posts](https://meta.discourse.org/t/-/399221/4?silent=true) (thread root: [Allow AI Persona/Agent to respond only to @mentions…](https://meta.discourse.org/t/-/399221/1?silent=true)), and documented an “orchestrator bot + scheduled tagging” workaround in [Adding a configurable delay to AI Agent responses](https://meta.discourse.org/t/-/398209/4?silent=true) (thread root: [Adding a configurable delay to AI Agent responses](https://meta.discourse.org/t/-/398209/1?silent=true)).

- @Alon1 raised a product-usage question about configuring Personas as “pure chat” agents that don’t use forum context, in [New AI Persona Editor for Discourse](https://meta.discourse.org/t/-/286271/35?silent=true) (thread root: [New AI Persona Editor for Discourse](https://meta.discourse.org/t/-/286271/1?silent=true)).

* * *

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [20 באפריל,‏ 2026,‏ 7:02pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/119 "2026-04-20T19:02:12Z")

</div>

## Overview (2026-04-13 → 2026-04-20)

AI-related discussion on [meta.discourse.org](http://meta.discourse.org) this week centered on **translation reliability and localization workflows** , with most of the action in #Contribute > Bug and #Support threads using the #ai, #dynaloc, and #content-localization tags. The biggest theme was _intermittent, hard-to-reproduce translation failures_—including languages being skipped at random and backend errors—prompting debugging suggestions like enabling hidden verbose logging and inspecting `/logs` (see [AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/1?silent=true), [follow-up debugging](https://meta.discourse.org/t/-/400612/7?silent=true), and [backend error report](https://meta.discourse.org/t/-/400612/13?silent=true)).

There was also a practical support thread on **language detection and manual overrides** when posts are mixed-language (German + English titles), and how translation can appear “broken” due to _external configuration issues_ like outdated API keys (see [Post not being detected as German](https://meta.discourse.org/t/-/400708/1?silent=true) and the [resolution](https://meta.discourse.org/t/-/400708/10?silent=true)). Separately, an admin-only locale-switching error turned out to be caused by a _stale theme preview query parameter_ in Chrome (see [Error when switching locale](https://meta.discourse.org/t/-/400784/1?silent=true) and the [fix](https://meta.discourse.org/t/-/400784/5?silent=true)).

On the “AI platform” side, there was renewed interest in **Discourse MCP connectivity** (including Claude connectors and HTTP availability) (see [Discourse MCP is here!](https://meta.discourse.org/t/-/386983/33?silent=true), and confirmation that [HTTP is supported](https://meta.discourse.org/t/-/386983/34?silent=true)). Finally, the long-running AI agents how-to thread received a new question about **custom agent skills** for tailored scenarios (see [AI bot - Agents](https://meta.discourse.org/t/-/306099/32?silent=true)).

> **Trendline:** most “AI issues” this week weren’t about output quality—they were about **operational robustness** (job behavior, retries, backend availability, and configuration visibility) (e.g., [skipped translations](https://meta.discourse.org/t/-/400612/8?silent=true), [verbose logging](https://meta.discourse.org/t/-/400612/7?silent=true), and [retry behavior questions](https://meta.discourse.org/t/-/400612/13?silent=true)).

* * *

## Interesting Topics

- **AI translations intermittently skip locales (initially observed as Portuguese missing) in #Contribute > Bug**  
@Denis_Kovalenko reported that enabling many locales could lead to _Portuguese not being generated_ (and later: _any locale being skipped randomly_), with titles and bodies translating inconsistently (see the original report: [AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/1?silent=true), clarifying settings: [supported locales question](https://meta.discourse.org/t/-/400612/3?silent=true), and the “randomly skipped locale” update: [inconsistent results](https://meta.discourse.org/t/-/400612/8?silent=true)).  
Debugging moved toward logs and deeper internals: @nat suggested checking `/logs` and enabling the hidden `ai_translation_verbose_logs` setting (see [hidden verbose logs suggestion](https://meta.discourse.org/t/-/400612/7?silent=true)), while @RGJ later surfaced backend failures (`503 unreachable_backend`) affecting tags/topics/posts (see [error output](https://meta.discourse.org/t/-/400612/13?silent=true)). The thread also raised implementation questions about why translation jobs are configured with `retry: false` (see [retry question](https://meta.discourse.org/t/-/400612/13?silent=true)).

- **Using hidden settings to troubleshoot AI translation logging**  
When @Denis_Kovalenko couldn’t find `ai_translation_verbose_logs` in admin search (see [can’t find setting](https://meta.discourse.org/t/-/400612/9?silent=true)), @Moin explained this is expected because it’s a _hidden_ site setting, pointing to the documentation on hidden settings (see [pointer to hidden settings doc](https://meta.discourse.org/t/-/400612/10?silent=true) and the referenced guide: [Using hidden site settings](https://meta.discourse.org/t/-/308773/1?silent=true)). Shortly after, @RGJ enabled the setting to aid investigation (see [enabled verbose logs](https://meta.discourse.org/t/-/400612/11?silent=true)).

- **Mixed-language posts can confuse detection; manual language selection _does_ force detection in #Support**  
@putty shared a case where a German post wasn’t being translated, asking whether selecting German forces the language (see [problem report](https://meta.discourse.org/t/-/400708/1?silent=true)). @Falco confirmed that selecting a language _does exactly that_, and noted the post was mixed English/German with English titles influencing detection (see [confirmation + explanation](https://meta.discourse.org/t/-/400708/2?silent=true)).

- **Translation “not working” traced to configuration (API key / provider) rather than the feature itself**  
In the same thread, @putty initially saw no translation populate even after forcing it (see [forcing translation didn’t help](https://meta.discourse.org/t/-/400708/3?silent=true)) and later noticed an error about the translated title being missing (see [title missing error](https://meta.discourse.org/t/-/400708/5?silent=true)). Ultimately, the issue resolved when they corrected their translator setup (an old API key during a Claude plan switch) and switched back to CDCK’s LLM—after which title translation worked (see [solution](https://meta.discourse.org/t/-/400708/10?silent=true)).

- **Composer UX change: locale selector moved into the composer toolbar**  
@Moin clarified that the language dropdown was moved into the composer toolbar, linking it to a core change (see [before/after screenshots + PR reference](https://meta.discourse.org/t/-/400708/12?silent=true)). This came up while discussing translation workflows and manual entry (see [follow-up preference discussion](https://meta.discourse.org/t/-/400708/13?silent=true)).

- **Admin-only “topic doesn’t exist / preview theme” error when switching locale is caused by a stale `preview_theme_id`**  
@Denis_Kovalenko reported an admin-only issue: switching interface language in a topic showed a persistent error about previewing a theme that doesn’t exist (see [report](https://meta.discourse.org/t/-/400784/1?silent=true)). @pmusaraj diagnosed it as a stuck `?preview_theme_id=ID` parameter in Chrome (see [diagnosis](https://meta.discourse.org/t/-/400784/4?silent=true)), and removing it resolved the issue (see [solved confirmation](https://meta.discourse.org/t/-/400784/5?silent=true)).

- **Translation quality & limits: post size/context window, and model recommendations**  
While debugging sporadic translation gaps, @nat mentioned a separate scenario where _titles translated but bodies were skipped_ due to body size, and suggested checking the LLM context window settings; they also strongly advised against using “GPT mini” for translations based on customer feedback and early testing (see [model + size/context notes](https://meta.discourse.org/t/-/400612/12?silent=true)). @Denis_Kovalenko confirmed they had a very large context window configured (see [context window detail](https://meta.discourse.org/t/-/400612/14?silent=true)).

- **Discourse MCP connectivity: request for Claude.ai connector support; HTTP already supported**  
In the #News and Events > Blog thread about MCP, @putty asked whether an HTTP/SSE streaming version of the Discourse MCP server might be released to use as a connector in Claude.ai Chat (see [question](https://meta.discourse.org/t/-/386983/33?silent=true)). @Falco replied that HTTP support already exists and pointed back to earlier replies in the announcement thread (see [HTTP supported response](https://meta.discourse.org/t/-/386983/34?silent=true)).

- **AI Agents extensibility: request for custom skills in AI bot agents**  
@赤丸的小烧酒 asked (in Chinese) whether agents can add custom skills for different scenario replies, seeking the ability to customize their own AI agent behavior (see [custom skills request](https://meta.discourse.org/t/-/306099/32?silent=true)).

* * *

## Activity

- @Denis_Kovalenko drove two localization/AI troubleshooting threads this week:

- @pmusaraj focused on diagnosis and narrowing down configuration causes:

- @nat provided feature-level debugging guidance and model caveats:

- @RGJ helped operationalize debugging and surfaced concrete failure signals:

- @Moin pointed to docs and clarified UI changes affecting localization workflows:

- @putty contributed heavily across translation support and MCP discussion:

- @Falco answered usage questions and clarified MCP capabilities:

- @canbekcan explored translation workflow issues and hypotheses around recent changes:

- @赤丸的小烧酒 added an AI agents product-direction question by asking about agent extensibility through custom skills in [AI bot - Agents](https://meta.discourse.org/t/-/306099/32?silent=true).

* * *

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [27 באפריל,‏ 2026,‏ 7:02pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/120 "2026-04-27T19:02:13Z")

</div>

## Overview

This week’s AI-related discussion on [meta.discourse.org](http://meta.discourse.org) clustered around **making Discourse AI features more reliable, more automatable, and cheaper to integrate with external LLM workflows**. On the reliability front, admins dug into _why translations get skipped or appear “stuck”_—including transient provider failures and rate limits—plus practical debugging steps like enabling verbose logs and checking audit/log tables ([AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/16?silent=true), [What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/6?silent=true)). On the automation side, there was a new how-to guide for **auto-tagging topics using AI triage + Discourse Automation** ([Tag topics using AI](https://meta.discourse.org/t/-/401178/1?silent=true)) and a deeper dive into _how agent “Examples” are interpreted_ (and how that can accidentally cause over-flagging) ([AI triage examples not sent properly?](https://meta.discourse.org/t/-/401508/4?silent=true)). Finally, integration and efficiency got a boost with a new plugin that serves **cooked content as Markdown** , reducing token costs for downstream LLM use and potentially pairing well with API/MCP usage ([Discourse to Markdown Plugin](https://meta.discourse.org/t/-/401199/1?silent=true), [Discourse to Markdown Plugin](https://meta.discourse.org/t/-/401199/5?silent=true)).

* * *

## Interesting Topics

- **AI Translation “skips Portuguese” turned out to be multiple issues: locale mis-detection, category targeting quirks, and error-handling expectations**  
@Denis_Kovalenko reported translations randomly missing `pt` and highlighted silent failures on provider errors ([AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/16?silent=true), [AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/15?silent=true)). The thread evolved into a more detailed breakdown: locale detection could be confused by Portuguese proper nouns inside English posts, leading Discourse to _think_ Portuguese was already the source language ([AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/24?silent=true)). Staff clarified tradeoffs around aggressive retries vs. runaway token spend ([AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/23?silent=true)), and noted that backfill will re-attempt recent items over time ([AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/22?silent=true)).

- **How to override wrong locale detection: use the composer language control (and do it on the original post)**  
After asking how to correct an incorrectly detected locale ([AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/25?silent=true)), @pmusaraj pointed to the composer UI button for setting the language—emphasizing it must be changed on the original post, not on translated variants ([AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/26?silent=true)).

- **New guide: automatically tag topics using AI triage + Discourse Automation** (#automation #how-to #ai, #Site\_Management)  
A new official guide explains wiring up **AI triage** to apply tags based on topic content, including prerequisites like enabling Discourse AI and Discourse Automation and configuring agents/personas ([Tag topics using AI](https://meta.discourse.org/t/-/401178/1?silent=true)). It explicitly references the Discourse AI plugin and automation framework docs for setup context ([Tag topics using AI](https://meta.discourse.org/t/-/401178/1?silent=true), [Tag topics using AI](https://meta.discourse.org/t/-/401178/1?silent=true)).

- **New plugin: serve Discourse content as Markdown to cut LLM token usage** (#markdown #ai, #Customization > Plugin)  
@benword released **discourse-to-markdown** , which returns Markdown if the client sends `Accept: text/markdown` or uses a `.md` suffix—aiming to reduce token costs by avoiding HTML payloads ([Discourse to Markdown Plugin](https://meta.discourse.org/t/-/401199/1?silent=true)). @pmusaraj called out the neat detail that it converts Discourse’s **cooked** HTML into richer Markdown rather than using raw post text ([Discourse to Markdown Plugin](https://meta.discourse.org/t/-/401199/2?silent=true)). @jrgong highlighted how this helps API/MCP workflows where raw content lacks resolved URLs, and asked about pairing it with Discourse MCP ([Discourse to Markdown Plugin](https://meta.discourse.org/t/-/401199/5?silent=true)).

- **What happens to AI translations if you change the LLM? (They’re kept—but debugging “stuck progress” matters)** (#ai, #Support)  
@RBoy asked whether switching models re-translates everything after a hosted provider deprecated a model ([What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/1?silent=true)). @Falco clarified that **existing translations remain** and the new LLM covers only what hasn’t been translated yet ([What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/3?silent=true)). When token usage kept climbing without progress, @Falco recommended verbose logs and checking AI audit logs ([What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/5?silent=true)). The follow-up showed a rate-limit error repeatedly blocking a topic translation and consuming the daily quota ([What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/6?silent=true)).

- **AI triage “Examples” can backfire: examples are prior turns, so responses must mimic the expected output (including tool calls)** (#automation #ai, #Support)  
@markschmucker found their agent flagged _every post_ even when the example was intended to be illustrative ([AI triage examples not sent properly?](https://meta.discourse.org/t/-/401508/1?silent=true)). @Falco suggested using the `flag` tool instead of string outputs ([AI triage examples not sent properly?](https://meta.discourse.org/t/-/401508/2?silent=true)), then clarified that examples are sent as _previous chat turns_, so the example responses must match the real expected response format—especially when tool use is involved ([AI triage examples not sent properly?](https://meta.discourse.org/t/-/401508/4?silent=true)). The thread ended with a request for “example examples” showing how to write a tool-call-shaped response in the Examples UI ([AI triage examples not sent properly?](https://meta.discourse.org/t/-/401508/5?silent=true)).

- **AI search/embeddings endpoint 500 errors: check instance logs and compare known AI-search failures** (#rest-api #ai, #Support)  
@shixiaochi asked what typically causes `/discourse-ai/embeddings/semantic-search` to return 500 errors ([接口报错500](https://meta.discourse.org/t/-/401118/1?silent=true)). @Lilly pointed to an existing thread about AI Search giving a 500 error ([接口报错500](https://meta.discourse.org/t/-/401118/2?silent=true)), and @supermathie reiterated the practical next step: inspect both Rails logs and `/logs` ([接口报错500](https://meta.discourse.org/t/-/401118/3?silent=true)).

- **AI-generated tag translations: not independently toggleable (yet), but can be corrected via tag settings or prompt tweaks** (#tags #ai #dynaloc, #Site\_feedback)  
@evenlo asked to disable AI-translated tags specifically due to quality concerns ([AI-generated tag translations do not work perfectly](https://meta.discourse.org/t/-/399570/13?silent=true)). @nat explained that translation isn’t currently scoped by “model type” across entity kinds; instead, edit tag translations directly (one-time) or adjust the Short Text Translator agent prompt ([AI-generated tag translations do not work perfectly](https://meta.discourse.org/t/-/399570/14?silent=true)).

- **Support bots and multimodal workflows: image generation and “vision” may improve technical support** (#ai #ai-bot, #General)  
In an ongoing support-bot thread, @EricGT shared an AI-generated image example and linked the OpenAI cookbook prompting guide ([Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)](https://meta.discourse.org/t/-/286349/56?silent=true), [Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)](https://meta.discourse.org/t/-/286349/58?silent=true)). @merefield noted Image Gen 2 as an option in Discourse Chatbot contexts ([Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)](https://meta.discourse.org/t/-/286349/57?silent=true)). @37Rb described experiments using vision for interpreting photos of hardware panels ([Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)](https://meta.discourse.org/t/-/286349/59?silent=true)), and @EricGT suggested future workflows like generating annotated overlays with callouts and technical text ([Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)](https://meta.discourse.org/t/-/286349/60?silent=true)).

- **Indexing file contents for better search: OCR + attachment understanding as an AI-search upgrade path** (#ai #ai-search, #Contribute > Feature)  
@dennisjbr proposed using Apache Tika for OCR/self-hosting, or using an LLM (e.g., Gemini Flash) to OCR and describe attachments/images into Postgres for indexing—acknowledging the up-front token cost to “rebake” old uploads ([Index File Contents for Search](https://meta.discourse.org/t/-/31884/11?silent=true)).

* * *

## Activity

- @Denis_Kovalenko drove a deep investigation into translation misses and reliability, reporting silent skips on transient errors and later isolating multiple root causes including locale mis-detection and category targeting quirks ([AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/16?silent=true), [AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/24?silent=true), [AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/25?silent=true), [AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/18?silent=true)).

- @pmusaraj clarified product constraints around retries and token costs in translation workflows ([AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/17?silent=true), [AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/23?silent=true)), confirmed a category-support improvement opportunity ([AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/26?silent=true)), and praised the cooked-to-Markdown approach in the new export plugin ([Discourse to Markdown Plugin](https://meta.discourse.org/t/-/401199/2?silent=true)).

- @nat noted that translation backfill effectively retries recent content and that being on `-latest` helps given how quickly AI APIs evolve ([AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/22?silent=true)), and explained limitations around selectively disabling AI-translated tags (plus practical workarounds) ([AI-generated tag translations do not work perfectly](https://meta.discourse.org/t/-/399570/14?silent=true)).

- @Moin weighed in on expected pacing for fixes when running ESR vs latest (and later corrected the version assumption) ([AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/19?silent=true), [AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/21?silent=true)).

- @RGJ clarified version context around ESR vs `4.0-latest` and noted that ESR can still receive some backports ([AI Translation skips Portuguese (pt) locale](https://meta.discourse.org/t/-/400612/20?silent=true)).

- @Discourse published the official automation guide for AI-based topic tagging—positioning it as a practical “triage → tags” pipeline built on Discourse AI + Discourse Automation ([Tag topics using AI](https://meta.discourse.org/t/-/401178/1?silent=true)).

- @benword introduced **discourse-to-markdown** and explained why Markdown output can reduce LLM costs and improve context efficiency by stripping HTML overhead ([Discourse to Markdown Plugin](https://meta.discourse.org/t/-/401199/1?silent=true)).

- @jrgong highlighted real-world API/MCP pain points (like unresolved image URLs in raw output) and asked whether Markdown serving could slot into MCP workflows ([Discourse to Markdown Plugin](https://meta.discourse.org/t/-/401199/5?silent=true)).

- @RBoy investigated translation behavior after switching LLM parameters, sharing observations about high token burn with no stats movement and later surfacing a recurring daily rate-limit failure on a single topic ([What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/1?silent=true), [What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/4?silent=true), [What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/6?silent=true)).

- @eisammy shared experiential guidance on translation caches and model switching behavior across providers, based on prior multi-model setups ([What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/2?silent=true)).

- @Falco answered translation lifecycle questions (old translations persist) and offered concrete debugging steps (verbose logs + audit log checks) when progress appears stuck ([What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/3?silent=true), [What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/5?silent=true)). Falco also coached on AI triage configuration, steering away from brittle string outputs toward tool calls and clarifying how examples must mirror the expected “shape” of responses ([AI triage examples not sent properly?](https://meta.discourse.org/t/-/401508/2?silent=true), [AI triage examples not sent properly?](https://meta.discourse.org/t/-/401508/4?silent=true)).

- @markschmucker surfaced a nuanced AI agent pitfall where examples intended as demonstrations appeared to bias the model into flagging everything, then requested guidance on what tool-call-like examples should look like in practice ([AI triage examples not sent properly?](https://meta.discourse.org/t/-/401508/1?silent=true), [AI triage examples not sent properly?](https://meta.discourse.org/t/-/401508/3?silent=true), [AI triage examples not sent properly?](https://meta.discourse.org/t/-/401508/5?silent=true)).

- @shixiaochi asked for root causes behind a 500 error on the semantic-search embeddings endpoint, prompting troubleshooting guidance ([接口报错500](https://meta.discourse.org/t/-/401118/1?silent=true)).

- @Lilly connected the embeddings 500 report to a prior AI-search 500 discussion, pointing the reporter toward an existing diagnostic thread ([接口报错500](https://meta.discourse.org/t/-/401118/2?silent=true)).

- @supermathie reinforced that logs are the decisive next step for 500s—both Rails logs and the admin `/logs` UI ([接口报错500](https://meta.discourse.org/t/-/401118/3?silent=true)).

- @evenlo raised concerns about inconsistent AI tag-translation quality and asked for a way to disable that specific sub-feature ([AI-generated tag translations do not work perfectly](https://meta.discourse.org/t/-/399570/13?silent=true)).

- @EricGT advanced the support-bot thread by bringing in multimodal image generation references and proposing practical technical-support enhancements like annotated overlays and better text rendering in generated images ([Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)](https://meta.discourse.org/t/-/286349/56?silent=true), [Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)](https://meta.discourse.org/t/-/286349/60?silent=true), [Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)](https://meta.discourse.org/t/-/286349/58?silent=true)).

- @merefield pointed readers to Discourse Chatbot/Image Gen 2 availability as the multimodal angle of the support-bot discussion expanded ([Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)](https://meta.discourse.org/t/-/286349/57?silent=true)).

- @37Rb contributed real-world experience using vision features to interpret customer-submitted photos for wiring advice—flagging the difference between successful experiments and actual customer adoption ([Advice on a support bot for a technical support forum (Discourse AI vs Discourse Chatbot)](https://meta.discourse.org/t/-/286349/59?silent=true)).

- @dennisjbr proposed a roadmap-style idea for **indexing attachment contents** (OCR + image description → Postgres) to make AI search more powerful, while acknowledging the tradeoff of up-front token spend for backfilling old content ([Index File Contents for Search](https://meta.discourse.org/t/-/31884/11?silent=true)).

* * *

### Extra reference links mentioned this week (context for the above threads)

These were directly referenced inside the week’s discussions and help explain the surrounding ecosystem: [Discourse AI plugin](https://meta.discourse.org/t/-/259214/1?silent=true), [Discourse Automation](https://meta.discourse.org/t/-/195773/1?silent=true), [LLM settings guide](https://meta.discourse.org/t/-/319903/1?silent=true), [AI bot personas / Agents](https://meta.discourse.org/t/-/306099/1?silent=true), [Discourse MCP is here](https://meta.discourse.org/t/-/386983/1?silent=true), [Discourse Chatbot now smarter than ChatGPT](https://meta.discourse.org/t/-/256652/1?silent=true), and the referenced AI search 500 thread ([All AI functions are working ok but AI search gives 500 error](https://meta.discourse.org/t/-/351888/5?silent=true)).

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [4 במאי,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/121 "2026-05-04T19:01:34Z")

</div>

## Overview

AI-related discussion on Meta this week centered on _polishing new UX and automation workflows_, and _tightening correctness guarantees_ in AI-assisted editing and translation.

The biggest thread was a hands-on bug hunt of the new docked AI composer: @Lilly documented issues around editing, quoting, mobile scrolling, and file uploads in [New ai docked composer](https://meta.discourse.org/t/-/401961/1?silent=true), with @keegan iterating quickly on fixes and ultimately gating the feature while it’s refined ([update](https://meta.discourse.org/t/-/401961/10?silent=true)). In parallel, the AI Helper proofreading flow saw discussion about preserving quoted text—especially important for sensitive or exact citations—with confirmation that a fix landed and additional configuration suggestions followed ([Proofread breaks quotes](https://meta.discourse.org/t/-/365102/11?silent=true), [examples guidance](https://meta.discourse.org/t/-/365102/15?silent=true)).

On the operations side, admins compared notes about translation jobs getting “stuck” due to LLM rate limits and configuration questions in [What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/8?silent=true). And on the enablement front, Discourse published a new how-to showing how to auto-categorize topics by combining Discourse AI triage with Discourse Automation ([Auto-categorize topics using AI](https://meta.discourse.org/t/-/401827/1?silent=true)), while a plugin discussion explored serving `text/markdown` to make AI/MCP consumers happier ([Discourse to Markdown Plugin](https://meta.discourse.org/t/-/401199/6?silent=true)).

* * *

## Interesting Topics

- **Docked AI composer regressions + rapid fixes (#Contribute > Bug, #ai, #composer):** @Lilly reported that the new docked composer could block editing actions, behave oddly when quoting, and feel inconsistent vs the regular composer—especially around line breaks ([report](https://meta.discourse.org/t/-/401961/1?silent=true), [Shift+Enter feedback](https://meta.discourse.org/t/-/401961/8?silent=true)). @keegan shipped multiple fixes and follow-ups while explaining intended behavior and next steps ([fixes summary](https://meta.discourse.org/t/-/401961/5?silent=true), [gating announcement](https://meta.discourse.org/t/-/401961/10?silent=true)).

- **RTE-first design decision in the docked composer (Markdown supported, but no preview):** There was clarification that the docked composer is intended to be primarily RTE, while Markdown remains available but without a preview due to space constraints ([design explanation](https://meta.discourse.org/t/-/401961/5?silent=true), [confirmation](https://meta.discourse.org/t/-/401961/6?silent=true)).

- **Quoting + sidebar + navigation edge cases when interacting with the bot UI:** Quoting the bot was implicated in sidebar gaps/disappearing UI and even trapping users in the bot conversation, which then improved after subsequent fixes ([initial behavior](https://meta.discourse.org/t/-/401961/1?silent=true), [later status](https://meta.discourse.org/t/-/401961/8?silent=true)).

- **File uploads failing after the first post in the docked composer:** After other issues improved, @Lilly narrowed remaining problems to uploads failing after the first post, plus intermittent quoting issues that later cleared after a rebuild ([bug report](https://meta.discourse.org/t/-/401961/7?silent=true), [triage update](https://meta.discourse.org/t/-/401961/9?silent=true), [maintainer response](https://meta.discourse.org/t/-/401961/10?silent=true)).

- **AI proofreading should _not_ “improve” quoted text (#Contribute > Bug, #ai-helper):** @bksubhuti highlighted the risk of AI altering quoted religious/source text and argued that quotes must be preserved verbatim ([concern](https://meta.discourse.org/t/-/365102/10?silent=true)). @Falco pointed out the issue was fixed and suggested trying a better model if it still reproduces ([fix reference](https://meta.discourse.org/t/-/365102/11?silent=true)).

- **Configuring proofreader agents with examples + specialized personas:** @bksubhuti shared a specialized Pāḷi-oriented persona prompt and asked about engine choices ([persona details](https://meta.discourse.org/t/-/365102/14?silent=true)), while @Falco asked whether they were using examples, noting the default proofreader ships with multiple examples to help ground quote-handling ([examples suggestion](https://meta.discourse.org/t/-/365102/15?silent=true)).

- **Translation jobs stalled by rate limits + confusion over “thinking” settings (#Support, #ai):** In a translation troubleshooting thread, @Falco suggested disabling “thinking,” while @RBoy asked what that meant in the Discourse AI UI and shared an error showing token-per-day rate limiting causing repeated failures ([suggestion](https://meta.discourse.org/t/-/401478/7?silent=true), [rate limit error](https://meta.discourse.org/t/-/401478/8?silent=true), [UI question](https://meta.discourse.org/t/-/401478/9?silent=true)).

- **Serving Markdown for better AI/MCP consumption (#Customization > Plugin, #markdown, #ai):** The Discourse-to-Markdown plugin thread explored “content negotiation” as a clean path for AI clients: try `Accept: text/markdown` against canonical URLs, then fall back to JSON API behavior if unsupported ([proposal](https://meta.discourse.org/t/-/401199/6?silent=true), [follow-up](https://meta.discourse.org/t/-/401199/7?silent=true)). The same discussion explicitly connected this to MCP usage (see also [Discourse MCP is here](https://meta.discourse.org/t/-/386983/1?silent=true)).

- **AI-generated images improving in quality (and prompt-sharing interest):** In a long-running support-bot discussion, @37Rb noted a big jump in image generation quality compared to prior attempts ([experience](https://meta.discourse.org/t/-/286349/61?silent=true)), and @EricGT encouraged sharing prompts and tips more broadly ([request](https://meta.discourse.org/t/-/286349/62?silent=true)).

- **New how-to: auto-categorize topics using AI triage + Discourse Automation (#Site\_Management, #automation, #ai):** Discourse published a guide detailing prerequisites (Discourse AI, Automation, configured LLM, and an Agent/persona) and the overall workflow for using AI to decide whether a topic belongs in a different category ([guide](https://meta.discourse.org/t/-/401827/1?silent=true); see prerequisite references to [Discourse AI](https://meta.discourse.org/t/-/259214/1?silent=true), [Discourse Automation](https://meta.discourse.org/t/-/195773/1?silent=true), the [LLM settings guide](https://meta.discourse.org/t/-/319903/1?silent=true), and [AI bot personas](https://meta.discourse.org/t/-/306099/1?silent=true)).

* * *

## Activity

- @Lilly led a detailed QA pass on the docked AI composer, documenting initial breakages ([New ai docked composer](https://meta.discourse.org/t/-/401961/1?silent=true)), acknowledging ongoing fixes ([follow-up](https://meta.discourse.org/t/-/401961/3?silent=true)), and then narrowing down remaining issues like quoting and uploads ([status](https://meta.discourse.org/t/-/401961/8?silent=true), [rebuild result](https://meta.discourse.org/t/-/401961/9?silent=true)). She also flagged the “upload after first post” regression as the main remaining bug ([report](https://meta.discourse.org/t/-/401961/7?silent=true)).

- @sam acknowledged the docked composer feedback loop and relayed that fixes were actively underway, pointing to ongoing work by @keegan ([response](https://meta.discourse.org/t/-/401961/2?silent=true)).

- @keegan implemented and coordinated fixes for the docked composer, explained the intended RTE-first UX and Markdown tradeoffs ([explanation](https://meta.discourse.org/t/-/401961/5?silent=true)), and later gated the feature behind upcoming changes while polishing continued ([update](https://meta.discourse.org/t/-/401961/10?silent=true)).

- @bksubhuti raised a correctness/ethics angle: AI proofreading must preserve quoted blocks, especially for exact religious/source citations ([concern](https://meta.discourse.org/t/-/365102/10?silent=true)). After updating, they confirmed behavior and continued experimenting, including sharing a custom proofreader persona and asking for model suggestions ([confirmation](https://meta.discourse.org/t/-/365102/12?silent=true), [testing](https://meta.discourse.org/t/-/365102/13?silent=true), [persona prompt](https://meta.discourse.org/t/-/365102/14?silent=true)).

- @Falco provided targeted troubleshooting across two areas: he pointed to a shipped fix for proofread/quote handling and recommended trying a better model if issues persisted ([Proofread breaks quotes](https://meta.discourse.org/t/-/365102/11?silent=true)), asked about using examples to ground the agent ([examples](https://meta.discourse.org/t/-/365102/15?silent=true)), and suggested disabling “thinking” to address translation behavior ([What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/7?silent=true)).

- @RBoy brought real-world translation ops pain: they shared that translation attempts were repeatedly failing due to token-per-day rate limits and asked what “thinking” refers to in the Discourse AI configuration UI ([error report](https://meta.discourse.org/t/-/401478/8?silent=true), [clarification question](https://meta.discourse.org/t/-/401478/9?silent=true)).

- @benword expanded on how the Discourse-to-Markdown plugin could support AI/MCP consumers via HTTP content negotiation, outlining a pragmatic “try Markdown then fall back to JSON” strategy ([Discourse to Markdown Plugin](https://meta.discourse.org/t/-/401199/6?silent=true)) and tying it to MCP integration possibilities ([related: Discourse MCP is here](https://meta.discourse.org/t/-/386983/1?silent=true)).

- @jrgong confirmed that the suggested “content negotiation then fallback” approach was essentially what another LLM (Claude) implemented for them already ([reply](https://meta.discourse.org/t/-/401199/7?silent=true)).

- @37Rb shared positive field feedback that AI image generation had improved substantially, citing fewer artifacts compared to earlier attempts ([support bot discussion](https://meta.discourse.org/t/-/286349/61?silent=true)).

- @EricGT amplified community learning by asking for prompt-sharing and tips based on @37Rb’s results ([request](https://meta.discourse.org/t/-/286349/62?silent=true)).

- @Discourse published a new admin-facing guide for using AI triage to auto-categorize topics, explicitly documenting prerequisites and setup references ([Auto-categorize topics using AI](https://meta.discourse.org/t/-/401827/1?silent=true); related docs: [Discourse AI](https://meta.discourse.org/t/-/259214/1?silent=true), [Discourse Automation](https://meta.discourse.org/t/-/195773/1?silent=true), [LLM settings guide](https://meta.discourse.org/t/-/319903/1?silent=true), [AI bot personas](https://meta.discourse.org/t/-/306099/1?silent=true)).

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [11 במאי,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/122 "2026-05-11T19:01:56Z")

</div>

## Overview

AI discussions on [meta.discourse.org](http://meta.discourse.org) this week (2026-05-04 → 2026-05-11) centered on **operational reliability of #ai translations** —especially how _“thinking/reasoning”_ models can break locale detection, exhaust completion budgets, and leave translation jobs stuck or failing in confusing ways (see [AI translations errors](https://meta.discourse.org/t/-/402477/1?silent=true) and [What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/11?silent=true)). A second thread of debugging focused on **token-limit surprises** (request-size vs response-size, TPM/TPD rate limits) and how those interact with Discourse AI’s LLM configuration (see [AI exceeds LLM token thresholds randomly and unpredictably](https://meta.discourse.org/t/-/402334/1?silent=true)).

On the UX/configuration side, there were smaller but practical updates: **proofreading prompt customization** for quote-handling (see [Proofread breaks quotes](https://meta.discourse.org/t/-/365102/17?silent=true)), a **PM/Agent follow-up image upload regression that’s already fixed upstream** (see [Can’t post image in Agent follow-up via PM](https://meta.discourse.org/t/-/402201/2?silent=true)), and a **new user setup question** about Google Gemini model configuration on the LLM settings page (see [Discourse AI - Large Language Model (LLM) settings page](https://meta.discourse.org/t/-/319903/22?silent=true)).

Overall: **26 new posts across 3 new topics** , with most activity coming from @Falco and @RBoy, largely in #Contribute > Bug and #Support threads tagged #ai (e.g., [AI translations errors](https://meta.discourse.org/t/-/402477/1?silent=true), [AI exceeds LLM token thresholds randomly and unpredictably](https://meta.discourse.org/t/-/402334/1?silent=true), and [Can’t post image in Agent follow-up via PM](https://meta.discourse.org/t/-/402201/1?silent=true)).

* * *

## Interesting Topics

- **Translation failures caused by “thinking” output consuming the completion budget**  
@RBoy reported translation errors like `Validation failed: Raw can't be blank, Cooked can't be blank` in [AI translations errors](https://meta.discourse.org/t/-/402477/1?silent=true), and @Falco identified that _reasoning tokens_ can “eat all the tokens” under `max_tokens`, leading to empty/invalid outputs ([analysis in context](https://meta.discourse.org/t/-/402477/8?silent=true)). The debugging discussion also touched on why Discourse avoids reasoning for translations ([same thread](https://meta.discourse.org/t/-/402477/8?silent=true)) and referenced prior history around large-scale translation failures ([related discussion](https://meta.discourse.org/t/-/385414/12?silent=true)).

- **Translations “stuck” after an LLM change: locale detection is fragile with thinking models**  
In [What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/11?silent=true), @RBoy described translations showing as incomplete with no new logs or progress ([stuck symptoms](https://meta.discourse.org/t/-/401478/11?silent=true)). @Falco explained the underlying issue: **you can’t use a thinking model for locale detection** , because “thinking blocks” break parsing and without locale detection translations don’t proceed ([root-cause explanation](https://meta.discourse.org/t/-/401478/12?silent=true); conclusion acknowledged in [follow-up](https://meta.discourse.org/t/-/401478/13?silent=true)).

- **Structured outputs requirements for translation models (e.g., `json_schema`)**  
After switching to a non-reasoning model, @RBoy hit a `400` indicating the selected model _does not support_ `response_format: json_schema` ([error report](https://meta.discourse.org/t/-/402477/10?silent=true)). @Falco clarified that translations need a model supporting structured outputs—“basically every SotA model released recently” ([guidance](https://meta.discourse.org/t/-/402477/11?silent=true)).

- **Practical translation debugging: use `/p/POST_ID` and audit logs, but don’t filter on `response_tokens`**  
@Falco advised checking the failing post via `/p/120` and inspecting `ai_api_audit_logs` ([debug approach](https://meta.discourse.org/t/-/402477/2?silent=true)). When @RBoy didn’t see matching audit rows ([query + mismatch](https://meta.discourse.org/t/-/402477/3?silent=true)), @Falco recommended removing the `response_tokens` clause from the SQL filter ([fix](https://meta.discourse.org/t/-/402477/4?silent=true)). The thread also clarified the `/p/` vs `/t/` difference during investigation ([follow-up](https://meta.discourse.org/t/-/402477/5?silent=true)).

- **Token-limit confusion: 413 errors are request size, not “max output tokens”**  
@RBoy reported seemingly random token-limit overruns despite lowering output token caps ([initial report](https://meta.discourse.org/t/-/402334/1?silent=true)). @Falco emphasized that `413` indicates the **request** is too large (not the requested response), and suggested focusing on the LLM “context window” configuration while also noting 8k is unusually small by modern standards ([clarification](https://meta.discourse.org/t/-/402334/2?silent=true)). @RBoy replied with their configured context window and the provider’s limit, questioning why Discourse would exceed configured bounds ([details](https://meta.discourse.org/t/-/402334/3?silent=true)).

- **Rate-limit pressure (TPD/TPM) as an upstream contributor to translation instability**  
In the same token thread, @RBoy noted the translation pipeline initially stalled under daily token rate limits (`429`), then later failed with `413` request-too-large errors after resuming ([sequence of failures](https://meta.discourse.org/t/-/402334/4?silent=true)). This paired with ongoing translation troubleshooting in [What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/11?silent=true) and [AI translations errors](https://meta.discourse.org/t/-/402477/1?silent=true).

- **Proofreader customization: where to find the built-in examples to adjust quote behavior** (#ai-helper)  
@bksubhuti asked how to find examples so they could tweak their custom proofreading personality to avoid breaking quotes ([question](https://meta.discourse.org/t/-/365102/17?silent=true)). @Falco pointed them to the Proofreader agent examples inside the admin UI (`admin/plugins/discourse-ai/ai-agents/-22/edit`) ([direction](https://meta.discourse.org/t/-/365102/19?silent=true)), and @bksubhuti confirmed they found the example set and that it outputs JSON ([confirmation](https://meta.discourse.org/t/-/365102/20?silent=true)).

- **PM Agent follow-up couldn’t post images (fixed upstream)**  
@Ethsim2 reported they couldn’t post an image when following up with an Agent via PM on 2026.5.0 ([bug report](https://meta.discourse.org/t/-/402201/1?silent=true)). @Lilly replied that it was already fixed (and referenced a related incomplete report) ([response](https://meta.discourse.org/t/-/402201/2?silent=true)), and @Ethsim2 identified the missing upstream commit they needed ([follow-up](https://meta.discourse.org/t/-/402201/3?silent=true)). (Related: [New AI docked composer](https://meta.discourse.org/t/-/401961/10?silent=true).)

- **New LLM configuration question: Gemini model id / provider URL confusion**  
@danhanghai asked for help configuring `gemini-3.1-flash-lite` via the Google provider on the LLM settings page, sharing their model id and endpoint URL ([question](https://meta.discourse.org/t/-/319903/22?silent=true)). For broader context, that question sits within the long-running reference topic [Discourse AI - Large Language Model (LLM) settings page](https://meta.discourse.org/t/-/319903/1?silent=true) (#how-to #ai).

* * *

## Activity

- @RBoy drove most of the week’s hands-on debugging around translations and tokens. They opened the #Contribute > Bug thread [AI translations errors](https://meta.discourse.org/t/-/402477/1?silent=true), iterated on audit-log queries and missing rows ([SQL attempt](https://meta.discourse.org/t/-/402477/3?silent=true)), clarified a `/t/` vs `/p/` mix-up during investigation ([correction](https://meta.discourse.org/t/-/402477/5?silent=true)), and later shared raw streamed responses suggesting reasoning-heavy output ([truncated stream](https://meta.discourse.org/t/-/402477/7?silent=true)). They also tried switching translation models and hit a structured-output error around `json_schema` support ([model switch issue](https://meta.discourse.org/t/-/402477/10?silent=true)). In parallel, they reported token-limit instability in [AI exceeds LLM token thresholds randomly and unpredictably](https://meta.discourse.org/t/-/402334/1?silent=true), added context-window details ([settings screenshot + reasoning](https://meta.discourse.org/t/-/402334/3?silent=true)), and described how rate limits and request-size limits combined to stall translations ([429→413 sequence](https://meta.discourse.org/t/-/402334/4?silent=true)). They also continued the “stuck translations after LLM change” thread in [What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/11?silent=true), including the `reasoning_effort` error and eventual conclusion about avoiding thinking models ([reasoning\_effort error](https://meta.discourse.org/t/-/401478/10?silent=true), [conclusion](https://meta.discourse.org/t/-/401478/13?silent=true)).

- @Falco provided the core technical guidance across multiple threads, especially around how Discourse AI expects model outputs. In [AI translations errors](https://meta.discourse.org/t/-/402477/2?silent=true) they suggested checking the exact post via `/p/ID` and inspecting `ai_api_audit_logs`, corrected the audit-log query approach by removing filtering on `response_tokens` ([query fix](https://meta.discourse.org/t/-/402477/4?silent=true)), and emphasized that **raw responses** matter more than token counts for debugging ([raw-response focus](https://meta.discourse.org/t/-/402477/6?silent=true)). They identified that **reasoning tokens can consume the completion budget** and tied that to why Discourse avoids reasoning models for translations ([reasoning tokens explanation](https://meta.discourse.org/t/-/402477/8?silent=true)), pointing back to earlier related translation failures ([reference thread](https://meta.discourse.org/t/-/385414/12?silent=true)). They also advised that translation models need structured outputs support ([structured outputs guidance](https://meta.discourse.org/t/-/402477/11?silent=true)). In [What happens to translations when LLM changes?](https://meta.discourse.org/t/-/401478/12?silent=true), they explained that locale detection breaks with thinking blocks, which can stall translations entirely. And in [AI exceeds LLM token thresholds randomly and unpredictably](https://meta.discourse.org/t/-/402334/2?silent=true), they clarified that `413` means the _request_ is too large and recommended focusing on context window configuration. Finally, they helped with prompt customization by pointing @bksubhuti to the Proofreader agent’s built-in examples ([where to find examples](https://meta.discourse.org/t/-/365102/19?silent=true)).

- @bksubhuti followed up on the long-running quote-handling issue in #Contribute > Bug #ai-helper, asking where to find real examples so they could adjust their proofreading system prompt ([request](https://meta.discourse.org/t/-/365102/17?silent=true)). After being pointed to the agent editor, they confirmed they found the example set and planned to iterate on it ([confirmation](https://meta.discourse.org/t/-/365102/20?silent=true)). (Background thread: [Proofread breaks quotes](https://meta.discourse.org/t/-/365102/1?silent=true); referenced post: [example link mentioned](https://meta.discourse.org/t/-/365102/15?silent=true).)

- @Lilly handled support triage on an Agent/PM UX issue, replying that the image-upload problem had already been fixed upstream in [Can’t post image in Agent follow-up via PM](https://meta.discourse.org/t/-/402201/2?silent=true), and cross-linking a related report ([New AI docked composer](https://meta.discourse.org/t/-/401961/10?silent=true)).

- @Ethsim2 reported a regression where they couldn’t post images in a PM follow-up with an Agent ([report](https://meta.discourse.org/t/-/402201/1?silent=true)), then confirmed the missing upstream commit they needed to pick up ([commit identified](https://meta.discourse.org/t/-/402201/3?silent=true)).

- @danhanghai joined the #Site-Management #how-to #ai conversation by asking for help configuring Google Gemini (`gemini-3.1-flash-lite`) on the LLM settings page, including their model id and endpoint URL ([question](https://meta.discourse.org/t/-/319903/22?silent=true)). (Reference topic context: [Discourse AI - Large Language Model (LLM) settings page](https://meta.discourse.org/t/-/319903/1?silent=true), plus nearby reference points like [LLM settings page](https://meta.discourse.org/t/-/319903/2?silent=true), [LLM settings page](https://meta.discourse.org/t/-/319903/3?silent=true), [LLM settings page](https://meta.discourse.org/t/-/319903/4?silent=true), [LLM settings page](https://meta.discourse.org/t/-/319903/5?silent=true).)

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [18 במאי,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/123 "2026-05-18T19:01:50Z")

</div>

## Overview

This week’s #ai discussions on [meta.discourse.org](http://meta.discourse.org) clustered around _practical reliability fixes_—from language/locale detection and translation credit usage to minor UX paper-cuts and self-hosting setup issues.

On the localization side, @thomasjsn reported that Norwegian content was being detected as `no` and then translated into `nb_NO`, leading to near-duplicate text and wasted credits in [Norwegian is identified as `no` by locale detector agent, content localization supported locales is `nb_NO`](https://meta.discourse.org/t/-/402859/1?silent=true). The thread quickly evolved into a prompt-level workaround ([post 5](https://meta.discourse.org/t/-/402859/5?silent=true)), and then a core/default-agent improvement confirmed by @nat ([post 7](https://meta.discourse.org/t/-/402859/7?silent=true)).

Meanwhile, the Discourse AI UI got a small-but-noticeable polish item: @RBoy found that changing the default LLM didn’t immediately update agent labels until refresh in [Minor UI bug changing default LLM](https://meta.discourse.org/t/-/402792/1?silent=true), and @awesomerobot followed up with a fix PR ([post 2](https://meta.discourse.org/t/-/402792/2?silent=true)).

Self-hosters also had a useful troubleshooting moment: @NotAnonymous hit a Docker + Hugging Face 404 while setting up sentiment, and @Falco provided a working workaround in [Self-Hosting Sentiment and Emotion for DiscourseAI](https://meta.discourse.org/t/-/334451/14?silent=true) (see [post 15](https://meta.discourse.org/t/-/334451/15?silent=true) and confirmation in [post 16](https://meta.discourse.org/t/-/334451/16?silent=true)).

Finally, a couple of smaller check-ins rounded out the week: a follow-up on Gemini “thinking budget” testing limitations in [Thinking budget for Gemini Pro, error when using 0 or -1](https://meta.discourse.org/t/-/388485/5?silent=true), renewed interest in “me too”/acknowledgement patterns with pointers to the new #solved improvements in [Option to hide ‘me too’ replies](https://meta.discourse.org/t/-/275751/2?silent=true), and a new report in Chinese about AI plugin hyperlinks not responding in [社区官方的ai插件中的超链接未能正常跳转，点击后无反应](https://meta.discourse.org/t/-/403201/1?silent=true).

* * *

## Interesting Topics

- **Norwegian locale detection (`no` vs `nb_NO`) causing redundant translations and credit usage** (#Contribute > Bug #ai)  
@thomasjsn noticed Norwegian posts were detected as `no` and then translated into Norwegian `nb_NO`, producing subtle differences but mostly duplicating content in [Norwegian is identified as `no` by locale detector agent, content localization supported locales is `nb_NO`](https://meta.discourse.org/t/-/402859/1?silent=true). @nat suggested duplicating the locale detection agent and adjusting the system prompt ([post 2](https://meta.discourse.org/t/-/402859/2?silent=true)), which @thomasjsn validated by adding explicit language code lines ([post 5](https://meta.discourse.org/t/-/402859/5?silent=true)). @nat later confirmed the workaround was incorporated into the **default agent** ([post 7](https://meta.discourse.org/t/-/402859/7?silent=true)), after prompt guidance in ([post 6](https://meta.discourse.org/t/-/402859/6?silent=true)).

- **Default LLM label not updating in the AI settings UI until refresh** (#Contribute > UX #ai)  
In [Minor UI bug changing default LLM](https://meta.discourse.org/t/-/402792/1?silent=true), @RBoy showed that agent rows continue to display the old “default LLM” text after changing the default model, until the page reloads. @awesomerobot agreed it was minor but worth fixing and opened a PR ([post 2](https://meta.discourse.org/t/-/402792/2?silent=true)).

- **Self-hosted sentiment Docker image fails due to upstream model artifact path (404)** (#Self-Hosting #ai #ai-sentiment)  
@NotAnonymous ran into a `tokenizer.json` 404 from Hugging Face while following the self-host sentiment instructions in [Self-Hosting Sentiment and Emotion for DiscourseAI](https://meta.discourse.org/t/-/334451/14?silent=true). @Falco explained the upstream model changes weren’t merged yet and recommended pointing to a branch ([post 15](https://meta.discourse.org/t/-/334451/15?silent=true)), which resolved the issue for @NotAnonymous ([post 16](https://meta.discourse.org/t/-/334451/16?silent=true)).

- **“Me too” / acknowledgement noise vs signal, with #solved improvements as a partial answer** (#Contribute > Feature #ai)  
A long-running request about reducing “me too” reply clutter resurfaced when @NateDhaliwal pointed out that something similar _just shipped_ via #solved plugin changes in [Option to hide ‘me too’ replies](https://meta.discourse.org/t/-/275751/2?silent=true). The referenced release thread is [Solved improvements: allowing members to indicate they’re experiencing a reported issue](https://meta.discourse.org/t/-/402498/1?silent=true), and @EricGT followed up with a direct link to their comment in that rollout discussion ([post 3](https://meta.discourse.org/t/-/275751/3?silent=true); see also [Solved improvements… (post 14)](https://meta.discourse.org/t/-/402498/14?silent=true)).

- **Gemini Pro “thinking budget” edge-case follow-up (hard to confirm without current usage)** (#Contribute > Bug #ai)  
In [Thinking budget for Gemini Pro, error when using 0 or -1](https://meta.discourse.org/t/-/388485/5?silent=true), @sam checked whether the issue was still happening. @RBoy responded that they couldn’t test anymore because they no longer use the Pro model ([post 6](https://meta.discourse.org/t/-/388485/6?silent=true))—useful context for anyone trying to validate regression status.

- **Chinese bug report: AI plugin hyperlinks not responding when clicked** (#Contribute > Bug #ai)  
A new report came in from @哈基米曼波 in [社区官方的ai插件中的超链接未能正常跳转，点击后无反应](https://meta.discourse.org/t/-/403201/1?silent=true), describing links that appear clickable but don’t navigate. @NateDhaliwal replied, but the post was later deleted by the author ([post 2](https://meta.discourse.org/t/-/403201/2?silent=true))—so the next actionable steps may need a fresh repro and environment details.

* * *

## Activity

- @thomasjsn  
Reported a locale detection mismatch for Norwegian and the downstream translation-credit waste in [Norwegian is identified as `no`…](https://meta.discourse.org/t/-/402859/1?silent=true), then iterated on prompt tweaks and confirmed a working mapping using `nb-NO` ([post 4](https://meta.discourse.org/t/-/402859/4?silent=true), [post 5](https://meta.discourse.org/t/-/402859/5?silent=true)).

- @nat  
Acknowledged and guided a short-term workaround (duplicate/adjust the locale detection agent) in [Norwegian is identified as `no`…](https://meta.discourse.org/t/-/402859/2?silent=true), confirmed the prompt approach ([post 6](https://meta.discourse.org/t/-/402859/6?silent=true)), and later noted the fix was rolled into the default agent configuration ([post 7](https://meta.discourse.org/t/-/402859/7?silent=true)).

- @RBoy  
Flagged a UI refresh inconsistency when changing the default LLM in [Minor UI bug changing default LLM](https://meta.discourse.org/t/-/402792/1?silent=true), and provided context on why Gemini Pro testing couldn’t be re-verified in [Thinking budget for Gemini Pro…](https://meta.discourse.org/t/-/388485/6?silent=true).

- @awesomerobot  
Confirmed the default-LLM UI issue and opened a PR to update agent labels immediately in [Minor UI bug changing default LLM](https://meta.discourse.org/t/-/402792/2?silent=true).

- @NotAnonymous  
Documented a reproducible self-hosting failure (Hugging Face model file 404) with their Docker invocation in [Self-Hosting Sentiment and Emotion for DiscourseAI](https://meta.discourse.org/t/-/334451/14?silent=true), then confirmed @Falco’s workaround solved it ([post 16](https://meta.discourse.org/t/-/334451/16?silent=true)).

- @Falco  
Explained the upstream model/branch situation and provided a “point-to-branch” workaround for self-hosted sentiment in [Self-Hosting Sentiment and Emotion for DiscourseAI](https://meta.discourse.org/t/-/334451/15?silent=true), following up on the successful resolution ([post 15](https://meta.discourse.org/t/-/334451/15?silent=true), [post 16](https://meta.discourse.org/t/-/334451/16?silent=true)).

- @NateDhaliwal  
Pointed a feature-request thread toward a newly-shipped #solved workflow that helps capture “I’m also affected” signals in [Option to hide ‘me too’ replies](https://meta.discourse.org/t/-/275751/2?silent=true), and briefly engaged on a Chinese hyperlink bug report where the response was later deleted ([社区官方的ai插件中的超链接未能正常跳转，点击后无反应](https://meta.discourse.org/t/-/403201/2?silent=true)).

- @EricGT  
Closed the loop on the “me too” discussion by acknowledging the #solved plugin direction in [Option to hide ‘me too’ replies](https://meta.discourse.org/t/-/275751/3?silent=true) and referencing their participation in the rollout thread ([Solved improvements… (post 14)](https://meta.discourse.org/t/-/402498/14?silent=true)).

- @sam  
Prompted for confirmation/regression status on the Gemini thinking-budget edge case in [Thinking budget for Gemini Pro, error when using 0 or -1](https://meta.discourse.org/t/-/388485/5?silent=true).

- @哈基米曼波  
Opened a new report (with screenshot) about AI plugin hyperlinks not navigating in [社区官方的ai插件中的超链接未能正常跳转，点击后无反应](https://meta.discourse.org/t/-/403201/1?silent=true).

* * *

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [25 במאי,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/124 "2026-05-25T19:01:08Z")

</div>

## Overview

This week’s AI-related activity on [meta.discourse.org](http://meta.discourse.org) (2026-05-18 → 2026-05-25) was mostly about _making AI bot conversations smoother and easier to manage_, plus one ongoing operational concern around localization in AI-assisted email workflows.

On the product side, Discourse shipped two small-but-impactful UX improvements for AI chat: the ability to **star AI conversations** so important chats stay pinned at the top ([Star common AI conversations](https://meta.discourse.org/t/-/403285/1?silent=true), also referenced in [Star common AI conversations](https://meta.discourse.org/t/-/403285/1?silent=true)), and a **docked composer** that keeps the input box persistently available in AI bot topics to reduce “reply friction” ([Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/1?silent=true), see also [Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/1?silent=true)).

Meanwhile, an older #Contribute > Feature thread resurfaced with a request for updates: translation support is still a pain point—especially when _moderation pipeline remarks_ and other custom text aren’t translated for users receiving emails in their configured language ([Use translated posts when emailing users with their user language set](https://meta.discourse.org/t/-/383546/3?silent=true), again in [Use translated posts when emailing users with their user language set](https://meta.discourse.org/t/-/383546/3?silent=true)).

## Interesting Topics

- **Starring AI chats to keep key conversations at the top** (#Announcements, #ai)  
Discourse introduced a new capability to **star AI bot conversations** , making frequently referenced AI threads easier to find. @sam shared the announcement and noted it’s controlled via an upcoming-changes flag: `Enable AI bot starred conversations` ([Star common AI conversations](https://meta.discourse.org/t/-/403285/1?silent=true), also see [Star common AI conversations](https://meta.discourse.org/t/-/403285/1?silent=true), and [Star common AI conversations](https://meta.discourse.org/t/-/403285/1?silent=true)).

- **A docked (persistent) composer for AI bot conversations** (#Announcements, #composer, #ai, #ai-bot)  
To make AI chats feel more like continuous messaging, Discourse is adding a **persistent composer** at the bottom of AI bot conversation topics—so you can keep typing without repeatedly clicking “Reply.” @keegan outlined what’s changing, why it reduces friction, and that it’s currently behind an upcoming-changes setting (`ai_bot_enable_docked_com...`) ([Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/1?silent=true), plus [Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/1?silent=true), and [Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/1?silent=true)).

- **Translation gaps affecting AI/localized outbound emails & moderation operations** (#Contribute > Feature, #ai, #activity-summary, #dynaloc, #content-localization)  
@Bart_Veldhuizen1 asked for updates on using translated post content when emailing users based on their language setting, and highlighted a related operational issue: **custom remarks in the moderation pipeline are not translated either** —creating workflow friction for multilingual moderation teams ([Use translated posts when emailing users with their user language set](https://meta.discourse.org/t/-/383546/3?silent=true), also referenced in [Use translated posts when emailing users with their user language set](https://meta.discourse.org/t/-/383546/3?silent=true), and [Use translated posts when emailing users with their user language set](https://meta.discourse.org/t/-/383546/3?silent=true)).

## Activity

- @sam  
Shipped and announced a lightweight but practical organization improvement for AI usage: **starred AI conversations**. This helps communities that rely on Discourse AI keep “canonical” bot threads readily accessible ([Star common AI conversations](https://meta.discourse.org/t/-/403285/1?silent=true), [Star common AI conversations](https://meta.discourse.org/t/-/403285/1?silent=true), [Star common AI conversations](https://meta.discourse.org/t/-/403285/1?silent=true), [Star common AI conversations](https://meta.discourse.org/t/-/403285/1?silent=true)).

- @keegan  
Introduced a **docked composer** experience for AI bot conversations, aiming to make AI threads feel more like an uninterrupted chat flow and less like a sequence of discrete replies. The change is gated behind an upcoming-changes flag and preserves the old composer when disabled ([Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/1?silent=true), [Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/1?silent=true), [Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/1?silent=true), [Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/1?silent=true)).

- @Bart_Veldhuizen1  
Revived a localization-focused #Contribute > Feature thread with a request for progress updates, emphasizing real-world operational impact: **untranslated moderation pipeline remarks** (in addition to translated-email needs) can create blockers for teams working across languages ([Use translated posts when emailing users with their user language set](https://meta.discourse.org/t/-/383546/3?silent=true), [Use translated posts when emailing users with their user language set](https://meta.discourse.org/t/-/383546/3?silent=true), [Use translated posts when emailing users with their user language set](https://meta.discourse.org/t/-/383546/3?silent=true), [Use translated posts when emailing users with their user language set](https://meta.discourse.org/t/-/383546/3?silent=true)).

* * *

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [1 ביוני,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/125 "2026-06-01T19:01:17Z")

</div>

## Overview

AI-related discussion on [meta.discourse.org](http://meta.discourse.org) this week (2026-05-25 → 2026-06-01) clustered around **three themes** :

1. **AI integrations & automation** — There’s growing interest in _event-driven_ AI features, like triggering external automation when AI Artifact data changes. The request for artifact update webhooks in [Add webhook / event support for Discourse AI artifact key-value updates (or allow admins to disable sandboxing)](https://meta.discourse.org/t/-/403865/1?silent=true) was met with encouragement to revisit after Discourse’s upcoming Automation direction (“Workflows”) ([reply](https://meta.discourse.org/t/-/403865/2?silent=true)), plus agreement that scoped server-side webhooks would be valuable ([follow-up](https://meta.discourse.org/t/-/403865/4?silent=true)).

2. **AI UX and content fidelity** — Multiple threads highlighted places where AI-adjacent UX still needs polish: the docked AI bot composer’s “Enter to send” behavior ([discussion](https://meta.discourse.org/t/-/403327/2?silent=true), [more](https://meta.discourse.org/t/-/403327/3?silent=true)), translation output corrupting Markdown quote syntax ([bug report](https://meta.discourse.org/t/-/403874/1?silent=true)), and ongoing desire for **full Markdown parity** in bot/chat contexts ([request continuation](https://meta.discourse.org/t/-/312003/21?silent=true)).

3. **Localization & multi-model support** — Several posts focused on language and model flexibility: request to localize AI prompts to Chinese ([request](https://meta.discourse.org/t/-/404143/1?silent=true), [reply](https://meta.discourse.org/t/-/404143/2?silent=true)), progress on using translations in user-facing messaging (including a fix merged for translated “flag reasons” appearing correctly) in [Use translated posts when emailing users with their user language set](https://meta.discourse.org/t/-/383546/9?silent=true), and expanding sentiment/emotion analysis to more LLM providers like Gemini ([question](https://meta.discourse.org/t/-/334451/17?silent=true), [update](https://meta.discourse.org/t/-/334451/18?silent=true)).

* * *

## Interesting Topics

- **Webhook / event support for AI Artifact updates (automation + integrations)** (#Contribute > Feature #ai #webhooks #ai-artifacts)  
@MachineScholar proposed emitting webhooks when AI Artifact key-value data changes to enable external automation (e.g., n8n workflows) in [Add webhook / event support for Discourse AI artifact key-value updates (or allow admins to disable sandboxing)](https://meta.discourse.org/t/-/403865/1?silent=true). @Falco suggested it’s something to revisit after the new _Workflows_ approach lands ([reply](https://meta.discourse.org/t/-/403865/2?silent=true)), and @sam endorsed the idea of a server-side webhook that can be scoped to an artifact id ([comment](https://meta.discourse.org/t/-/403865/4?silent=true)). @MachineScholar also asked about where to track Workflows info/timeline ([follow-up](https://meta.discourse.org/t/-/403865/3?silent=true)).

- **Docked composer for AI bot conversations: “Enter to submit” friction (and upload issues)** (#Announcements #ai #ai-bot #composer)  
In [Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/2?silent=true), @Lilly asked for a way to suppress “Enter as submit” and prefer sending only via the paper-plane icon ([post](https://meta.discourse.org/t/-/403327/2?silent=true)). @tobiaseigen agreed, noting AI convos aren’t always “chatty” and often need paragraphs/code blocks; they also mentioned a workaround involving chat preferences but highlighted the tradeoff for real chat usage ([post](https://meta.discourse.org/t/-/403327/3?silent=true)). Later, @Lilly reported image uploads breaking after the first post and reverted to the regular composer for bot usage ([post](https://meta.discourse.org/t/-/403327/4?silent=true)).

- **Translated content in emails / notifications: roadmap + a fix merged for translated “flag reasons”** (#Contribute > Feature #ai #activity-summary #dynaloc #content-localization)  
In [Use translated posts when emailing users with their user language set](https://meta.discourse.org/t/-/383546/6?silent=true), @pmusaraj confirmed the OP is still on the roadmap but without a timeline ([post](https://meta.discourse.org/t/-/383546/6?silent=true)). While clarifying a related UI string, @Bart_Veldhuizen1 explained the “custom remarks” were actually the _“something else”_ flag type, showing how it appeared in Portuguese in the review queue while the DM translated correctly ([details](https://meta.discourse.org/t/-/383546/7?silent=true)). @pmusaraj then merged a fix for this translation issue ([update](https://meta.discourse.org/t/-/383546/9?silent=true)), pointing to the associated PR: [discussion reference](https://meta.discourse.org/t/-/383546/9?silent=true).

- **Self-hosting Sentiment/Emotion: expanding to other LLM providers (Gemini mentioned)** (#Self-Hosting #ai #ai-sentiment)  
In [Self-Hosting Sentiment and Emotion for DiscourseAI](https://meta.discourse.org/t/-/334451/17?silent=true), @Orioni asked for an ETA on connecting sentiment analysis to other LLMs, mentioning positive experience with Gemini Flash variants and wanting to use Gemini for sentiment to reduce costs ([post](https://meta.discourse.org/t/-/334451/17?silent=true)). @Falco replied that the capability had been added and should appear on the site soon ([reply](https://meta.discourse.org/t/-/334451/18?silent=true)).

- **AI translation bug: Markdown quote `>` sometimes turns into `0`** (#Contribute > Bug #ai #dynaloc)  
@thomasjsn reported that translations from both “GPT-5.4 Nano” and “Gemini 3 Flash” sometimes convert Markdown quote markers (`>`) into `0`, breaking formatting in [Markdown quote conversion failures in AI translations](https://meta.discourse.org/t/-/403874/1?silent=true). The examples show repeated `0` characters where quote blocks and headings should be ([report](https://meta.discourse.org/t/-/403874/1?silent=true)).

- **Request: allow AI plugin prompt text to be configured/localized in Chinese** (#Contribute > Feature #ai #localization)  
@bird requested being able to set AI prompts in Chinese—citing summaries, titles, and DM summaries defaulting to English—in [希望ai插件可以设置提示词为中文](https://meta.discourse.org/t/-/404143/1?silent=true). @sniper756 replied that English/Chinese output can be unstable and may vary by model, though the root cause wasn’t clear ([reply](https://meta.discourse.org/t/-/404143/2?silent=true)).

- **Full Markdown support in bot/chat contexts (and related migration concerns)** (#Contribute > Feature #chat #ai)  
In [Full markdown support in Chat for bots](https://meta.discourse.org/t/-/312003/21?silent=true), @rokejulianlockhart asked whether a broader topic exists for full Markdown support beyond bots (referencing @sam’s earlier openness to creating a more general topic: [quoted reference](https://meta.discourse.org/t/-/312003/18?silent=true)). They also raised migration-related needs, citing a separate question about migrating Messages into Chats/DMs ([quoted topic reference](https://meta.discourse.org/t/-/336765/1?silent=true)), and argued that without full Discourse Markdown, the feature isn’t workable for their use case ([post](https://meta.discourse.org/t/-/312003/21?silent=true)).

* * *

## Activity

- @Falco weighed in on artifact automation timing, suggesting revisiting webhook support after Workflows land in [Add webhook / event support for Discourse AI artifact key-value updates (or allow admins to disable sandboxing)](https://meta.discourse.org/t/-/403865/2?silent=true), and also posted an update on expanded sentiment/LLM connectivity in [Self-Hosting Sentiment and Emotion for DiscourseAI](https://meta.discourse.org/t/-/334451/18?silent=true). (Context linkbacks: [webhook thread start](https://meta.discourse.org/t/-/403865/1?silent=true), [Orioni’s ask](https://meta.discourse.org/t/-/334451/17?silent=true).)

- @pmusaraj clarified details and status around localized/translated messaging in [Use translated posts when emailing users with their user language set](https://meta.discourse.org/t/-/383546/6?silent=true), asked for more detail about “custom remarks” ([question](https://meta.discourse.org/t/-/383546/4?silent=true)), and confirmed a fix was merged for the translated “something else” flag display issue ([update](https://meta.discourse.org/t/-/383546/9?silent=true)). They also acknowledged @Bart_Veldhuizen1’s helpful screenshots ([thanks](https://meta.discourse.org/t/-/383546/8?silent=true)).

- @MachineScholar started the push for artifact update webhooks for automation use cases (e.g., n8n) in [Add webhook / event support for Discourse AI artifact key-value updates (or allow admins to disable sandboxing)](https://meta.discourse.org/t/-/403865/1?silent=true), then followed up with interest in Workflows and any timeline/details ([follow-up](https://meta.discourse.org/t/-/403865/3?silent=true)). They also engaged with @Falco’s Workflows mention ([reply context](https://meta.discourse.org/t/-/403865/2?silent=true)).

- @sam supported the artifact webhook concept—especially if scoping can be done by artifact id—in [Add webhook / event support for Discourse AI artifact key-value updates (or allow admins to disable sandboxing)](https://meta.discourse.org/t/-/403865/4?silent=true). They were also referenced in the ongoing Markdown-in-chat discussion (quoted inside) in [Full markdown support in Chat for bots](https://meta.discourse.org/t/-/312003/21?silent=true), specifically the earlier note about potentially opening a more general topic ([referenced quote](https://meta.discourse.org/t/-/312003/18?silent=true)).

- @Lilly provided hands-on UX feedback about the docked AI bot composer, requesting an option to disable “Enter to submit” in [Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/2?silent=true), and later reported image uploads breaking after the first post (leading them to revert to the regular composer) ([follow-up](https://meta.discourse.org/t/-/403327/4?silent=true)).

- @tobiaseigen added supporting feedback on the docked composer’s send behavior and explained why AI conversations often need multiline composition (paragraphs/code blocks), in [Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/3?silent=true). They also described a chat preference workaround and its downside for real-time chat usage ([same post](https://meta.discourse.org/t/-/403327/3?silent=true)).

- @Bart_Veldhuizen1 clarified that the “custom remarks” in question were the _“something else”_ flag type, sharing screenshots demonstrating Portuguese display behavior in [Use translated posts when emailing users with their user language set](https://meta.discourse.org/t/-/383546/7?silent=true). This enabled @pmusaraj to confirm and act on the fix ([acknowledgement](https://meta.discourse.org/t/-/383546/8?silent=true), [merged fix note](https://meta.discourse.org/t/-/383546/9?silent=true)).

- @thomasjsn filed a concrete formatting bug report showing AI translations sometimes corrupt Markdown quotes by turning `>` into `0`, with examples across two different models, in [Markdown quote conversion failures in AI translations](https://meta.discourse.org/t/-/403874/1?silent=true). (Example details: [same report](https://meta.discourse.org/t/-/403874/1?silent=true).)

- @Orioni followed up on sentiment/emotion self-hosting to ask about support for additional LLM connections—explicitly citing Gemini usage and cost/embeddings experience—in [Self-Hosting Sentiment and Emotion for DiscourseAI](https://meta.discourse.org/t/-/334451/17?silent=true). @Falco responded that it had been added ([reply](https://meta.discourse.org/t/-/334451/18?silent=true)).

- @bird requested better localization for AI prompts (wanting Chinese prompt configuration for AI summaries/titles/DM summaries) in [希望ai插件可以设置提示词为中文](https://meta.discourse.org/t/-/404143/1?silent=true), highlighting that the defaults still appear in English for those workflows ([request](https://meta.discourse.org/t/-/404143/1?silent=true)).

- @sniper756 replied to the Chinese prompt-localization request, noting language output can be inconsistent and varies by model, in [希望ai插件可以设置提示词为中文](https://meta.discourse.org/t/-/404143/2?silent=true).

- @rokejulianlockhart pushed the discussion on Markdown limitations in bot/chat contexts forward by asking for (or offering to create) a broader topic beyond bots in [Full markdown support in Chat for bots](https://meta.discourse.org/t/-/312003/21?silent=true). They also connected the issue to migration needs (Messages → Chats/DMs) by pointing to an existing question ([referenced topic](https://meta.discourse.org/t/-/336765/1?silent=true)) and cited the earlier “open another topic” comment from @sam ([referenced post](https://meta.discourse.org/t/-/312003/18?silent=true)).

* * *

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [8 ביוני,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/126 "2026-06-08T19:01:47Z")

</div>

## Overview

This week’s AI-related discussions on [meta.discourse.org](http://meta.discourse.org) clustered around **three practical themes** :

1. **AI-assisted composition and moderation UX** : admins want _more granular control_ over what the AI Helper generates (titles vs tags vs categories) and how it behaves in constrained category setups. This surfaced both a feature request for per-button toggles in the composer ([Feature request for ai title generator: toggle title/tag/category](https://meta.discourse.org/t/-/404580/1?silent=true)) and a bug where tag suggestions didn’t respect category tag restrictions ([AI Helper can suggest tags not allowed in category](https://meta.discourse.org/t/-/404423/1?silent=true)).

2. **Clarifying “AI” vs “not actually LLM” functionality** : a key point was reiterated that **tag/category suggestions are embedding-based rather than LLM-driven** , which affects how much “prompting” can steer outcomes ([How to customize AI tag and category suggestions](https://meta.discourse.org/t/-/404618/2?silent=true)).

3. **AI + localization + tooling edge cases** : there were reports of **language mis-detection** and **translation freshness confusion** in localized AI features ([Weird: reply edit not displaying, and indicated as written in French when it was in English](https://meta.discourse.org/t/-/404674/1?silent=true)), plus a developer-facing issue where the **AI Tools Test Runner appears to negotiate SSL against a plain `http://` internal endpoint** ([Der AI Tools Test Runner macht bei http-URLs intern SSL](https://meta.discourse.org/t/-/404705/1?silent=true)).

* * *

## Interesting Topics

- **AI localization mis-detects language and hides edits behind an outdated translation** (#Contribute > Site feedback, #ai, #dynaloc, #content-localization)  
@stephtara reported that a post written in English was flagged as French and that a subsequent edit “didn’t show” in the rendered view ([report](https://meta.discourse.org/t/-/404674/1?silent=true)). @Moin explained the mis-detection can be triggered by a single word like “French”, and noted the “missing edit” was likely due to viewing an **out-of-date translation** rather than the source post ([diagnosis + workaround](https://meta.discourse.org/t/-/404674/2?silent=true)). The thread ended with the original poster confirming the explanation and manually correcting the detected language ([confirmation](https://meta.discourse.org/t/-/404674/3?silent=true)), plus a memorable reminder about the limits of language detection:

- **Bug: AI Helper suggests tags that the category does not allow** (#Contribute > Bug, #ai)  
@thgl found that the AI Helper could recommend restricted tags and even allow selecting them, only to block submission later—while manual tag entry correctly enforced restrictions ([bug report](https://meta.discourse.org/t/-/404423/1?silent=true)). @zogstrip acknowledged the issue quickly ([ack](https://meta.discourse.org/t/-/404423/2?silent=true)) and followed up with a fix already prepared via a PR ([fix status](https://meta.discourse.org/t/-/404423/4?silent=true)). The reporter confirmed the turnaround was fast ([thanks](https://meta.discourse.org/t/-/404423/5?silent=true)).

- **Feature request: toggles to enable AI tagging/categorization but disable AI title generation** (#Contribute > Feature, #ai)  
@Frully asked for **separate toggles** for title, tag, and category suggestion buttons—wanting to keep AI help for _classification_ while requiring users to craft their own titles ([request + rationale](https://meta.discourse.org/t/-/404580/1?silent=true)). @NateDhaliwal suggested a pragmatic interim approach: hide only the “suggest titles” button via CSS ([CSS workaround](https://meta.discourse.org/t/-/404580/2?silent=true)), which the requester accepted as workable ([follow-up](https://meta.discourse.org/t/-/404580/3?silent=true)).

- **How to customize AI tag/category suggestions: clarification that it’s embeddings-based, not LLM-prompted** (#Support, #ai, #ai-helper, _Solved_)  
@Frully wanted to “teach” the helper how their community organizes content (e.g., consistent #meetings patterns and required tags) and noted the system prompt examples focus on titles, not tags/categories ([question](https://meta.discourse.org/t/-/404618/1?silent=true)). @Falco clarified why: **tag/category suggestion doesn’t use LLM prompts at all** , relying on embeddings of the draft against existing topics instead ([answer / solution](https://meta.discourse.org/t/-/404618/2?silent=true)).

- **AI Tools Test Runner: `http.get()` appears to attempt SSL for internal `http://` endpoints** (#Support, #rest-api, #ai)  
@Tobias1 shared a reproducible script showing `http.get("http://stable-diffusion:7860/")` resolving correctly to an internal IP while failing with an SSL handshake error—suggesting the runner or its HTTP client layer is attempting TLS anyway ([details + error output](https://meta.discourse.org/t/-/404705/1?silent=true)).

* * *

## Activity

- @stephtara raised a nuanced localization/UI issue where AI language detection labeled an English post as French and edits appeared “missing” due to viewing a stale translation ([initial report](https://meta.discourse.org/t/-/404674/1?silent=true); [same thread context](https://meta.discourse.org/t/-/404674/1?silent=true); [follow-up reference](https://meta.discourse.org/t/-/404674/1?silent=true); [more context](https://meta.discourse.org/t/-/404674/1?silent=true); [thread link](https://meta.discourse.org/t/-/404674/1?silent=true)).

- @Moin diagnosed the localization confusion as a combination of _language auto-detection pitfalls_ and _translation freshness_, pointing to the composer’s language picker as a manual override and explaining why edits weren’t visible in the translated view ([analysis](https://meta.discourse.org/t/-/404674/2?silent=true); [quote follow-up](https://meta.discourse.org/t/-/404674/4?silent=true); [thread entry](https://meta.discourse.org/t/-/404674/2?silent=true); [additional reference](https://meta.discourse.org/t/-/404674/4?silent=true); [same discussion](https://meta.discourse.org/t/-/404674/2?silent=true)).

- @thgl reported that AI tag suggestions could violate category tag restrictions and provided clear reproduction steps and UI screenshots, then confirmed the speedy fix work ([bug report](https://meta.discourse.org/t/-/404423/1?silent=true); [reply loop](https://meta.discourse.org/t/-/404423/5?silent=true); [original detail](https://meta.discourse.org/t/-/404423/1?silent=true); [confirmation](https://meta.discourse.org/t/-/404423/5?silent=true); [thread link](https://meta.discourse.org/t/-/404423/1?silent=true)).

- @zogstrip acknowledged the restricted-tag suggestion bug and quickly moved it toward resolution, noting it would be fixed once reviewed/merged/deployed and linking to the implementation work ([ack](https://meta.discourse.org/t/-/404423/2?silent=true); [fix status](https://meta.discourse.org/t/-/404423/4?silent=true); [context link](https://meta.discourse.org/t/-/404423/4?silent=true); [follow-up link](https://meta.discourse.org/t/-/404423/2?silent=true); [same topic](https://meta.discourse.org/t/-/404423/4?silent=true)).

- @Frully drove two related “admin experience” threads: one requesting separate toggles for AI title/tag/category helpers ([feature request](https://meta.discourse.org/t/-/404580/1?silent=true); [follow-up](https://meta.discourse.org/t/-/404580/3?silent=true)) and another asking how to steer tag/category suggestions to match local community taxonomy—later clarified as embeddings-based, not prompt-based ([question](https://meta.discourse.org/t/-/404618/1?silent=true); [same thread](https://meta.discourse.org/t/-/404618/1?silent=true); [feature thread again](https://meta.discourse.org/t/-/404580/1?silent=true); [support thread again](https://meta.discourse.org/t/-/404618/1?silent=true); [follow-up again](https://meta.discourse.org/t/-/404580/3?silent=true)).

- @NateDhaliwal provided a lightweight workaround for teams wanting to reduce generative content: hide only the AI title suggestion UI via CSS so tag/category assistance can remain visible ([CSS snippet](https://meta.discourse.org/t/-/404580/2?silent=true); [reference](https://meta.discourse.org/t/-/404580/2?silent=true); [same post](https://meta.discourse.org/t/-/404580/2?silent=true); [topic link](https://meta.discourse.org/t/-/404580/2?silent=true); [context](https://meta.discourse.org/t/-/404580/2?silent=true)).

- @Falco clarified an important implementation detail: AI tag/category suggestions are based on **embeddings against existing topics** , not LLM prompting—shaping expectations about customization and “prompt steering” ([solution](https://meta.discourse.org/t/-/404618/2?silent=true); [same solution](https://meta.discourse.org/t/-/404618/2?silent=true); [thread link](https://meta.discourse.org/t/-/404618/2?silent=true); [reference](https://meta.discourse.org/t/-/404618/2?silent=true); [context](https://meta.discourse.org/t/-/404618/2?silent=true)).

- @Tobias1 contributed a developer-focused report showing the AI Tools Test Runner’s HTTP client behavior appears to negotiate SSL even when explicitly targeting an internal `http://` URL, including a minimal code sample and the resulting handshake error ([report](https://meta.discourse.org/t/-/404705/1?silent=true); [same report](https://meta.discourse.org/t/-/404705/1?silent=true); [context link](https://meta.discourse.org/t/-/404705/1?silent=true); [reference](https://meta.discourse.org/t/-/404705/1?silent=true); [thread link](https://meta.discourse.org/t/-/404705/1?silent=true)).

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [15 ביוני,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/127 "2026-06-15T19:01:00Z")

</div>

# Overview

This week (2026-06-08 → 2026-06-15) saw a _small but practical_ burst of Discourse AI discussion on meta (12 new posts across 2 new topics), largely centered on **AI Translation configuration changes and cost/scope visibility** , plus a few **ops-and-admin gotchas** around built-in AI tooling.

A key theme was _understanding what changed_ in AI Translation settings—specifically the shift from “translatable categories” to an “excluded categories” model and how communities were migrated—along with ways to **audit/measure translation scope and volume** via staff logs and [Data Explorer](https://meta.discourse.org/t/32566?silent=true) ([AI Translation: What happened to “Translatable Categories” and how are translation costs calculated?](https://meta.discourse.org/t/-/405072/1?silent=true), [migration clarification quoted in-thread](https://meta.discourse.org/t/-/405072/2?silent=true), [Data Explorer query suggestion](https://meta.discourse.org/t/-/405072/3?silent=true), and the referenced earlier explanation at [392993/7](https://meta.discourse.org/t/-/392993/7?silent=true)).

Elsewhere, staff and community members discussed incremental improvements and limitations in _unsupervised machine translation_ for tags ([AI-generated tag translations do not work perfectly](https://meta.discourse.org/t/-/399570/18?silent=true)), clarified a **port/protocol quirk** in the AI Tools Test Runner ([Der AI Tools Test Runner macht bei http-URLs intern SSL](https://meta.discourse.org/t/-/404705/2?silent=true)), and covered _what you can and can’t customize_ in the built-in sentiment classifier—often pointing admins toward self-hosting if they need deeper control ([Classification in the Discourse Sentiment Dashboard](https://meta.discourse.org/t/-/404193/5?silent=true), plus the pointer to [self-hosting sentiment and emotion](https://meta.discourse.org/t/-/334451/1?silent=true)). Finally, an admin asked about removing an auto-created AI-related admin account (“deepseek-chat”), with guidance that it’s tied to the AI plugin/bot and notes on staff-user deletion flows ([请问怎么删除deepseek-chat这个自动建立的管理员账户](https://meta.discourse.org/t/-/405250/1?silent=true), with deletion reference to [Deleting users in rails console](https://meta.discourse.org/t/-/141540/11?silent=true)).

# Interesting Topics

- **AI Translation setting migration: “Translatable categories” → “Excluded categories”** (#ai #dynaloc #Support)  
@Sara_Carmona_y_Lladó noticed the AI Translation UI no longer shows _Translatable categories_ and asked whether behavior changed, whether a migration occurred, and how scope/cost are now determined ([AI Translation: What happened to “Translatable Categories” and how are translation costs calculated?](https://meta.discourse.org/t/-/405072/1?silent=true)). @Moin confirmed a migration did happen and explained how category lists were converted to preserve prior behavior ([migration explanation](https://meta.discourse.org/t/-/405072/2?silent=true)), referencing prior staff guidance ([392993/7](https://meta.discourse.org/t/-/392993/7?silent=true)).

- **Auditing AI Translation scope + “what got translated” using logs and [Data Explorer](https://meta.discourse.org/t/32566?silent=true)** (#ai #dynaloc #Support)  
Alongside the migration explanation, @Moin suggested using staff action logs to detect manual setting changes and shared a [Data Explorer](https://meta.discourse.org/t/32566?silent=true) query to break down translations by category/language/count ([Data Explorer approach](https://meta.discourse.org/t/-/405072/3?silent=true), continuing the thread at [405072/2](https://meta.discourse.org/t/-/405072/2?silent=true)).

- **AI tag translation quality: what improved, and what remains lower priority** (#ai #dynaloc #tags #Contribute > Site feedback)  
In follow-up to earlier reports, @nat confirmed that tags mentioned in the original report “_should be handled now on meta_,” while also noting that passing additional context into tag translation is still not high priority ([AI-generated tag translations do not work perfectly](https://meta.discourse.org/t/-/399570/18?silent=true)). @Moin asked how to spot which tag translations improved since the report ([399570/15](https://meta.discourse.org/t/-/399570/15?silent=true)).

- **AI Tools Test Runner protocol behavior: non-80 ports default to HTTPS** (#ai #rest-api #Support)  
@Falco clarified current behavior: the test runner supports HTTP only on port 80, and other ports default internally to HTTPS—resolving the report ([Der AI Tools Test Runner macht bei http-URLs intern SSL](https://meta.discourse.org/t/-/404705/2?silent=true)).

- **Sentiment Dashboard classifier customization: built-ins appear locked; self-hosting as a path** (#ai #ai-sentiment #Support)  
@Lauraruskovic reported that the built-in sentiment classifier agent’s prompt fields appear locked/read-only even with admin access and asked whether the recommended path is creating a custom agent ([Classification in the Discourse Sentiment Dashboard](https://meta.discourse.org/t/-/404193/5?silent=true)). @NateDhaliwal suggested the built-ins aren’t editable “yet,” and pointed to self-hosting sentiment/emotion as a possible workaround ([404193/10](https://meta.discourse.org/t/-/404193/10?silent=true), [self-hosting sentiment and emotion](https://meta.discourse.org/t/-/334451/1?silent=true)).

- **Auto-created AI admin account (“deepseek-chat”): can/should it be deleted?** (#ai #Support)  
@sniper756 asked how to remove an automatically created admin account tied to “deepseek-chat” ([请问怎么删除deepseek-chat这个自动建立的管理员账户](https://meta.discourse.org/t/-/405250/1?silent=true)). @NateDhaliwal noted it’s likely the bot used by the AI plugin and can be deleted if unused (with caveats), referencing the rails-console approach for deleting staff users ([405250/2](https://meta.discourse.org/t/-/405250/2?silent=true), [Deleting users in rails console](https://meta.discourse.org/t/-/141540/11?silent=true)).

# Activity

- @Moin  
Drove the main week’s “AI Translation settings changed” investigation by confirming the migration and detailing how _translatable categories_ were converted into the newer excluded-categories model ([AI Translation: What happened to “Translatable Categories” and how are translation costs calculated?](https://meta.discourse.org/t/-/405072/2?silent=true), also see the original question at [405072/1](https://meta.discourse.org/t/-/405072/1?silent=true)). They also suggested auditing via staff logs and provided a [Data Explorer](https://meta.discourse.org/t/32566?silent=true) query to quantify translations by category/language ([405072/3](https://meta.discourse.org/t/-/405072/3?silent=true)). Separately, they followed up on tag translation quality improvements and asked how to identify what changed since their earlier report ([AI-generated tag translations do not work perfectly](https://meta.discourse.org/t/-/399570/15?silent=true), with resolution update at [399570/18](https://meta.discourse.org/t/-/399570/18?silent=true)).  
Related references included the earlier migration note they quoted ([392993/7](https://meta.discourse.org/t/-/392993/7?silent=true)) and the broader tag translation thread context ([399570/18](https://meta.discourse.org/t/-/399570/18?silent=true), [399570/15](https://meta.discourse.org/t/-/399570/15?silent=true)).

- @Sara_Carmona_y_Lladó  
Opened the most substantive new topic of the week, flagging the UI/behavior change from “Translatable categories” to “Excluded categories,” asking how to interpret the backfill scope message, and requesting clarity on how costs are computed ([AI Translation: What happened to “Translatable Categories” and how are translation costs calculated?](https://meta.discourse.org/t/-/405072/1?silent=true)). The follow-up explanation and migration details came in responses ([405072/2](https://meta.discourse.org/t/-/405072/2?silent=true), [405072/3](https://meta.discourse.org/t/-/405072/3?silent=true)).

- @nat  
Provided a concrete update on AI tag translation handling: tags listed in the original report (and additional ones) “should” now be handled on meta, while additional-context improvements remain a lower priority ([AI-generated tag translations do not work perfectly](https://meta.discourse.org/t/-/399570/18?silent=true)). This directly addressed ongoing follow-up from @Moin ([399570/15](https://meta.discourse.org/t/-/399570/15?silent=true)).

- @Falco  
Resolved a Support report about the AI Tools Test Runner switching protocol unexpectedly, clarifying that HTTP is only supported on port 80, while other ports default to HTTPS ([Der AI Tools Test Runner macht bei http-URLs intern SSL](https://meta.discourse.org/t/-/404705/2?silent=true)). This was marked solved in-thread ([404705/2](https://meta.discourse.org/t/-/404705/2?silent=true)).

- @NateDhaliwal  
Helped in two separate Support threads:

- @Lauraruskovic  
Continued the discussion on sentiment classifier configuration, explaining they found the classifier agent but couldn’t edit its prompt despite admin rights, and asked whether a custom agent is the recommended approach ([Classification in the Discourse Sentiment Dashboard](https://meta.discourse.org/t/-/404193/5?silent=true), with the customization discussion continuing via [404193/6](https://meta.discourse.org/t/-/404193/6?silent=true) and the self-hosting pointer at [404193/10](https://meta.discourse.org/t/-/404193/10?silent=true)).

- @sniper756  
Raised an admin-maintenance question about removing an automatically created AI-related admin account (“deepseek-chat”), including screenshots of the user/account in question ([请问怎么删除deepseek-chat这个自动建立的管理员账户](https://meta.discourse.org/t/-/405250/1?silent=true)). The reply discussed whether it’s safe to delete and how to do it if needed ([405250/2](https://meta.discourse.org/t/-/405250/2?silent=true), with extra context in [Deleting users in rails console](https://meta.discourse.org/t/-/141540/11?silent=true)).

* * *

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [22 ביוני,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/128 "2026-06-22T19:01:38Z")

</div>

## Overview

This week (2026-06-15 → 2026-06-22), AI discussion on [meta.discourse.org](http://meta.discourse.org) clustered around **UX improvements to the in-composer AI helper** , **cost-control and scoping for AI agents** , and **practical configuration/debugging hurdles** for self-hosted setups—especially around endpoints, SSRF protection, and translation edge-cases. The biggest product-facing change was the new inline flow for _AI Suggestions_ in the composer ([Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/1?silent=true)), while most of the support energy went into getting AI setups working reliably and cheaply (e.g. category-limited search to reduce token spend in [Reducing AI token usage with category filtering](https://meta.discourse.org/t/-/405510/1?silent=true), and endpoint correctness/log inspection in [“Trying to contact this model returned this error” is blank](https://meta.discourse.org/t/-/405569/1?silent=true)).

On the “AI in production” side, self-hosters continued to run into infrastructure realities: internal LLM routing (LiteLLM/Vertex-style) tripping SSRF defenses in [How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/1?silent=true) and translation jobs failing due to problematic content bytes in [DiscourseAi::Translation: Failed to translate post due to string contains null byte](https://meta.discourse.org/t/-/405802/1?silent=true). Finally, a small but very relatable UX request landed for translation backfills—a date picker to avoid mental math in [Request for a date picker in AI Translate settings](https://meta.discourse.org/t/-/405828/1?silent=true).

> The net takeaway: AI features are maturing in the editor experience ([Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/1?silent=true)), while admins are increasingly focused on **controlling scope/cost** ([Reducing AI token usage with category filtering](https://meta.discourse.org/t/-/405510/2?silent=true)) and **hardening configuration** ([“Trying to contact this model returned this error” is blank](https://meta.discourse.org/t/-/405569/2?silent=true), [How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/2?silent=true)).

* * *

## Interesting Topics

- **Inline AI Suggestions in the composer got a UX refresh** (#Announcements, #ai, #ai-helper, #ux)  
@chapoi announced that _AI helper – suggestions_ for categories and tags have been moved **inline** in the composer, aiming for a more “one-step” flow—especially with a new _“Choose for me”_ option for category selection ([Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/1?silent=true)). @Ed_S clarified that this applies only when AI is enabled/configured ([Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/2?silent=true)), and @chapoi confirmed it’s gated behind the AI helper being enabled ([Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/3?silent=true)).  
Key refs: [announcement post](https://meta.discourse.org/t/-/405394/1?silent=true), [self-hosted question](https://meta.discourse.org/t/-/405394/2?silent=true), [confirmation](https://meta.discourse.org/t/-/405394/3?silent=true).

- **Reducing token usage by limiting AI agent search to a category** (#Support, #ai)  
@alefattorini asked how to constrain an agent so it only considers posts from a specific category, explicitly to **reduce token usage** ([Reducing AI token usage with category filtering](https://meta.discourse.org/t/-/405510/1?silent=true)). @Falco pointed out that when using the default **Search** tool, the Agent Edit UI already supports limiting by category—and that this is even used as the help-text example ([Reducing AI token usage with category filtering](https://meta.discourse.org/t/-/405510/2?silent=true)).  
Key refs: [question](https://meta.discourse.org/t/-/405510/1?silent=true), [category-limited search guidance](https://meta.discourse.org/t/-/405510/2?silent=true).

- **Blank “Trying to contact this model…” errors traced to endpoint configuration + debugging via logs** (#Support, #ai)  
When an LLM test returned an empty/blank error message, @alefattorini shared screenshots and asked how to debug ([“Trying to contact this model returned this error” is blank](https://meta.discourse.org/t/-/405569/1?silent=true)). @Falco highlighted that the URL must be a correct OpenAI endpoint (either `.../v1/chat/completions` or `.../v1/responses`) and suggested checking the `/logs` page for more detail, plus noted model choice tradeoffs (e.g. GPT “Nano” vs “Mini”) ([“Trying to contact this model returned this error” is blank](https://meta.discourse.org/t/-/405569/2?silent=true)).  
Key refs: [problem report](https://meta.discourse.org/t/-/405569/1?silent=true), [endpoint + /logs guidance](https://meta.discourse.org/t/-/405569/2?silent=true).

- **Self-hosting + internal LLM gateways (LiteLLM / Vertex-style) ran into SSRF protections** (#Support, #ai)  
@satonotdead described trying to use internal endpoints (like LiteLLM) from a self-hosted Discourse, but hit a 500 during LLM testing and surfaced an SSRF-related exception: `FinalDestination::SSRFDetector::DisallowedIpError` ([How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/1?silent=true)). @Falco advised allowing the internal host via `DISCOURSE_ALLOWED_INTERNAL_HOSTS` if it’s running on the same server ([How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/2?silent=true)).  
Key refs: [SSRF error + context](https://meta.discourse.org/t/-/405831/1?silent=true), [env var guidance](https://meta.discourse.org/t/-/405831/2?silent=true).

- **AI Translation failures caused by “string contains null byte”** (#Support, #ai)  
@LotusJeff reported a translation failure (`DiscourseAi::Translation: Failed to translate post due to string contains null byte`) and asked for ways to locate null bytes in content after manually reviewing the post and title ([DiscourseAi::Translation: Failed to translate post due to string contains null byte](https://meta.discourse.org/t/-/405802/1?silent=true)).  
Key ref: [error report](https://meta.discourse.org/t/-/405802/1?silent=true).

- **Feature request: a date picker for translation backfill max age** (#Feature, #ai, #dynaloc, #content-localization)  
@LotusJeff requested a date picker for the **AI translation backfill max age (days)** setting—especially helpful for communities with decades of archives where day-count math is annoying ([Request for a date picker in AI Translate settings](https://meta.discourse.org/t/-/405828/1?silent=true)).  
Key ref: [request](https://meta.discourse.org/t/-/405828/1?silent=true).

* * *

## Activity

- @chapoi  
Shipped and explained the updated inline UX for the AI helper in the composer, including the new frictionless _“Choose for me”_ category suggestion flow ([Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/1?silent=true)). They also clarified that the UI appears only when the AI helper is enabled ([Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/3?silent=true)).  
References: [Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/1?silent=true), [AI-enabled gating clarification](https://meta.discourse.org/t/-/405394/3?silent=true), [follow-up context](https://meta.discourse.org/t/-/405394/1?silent=true).

- @Ed_S  
Asked the key “does this require AI to be configured?” question on the composer-suggestions update, ensuring self-hosted admins understand the feature gating ([Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/2?silent=true)).  
References: [Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/2?silent=true), [announcement context](https://meta.discourse.org/t/-/405394/1?silent=true).

- @alefattorini  
Drove two practical admin threads: first, how to constrain an AI agent to a single category to keep token usage under control ([Reducing AI token usage with category filtering](https://meta.discourse.org/t/-/405510/1?silent=true)); and second, how to debug an LLM connectivity test that returned a blank error message ([“Trying to contact this model returned this error” is blank](https://meta.discourse.org/t/-/405569/1?silent=true)).  
References: [Reducing AI token usage with category filtering](https://meta.discourse.org/t/-/405510/1?silent=true), [“Trying to contact this model returned this error” is blank](https://meta.discourse.org/t/-/405569/1?silent=true), [category scoping follow-up](https://meta.discourse.org/t/-/405510/2?silent=true).

- @Falco  
Provided the week’s most actionable fixes across three different support themes. They showed how the agent “Search” tool can be limited by category (directly addressing token/cost concerns) ([Reducing AI token usage with category filtering](https://meta.discourse.org/t/-/405510/2?silent=true)), diagnosed “blank error” model testing as an endpoint misconfiguration while recommending `/logs` for debugging ([“Trying to contact this model returned this error” is blank](https://meta.discourse.org/t/-/405569/2?silent=true)), and pointed self-hosters at `DISCOURSE_ALLOWED_INTERNAL_HOSTS` when internal endpoints trigger SSRF protections ([How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/2?silent=true)).  
References: [Reducing AI token usage with category filtering](https://meta.discourse.org/t/-/405510/2?silent=true), [“Trying to contact this model returned this error” is blank](https://meta.discourse.org/t/-/405569/2?silent=true), [How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/2?silent=true), plus related context in [the original endpoint debug post](https://meta.discourse.org/t/-/405569/1?silent=true) and [the SSRF error report](https://meta.discourse.org/t/-/405831/1?silent=true).

- @LotusJeff  
Flagged two translation-adjacent pain points: a request to make translation backfills easier to configure via a date picker in settings ([Request for a date picker in AI Translate settings](https://meta.discourse.org/t/-/405828/1?silent=true)), and an urgent debugging issue where translations failed due to a suspected null byte in content ([DiscourseAi::Translation: Failed to translate post due to string contains null byte](https://meta.discourse.org/t/-/405802/1?silent=true)).  
References: [Request for a date picker in AI Translate settings](https://meta.discourse.org/t/-/405828/1?silent=true), [DiscourseAi::Translation: Failed to translate post due to string contains null byte](https://meta.discourse.org/t/-/405802/1?silent=true), plus broader translation context implied by [AI Translate settings discussion](https://meta.discourse.org/t/-/405828/1?silent=true).

- @satonotdead  
Documented a self-hosted attempt to use internal AI API endpoints (LiteLLM / Vertex-style routing) and surfaced the specific SSRF detector error blocking requests, helping narrow the issue to allowed internal hosts/networking ([How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/1?silent=true)).  
References: [How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/1?silent=true), [Falco’s guidance on allowed internal hosts](https://meta.discourse.org/t/-/405831/2?silent=true).

* * *

### Link index (all key threads, for quick scanning)

- [Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/1?silent=true) • [post 2](https://meta.discourse.org/t/-/405394/2?silent=true) • [post 3](https://meta.discourse.org/t/-/405394/3?silent=true)
- [Reducing AI token usage with category filtering](https://meta.discourse.org/t/-/405510/1?silent=true) • [post 2](https://meta.discourse.org/t/-/405510/2?silent=true)
- [“Trying to contact this model returned this error” is blank](https://meta.discourse.org/t/-/405569/1?silent=true) • [post 2](https://meta.discourse.org/t/-/405569/2?silent=true)
- [DiscourseAi::Translation: Failed to translate post due to string contains null byte](https://meta.discourse.org/t/-/405802/1?silent=true)
- [Request for a date picker in AI Translate settings](https://meta.discourse.org/t/-/405828/1?silent=true)
- [How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/1?silent=true) • [post 2](https://meta.discourse.org/t/-/405831/2?silent=true)

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [29 ביוני,‏ 2026,‏ 7:02pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/129 "2026-06-29T19:02:20Z")

</div>

# Overview

This week’s AI discussions on Meta centered on **quality, transparency, and UX polish** across Discourse AI features—especially _Ask Discourse_, _AI Translation / Content Localization_, and _inline AI helpers in the composer_. A few admins noticed shifting answer quality in Ask Discourse and learned the service recently moved to a **locally hosted open-weights model** ([Ask discourse moins performant](https://meta.discourse.org/t/-/406105/1?silent=true), [model change note](https://meta.discourse.org/t/-/406105/2?silent=true), [rationale + guidance](https://meta.discourse.org/t/-/406105/4?silent=true)).

On the localization front, several threads highlighted how **translation progress can be confusing at scale** , due to caching and multi-step processing, sparking concrete requests for improved reporting and settings (including better progress visibility and a _date picker / fixed cutoff_) ([AI Translation Progress Graph](https://meta.discourse.org/t/-/405915/1?silent=true), [caching + two-step explanation](https://meta.discourse.org/t/-/405915/2?silent=true), [date picker request](https://meta.discourse.org/t/-/405828/3?silent=true), [topics vs posts pacing](https://meta.discourse.org/t/-/406189/2?silent=true)). Relatedly, admins asked about **language fallbacks** (e.g., “serve English when the user’s locale isn’t supported”), and staff confirmed this isn’t supported yet beyond the site default locale behavior ([Can I force English for unsupported languages](https://meta.discourse.org/t/-/406039/1?silent=true), [fallback locales not supported](https://meta.discourse.org/t/-/406039/2?silent=true), [current fallback behavior](https://meta.discourse.org/t/-/406039/3?silent=true)).

A few practical/operational issues also surfaced: debugging internal LLM endpoints and allowed host settings ([How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/5?silent=true), [allowed host suggestion](https://meta.discourse.org/t/-/405831/6?silent=true)), enabling the AI plugin after it got “stuck” disabled (plus clarification that on free tier it stays enabled for key functionality like spam detection) ([Can’t get the AI plugin enabled](https://meta.discourse.org/t/-/406240/1?silent=true), [fix in progress + free-tier note](https://meta.discourse.org/t/-/406240/3?silent=true)), and a small but telling edge case where **HTML comments get included in AI summaries** (ultimately marked #wontfix, with a prompt workaround) ([HTML comments are also summarized by AI](https://meta.discourse.org/t/-/406275/1?silent=true), [wontfix + workaround](https://meta.discourse.org/t/-/406275/3?silent=true)).

Finally, there was continued attention on **UI integration quality** for AI assist buttons in editing flows—overlapping icons and absolute-positioned buttons causing layout issues—tying back to the broader inline AI composer integration work ([Topic edit interface shows overlapping icons](https://meta.discourse.org/t/-/406255/1?silent=true), [linked to inline integration thread](https://meta.discourse.org/t/-/406255/2?silent=true), [AI title suggest icon placement issue](https://meta.discourse.org/t/-/406256/1?silent=true), [inline integration of AI Suggestions](https://meta.discourse.org/t/-/405394/4?silent=true)).

* * *

# Interesting Topics

- **Ask Discourse answer quality concerns after a model change** (#ai, #ask-discourse, #Support)  
@gilles reported Ask Discourse felt “less performant” lately ([Ask discourse moins performant](https://meta.discourse.org/t/-/406105/1?silent=true)). @nat confirmed a recent switch to a locally hosted **DeepSeek v4 flash** model ([model change note](https://meta.discourse.org/t/-/406105/2?silent=true)), and @Falco clarified the goal is fast, doc-grounded troubleshooting—not dev assistance—recommending dev harnesses like _dv_ instead ([explanation + dv recommendation](https://meta.discourse.org/t/-/406105/4?silent=true), [Using dv (Discourse Vibe) to configure Discourse AI in development](https://meta.discourse.org/t/-/388622/1?silent=true)).

- **Translation progress graph accuracy, caching, and “what does progress even mean?”** (#translation, #ai, #Data-&-reporting)  
@LotusJeff found the progress graph misleading on a large site ([AI Translation Progress Graph](https://meta.discourse.org/t/-/405915/1?silent=true)). @Falco explained the page is cached to avoid timeouts and that translation involves _language detection_ followed by _translation into other locales_—with early-stage detection progress no longer shown, making the initial experience feel “awful” ([caching + 2-step pipeline](https://meta.discourse.org/t/-/405915/2?silent=true)). @LotusJeff proposed a clearer “eligible vs translated” reporting model and started sharing Data Explorer SQL prototypes ([reporting proposal](https://meta.discourse.org/t/-/405915/3?silent=true), [SQL examples](https://meta.discourse.org/t/-/405915/4?silent=true)), and @nat noted improvements are planned ([staff follow-up](https://meta.discourse.org/t/-/405915/5?silent=true)).

- **Debugging internal/self-hosted LLM endpoints in Discourse AI** (#ai, #Support)  
@satonotdead struggled to use an internal endpoint URL that worked inside the container, but failed the Discourse AI UI test ([problem report + stack trace](https://meta.discourse.org/t/-/405831/5?silent=true)). @Falco suggested ensuring `DISCOURSE_ALLOWED_INTERNAL_HOSTS` contains the **hostname** (not only an IP range) ([allowed host suggestion](https://meta.discourse.org/t/-/405831/6?silent=true)). Context referenced earlier Ollama-local setups too ([Getting Discourse AI to work with Ollama locally](https://meta.discourse.org/t/-/353614/14?silent=true)).

- **Locale fallback policy: forcing English for unsupported languages** (#translation, #ai, #Feature)  
@Jagster asked if unsupported locales could fall back to English without changing a Finnish-heavy site’s default locale ([question](https://meta.discourse.org/t/-/406039/1?silent=true)). @Falco confirmed “fallback locales” have been requested but aren’t supported ([no fallback locales yet](https://meta.discourse.org/t/-/406039/2?silent=true)), and @nat clarified current behavior: disabling fallback shows original language; using English fallback implies setting default locale to `en` ([behavior details](https://meta.discourse.org/t/-/406039/3?silent=true)).

- **AI Summarization includes HTML comments (and why that’s #wontfix)** (#ai, #ai-summarize, #Feature)  
@ばこん noticed that HTML comments (which readers can’t see) are still being summarized ([report](https://meta.discourse.org/t/-/406275/1?silent=true), [example](https://meta.discourse.org/t/-/406275/2?silent=true)). @Falco marked it #wontfix, suggesting a prompt tweak to instruct the summary agent to ignore comments if it matters for a given instance ([decision + workaround](https://meta.discourse.org/t/-/406275/3?silent=true)).

- **AI plugin stuck disabled + free-tier “AI plugin can’t be disabled” clarification** (#ai, #Support)  
@ondrej couldn’t re-enable AI after disabling it earlier ([issue](https://meta.discourse.org/t/-/406240/1?silent=true)). @keegan confirmed a fix is needed for the “stuck disabled” state and clarified that on **free tier** the AI plugin remains enabled because it powers critical features like spam detection, while individual AI features can be toggled off ([fix + policy](https://meta.discourse.org/t/-/406240/3?silent=true)). The request also referenced existing setup documentation ([documentation excerpt source](https://meta.discourse.org/t/-/266012/1?silent=true)).

- **AI UI polish: overlapping icons and absolute-positioned AI buttons** (#ai, #ux)  
@Moin reported stacked/overlapping icons when editing topic info ([overlap report](https://meta.discourse.org/t/-/406255/1?silent=true)), and @Falco linked it to the ongoing inline AI integration thread ([cross-reference](https://meta.discourse.org/t/-/406255/2?silent=true), [Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/4?silent=true)). In a related UX issue, @Moin noted the AI title suggestion button can stay fixed while the title field shifts—especially in translated-title editing—and that suggestions appeared in English ([title icon placement](https://meta.discourse.org/t/-/406256/1?silent=true)); @chapoi later called out the `position: absolute` button as a recurring cause of issues ([follow-up](https://meta.discourse.org/t/-/406256/2?silent=true)).

- **Why topics translate faster than posts (and what to tweak)** (#ai, #content-localization, #Support)  
@LotusJeff observed topic data translating months back while posts lagged behind ([question](https://meta.discourse.org/t/-/406189/1?silent=true)). @Falco explained batches are similar sizes, but topics naturally complete faster, especially with many-post topics, and suggested adjusting max age or backfill rate to help posts catch up ([explanation + knobs](https://meta.discourse.org/t/-/406189/2?silent=true)).

- **Feature request: date picker (fixed cutoff date) for AI Translation settings** (#ai, #dynaloc, #content-localization, #Feature)  
In the date-picker discussion, @mcwumbly noted the setting might need to be “translate all posts after {date}” rather than “days backfill” ([framing](https://meta.discourse.org/t/-/405828/2?silent=true)). @LotusJeff argued rolling windows can cause older edited content to drift out of scope, and also highlighted the “topics translated but posts not yet” mismatch as a user-facing problem ([rolling window concern](https://meta.discourse.org/t/-/405828/3?silent=true), [additional rationale](https://meta.discourse.org/t/-/405828/4?silent=true)).

- **How sentiment/emotion classification is assigned in the Sentiment dashboard** (#ai, #ai-sentiment, #Support)  
@fzngagan summarized which models power sentiment and emotion classification and explained the difference between model-based classification and agent-based strategies via site settings ([sentiment classification overview](https://meta.discourse.org/t/-/404193/11?silent=true)), pointing back to the referenced documentation snippet about current models ([models reference](https://meta.discourse.org/t/-/259599/1?silent=true)) and noting admins can create new agents at `/admin/plugins/discourse-ai/ai-agents` rather than editing defaults ([agent approach context](https://meta.discourse.org/t/-/404193/11?silent=true)).

* * *

# Activity

- @Falco clarified product positioning and tradeoffs across multiple AI surfaces: the Ask Discourse model swap and why _dv_ is better for dev work ([Ask discourse moins performant](https://meta.discourse.org/t/-/406105/4?silent=true), [Using dv (Discourse Vibe) to configure Discourse AI in development](https://meta.discourse.org/t/-/388622/1?silent=true)); translation progress caching and the two-step pipeline ([AI Translation Progress Graph](https://meta.discourse.org/t/-/405915/2?silent=true)); internal LLM endpoint host allowlisting ([How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/6?silent=true)); locale fallback limitations ([Can I force English for unsupported languages](https://meta.discourse.org/t/-/406039/2?silent=true)); summarization HTML comments tradeoff + workaround ([HTML comments are also summarized by AI](https://meta.discourse.org/t/-/406275/3?silent=true)); composer/edit UI overlap triage by linking it back to ongoing work ([Topic edit interface shows overlapping icons](https://meta.discourse.org/t/-/406255/2?silent=true), [Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/4?silent=true)); and why topics translate faster than posts with tuning suggestions ([Why topics translate faster than posts](https://meta.discourse.org/t/-/406189/2?silent=true)).

- @nat confirmed key operational details and next steps: Ask Discourse moved to a locally hosted DeepSeek model and would be checked ([Ask discourse moins performant](https://meta.discourse.org/t/-/406105/2?silent=true)); translation reporting improvements are on the radar ([AI Translation Progress Graph](https://meta.discourse.org/t/-/405915/5?silent=true)); locale fallback behavior depends on site default and supported locales ([Can I force English for unsupported languages](https://meta.discourse.org/t/-/406039/3?silent=true)); and troubleshooting a repeated-bot-reply issue by recommending updates and migration from Automation to the newer workflow plugin due to idempotency concerns ([使用 ai 角色对帖子进行分类…](https://meta.discourse.org/t/-/406093/8?silent=true), [suspicious timings discussion](https://meta.discourse.org/t/-/406093/5?silent=true)).

- @LotusJeff drove several translation deep-dives: reporting confusion and caching implications in the progress graph ([AI Translation Progress Graph](https://meta.discourse.org/t/-/405915/1?silent=true), [follow-up proposal](https://meta.discourse.org/t/-/405915/3?silent=true)); shared early [Data Explorer](https://meta.discourse.org/t/32566?silent=true) SQL to quantify eligible vs translated content ([SQL examples](https://meta.discourse.org/t/-/405915/4?silent=true)); asked why topic translations race ahead of post translations ([Why topics translate faster than posts](https://meta.discourse.org/t/-/406189/1?silent=true)); and reinforced why a _fixed cutoff date_ would reduce “translated topic / untranslated posts” periods ([Request for a date picker in AI Translate settings](https://meta.discourse.org/t/-/405828/4?silent=true), [rolling window concern](https://meta.discourse.org/t/-/405828/3?silent=true)).

- @gilles raised the initial signal that Ask Discourse output quality felt worse, prompting staff to confirm the underlying model change and intended use case ([Ask discourse moins performant](https://meta.discourse.org/t/-/406105/1?silent=true), [follow-up reaction](https://meta.discourse.org/t/-/406105/5?silent=true)).

- @satonotdead documented a tricky internal endpoint integration bug where the endpoint worked inside the container but failed via the Discourse AI UI test, sharing stack traces and config attempts ([How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/5?silent=true), [continued debugging request](https://meta.discourse.org/t/-/405831/7?silent=true)), and referenced prior Ollama-local guidance ([Getting Discourse AI to work with Ollama locally](https://meta.discourse.org/t/-/353614/14?silent=true)).

- @Jagster prompted a clear statement of current limitations around fallback locales—highlighting a real-world “Finnish-default site, but serve English to unsupported languages” scenario ([Can I force English for unsupported languages](https://meta.discourse.org/t/-/406039/1?silent=true)).

- @ばこん identified an AI summarization edge case: HTML comments being summarized even though they aren’t visible in the rendered post ([HTML comments are also summarized by AI](https://meta.discourse.org/t/-/406275/1?silent=true), [example clarification](https://meta.discourse.org/t/-/406275/2?silent=true)).

- @ondrej reported being unable to re-enable the AI plugin after previously disabling it, and questioned the “critical on free plan” reasoning after disabling spam detection on a small private forum ([Can’t get the AI plugin enabled](https://meta.discourse.org/t/-/406240/1?silent=true), [follow-up question](https://meta.discourse.org/t/-/406240/4?silent=true)).

- @keegan confirmed the AI plugin “stuck disabled” behavior needs a fix and explained the free-tier constraint: AI plugin remains enabled to power key functions like spam detection, while allowing admins to disable other AI features in the UI ([Can’t get the AI plugin enabled](https://meta.discourse.org/t/-/406240/3?silent=true)).

- @Moin flagged two UX regressions around AI buttons in editing flows: stacked icons in topic edit UI ([Topic edit interface shows overlapping icons](https://meta.discourse.org/t/-/406255/1?silent=true)) and the AI title-suggest button’s awkward positioning during translated title edits (including English suggestions in a German editing context) ([AI title suggest icon is placed above the title input field](https://meta.discourse.org/t/-/406256/1?silent=true)).

- @chapoi echoed that the absolutely positioned AI button has been a recurring source of layout issues and indicated they’ll explore fixes when time allows ([AI title suggest icon is placed above the title input field](https://meta.discourse.org/t/-/406256/2?silent=true)).

- @mcwumbly helped refine the translation-date-picker feature framing by pointing out that “days backfill” is inherently rolling, implying a separate “after date” setting might be clearer ([Request for a date picker in AI Translate settings](https://meta.discourse.org/t/-/405828/2?silent=true)).

- @fzngagan provided a practical breakdown of how sentiment/emotion labels are computed, including which Hugging Face models are currently used and how to switch to agent-based classification via settings ([Classification in the Discourse Sentiment Dashboard](https://meta.discourse.org/t/-/404193/11?silent=true), [models reference](https://meta.discourse.org/t/-/259599/1?silent=true)).

- @singi2016cn reported a case where an AI-driven automation unexpectedly replied many times in quick succession, leading to suspicion of retries/idempotency problems and guidance to update and consider migrating from Automation to Workflows ([使用 ai 角色对帖子进行分类…](https://meta.discourse.org/t/-/406093/1?silent=true), [follow-up evidence](https://meta.discourse.org/t/-/406093/4?silent=true), [solution recommending update + workflows](https://meta.discourse.org/t/-/406093/8?silent=true)).

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [6 ביולי,‏ 2026,‏ 7:02pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/130 "2026-07-06T19:02:10Z")

</div>

## Overview

This week’s #ai conversations on #[meta.discourse.org](http://meta.discourse.org) centered on **controlling and understanding AI cost + background usage** , tightening up **security expectations around summarization inputs** , and improving **UX and integrations** across the Discourse AI feature set.

On the cost/ops side, Discourse shipped **estimated dollar-based quotas** for Discourse AI usage (in addition to token limits), making it easier to budget across providers (see [Cost based quotas for Discourse AI](https://meta.discourse.org/t/-/406400/1?silent=true) and the companion guide [Configuring LLM usage quotas in Discourse AI](https://meta.discourse.org/t/-/348125/1?silent=true)). Admins also compared notes on **periodic AI API calls** that can occur even when you’re not actively using AI UI features, due to background jobs like embeddings and summary backfills (see [Does discourse call AI APIs in the background](https://meta.discourse.org/t/-/406836/1?silent=true) and [Falco’s confirmation](https://meta.discourse.org/t/-/406836/2?silent=true)).

On the safety front, there was renewed attention on _what exactly gets fed into summarization prompts_—specifically whether **HTML comments** being included could form a “hidden channel” for manipulation (see [HTML comments are also summarized by AI](https://meta.discourse.org/t/-/406275/4?silent=true), [Falco’s reply](https://meta.discourse.org/t/-/406275/5?silent=true), and [follow-up concerns](https://meta.discourse.org/t/-/406275/6?silent=true)).

Meanwhile, several threads focused on “making it work in the real world”: troubleshooting **500 errors in AI title suggestions** and learning where to find audit logs (see [Qwen3.7-plus support thread](https://meta.discourse.org/t/-/406799/1?silent=true) and guidance on [`ai_api_audit_logs`](https://meta.discourse.org/t/-/406799/2?silent=true)), configuring **internal AI endpoints / LiteLLM sidecars** (see [How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/8?silent=true) and the solution write-up [here](https://meta.discourse.org/t/-/405831/9?silent=true)), and self-hosting translation via **Ollama’s OpenAI-compatible API** (see [Self-Hosting an OpenSource LLM for DiscourseAI](https://meta.discourse.org/t/-/290923/11?silent=true), [model/tokenizer guidance](https://meta.discourse.org/t/-/290923/13?silent=true), and translation constraints discussion [here](https://meta.discourse.org/t/-/290923/15?silent=true)).

UX and product polish also got attention: a fix was proposed for the **AI title suggestion icon positioning** (see [AI title suggest icon is placed above the title input field](https://meta.discourse.org/t/-/406256/4?silent=true)), “inline” AI suggestions raised latency/behavior questions (see [Inline integration of AI Suggestions (in Composer)](https://meta.discourse.org/t/-/405394/6?silent=true) and [latency question](https://meta.discourse.org/t/-/405394/7?silent=true)), and the **docked composer for AI bot conversations** was re-enabled after being accidentally toggled off (see [question](https://meta.discourse.org/t/-/403327/5?silent=true) and [resolution](https://meta.discourse.org/t/-/403327/8?silent=true)).

* * *

## Interesting Topics

- **Cost-based quotas for Discourse AI (estimated dollars, not just tokens)** in #Announcements #ai: @sam announced a new way to cap AI usage by _estimated dollar cost_ per group, to help budgeting across providers ([announcement](https://meta.discourse.org/t/-/406400/1?silent=true)). The feature ties into the existing quota configuration flow ([Configuring LLM usage quotas in Discourse AI](https://meta.discourse.org/t/-/348125/1?silent=true)).

- **AI summarization includes HTML comments (and potential prompt-injection concerns)** in #Feature #ai #ai-summarize: @Ed_S raised the risk that HTML comments could become a “hidden channel” to influence summaries ([concern](https://meta.discourse.org/t/-/406275/4?silent=true)). @Falco acknowledged the possibility—especially with smaller/older models—and pointed to system/user prompt separation as a mitigating concept ([reply](https://meta.discourse.org/t/-/406275/5?silent=true)), which @Ed_S pushed back on as not being a true mechanism against jailbreaks ([follow-up](https://meta.discourse.org/t/-/406275/6?silent=true)).

- **Qwen3.7-plus setup: title suggestion tool hitting 500s + how to debug with audit logs** in #Support #ai: @bird reported a 500 error when using AI title generation despite other AI tools working ([report](https://meta.discourse.org/t/-/406799/1?silent=true)). @Falco recommended querying `ai_api_audit_logs` for more detailed diagnostics ([tip](https://meta.discourse.org/t/-/406799/2?silent=true)), then clarified how to inspect the newest entry and that the 500 was coming from Discourse (not Qwen) ([follow-up](https://meta.discourse.org/t/-/406799/4?silent=true)). The thread also pointed to image generation docs when asked whether Discourse AI supports it ([answer + link](https://meta.discourse.org/t/-/406799/6?silent=true), plus [Improved Image Generation Support in Discourse AI](https://meta.discourse.org/t/-/388904/1?silent=true)).

- **Running Discourse AI against internal endpoints (LiteLLM sidecar, internal host allowlists, MCP cleanup)** in #Support #ai: @evantobin described getting internal connectivity working using `DISCOURSE_ALLOWED_INTERNAL_HOSTS` for a localhost LiteLLM sidecar, and mentioned follow-on work for Vertex AI auth ([details](https://meta.discourse.org/t/-/405831/8?silent=true)). @satonotdead shared a full solution using Docker’s internal gateway IP, port mapping, and cleaning up broken MCP tools ([solution](https://meta.discourse.org/t/-/405831/9?silent=true)).

- **Feature request / PR: add `{username}` template param to AI persona system prompts** in #Feature #ai: @42aross proposed adding `{username}` as an allowlisted template param so an AI persona can reliably identify the current user server-side (instead of having the LLM infer it from topic text/metadata) ([request + rationale](https://meta.discourse.org/t/-/406846/1?silent=true)). They also noted completing the CLA process ([follow-up](https://meta.discourse.org/t/-/406846/2?silent=true)).

- **Docked composer for AI bot conversations: toggled off on Meta, then re-enabled** in #Announcements #ai #ai-bot: @putty asked why Meta no longer showed the docked composer UI ([question](https://meta.discourse.org/t/-/403327/5?silent=true)). @keegan replied it was accidentally toggled off and turned it back on, noting the change moving to `beta` ([status update](https://meta.discourse.org/t/-/403327/8?silent=true)). @nicolsdennis followed up with a product question about limiting reply length for bot conversations ([question](https://meta.discourse.org/t/-/403327/9?silent=true)).

- **Inline AI Suggestions in the composer: consistency + latency/behavior questions** in #Announcements #ai #ai-helper: @chapoi discussed making behavior consistent across similar UI entry points and asked for feedback ([post](https://meta.discourse.org/t/-/405394/6?silent=true)). @nicolsdennis asked about round-trip latency and whether suggestions are purely based on topic title ([question](https://meta.discourse.org/t/-/405394/7?silent=true)).

- **UX fix: AI title suggest icon positioning** in #ux #ai: @chapoi posted an implementation fix for the title-suggest icon appearing above the title field, asking for confirmation of side effects ([fix + PR link](https://meta.discourse.org/t/-/406256/4?silent=true)).

- **Gemini API key changes: service accounts, migration concerns** in #Integrations #how-to #ai: @m_terenui noted Google’s reported security changes around Gemini API keys, potentially requiring service accounts and migrating old keys, and asked what Discourse expects admins to configure going forward ([question](https://meta.discourse.org/t/-/320688/2?silent=true)). (Thread reference: [Set up Gemini API Keys for Discourse AI](https://meta.discourse.org/t/-/320688/1?silent=true))

- **Self-hosting Discourse AI translation with Ollama: provider choice, tokenizer/context window, and why “translation endpoints” aren’t a drop-in** in #Self-Hosting #ai: @mononym asked how to try Discourse AI translation via Ollama and where the newer admin UI settings live ([question](https://meta.discourse.org/t/-/290923/10?silent=true)). @Falco suggested using Ollama’s OpenAI-compatible API by selecting OpenAI as the provider ([guidance](https://meta.discourse.org/t/-/290923/11?silent=true)), then provided practical configuration advice (tokenizer choice, context window) and cautioned against unsuitable/old models ([details](https://meta.discourse.org/t/-/290923/13?silent=true)). The thread also covered why Discourse AI translation isn’t designed as a simple LibreTranslate endpoint replacement and why the older Translator plugin can still be used “as-is” ([constraints](https://meta.discourse.org/t/-/290923/15?silent=true)).

* * *

## Activity

- @sam introduced **estimated dollar cost quotas** for Discourse AI groups in #Announcements, pointing admins to the broader quota documentation ([Cost based quotas for Discourse AI](https://meta.discourse.org/t/-/406400/1?silent=true); [Configuring LLM usage quotas in Discourse AI](https://meta.discourse.org/t/-/348125/1?silent=true)).

- @Falco was active across troubleshooting, safety, and self-hosting threads:

- @chapoi pushed on UX and consistency:

- @Ed_S raised a security-focused concern that **summarizing HTML comments** could be used as a hidden manipulation channel ([HTML comments are also summarized by AI](https://meta.discourse.org/t/-/406275/4?silent=true)) and emphasized that system/user prompt separation isn’t a hard guarantee against jailbreak influence ([follow-up](https://meta.discourse.org/t/-/406275/6?silent=true)).

- @42aross proposed a small additive change to improve **AI persona prompt templating** by adding `{username}` as a supported variable ([Add {username} as a template param in AI persona system prompts](https://meta.discourse.org/t/-/406846/1?silent=true); CLA follow-up [here](https://meta.discourse.org/t/-/406846/2?silent=true)).

- @keegan re-enabled the **docked composer for AI bot conversations** after it was accidentally switched off, and noted the feature’s promotion toward `beta` ([Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/8?silent=true); original question [here](https://meta.discourse.org/t/-/403327/5?silent=true)).

- @evantobin shared internal networking setup details for connecting Discourse AI to a **LiteLLM sidecar** using `DISCOURSE_ALLOWED_INTERNAL_HOSTS` ([How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/8?silent=true); see also the later complete solution [here](https://meta.discourse.org/t/-/405831/9?silent=true)).

- @m_terenui raised two admin/operator concerns:

- @putty flagged that the **docked AI-bot composer UI** appeared disabled on Meta and asked for the rationale ([Introducing a docked composer for AI bot conversations](https://meta.discourse.org/t/-/403327/5?silent=true); resolution [here](https://meta.discourse.org/t/-/403327/8?silent=true)).

- @nicolsdennis asked product/ops questions in two announcement threads:

- @bird documented a Discourse AI integration issue using **Qwen3.7-plus** where title suggestion returned a 500 error ([report](https://meta.discourse.org/t/-/406799/1?silent=true)), asked how to view deeper logs ([question](https://meta.discourse.org/t/-/406799/3?silent=true)), and later asked about image generation support ([question](https://meta.discourse.org/t/-/406799/5?silent=true); answer and pointer [here](https://meta.discourse.org/t/-/406799/6?silent=true)).

- @satonotdead posted a detailed “got it working” solution for internal AI endpoints, covering Docker gateway routing, port exposure, and removing broken MCP server/tool entries ([How to use internal AI endpoints?](https://meta.discourse.org/t/-/405831/9?silent=true); earlier setup context [here](https://meta.discourse.org/t/-/405831/8?silent=true)).

- @mononym revived the self-hosting thread with questions about the current admin UI, using **Ollama** for translation, and whether a LibreTranslate-style endpoint could be reused ([Self-Hosting an OpenSource LLM for DiscourseAI](https://meta.discourse.org/t/-/290923/10?silent=true); provider/config questions [here](https://meta.discourse.org/t/-/290923/12?silent=true); LibreTranslate compatibility question [here](https://meta.discourse.org/t/-/290923/14?silent=true)). @Falco responded with configuration guidance and constraints ([OpenAI-compat setup](https://meta.discourse.org/t/-/290923/11?silent=true); [tokenizer/context advice](https://meta.discourse.org/t/-/290923/13?silent=true); [why not LibreTranslate in AI translation](https://meta.discourse.org/t/-/290923/15?silent=true)).

* * *

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [13 ביולי,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/131 "2026-07-13T19:01:35Z")

</div>

# Overview

This week’s AI-related discussions on [meta.discourse.org](http://meta.discourse.org) focused heavily on **content localization reliability and control** (#ai + #dynaloc), plus **feedback loops for AI-driven features** like Ask Discourse and Discobot Discoveries.

On the localization front, there was momentum on both _capability_ and _quality_: admins asked for **translated custom sidebar sections** ([Feature request: make it possible to translate custom sidebar links and sections](https://meta.discourse.org/t/-/299871/1?silent=true), with context from [Translate sidebar documentation links](https://meta.discourse.org/t/-/379540/1?silent=true)), while multiple reports highlighted **prompt/formatting pitfalls** and **silent translation failures** —including German translations leaking JSON-like wrappers ([German translations contain translation elements](https://meta.discourse.org/t/-/407009/1?silent=true)) and translations being **silently truncated/corrupted when JSON streaming parsing breaks** ([Translation silently truncated when JSON stream parsing breaks (no error raised)](https://meta.discourse.org/t/-/407251/1?silent=true)).

Several threads were about **making AI integrations more usable in practice** : a solved support case explained why Claude Sonnet 5 can error when paired with older Discourse versions / structured output settings ([Discourse AI: Need to Remove JSON Response to get Antrophic Sonnet 5-working…](https://meta.discourse.org/t/-/407117/1?silent=true)), users asked how to **prevent proprietary vocabulary** from being translated ([How to prevent proprietary vocabulary from being translated by AI?](https://meta.discourse.org/t/-/407052/1?silent=true)), and a new theme component improved **file uploads on the AI bot conversations UI** ([Drag & Drop Upload + File Previews for AI Bot Conversations page](https://meta.discourse.org/t/-/407336/1?silent=true)).

Finally, **evaluation and feedback** surfaced as a recurring need: Ask Discourse users ran into standard Discourse rate limits while interacting with AI ([Feedback for Ask Discourse](https://meta.discourse.org/t/-/336805/16?silent=true)), and Discobot Discoveries hallucinations prompted calls (and examples) for better feedback mechanisms ([Feedback on Discobot discoveries results on meta](https://meta.discourse.org/t/-/407133/1?silent=true)), tied back to the longer-running AI Search work ([Conversational AI Search coming to Discourse AI](https://meta.discourse.org/t/-/355939/17?silent=true)).

* * *

# Interesting Topics

- **Custom sidebar sections and links need localization support** : admins want globally-visible custom sidebar content to appear in each user’s language, similar to existing sidebar doc link translation discussions ([Feature request: make it possible to translate custom sidebar links and sections](https://meta.discourse.org/t/-/299871/5?silent=true), building on [Translate sidebar documentation links](https://meta.discourse.org/t/-/379540/1?silent=true), with an encouraging “soon™” from staff in [299871](https://meta.discourse.org/t/-/299871/10?silent=true)). #sidebar #content-localization #feature

- **Ask Discourse friction: “too similar” replies, flagging too fast, and DataExplorer formatting preferences** : users hit standard Discourse anti-spam/rate-limit behavior while interacting with AI responses ([Feedback for Ask Discourse](https://meta.discourse.org/t/-/336805/16?silent=true), [336805](https://meta.discourse.org/t/-/336805/17?silent=true), [336805](https://meta.discourse.org/t/-/336805/20?silent=true)), and one request asked for a way to ensure generated DataExplorer queries don’t end with a semicolon ([336805](https://meta.discourse.org/t/-/336805/22?silent=true)). #ask-discourse #feedback #feature

- **German translations leaking translation “wrapper”/JSON elements** : a report showed translated output containing what looks like serialized content objects instead of plain text, and also noted difficulties editing translations when the first post uses a form template ([German translations contain translation elements](https://meta.discourse.org/t/-/407009/1?silent=true)). #bug #content-localization

- **Root cause found: agent JSON response format misconfiguration + prompt contradictions** : investigation pointed to prompt/logic issues and the need to keep customized copies of default agents in sync with upstream improvements ([407009](https://meta.discourse.org/t/-/407009/2?silent=true), [407009](https://meta.discourse.org/t/-/407009/4?silent=true), resolved confirmation in [407009](https://meta.discourse.org/t/-/407009/5?silent=true)). #ai #dynaloc

- **Claude Sonnet 5 failures tied to structured output / “assistant prefill” expectations + older Discourse versions** : a solved support thread connected 400/500 errors to configuration and version mismatches, with a reminder that newer models often require updated providers/parameters ([Discourse AI: Need to Remove JSON Response…](https://meta.discourse.org/t/-/407117/1?silent=true), [407117](https://meta.discourse.org/t/-/407117/4?silent=true)). #Support #ai

- **Discobot Discoveries hallucinations and the need for feedback hooks** : a concrete example showed Discoveries confidently mislabeling an RFC, sparking discussion about prompt guidance and collecting more examples ([Feedback on Discobot discoveries results on meta](https://meta.discourse.org/t/-/407133/1?silent=true), example in [407133](https://meta.discourse.org/t/-/407133/3?silent=true)). #ai-search #discobot #site-feedback

- **Preventing proprietary vocabulary from being translated** : tags/product names being translated led to a practical solution—customize the translation agent prompt with explicit “do not translate” clauses ([How to prevent proprietary vocabulary from being translated by AI?](https://meta.discourse.org/t/-/407052/1?silent=true), solution in [407052](https://meta.discourse.org/t/-/407052/4?silent=true)). #Support #dynaloc

- **A new theme component improves AI bot conversation UX with drag-and-drop uploads + previews** : a community contribution shipped a theme component to make file handling smoother on the AI bot conversations page ([Drag & Drop Upload + File Previews for AI Bot Conversations page](https://meta.discourse.org/t/-/407336/1?silent=true), with install pointers to [How to install a theme or theme component](https://meta.discourse.org/t/-/63682/1?silent=true) and [Beginner’s guide to using Discourse Themes](https://meta.discourse.org/t/-/91966/1?silent=true)). #theme-component #ai-bot

- **Silent truncation/corruption in AI translations when JSON stream parsing breaks** : a detailed bug report described translations cutting off mid-sentence with _no logged error_, and a follow-up added data showing formatting corruption (markdown images, literal `\n\n`) across providers/models ([Translation silently truncated when JSON stream parsing breaks (no error raised)](https://meta.discourse.org/t/-/407251/1?silent=true), follow-up in [407251](https://meta.discourse.org/t/-/407251/2?silent=true)). #bug #ai

- **AI bot replies in mentions but not DMs** : a support thread narrowed DM responsiveness down to an admin setting that enables/disables bot replies in private messages ([My AI bot does not reply to DMs but does reply to mentions in topics](https://meta.discourse.org/t/-/407403/1?silent=true), setting check in [407403](https://meta.discourse.org/t/-/407403/2?silent=true)). #Support #ai-bot

* * *

# Activity

- @Falco drove several high-signal support/debug threads this week: proposing a fix for translation prompt contradictions ([German translations contain translation elements](https://meta.discourse.org/t/-/407009/2?silent=true)), helping identify an agent configuration issue around JSON response format ([407009](https://meta.discourse.org/t/-/407009/4?silent=true)) and confirming the resolution ([407009](https://meta.discourse.org/t/-/407009/5?silent=true)). They also helped diagnose Claude Sonnet 5 structured-output issues ([Discourse AI: Need to Remove JSON Response…](https://meta.discourse.org/t/-/407117/2?silent=true)) and emphasized that older Discourse versions will struggle with rapidly changing model APIs ([407117](https://meta.discourse.org/t/-/407117/4?silent=true)). Finally, they offered a practical approach for preserving brand/product terms by customizing the translation agent prompt ([How to prevent proprietary vocabulary from being translated by AI?](https://meta.discourse.org/t/-/407052/4?silent=true)).

- @nat responded positively to the request for translating custom sidebar links/sections, signaling the feature could land “soon™” in the ongoing sidebar localization request ([Feature request: make it possible to translate custom sidebar links and sections](https://meta.discourse.org/t/-/299871/10?silent=true)).

- @southpaw clarified the need for **admin-created sidebar sections** to be localized for all users (not just per-user customizations), continuing the thread from sidebar documentation translation ([Feature request: make it possible to translate custom sidebar links and sections](https://meta.discourse.org/t/-/299871/5?silent=true)) and referencing the earlier related discussion ([Translate sidebar documentation links](https://meta.discourse.org/t/-/379540/1?silent=true)).

- @matthewruzzi raised multiple feedback items around AI experiences: they reported rate-limit/friction cases on Ask Discourse (including “too similar” reply rejection and flagging too quickly) in [Feedback for Ask Discourse](https://meta.discourse.org/t/-/336805/16?silent=true) and [336805](https://meta.discourse.org/t/-/336805/17?silent=true). They also initiated a focused feedback thread for Discobot Discoveries accuracy problems ([Feedback on Discobot discoveries results on meta](https://meta.discourse.org/t/-/407133/1?silent=true)), including a concrete hallucination example ([407133](https://meta.discourse.org/t/-/407133/3?silent=true)). That effort connects back to the broader AI search roadmap discussion where they asked about feedback mechanisms ([Conversational AI Search coming to Discourse AI](https://meta.discourse.org/t/-/355939/17?silent=true)) and then linked the new feedback topic ([355939](https://meta.discourse.org/t/-/355939/19?silent=true)).

- @mcwumbly helped shape the Discobot Discoveries thread into an actionable _example-collection_ space: asking for specific cases ([Feedback on Discobot discoveries results on meta](https://meta.discourse.org/t/-/407133/2?silent=true)), suggesting prompt guidance to avoid confident answers when no results are found ([407133](https://meta.discourse.org/t/-/407133/4?silent=true)), and reframing scope toward collecting concrete evidence first ([407133](https://meta.discourse.org/t/-/407133/5?silent=true)). They also directed the original “feedback mechanism” question to the appropriate venue in the AI search roadmap thread ([Conversational AI Search coming to Discourse AI](https://meta.discourse.org/t/-/355939/18?silent=true)).

- @Don shipped a community theme component to improve the **AI bot conversations page** with drag-and-drop upload and previews ([Drag & Drop Upload + File Previews for AI Bot Conversations page](https://meta.discourse.org/t/-/407336/1?silent=true)), pointing to the canonical install and onboarding guides ([How to install a theme or theme component](https://meta.discourse.org/t/-/63682/1?silent=true), [Beginner’s guide to using Discourse Themes](https://meta.discourse.org/t/-/91966/1?silent=true)).

- @putty reported a nuanced localization issue where German translations retained translation-process elements and also noted an editing limitation when the first post uses a form template ([German translations contain translation elements](https://meta.discourse.org/t/-/407009/1?silent=true)). They confirmed they were using copies of default agents with minor prompt tweaks ([407009](https://meta.discourse.org/t/-/407009/3?silent=true)) and later confirmed the immediate culprit—JSON response format not being filled—after guidance ([407009](https://meta.discourse.org/t/-/407009/5?silent=true)). They also referenced prior related observations in an earlier report ([ai commentary on german translations](https://meta.discourse.org/t/-/399805/1?silent=true)).

- @dorina filed a detailed bug report documenting **silent truncation** in AI translations when JSON streaming parsing breaks, including reproducible real-world examples and environment details ([Translation silently truncated when JSON stream parsing breaks (no error raised)](https://meta.discourse.org/t/-/407251/1?silent=true)).

- @Denis_Kovalenko added a valuable supporting data point to the translation parsing bug, describing related corruption symptoms (markdown image structure breaking, literal `\n\n` sequences) across a different provider/model setup ([Translation silently truncated when JSON stream parsing breaks (no error raised)](https://meta.discourse.org/t/-/407251/2?silent=true)).

- @janbolmeson reported Claude Sonnet 5 API errors affecting summarization and semantic search, including logs showing the “conversation must end with a user message” constraint ([Discourse AI: Need to Remove JSON Response to get Antrophic Sonnet 5-working…](https://meta.discourse.org/t/-/407117/1?silent=true)). The thread was marked solved after configuration/version direction ([407117](https://meta.discourse.org/t/-/407117/2?silent=true)).

- @RGJ helped pinpoint the Sonnet 5 issue as an **ESR version gap** , noting the relevant setting/logic landed after 2026.1 and may be missing on older installs ([Discourse AI: Need to Remove JSON Response to get Antrophic Sonnet 5-working…](https://meta.discourse.org/t/-/407117/3?silent=true)).

- @HAWK clarified that the “too similar” and “too fast” errors seen on Ask Discourse are standard Discourse anti-spam/rate-limit behaviors (and corrected their own initial assumption) in [Feedback for Ask Discourse](https://meta.discourse.org/t/-/336805/18?silent=true) and [336805](https://meta.discourse.org/t/-/336805/20?silent=true). They also assisted with AI bot troubleshooting by pointing @kgreed to the admin setting that enables bot replies to DMs ([My AI bot does not reply to DMs but does reply to mentions in topics](https://meta.discourse.org/t/-/407403/2?silent=true)).

- @awesomerobot explained likely causes behind Ask Discourse posting/flagging errors—duplicate submissions and connectivity leading to rapid repeat actions—within the Ask Discourse feedback thread ([Feedback for Ask Discourse](https://meta.discourse.org/t/-/336805/21?silent=true)).

- @one1 suggested a practical quality-of-life tweak for AI-generated DataExplorer queries: ensure outputs don’t end with a trailing semicolon to reduce iteration friction ([Feedback for Ask Discourse](https://meta.discourse.org/t/-/336805/22?silent=true)).

- @Zard_W raised the real-world localization need to protect specialized product vocabulary (e.g., model-name tags) from being translated, prompting guidance toward agent customization ([How to prevent proprietary vocabulary from being translated by AI?](https://meta.discourse.org/t/-/407052/1?silent=true)).

- @chapoi documented the current limitation (manual per-tag overrides) when trying to prevent translation of specific tag vocabulary ([How to prevent proprietary vocabulary from being translated by AI?](https://meta.discourse.org/t/-/407052/2?silent=true)).

- @Jagster floated the idea that a system prompt could solve the “don’t translate these terms” requirement, which aligned with the eventual agent prompt customization approach ([How to prevent proprietary vocabulary from being translated by AI?](https://meta.discourse.org/t/-/407052/3?silent=true)).

- @kgreed reported a configuration issue where an AI bot responded to topic mentions but not to DMs, leading to a targeted admin-setting check ([My AI bot does not reply to DMs but does reply to mentions in topics](https://meta.discourse.org/t/-/407403/1?silent=true)).

* * *

Thanks for reading, and I’ll see you again next week! 🙂

---

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [20 ביולי,‏ 2026,‏ 7:01pm UTC](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532/132 "2026-07-20T19:01:07Z")

</div>

## Overview

AI discussions on meta this week focused on **how Discourse AI behaves in real communities** , and where edge cases can turn into _privacy_ or _noise_ problems. Hosted customers also got a clearer explanation of the default hosted model router, **CDCK/MoM** , including why Discourse uses a _mixture-of-models_ approach for different AI workloads like summaries and embeddings ([What is CDCK/MoM?](https://meta.discourse.org/t/-/407844/1?silent=true)).

On the bug-fixing front, a high-nuisance issue where clicking **Retry** on an AI bot reply in public topics creates _duplicate posts_ (instead of regenerating in place) was reported and quickly linked to an upstream fix ([AI bot “Retry” creates a duplicate reply…](https://meta.discourse.org/t/-/407562/1?silent=true), [follow-up](https://meta.discourse.org/t/-/407562/4?silent=true)). Translation-related issues also stood out: one report showed **deleted posts can remain visible via cached translations** ([Deleted posts still show full content…](https://meta.discourse.org/t/-/407942/1?silent=true)), while another thread continued progress on a fix for **silent truncation** when streaming JSON parsing breaks ([Translation silently truncated…](https://meta.discourse.org/t/-/407251/4?silent=true)).

Meanwhile, admins worked through provider integration pain points: **DeepSeek** “no response” troubleshooting ([Discourse 接入 DeepSeek…无响应问题](https://meta.discourse.org/t/-/407862/1?silent=true), [connectivity suggestion](https://meta.discourse.org/t/-/407862/4?silent=true)), and **Gemini embeddings** 401 errors clarified as an API mismatch between _AI Studio_ and _Vertex/Enterprise_ endpoints ([How to fix 401 errors with Gemini embeddings](https://meta.discourse.org/t/-/407828/1?silent=true), [solution](https://meta.discourse.org/t/-/407828/2?silent=true)). Finally, ongoing work on the **AI captions** subsystem resurfaced, including plans for **toggles to rebake captions** ([Quick welfare check on the AI caption bot](https://meta.discourse.org/t/-/372829/8?silent=true), [closing note](https://meta.discourse.org/t/-/372829/9?silent=true)).

* * *

## Interesting Topics

- **CDCK Hosted Model / CDCK/MoM explained for hosted customers** (#Hosted-Customers #ai)  
@Falco explained why hosted Discourse includes a built-in routed “mixture of models” LLM, how routing matches tasks (summaries vs embeddings vs personas), and how this ties into hosted **AI credits** ([What is CDCK/MoM?](https://meta.discourse.org/t/-/407844/1?silent=true)).

- **Bug: AI Bot “Retry” in public topics appends duplicate replies instead of regenerating** (#bug #ai #ai-bot)  
@Overgrow reported that repeated Retry clicks in public topics flood the thread with new bot posts ([report](https://meta.discourse.org/t/-/407562/1?silent=true)), while @Falco pointed to a fix in core ([dev response](https://meta.discourse.org/t/-/407562/4?silent=true)). The thread also briefly covered how “[Safe mode](https://meta.discourse.org/t/53504?silent=true)” became a link via watched words rules ([question](https://meta.discourse.org/t/-/407562/2?silent=true), [answer](https://meta.discourse.org/t/-/407562/3?silent=true), plus the referenced guide: [Watched words reference guide](https://meta.discourse.org/t/-/241735/1?silent=true)).

- **Privacy-ish bug: deleted posts still render full content when viewing translated version** (#bug #ai #dynaloc #content-localization)  
@asa reported that when Discourse AI translations are enabled, a post deleted by its author can still show fully in the translated view due to cached rendering not respecting deletion state ([Deleted posts still show full content…](https://meta.discourse.org/t/-/407942/1?silent=true)).

- **Translation robustness: silent truncation when JSON stream parsing breaks** (#bug #ai #dynaloc)  
Work continued on a fix for translations being silently cut off when streaming JSON parsing fails—without raising an error—highlighting the need for better error surfacing and defensive parsing ([Translation silently truncated…](https://meta.discourse.org/t/-/407251/4?silent=true)).

- **Support: DeepSeek official platform integration appears unresponsive** (#Support #ai)  
@AkarinLiu reported “no response” behavior after integrating DeepSeek’s official open platform ([initial report](https://meta.discourse.org/t/-/407862/1?silent=true), [additional detail](https://meta.discourse.org/t/-/407862/2?silent=true)). @sk-or-v1-contents shared provider/status signals for context ([status context](https://meta.discourse.org/t/-/407862/3?silent=true)), and @Falco suggested testing the endpoint via cURL to isolate connectivity/configuration issues ([suggestion](https://meta.discourse.org/t/-/407862/4?silent=true)).

- **Solved: Gemini embeddings 401 errors traced to using the wrong Google endpoint family** (#Support #embedding #ai)  
@m_terenui hit 401 errors when trying to use Gemini embeddings with a Vertex-style endpoint ([problem statement](https://meta.discourse.org/t/-/407828/1?silent=true)). @Falco clarified Discourse embeddings support aligns with **Google AI Studio** rather than the Enterprise/Vertex endpoint, resolving the issue ([solution](https://meta.discourse.org/t/-/407828/2?silent=true)). The reporter confirmed switching endpoints fixed embeddings immediately ([confirmation](https://meta.discourse.org/t/-/407828/3?silent=true)).

- **Support: “Using the Discourse AI plugin” — what’s in core and how summaries run (on-demand vs backfill)** (#Support #ai)  
@bayardo.rivas asked when Discourse AI became bundled and how summarization works ([question](https://meta.discourse.org/t/-/407646/1?silent=true)). @Moin pointed to the bundling announcement timeline ([reply](https://meta.discourse.org/t/-/407646/2?silent=true), referenced: [Bundling more popular plugins with Discourse core](https://meta.discourse.org/t/-/373574/1?silent=true)). @Falco explained summaries can be **on-demand** or **backfilled in the background** , and themes can surface summaries at the top for some sites ([solution reply](https://meta.discourse.org/t/-/407646/3?silent=true)). (The question also references earlier AI plugin discussion: [OpenAI plugin for Discourse?](https://meta.discourse.org/t/-/221378/3?silent=true) and the bundled plugin note: [Discourse AI](https://meta.discourse.org/t/-/259214/1?silent=true).)

- **AI captions: subsystem rework and upcoming ability to rebake captions** (#Site-feedback #ai #ai-captions)  
A year-old captions thread received fresh updates: community members discussed rebuild/reupload ideas ([rebuild suggestion](https://meta.discourse.org/t/-/372829/6?silent=true), [reupload thought](https://meta.discourse.org/t/-/372829/7?silent=true)), while @sam noted @nat is reworking the subsystem and toggles to **rebake captions** are planned ([update](https://meta.discourse.org/t/-/372829/8?silent=true)). @nat then closed the topic after the OP’s issue was rectified ([closure](https://meta.discourse.org/t/-/372829/9?silent=true)).

- **Reminder: Discourse can call AI APIs in the background (summaries, embeddings, sentiment, etc.)** (#Support #ai)  
In a continuing support thread, @m_terenui connected observed usage spikes to background jobs like summary backfills and embedding generation ([Does discourse call AI APIs in the background](https://meta.discourse.org/t/-/406836/3?silent=true))—which also ties back to the summary backfill configuration discussed elsewhere ([Using the Discourse AI plugin](https://meta.discourse.org/t/-/407646/3?silent=true)).

* * *

## Activity

- @Falco led the week’s AI guidance and triage: published a deep dive into hosted **CDCK/MoM** routing ([What is CDCK/MoM?](https://meta.discourse.org/t/-/407844/1?silent=true)), acknowledged and linked a fix for public-topic bot retries creating duplicate posts ([AI bot “Retry” creates a duplicate reply…](https://meta.discourse.org/t/-/407562/4?silent=true)), clarified DeepSeek debugging steps via endpoint testing ([Discourse 接入 DeepSeek…无响应问题](https://meta.discourse.org/t/-/407862/4?silent=true)), resolved the Gemini embeddings 401 confusion by distinguishing AI Studio vs Vertex-style APIs ([How to fix 401 errors with Gemini embeddings](https://meta.discourse.org/t/-/407828/2?silent=true)), and explained AI summary modes (on-demand vs background backfill) and UI options via themes ([Using the Discourse AI plugin](https://meta.discourse.org/t/-/407646/3?silent=true)). Falco also continued work on translation truncation fixes ([Translation silently truncated…](https://meta.discourse.org/t/-/407251/4?silent=true)).

- @asa raised a potentially serious translation edge case where deleted content remains visible in translated view, emphasizing the importance of ensuring cached translations respect deletion state ([Deleted posts still show full content when translation is enabled](https://meta.discourse.org/t/-/407942/1?silent=true)).

- @Overgrow reported a high-nuisance AI bot UX issue where **Retry** in public topics spams duplicate bot replies ([AI bot “Retry” creates a duplicate reply…](https://meta.discourse.org/t/-/407562/1?silent=true)), and also asked how Discourse automatically linkified a phrase like “[Safe mode](https://meta.discourse.org/t/53504?silent=true)” ([follow-up question](https://meta.discourse.org/t/-/407562/2?silent=true)).

- @Moin explained that the “[Safe mode](https://meta.discourse.org/t/53504?silent=true) became a link” behavior can be done via watched words rules ([AI bot “Retry”… watched words note](https://meta.discourse.org/t/-/407562/3?silent=true)) and pointed to the canonical documentation ([Watched words reference guide](https://meta.discourse.org/t/-/241735/1?silent=true)). Moin also helped answer when Discourse AI became bundled with core by referencing the bundling announcement ([Using the Discourse AI plugin](https://meta.discourse.org/t/-/407646/2?silent=true), [Bundling more popular plugins with Discourse core](https://meta.discourse.org/t/-/373574/1?silent=true)).

- @sam provided product direction on AI captions, noting active rework and forthcoming toggles to rebake captions ([Quick welfare check on the AI caption bot](https://meta.discourse.org/t/-/372829/8?silent=true)).

- @nat confirmed the AI captions subsystem workstream and wrapped up a revived thread after the original issue was resolved ([Quick welfare check on the AI caption bot](https://meta.discourse.org/t/-/372829/9?silent=true)).

- @m_terenui drove two practical admin threads: one on Gemini embeddings failing with 401 errors until switching to the supported endpoint family ([How to fix 401 errors with Gemini embeddings](https://meta.discourse.org/t/-/407828/1?silent=true), [confirmation](https://meta.discourse.org/t/-/407828/3?silent=true)), and another confirming that background AI jobs can explain unexpected API usage peaks ([Does discourse call AI APIs in the background](https://meta.discourse.org/t/-/406836/3?silent=true)).

- @bayardo.rivas asked for clarification on Discourse AI’s “in core” status and how summarization is triggered and displayed ([Using the Discourse AI plugin](https://meta.discourse.org/t/-/407646/1?silent=true)), tied back to earlier plugin/history discussion ([OpenAI plugin for Discourse?](https://meta.discourse.org/t/-/221378/3?silent=true)) and the bundled plugin note ([Discourse AI](https://meta.discourse.org/t/-/259214/1?silent=true)).

- @AkarinLiu surfaced a provider integration issue where DeepSeek requests appeared to hang or return no response even after changing API keys ([Discourse 接入 DeepSeek 官方开放平台后出现无响应问题](https://meta.discourse.org/t/-/407862/1?silent=true), [extra detail](https://meta.discourse.org/t/-/407862/2?silent=true)).

- @sk-or-v1-contents provided troubleshooting context for the DeepSeek “no response” report by pointing to external uptime/status signals ([Discourse 接入 DeepSeek…无响应问题](https://meta.discourse.org/t/-/407862/3?silent=true)), and also suggested a possible “rebuild HTML” direction (with uncertainty) in the AI captions discussion ([Quick welfare check on the AI caption bot](https://meta.discourse.org/t/-/372829/6?silent=true)).

- @NateDhaliwal weighed in on the AI captions thread, noting that “rebake” may not cover captions and suggesting re-uploading could be more effective ([Quick welfare check on the AI caption bot](https://meta.discourse.org/t/-/372829/7?silent=true)).

Thanks for reading, and I’ll see you again next week! 🙂

[Previous page](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532.md?page=5)

[Next page](https://meta.discourse.org/t/weekly-summary-of-ai-topics/293532.md?page=7)
