Ich überlege, einige benutzerdefinierte Prompts im Discourse-Helfer zu aktivieren.
Momentan habe ich es nur geschafft, sie über den AI Bot von Agenten aus zu nutzen. Eine Funktion, zum Beispiel, entwickelt aus einem eingefügten Link kurz einen Beitrag. Das funktioniert super, aber es ist viel Arbeit, die persönliche Nachricht in ein Thema umzuwandeln, es zu verschieben und dann noch Tags hinzuzufügen.
Das gewünschte Verhalten würde es ermöglichen, dieselbe Funktionalität den bereits im Helfer etablierten Optionen hinzuzufügen, ohne den ursprünglichen Prompt erneut einfügen zu müssen.
Okay, ich habe am Ende die verfügbaren (in unserer Community aber nicht genutzten) und bereits mit Discourse ausgelieferten Helfer wiederverwendet.
| Ort |
Einstellung |
Wert |
Label umbenennen (Anpassen → Text) |
| KI abfragen (Beiträge/Themen) |
ai_helper_translator_agent |
custom search agent |
discourse_ai.ai_helper.prompts.translate → custom search label |
| Composer Übersetzen |
ai_helper_markdown_tables_agent |
built-in Translator agent |
discourse_ai.ai_helper.prompts.markdown_table → Übersetzen |
| Composer Markdown-Formatierer |
ai_helper_smart_dates_agent |
Markdown formatter agent (moved) |
discourse_ai.ai_helper.prompts.replace_dates → Als Markdown formatieren |
Danach zwei Snippets:
javascripts/discourse/api-initializers/ai-helper-slots.gjs
import { apiInitializer } from "discourse/lib/api";
const AI_HELPER_ICONS = {
translate: "ph-dt-magnifying-glass", // for forum search agent
markdown_table: "ph-dt-translate", // composer: built-in Translator
replace_dates: "ph-dt-markdown", // composer: Markdown formatter
};
export default apiInitializer((api) => {
api.getCurrentUser()?.ai_helper_prompts?.forEach((prompt) => {
prompt.icon = AI_HELPER_ICONS[prompt.name] ?? prompt.icon;
});
});
common.scss
.ai-composer-helper-menu ul.ai-helper-options li[data-value="translate"] {
display: none;
}
Hinweis: Ich verwende ein custom Phosphor icon set; die neuen Icons können in Font Awesome, Material oder jedes andere Icon-Set eingebunden werden.