Releases: gianlucamazza/pagouse
Releases · gianlucamazza/pagouse
Release list
pagouse 0.6.1
Hardens 1Password credential origin binding and secret resolution, and adds a safe registry template.
pagouse 0.6.0
Adds allowlisted 1Password CLI credential filling with origin binding, secret-reference validation, redacted results, and human-in-the-loop MFA boundaries.
pagouse 0.5.1
Adds a persistent systemd --user Chromium supervisor, atomic session metadata, deterministic cleanup, lifecycle diagnostics, and correct screenshot dimensions.
pagouse 0.5.0
pagouse 0.5.0\n\n- Replaced the legacy MV3/native-messaging stack with an owned Chromium runtime using WebDriver BiDi.\n- Added isolated browser lifecycle, contexts, browser-computed AX snapshots, screenshots, trusted input actions, and BiDi event waiting.\n- MCP remains observe-only.\n- Removed the legacy extension, daemon, IPC, native host, and Chrome Web Store packaging.\n\nVerified locally with 33 tests, Ruff, ty, package build, and a live Chromium navigation/event smoke test. Remote CI run 33812245427 passed all checks.
v0.4.0
Added
wait_refcommand — lightweight extension-side polling for ref-based waits (no full AX walk)- Structured stdlib logging in
nm_relay.py,hosts/mcp.py, anddaemon.py - Error code table in the agent skill (all 11 codes documented)
- stderr warning on
shotwhen ImageMagick is missing
Changed
nm_relay.pycatchesjson.JSONDecodeErrorinstead of bareValueErrorpagousedlimits concurrent client threads to 16 via a semaphore- SPA pages: dead WeakRef entries are purged from
__pagouseRefs
Removed
- Unused
storagepermission from the extension manifest
v0.3.0
Added
- Structured stdlib logging via
PAGOUSE_LOGand--verbose --delay MSon mutate commands (default 450 ms)fit_skipped: truewhen ImageMagick is missing__all__on core modules- Explicit CSP in extension manifest
Changed
json.JSONDecodeErrorinstead of bareValueErrorin nm_relay- Thread limit (16) in pagoused daemon
- WeakRef cleanup on SPA navigation
Removed
- Unused
storagepermission from extension
v0.2.0
Brand identity and Chrome Web Store readiness.
Added
- Brand icon set rendered from one SVG source in
extension/icons/src/— a goose on the daily-profile green, legible down to 16px. install/package-store.sh: reproducible store zip from committed sources only; refuses a dirty tree or mismatched version stamps.install/webstore-publish.py: stdlib-only store uploader (upload, publish, status), credentials via environment.- Store listing copy (
store/listing.md), typeset terminal screenshot, and privacy policy. install.shlinks the agent skill into an existing~/.config/opencode/skillsroot.
The extension id is pinned by the manifest key, so the store item keeps native messaging working with no allowlist change.
Full changelog: v0.1.0...v0.2.0
pagouse 0.1.0
[0.1.0] — 2026-08-22
Added
- Chromium MV3 extension on the daily profile: accessibility snapshot with
ref_Nlabels, viewport shot, tab list. - Local daemon + native-messaging relay. No remote-debugging port, no Allow
dialog, nochrome.debugger. - CLI
--jsonenvelopeschema: 1. Observe:doctor,tabs,snapshot,
shot,wait. Mutate with--allow-input:click,fill,type,
key,navigate,scroll,tab_open,tab_focus. - Snapshots include iframe documents; refs are
ref_fFRAME_N. - Tabs the agent drives sit in a Chromium tab group titled jarvis (green).
- Observe-only MCP extra (
pagouse-mcp). - Origin policy: shipped scheme deny (
chrome:,file:, …); user
allow_origins/deny_origins. Password fields serialize as[redacted]. - Agent skill. Not a seat adapter.
doctorprefers the native-host path of a running Chromium and counts
tabs when the extension is connected.
Fixed
- Viewport
shotrequires Chromium<all_urls>(captureVisibleTabrejects