Repository navigation
Releases
Paperico 1.3.0
Paperico v1.3.0
发布日期:2026-10-21。App build 13。基线:1.2.0(App build 12)。需要 Apple Silicon Mac 和 macOS 15 或更高版本。
本版统一论文库、方法索引、阅读器、设置及弹窗的视觉规格,改善窄窗口排版、文字可读性与键盘操作体验。
视觉与交互
- 统一工具栏图标、按钮尺寸、弹窗标题、表单、间距和错误颜色;主操作按钮根据强调色选择对比度更高的文字颜色。
- 论文库与方法索引的加载占位跟随实际网格排列;方法卡补齐悬停反馈,排序按钮和面板层次与论文库保持一致。
- 扩大窄窗口中的论文信息与对话抽屉,避免内容被过度压缩;元数据、Zotero 导入和引用来源弹窗根据窗口宽度调整,长标题与正文可以滚动查看。
- 提升分组计数、阅读错误提示与附加证据的可读性,扩大移除证据按钮的点击区域;首页正确显示论文失败状态。
- 恢复导航和自绘控件的键盘焦点,补充阅读模式、进度和缩放按钮的辅助功能信息;按钮按压及阅读进度动画遵循“减少动态效果”设置。
修复
- AI 模型设置页的论文库引用说明、工具调用状态和输出预算统一纳入玻璃说明框,保持一致的字号、间距与自适应换行。
- macOS 15 回退材质保留控件强调色;开启“减少透明度”时,玻璃表面使用不透明主题背景。
- 外观设置说明与实际行为一致:主题、强调色和正文字号保存后生效,透明度即时生效。
安装与升级
- 下载
Paperico-1.3.0.dmg,将 Paperico 拖入“应用程序”并替换旧版本;附带.sha256校验文件。 - 从 1.2.0 升级无需迁移论文库;本版不修改索引 schema、论文、笔记、对话或模型配置格式。
- DMG 使用 ad-hoc 签名,保留 App Sandbox 及网络权限;未使用 Developer ID 签名,未经过 Apple 公证。
验证
- 核心与 MCP:243 项,240 项通过、3 项真实语料集成测试按配置跳过,0 失败。
- 开发脚本:9 项,8 项通过、1 项已退役后端快照检查跳过,0 失败。
- Markdown 渲染:220 / 330 / 480 pt 三种面板宽度,423 个流式快照全部通过。
macOS 15 回退材质及系统“减少透明度”的实机视觉验收尚未完成;本版不包含新的真实模型或 MinerU 服务验收。
Paperico 1.2.0
Paperico v1.2.0
发布日期:2026-10-08。App build 12。基线:1.1.0(App build 11)。需要 Apple Silicon Mac 和 macOS 15 或更高版本。
1.2.0 的主线是跨论文问答:你的整个论文库成为对话上下文——模型可以按需检索、读取库内其他论文来回答宽泛问题,并给出可点击跳回原文的证据来源。同时补齐元数据工作流(旧论文回填、手改保护、Zotero 导入)并把最低系统版本降到 macOS 15。
新增
- 可选论文库问答(Library-aware Chat):默认关闭,在设置中开启后,对话不再局限于当前论文。
- 支持工具调用的模型走 agent 路径:只读工具集(
search_library/get_paper/search_methods等)按需检索与读取库内论文,有界执行——默认最多 3 轮工具调用、总计 8 次,达到上限后强制基于已收集证据收束回答。工具走进程内调用,不经 MCP loopback,因此不要求开启 MCP、也不暴露 MCP token;工具不改变阅读状态、不触发解析管线、不访问外部网络。 - 不支持工具的服务自动走 deterministic fallback:本地关键词检索 Top-K 论文、注入压缩 brief、一次问答生成。能力探测只在设置页「测试连接」时进行,对话中不重复探测。
- 对话 UI 区分论文 / 方法 / 跨论文三类证据来源,显示本轮查阅论文数与库内查询数;来源卡可打开对应论文并返回原会话。
- 支持工具调用的模型走 agent 路径:只读工具集(
- Zotero 导入:支持 Zotero「导出集合 → BibTeX + Export Files」产出的文件夹——
.bib与附件 PDF 按路径/文件名配对,bib 元数据作为权威值预填(记为 manual,自动识别不会覆盖),导入摘要逐条列出已导入 / 无元数据 / 重复跳过 / 未配对。兼容 Zotero 7–10 导出的 bib 变体。 - 旧论文元数据识别:论文库支持对单篇或批量旧论文执行「识别元数据」——从原文识别 DOI / arXiv 并回填作者、年份、期刊;manual 论文跳过并提示原因;网络失败静默降级。
- 元数据编辑:MetaCard 新增标题 / 作者 / 年份 / 期刊 / DOI / arXiv 编辑入口,编辑后记为 manual;MetaCard 同时显示标识符与元数据来源。
- 引用质量验收(发布 harness,opt-in):
PAPERICO_E2E_QUESTIONS激活后对人工题库全量跑问答,输出引用命中率、伪来源数、工具预算等指标,低于阈值直接 FAIL;伪引用 > 0 即 FAIL。
变更
- 最低系统版本降为 macOS 15:部署目标从 26 下调;26 专属的液态玻璃 API 收敛到 GlassKit 统一封装(
GlassGroup/liquidScrollEdge),旧系统自动落到系统材质回退,macOS 26+ 观感不变。部署目标即回归门禁——引入未加门槛的 26 专属 API 会直接编译失败。 - 重新分析保留手动改过的标题(
meta_source = manual的标题不再被 LLM 标题覆盖)。 - 对话系统 prompt 补齐作者、年份、期刊、DOI,与笔记合成端对齐。
- MCP
get_paper对元数据回填后的论文返回 doi / authors / year(随PaperListItem契约带出,新增测试锁定)。
修复
- 修复宽泛问题几乎必现的「已停止生成」空回答:发送 / 停止双态按钮(或 Esc)在流式刚开始的数百毫秒内被二次触发时,会立即取消刚建立的请求。
stopGenerating现带 1 秒武装期,期内重复触发被忽略;真正的停止意图在武装期后照常生效。 - LLM 请求链路补充 debug 级诊断日志(请求发出、响应状态码、收包字节、取消 / 失败原因,子系统
com.paperico.app),诊断客户端取消类问题时不再丢失响应体证据。
开发
- 全量测试 233 项 0 失败(2 项 opt-in 跳过),含 tool-call SSE / agent loop mock 与新增
LibraryAutomationMetadataTests。 - 新增
macos/scripts/e2e/citations.manifest.json(schema 注释 + 样例;PDF 本体因版权不入库,运行时经PAPERICO_E2E_PDF_DIR提供)。
安装与升级
- 数据目录
Application Support/Paperico/结构不变:论文库、PDF、笔记、对话、方法分组全部保留。 - 从 1.1.0 升级无需任何手工操作;索引 schema 无变化。
- 论文库问答默认关闭;开启前请在设置页「测试连接」确认当前模型对工具调用的支持情况。
Paperico 1.1.0
Paperico v1.1.0
发布日期:2026-10-07。App build 11。需要 Apple Silicon Mac 和 macOS 26 或更高版本。
1.1.0 是一个收敛版本:把 1.0.x 留下的多处同一不变量实现收拢到各一处,并补齐唯一明显缺失的能力(论文元数据识别)。不新增阅读器形态,不改渲染管线,不动凭据体系。
新增
- 论文元数据自动识别:解析完成后从原文出版信息中识别 DOI / arXiv ID,命中 DOI 时查询 Crossref、命中 arXiv 时查询其 Atom 接口,自动补全作者、年份、期刊。此前这些字段建库时为空且全仓无写入点,论文卡片与 MetaCard 的对应渲染分支一直是空的。
- 识别失败静默降级,绝不阻塞解析与翻译;查询各有 8 秒硬超时。
- 没有 DOI / arXiv 的论文行为完全不变:不新增等待、不新增错误态。
- 你手改过任意元数据字段后(
meta_source记为manual),自动识别不再覆盖你的值。
- 按 DOI / arXiv 去重:解析完成后从原文识别 DOI / arXiv,在进入模型分析前完成同标识符去重——同一篇论文的预印本与正式版字节不同、SHA-256 不同,此前会被当作两篇论文入库,现在会被识别为重复并指向已有论文。
- MCP
brief资源:外部 Agent 可先读一份压缩上下文(逻辑链 6000 字符预算、方法索引Top-40,§章节标题恒留),需要原文时再读blocks。此前 MCP 端直接返回全量 Block,只有 6 MiB 上限兜底。它与 App 内对话共用同一套压缩实现(不是另写一份)。 - 未引用文件报告:库管理页新增「未引用文件」,列出磁盘上存在但索引里没有对应记录的文件(永久删除中途失败、旧版残留、手工拷入),显示路径、体积与类型。默认只报告不删除;删除需勾选并二次确认,逐项执行、失败可重试。
变更
- 本地 MinerU 解析改为串行(同一时刻只解析一篇)。本地服务就是这台机器上的同一个实例,并发提交两份只会互相拖慢;云端解析与模型调用保持 2 并发不变。批量导入本地论文时总耗时会变长,这是有意的取舍。
- 论文库索引 schema 升到 v2(新增
doi/arxiv_id/meta_source)。升级是单向的:1.1.0 写过的库 1.0.x 打不开,会收到明确的「请升级」提示。- 原因:1.0.x 虽能读懂新字段,但写回时会静默丢弃它们——降级会悄悄丢数据。显式拒绝比静默损坏好。
- 首次打开旧库时会在迁移前生成
library.json.bak-v1-<时间戳>备份并保留;迁移失败则保留原文件,不会进入半迁移状态。 - 迁移逻辑只有一个入口(
LibraryIndexMigrations),新增字段只允许在那里落。
开发者可见
- 新增真实论文 opt-in 解析回归(
PAPERICO_E2E_PDF_DIR)和已分析库副本检查(PAPERICO_E2E_LIBRARY_DIR),env 缺失时 skip,已配置服务的实际失败会让测试失败。macos/scripts/verify_real_pipeline.sh另行验证真实 App 上传与全管线、三篇排队及元数据落盘;需要显式配置 MinerU 和 LLM,使用隔离库,凭据只在内存中保留。真实 PDF 与解析产物不入仓库。 - 新增磁盘契约 fixture 与 MCP 契约快照(
UPDATE_SNAPSHOT=1刷新)。刷新快照必须在提交信息里说明契约为何变化,见CONTRIBUTING.md。
安装与升级
- 数据目录
Application Support/Paperico/结构不变:论文库、PDF、笔记、对话、方法分组全部保留。 - 无需任何手工操作。首次打开 1.0.x 的论文库时会自动迁移,并在同目录留下一份
library.json.bak-v1-<时间戳>。 - 从 1.1.0 降级回 1.0.x 会被明确拒绝。
- 新解析的论文会识别元数据;已完成旧论文的元数据不会在启动时自动回填。
- 若旧版保存的附录没有译文,可以在阅读器选择「重新翻译」生成完整结果。
发布前修复
- 保留首页含 DOI / arXiv 的页眉、页脚出版信息,避免解析器将标识符提前丢弃。
- arXiv 改用 HTTPS;元数据查询拒绝非成功 HTTP 状态,并以总时长限制持续流式响应。
- 保留合法 DOI 内的括号,正确编码 URL 保留字符。
- 同一次库操作内登记标识符与判断重复,防止并发论文互相判重;重复记录不会阻塞已有论文重试。
- 修复符号链接路径(包括 macOS 的
/var→/private/var)导致下载解包后清单路径失效。 - 修复真实回归的空库永久跳过、解析失败被误记为 skip,以及图表/公式译文检查使用错误字段。
- 中英文 README 下载版本与发布说明链接同步为 1.1.0。
- 论文卡片年份按年份显示,修复新元数据使
2026被显示为2,026的格式问题。
验证
swift test --package-path macos:212 个测试,0 失败,3 个 opt-in 默认跳过(202 个核心、10 个 MCP;含索引迁移、元数据五路径、并发判重与重试、总时长超时、编排顺序、brief预算、孤儿报告与误删防线、降级拒绝、时间戳定宽、契约快照)。已验证故意重命名一个
MCP 工具会让快照测试变红。- 完整 App target 编译通过(Debug / Release);8 个脚本测试通过(1 个 opt-in 跳过)。
真实环境验收
- 测试论文通过生产
PapersStore.upload → PaperPipeline导入,观察到本地解析峰值为 1、等待队列峰值为 2;均完成并持久化 DOI、作者、年份和期刊。一次模型段落 ID 错误被拒绝保存,手动继续后复用前五段,仅生成剩余内容,不重新上传或解析。 - 两篇真实 PDF 解析、三篇完成库的 sidecar 指纹与译文检查、外部客户端检查均通过,三项 opt-in 0 跳过。
- Release App 使用隔离真实库确认论文卡片作者/年份与 MetaCard 期刊;原用户库在验收后恢复。
- 外部 Python 进程通过生产 MCP HTTP 服务读取真实库的
brief→blocks,成功追溯 299 个原文块。 - Release DMG 可挂载并启动 App;内部版本为 1.1.0 / 11,ad-hoc 签名与四项 Sandbox/MCP 权限保留,同时提供 SHA-256 校验文件。本包沿用现有分发方式,未做 Developer ID 签名或 Apple 公证。
Paperico 1.0.1
Paperico v1.0.1
发布日期:2026-10-05。App build 10。需要 Apple Silicon Mac 和 macOS 26 或更高版本。
修复与改进
- PDF 阅读区在正文拖选期间隔离窗口背景拖动,避免选择 PDF 内容时带动整个窗口。
- 论文库、方法类别和设置页标题统一为 24;前两页标题略向右缩进,设置页标题缩小。处理任务的重试菜单与打开、停止按钮共用液态玻璃样式。
- 正文范围识别支持 References 之后重新出现的 Methods、Results、附录与扩展图表,保留这些章节及图注的翻译和逻辑链,同时继续排除参考文献、出版信息与 Reporting Summary。
- 长论文按原始节点和文本量分段翻译,完成后再结合全文生成总结与方法索引,减少漏节点、译文错位与输出截断。严格校验稳定编号、原文开头、译文完整性与方法证据。
- 默认输出上限提高为 65,536;按请求内容分配输出预算,移除强制 JSON 格式参数,并检测连续空白和重复方法输出。
- 每个请求只生成一次,失败保留响应,不自动重试。手动继续中断的长文任务可复用已完整校验的分段;完整结果仍可通过「恢复上次返回结果(不调用模型)」在本地恢复。
安装与升级
下载 Paperico-1.0.1.dmg,将 Paperico 拖入 Applications 并替换旧版。
本次提供 ad-hoc 签名,未使用 Developer ID 或 Apple 公证。
原生论文库格式兼容,保留现有 PDF、笔记、对话与方法分组。
新的输出上限默认值适用于新配置;已有配置保留用户设置,可在设置页自行调整。
验证
- 133 项 Swift 回归测试通过,覆盖正文范围、节点与原文校验、分段检查点恢复,以及核心持久化、方法索引和 MCP 集成。
- 开发脚本测试通过;Markdown 渲染检查通过,覆盖 3 种面板宽度的 423 个流式快照。
- 三篇问题文献的全部节点与已保存结果通过完整性校验。
- Release 构建、应用版本与构建号、签名、Sandbox/MCP 权限和 DMG 完整性检查通过。
- PDF 拖选的实机交互未能由自动化工具验证,需实际拖选确认。
Paperico 1.0.0
Paperico v1.0.0
发布日期:2026-10-05。App build 9。需要 Apple Silicon Mac 和 macOS 26 或更高版本。
更新
- 方法索引引入持久分组:全部 8 个预设分组始终可见(包括空分组);支持新建、改名、删除
和把条目拖入其他分组,分组名称不能重复;删除分组会删除其中所有索引条目,并在确认框中
明确说明。分组与条目移动保存在本机论文库,论文原文和解析证据仍然保留。 - 新论文分析接收全部当前方法分组与已有方法清单:模型建议只能使用有效分组;已有条目沿用
其稳定 ID 和用户编辑后的名称、分组,类别相同不会自动合并。手工整理越多的库,新论文的
方法识别越贴合自己的用法。 - 分析边界收紧:论文作者/出版信息与参考文献不进入翻译与逻辑链请求(原始块仍保留);
保守识别无标准标题的文献段落;正文缺块、乱序或缺译文会使分析失败,而不是返回不完整结果。 - 钥匙串凭据统一保存与串行读取,AI、PDF 解析和 MCP 共享本次运行的授权结果;取消授权
不再继续弹出其他凭据窗口。已有密钥显示「待解锁」,不误报为未配置。旧条目安全迁移,
失败保留原值;首次迁移及签名变化的系统授权次数仍由 macOS 决定。 - 「设置 → 关于」显示应用版本、构建号、作者、MIT 许可与项目链接,提供正式版本检查和
自动检查开关。自动检查每天最多一次,发现新版本后提醒并打开发布页下载;检查失败不会
打断阅读。应用菜单提供「关于 Paperico」与「检查更新」,均复用工作台内的关于页。 - 界面统一:论文与方法的分组控件、拖拽反馈共用同一套圆角液态玻璃样式(拖拽预览锚定
指针,目标分组显示加号);界面使用系统字体,论文正文排版保留衬线;文章标题只显示一次
(衬线加粗中英对照),保留原始块与证据链接;逻辑链与节点笔记编辑框复用原生 Liquid Glass
输入表面与保存/取消按钮,直接拖动右下角调节大小;分割条接管鼠标拖动,避免带动窗口;
行内编辑统一,卡片与分组操作移入右键菜单;底部导航使用随强调色变化的矢量 Paperico 字标。 - 历史对话支持右键改名与删除:改名使用同字号的行内编辑框,删除前确认清除全部消息;
已导出的笔记保留,操作只影响所选论文的目标会话。 - 编辑时沿用显示状态的字号;论文、方法、分组及历史对话的名称编辑与确认/取消位于同一行,动作靠右。
逻辑链编辑和笔记入口改为原生玻璃按钮,笔记使用笔记图标;笔记编辑支持 ⌘B/⌘I/⌘H
切换加粗、斜体、高亮,格式与文本一并保存。逻辑链栏的进出匹配右侧栏的 280ms 动画。 - 对话中的原文证据编号在原位显示为可点击的玻璃按钮,随段落换行;正文、列表、引用、
表格和流式回答均使用同一机制。代码和无效引用保持普通文字,复制时保留完整证据编号。
安装与升级
下载 Paperico-1.0.0.dmg,将 Paperico 拖入 Applications 并替换旧版。
本次提供 ad-hoc 签名,未使用 Developer ID 或 Apple 公证。
原生论文库格式兼容;更新前可备份完整沙盒数据目录。旧后端 SQLite 库仍没有自动迁移。
验证
- 108 项原生核心测试,覆盖分析边界收紧(作者/文献段排除、缺译文拒绝)、方法分组的
合并与身份保持,以及库、管线、对话改名/删除、证据编号、笔记格式与归档回归。 - 5 项 MCP 集成测试,使用真实 loopback HTTP 与官方 Swift SDK 客户端互通。
- 24 项离线阅读器测试与生成资源检查、Markdown 流式渲染冒烟检查。
- 干净 Release 构建、DMG 完整性、应用签名与版本号检查。