- agents table with name, avatar, description, model, persona, instructions, soft-delete - AgentEndpoint (GET/POST/PUT/DELETE /api/agents) - sessions + chains now reference agent_id - ChatEndpoint resolves agent from session (no agent = no chat) - system prompt built from agent persona + instructions - frontend: agent editor with avatar upload, agent cards on dashboard - session: agent dropdown replaces model picker, choice persisted
26 lines
583 B
C#
26 lines
583 B
C#
using System.Collections.Generic;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace Gott.Models;
|
|
|
|
public class ChatMessage
|
|
{
|
|
[JsonPropertyName("role")]
|
|
public string Role { get; set; } = "";
|
|
|
|
[JsonPropertyName("content")]
|
|
public string Content { get; set; } = "";
|
|
}
|
|
|
|
public class ChatRequest
|
|
{
|
|
[JsonPropertyName("messages")]
|
|
public List<ChatMessage> Messages { get; set; } = new();
|
|
|
|
[JsonPropertyName("systemPrompt")]
|
|
public string SystemPrompt { get; set; } = "";
|
|
|
|
[JsonPropertyName("sessionId")]
|
|
public string SessionId { get; set; } = "";
|
|
}
|