Avatar: Ctrl+V paste + serverseitige Skalierung auf max 256px; Tool-Boxes: Diff-View für edit/write_file, Foldout für alle Tools, stop_reason im Chat; ImageSharp 3.1.12
This commit is contained in:
1 parent
18b2feef4a
commit
e662548d79
13 files changed
+416
-42
No files matched your search
@@ -36,14 +36,16 @@ public static class AgentEndpoint
|
||||
await ctx.Response.WriteAsJsonAsync(agent);
|
||||
}
|
||||
|
||||
private static async Task HandleCreate(HttpContext ctx, DatabaseService db)
|
||||
private static async Task HandleCreate(HttpContext ctx, DatabaseService db, ImageService imageService)
|
||||
{
|
||||
var body = await JsonSerializer.DeserializeAsync<JsonElement>(ctx.Request.Body);
|
||||
|
||||
var avatarRaw = body.TryGetProperty("avatar", out var av) ? av.GetString() : null;
|
||||
|
||||
var agent = new AgentRecord
|
||||
{
|
||||
Name = body.TryGetProperty("name", out var n) ? n.GetString() ?? "Neuer Agent" : "Neuer Agent",
|
||||
Avatar = body.TryGetProperty("avatar", out var av) ? av.GetString() : null,
|
||||
Avatar = imageService.ResizeDataUrl(avatarRaw),
|
||||
Description = body.TryGetProperty("description", out var d) ? d.GetString() : null,
|
||||
Model = body.TryGetProperty("model", out var m) ? m.GetString() ?? "sonnet" : "sonnet",
|
||||
Persona = body.TryGetProperty("persona", out var p) ? p.GetString() : null,
|
||||
@@ -54,7 +56,7 @@ public static class AgentEndpoint
|
||||
await ctx.Response.WriteAsJsonAsync(agent);
|
||||
}
|
||||
|
||||
private static async Task HandleUpdate(HttpContext ctx, DatabaseService db)
|
||||
private static async Task HandleUpdate(HttpContext ctx, DatabaseService db, ImageService imageService)
|
||||
{
|
||||
var agentId = ctx.Request.RouteValues["agentId"]?.ToString();
|
||||
if (string.IsNullOrEmpty(agentId)) { ctx.Response.StatusCode = 400; return; }
|
||||
@@ -65,7 +67,7 @@ public static class AgentEndpoint
|
||||
var body = await JsonSerializer.DeserializeAsync<JsonElement>(ctx.Request.Body);
|
||||
|
||||
if (body.TryGetProperty("name", out var n)) agent.Name = n.GetString();
|
||||
if (body.TryGetProperty("avatar", out var av)) agent.Avatar = av.GetString();
|
||||
if (body.TryGetProperty("avatar", out var av)) agent.Avatar = imageService.ResizeDataUrl(av.GetString());
|
||||
if (body.TryGetProperty("description", out var d)) agent.Description = d.GetString();
|
||||
if (body.TryGetProperty("model", out var m)) agent.Model = m.GetString();
|
||||
if (body.TryGetProperty("persona", out var p)) agent.Persona = p.GetString();
|
||||
|
||||
@@ -47,13 +47,14 @@ public static class SessionEndpoint
|
||||
await ctx.Response.WriteAsJsonAsync(session);
|
||||
}
|
||||
|
||||
private static async Task HandleCreate(HttpContext ctx, DatabaseService db)
|
||||
private static async Task HandleCreate(HttpContext ctx, DatabaseService db, ImageService imageService)
|
||||
{
|
||||
var body = await JsonSerializer.DeserializeAsync<JsonElement>(ctx.Request.Body);
|
||||
|
||||
var name = body.TryGetProperty("name", out var n) ? n.GetString() : "Neue Session";
|
||||
var description = body.TryGetProperty("description", out var d) ? d.GetString() : null;
|
||||
var image = body.TryGetProperty("image", out var img) ? img.GetString() : null;
|
||||
var imageRaw = body.TryGetProperty("image", out var img) ? img.GetString() : null;
|
||||
var image = imageService.ResizeDataUrl(imageRaw);
|
||||
var agentId = body.TryGetProperty("agentId", out var a) ? a.GetString() : null;
|
||||
var workspace = body.TryGetProperty("workspace", out var w) ? w.GetString() : null;
|
||||
var context = body.TryGetProperty("context", out var ctxEl) ? ctxEl.GetString() : null;
|
||||
@@ -63,7 +64,7 @@ public static class SessionEndpoint
|
||||
await ctx.Response.WriteAsJsonAsync(session);
|
||||
}
|
||||
|
||||
private static async Task HandleUpdate(HttpContext ctx, DatabaseService db)
|
||||
private static async Task HandleUpdate(HttpContext ctx, DatabaseService db, ImageService imageService)
|
||||
{
|
||||
var sessionId = ctx.Request.RouteValues["sessionId"]?.ToString();
|
||||
if (string.IsNullOrEmpty(sessionId))
|
||||
@@ -73,7 +74,7 @@ public static class SessionEndpoint
|
||||
}
|
||||
|
||||
var body = await JsonSerializer.DeserializeAsync<JsonElement>(ctx.Request.Body);
|
||||
await db.UpdateSession(sessionId, body);
|
||||
await db.UpdateSession(sessionId, body, imageService);
|
||||
|
||||
var session = await db.GetSession(sessionId);
|
||||
await ctx.Response.WriteAsJsonAsync(session);
|
||||
@@ -183,7 +184,7 @@ public static class SessionEndpoint
|
||||
var process = Process.Start(psi);
|
||||
if (process != null)
|
||||
{
|
||||
process.WaitForExit(5000);
|
||||
process.WaitForExit(500);
|
||||
}
|
||||
|
||||
ctx.Response.StatusCode = 202;
|
||||
|
||||
Reference in new issue
Block a user