Releases: kkoishichan/MomShell
Release list
v1.3.2
What's Changed
Added
- RAG hybrid retrieval pipeline: 4-stage pipeline — query transformation, hybrid retrieval (vector + keyword via RRF), LLM-based reranking, configurable threshold/top-K filtering
- Full-text search index: GIN tsvector index for keyword-based document retrieval
- RAG configuration: Environment-configurable RAG parameters
- Rerank API support: LLM-based passage reranking in OpenAI-compatible client
Changed
- RAG code quality: Decomposed
hybridRetrieveinto focused sub-functions; extracted testable pure functions - SQL literal deduplication: Constants for repeated SQL where clauses
- golangci-lint integration: Added to
make lintpipeline; fixed errcheck warnings
Fixed
- SonarCloud quality gate: Resolved duplicated literals, cognitive complexity, and coverage issues
- Test coverage: Comprehensive tests for RAG service, config package, and OpenAI client rerank
Full Changelog: v1.3.1...v1.3.2
v1.3.1
What's New
LLM Cross-Validation
- LLM output cross-validation: New
pkg/llmvalidatepackage performs a second LLM call on every AI response to simultaneously validate JSON structure and audit content safety - Fact-checking with web search: Cross-validation integrates Firecrawl search results to verify factual claims against web sources, flagging inconsistencies and unverified data
- Content safety review: Automated detection of harmful content (crisis hotline appended), unqualified medical advice (disclaimer appended), and sensitive information leakage (API keys, system prompt fragments)
- Local text sanitization: Unified
Sanitize/StripCodeFencefunctions consolidate scattered cleanup logic (Qwen3<think>tag stripping, markdown code fence removal) from 5 service files into one reusable package - Knowledge Q&A mode: All 3 companion system prompts (Mom/Dad/Professional) now instruct the AI to answer factual and knowledge questions directly with specific, useful information instead of deflecting with emotional encouragement
Dad Console
- Dad chat style preference: New
dad_chat_stylefield (terminal/ambient) stored in user model; selectable from dad profile with migration backfill - Image zoom preview: Full-screen image preview for task proof photos and memory cards
- Dad daily briefing cache: AI-generated daily briefing cached in sessionStorage to avoid regeneration on page refresh
Tasks & Whisper
- Memory card regeneration: Mom can regenerate verified task memory cards via
POST /tasks/:id/card/regenerate - Whisper pre-generation on login: Mom login triggers background pre-generation of daily whisper questionnaire
Bug Fixes
- Graceful pgvector handling: Database migration no longer crashes when pgvector extension is unavailable; RAG features are disabled with a warning instead of fatal error
- Nil pointer crash on new user: Fixed
PreGenerateForUserpanic when a mom user has no partner bound - Backend auto-restart: Entrypoint wraps backend in auto-restart loop with health check before starting nginx
- UTF-8 truncation bug: Community post preview now uses
[]runeslicing instead of byte slicing to prevent garbled Chinese characters
Full Changelog: v1.3.0...v1.3.1
v1.3.0
What's New
Dad Console
- Empathetic Terminal theme: Redesigned DadConsole with terminal-inspired UI, inline panels, and profile page
- Modular architecture: Split into focused components — DcHome, DcChat, DcCommunity, DcTaskList, DcWhisper, DcDashboard, DcProfile
- Dad chat & community: Dedicated chat and community board within the console
- Dashboard: Skill radar, achievements overview, and perk card management
- Memory cards: AI-generated memory cards from task completions with mom view filtering
- No BGM: Background music automatically pauses in dad mode
Tasks & Whisper
- Task priorities (T0/T1/T2): Tasks carry a priority field; UI sorts and highlights urgent/milestone tasks
- Proof photo completion: Dad can upload proof photos when completing tasks
- Future letters: Replaced shell gifts with time-space care engine for contextual future letters
- Enhanced whisper intelligence: Refreshed whisper flows with AI-powered scene guidance
Entry & Auth
- Anime landing page: New animated entry page for unauthenticated users
- Redesigned login/register: Improved authentication UX
AI & Search
- Deep RAG: Semantic document retrieval with pgvector and ModelScope embeddings
Fixed
- SonarCloud reliability and maintainability issues (frontend + backend)
- Code duplication reduced to meet quality gate (≤3%)
- Vite 8 compatibility (MediaPipe, plugin updates)
- Pearl shell gesture, position, and menu fixes
- Photo grid, avatar, Docker build fixes
Security
- Removed hardcoded AI user password (S2068)
- Frontend and backend security hardening
Dependencies
- Vite 7.3.1 → 8.0.0, Vue 3.5.29 → 3.5.30, golang.org/x/crypto 0.48.0 → 0.49.0
- GitHub Actions and various frontend dependencies bumped
Full Changelog: v1.2.0...v1.3.0
v1.2.0
What's New
Mobile Responsive & PWA
- Mobile-first responsive design for beach scene, overlay panels, and all feature pages
- Responsive sprite positioning with
mobileandlandscapeoverride fields - Landscape orientation support via
useIsMobilecomposable - Portrait scroll range increased (1.5x vs 1.2x desktop)
- PWA service worker for offline caching (production only)
- Touch gesture support (
touch-action: pan-x) for horizontal swipe navigation - Dynamic viewport units (
dvh/vhfallback) for mobile browsers
Navigation & Scene Interaction
- Collapsible glassmorphism NavBar (top-right corner, frosted glass styling)
- Scroll-based navigation — NavBar items scroll to center each feature sprite
- Golden pulse glow highlight on feature sprites after navigation
- Horizontal scroll support — trackpad swipe, mouse wheel, shift+scroll fallback
AI Chat Improvements
- Memory filtering rules to prevent persisting negative or harmful content
Community Board
- Improved post layout with increased row spacing and index-based z-ordering
Bug Fixes
- dvh/vh fallback order corrected across mobile styles
- touch-action scoped to
.sceneonly (overlay panels scroll vertically) - Event listener leak fixes in
useParallax.ts useIsMobilelayout flash and MediaQueryList reuse fixes- Go static analysis:
fmt.Errorf→errors.Newfor constant strings (12 occurrences)
Security
- Dockerfile hardening: explicit file copies instead of
COPY . . - Go version alignment:
golang:1.25-alpineto matchgo.mod
Performance
- Gesture control optimization: MediaPipe lite model, 320×240 camera, ~10fps throttle, GSAP follow throttle
Full Changelog: https://github.com/koishi510/MomShell/blob/main/CHANGELOG.md
v1.1.0
What's New
Onboarding Tutorial
- 7-step interactive guided tour using driver.js with auto-scrolling parallax viewport
- Tutorial completion persistence — logged-in users see it only once, guests every visit
- Admin tutorial completion badge in user table
- Skip & cancel support (ESC / close button / panel open auto-cancel)
Partner Data Sharing
- Shared photo library and photo wall between bound partners
- Shared AI memory facts with source attribution and family context labels
Beach Scene Decorations
- Interactive starfish and pearl decorations
- Bloom effect in pearl shell 3D scene
- Improved AI image stickers and photo wall filters
AI Memory Improvements
- Category-based memory fact extraction with deduplication
- Per-user fact dedup (both partners can independently record same facts)
AI Chat
- Chat typing effect for AI responses
- Conversation summary for long-term context (auto-compress after 20 turns)
- Structured memory facts with management panel
- Role-based AI prompts (mom, dad, professional)
Community Board Redesign
- Full board-style community UI with avatars and scroll behavior
- Comment editing, my-questions / my-answers tabs
- AI auto-reply on all posts with source footnotes
Security Hardening
- httpOnly cookie authentication (XSS mitigation)
- Fixed-window rate limiting on all endpoints
- SQL injection prevention, input validation hardening
- CodeQL compliance fixes
Photo Gallery & Lifecycle
- Auto-cleanup of expired photos, admin photo controls
- Photo wall expanded to 2x5 grid (10 photos)
- AI-generated photos in memoir
Whisper & Tasks
- Audio-to-text conversation (speech recognition)
- Goal-setting and task-tracking with partner support
ModelScope Docker Deployment
- Single-container deployment with embedded PostgreSQL
Full Changelog: https://github.com/koishi510/MomShell/blob/main/CHANGELOG.md
v0.5.3
What's Changed (since v0.4.0)
v0.5.3 (2026-02-09)
Security Improvements
- JWT Secret Auto-Generation: Automatic random JWT secret key generation for Docker deployments
- Slider CAPTCHA: Human verification for login and registration with drag-to-verify interaction
- Content Moderation Expansion: Post titles, comments, and nicknames now moderated
User Experience
- Profile Page Enhancements: Username display, email editing with duplicate checking
- Registration Improvements: Role selection (Mom/Dad/Family) during signup
- Password Visibility Toggle: Show/hide password on login and register pages
Developer Experience
- New
frontend/.env.exampletemplate dev-setup.shauto-createsfrontend/.env.local
Fixed
- Moderation error messages now correctly displayed in frontend
v0.5.2 (2026-02-06)
- Source Citation Links: AI replies show which web sources were used with
[1],[2]notation - Chain-of-Verification (CoVe): New verification service to reduce AI hallucinations
v0.5.1 (2026-02-05)
- Dev Setup Script:
./scripts/dev-setup.shfor one-command contributor setup - Web Search Integration: Firecrawl API for grounding AI responses on factual questions
- License Change: GPL-3.0 → AGPL-3.0 to prevent closed-source SaaS forks
- Fixed: Chat route authentication bypass via direct URL access
v0.5.0 (2026-02-05)
- AI Auto-Reply: "Shell Sister" automatically replies to community posts and comments
- Chat Memory Persistence: Conversation history saved to database for logged-in users
- Coach Progress Persistence: Exercise progress saved for authenticated users
- Password Change: New password change feature in profile page
- Certification Revocation: Admins can revoke approved professional certifications
- Login Required: Chat, Community, and Coach features now require authentication from homepage
Full Changelog: v0.1.0...v0.5.3
v0.4.0
MomShell v0.4.0
The second public release of MomShell — a warm, AI-powered companion for postpartum recovery.
Highlights
Soulful Companion
AI-powered emotional support chat companion with warm, validating conversations designed specifically for postpartum mothers. Powered by ModelScope Qwen with visual ambient effects and conversation memory.
Community
Mutual support community featuring:
- Dual-channel system: Professional Channel (doctors' advice) & Experience Channel (moms' stories)
- Verified healthcare professionals with visual badges
- Q&A with likes, collections, and content moderation
- Daily Resonance topics and Shell Picks collections
Recovery Coach
AI-powered postpartum exercise coaching with:
- Real-time pose detection (MediaPipe, 33 body landmarks)
- 9 postpartum-specific exercises across 5 categories
- LLM-powered voice feedback with Edge TTS
- Progress tracking with achievements and streaks
- Safety monitoring with fatigue detection
Guardian Partner
Gamified system to engage partners in postpartum recovery with:
- Partner binding via invite codes
- Daily status recording (mood, energy, health conditions, feeding, sleep)
- Smart suggestions pushed to partner based on mom's status
- Task system with 3 difficulty levels and point rewards
- Level progression: Intern → Trainee → Regular → Gold
- Time recorder for baby milestone photos
Tech Stack
- Backend: FastAPI, MediaPipe, LangGraph, Edge TTS, SQLite + SQLAlchemy
- Frontend: Next.js 16, React 19, TypeScript, Tailwind CSS 4, Framer Motion
Deployment
- Docker Compose (multi-container with nginx)
- Single container deployment (ModelScope compatible)
- Local development with hot reload
Quick Start
# Clone and configure
git clone https://github.com/koishi510/MomShell.git
cd MomShell
cp .env.example .env # Add your MODELSCOPE_KEY
# Docker (recommended)
docker compose up -d --build
# Access at http://localhost:7860
# Or local development
uv sync
cd frontend && npm install && cd ..
# Run backend and frontend in your terminal
# We recommend you to use tmux
make dev-tmuxDocumentation
- README - Project overview and setup
- Contributing Guide - Development standards and workflow
Full Commit Changes: v0.1.0...v0.4.0
Full Changelog: CHANGELOG.md
v0.1.0
MomShell v0.1.0
The first public release of MomShell — a warm, AI-powered companion for postpartum recovery.
Highlights
Soulful Companion
AI-powered emotional support chat companion with warm, validating conversations designed specifically for postpartum mothers. Powered by ModelScope Qwen with visual ambient effects and conversation memory.
Community
Mutual support community featuring:
- Dual-channel system: Professional Channel (doctors' advice) & Experience Channel (moms' stories)
- Verified healthcare professionals with visual badges
- Q&A with likes, collections, and content moderation
- Daily Resonance topics and Shell Picks collections
Recovery Coach
AI-powered postpartum exercise coaching with:
- Real-time pose detection (MediaPipe, 33 body landmarks)
- 9 postpartum-specific exercises across 5 categories
- LLM-powered voice feedback with Edge TTS
- Progress tracking with achievements and streaks
- Safety monitoring with fatigue detection
Tech Stack
- Backend: FastAPI, MediaPipe, LangGraph, Edge TTS, SQLite
- Frontend: Next.js 16, React 19, TypeScript, Tailwind CSS 4, Framer Motion
Deployment
- Docker Compose (multi-container with nginx)
- Single container deployment (ModelScope compatible)
- Local development with hot reload
Quick Start
# Clone and configure
git clone https://github.com/koishi510/MomShell.git
cd MomShell
cp .env.example .env # Add your MODELSCOPE_KEY
# Docker (recommended)
docker compose up -d --build
# Access at http://localhost:7860
# Or local development
uv sync
cd frontend && npm install && cd ..
# Run backend and frontend in separate terminalsDocumentation
- README - Project overview and setup
- Contributing Guide - Development standards and workflow