AI 辅助阅读工具——陪你读,而不是替你读。
Obsidian Reader 是一个 Obsidian 插件,帮助你在阅读长文时压缩低价值段落和展开高价值要点。它不替你读完全文,而是让你把时间花在最值得深读的内容上。
- 在 Obsidian 中阅读长文、论文、读书笔记的用户
- 希望快速跳过铺垫和重复论述,聚焦核心观点的人
- 对某个要点想深入理解,需要 AI 帮忙展开逻辑的人
| 功能 | 说明 |
|---|---|
| 压缩选中文本 | 选中一段文字 → 执行命令 → AI 压缩为核心要点 |
| 压缩当前段落 | 不选中文本,光标在段落内 → 自动识别段落并压缩 |
| 展开选中文本 | 选中一段文字 → 执行命令 → AI 围绕已有观点深入阐释 |
| 展开当前段落 | 不选中文本,光标在段落内 → 自动识别段落并展开 |
| 选中文本提问 | 选中一段文字或光标置于段落内 → 输入问题 → AI 基于原文回答 |
| 结构地图(当前标题) | 光标在标题范围内 → 分析该标题下的子章节,标记深读/略读 |
| 结构地图(整篇文档) | 分析整篇 Markdown 文档章节,生成核心意思和重点推荐 |
| 结构化读书笔记 | 在结构地图中勾选章节和笔记档位 → 生成带来源追踪的结构化读书笔记 |
| 复制结果 | 弹窗内一键复制压缩/展开结果到剪贴板 |
| 写入正文 | 弹窗内一键将结果以 callout 形式插入原文后方 |
| 中转站兼容 | 支持 Anthropic 官方和兼容中转站(authToken 模式) |
- 全文摘要
- 流式输出(需等完整结果)
- 代码块/列表/引用块的特殊处理(会被拦截提示)
- OpenAI 兼容接口
- 移动端(未验证)
- 打开 Releases。
- 下载最新的
obsidian-reader-*.zip。 - 解压到你的 Obsidian vault:
<你的vault>/.obsidian/plugins/obsidian-reader/ ├── main.js ├── manifest.json └── styles.css - 打开 Obsidian → 设置 → 第三方插件 → 关闭安全模式 → 启用 Obsidian Reader。
- 在项目根目录执行:
npm install npm run build
- 将
main.js、manifest.json和styles.css复制到你的 Obsidian vault 中:<你的vault>/.obsidian/plugins/obsidian-reader/ ├── main.js ├── manifest.json └── styles.css - 打开 Obsidian → 设置 → 第三方插件 → 关闭安全模式 → 启用 Obsidian Reader。
设置 → Obsidian Reader,填写以下内容:
| 设置项 | 说明 |
|---|---|
| Base URL | API 端点,默认 https://api.anthropic.com。使用中转站时填中转站地址 |
| Auth Mode | API Key(Anthropic 官方)或 Auth Token(中转站) |
| Secret | 你的 API Key 或 Auth Token |
| Model | 模型名称,默认 claude-sonnet-4-6,可手动修改 |
| Default Reading Note Mode | 读书笔记默认档位:轻量、标准或深度 |
- 不要把 Obsidian 插件目录里的
data.json上传到 GitHub;它可能包含你的 API Key、Auth Token 或中转站配置。 - 仓库中的
.gitignore已默认忽略data.json、.env*、.obsidian/和本地依赖目录。 - 如果不希望密钥写入 Obsidian 的插件数据文件,可以在设置中关闭 Remember Secret。关闭后密钥只保存在当前 Obsidian 会话内,重启后需要重新输入。
Base URL可能暴露你使用的中转站地址;公开仓库中请只保留默认值或示例值。
- 打开一个 Markdown 文件
- 方式一:选中一段文本
- 方式二:不选中,把光标放在段落内
Ctrl+P→ 搜索"Reader: 压缩" → 回车- 等待"正在压缩..."提示消失,查看弹窗结果
操作方式与压缩完全相同,命令名为"Reader: 展开"。
选中文本或把光标放在段落内,执行命令"Reader: 提问",输入问题后,AI 会基于原文回答。原文信息不足时会提示信息不足。
- 当前标题:把光标放在某个标题或其内容范围内,执行"Reader: 结构地图(当前标题)"
- 整篇文档:打开 Markdown 文件后执行"Reader: 结构地图(整篇文档)"
结构地图会为每个章节生成一句核心意思,并标记"深读"或"略读"。弹窗中可以继续对单个章节执行压缩、展开或提问。写入正文时会包含分析范围、生成时间、章节数以及深读/略读统计,方便之后回溯。
生成结构地图后,在弹窗左侧勾选需要沉淀的章节。默认会勾选"深读"章节,你也可以全选、清空、只选深读、只选略读、选到上限,或直接点击章节行快速切换勾选。弹窗会显示当前已选章节中的深读/略读数量和大致字数;空选择或超过读书笔记上限时会直接禁用生成按钮,并说明原因。也可以在"建议"列手动调整章节的"深读/略读"状态。
生成前可以选择笔记档位;默认档位可在插件设置中调整:
- 轻量:更短,只保留最关键沉淀
- 标准:默认档位,覆盖固定结构
- 深度:展开更多论证链、旧知连接和追问
点击"生成读书笔记"后,结果会先在弹窗中预览,包含:
- 核心观点
- 值得记住的点
- 可连接旧知
- 待追问问题
- 来源章节
预览弹窗中可以复制 Markdown,也可以写入当前文档。默认"写入正文"会使用 Obsidian callout;读书笔记还可以选择"写入为标题块",更适合后续整理。写入内容会附带笔记档位和来源章节,便于回溯,不会覆盖原文。若模型返回的 Markdown 缺少固定标题结构,插件会基于结构化字段自动补齐为标准读书笔记格式。已选章节总长度超过 30000 字时会提示分批生成。
弹窗底部点击"复制结果"或"复制结构地图",结果进入剪贴板。
弹窗底部点击"写入正文",结果以 callout 格式插入原文后方:
> [!summary] 压缩结果
> 压缩后的内容...原文不会被修改或替换。写入后可用 Ctrl+Z 撤销。
读书笔记预览弹窗还提供"写入为标题块",会直接追加 Markdown 标题块,适合把笔记沉淀成正文的一部分。
Q: 命令执行后没有反应? 检查设置中 Secret 是否已填写,以及网络是否可用。
Q: 提示"暂不支持处理代码块"? 当前版本不处理代码块,请选中纯文本内容。
Q: 提示"文本过长"? 当前限制为 5000 字,请缩小选中范围。
Q: 读书笔记提示"已选章节过长"? 读书笔记当前限制已选章节原文总长度为 30000 字,请减少勾选章节,分批生成。
Q: 压缩结果和原文一样长? 模型认为该段落没有压缩空间,会原样返回。
Q: 使用中转站时报错? 确认 Auth Mode 选择了"Auth Token",Base URL 填写正确,且中转站支持 Anthropic Messages API 格式(不支持 OpenAI 兼容接口)。
npm install
npm run typecheck
npm test
npm run build主要目录:
src/core/ai/:AI 调用、解析和兜底逻辑src/core/parser/:段落和章节识别src/commands/:Obsidian 命令编排src/ui/:弹窗和交互prompts/:所有模型提示词tests/:单元测试和命令/UI 回归测试
创建形如 v0.0.1 的 tag 后,GitHub Actions 会自动构建并生成 release zip,包含:
main.jsmanifest.jsonstyles.css
暂未选择开源许可证。公开使用、二次分发或商用前请先确认许可证策略。