前言
最近和朋友花了10天时间,全程 AI 辅助开发,写了一个笔记软件:Lumina Note。
为什么要自己造轮子?因为现有笔记软件的 AI 功能太弱了——就是个聊天框,问完还得手动复制粘贴。我想要的是 AI 能真正"动手"帮我整理笔记。
技术栈
- 前端:React + TypeScript + TailwindCSS
- 桌面框架:Tauri (Rust)
- 编辑器:CodeMirror 6
- 向量数据库:SQLite + 自研向量存储
- AI:支持 OpenAI / Claude / Gemini / DeepSeek / Ollama
核心功能
1. AI Agent(不只是聊天)
这是最核心的功能。Agent 不是简单的问答,而是能执行操作:
read_note- 读取笔记内容edit_note- 编辑笔记create_note- 创建新笔记search_notes- 语义搜索move_note/delete_note- 文件操作create_flashcard- 创建闪卡query_database/add_database_row- 数据库查询与修改
支持两种工具调用方式:
- XML 格式:兼容性好,适合所有模型
- Function Calling:原生支持(OpenAI / Claude / Gemini)
支持意图路由(自动识别用户意图并分发到对应处理器)、多轮对话和自动任务规划。
2. RAG 语义搜索
- Markdown 语义分块
- 支持 OpenAI / Ollama / SiliconFlow Embedding
- SiliconFlow Reranker 重排序
- SQLite 向量存储(Rust 实现)
3. 知识图谱
双向链接 + D3.js 可视化,支持:
- 全局图谱 / 局部图谱
- 节点拖拽、缩放
- 点击跳转
4. Markdown 编辑器
基于 CodeMirror 6:
- LaTeX 数学公式(KaTeX)
- 代码高亮
- 实时预览
AI 辅助开发体验
全程用 gemini + Claude 辅助开发,几点感受:
- 效率确实高:重复性代码、样板代码基本不用自己写
- 但要会审代码:AI 写的代码经常有隐藏 bug,不审直接用会踩坑
- 架构还是要自己想:AI 擅长实现,不擅长设计
- Prompt 工程很重要:描述清楚需求,效果差很多
项目地址
GitHub:github.com/blueberryco…
完全开源。欢迎 Star ⭐ 和 PR!
截图
如果对 AI Agent 的实现、RAG 架构感兴趣,评论区聊~