Skip to content

Releases: Jin-HoMLee/marginalia

v2.1.0 — Freeze page on Done

Choose a tag to compare

@Jin-HoMLee Jin-HoMLee released this 20 Jun 11:26
9ab4e89

Freeze page on Done, with timed-grace Undo (#6)

When you click Done, the page freezes into a live → closing → closed flow with a ~6 s grace banner offering Undo / Close now. /done fires exactly once, on commit. Frontend-only (annotate.js + theme.css); the server is unchanged.

Robustness (post-review hardening on PR #9)

  • No silent comment loss while frozen — the answer-option (mg-opt) handler now carries the live-only guard, so keyboard-Enter and programmatic activation can't POST a comment during the grace/closed window (CSS only blocked the mouse).
  • No stranded thread on tab-close — a pagehidesendBeacon("/done") delivers /done if you close the tab mid-grace, so await_comment never hangs.
  • No stray cards under the closed banner — a late /replies poll is ignored once closed.

44 tests pass. Verified by running: live edge-case dogfood (frozen keyboard activation blocked, tab-close beacon delivered, live answer-options still post).

Install: uvx --from git+https://github.com/Jin-HoMLee/marginalia@v2.1.0 marginalia

v2.0.0 — cross-client uvx package

Choose a tag to compare

@Jin-HoMLee Jin-HoMLee released this 19 Jun 15:04
ddbeb02

First neutral, cross-client release. marginalia turns any Markdown into a browser-based, click-to-comment thread over MCP — comments record as clean anchored tool_results, replies render as re-annotatable in-page cards.

Highlights

  • One portable FastMCP-over-stdio server, launched with uvx — installs identically across Claude Code, Cline, and opencode. No clone, no PyPI needed.
  • Dropped all Claude-Code-specific packaging (plugin manifest, .mcp.json, SKILL.md, register.sh) → a plain src/marginalia/ package (hatchling, console entry marginalia).
  • Env knobs: MARGINALIA_POLL_S (long-poll bound; default 540, opencode 20 for its ~30s exec cap) and MARGINALIA_THREADS_DIR (export dir; default ~/.marginalia/threads/).
  • Neutral USAGE.md + 3-client install matrix in the README.

Verified

Cross-client acceptance passed on all three targets, each driving the full start_thread → await_comment → post_reply → end_thread loop including the threaded comment-on-reply path:

Client Model
Claude Code Opus 4.8
Cline
opencode DeepSeek V4 Flash (no skill — driven from USAGE.md alone)

Install

claude mcp add --scope user marginalia -- uvx --from git+https://github.com/Jin-HoMLee/marginalia@v2.0.0 marginalia

See the README for Cline and opencode.