← Commit history

Publish 1.9.108

John Lauer ·8380523d7c ·3mo ago ·parent 81fcaff
6 files changed +10−10
SKILL.md+1−1
@@ -1563,7 +1563,7 @@ Two ways to use it: - **`display: {virtualScreen, primary{w,h,dpi,scale}, monitors[], monitorOfWindow}`** — the full monitor topology: total virtual bounds, and per-monitor `bounds`/`dpi`/`scale`/`primary`. `monitorOfWindow` indexes into `monitors[]`. (Same data as the standalone `desktop_display` verb, folded in.) - **`drive: "background"`** — screenshots never foreground the window (PrintWindow/WGC). The companion `_related` field lists sibling screenshot/window verbs. -**Screenshot cache is self-cleaning (v1.9.107):** the CLI auto-pulls every screenshot to ONE user-visible, namespaced dir on the caller's machine (`~/project/screenshots/adom-desktop/`, else `~/.adom/screenshots/`; `ADOM_SHOTS_DIR` overrides) — never `/tmp` anymore. A janitor prunes it (7 days / 2 GB / newest kept) and drains the old `/tmp/ad-shots` + `/tmp/adom-desktop-screenshots` backlogs, running opportunistically at most once/24h on any CLI call. **You do not need to clean it up or write your own cron.** Every screenshot response carries a `_cacheHint` naming the dir + policy; verify coverage with **`adom-desktop janitor`** (status: each dir, size, policy, last sweep) or force a sweep with **`adom-desktop janitor '{"sub":"run"}'`**. It never touches other tools' files under `~/project/screenshots/` (e.g. shotlog). Tune via `ADOM_SHOTS_MAX_AGE_DAYS` / `ADOM_SHOTS_MAX_GB` / `ADOM_SHOTS_MAX_FILES`, or disable with `ADOM_JANITOR=0`.+**Screenshot cache is self-cleaning + self-describing (v1.9.107/108):** the CLI auto-pulls every screenshot to ONE user-visible, namespaced dir on the caller's machine (`~/project/screenshots/adom-desktop/`, else `~/.adom/screenshots/`; `ADOM_SHOTS_DIR` overrides) — never `/tmp` anymore. Shots are **bucketed by kind into subfolders**: `window/` (a specific window / app / owned popup) and `screen/` (a full-desktop grab). Each shot gets a **`<stem>.json` sidecar** (shotlog-style: `source`, `timestamp`, `kind`, dims + `bytes`, `coordMap`, `rect`; a full+safe pair shares one). A janitor prunes it (7 days / 2 GB / newest kept; sidecars follow their PNG, orphans swept) and drains the old `/tmp/ad-shots` + `/tmp/adom-desktop-screenshots` backlogs, running opportunistically at most once/24h on any CLI call. **You do not need to clean it up or write your own cron.** Every screenshot response carries a `_cacheHint`; verify coverage with **`adom-desktop janitor`** (status: each subfolder, size, policy, last sweep) or force a sweep with **`adom-desktop janitor '{"sub":"run"}'`**. It never touches other tools' files under `~/project/screenshots/` (e.g. shotlog). Tune via `ADOM_SHOTS_MAX_AGE_DAYS` / `ADOM_SHOTS_MAX_GB` / `ADOM_SHOTS_MAX_FILES`, or disable with `ADOM_JANITOR=0`.  **Background vs foreground driving (v1.8.178):** every desktop driving verb carries a structured **`drive`** field (`"background"` | `"foreground"` | `"n/a"`) — in `GET /commands`, in `adom-desktop help <verb>`, and echoed in the verb's own response. **Background** (no foreground / focus steal / cursor move — UIA + capture): `desktop_ui_click`, `desktop_ui_set`, `desktop_navigate`, `desktop_find_control`, `desktop_screenshot_window/_screen`, `desktop_record_window_start`. **Foreground** (SendInput → goes to the focused window, so AD foregrounds first): `desktop_click`/`_double_click`/`_right_click`/`_hover`, `desktop_type`, `desktop_press_key`, `desktop_bring_to_front`. Run **`adom-desktop help background`** for the full grouping. Rule: to act without disturbing the user's window, drive by NAME (`desktop_find_control` → `desktop_ui_click`/`ui_set`); fall back to coordinate clicks/keys only when the control isn't in the UIA tree. 
dist/linux/adom-desktop
⋯ 1 unchanged line ⋯
package.json+1−1
@@ -1,6 +1,6 @@ {
   "slug": "adom-desktop",
-  "version": "1.9.107",
+  "version": "1.9.108",
   "type": "app",
   "description": "Laptop bridge: file transfer, screenshots, notifications, KiCad + Fusion 360 control, real-Chrome (Puppeteer) automation, and Hydrogen Desktop proxy. One install gives Claude every desktop verb it needs.",
   "discovery_pitch": "Use when a cloud AI needs to reach a real Windows desktop: run shell commands, capture screenshots, drive native apps and browsers, transfer files, and control KiCad / Fusion 360 / third-party bridges.",
page.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "adom-desktop",-  "version": "1.9.107",+  "version": "1.9.108",   "type": "app",   "description": "Laptop bridge: file transfer, screenshots, notifications, KiCad + Fusion 360 control, real-Chrome (Puppeteer) automation, and Hydrogen Desktop proxy. One install gives Claude every desktop verb it needs.",   "keywords": [
skills/adom-desktop/SKILL.md+1−1
@@ -1563,7 +1563,7 @@ Two ways to use it: - **`display: {virtualScreen, primary{w,h,dpi,scale}, monitors[], monitorOfWindow}`** — the full monitor topology: total virtual bounds, and per-monitor `bounds`/`dpi`/`scale`/`primary`. `monitorOfWindow` indexes into `monitors[]`. (Same data as the standalone `desktop_display` verb, folded in.) - **`drive: "background"`** — screenshots never foreground the window (PrintWindow/WGC). The companion `_related` field lists sibling screenshot/window verbs. -**Screenshot cache is self-cleaning (v1.9.107):** the CLI auto-pulls every screenshot to ONE user-visible, namespaced dir on the caller's machine (`~/project/screenshots/adom-desktop/`, else `~/.adom/screenshots/`; `ADOM_SHOTS_DIR` overrides) — never `/tmp` anymore. A janitor prunes it (7 days / 2 GB / newest kept) and drains the old `/tmp/ad-shots` + `/tmp/adom-desktop-screenshots` backlogs, running opportunistically at most once/24h on any CLI call. **You do not need to clean it up or write your own cron.** Every screenshot response carries a `_cacheHint` naming the dir + policy; verify coverage with **`adom-desktop janitor`** (status: each dir, size, policy, last sweep) or force a sweep with **`adom-desktop janitor '{"sub":"run"}'`**. It never touches other tools' files under `~/project/screenshots/` (e.g. shotlog). Tune via `ADOM_SHOTS_MAX_AGE_DAYS` / `ADOM_SHOTS_MAX_GB` / `ADOM_SHOTS_MAX_FILES`, or disable with `ADOM_JANITOR=0`.+**Screenshot cache is self-cleaning + self-describing (v1.9.107/108):** the CLI auto-pulls every screenshot to ONE user-visible, namespaced dir on the caller's machine (`~/project/screenshots/adom-desktop/`, else `~/.adom/screenshots/`; `ADOM_SHOTS_DIR` overrides) — never `/tmp` anymore. Shots are **bucketed by kind into subfolders**: `window/` (a specific window / app / owned popup) and `screen/` (a full-desktop grab). Each shot gets a **`<stem>.json` sidecar** (shotlog-style: `source`, `timestamp`, `kind`, dims + `bytes`, `coordMap`, `rect`; a full+safe pair shares one). A janitor prunes it (7 days / 2 GB / newest kept; sidecars follow their PNG, orphans swept) and drains the old `/tmp/ad-shots` + `/tmp/adom-desktop-screenshots` backlogs, running opportunistically at most once/24h on any CLI call. **You do not need to clean it up or write your own cron.** Every screenshot response carries a `_cacheHint`; verify coverage with **`adom-desktop janitor`** (status: each subfolder, size, policy, last sweep) or force a sweep with **`adom-desktop janitor '{"sub":"run"}'`**. It never touches other tools' files under `~/project/screenshots/` (e.g. shotlog). Tune via `ADOM_SHOTS_MAX_AGE_DAYS` / `ADOM_SHOTS_MAX_GB` / `ADOM_SHOTS_MAX_FILES`, or disable with `ADOM_JANITOR=0`.  **Background vs foreground driving (v1.8.178):** every desktop driving verb carries a structured **`drive`** field (`"background"` | `"foreground"` | `"n/a"`) — in `GET /commands`, in `adom-desktop help <verb>`, and echoed in the verb's own response. **Background** (no foreground / focus steal / cursor move — UIA + capture): `desktop_ui_click`, `desktop_ui_set`, `desktop_navigate`, `desktop_find_control`, `desktop_screenshot_window/_screen`, `desktop_record_window_start`. **Foreground** (SendInput → goes to the focused window, so AD foregrounds first): `desktop_click`/`_double_click`/`_right_click`/`_hover`, `desktop_type`, `desktop_press_key`, `desktop_bring_to_front`. Run **`adom-desktop help background`** for the full grouping. Rule: to act without disturbing the user's window, drive by NAME (`desktop_find_control` → `desktop_ui_click`/`ui_set`); fall back to coordinate clicks/keys only when the control isn't in the UIA tree. 
version.json+6−6
@@ -1,14 +1,14 @@ {   "manifest_version": 1,-  "version": "1.9.107",+  "version": "1.9.108",   "released_at": "2026-07-14T00:00:00Z",   "windows": {-    "installer_url": "https://wiki.adom.inc/download/adom/adom-desktop/1.9.107/Adom.Desktop_1.9.107_windows_x64-setup.exe",-    "installer_filename": "Adom.Desktop_1.9.107_windows_x64-setup.exe",-    "installer_sha256": "26e9cd1fef50224d9f89e7783ed3029be7e8a59157d500a551439f0988382bc2",-    "installer_size": 10533760+    "installer_url": "https://wiki.adom.inc/download/adom/adom-desktop/1.9.108/Adom.Desktop_1.9.108_windows_x64-setup.exe",+    "installer_filename": "Adom.Desktop_1.9.108_windows_x64-setup.exe",+    "installer_sha256": "81a896a8ff0dfa243c73e17880c04a4b544f964b96939a595758a6e66942adad",+    "installer_size": 10547384   },   "changelog_url": "https://wiki.adom.inc/adom/adom-desktop",   "minimum_required": "1.3.30",-  "note": "Container-side CLI screenshot-cache janitor: pulled screenshots now live in one user-visible dir (~/project/screenshots/adom-desktop/, never /tmp) that self-prunes (age + size cap). New 'janitor' verb; every screenshot response carries a cache hint."+  "note": "Screenshot cache: pulled shots are bucketed into window/ and screen/ subfolders with a per-shot JSON sidecar (source, dims, bytes, coordMap, rect), on top of the 1.9.107 self-cleaning janitor." }