app
Shotlog - Screenshot Log
Public Made by Adomby adom
See the shots your AI never showed you, and know it actually SAW them. adom-shotlog streams every screenshot the AI gathers into a live gallery (webview/pup/browser/phone), reports whether a human is really watching and on which surface, and ingests Adom Bridge child-window arrays via --meta.
← Commit history
Publish 0.15.1
7 files changed
+15−7
Cargo.lock+1−1@@ -10,7 +10,7 @@ checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" [[package]] name = "adom-shotlog"-version = "0.15.0"+version = "0.15.1" dependencies = [ "axum", "base64",
Cargo.toml+1−1@@ -1,6 +1,6 @@ [package] name = "adom-shotlog"-version = "0.15.0"+version = "0.15.1" edition = "2021" description = "Screenshot log viewer and CLI for Adom" license = "MIT"
VERSION+1−1@@ -1 +1 @@-0.15.0+0.15.1
bin/adom-shotlog⋯ 1 unchanged line ⋯
package.json+1−1@@ -1,6 +1,6 @@ { "slug": "adom-shotlog",- "version": "0.15.0",+ "version": "0.15.1", "type": "app", "title": "Adom Shotlog", "description": "See the shots your AI never showed you, and know it actually SAW them. adom-shotlog streams every screenshot the AI gathers into a live gallery (webview/pup/browser/phone), reports whether a human is really watching and on which surface, and ingests Adom Desktop child-window arrays via --meta.",
page.json+1−1@@ -1,6 +1,6 @@ { "slug": "adom-shotlog",- "version": "0.15.0",+ "version": "0.15.1", "type": "app", "title": "Adom Shotlog", "description": "See the shots your AI never showed you, and know it actually SAW them. adom-shotlog streams every screenshot the AI gathers into a live gallery (webview/pup/browser/phone), reports whether a human is really watching and on which surface, and ingests Adom Desktop child-window arrays via --meta.",
src/html/index.html+10−2@@ -77,11 +77,13 @@ header { .brand .sep { color: var(--text3); font-weight: 400; margin: 0 1px; } .brand .app-subtitle { color: var(--text2); font-weight: 500; font-size: 12px; } .vsep { width: 1px; height: 16px; background: var(--border); flex-shrink: 0; }-.subject { display: flex; align-items: center; gap: 8px; min-width: 0; flex: 1; }+/* baseline (not center) so the smaller mono meta sits ON the name's baseline */+.subject { display: flex; align-items: baseline; gap: 8px; min-width: 0; flex: 1; } .subject-name { font-family: 'Familjen Grotesk', sans-serif; font-size: 14px; font-weight: 600; color: var(--text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .subject-meta { color: var(--text2); font-family: 'JetBrains Mono', monospace; font-size: 11px;- white-space: nowrap; flex-shrink: 0; }+ line-height: 1; white-space: nowrap; flex-shrink: 0; }+.subject-meta:not(:empty)::before { content: '·'; color: var(--text3); margin-right: 7px; } /* Canonical adom-app-header: the header is ALWAYS ONE 44px row (multi-row is anti-pattern #1 in the adom-app-header spec). To fit a skinny ~360px panel we SHED the least-important zones per the spec's hierarchy — brand subtitle, then@@ -296,6 +298,12 @@ header { color: var(--text2); font: 600 12px 'Familjen Grotesk', sans-serif; padding: 6px 12px; cursor: pointer; } .seg button + button { border-left: 1px solid var(--border); } .seg button.on { background: rgba(0,184,176,.18); color: var(--accent-bright); }+/* Skinny panel: STACK each preference (text full-width, control below) - the+ side-by-side row crushes the description to one word per line at ~360px. */+@media (max-width: 520px) {+ .pref-row { flex-direction: column; align-items: stretch; gap: 9px; }+ .pref-row .toggle, .pref-row .seg { align-self: flex-start; }+} .ai-chip { margin-top: 7px; padding: 6px 9px; border-radius: 6px; display: inline-block; background: rgba(0,184,176,.08); border: 1px solid rgba(0,184,176,.25); font-family: 'JetBrains Mono', monospace; font-size: 10.5px; line-height: 1.4;