Added detailed plugin information to the plugins page (#1013)

Co-authored-by: Thorsten Sommer <SommerEngineering@users.noreply.github.com>
This commit is contained in:
nilskruthoffandThorsten Sommer authored and GitHub committed 2026-10-12 18:02:28 +02:00
1 parent b371b3d54f
commit f912af321f
26 files changed
+884 -95

No files matched your search

@@ -29,7 +29,13 @@ public sealed class AssistantPluginGenerationService(ToolRegistry toolRegistry,
private const string DEFAULT_AUTHOR = "MindWork AI - Assistant Builder";
public const string DEFAULT_SUPPORT_CONTACT = "mailto:info@mindwork.ai";
public const string DEFAULT_SOURCE_URL = "https://github.com/MindWorkAI/AI-Studio";
/// <summary>
/// Now as the plugin field LAST_CHANGED expects it. Every plugin this service writes or has a
/// model write is a change made now.
/// </summary>
private static string NowAsLastChanged => PluginBase.FormatLastChanged(DateTimeOffset.UtcNow);
private static readonly AssistantContextFile[] ASSISTANT_CONTEXT_FILES =
[
new("Assistant plugin schema", "Plugins/assistants/README.md", IsRequired: true),
@@ -148,6 +154,7 @@ public sealed class AssistantPluginGenerationService(ToolRegistry toolRegistry,
var metadata = new DirectChatLauncherPluginMetadata(
request.PluginId,
DEFAULT_VERSION,
DateTimeOffset.UtcNow,
[DEFAULT_AUTHOR],
DEFAULT_SUPPORT_CONTACT,
DEFAULT_SOURCE_URL,
@@ -426,6 +433,7 @@ public sealed class AssistantPluginGenerationService(ToolRegistry toolRegistry,
<fixed_metadata_defaults>
ID = "{{request.PluginId}}"
VERSION = "{{DEFAULT_VERSION}}"
LAST_CHANGED = "{{NowAsLastChanged}}"
TYPE = "ASSISTANT"
AUTHORS = {"{{DEFAULT_AUTHOR}}"}
SUPPORT_CONTACT = "{{DEFAULT_SUPPORT_CONTACT}}"
@@ -620,6 +628,7 @@ public sealed class AssistantPluginGenerationService(ToolRegistry toolRegistry,
- A null value in the request JSON means that detail is not available. Never write the word "null" or a field name into the plugin.
- Keep ID = "{{plugin.Id}}" exactly. Do not create a new plugin ID.
- Keep TYPE = "ASSISTANT".
- Set LAST_CHANGED = "{{NowAsLastChanged}}" right after VERSION, replacing any earlier value.
- Keep the assistant locally managed. DEPLOYED_USING_CONFIG_SERVER must not be true.
{{builderMetadataRule}}
- Set assistant.kind to "CHAT_LAUNCHER" exactly when the revised ASSISTANT table uses LaunchBehavior = "OPEN_WORKSPACE_CHAT_BY_NAME" or "OPEN_TEMPORARY_CHAT"; otherwise set it to "FORM".