Skip to content

Releases

v1.4.0 — Zotero AI 中文阅读助手(首个正式版)

Choose a tag to compare

@captainedV captainedV released this 07 Nov 17:06

下载: moonlit-reader-1.4.0.xpi(见下方 Assets)

安装:Zotero → 工具 → 插件 → 右上角齿轮 → Install Plugin From File… → 选择该 xpi → 重启 Zotero。
配置:设置 → AI 中文阅读助手 → 填 Base URL / API Key / 模型(也可先用「演示模式」体验)。

首个正式发行版。

The first release intended for other people. It is the sum of the work below.

Reading experience

  • Three switches in the reader toolbar popover (translate / summary / key
    points) are the only entry points: turning one on starts the work, turning it
    off pauses it and keeps what is already done.
  • Each feature gets its own progress row in the dock; all three can run at the
    same time and never overwrite each other's numbers.
  • The toolbar moon reflects what is happening (working / paused / failed) and
    every switch carries its own status line, so the switch and reality cannot
    disagree.
  • Two-way sync between the PDF and the translation column, including hovering
    between lines and scrolling either side.

Translation quality

  • Paragraph-level translation by default, with consecutive paragraphs batched
    into one request (default 2200 chars / 6 paragraphs) carrying the paper title,
    the current section heading and the neighbouring paragraphs as reference
    context. Measured on a real paper: 103 requests → 18.
  • Document structure is classified before anything is sent: title, author,
    headings, abstract, body, figure/table captions are translated; tables,
    formulas, the table of contents, running heads and reference lists are not.
  • Paragraphs cut by a page break, a column break or a caption wrap are joined
    back into one block, using punctuation first and geometry second. On three
    real papers the number of paragraphs ending mid-sentence dropped from
    15→2, 27→5 and 11→1.
  • Math is readable in the output: LaTeX becomes Unicode and real
    superscripts/subscripts (c_t^{Q} → cₜ^Q, \mathbb{R}^{d_c'} → ℝ^dᶜ′).

Reliability

  • fetch transport (streaming) with an automatic XMLHttpRequest fallback, a
    stall watchdog, non-streaming retry, bigger-budget retry for reasoning models,
    and 429 handling with a per-minute request budget.
  • Settings are per paper and survive upgrades; a private backup restores the
    provider/model/base URL/key if Zotero's prefs are lost.
  • Failures stay on screen in a sticky banner with the request URL and a hint.
  • Built-in self-test (moonlit.autoSelfTest) and a 147-check browser audit.