feat(server): add brand kit management and project binding

Add a brand kit domain with memory and postgres stores, a BrandKitService
for CRUD and resolution, and REST endpoints to list, upsert, and delete
brand kits. Projects can bind a brand kit whose resolved context and
reference images feed into the agent's long-term memory and design prompts.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-10 20:58:55 +08:00
parent 3653474355
commit 789f51b29e
38 changed files with 2165 additions and 135 deletions
@@ -59,6 +59,9 @@ func buildLongMemory(project design.Project) string {
sections = append(sections, "- brief: "+shortenMemoryText(project.Brief, 360))
}
}
if brandContext := strings.TrimSpace(project.BrandContext); brandContext != "" {
sections = append(sections, "Binding Brand Kit context:", brandContext)
}
if decisions := durableDecisionMemory(memoryMessages, longMemoryDecisionLimit); decisions != "" {
sections = append(sections, "Durable user decisions and preferences:", decisions)
}