Conversation
Phase 2 - Conversation Summary: - Add ConversationSummary field to ChatMemory model - Auto-summarize old turns via AI when conversation exceeds 20 turns - Keep recent 15 turns + compressed summary for long-term context - Inject summary into prompt alongside recent conversation history Phase 3 - Structured Memory Facts: - Add ChatMemoryFact model with category-based classification - Auto-extract and deduplicate facts from AI memory_extract - Add GET /api/v1/companion/memories and DELETE /memories/:id APIs - Track last_referenced_at for memory relevance - Add frontend API client for memory management Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Create AiMemoryPanel.vue with list/delete UI for structured facts - Add memory button in ChatPanel header (globe icon, auth-only) - Category-colored badges: family, interest, concern, personal, etc. - Register 'ai-memory' panel in UI store and App.vue - Frontend API: getMemories() and deleteMemory() in chat.ts Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add right padding to chat header to clear the overlay close button. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…l to 2x5 grid Remove the 3D pearl mesh, point light, and all associated state transition animations from PearlShell. Change photo wall layout from 3x3 (9 photos) to 5-column 2-row grid (10 photos), updating limits in both frontend validation and backend DTO/service constraints. Also update suitcase and profile modal overlays to use consistent glass-style panel transitions.
Configure Docker for ModelScope Studios: nginx listens on port 7860, entrypoint auto-initializes PostgreSQL (initdb, create user/db), and adds /uploads/ proxy in nginx. Also adjust car page layout padding and rename chat companion to 小石光.
…anel Add backend endpoints GET/DELETE /api/v1/companion/history for retrieving and clearing conversation turns and summary. Add tabbed UI to AiMemoryPanel with "记忆" (facts) and "对话历史" (history) tabs, showing summary, recent turns, and a confirm-to-clear button.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Related Issue
Summary
Change Type
Self-Check Checklist
Backend (Go):
go build ./...passesgo vet ./...passesgofmtproduces no diffFrontend (Vue):
npm run lintpassesnpm run typecheckpassesGeneral:
Test Steps