本地优先 · AI 驱动 · 现代知识库
构建属于你的第二大脑,支持 Agent 自动化的 Markdown 笔记应用。
Language: 简体中文 · English · 日本語
🚀 这个项目由 2 人在 2 周内通过 AI 辅助开发完成,包含 44,000+ 行源代码
AI Agent - 深度搜索与笔记总结
知识图谱 - 可视化笔记关联
编辑器 - LaTeX 公式与反向链接
Lumina Note 不仅仅是一个编辑器,它是一个集成了 LLM 能力的知识生产环境。
[[WikiLinks]] 构建网状知识图谱,支持从文件树拖拽创建链接> [!info] 提示块Ctrl+V 粘贴,自动保存到笔记库基于 Canvas 的高性能可视化引擎,直观展示笔记间的关联关系。
| 功能 | 描述 |
|---|---|
| 文件夹层级 | 文件夹作为节点显示(带刺圆球样式),父子关系带箭头连线 |
| 颜色分区 | 按文件夹自动分配颜色,子节点继承父文件夹颜色 |
| 双向链接 | [[WikiLinks]] 自动解析为节点间的连线 |
| 右键孤立查看 | 右键点击任意节点,可在新标签页中查看该节点及其直接关联的节点 |
| 物理引擎 | 可调节的斥力、弹力、向心力参数,支持拖拽节点和画布缩放 |
| 模块 | 功能描述 |
|---|---|
| Agent 模式 | 能够理解意图,自动执行读取、编辑、搜索笔记等复杂任务链。 |
| AI 悬浮球 | 随时唤起的助手,支持拖拽,不打断当前心流。 |
| 语音输入 | 基于 Web Speech API 的语音转文字,支持流式显示、自动停止、录音动画。 |
| Diff 预览 | AI 修改内容前提供 Diff 对比视图,由你决定是否 Apply。 |
| RAG 语义搜索 | 内置 SQLite 向量库,基于语义理解检索你的本地知识库。 |
边看视频边做笔记,通过弹幕同步实现精确时间戳记录。
| 功能 | 描述 |
|---|---|
| 内嵌播放 | 在应用内直接播放 B 站视频,支持登录和发弹幕 |
| 弹幕同步 | 发送带前缀的弹幕(如 #笔记内容),一键同步为带时间戳的笔记 |
| 时间跳转 | 点击笔记时间戳,视频自动跳转到对应位置(无需刷新) |
| 自动保存 | 笔记自动保存为 Markdown 文件,下次打开同一视频自动加载 |
为学术工作流优化的 PDF 阅读和标注系统。
| 功能 | 描述 |
|---|---|
| 交互式元素识别 | 自动识别文本、图片、表格等元素,支持悬浮高亮和点击选中 |
| PDF 批注系统 | 选中文本添加高亮/下划线,支持 5 种颜色和笔记 |
| 批注笔记同步 | 批注自动保存为 Markdown 文件,与 PDF 同目录 |
| 双向跳转 | 点击笔记中的链接跳转到 PDF 对应位置,Ctrl+Click 分栏打开 |
| 缩略图与目录 | 侧边栏显示页面缩略图和文档大纲,快速跳转 |
| 全文搜索 | 支持在 PDF 中搜索关键词,实时高亮匹配结果 |
| 与 AI 对话 | 将选中的 PDF 内容发送给 AI,进行摘要、翻译或解释 |
| 功能 | 描述 |
|---|---|
| 15 套官方主题 | 默认/海洋/森林/薰衣草/玫瑰/落日/薄荷/靛青/拿铁/极光/极简等 |
| 明暗双模式 | 每套主题都有明亮和暗黑两种模式(共 30 种外观) |
| Markdown 颜色 | 主题影响标题/链接/代码块/引用等 17 种元素 |
| 设置面板 | 左下角齿轮图标,统一管理主题、AI、RAG 等设置 |
支持接入主流 LLM Provider,自由切换模型:
Anthropic·OpenAI·Gemini·DeepSeek·Moonshot·Groq·OpenRouter·Ollama (Local)
本项目采用 Rust + React 的前后端分离架构,通过 Tauri v2 进行原生能力桥接。
在此之前,请确保你的环境已安装:
克隆仓库
git clone [https://github.com/blueberrycongee/Lumina-Note.git](https://github.com/blueberrycongee/Lumina-Note.git)
cd Lumina-Note
安装依赖
npm install
# 或者 pnpm install
开发模式运行
npm run tauri dev
构建生产包
npm run tauri build
如果需要使用 PDF 智能识别功能(交互式元素选择),需要启动后端解析服务:
安装 Python 依赖(首次使用)
cd scripts
pip install flask flask-cors pymupdf
启动 PDF 解析服务
python simple_pdf_server.py
服务将在 http://localhost:8080 启动。
在应用中使用
进阶选项:如需更精确的版面分析(表格、公式识别),可使用 PP-Structure:
cd scripts pip install -r requirements-pp-structure.txt python pp_structure_server.py
选择工作区(Vault):
MyNotes 或 Vault界面布局:
+ 按钮或使用 Ctrl+N[[ 触发笔记链接,自动补全已有笔记#标签名 为笔记添加标签速记_2025-12-02_06-00.md(含时间戳)[[WikiLinks]] 自动解析为节点间连线配置 API Key:
使用入口(3 个)——都支持 Chat / Agent 模式:
RAG 语义搜索:
文件名.annotations.md[📍 跳转] 链接:在主视图打开 PDF# 前缀的弹幕,自动同步为带时间戳的笔记.db.json 文件定义列结构db: 数据库ID[[WikiLink]]lumina-note/ ├── src/ │ ├── agent/ # AI Agent 核心逻辑 (Core, Tools, Prompts) │ ├── components/ # React UI 组件 │ │ ├── layout/ # 组件布局 │ │ │ ├── MainAIChatShell.tsx │ │ │ ├── RightPanel.tsx │ │ │ ├── Sidebar.tsx │ │ │ ├── SplitEditor.tsx │ │ │ ├── TitleBar.tsx │ │ │ ├── TabBar.tsx │ │ │ └── Ribbon.tsx │ │ ├── chat/ # 聊天组件 │ │ │ ├── AgentPanel.tsx │ │ │ ├── ChatPanel.tsx │ │ │ ├── ChatInput.tsx │ │ │ └── ConversationList.tsx │ │ ├── ai/ # AI 组件 │ │ │ ├── AIFloatingBall.tsx │ │ │ ├── AIFloatingPanel.tsx │ │ │ ├── AISettingsModal.tsx │ │ │ ├── VoiceInputBall.tsx │ │ │ └── useSpeechToText.ts │ │ ├── search/ # 搜索组件 │ │ │ ├── GlobalSearch.tsx │ │ │ └── CommandPalette.tsx │ │ ├── toolbar/ # 工具栏组件 │ │ │ ├── SelectionToolbar.tsx │ │ │ ├── ResizeHandle.tsx │ │ │ └── ContextMenu.tsx │ │ ├── effects/ # 效果组件 │ │ │ ├── LiquidGlassEffect.tsx │ │ │ ├── DiffView.tsx │ │ │ └── KnowledgeGraph.tsx │ ├── editor/ # CodeMirror 编辑器配置与扩展 │ ├── services/ # LLM 客户端与 RAG 服务层 │ │ └── pdf/ # PDF 解析服务 │ ├── hooks/ # 自定义 React Hooks │ └── stores/ # Zustand 状态管理 ├── src-tauri/ │ └── src/ │ ├── commands/ # 暴露给前端的 Rust 命令 │ ├── fs/ # 文件系统操作封装 │ └── vector_db/ # SQLite 向量存储逻辑 ├── scripts/ # Python 后端服务 │ ├── simple_pdf_server.py # 简化版 PDF 解析(推荐) │ └── pp_structure_server.py # PP-Structure 深度学习版 └── package.json
本项目基于 Apache License 2.0 开源。