discourse/plugins/discourse-ai/config/locales/client.en.yml
Sam 8d5ba0dd84
FEATURE: Improve workflow node filtering (#40977)
Expand post listing filters to support regular/all post types, action
posts, whispers, and additional topic statuses while preserving guardian
visibility.

Allow AI agent workflow nodes to choose an LLM override, fall back to
agent/site defaults, and respect agents that force their default LLM.

---------

Co-authored-by: Joffrey JAFFEUX <j.jaffeux@gmail.com>
2026-06-17 13:45:55 +02:00

1380 lines
64 KiB
YAML
Vendored
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

en:
admin_js:
admin:
api:
scopes:
descriptions:
ai:
search: "Allows AI search"
stream_completion: "Allows streaming AI agent completions"
update_agents: "Allows updating AI agents"
manage_artifacts: "Allows managing AI artifacts (list, view, create, update, delete)"
site_settings:
categories:
discourse_ai: "Discourse AI"
dashboard:
emotion:
title: "Emotion"
description: "The table lists a count of posts classified with a determined emotion. Classified with the model 'SamLowe/roberta-base-go_emotions'."
reports:
filters:
group_by:
label: "Group by"
sort_by:
label: "Sort by"
tag:
label: "Tag"
logs:
staff_actions:
actions:
create_ai_llm_model: "Create LLM model"
update_ai_llm_model: "Update LLM model"
delete_ai_llm_model: "Delete LLM model"
create_ai_agent: "Create AI agent"
update_ai_agent: "Update AI agent"
delete_ai_agent: "Delete AI agent"
create_ai_tool: "Create AI tool"
update_ai_tool: "Update AI tool"
delete_ai_tool: "Delete AI tool"
create_ai_embedding: "Create AI embedding"
update_ai_embedding: "Update AI embedding"
delete_ai_embedding: "Delete AI embedding"
create_ai_secret: "Create AI secret"
update_ai_secret: "Update AI secret"
delete_ai_secret: "Delete AI secret"
update_ai_spam_settings: "Update AI spam settings"
js:
discourse_workflows:
node_unavailable:
requires_ai: "Requires the AI plugin to be enabled"
nodes:
"action:ai_agent": "AI Agent"
node_descriptions:
"action:ai_agent": "Run an AI agent to process data or generate content"
discourse_automation:
scriptables:
llm_report:
fields:
sender:
label: "Sender"
description: "The user that will send the report"
receivers:
label: "Receivers"
description: "The users that will receive the report (emails will be sent direct emails, usernames will be sent a PM)"
topic_id:
label: "Topic ID"
description: "The topic ID to post the report to"
title:
label: "Title"
description: "The title of the report"
days:
label: "Days"
description: "The timespan of the report"
offset:
label: "Offset"
description: "When testing you may want to run the report historically, use offset to start the report in an earlier date"
instructions:
label: "Instructions"
description: "The instructions provided to the large language model"
sample_size:
label: "Sample Size"
description: "The number of posts to sample for the report"
tokens_per_post:
label: "Tokens per post"
description: "The number of LLM tokens to use per post"
model:
label: "Model"
description: "LLM to use for report generation"
categories:
label: "Categories"
description: "Filter topics only to these categories"
tags:
label: "Tags"
description: "Filter topics only to these tags"
exclude_tags:
label: "Exclude Tags"
description: "Exclude topics with these tags"
exclude_categories:
label: "Exclude Categories"
description: "Exclude topics with these categories"
allow_secure_categories:
label: "Allow secure categories"
description: "Allow the report to be generated for topics in secure categories"
suppress_notifications:
label: "Suppress Notifications"
description: "Suppress notifications the report may generate by transforming to content. This will remap mentions and internal links."
debug_mode:
label: "Debug Mode"
description: "Enable debug mode to see the raw input and output of the LLM"
priority_group:
label: "Priority Group"
description: "Prioritize content from this group in the report"
temperature:
label: "Temperature"
description: "Temperature to use for the LLM. Increase to increase randomness (leave empty to use model default)"
top_p:
label: "Top P"
description: "Top P to use for the LLM, increase to increase randomness (leave empty to use model default)"
agent_id:
label: "Agent"
description: "AI agent to use for report generation"
ai_tool_action:
fields:
tool:
label: "AI Tool"
description: "The AI tool to execute when the automation triggers"
llm_model:
label: "LLM Model"
description: "Language model for tools that use llm.generate() (optional)"
llm_agent_triage:
fields:
agent:
label: "Agent"
description: "AI agent to use for triage (must have default LLM and User set)"
whisper:
label: "Reply as Whisper"
description: "Whether the agent's response should be a whisper"
silent_mode:
label: "Silent Mode"
description: "In silent mode the agent will receive the content but will not post anything on the forum - useful when performing triage using tools"
llm_triage:
fields:
triage_agent:
label: "Agent"
description: "Agent used to triage, be sure for it to reply with a single word you can use to trigger the action"
max_post_tokens:
label: "Max Post Tokens"
description: "The maximum number of tokens to scan using LLM triage"
stop_sequences:
label: "Stop Sequences"
description: "Instruct the model to halt token generation when arriving at one of these values"
search_for_text:
label: "Search for text"
description: "If the following text appears in the LLM reply, apply these actions"
category:
label: "Category"
description: "Category to apply to the topic"
tags:
label: "Tags"
description: "Tags to apply to the topic"
canned_reply:
label: "Reply"
description: "Raw text of the canned reply to post on the topic"
canned_reply_user:
label: "Reply User"
description: "Username of the user to post the canned reply"
hide_topic:
label: "Hide topic"
description: "Make topic not visible to the public if triggered"
flag_type:
label: "Flag type"
description: "Type of flag to apply to the post (spam or simply raise for review)"
flag_post:
label: "Flag post"
description: "Flags post (either as spam or for review)"
notify_author_pm:
label: "Notify author via PM"
description: "Send a personal message to the post author when their post is queued and deleted"
notify_author_pm_user:
label: "PM sender"
description: "User who will send the PM (defaults to system)"
notify_author_pm_message:
label: "PM content"
description: "Optional custom message to send to the author"
include_personal_messages:
label: "Include personal messages"
description: "Also scan and triage personal messages"
whisper:
label: "Reply as Whisper"
description: "Whether the AI's response should be a whisper"
reply_agent:
label: "Reply Agent"
description: "AI agent to use for replies (must have default LLM), will be prioritized over canned reply"
max_output_tokens:
label: "Max output tokens"
description: "When specified, sets an upper bound to the maximum number of tokens the model can generate. Respects LLM's max output tokens limit"
llm_tagger:
tag_mode:
manual: "Use specific tag list (configured below)"
discover: "Let AI discover and use any site tags"
fields:
tagger_agent:
label: "AI Agent"
description: "The AI agent to use for analyzing and tagging topics"
tag_mode:
label: "Tag Selection Mode"
description: "Choose how the AI selects tags"
available_tags:
label: "Available Tags"
description: "Tags that the AI can choose from (only used in manual mode)"
confidence_threshold:
label: "Confidence Threshold"
description: "Minimum confidence percentage (0-100) required to apply suggested tags"
max_tags_per_post:
label: "Maximum Tags Per Post"
description: "Maximum number of tags that can be applied to a single post"
max_post_tokens:
label: "Maximum Post Tokens"
description: "Maximum number of tokens from the post content to analyze"
allow_restricted_tags:
label: "Allow Restricted Tags"
description: "Allow AI to suggest and apply tags with restricted permissions or visibility."
max_posts_for_context:
label: "Maximum Posts for Context"
description: "Maximum number of posts from the topic to include for analysis context (default: 5)"
allow_system_posts:
label: "Allow System Posts"
description: "Allow tagging of posts created by the system user."
discourse_ai:
title: "AI"
discourse_workflows:
ai_agent:
agent_id: "Agent"
forced_llm_notice_description: "This agent is locked to its configured default LLM. The workflow cannot override it."
llm_model_id: "LLM model"
llm_model_default: "Use agent default"
llm_model_default_with_name: "Use agent default (%{value})"
prompt: "Prompt"
select_agent: "Select an agent..."
bot_chats:
tab_label: "Bot chats"
default_llm:
title: "Default LLM model"
description: "The default LLM model to use for all AI features. This will be used if no LLM is specified in the feature configuration or agent. If no default LLM is specified, the last created LLM will be used."
llm_selector:
none: "None"
saved: "Default LLM model updated successfully"
features:
short_title: "Features"
description: "These are the AI features available to visitors on your site. These can be configured to use specific agents and LLMs, and can be access controlled by groups."
back: "Back to AI features"
settings_save_error: "Some settings could not be saved."
disabled: "(disabled)"
agent:
one: "Agent:"
other: "Agents:"
groups: "Groups:"
llm:
one: "LLM:"
other: "LLMs:"
no_llm: "No LLM selected"
no_agent: "Not set"
no_groups: "None"
edit: "Settings"
expand_list:
one: "(%{count} more)"
other: "(%{count} more)"
collapse_list: "(show less)"
bot:
bot: "Chatbot"
name: "Bot"
description: "A chat bot that can answer questions and assist users in personal messages, forum and in chat"
setting_groups:
settings: "Basic Settings"
access_control: "Access Control"
ui_settings: "UI Settings"
integrations: "Integrations"
nav:
enabled: "Enabled"
not_enabled: "Not enabled"
filters:
all: "All"
text: "Search features, agents, LLMs, or groups..."
no_results: "No features found matching your filters."
reset: "Reset"
no_automations: "There are no automations yet"
summarization:
name: "Summaries"
description: "Makes a summarization button available that allows visitors to summarize topics"
topic_summaries: "Topic summaries"
gists: "Topic list's short summaries"
setting_groups:
settings: "Basic Settings"
gists: "Gists"
backfill: "Backfill"
search:
name: "Search"
description: "Enhances search experience by providing AI-generated answers to queries"
discoveries: "Discoveries"
setting_groups:
settings: "Basic Settings"
embeddings:
name: "Embeddings"
description: "Powers features like Related Topics and AI Search by generating semantic representations of text"
hyde: "HyDE"
setting_groups:
model_settings: "Model Settings"
related_topics: "Related Topics"
semantic_search: "Semantic Search"
admin_dashboard:
name: "Admin Dashboard"
description: "Helps community managers spot meaningful shifts and decide where to look next"
highlights: "Highlights"
setting_groups:
settings: "Basic Settings"
discord:
name: "Discord integration"
description: "Adds the ability to search Discord channels"
search: "Discord search"
setting_groups:
settings: "Basic Settings"
discord_configuration: "Discord Configuration"
inference:
name: "Inferred concepts"
description: "Classifies topics and posts into areas of interest / labels."
generate_concepts: "Concepts inference"
match_concepts: "Concepts matching"
deduplicate_concepts: "Concepts deduplication"
setting_groups:
settings: "Basic Settings"
topic_criteria: "Topic Criteria"
post_criteria: "Post Criteria"
agents: "Agents"
ai_helper:
edit: "Edit AI helper settings"
name: "AI Helper"
description: "Assists users in community interaction, such as creating topics, writing posts, and reading content"
proofread: Proofread text
title_suggestions: "Suggest titles"
explain: "Explain"
illustrate_post: "Illustrate post"
smart_dates: "Smart dates"
translate: "Translate"
markdown_tables: "Generate Markdown table"
custom_prompt: "Custom prompt"
image_caption: "Caption images"
translator: "Translator"
post_illustrator: "Post illustrator"
chat_thread_titles: "Chat thread titles"
setting_groups:
access_permissions: "Access & Permissions"
enabled_features: "Enabled Features"
automation: "Automation"
agents: "Agents"
translation:
name: "Translation"
description: "Translates content into supported languages"
locale_detector: "Locale detector"
post_raw_translator: "Post raw translator"
topic_title_translator: "Topic title translator"
short_text_translator: "Short text translator"
schedule_untranslated: "Schedule translations"
schedule_topic_success:
one: "Scheduled translation for %{count} untranslated post."
other: "Scheduled translation for %{count} untranslated posts."
schedule_topic_error: "Failed to schedule translations. Please try again."
setting_groups:
settings: "Basic Settings"
agents: "Agents"
backfill_and_limits: "Backfill & Limits"
spam:
name: "Spam"
description: "Identifies potential spam using the selected LLM and flags it for site moderators to inspect in the review queue"
inspect_posts: "Inspect posts"
automation_reports:
name: "Automated reports"
description: "Automatically creates concise overviews of activity, highlighting trends, key topics, and engagement"
automation_triage:
name: "Posts triage"
description: "Automates moderation and management of posts by using configurable automation rules"
modals:
select_option: "Select an option..."
layout:
table: "Table"
card: "Card"
translations:
title: "Translations"
description: "Automatically translate all content on your forum to the user's preferred language"
supported_locales: "Supported languages"
supported_locales_description: "This site setting also allows visitors to contribute post translations."
excluded_categories: "Excluded categories"
excluded_categories_description: "Content in these categories will not be translated. Leave empty to translate content in all categories, including private categories."
admin_actions:
translation_settings: "Translation settings"
localization_settings: "Localization settings"
enable_translations: "Enable automatic translations"
stats:
title: "Translation statistics"
backfill_disabled: "Backfilling is disabled, only new posts will be translated."
backfill_message: "<a href='%{settingsUrl}'>Backfill settings</a> are configured to translate all posts after %{date} — this is estimated to take %{eta}."
eta_minutes:
one: "%{count} minute"
other: "%{count} minutes"
eta_hours:
one: "%{count} hour"
other: "%{count} hours"
eta_days:
one: "%{count} day"
other: "%{count} days"
progress_chart:
title: "Translation Progress"
data_label: "%{percentage}%"
tooltip_translated: "%{done} out of %{total} non-%{language} posts translated"
bar_done:
one: "%{count} post"
other: "%{count} posts"
theme_translations:
translate:
label: "Translate"
title: "Translate to all supported languages using the selected language as the source"
queued: "Translation queued"
failed: "Failed to queue translation"
translations_menu:
translate:
label: "Translate post"
title: "Translates this post to all supported languages"
confirm: "This will update any existing translations on this post. Are you sure?"
success: "Post has been sent for translation"
credit_limit_warning: "Translations are paused due to credit limits. They will resume when credits reset at %{reset_time}."
credit_limit_warning_no_time: "Translations are paused due to credit limits. They will resume when credits reset."
spam:
short_title: "Spam"
title: "Configure spam handling"
select_llm: "Select LLM"
select_agent: "Select agent"
custom_instructions: "Custom instructions"
custom_instructions_help: "Custom instructions specific to your site to help guide the AI in identifying spam, e.g. 'Be more aggressive about scanning posts not in English'."
last_seven_days: "Last 7 days"
scanned_count: "Posts scanned"
false_positives: "Incorrectly flagged"
false_negatives: "Missed spam"
spam_detected: "Spam detected"
custom_instructions_placeholder: "Site-specific instructions for the AI to help identify spam more accurately"
enable: "Enable"
spam_tip: "AI spam detection will scan the first 3 posts by all new users on public topics. It will flag them for review and block users if they are likely spam."
settings_saved: "Settings saved"
spam_description: "Identifies potential spam using the selected LLM and flags it for site moderators to inspect in the review queue"
no_llms: "No LLMs available"
test_button: "Test..."
save_button: "Save changes"
test_modal:
title: "Test spam detection"
post_url_label: "Post URL or ID"
post_url_placeholder: "https://your-forum.com/t/topic/123/4 or post ID"
result: "Result"
reason: "Reasoning"
llm: "LLM"
scan_history: "Scan History"
sent_message: "Sent Message"
system_prompt: "System Prompt"
scan_log: "Scan log"
run: "Run test"
spam: "Spam"
not_spam: "Not spam"
stat_tooltips:
incorrectly_flagged: "Items that the AI bot flagged as spam where moderators disagreed"
missed_spam: "Items flagged by the community as spam that were not detected by the AI bot, which moderators agreed with"
errors:
scan_not_admin:
message: "Warning: spam scanning will not work correctly because the spam scan account is not an admin"
action: "Fix"
resolved: "The error has been resolved!"
usage:
short_title: "Usage"
summary: "Summary"
total_tokens: "Total tokens"
tokens_over_time: "Tokens over time"
features_breakdown: "Usage per feature"
feature: "Feature"
usage_count: "Usage count"
model: "Model"
credits_remaining: "Credits remaining"
models_breakdown: "Usage per model"
users_breakdown: "Usage per user"
all_features: "All features"
all_models: "All models"
username: "Username"
total_requests: "Total requests"
request_tokens: "Request tokens"
response_tokens: "Response tokens"
net_request_tokens: "Net request tokens"
cache_read_tokens: "Cache read tokens"
cache_write_tokens: "Cache write tokens"
cached_tokens: "Cached tokens"
cached_request_tokens: "Cached request tokens"
total_spending: "Estimated cost"
no_users: "No user usage data found"
no_models: "No model usage data found"
no_features: "No feature usage data found"
total: "Total"
included_in_plan: "Included in plan"
included_models: "Included usage"
billed_models: "Billed usage"
cost: "Cost"
subheader_description: "Tokens are the basic units that LLMs use to understand and generate text, usage data may affect costs"
stat_tooltips:
total_requests: "All requests made to LLMs through Discourse"
total_tokens: "All the tokens used when prompting an LLM"
request_tokens: "Tokens used when the LLM tries to understand what you are saying"
response_tokens: "Tokens used when the LLM responds to your prompt"
cache_read_tokens: "Previously processed request tokens that the LLM reuses from cache to optimize performance and cost"
cache_write_tokens: "Request tokens that were written to cache for potential future reuse"
cached_tokens: "Previously processed request tokens that the LLM reuses to optimize performance and cost"
total_spending: "Cumulative cost of all tokens used by the LLMs based on specified cost metrics added to LLM configuration settings"
periods:
last_day: "Last 24 hours"
last_week: "Last week"
last_month: "Last month"
custom: "Custom..."
credit_allocations: "Credit allocations"
ai_agent:
ai_tools: "Tools"
native_tools_help: "Provider-native tools, such as web search or page fetch, appear when \"Always use default language model\" is enabled and the selected default language model supports them."
mcp_servers: "MCP servers"
mcp_server_tools_help: "Selected MCP servers expose all of their tools by default. Narrow them per agent to reduce token usage and keep tool choice focused."
mcp_server_tool_count:
one: "%{count} tool"
other: "%{count} tools"
mcp_server_enabled_tool_count:
one: "%{count} tool enabled"
other: "%{count} tools enabled"
mcp_server_all_tools_enabled: "All tools enabled"
mcp_server_enabled_tools:
one: "%{count} of %{total} tool enabled"
other: "%{count} of %{total} tools enabled"
mcp_server_choose_tools: "Choose tools"
mcp_server_edit_tools: "Edit tools"
tool_strategies:
all: "Apply to all replies"
replies:
one: "Apply to first reply only"
other: "Apply to first %{count} replies"
back: "Back to agents"
name: "Name"
edit: "Edit"
export: "Export"
import: "Import"
import_error_conflict: "Conflict detected importing %{name}, would you like to update the existing agent?"
overwrite: "Overwrite"
description: "Description"
no_llm_selected: "No language model selected"
use_parent_llm: "Use agent's language model"
max_context_posts: "Max context posts"
max_context_posts_help: "The maximum number of posts to use as context for the AI when responding to a user. (empty for default)"
execution_mode: "Execution Mode"
execution_mode_help: "Controls how the agent manages tool execution and conversation context. Default uses fixed turn/tool limits. Agentic uses a token budget with automatic context compression for longer, more capable tool-use sessions."
execution_mode_options:
default: "Default (Fixed Limits)"
agentic: "Agentic (Token Budget)"
max_turn_tokens: "Max Turn Tokens"
max_turn_tokens_help: "Maximum total tokens (input + output) consumed across all LLM calls during a single bot reply. When set, replaces the fixed completion/tool limits with a token budget, enabling more agentic behavior. Leave empty to default to half of the model's context window."
compression_threshold: "Compression Threshold"
compression_threshold_help: "Percentage of context usage (2099) at which automatic compression kicks in. Lower values trigger compression earlier, preserving more headroom."
vision_enabled: Include image uploads
vision_enabled_help: If enabled, this agent can include images from posts and chats when the selected model supports image input.
vision_max_pixels: Maximum image size
vision_max_pixel_sizes:
low: Low quality - cheapest (256x256)
medium: Medium quality (512x512)
high: High quality - slowest (1024x1024)
show_thinking: Show thinking
show_thinking_help: Will show end users the internal thinking and tool calls of the language model.
mentionable: Allow mentions
mentionable_help: If enabled, users in allowed groups can mention this user in posts, the AI will respond as this agent.
user: User
create_user: Create user
create_user_help: You can optionally attach a user to this agent. If you do, the AI will use this user to respond to requests.
default_llm: Default language model
default_llm_help: The default language model to use for this agent. Required if you wish to mention the agent on public posts.
system_prompt: System prompt
forced_tool_strategy: Forced tool strategy
allow_chat_direct_messages: "Allow chat direct messages"
allow_chat_direct_messages_help: "If enabled, users in allowed groups can send direct messages to this agent."
allow_chat_channel_mentions: "Allow chat channel mentions"
allow_chat_channel_mentions_help: "If enabled, users in allowed groups can mention this agent in chat channels."
allow_personal_messages: "Allow personal messages"
allow_personal_messages_help: "If enabled, users in allowed groups can send personal messages to this agent."
allow_topic_mentions: "Allow topic mentions"
allow_topic_mentions_help: "If enabled, users in allowed groups can mention this agent in topics."
require_approval: "Require approval for moderation tools"
require_approval_help: "When enabled, moderation actions (close, delete, edit, etc.) will be sent to the review queue for moderator approval before execution."
force_default_llm: "Always use default language model"
save: "Save"
saved: "Agent saved"
enabled: "Enabled?"
tools: "Enabled tools"
tokens: "tokens"
context_cost: "Context Cost"
token_usage: "Token Usage"
tool_count: "Tool Count"
tool_count_value:
one: "%{count} tool"
other: "%{count} tools"
tool_tokens_total: "~%{tokens} Tokens"
mcp_server_cost_name: "%{name} (MCP server)"
mcp_server_cost_value:
one: "~%{tokens} tokens, %{count} tool"
other: "~%{tokens} tokens, %{count} tools"
mcp_server_tokens_only: "~%{tokens} tokens"
mcp_tools_modal:
title: "%{name} tools"
summary: "By default this agent can use every tool from this server. Select a smaller set to limit access and reduce prompt cost."
filter_placeholder: "Filter tools"
select_all: "Select all"
clear_all: "Clear all"
selection_summary:
one: "%{count} of %{total} tool selected"
other: "%{count} of %{total} tools selected"
empty: "No tools match this filter."
tool_severity_medium: "Moderate capacity"
tool_severity_high: "High capacity"
tool_severity_too_many: "Too many tools"
tool_tokens_warning: "Excess tools degrade AI performance by taking up valuable conversation memory. Consider removing non-essential tools."
tool_count_warning: "Each tool's definition is sent to the model on every request. Having many tools increases token usage and can confuse the model, leading to worse tool selection. Only keep tools this agent actually needs."
forced_tools: "Forced tools"
allowed_groups: "Allowed groups"
confirm_delete: "Are you sure you want to delete this agent?"
new: "New agent"
no_agents: "You have not created any agents yet"
manage_agents: "Manage agents"
title: "Agents"
short_title: "Agents"
delete: "Delete"
temperature: "Temperature"
temperature_help: "Temperature to use for the LLM. Increase to increase creativity (leave empty to use model default, generally a value from 0.0 to 2.0)"
top_p: "Top P"
top_p_help: "Top P to use for the LLM, increase to increase randomness (leave empty to use model default, generally a value from 0.0 to 1.0)"
priority: "Priority"
priority_help: "Priority agents are displayed to users at the top of the agent list. If multiple agents have priority, they will be sorted alphabetically."
tool_options: "Tool options"
rag_conversation_chunks: "Search conversation chunks"
rag_conversation_chunks_help: "The number of chunks to use for the RAG model searches. Increase to increase the amount of context the AI can use."
agent_description: "Agents are a powerful feature that allows you to customize the behavior of the AI engine in your Discourse forum. They act as a 'system message' that guides the AI's responses and interactions, helping to create a more personalized and engaging user experience."
response_format:
title: "JSON response format"
no_format: "No JSON format specified"
open_modal: "Edit"
modal:
root_title: "Response structure"
key_title: "Key"
examples:
title: Examples
examples_help: Simulate previous interactions with the LLM and ground it to produce better result.
new: New example
remove: Delete example
collapsable_title: "Example #%{number}"
user: "User message"
model: "Model response"
list:
enabled: "AI Bot?"
ai_bot:
title: "AI bot options"
save_first: "More AI bot options will become available once you save the agent."
filters:
text: "Find an agent"
reset: "Reset"
no_results: "No agents found matching your filters."
all_features: "Any feature"
features_list:
one: "Feature:"
other: "Features:"
llms_list: "LLM:"
rag:
title: "RAG"
options:
rag_chunk_tokens: "Upload chunk tokens"
rag_chunk_tokens_help: "The number of tokens to use for each chunk in the RAG model. Increase to increase the amount of context the AI can use. (changing will re-index all uploads)"
rag_chunk_overlap_tokens: "Upload chunk overlap tokens"
rag_chunk_overlap_tokens_help: "The number of tokens to overlap between chunks in the RAG model. (changing will re-index all uploads)"
rag_llm_model: "Indexing Language Model"
rag_llm_model_help: "The language model used for OCR during indexing of PDFs and images"
show_indexing_options: "Show upload options"
hide_indexing_options: "Hide upload options"
uploads:
title: "Uploads"
description: "PDF (.pdf), Plaintext (.txt) or markdown (.md)"
description_with_images: "Plaintext (.txt), markdown (.md), PDF (.pdf) or image (.png, .jpeg)"
button: "Add files"
filter: "Filter uploads"
indexed: "Indexed"
indexing: "Indexing"
uploaded: "Ready to be indexed"
uploading: "Uploading..."
remove: "Remove upload"
tools:
back: "Back to tools"
short_title: "Tools"
keywords: "mcp|mcp server|model context protocol"
script_tools: "Script tools"
export: "Export"
import: "Import"
import_error_conflict: "Tool already exists, would you like to update it?"
overwrite: "Overwrite"
no_tools: "You have not created any tools yet"
name: "Name"
name_help: "Name will show up in the Discourse UI and is the short identifier you will use to find the tool in various settings, it should be distinct (it is required)"
new: "New tool"
tool_name: "Tool Name"
tool_name_help: "Tool Name is presented to the large language model. It is not distinct, but it is distinct per agent. (agent validates on save)"
description: "Description"
description_help: "A clear description of the tool's purpose for the language model"
subheader_description: "Tools and MCP servers extend the capabilities of AI agents."
summary: "Summary"
summary_help: "Summary of tools purpose to be displayed to end users"
script: "Script"
parameters: "Parameters"
save: "Save"
parameter_type: "Parameter type"
parameter_item_type: "Item type"
add_parameter: "Add parameter"
remove_parameter: "Remove"
parameter_required: "Required"
parameter_enum: "Enum"
parameter_name: "Parameter name"
parameter_description: "Parameter description"
enum_value: "Enum value"
add_enum_value: "Add enum value"
secret_alias: "Credential alias"
secret_alias_help: "Alias referenced from scripts via secrets.get(\"alias_name\"). Use letters, numbers, and underscores."
secret_credential: "Credential"
add_secret_contract: "Add credential"
remove_secret_contract: "Remove credential"
credential_not_set: "(not set)"
edit: "Edit"
test: "Test"
delete: "Delete"
saved: "Tool saved"
confirm_delete: "Are you sure you want to delete this tool?"
test_modal:
title: "Test AI tool"
run: "Run test"
result: "Test result"
secrets:
short_title: "Credentials"
description: "Manage authentication credentials shared across LLMs, embeddings, and tools."
name: "Name"
secret: "Value"
select_secret: "Select a credential..."
create_new: "New credential"
add_secret: "Add credential"
saved: "Credential saved"
confirm_delete: "Are you sure you want to delete this credential?"
delete_failed_in_use: "This credential is currently in use and cannot be deleted."
no_secrets: "No credentials yet"
new_title: "New credential"
edit_title: "Edit credential"
back: "Back to credentials"
save: "Save"
edit: "Edit"
delete: "Delete"
used_by: "Used by"
not_used: "Not in use"
embedding: "Embedding"
cannot_delete_in_use: "This credential cannot be deleted because it is in use by:"
tool: "Tool"
mcp_server: "MCP server"
mcp_server_oauth_client_secret: "MCP server OAuth client secret"
modal:
title: "Create new credential"
mcp_servers:
short_title: "MCP servers"
new: "New MCP server"
name: "Name"
description: "Description"
url: "URL"
auth_type: "Authentication"
auth_types:
none: "No authentication"
header_secret: "Header credential"
oauth: "OAuth"
secret: "Credential"
auth_header: "Auth header"
auth_scheme: "Auth scheme"
oauth_client_registration: "OAuth client registration"
oauth_client_registration_types:
client_metadata_document: "Client metadata document"
manual: "Manual client credentials"
oauth_client_id: "OAuth client ID"
oauth_client_secret: "OAuth client secret"
oauth_scopes: "OAuth scopes"
oauth_authorization_params: "OAuth authorization params"
oauth_authorization_params_help: "Optional JSON object merged into the authorization request. Use null to remove a default parameter."
oauth_authorization_params_placeholder: '{"access_type":"offline"}'
oauth_token_params: "OAuth token params"
oauth_token_params_help: "Optional JSON object merged into token requests. Use null to remove a default parameter."
oauth_token_params_placeholder: "{}"
oauth_require_refresh_token: "Require refresh token"
oauth_require_refresh_token_help: "Fail the OAuth connection if the provider does not return a refresh token."
oauth_json_object_required: "%{field} must be a JSON object."
oauth_show_advanced_options: "Show advanced options"
oauth_hide_advanced_options: "Hide advanced options"
oauth_connection: "OAuth connection"
oauth_status: "OAuth status"
oauth_statuses:
disconnected: "Disconnected"
connected: "Connected"
refresh_failed: "Refresh failed"
error: "Needs attention"
oauth_connect: "Connect"
oauth_reconnect: "Reconnect"
oauth_disconnect: "Disconnect"
oauth_connect_help: "Use Connect to save the server and authorize it."
oauth_client_metadata_url: "Client metadata URL"
oauth_granted_scopes: "Granted scopes"
oauth_access_token_expires_at: "Access token expires at"
oauth_authorization_endpoint: "Authorization endpoint"
oauth_token_endpoint: "Token endpoint"
oauth_revocation_endpoint: "Revocation endpoint"
oauth_issuer: "Issuer"
oauth_last_error: "Last OAuth error"
oauth_show_details: "Show details"
oauth_hide_details: "Hide details"
timeout_seconds: "Request timeout (seconds)"
timeout_seconds_tooltip: "How long Discourse waits for the MCP server before the request fails. Keep 30 unless the server is consistently slow."
enabled: "Enabled"
save: "Save"
edit: "Edit"
delete: "Delete"
test: "Test connection"
saved: "MCP server saved"
confirm_delete: "Are you sure you want to delete this MCP server?"
back: "Back to tools"
health: "Health"
healthy: "Healthy"
unhealthy: "Needs attention"
tool_count:
one: "%{count} tool"
other: "%{count} tools"
tools_modal:
title: "%{name} tools"
summary:
one: "This server currently exposes %{count} tool."
other: "This server currently exposes %{count} tools."
parameters: "Parameters"
required: "Required"
no_parameters: "This tool does not require any parameters."
test_result: "Connection result"
test_summary:
one: "Discovered %{count} tool using protocol %{version}."
other: "Discovered %{count} tools using protocol %{version}."
llms:
short_title: "LLMs"
no_llms: "No LLMs yet"
new: "New model"
display_name: "Name"
name: "Model id"
provider: "Provider"
tokenizer: "Tokenizer"
max_prompt_tokens: "Context window"
max_output_tokens: "Max output tokens"
url: "URL of the service hosting the model"
api_key: "API Key of the service hosting the model"
vision_enabled: "Supports image input"
allowed_attachment_types: "Allowed document attachments"
attachment_types_placeholder: "Select or type extensions (e.g., pdf, txt, csv, docx, xlsx)"
ai_bot_user: "AI bot User"
cost_input: "Input cost"
cost_cached_input: "Cached input cost"
cost_cache_write: "Cache write cost"
cost_output: "Output cost"
save: "Save"
edit: "Edit"
saved: "LLM model saved"
back: "Back to LLMs"
confirm_delete: Are you sure you want to delete this model?
delete: Delete
quotas:
title: "Usage quotas"
add_title: "Create new quota"
group: "Group"
max_tokens: "Max tokens"
max_usages: "Max uses"
duration: "Duration"
confirm_delete: "Are you sure you want to delete this quota?"
add: "Add quota"
durations:
hour: "1 hour"
six_hours: "6 hours"
day: "24 hours"
week: "7 days"
custom: "Custom..."
hours: "hours"
max_tokens_help: "Maximum number of tokens (words and characters) that each user in this group can use within the specified duration. Tokens are the units used by AI models to process text - roughly 1 token = 4 characters or 3/4 of a word."
max_tokens_required: "Must be set if max usages is not set"
max_usages_help: "Maximum number of times each user in this group can use the AI model within the specified duration. This quota is tracked per individual user, not shared across the group."
max_usages_required: "Must be set if max tokens is not set"
credit_allocation:
credits_remaining: "%{remaining} of %{total} credits remaining (%{percentage}%)"
soft_limit_warning: "This model has %{percentage}% of AI credits remaining today"
hard_limit_warning: "You have run out of AI credits for this model. AI features using this model will be unavailable until %{reset_date}"
next_reset: "Credits reset on %{time}"
usage:
ai_bot: "AI bot"
ai_helper: "Helper (%{agent})"
ai_helper_image_caption: "Image caption"
ai_agent: "Agent (%{agent})"
ai_summarization: "Summarize"
ai_embeddings_semantic_search: "AI search"
ai_spam: "Spam"
automation: "Automation (%{agent})"
in_use_warning:
one: "This model is currently used by %{settings}. If misconfigured, the feature won't work as expected."
other: "This model is currently used by the following: %{settings}. If misconfigured, features won't work as expected. "
model_description:
none: "General settings that work for most language models"
anthropic-claude-opus-4-7: "Anthropic's most intelligent model"
anthropic-claude-sonnet-4-6: "Optimal balance of speed and cost"
anthropic-claude-haiku-4-5: "Fast and cost-effective"
google-gemini-3-1-pro: "Google's most intelligent model"
google-gemini-3-flash: "Fast and cost-efficient with multimodal reasoning"
open_ai-gpt-5-5: "OpenAI's most capable model with extended context"
open_ai-gpt-5-4: "OpenAI's flagship model, well suited for problem solving across domains"
open_ai-gpt-5-4-nano: "Fastest, most cost-effective GPT-5 model"
open_router-moonshotai-kimi-k2-6: "Moonshot's multimodal model with vision capabilities"
open_router-deepseek-deepseek-v4-flash: "DeepSeek's latest high-performance model with 1M context"
open_router-minimax-minimax-m2-7: "MiniMax's model with large context"
open_router-x-ai-grok-4-1-fast: "xAI's fast multimodal model with very large context"
open_router-z-ai-glm-5-1: "Z-AI's reasoning-focused model"
open_router-qwen-qwen3-6-plus: "Qwen's multimodal model with 1M context"
preseeded_model_description: "Pre-configured open-source model utilizing %{model}"
configured:
title: "Configured LLMs"
preconfigured_llms: "Select your LLM"
preconfigured:
title_no_llms: "Select a template to get started"
title: "Unconfigured LLM templates"
description: "LLMs (Large Language Models) are AI tools optimized for tasks like summarizing content, generating reports, automating customer interactions, and facilitating forum moderation and insights"
fake: "Manual configuration"
button: "Set up"
next:
title: "Next"
tests:
title: "Run test"
running: "Running test..."
success: "Success!"
invalid_config: "Fix the following errors in your configuration first:"
failure: "Trying to contact the model returned this error: %{error}"
failure_non_streaming: "Non-streaming request failed: %{error}"
failure_streaming: "Streaming request failed: %{error}"
hints:
max_prompt_tokens: "The maximum number of tokens the model can process in a single request"
max_output_tokens: "The maximum number of tokens the model can generate in a single request"
display_name: "The name used to reference this model across your site's interface."
name: "We include this in the API call to specify which model we'll use"
vision_enabled: "Whether this model/provider can receive and understand images."
allowed_attachment_types: "Choose which document attachment types can be converted or forwarded. Leave blank to disallow document attachments. Images are controlled separately."
cost_input: "The input cost per 1M tokens for this model"
cost_cached_input: "The cached input cost per 1M tokens for this model (when reading from prompt cache)"
cost_cache_write: "The cache write cost per 1M tokens for this model (when writing to prompt cache)"
cost_output: "The output cost per 1M tokens for this model"
cost_measure: "$/1M tokens"
providers:
aws_bedrock: "AWS Bedrock"
aws_bedrock_converse: "AWS Bedrock (Converse API)"
anthropic: "Anthropic"
vllm: "vLLM"
hugging_face: "Hugging Face"
cohere: "Cohere"
open_ai: "OpenAI"
google: "Google"
azure: "Azure"
ollama: "Ollama"
CDCK: "CDCK"
samba_nova: "SambaNova"
mistral: "Mistral"
open_router: "OpenRouter"
groq: "Groq"
fake: "Custom"
provider_fields:
access_key_id: "AWS Bedrock access key ID"
role_arn: "AWS Bedrock Role ARN"
inference_profile_arn: "AWS Bedrock application inference profile ARN"
region: "AWS Bedrock region"
organization: "Optional OpenAI organization ID"
disable_system_prompt: "Disable system message in prompts"
enable_native_tool: "Enable native tool support"
disable_native_tools: "Disable native tool support (use XML based tools)"
disable_native_structured_output: "Disable native structured output (use assistant message prefilling instead, required for Claude 3.x and older)"
provider_order: "Provider order (comma delimited list)"
provider_quantizations: "Order of provider quantizations (comma delimited list eg: fp16,fp8)"
disable_streaming: "Disable streaming completions (convert streaming to non streaming requests)"
reasoning_effort: "Reasoning effort (only applicable to reasoning models)"
service_tier: "Service tier (flex = lower cost/higher latency, priority = faster processing)"
reasoning_parser: "vLLM reasoning parser"
thinking_override: "Thinking override"
thinking_token_budget: "Thinking token budget"
enable_reasoning: "Enable reasoning (only applicable to reasoning models)"
adaptive_thinking: "Enable adaptive thinking (recommended for Claude 4.6 models)"
enable_thinking: "Enable thinking (Gemini 2.5 models - uses token budget)"
thinking_level: "Thinking level (Gemini 3 models - controls reasoning depth)"
thinking_tokens: "Number of tokens used for thinking"
reasoning_tokens: "Number of tokens used for reasoning"
disable_temperature: "Disable temperature (some thinking models don't support temperature)"
disable_top_p: "Disable top P (some thinking models don't support top P)"
prompt_caching: "Prompt caching mode"
prompt_caching_never: "Never - Do not use prompt caching"
prompt_caching_tool_results: "Tool Results - Cache when tool results are present (recommended)"
prompt_caching_always: "Always - Always use prompt caching"
effort: "Effort level"
provider_field_hints:
reasoning_parser: "Must match the vLLM server --reasoning-parser setting. Discourse cannot switch parsers per request; it uses this to shape request options."
thinking_override: "Optionally force supported vLLM chat templates to enable or disable thinking for each request. Unsupported parsers keep the server default."
reasoning_effort: "Sends vLLM's reasoning_effort request option for parsers that support it."
thinking_token_budget: "Optional cap for reasoning tokens. Requires a vLLM reasoning parser and is ignored when reasoning effort is None."
related_topics:
title: "Related topics"
pill: "Related"
ai_helper:
title: "Suggest changes using AI"
description: "Choose one of the options below, and the AI will suggest you a new version of the text."
selection_hint: "Hint: You can also select a portion of the text before opening the helper to rewrite only that."
suggest: "Show AI suggestions"
choose: "Choose for me"
suggestions: "Suggestions"
suggest_errors:
too_many_tags:
one: "You can only have up to %{count} tag"
other: "You can only have up to %{count} tags"
no_suggestions: "No suggestions available"
missing_content: "Please enter some content to generate suggestions."
context_menu:
trigger: "Ask AI"
loading: "AI is generating"
cancel: "Cancel"
regen: "Try again"
confirm: "Confirm"
discard: "Discard"
changes: "Suggested edits"
custom_prompt:
title: "Custom prompt"
placeholder: "Enter a custom prompt..."
submit: "Send prompt"
translate_prompt: "Translate to %{language}"
post_options_menu:
trigger: "Ask AI"
title: "Ask AI"
loading: "AI is generating"
close: "Close"
copy: "Copy"
copied: "Copied!"
cancel: "Cancel"
insert_footnote: "Add footnote"
footnote_disabled: "Automatic insertion disabled, click copy button and edit it in manually"
footnote_credits: "Explanation by AI"
fast_edit:
suggest_button: "Suggest edit"
thumbnail_suggestions:
title: "Suggested thumbnails"
select: "Select"
selected: "Selected"
try_again: "Try Again"
image_caption:
button_label: "Caption with AI"
generating: "Generating caption..."
credits: "Captioned by AI"
save_caption: "Save"
no_content_error: "Add content first to perform AI actions on it"
errors:
credit_limit_dialog:
title: "AI credit limit reached"
message_user: "This community has reached its AI credit limit for today. Please try again after %{reset_time} or contact your site administrator for more information."
message_without_time_user: "This community has reached its AI credit limit for today. Responses will be unavailable until your limit resets. Please contact your site administrator for more information."
message_admin: "You have reached the AI credit limit for your plan. Responses will be unavailable until your limit resets at %{reset_time}."
message_without_time_admin: "You have reached the AI credit limit for your plan. Responses will be unavailable until your limit resets."
reviewables:
model_used: "Model used:"
accuracy: "Accuracy:"
ai_tool_action:
agent: "Agent"
tool: "Tool"
parameters: "Parameters"
post: "Triggering Post"
embeddings:
short_title: "Embeddings"
description: "Embeddings are numerical representations of data that capture meaning and relationships, enabling Discourse AI features like Related Topics and AI Search to understand and connect content."
new: "New embedding"
back: "Back to embeddings"
save: "Save"
saved: "Embedding configuration saved"
delete: "Delete"
confirm_delete: Are you sure you want to remove this embedding configuration?
empty: "You haven't setup embeddings yet"
presets: "Select a preset..."
configure_manually: "Configure manually"
edit: "Edit"
seeded_warning: "This is pre-configured on your site and cannot be edited."
tests:
title: "Run test"
running: "Running test..."
success: "Success!"
failure: "Attempting to generate an embedding resulted in: %{error}"
hints:
dimensions_warning: "Once saved, this value can't be changed."
matryoshka_dimensions: "Defines the size of nested embeddings used for hierarchical or multi-layered representation of data, similar to how nested dolls fit within each other."
embed_prompt: "Task instruction prefix when generating embeddings of forum content. ONLY for embeddings models that require prefixes, like nomic-embed or stella. Not needed for most models."
search_prompt: "Task instruction prefix when generating embeddings of search queries. ONLY for embeddings models that require prefixes, like nomic-embed or stella. Not needed for most models."
sequence_length: "The maximum number of tokens that can be processed at once when creating embeddings or handling a query."
distance_function: "Determines how similarity between embeddings is calculated, using either cosine distance (measuring the angle between vectors) or negative inner product (measuring overlap of vector values)."
display_name: "Name"
provider: "Provider"
url: "Embeddings service URL"
api_key: "Embeddings service API Key"
tokenizer: "Tokenizer"
dimensions: "Embedding dimensions"
max_sequence_length: "Sequence length"
embed_prompt: "Embed prompt"
search_prompt: "Search prompt"
matryoshka_dimensions: "Matryoshka dimensions"
distance_function: "Distance function"
distance_functions:
<#>: "Negative inner product"
<=>: "Cosine distance"
providers:
hugging_face: "Hugging Face"
open_ai: "OpenAI"
google: "Google"
cloudflare: "Cloudflare"
CDCK: "CDCK"
fake: "Custom"
provider_fields:
model_name: "Model name"
semantic_search: "Topics (Semantic)"
semantic_search_results:
toggle: "AI results"
unavailable: "AI results unavailable"
zero_results_expanded: "Zero results found, showing %{count} AI results"
semantic_search_tooltips:
results_explanation: "When enabled, additional AI search results will be added below."
invalid_sort: "Search results must be sorted by Relevance to display AI results"
not_submitted: "Submit a search to enable AI results"
no_results: "No AI results found for this search"
semantic_search_unavailable_tooltip: "Search results must be sorted by Relevance to display AI results"
ai_generated_result: "Search result found using AI"
ai_results_notice:
no_results: "No exact matches, but here are some related results."
few_results:
one: "%{count} match found - showing related results."
other: "%{count} matches found - showing related results."
quick_search:
suffix: "in all topics and posts with AI"
ai_artifact:
expand_view_label: "Expand view"
collapse_view_label: "Exit Fullscreen (ESC or Back button)"
click_to_run_label: "Run Artifact"
ai_bot:
title: "AI bot"
agent: "Agent"
llm: "Model"
pm_warning: "AI chatbot messages are monitored regularly by moderators."
cancel_streaming: "Stop reply"
try_again: "Try again"
default_pm_prefix: "[Untitled AI bot PM]"
shortcut_title: "Start a PM with an AI bot"
shortcut_link: "AI bot"
exit: "exit AI bot"
share: "Copy AI conversation"
conversation_shared: "Conversation copied"
embed_copied: "Embed copied to clipboard"
debug_ai: "View raw AI request and response"
sidebar_empty: "Bot conversation history will appear here."
debug_ai_modal:
title: "View AI interaction"
copy_request: "Copy request"
copy_response: "Copy response"
this_turn: "This turn:"
whole_conversation: "Conversation:"
tokens_summary: "%{request_tokens} in → %{response_tokens} out"
cache_both: "(cache %{read} read, %{write} write)"
cache_read_only: "(cache %{read} read)"
cache_write_only: "(cache %{write} write)"
request: "Request"
response: "Response"
next_log: "Next"
previous_log: "Previous"
share_full_topic_modal:
title: "Share conversation publicly"
share: "Share and copy link"
update: "Update and copy link"
delete: "Delete share"
share_ai_conversation:
name: "Share AI conversation"
title: "Share this AI conversation publicly"
invite_ai_conversation:
button: "Invite"
title: "Invite to AI conversation"
ai_label: "AI"
ai_title: "Conversation with AI"
share_modal:
title: "Copy AI conversation"
copy: "Copy"
context: "Interactions to share:"
share_tip: "Alternatively, you can share the entire conversation"
bot_names:
fake: "Fake Test Bot"
claude-3-opus: "Claude 3 Opus"
claude-3-sonnet: "Claude 3 Sonnet"
claude-3-haiku: "Claude 3 Haiku"
cohere-command-r-plus: "Cohere Command R Plus"
gpt-4: "GPT-4"
gpt-4-turbo: "GPT-4 Turbo"
gpt-4o: "GPT-4 Omni"
gpt-3:
5-turbo: "GPT-3.5"
claude-2: "Claude 2"
gemini-1:
5-pro: "Gemini"
mixtral-8x7B-Instruct-V0:
"1": "Mixtral-8x7B V0.1"
conversations:
header: "What can I help with?"
submit: "Submit question"
disclaimer: "Generative AI can make mistakes. Verify important information."
placeholder: "Ask a question..."
new: "New Question"
min_input_length_message:
one: "Message must be %{count} character or longer"
other: "Message must be %{count} characters or longer"
messages_sidebar_title: "Conversations"
starred: "Starred"
star_conversation: "Star conversation"
unstar_conversation: "Unstar conversation"
open_conversation_menu: "Open conversation menu"
today: "Today"
last_7_days: "Last 7 days"
last_30_days: "Last 30 days"
upload_files: "Upload files"
uploads_in_progress: "Cannot submit while uploads are in progress"
show_toolbar: "Show formatting toolbar"
hide_toolbar: "Hide formatting toolbar"
scroll_to_bottom: "Scroll to bottom"
streaming_below: "New content below"
editing_post: "Editing post"
sentiments:
dashboard:
title: "Sentiment"
sidebar:
overview: "Sentiment overview"
analysis: "Sentiment analysis"
sentiment_analysis:
share_chart: "Copy link to chart"
filter_types:
all: "All"
positive: "Positive"
neutral: "Neutral"
negative: "Negative"
group_types:
category: "Category"
tag: "Tag"
table:
sentiment: "Sentiment"
total_count: "Total"
summarization:
chat:
title: "Summarize messages"
description: "Select an option below to summarize the conversation sent during the desired timeframe."
summarize: "Summarize"
since:
one: "Last hour"
other: "Last %{count} hours"
topic:
title: "Topic summary"
close: "Close summary panel"
regenerate_ai_summaries: "Regenerate AI summaries"
regen_modal_description: "Choose which type of AI summary to regenerate for this topic."
bulk_regen_description: "Choose which type of AI summary to regenerate for the selected topics."
regenerate_gists_option: "Short summaries (gists)"
regenerate_summaries_option: "Topic summaries"
regenerate_gists_success:
one: "Short summary regenerated successfully"
other: "%{count} short summaries regenerated successfully"
regenerate_gists_error:
one: "Failed to regenerate short summary"
other: "Failed to regenerate %{count} short summaries"
regenerate_topic_summary_success:
one: "Topic summary regenerated successfully"
other: "%{count} topic summaries regenerated successfully"
regenerate_topic_summary_error:
one: "Failed to regenerate topic summary"
other: "Failed to regenerate %{count} topic summaries"
topic_list_layout:
button:
compact: "Compact"
expanded: "Expanded"
expanded_description: "with AI summaries"
discobot_discoveries:
main_title: "Discobot discoveries"
regular_results: "Topics"
tell_me_more: "Tell me more..."
continue_convo: "Continue conversation..."
loading_convo: "Loading conversation"
collapse: "Collapse"
timed_out: "Discobot couldn't find any discoveries. Something went wrong."
user_setting: "Enable AI search discoveries"
tooltip:
header: "AI powered search"
content: "Natural language search powered by %{model}"
actions:
info: "How does it work?"
disable: "Disable"
user_preferences:
empty: "There are no relevant settings available at this time"
review:
statuses:
approved_tool_action:
title: "Tool approved"
rejected_tool_action:
title: "Tool rejected"
types:
reviewable_ai_post:
title: "AI-Flagged post"
reviewable_ai_chat_message:
title: "AI-Flagged chat message"
reviewable_ai_tool_action:
title: "AI Tool Action"