feat: 8 AI providers, rich text editor, agent notifications, UI contrast & font settings
All checks were successful
Deploy to Production / Build and Deploy (push) Successful in 1m25s

- Add DeepSeek, OpenRouter, Mistral, Z.AI, LM Studio as AI providers
  with editable model names via Combobox in admin settings
- Fix OpenRouter broken by normalizeProvider bug in config.ts
- Convert agent-created notes from Markdown to HTML (TipTap rich text)
- Add Notification model + in-app notifications for agent results
- Agent notification click opens the created note directly
- Add note count display on notebook and inbox headers
- Fix checklist toggle in card view (persist state via localCheckItems)
- Add checklist creation option in tabs/list view (dropdown on + button)
- Fix image description ENOENT error with HTTP fallback
- Improve UI contrast across all themes (input, border, checkbox visibility)
- Add font family setting (Inter vs System Default) in Appearance settings
- Fix CSS font-sans variable conflict (removed dead Geist references)
- Update README with new features and 8 providers

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Sepehr Ramezani
2026-05-01 16:14:07 +02:00
parent 1345403a31
commit dbd49d6fcb
64 changed files with 4124 additions and 1392 deletions

View File

@@ -251,9 +251,8 @@ deploy() {
done
echo ""
info "Initializing database..."
docker compose exec memento-note npx prisma db push --skip-generate 2>/dev/null || \
warn "DB push failed (may already be synced)"
info "Database migrations are handled by the container entrypoint on every start."
info "The entrypoint handles fresh installs, updates, and P3005 baseline recovery automatically."
echo ""
echo "=========================================="
@@ -266,10 +265,18 @@ deploy() {
# Show admin setup hint if first time
local user_count
user_count=$(docker compose exec -T postgres psql -U memento -d memento -t -c 'SELECT COUNT(*) FROM "User"' 2>/dev/null | tr -d ' ' || echo "0")
local admin_email
admin_email=$(grep '^ADMIN_EMAIL=' "$ENV_FILE" 2>/dev/null | cut -d= -f2 | tr -d '"' || echo "")
if [ "$user_count" = "0" ]; then
echo ""
warn "No users found. Register at $(grep NEXTAUTH_URL "$ENV_FILE" | cut -d= -f2 | tr -d '"')/register"
warn "Then run: docker compose exec memento-note npx tsx scripts/grant-all-admins.ts"
warn "No users found."
if [ -n "$admin_email" ]; then
info "Register at $(grep NEXTAUTH_URL "$ENV_FILE" | cut -d= -f2 | tr -d '"')/register"
info "Use email: $admin_email (will automatically get ADMIN role)"
else
info "Register at $(grep NEXTAUTH_URL "$ENV_FILE" | cut -d= -f2 | tr -d '"')/register"
warn "ADMIN_EMAIL is not set. Set it in .env.docker for automatic admin role assignment."
fi
fi
}