- Neues optionales Session-Feld 'preparerAgentId' (DB + Model + API) - PreparerContext im ChatContext für Agent-Konfiguration - RunPreparer() in AnthropicService: führt Preparer vor dem Worker aus - [FORWARD] → aufbereiteter Prompt wird an Session-Agent weitergegeben - Ohne [FORWARD] → Rückfrage an User, Flow stoppt (preparer_query) - Preparer-System-Prompt: erklärt Rolle, [FORWARD]-Mechanismus, Vorarbeit - Preparer kann eigene Tools + Fähigkeiten aktiv nutzen - ChatEndpoint: Preparer-Phase vor StreamChat integriert - Frontend: SSE-Events (preparer_start/text/tool_use/done) - Preparer-Bubble (Info-Farbe) mit Status Weitergeleitet/Rückfrage - [Preparer: Name] → hübscher Header, [FORWARD] ausgeblendet - [Vorbereitet von Name] → dezenter Header in User-Bubble - Agent-Picker im Session-Form (vor Review-Agent)
69 lines
2.1 KiB
C#
69 lines
2.1 KiB
C#
using System.Collections.Generic;
|
|
|
|
namespace Gott.Models;
|
|
|
|
public class ChatContext
|
|
{
|
|
public string ChainId { get; set; }
|
|
public string SessionId { get; set; }
|
|
public string ModelId { get; set; }
|
|
public string Workspace { get; set; }
|
|
public string AgentId { get; set; }
|
|
public string SystemPromptText { get; set; }
|
|
public List<object> SystemPrompt { get; set; }
|
|
public string ToolChoice { get; set; }
|
|
public bool UseMemory { get; set; }
|
|
public string WebSearchVersion { get; set; }
|
|
public int MaxIterations { get; set; }
|
|
public AgentRecord Agent { get; set; }
|
|
public SessionRecord Session { get; set; }
|
|
public bool PlanMode { get; set; }
|
|
|
|
// Preparer-Agent (vor dem Worker)
|
|
public PreparerContext Preparer { get; set; }
|
|
|
|
// Review-Agent
|
|
public ReviewContext Review { get; set; }
|
|
|
|
// Finalizer-Agent
|
|
public FinalizerContext Finalizer { get; set; }
|
|
}
|
|
|
|
public class PreparerContext
|
|
{
|
|
public string ModelId { get; set; }
|
|
public List<object> SystemPrompt { get; set; }
|
|
public string AgentId { get; set; }
|
|
public string Workspace { get; set; }
|
|
public bool UseMemory { get; set; }
|
|
public string WebSearchVersion { get; set; }
|
|
public string ToolChoice { get; set; }
|
|
public bool AllowUserChoice { get; set; }
|
|
public AgentRecord Agent { get; set; }
|
|
}
|
|
|
|
public class FinalizerContext
|
|
{
|
|
public string ModelId { get; set; }
|
|
public List<object> SystemPrompt { get; set; }
|
|
public string AgentId { get; set; }
|
|
public string Workspace { get; set; }
|
|
public bool UseMemory { get; set; }
|
|
public string WebSearchVersion { get; set; }
|
|
public string ToolChoice { get; set; }
|
|
public AgentRecord Agent { get; set; }
|
|
}
|
|
|
|
public class ReviewContext
|
|
{
|
|
public string ModelId { get; set; }
|
|
public List<object> SystemPrompt { get; set; }
|
|
public string AgentId { get; set; }
|
|
public string Workspace { get; set; }
|
|
public bool UseMemory { get; set; }
|
|
public string WebSearchVersion { get; set; }
|
|
public string ToolChoice { get; set; }
|
|
public int MaxReviewIterations { get; set; }
|
|
public AgentRecord Agent { get; set; }
|
|
}
|