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 and follow-ups like Renaming AI Persona → AI Agent. 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 and the related umbrella thread Admin Reporting & Analysis: Incremental Changes.
Theme component maintenance: AI Gists button compatibility with Modernized Foundation (#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, tying into the broader theme effort in Modernizing the Foundation theme.
rburkej added a self-hosting perspective by asking for a detailed hardware profile and operational impact notes in Enabling AI search crippled my server, reinforcing that semantic search rollout needs clear sizing guidance.
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). 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).
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) 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).
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). 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).
“AI Persona” renamed to “AI Agent” (terminology + implementation) in #Featureai. Falco confirmed the rename work landed and pointed to the corresponding PR (Renaming AI Persona → AI Agent).
Hosted LLM capacity increased dramatically (plus model + performance upgrades) in #Announcementsai. 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).
Delaying AI Agent responses to match community pacing (1–4 hours) in Supportai. saurabhmithal asked for a configurable delay so Agents feel less like instant chatbots (Adding a configurable delay to AI Agent responses). 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); the original request is captured in-thread too (AI bot - Agents).
Discourse MCP setup guidance expands (OpenCode CLI) in usersaimcp. 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). The guide cross-links to the Codex CLI variant for other MCP clients (Discourse MCP Setup in OpenAI Codex CLI).
Sentiment debugging details: “allowed internal hosts” and job execution in Supportai-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). Falco asked for clarification about whether at least the 60-day data appeared (Problems setting up Sentiment), and satonotdead confirmed dashboards work but the historical backfill is still the goal (Problems setting up Sentiment).
Whether Discourse should ship an official “OpenClaw skill” / agent that acts as a user (#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么?). 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么?, openclaw plugin for discourse integration).
Copy/wording cleanup: duplicated “Default LLM” in an error string (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…). awesomerobot confirmed it’s awkward and pointed to a fix in progress (Why is ‘Default LLM’ repeated…).
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).
MCP capability question: can MCP access PDF attachments in posts? (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!).
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). 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).
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). 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超时时间,如何调整?).
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么?).
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, prompting nat to consider prompt improvements and adding extra grounding context such as tag descriptions (reply), while Falco explored tool-assisted approaches like letting the agent read relevant sources (idea, follow-up). Related “keep translations in sync” feedback also landed as feature requests for category name and category description updates (category names, category descriptions).
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, Moin clarified the current limitation (group PMs vs 1:1 PMs) (details), while Falco proposed a clearer multi-choice setting (proposal) and nat hinted that upcoming “translate these categories” controls could reshape the settings UX (plan).
Finally, there were incremental improvements and ecosystem enhancements: clearer messaging for semantic vs exact search results (search clarification), interest in refining AI persona behaviors to reduce noise (mention-only request), and continued adoption of AI summaries in UI via a theme component (feedback).
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. nat committed to improving prompts (response), and the discussion expanded into “how do we ground tag/category translations?” including feeding tag descriptions (idea), leveraging Crowdin glossary/localization choices (glossary suggestion), and giving the agent the ability to consult existing translations or sources (agent-access idea, code-grounding follow-up).
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, 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), leading to a UX/settings rethink: Falco proposed replacing a boolean with explicit targets (settings proposal), and nat connected this to upcoming category-scoped translation controls (notes).
Feature request: keep translated category descriptions in sync with the “about” topic banner source
In Automatically update translated category descriptions, 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.
Theme component: “AI summary in topic header” getting positive field feedback kaktak reported strong results with the component in AI summary in topic header (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么?, 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, nat posted an update that tags are now translated, pointing readers to the main localization/translation feature announcement (related feature hub).
nat acknowledged the tag translation problems and committed to prompt improvements in AI-generated tag translations do not work perfectly, then explored more predictable grounding strategies like passing the tag description to the model (idea). In the PM translation discussion, they pointed to upcoming category-scoped translation controls and suggested the settings UI could be redesigned accordingly (reply). They also posted a status update that tag translation is now live in Tags übersetzen, referencing the broader localization initiative (content localization hub).
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么?.
Thanks for reading, and I’ll see you again next week!
This week (2026-03-30 → 2026-04-06) on meta.discourse.org saw Discourse AI discussions cluster around three big themes:
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!) and a full admin guide (AI Bot – Bring Your Own MCP Server). 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!).
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?, solution).
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) 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). On the embeddings side, Mistral’s API mismatch (dimensions vs output_dimension) surfaced in configuration (Use Mistral for embeddings). There were also real-world admin bumps caused by deprecated Gemini model IDs in AI bot setups (Issue with AI bots forum bots).
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!). The companion how-to explains setup, tool discovery, and how this differs from JS-based custom tools (AI Bot – Bring Your Own MCP Server).
MCP usability: request for “remote/web MCP” + adding the ability to edit existing posts (ai, mcp, 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!). jrgong highlighted a KB/docs use-case needing edits to existing topics/posts (ref), and Falco confirmed an edit tool was added (“just update to latest”) (ref).
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?, test details). RGJ confirmed the PMs weren’t reaching audit logs and identified the workaround: leave “Topic Type” empty rather than “All topics” (ref). The fix worked immediately (ref), and the thread turned into a UX discussion about clearer options (ref, ref).
Translated German posts included “AI commentary/thought process” text—quickly fixed (ai, content-localization, bug, fixed) putty reported German translations leaking “thinking/translate” commentary into output (AI Commentary on German Translations). nat shipped an update to tighten formatting and cleaned up affected content (ref), with user confirmation afterward (ref).
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, behavior details). RGJ suggested prompt hardening and/or trying a better model (ref), and switching from Mistral Small → Mistral Large fixed it (ref). Later, Falco asked for clarification on which “Mistral Small” was meant and recommended using stronger small-class models if needed (ref).
Embeddings with Mistral: OpenAI-compat config breaks on dimensions parameter naming (ai, #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). Removing the parameter makes the test succeed, suggesting a compatibility layer or provider-specific mapping may be needed (ref).
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). Lilly pointed out likely deprecation of gemini-2.5-flash-pre and suggested updating model URL/ID (including an image-capable option) (ref, config example), with NateDhaliwal sanity-checking whether any LLMs were configured (ref).
Should AI personas reply only to @mentions? Team leans toward workflows rather than niche toggles (ai, ai-bot, #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…). 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).
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).
User-level control over AI (“disable AI nudges”) and PM translation settings migration (ai, ai-summarize, content-localization, ux/#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). 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).
Activity
sam shipped MCP expansion and nudged future workflow-based automation:
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.
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, Falco shared a working configuration and suggested considering stronger embedding models; and in Images missing in translated posts when using Mistral as translation model, 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 and was confirmed by cuo_wu in the resolution.
Embeddings provider choice: using Mistral vs higher-scoring alternatives (ai#Feature)
In Use Mistral for embeddings, 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.
New bug report: “cooked error after translate” traced to Markdown table formatting (aibug)
A brand-new topic appeared this week: cuo_wu reported a translation/cooking issue that surfaced after switching languages in Cooked error after translate. 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). cuo_wu confirmed the fix (confirmation). The report referenced content in Discourse FontAwesome Pro, which helped demonstrate the affected markup.
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). The approach was referenced again from the related mention-only control discussion (Allow AI Persona/Agent to respond only to @mentions…).
Persona configuration request: making a “standard chat AI” that ignores Discourse context (aiai-bot)
In New AI Persona Editor for Discourse, 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.
Discourse MCP deployment ergonomics: “recommended” sidecar approach? (aimcp)
In Discourse MCP is here!, 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!.
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, RGJ stressed that ZDR ≠ GDPR compliance, while Falco emphasized there are many ZDR provider options (same thread) and that embeddings can often be self-hosted more easily than full LLMs (also echoed in Use Mistral for embeddings).
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 and the resolution). 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 and the fix).
On the “AI platform” side, there was renewed interest in Discourse MCP connectivity (including Claude connectors and HTTP availability) (see Discourse MCP is here!, and confirmation that HTTP is supported). Finally, the long-running AI agents how-to thread received a new question about custom agent skills for tailored scenarios (see AI bot - Agents).
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, verbose logging, and retry behavior questions).
Interesting Topics
AI translations intermittently skip locales (initially observed as Portuguese missing) in 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, clarifying settings: supported locales question, and the “randomly skipped locale” update: inconsistent results).
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), while RGJ later surfaced backend failures (503 unreachable_backend) affecting tags/topics/posts (see error output). The thread also raised implementation questions about why translation jobs are configured with retry: false (see retry question).
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). 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).
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) and later noticed an error about the translated title being missing (see title missing error). 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).
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). This came up while discussing translation workflows and manual entry (see follow-up preference discussion).
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). pmusaraj diagnosed it as a stuck ?preview_theme_id=ID parameter in Chrome (see diagnosis), and removing it resolved the issue (see solved confirmation).
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). Denis_Kovalenko confirmed they had a very large context window configured (see context window detail).
Discourse MCP connectivity: request for Claude.ai connector support; HTTP already supported
In the 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). Falco replied that HTTP support already exists and pointed back to earlier replies in the announcement thread (see HTTP supported response).
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).
Activity
Denis_Kovalenko drove two localization/AI troubleshooting threads this week:
Opened and resolved an admin-only locale switching error in Error when switching locale, confirming the solution after removing a stale query parameter in the accepted fix.
Also noted difficulty finding hidden settings in this question.
pmusaraj focused on diagnosis and narrowing down configuration causes:
In Post not being detected as German, challenged an unrelated-commit hypothesis, asked about the LLM in use, and flagged Gemini deprecations contextually (within the same reply).
Requested a new topic for a separate issue report once the German-detection thread was solved (see request).
RGJ helped operationalize debugging and surfaced concrete failure signals:
Reported specific backend errors (503 unreachable_backend) and questioned job retry configuration in this key diagnostic post.
Moin pointed to docs and clarified UI changes affecting localization workflows:
Explained that ai_translation_verbose_logs is a hidden site setting and linked the relevant guide in this reply (and the referenced doc: Using hidden site settings).
Documented that the composer language selector moved into the toolbar (with screenshots and a PR reference) in Post not being detected as German.
putty contributed heavily across translation support and MCP discussion:
Raised the mixed-language detection/translation issue in Post not being detected as German, shared failed attempts to force translation in this follow-up, and later confirmed the real cause was an outdated API key / provider mismatch in the solution.
Asked about Claude.ai connector compatibility via HTTP/SSE streaming in Discourse MCP is here!.
Also expressed a UI preference about the old locale selector placement in this comment.
Falco answered usage questions and clarified MCP capabilities:
Confirmed that selecting a language manually forces the post language, and explained why mixed-language titles can skew detection in Post not being detected as German.
canbekcan explored translation workflow issues and hypotheses around recent changes:
Suggested a “select language first, then add title/content” workflow and described needing to recreate language options in Post not being detected as German.
Investigated a “missing title” problem, initially suspecting theme-related behavior in this reply, then reported they could reproduce errors and referenced recent code changes in this post.
Clarified they don’t use AI translation (academic requirements) and closed out their participation after UI clarification in this note.
赤丸的小烧酒 added an AI agents product-direction question by asking about agent extensibility through custom skills in AI bot - Agents.
Thanks for reading, and I’ll see you again next week!
This week’s AI-related discussion on 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, What happens to translations when LLM changes?). On the automation side, there was a new how-to guide for auto-tagging topics using AI triage + Discourse Automation (Tag topics using AI) and a deeper dive into how agent “Examples” are interpreted (and how that can accidentally cause over-flagging) (AI triage examples not sent properly?). 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, Discourse to Markdown Plugin).
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), 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).
New guide: automatically tag topics using AI triage + Discourse Automation (automationhow-toai, #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). It explicitly references the Discourse AI plugin and automation framework docs for setup context (Tag topics using AI, Tag topics using AI).
New plugin: serve Discourse content as Markdown to cut LLM token usage (markdownai, #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). 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). 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).
AI triage “Examples” can backfire: examples are prior turns, so responses must mimic the expected output (including tool calls) (automationai, Support) markschmucker found their agent flagged every post even when the example was intended to be illustrative (AI triage examples not sent properly?). Falco suggested using the flag tool instead of string outputs (AI triage examples not sent properly?), 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?). 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?).
AI search/embeddings endpoint 500 errors: check instance logs and compare known AI-search failures (rest-apiai, Support) shixiaochi asked what typically causes /discourse-ai/embeddings/semantic-search to return 500 errors (接口报错500). Lilly pointed to an existing thread about AI Search giving a 500 error (接口报错500), and supermathie reiterated the practical next step: inspect both Rails logs and /logs (接口报错500).
AI-generated tag translations: not independently toggleable (yet), but can be corrected via tag settings or prompt tweaks (tagsaidynaloc, #Site_feedback) evenlo asked to disable AI-translated tags specifically due to quality concerns (AI-generated tag translations do not work perfectly). 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).
Indexing file contents for better search: OCR + attachment understanding as an AI-search upgrade path (aiai-search, #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).
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).
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).
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).
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).
Extra reference links mentioned this week (context for the above threads)
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, with keegan iterating quickly on fixes and ultimately gating the feature while it’s refined (update). 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, examples guidance).
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?. 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), while a plugin discussion explored serving text/markdown to make AI/MCP consumers happier (Discourse to Markdown Plugin).
Interesting Topics
Docked AI composer regressions + rapid fixes (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, Shift+Enter feedback). keegan shipped multiple fixes and follow-ups while explaining intended behavior and next steps (fixes summary, gating announcement).
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, confirmation).
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, later status).
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, triage update, maintainer response).
AI proofreading should not “improve” quoted text (bug, ai-helper):bksubhuti highlighted the risk of AI altering quoted religious/source text and argued that quotes must be preserved verbatim (concern). Falco pointed out the issue was fixed and suggested trying a better model if it still reproduces (fix reference).
Configuring proofreader agents with examples + specialized personas:bksubhuti shared a specialized Pāḷi-oriented persona prompt and asked about engine choices (persona details), while Falco asked whether they were using examples, noting the default proofreader ships with multiple examples to help ground quote-handling (examples suggestion).
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, rate limit error, UI question).
Serving Markdown for better AI/MCP consumption (#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, follow-up). The same discussion explicitly connected this to MCP usage (see also Discourse MCP is here).
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), and EricGT encouraged sharing prompts and tips more broadly (request).
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; see prerequisite references to Discourse AI, Discourse Automation, the LLM settings guide, and AI bot personas).
Activity
Lilly led a detailed QA pass on the docked AI composer, documenting initial breakages (New ai docked composer), acknowledging ongoing fixes (follow-up), and then narrowing down remaining issues like quoting and uploads (status, rebuild result). She also flagged the “upload after first post” regression as the main remaining bug (report).
sam acknowledged the docked composer feedback loop and relayed that fixes were actively underway, pointing to ongoing work by keegan (response).
keegan implemented and coordinated fixes for the docked composer, explained the intended RTE-first UX and Markdown tradeoffs (explanation), and later gated the feature behind upcoming changes while polishing continued (update).
bksubhuti raised a correctness/ethics angle: AI proofreading must preserve quoted blocks, especially for exact religious/source citations (concern). After updating, they confirmed behavior and continued experimenting, including sharing a custom proofreader persona and asking for model suggestions (confirmation, testing, persona prompt).
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), asked about using examples to ground the agent (examples), and suggested disabling “thinking” to address translation behavior (What happens to translations when LLM changes?).
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, clarification question).
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) and tying it to MCP integration possibilities (related: Discourse MCP is here).
jrgong confirmed that the suggested “content negotiation then fallback” approach was essentially what another LLM (Claude) implemented for them already (reply).
37Rb shared positive field feedback that AI image generation had improved substantially, citing fewer artifacts compared to earlier attempts (support bot discussion).
EricGT amplified community learning by asking for prompt-sharing and tips based on 37Rb’s results (request).
AI discussions on 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 and What happens to translations when LLM changes?). 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).
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, and Falco identified that reasoning tokens can “eat all the tokens” under max_tokens, leading to empty/invalid outputs (analysis in context). The debugging discussion also touched on why Discourse avoids reasoning for translations (same thread) and referenced prior history around large-scale translation failures (related discussion).
Translations “stuck” after an LLM change: locale detection is fragile with thinking models
In What happens to translations when LLM changes?, RBoy described translations showing as incomplete with no new logs or progress (stuck symptoms). 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; conclusion acknowledged in follow-up).
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 supportresponse_format: json_schema (error report). Falco clarified that translations need a model supporting structured outputs—“basically every SotA model released recently” (guidance).
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). When RBoy didn’t see matching audit rows (query + mismatch), Falco recommended removing the response_tokens clause from the SQL filter (fix). The thread also clarified the /p/ vs /t/ difference during investigation (follow-up).
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). 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). RBoy replied with their configured context window and the provider’s limit, questioning why Discourse would exceed configured bounds (details).
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). This paired with ongoing translation troubleshooting in What happens to translations when LLM changes? and AI translations errors.
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). Falco pointed them to the Proofreader agent examples inside the admin UI (admin/plugins/discourse-ai/ai-agents/-22/edit) (direction), and bksubhuti confirmed they found the example set and that it outputs JSON (confirmation).
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). Lilly replied that it was already fixed (and referenced a related incomplete report) (response), and Ethsim2 identified the missing upstream commit they needed (follow-up). (Related: New AI docked composer.)
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). For broader context, that question sits within the long-running reference topic Discourse AI - Large Language Model (LLM) settings page (how-toai).
Falco provided the core technical guidance across multiple threads, especially around how Discourse AI expects model outputs. In AI translations errors 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), and emphasized that raw responses matter more than token counts for debugging (raw-response focus). They identified that reasoning tokens can consume the completion budget and tied that to why Discourse avoids reasoning models for translations (reasoning tokens explanation), pointing back to earlier related translation failures (reference thread). They also advised that translation models need structured outputs support (structured outputs guidance). In What happens to translations when LLM changes?, they explained that locale detection breaks with thinking blocks, which can stall translations entirely. And in AI exceeds LLM token thresholds randomly and unpredictably, 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).
bksubhuti followed up on the long-running quote-handling issue in bugai-helper, asking where to find real examples so they could adjust their proofreading system prompt (request). After being pointed to the agent editor, they confirmed they found the example set and planned to iterate on it (confirmation). (Background thread: Proofread breaks quotes; referenced post: example link mentioned.)
Ethsim2 reported a regression where they couldn’t post images in a PM follow-up with an Agent (report), then confirmed the missing upstream commit they needed to pick up (commit identified).
This week’s ai discussions on 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.
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, and awesomerobot followed up with a fix PR (post 2).
Norwegian locale detection (no vs nb_NO) causing redundant translations and credit usage (bugai) 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. nat suggested duplicating the locale detection agent and adjusting the system prompt (post 2), which thomasjsn validated by adding explicit language code lines (post 5). nat later confirmed the workaround was incorporated into the default agent (post 7), after prompt guidance in (post 6).
Default LLM label not updating in the AI settings UI until refresh (uxai)
In Minor UI bug changing default LLM, 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).
Self-hosted sentiment Docker image fails due to upstream model artifact path (404) (#Self-Hostingaiai-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. Falco explained the upstream model changes weren’t merged yet and recommended pointing to a branch (post 15), which resolved the issue for NotAnonymous (post 16).
Gemini Pro “thinking budget” edge-case follow-up (hard to confirm without current usage) (bugai)
In Thinking budget for Gemini Pro, error when using 0 or -1, 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)—useful context for anyone trying to validate regression status.
Chinese bug report: AI plugin hyperlinks not responding when clicked (bugai)
A new report came in from 哈基米曼波 in 社区官方的ai插件中的超链接未能正常跳转,点击后无反应, describing links that appear clickable but don’t navigate. NateDhaliwal replied, but the post was later deleted by the author (post 2)—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…, then iterated on prompt tweaks and confirmed a working mapping using nb-NO (post 4, post 5).
nat
Acknowledged and guided a short-term workaround (duplicate/adjust the locale detection agent) in Norwegian is identified as no…, confirmed the prompt approach (post 6), and later noted the fix was rolled into the default agent configuration (post 7).
This week’s AI-related activity on 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.
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, also see Star common AI conversations, and Star common AI conversations).
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, more), translation output corrupting Markdown quote syntax (bug report), and ongoing desire for full Markdown parity in bot/chat contexts (request continuation).
Localization & multi-model support — Several posts focused on language and model flexibility: request to localize AI prompts to Chinese (request, reply), 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, and expanding sentiment/emotion analysis to more LLM providers like Gemini (question, update).
Docked composer for AI bot conversations: “Enter to submit” friction (and upload issues) (#Announcementsaiai-botcomposer)
In Introducing a docked composer for AI bot conversations, Lilly asked for a way to suppress “Enter as submit” and prefer sending only via the paper-plane icon (post). 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). Later, Lilly reported image uploads breaking after the first post and reverted to the regular composer for bot usage (post).
Self-hosting Sentiment/Emotion: expanding to other LLM providers (Gemini mentioned) (#Self-Hostingaiai-sentiment)
In Self-Hosting Sentiment and Emotion for DiscourseAI, 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). Falco replied that the capability had been added and should appear on the site soon (reply).
AI translation bug: Markdown quote > sometimes turns into 0 (bugaidynaloc) 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. The examples show repeated 0 characters where quote blocks and headings should be (report).
Request: allow AI plugin prompt text to be configured/localized in Chinese (#Featureailocalization) bird requested being able to set AI prompts in Chinese—citing summaries, titles, and DM summaries defaulting to English—in 希望ai插件可以设置提示词为中文. sniper756 replied that English/Chinese output can be unstable and may vary by model, though the root cause wasn’t clear (reply).
Full Markdown support in bot/chat contexts (and related migration concerns) (#Featurechatai)
In Full markdown support in Chat for bots, 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). They also raised migration-related needs, citing a separate question about migrating Messages into Chats/DMs (quoted topic reference), and argued that without full Discourse Markdown, the feature isn’t workable for their use case (post).
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, and later reported image uploads breaking after the first post (leading them to revert to the regular composer) (follow-up).
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. They also described a chat preference workaround and its downside for real-time chat usage (same post).
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. Falco responded that it had been added (reply).
bird requested better localization for AI prompts (wanting Chinese prompt configuration for AI summaries/titles/DM summaries) in 希望ai插件可以设置提示词为中文, highlighting that the defaults still appear in English for those workflows (request).
sniper756 replied to the Chinese prompt-localization request, noting language output can be inconsistent and varies by model, in 希望ai插件可以设置提示词为中文.
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. They also connected the issue to migration needs (Messages → Chats/DMs) by pointing to an existing question (referenced topic) and cited the earlier “open another topic” comment from sam (referenced post).
Thanks for reading, and I’ll see you again next week!
This week’s AI-related discussions on meta.discourse.org clustered around three practical themes:
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) and a bug where tag suggestions didn’t respect category tag restrictions (AI Helper can suggest tags not allowed in category).
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).
AI localization mis-detects language and hides edits behind an outdated translation (#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). 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). The thread ended with the original poster confirming the explanation and manually correcting the detected language (confirmation), plus a memorable reminder about the limits of language detection:
Bug: AI Helper suggests tags that the category does not allow (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). zogstrip acknowledged the issue quickly (ack) and followed up with a fix already prepared via a PR (fix status). The reporter confirmed the turnaround was fast (thanks).
Feature request: toggles to enable AI tagging/categorization but disable AI title generation (#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). NateDhaliwal suggested a pragmatic interim approach: hide only the “suggest titles” button via CSS (CSS workaround), which the requester accepted as workable (follow-up).
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). 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).
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).
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; quote follow-up; thread entry; additional reference; same discussion).
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; fix status; context link; follow-up link; same topic).
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; reference; same post; topic link; context).
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; same solution; thread link; reference; context).
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; same report; context link; reference; thread link).
Thanks for reading, and I’ll see you again next week!