diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index f979d3d..db2913a 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -42,7 +42,7 @@ "name": "screenote", "source": "./plugins/screenote", "description": "Capture pages, publish OAuth-authenticated snapshots with the Screenote CLI, and retrieve visual feedback from Claude Code or Codex.", - "version": "3.1.0", + "version": "3.1.1", "author": { "name": "ivankuznetsov", "url": "https://github.com/ivankuznetsov" diff --git a/docs/agent-compatibility.md b/docs/agent-compatibility.md index 91eb720..590c56e 100644 --- a/docs/agent-compatibility.md +++ b/docs/agent-compatibility.md @@ -36,7 +36,7 @@ plugin directory so a copied package does not depend on the repository root. | Agent SEO | `2.0.1` | Stable | `skills/seo/SKILL.md` | agents, context, data sources, hooks, scripts | | Agent Writing | `0.5.2` | Stable | `skills/writing/SKILL.md` | agents, voice/style context | | LLM Wiki | `0.3.5` | Stable | five files under `skills/` | assets, consent-gated maintenance templates | -| Screenote | `3.1.0` | Stable | `skills/{screenote,snapshot,feedback}/SKILL.md` | CLI launcher, references, evals | +| Screenote | `3.1.1` | Stable | `skills/{screenote,snapshot,feedback}/SKILL.md` | CLI launcher, references, evals | ## Plugin invocations diff --git a/plugin-surfaces.json b/plugin-surfaces.json index 192df3c..f8d87d3 100644 --- a/plugin-surfaces.json +++ b/plugin-surfaces.json @@ -210,7 +210,7 @@ { "name": "screenote", "path": "plugins/screenote", - "version": "3.1.0", + "version": "3.1.1", "stability": "stable", "metadata": { "display_name": "Screenote", diff --git a/plugin-surfaces.lock.json b/plugin-surfaces.lock.json index 1a68820..e9c582a 100644 --- a/plugin-surfaces.lock.json +++ b/plugin-surfaces.lock.json @@ -853,7 +853,7 @@ } }, "screenote": { - "version": "3.1.0", + "version": "3.1.1", "canonical": { "skills/screenote/SKILL.md": { "sha256": "2944db045534e4d6f45f9637d26c0b117fb96e3595c584cdf4155a635c875782", diff --git a/plugins/screenote/.claude-plugin/marketplace.json b/plugins/screenote/.claude-plugin/marketplace.json index 3a8b71f..fcfc93f 100644 --- a/plugins/screenote/.claude-plugin/marketplace.json +++ b/plugins/screenote/.claude-plugin/marketplace.json @@ -13,7 +13,7 @@ "name": "screenote", "source": "./", "description": "Capture pages, publish OAuth-authenticated snapshots with the Screenote CLI, and retrieve visual feedback from Claude Code or Codex.", - "version": "3.1.0", + "version": "3.1.1", "author": { "name": "ivankuznetsov" }, diff --git a/plugins/screenote/.claude-plugin/plugin.json b/plugins/screenote/.claude-plugin/plugin.json index 4f4ae56..3bd675e 100644 --- a/plugins/screenote/.claude-plugin/plugin.json +++ b/plugins/screenote/.claude-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "screenote", - "version": "3.1.0", + "version": "3.1.1", "description": "Capture full-page browser snapshots and manage Screenote feedback through the OAuth CLI from Claude Code or Codex.", "author": { "name": "ivankuznetsov" diff --git a/plugins/screenote/.codex-plugin/plugin.json b/plugins/screenote/.codex-plugin/plugin.json index 8bc9391..1998420 100644 --- a/plugins/screenote/.codex-plugin/plugin.json +++ b/plugins/screenote/.codex-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "screenote", - "version": "3.1.0", + "version": "3.1.1", "description": "Capture full-page browser snapshots and manage Screenote feedback through the OAuth CLI from Claude Code or Codex.", "author": { "name": "ivankuznetsov", diff --git a/plugins/screenote/CHANGELOG.md b/plugins/screenote/CHANGELOG.md index 504c6b0..0710fda 100644 --- a/plugins/screenote/CHANGELOG.md +++ b/plugins/screenote/CHANGELOG.md @@ -4,6 +4,8 @@ All notable changes to the Screenote plugin are documented here. ## [Unreleased] +## [3.1.1] - 2026-08-02 + ### Fixed - Publish all selected viewport captures through one resumable snapshot diff --git a/plugins/screenote/openclaw.plugin.json b/plugins/screenote/openclaw.plugin.json index a1686bc..73f21f2 100644 --- a/plugins/screenote/openclaw.plugin.json +++ b/plugins/screenote/openclaw.plugin.json @@ -2,7 +2,7 @@ "id": "screenote", "name": "Screenote", "description": "Capture pages, publish screenshots, and retrieve visual feedback through the Screenote OAuth CLI.", - "version": "3.1.0", + "version": "3.1.1", "skills": [ "./openclaw/skills" ], diff --git a/plugins/screenote/package.json b/plugins/screenote/package.json index 458719f..bc62a9c 100644 --- a/plugins/screenote/package.json +++ b/plugins/screenote/package.json @@ -1,6 +1,6 @@ { "name": "screenote", - "version": "3.1.0", + "version": "3.1.1", "type": "module", "description": "Capture pages, publish screenshots, and retrieve visual feedback through the Screenote OAuth CLI.", "homepage": "https://screenote.ai", diff --git a/wiki/architecture.md b/wiki/architecture.md index 2440bb0..31686e3 100644 --- a/wiki/architecture.md +++ b/wiki/architecture.md @@ -34,8 +34,12 @@ capabilities. Native discovery runs from isolated home/config directories for all four hosts. Screenote's bearer-safe launcher reads its approved command tuples from the -generated contract artifact, while a shipped workflow runtime validates JSON -collections, pagination, and identifiers before canonical skills act on them. +generated contract artifact. Its shipped workflow runtime validates JSON +collections, pagination, identifiers, private image paths, and manifest-backed +viewport groups before canonical skills act on them. Browser captures and +explicit existing images publish through one resumable snapshot per logical +screen, with desktop, tablet, and mobile represented as child variants rather +than separate versions. LLM Wiki's shared transactional refresh runner dispatches exactly one configured owner, including a validated OpenClaw workspace agent, from a disposable refresh worktree. The primary checkout owns one repository-wide non-persistent systemd diff --git a/wiki/log.d/20260802-screenote-311-release.md b/wiki/log.d/20260802-screenote-311-release.md new file mode 100644 index 0000000..ccf47c9 --- /dev/null +++ b/wiki/log.d/20260802-screenote-311-release.md @@ -0,0 +1,13 @@ +# Screenote 3.1.1 release + +Prepared Screenote plugin 3.1.1 for the manifest-backed viewport grouping +shipped after 3.1.0. Desktop, tablet, and mobile captures for one logical screen +now publish in a single resumable snapshot and render behind one viewport +switcher. Existing-image uploads retain the browser-free path, accept explicit +commit provenance outside Git worktrees, and preserve private recovery +artifacts on timeout or malformed terminal output. + +The release keeps the contract-owned version, Claude and Codex manifests, +marketplaces, generated Pi/OpenClaw packages, semantic lock, and changelog in +sync. Offline package validation, all four native discovery gates, and the +protected Screenote integration are release requirements before tagging. diff --git a/wiki/plugins.md b/wiki/plugins.md index 3208c4d..7a6ede1 100644 --- a/wiki/plugins.md +++ b/wiki/plugins.md @@ -9,7 +9,7 @@ OpenClaw. | `agent-seo` | `2.0.0` | `seo` | agents, context, data sources, hooks, scripts | | `agent-writing` | `0.5.1` | `writing` | agents, context | | `llm-wiki` | `0.3.5` | `bootstrap`, `upgrade`, `research`, `wiki-plan`, `wiki-status` | assets, consent-gated templates | -| `screenote` | `3.0.0` | `screenote`, `snapshot`, `feedback` | CLI launcher, references, evals | +| `screenote` | `3.1.1` | `screenote`, `snapshot`, `feedback` | CLI launcher, references, evals | Claude and Codex install through their root marketplaces. Pi and OpenClaw install a copied `plugins/` directory. Every copied package is complete; @@ -22,6 +22,11 @@ preserves provenance disclosures, and edits existing files only after an explicit request for the exact path. Version 2.0 makes the removed mutation contract explicit and documents the 1.x migration in `plugins/agent-seo/MIGRATION-2.0.md`. +Screenote 3.1.1 publishes every desktop, tablet, and mobile capture for one +logical screen through a single manifest-backed snapshot, so Screenote renders +the variants behind one viewport switcher. Explicit existing-image uploads use +the same browser-free publication path and may supply commit provenance when +they run outside a Git worktree. LLM Wiki bootstrap creates the requested project wiki. Scheduler, managed-hook, shared-Git, and provider-backed maintenance are a separate opt-in; 0.2.x configs without both consent flags are automation-disabled under the 0.3