Skip to content

v3.25.0

Choose a tag to compare

@github-actions github-actions released this 25 Aug 12:13
· 22 commits to main since this release
  • dsh: Xiaomi MiMo's text-only models get their (modlens vision) variants (#80, #82). Auto-discovery's default families now include mimo, but with the gate reversed: only ids carrying a -pro segment (mimo-v2.5-pro, mimo-v2.5-pro-ultraspeed, mimo-v2-pro, and a :free-style qualifier after it) are wrapped. Xiaomi's naming convention — verified against the official model catalog for both the v2 and v2.5 generations — marks bare version ids as native omni models (mimo-v2.5 takes text, image, video, and audio) and -pro as the text-only flagship, so there is no vision marker in the name to exclude; only the named text subset is safe to include. The bare omni model keeps its native sight, and the asr/tts/voiceclone/voicedesign speech line falls outside the gate on its own. A declared image modality still vetoes a wrap first, and an explicit families list keeps the same MiMo gate. Thanks to @MagicSquarekey and @375578951 for the reports.

  • dsh: the settings card renders its form immediately instead of waiting out a full local-agent probe (#83). Expanding the card used to fetch /modlens/config?discover=1, and the route awaited a complete doctor --json sweep — every local harness probed, 30-second cap, painfully slow on Windows with .cmd shims and antivirus scanning — before the card showed anything but a spinner. The card now loads in two phases: a plain config fetch renders the engine, key, and model fields at once, and the reuse/auto section fills in lazily when its own discover=1 request returns, showing its small loading note meanwhile. A collapsed card discards late responses instead of letting them overwrite newer state, re-expanding does not re-probe, a save no longer clobbers a probe that finished after it, and a failed probe falls back to the plain grant list as before. The discovery cache also grows from 60 seconds to 10 minutes, so re-opening the card within that window pays nothing. Thanks to @Ztyss for a report that had already located every link in the chain.

  • dsh: repeated modlens_read_image calls reuse one image read (#81). A small host model can emit the same path-tool call repeatedly inside its thinking loop, and every call started a new CLI process because #68 cached attachment conversion but not the explicit tool. The tool now keeps a per-plugin LRU cache keyed by the CLI-normalized source identity and focus prompt. Identical concurrent calls join the same pending read. A changed local file or focus creates a fresh read, remote results expire after 60 seconds, and failures cool for 60 seconds before retrying. Returned evidence is cloned so one consumer cannot mutate the shared result, and the model-facing description explicitly says to call once and reuse the evidence. This prevents repeated tool decisions from becoming repeated vision-provider work. It cannot make a small model stop hallucinating calls or recover reliably from every tool failure, so duplicate call events may remain visible and hosts should still cap tool rounds where available.