v0.2.1
v0.2.1 — download layer, inline rects, one-line installer
Three batches since v0.2.0: a new download tool (MCP 13→14), a layout fix for flattened inline elements, and self-host onboarding (doctor + installer).
download — streaming HTTP(S) downloads (1af054a)
Agents fetch more than pages. download streams binaries/archives/datasets to disk instead of hauling them through context:
- New HTTP endpoint
POST /downloadand MCP tooldownload— tool count 13→14 - Chunked streaming to disk (no full-buffer), SHA-256 verified on completion
- Resumable via
Rangewhen the server supports it; optionaltopath,overwriteflag - SSRF-guarded by the same resolver rules as
/fetch
Fixed: flattened inline elements lost their rect (aa32edd)
Same bug family as obscura#722: plain inline wrappers (<span>, <label>, <a> with no block box) get flattened into the enclosing run during layout — correct for line-breaking, but the element lost its box entirely, so getBoundingClientRect had nothing to report (grid-fallback zeros).
The fix keeps the flatten but synthesizes each flattened element's rect as the union of its hoisted children's absolute boxes. One real bounding box per element — what coordinate-based clicking needs; nested inlines union level by level.
Before → after (16px font, Chrome ref ≈ 48×17):
| probe | before | after |
|---|---|---|
<label>toggle</label><input type=checkbox> |
grid-fallback | [8, 8, 47, 19] |
<span> mid-paragraph |
grid-fallback | [60, 16, 65, 19] |
| nested span outer / inner | grid-fallback | [21,16,44,19] / [50,16,15,19] |
<a>clickme</a> |
grid-fallback | [8, 8, 58, 19] |
Live on browser.aginx.net; locked by inline_elements_keep_real_rects_after_flatten.
aginxbrowser doctor + one-line installer (f088692)
Self-hosting used to be "clone, build, and hope". Now:
curl -fsSL https://raw.githubusercontent.com/yinnho/aginxbrowser/main/install.sh -o install.sh
less install.sh && bash install.sh
aginxbrowser doctorinstall.sh— platform detect → prebuilt tarball → SHA-256 verify →~/.local/bin, then runs doctor as a self-check (PREFIX=/VERSION=to override)aginxbrowser doctor— new subcommand, runs before the server boots: compiled features, bundled-font ink probe (rasterizes 汉字 and checks real ink, not just a cmap hit), env posture (bind/proxy/SSRF warning), one live egress probe. Exit code 1 on hard failure so containers can gate on it- Install docs fixed: prebuilt asset URLs kept the
vprefix and 404'd (aginxbrowser-v0.2.0-<target>.tar.gz, notaginxbrowser-0.2.0-…); README build commands now carry--features stealth,screenshotinstead of a featureless build that silently loses both
Checksums for this release's tarballs are the matching .sha256 assets.
Full API reference: docs/API.md · Hosted instance: browser.aginx.net · claude mcp add aginxbrowser --transport http https://browser.aginx.net/mcp