* 🔧 chore: add clerk to betterauth migration scripts
* 🔧 chore: support node-postgres driver for migration scripts
* 🔥 chore: remove unnecessary chore scripts
* ♻️ refactor: reorganize migration scripts directory structure
* 📝 docs: add example column to email service configuration table
* 📝 docs: rename auth/better-auth to auth/providers
* 📝 docs: enhance email service configuration with detailed guides
* 📝 docs: add Clerk to Better Auth migration guide
- Add migration documentation (EN & CN) with step-by-step instructions
- Add dry-run environment variable for safe testing
- Enhance script output with success/failure emojis
- Add placeholder files for migration data directories
- Update .gitignore to exclude migration data files
* ✨ feat(auth): add set password option for social-only users
- Add isSocialOnly state to detect users without password
- Show Alert with "set password" link when magic link is disabled
- Update migration docs to clarify Magic Link vs non-Magic Link scenarios
- Add profile page password management info to docs
* ♻️ refactor: improve migration safety and sign-in link styling
- Add production mode confirmation prompt requiring "yes" input
- Use createStaticStyles for setPassword link styling with theme token
* 📝 docs: clarify migration script requirements and remove invalid links
* 📝 docs: add clerk migration guide link to legacy auth docs
* ♻️ refactor: enforce strict validation for clerk external accounts
* 📝 docs: add step to disable new user registration before migration
* 🐛 fix: handle missing .env file in migration scripts
* feat: generate agent_cron_job in agents
* feat: update the db fields
* feat: add trigger/mode in topics table & add group id in cronjob
* feat: update sql
* fix: fixed db migration
* feat: update the test
* ✨ feat: Add browser compatibility detection and fallback page
- Add automatic browser compatibility check in app layout
- Create standalone not-compatible.html fallback page with modern responsive design
- Support dark mode via prefers-color-scheme
- Include browser download links (Chrome, Firefox, Edge, Safari, Arc)
- Display minimum browser requirements
- Update feature development documentation
* 📝 docs(CLAUDE): Update PR Linear Issue Association guidelines
- Clarify the requirement to include magic keywords in PR body for Linear issues.
- Add instruction to summarize work done in the Linear issue comment and update the issue status to "In Review".
Signed-off-by: Innei <tukon479@gmail.com>
* ✨ feat: Update browser compatibility page and layout
- Change favicon link to absolute path in not-compatible.html.
- Add Safari browser support with corresponding icon and link.
- Update minimum browser requirements to Chrome 99+, Safari 16.4+, and Edge 99+.
- Fix typo in layout.tsx comments from "serveral" to "several".
Signed-off-by: Innei <tukon479@gmail.com>
---------
Signed-off-by: Innei <tukon479@gmail.com>
* 📝 docs(self-hosting): add OAuth token exchange troubleshooting for Docker reverse proxy
Add troubleshooting section for OAuth authentication failures when using Docker deployment behind reverse proxy. The issue occurs when MIDDLEWARE_REWRITE_THROUGH_LOCAL=1 (default) rewrites OAuth token exchange URLs to localhost.
Fixes#10166
* ✨ feat(model-bank): add grok-4 model support
Add Grok 4 model to lobehub models with the following capabilities:
- Function call, reasoning, search, and vision support
- 256K context window
- Search implementation via params
* ♻️ refactor: Convert glossary from JSON to Markdown table format
- Migrate glossary.json to docs/glossary.md with table format
- Update .i18nrc.js to read glossary from Markdown file
- Add more terminology entries (agentGroup, thread)
- Improve readability with structured table layout
* update i18n
* update glossary
* 🐛 fix: fix file type
- Add JWKS_KEY env variable with fallback to OIDC_JWKS_KEY
- Add signInternalJWT() and validateInternalJWT() in internalJwt.ts
- Use short-lived JWT (3s) with purpose claim to authenticate lambda → async calls
- Remove KEY_VAULTS_SECRET from Authorization header transmission
- Update OIDC provider to use JWKS_KEY from authEnv
- Update documentation for JWKS_KEY and desktop sync
* ✨ feat: add INTERNAL_APP_URL for server-to-server calls
Add INTERNAL_APP_URL environment variable to bypass CDN/proxy for internal operations like embedding and file chunking. Falls back to APP_URL if not set.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* 📝 docs: add INTERNAL_APP_URL documentation
Add documentation for INTERNAL_APP_URL environment variable in:
- docker-compose .env.example
- Docker Compose deployment guide (English and Chinese)
Explains how to bypass CDN/proxy for server-to-server operations.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* ✅ test: add tests for INTERNAL_APP_URL feature
Add comprehensive test coverage for INTERNAL_APP_URL:
- Test fallback behavior to APP_URL when INTERNAL_APP_URL is not set
- Test explicit INTERNAL_APP_URL configuration
- Test localhost bypass for CDN/proxy
- Test createAsyncServerClient using INTERNAL_APP_URL
- Test authentication headers in async calls
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
---------
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* Refactor code structure for improved readability and maintainability
* edit dbml
* feat: 更新 AiInfraRepos 以支持用户设置覆盖内置设置
* Revert "Refactor code structure for improved readability and maintainability"
This reverts commit 81453d8dc3.
* Refactor code structure for improved readability and maintainability
* 添加 IF NOT EXISTS 选项以避免重复列添加
* format