从源码运行前必须先克隆 opencode 到 thirdparty/opencode 并执行 npm run opencode:bundle,否则无法解析 virtual:opencode-server;构建 opencode 服务包需要额外安装 Bun;使用 AI 功能需在设置中自行配置模型提供商和 API Key。
Lumina-Note
blueberrycongeeApache-2.0活跃维护一款本地优先的 Markdown 笔记桌面应用,支持实时预览、双向链接和知识图谱,还内置 AI 助手帮你整理和串联笔记。
Lumina Note - A modern Markdown note-taking app with live preview, bidirectional links, and AI assistant
git clone https://github.com/blueberrycongee/Lumina-Note.git
cd Lumina-Note
npm install
git clone https://github.com/anomalyco/opencode thirdparty/opencode
(cd thirdparty/opencode && bun install)
npm run opencode:bundle
npm run devREADME 未说明硬件要求;作为 Electron 桌面应用,提供 Windows、macOS(Apple Silicon/Intel)、Linux x64 安装包。
本地 Markdown 笔记应用,内置可跨整个笔记库读写整理的 AI 助手
一款本地优先的 Markdown 笔记桌面应用,支持实时预览、双向链接和知识图谱,还内置 AI 助手帮你整理和串联笔记。
核心能力
- 用 CodeMirror 实现 Markdown 实时预览与阅读模式
- 支持 WikiLinks、反向链接与知识图谱视图
- 内置基于 opencode SDK 的 agent,可跨库读写整理笔记
- 可接入 OpenAI、Claude、Gemini、Ollama 等多种模型
- 支持 PDF、批注、图片与闪卡等知识管理界面
容易踩的坑
- v1.4.11最新正式版2026-06-01 · 2026-06-01 11:35 UTC
本次补丁版本修复 PDF 加载失败,并将 Cmd+P / Cmd+K 两套命令面板合并为单一入口,附带欢迎页 UI 收敛与若干内部 CI 改进。
修复
- PDF 加载失败修复:
pdfjs-dist锁到与react-pdf一致的5.4.296,避免 pnpm 提升到5.7.x后 worker 与主线程版本错位(The API version "5.4.296" does not match the Worker version "5.7.284"),任意 PDF 打开即报错的回归。 - 命令面板 hover 可见性:合并后的命令面板在图片皮肤下保持稳定的 hover 背景(沿用
Row原语的hover:bg-foreground/5),避免低对比度主题下无视觉反馈。
改进
- 命令面板合并为单一入口:移除独立的 Cmd+K 命令面板,仅保留 Cmd+P;i18n 命名空间从
commandPalette统一为commandMenu,四个 locale 同步对齐。 - 欢迎页 UI 收敛:移除冗余的引导元素,减少初次启动的视觉噪声。
内部
- CI 触发与测试报告:补充手动 / 定时触发的 CI 工作流,并上传测试报告为 artifact,便于回归追踪。
- CI workflow 默认值加固:收紧权限与默认分支路径,避免历史默认值在 fork / PR 上的副作用。
- PDF 加载失败修复:
- v1.4.102026-05-30 · 2026-05-30 16:01 UTC
查看更新说明
本次补丁版本修复 GitHub Release 资产命名和更新 feed 不一致导致的 macOS 应用内更新 404。
修复
- macOS 更新下载 404 修复:固定 electron-builder 的发布产物命名,避免 GitHub 上传时改写空格导致
latest-mac.yml指向不存在的文件。
内部
- Release 资产校验:发布上传前校验
latest*.yml中引用的资产都存在,并限制上传文件名为 GitHub-safe 格式,避免同类问题再次进入正式 Release。
- macOS 更新下载 404 修复:固定 electron-builder 的发布产物命名,避免 GitHub 上传时改写空格导致
- v1.4.92026-05-30 · 2026-05-30 09:07 UTC
查看更新说明
本次补丁版本修复保存冲突误报,并收敛生产环境日志输出,降低用户正常使用时的噪声。
改进
- 编辑器工具整合到顶部 TabBar:将编辑模式切换和分屏入口移到 macOS 顶部 TabBar,减少编辑区内的重复顶部工具栏。
- 生产环境日志收敛:启动路径、opencode server 信息、preload shim 和 SSE 连接状态等调试日志仅在开发环境输出,生产环境默认保持安静。
修复
- 保存冲突误报修复:保留文件
mtimeMs的小数毫秒精度,避免同一个文件在正常保存时被误判为磁盘已修改。
内部
- 外部文件变更处理方案补充:记录后续外部文件变更同步与保存冲突保护的实现目标和验收标准。
- v1.4.82026-05-29 · 2026-05-29 22:04 UTC
查看更新说明
本次补丁版本聚焦左侧文件树和 macOS 顶部栏的视觉一致性,减少交互中的突兀跳变。
改进
- 文件树展开/收起动效优化:文件夹展开和收起时新增克制的行级动效,同时避免虚拟列表定位动画引起的抖动。
- 文件树 hover 状态优化:文件树 hover 背景改为共享高亮跟随移动,减少从一个文件切换到另一个文件时的割裂感。
- 文件树滚动条布局稳定:滚动条出现或隐藏时预留稳定 gutter,避免选中态和 hover 高亮宽度变化。
- macOS 顶部栏分割线统一:左侧面板顶部工具栏与编辑器 TabBar 使用一致的底部分割线绘制方式。
- v1.4.72026-05-29 · 2026-05-29 21:43 UTC
查看更新说明
本次补丁版本修复 1.4.6 外部文件变更保护引入的保存冲突误报,并恢复 Electron 窗口在存在未保存内容时的可关闭性。
修复
- 自保存事件不再误报保存冲突:Lumina Note 自己保存文件后,文件监听器延迟到达的
modified事件不再被误判为外部修改,避免继续编辑时弹出 Save conflict。 - 未保存确认后可以关闭窗口:选择 “Close Without Saving” 后主进程会正确关闭 Electron 窗口,不再被 renderer 的
beforeunload二次拦截。 - 未保存文件数量不再重复计算:关闭确认弹窗中的未保存文件数量按实际文件去重,避免当前编辑文件被重复计数。
- 自保存事件不再误报保存冲突:Lumina Note 自己保存文件后,文件监听器延迟到达的
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
Lumina Note
Human-editable notes with an agent that can work across your vault
Lumina Note starts as a fast, local Markdown workspace that stays comfortable for people to read and edit directly. On top of that, it embeds an agent powered by the opencode SDK, giving AI the ability to understand and operate across the whole note vault with your permission.
Languages: English (canonical) · 简体中文 · 繁體中文 · 日本語 · 한국어 · Español · Français · Deutsch · Italiano · Português (Brasil) · Русский
Why Lumina Note
Lumina is built around a simple idea: notes should remain human-owned and human-editable, while AI should be able to help with real work inside the same workspace.
- Human-first editing: your vault is plain Markdown on disk. You can open, read, edit, move, and back it up without depending on Lumina or any model provider.
- Agent-native assistance: Lumina embeds an opencode-powered agent that can read, write, reorganize, summarize, connect, and research notes across the vault when you ask it to.
- Knowledge structure that stays visible: WikiLinks, backlinks, graph views, PDFs, annotations, images, and flashcards are normal workspace surfaces, not hidden AI-only state.
- Flexible AI routing: bring your own provider, use local models through Ollama, connect an OpenAI-compatible endpoint, or use Lumina Cloud if you have a license.
Screenshots
What It Does
- Edit notes directly in Markdown with live preview, reading mode, WikiLinks, backlinks, and graph views.
- Ask the built-in agent to work on the vault: draft pages, reorganize folders, summarize PDFs, connect related notes, generate flashcards, or clean up messy knowledge.
- Keep control of model routing with OpenAI, Anthropic Claude, Google Gemini, DeepSeek, Moonshot Kimi, Zhipu GLM, MiMo, Groq, OpenRouter, Ollama, OpenAI-compatible endpoints, or optional Lumina Cloud.
- Build other uses on the same foundation through agent skills, custom commands, and the developer-preview plugin system when you need to extend the app.
Download
Get the latest build from Releases.
| Platform | Package |
|---|---|
| Windows | .exe NSIS installer |
| macOS Apple Silicon / Intel | .dmg / .zip |
| Linux x64 | .AppImage |
Quick Start
- Install Lumina Note from Releases.
- Choose a local folder as your vault.
- Open Settings -> AI and configure a model provider. Use your own API key, Ollama, an OpenAI-compatible endpoint, or a Lumina Cloud license if you have one.
- Create a note, link it with
[[WikiLinks]], and open the graph. - Open the AI panel and ask the agent to help with a note, a folder, or a specific writing task.
Build from Source
Requirements:
- Node.js 22+
- npm
- Bun, only for building the embedded opencode server bundle
Fresh checkout setup:
git clone https://github.com/blueberrycongee/Lumina-Note.git
cd Lumina-Note
npm install
# Required before npm run dev can resolve virtual:opencode-server.
git clone https://github.com/anomalyco/opencode thirdparty/opencode
(cd thirdparty/opencode && bun install)
npm run opencode:bundle
npm run dev
Common commands:
npm run typecheck
npm run test:run
npm run build
npm run stage:native
npm run dist:mac
npm run dist:win
npm run dist:linux
For more detail on the agent runtime setup, see docs/agent-runtime-setup.md.
For Developers
Lumina is an Electron 41 desktop app with a React 18 / TypeScript renderer and a CodeMirror-based Markdown editor. The agent layer is built on an embedded opencode server and the opencode SDK, with Lumina mapping app settings, vault access, and permission flow into that runtime.
See docs/agent-runtime-setup.md for the opencode setup, docs/plugin-ecosystem.md for plugin work, and mobile/README.md for the native iOS / Android companions.
Documentation
- User guide:
docs/user-flow.md - 简体中文用户指南:
docs/user-flow.zh-CN.md - Agent runtime setup:
docs/agent-runtime-setup.md - Self-hosted relay:
docs/self-host.md - Plugin ecosystem:
docs/plugin-ecosystem.md - Appearance plugin guide:
docs/appearance-plugin-guide.md - Mobile apps:
mobile/README.md
Open Source Components
- Editor core: codemirror-live-markdown
- Agent runtime foundation: opencode