Productivity

project-overviewโ–Œ

lobehub/lobe-chat ยท updated Apr 8, 2026

$npx skills add https://github.com/lobehub/lobe-chat --skill project-overview
summary

Open-source, modern-design AI Agent Workspace: LobeHub (previously LobeChat).

skill.md

LobeHub Project Overview

Project Description

Open-source, modern-design AI Agent Workspace: LobeHub (previously LobeChat).

Supported platforms:

  • Web desktop/mobile
  • Desktop (Electron)
  • Mobile app (React Native) - coming soon

Logo emoji: ๐Ÿคฏ

Complete Tech Stack

Category Technology
Framework Next.js 16 + React 19
Routing SPA inside Next.js with react-router-dom
Language TypeScript
UI Components @lobehub/ui, antd
CSS-in-JS antd-style
Icons lucide-react, @ant-design/icons
i18n react-i18next
State zustand
URL Params nuqs
Data Fetching SWR
React Hooks aHooks
Date/Time dayjs
Utilities es-toolkit
API TRPC (type-safe)
Database Neon PostgreSQL + Drizzle ORM
Testing Vitest

Complete Project Structure

Monorepo using @lobechat/ namespace for workspace packages.

lobehub/
โ”œโ”€โ”€ apps/
โ”‚   โ””โ”€โ”€ desktop/                 # Electron desktop app
โ”œโ”€โ”€ docs/
โ”‚   โ”œโ”€โ”€ changelog/
โ”‚   โ”œโ”€โ”€ development/
โ”‚   โ”œโ”€โ”€ self-hosting/
โ”‚   โ””โ”€โ”€ usage/
โ”œโ”€โ”€ locales/
โ”‚   โ”œโ”€โ”€ en-US/
โ”‚   โ””โ”€โ”€ zh-CN/
โ”œโ”€โ”€ packages/
โ”‚   โ”œโ”€โ”€ agent-runtime/           # Agent runtime
โ”‚   โ”œโ”€โ”€ builtin-agents/
โ”‚   โ”œโ”€โ”€ builtin-tool-*/          # Builtin tool packages
โ”‚   โ”œโ”€โ”€ business/                # Cloud-only business logic
โ”‚   โ”‚   โ”œโ”€โ”€ config/
โ”‚   โ”‚   โ”œโ”€โ”€ const/
โ”‚   โ”‚   โ””โ”€โ”€ model-runtime/
โ”‚   โ”œโ”€โ”€ config/
โ”‚   โ”œโ”€โ”€ const/
โ”‚   โ”œโ”€โ”€ context-engine/
โ”‚   โ”œโ”€โ”€ conversation-flow/
โ”‚   โ”œโ”€โ”€ database/
โ”‚   โ”‚   โ””โ”€โ”€ src/
โ”‚   โ”‚       โ”œโ”€โ”€ models/
โ”‚   โ”‚       โ”œโ”€โ”€ schemas/
โ”‚   โ”‚       โ””โ”€โ”€ repositories/
โ”‚   โ”œโ”€โ”€ desktop-bridge/
โ”‚   โ”œโ”€โ”€ edge-config/
โ”‚   โ”œโ”€โ”€ editor-runtime/
โ”‚   โ”œโ”€โ”€ electron-client-ipc/
โ”‚   โ”œโ”€โ”€ electron-server-ipc/
โ”‚   โ”œโ”€โ”€ fetch-sse/
โ”‚   โ”œโ”€โ”€ file-loaders/
โ”‚   โ”œโ”€โ”€ memory-user-memory/
โ”‚   โ”œโ”€โ”€ model-bank/
โ”‚   โ”œโ”€โ”€ model-runtime/
โ”‚   โ”‚   โ””โ”€โ”€ src/
โ”‚   โ”‚       โ”œโ”€โ”€ core/
โ”‚   โ”‚       โ””โ”€โ”€ providers/
โ”‚   โ”œโ”€โ”€ observability-otel/
โ”‚   โ”œโ”€โ”€ prompts/
โ”‚   โ”œโ”€โ”€ python-interpreter/
โ”‚   โ”œโ”€โ”€ ssrf-safe-fetch/
โ”‚   โ”œโ”€โ”€ types/
โ”‚   โ”œโ”€โ”€ utils/
โ”‚   โ””โ”€โ”€ web-crawler/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ app/
โ”‚   โ”‚   โ”œโ”€โ”€ (backend)/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ api/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ f/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ market/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ middleware/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ oidc/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ trpc/
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ webapi/
โ”‚   โ”‚   โ”œโ”€โ”€ spa/                  # SPA HTML template service
โ”‚   โ”‚   โ””โ”€โ”€ [variants]/
โ”‚   โ”‚       โ””โ”€โ”€ (auth)/           # Auth pages (SSR required)
โ”‚   โ”œโ”€โ”€ routes/                  # SPA page components (Vite)
โ”‚   โ”‚   โ”œโ”€โ”€ (main)/
โ”‚   โ”‚   โ”œโ”€โ”€ (mobile)/
โ”‚   โ”‚   โ”œโ”€โ”€ (desktop)/
โ”‚   โ”‚   โ”œโ”€โ”€ onboarding/
โ”‚   โ”‚   โ””โ”€โ”€ share/
โ”‚   โ”œโ”€โ”€ spa/                     # SPA entry points and router config
โ”‚   โ”‚   โ”œโ”€โ”€ entry.web.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ entry.mobile.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ entry.desktop.tsx
โ”‚   โ”‚   โ””โ”€โ”€ router/
โ”‚   โ”œโ”€โ”€ business/                # Cloud-only (client/server)
โ”‚   โ”‚   โ”œโ”€โ”€ client/
โ”‚   โ”‚   โ”œโ”€โ”€ locales/
โ”‚   โ”‚   โ””โ”€โ”€ server/
โ”‚   โ”œโ”€โ”€ components/
โ”‚   โ”œโ”€โ”€ config/
โ”‚   โ”œโ”€โ”€ const/
โ”‚   โ”œโ”€โ”€ envs/
โ”‚   โ”œโ”€โ”€ features/
โ”‚   โ”œโ”€โ”€ helpers/
โ”‚   โ”œโ”€โ”€ hooks/
โ”‚   โ”œโ”€โ”€ layout/
โ”‚   โ”‚   โ”œโ”€โ”€ AuthProvider/
โ”‚   โ”‚   โ””โ”€โ”€ GlobalProvider/
โ”‚   โ”œโ”€โ”€ libs/
โ”‚   โ”‚   โ”œโ”€โ”€ better-auth/
โ”‚   โ”‚   โ”œโ”€โ”€ oidc-provider/
โ”‚   โ”‚   โ””โ”€โ”€ trpc/
โ”‚   โ”œโ”€โ”€ locales/
โ”‚   โ”‚   โ””โ”€โ”€ default/
โ”‚   โ”œโ”€โ”€ server/
โ”‚   โ”‚   โ”œโ”€โ”€ featureFlags/
โ”‚   โ”‚   โ”œโ”€โ”€ globalConfig/
โ”‚   โ”‚   โ”œโ”€โ”€ modules/
โ”‚   โ”‚   โ”œโ”€โ”€ routers/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ async/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ lambda/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ mobile/
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ tools/
โ”‚   โ”‚   โ””โ”€โ”€ services/
โ”‚   โ”œโ”€โ”€ services/
โ”‚   โ”œโ”€โ”€ store/
โ”‚   โ”‚   โ”œโ”€โ”€ agent/
โ”‚   โ”‚   โ”œโ”€โ”€ chat/
โ”‚   โ”‚   โ””โ”€โ”€ user/
โ”‚   โ”œโ”€โ”€ styles/
โ”‚   โ”œโ”€โ”€ tools/
โ”‚   โ”œโ”€โ”€ types/
โ”‚   โ””โ”€โ”€ utils/
โ””โ”€โ”€ e2e/                         # E2E tests (Cucumber + Playwright)

Architecture Map

Layer Location
UI Components src/components, src/features
SPA Pages src/routes/
React Router src/spa/router/
Global Providers src/layout
Zustand Stores src/store
Client Services src/services/
REST API src/app/(backend)/webapi
tRPC Routers src/server/routers/{async|lambda|mobile|tools}
Server Services src/server/services (can access DB)
Server Modules src/server/modules (no DB access)
Feature Flags src/server/featureFlags
Global Config src/server/globalConfig
DB Schema packages/database/src/schemas
DB Model packages/database/src/models
DB Repository packages/database/src/repositories
Third-party src/libs (analytics, oidc, etc.)
Builtin Tools src/tools, packages/builtin-tool-*
Cloud-only src/business/*, packages/business/*

Data Flow

React UI โ†’ Store Actions โ†’ Client Service โ†’ TRPC Lambda โ†’ Server Services โ†’ DB Model โ†’ PostgreSQL