Skip to content

Releases: ashesbloom/locallens_mcp_agent

v1.1.1

Choose a tag to compare

@github-actions github-actions released this 18 Aug 05:45

LocalLens Agent v1.1.1

Organize your photo library by talking to Claude. Everything runs on your machine — no uploads, no cloud, not even metadata.

LocalLens MCP Agent connects Claude Desktop (or any MCP-compatible AI assistant) to your local LocalLens photo organizer.

✨ Highlights

  • Finding duplicate photos or exporting a report could fail with a missing-library error, and the assistant would then suggest installing that library by hand — which could never work. It now points you at the LocalLens app update that actually fixes it.
  • On LocalLens 3.0.1 and newer, duplicate scans of large photo libraries run in the background and report progress instead of giving up partway through.

🔧 What Changed

Fixed

  • Finding duplicate photos or exporting a report could fail with a missing-library error, and the assistant would then suggest installing that library by hand — which could never work. It now points you at the LocalLens app update that actually fixes it.

Improved

  • On LocalLens 3.0.1 and newer, duplicate scans of large photo libraries run in the background and report progress instead of giving up partway through.

📦 Install

macOS — Homebrew (recommended)

brew install ashesbloom/locallens/locallens-agent

Homebrew clears Gatekeeper for you — there is nothing else to run. Launch LocalLens Agent from Applications and look for the LL icon in your menu bar.

macOS — DMG

  1. Download locallens-agent-v1.1.1-macos-arm64.dmg

  2. Open it and drag LocalLens Agent to Applications

  3. Clear Gatekeeper — the app is not yet notarized by Apple, so macOS will say it is damaged or from an unidentified developer until you do this:

    Double-click the Fix LocalLens Agent.command file included in the DMG, or run this once in Terminal:

    xattr -cr "/Applications/LocalLens Agent.app" && codesign --force --deep --sign - "/Applications/LocalLens Agent.app"
  4. Launch from Applications — the LL icon appears in your menu bar

Prefer Homebrew if you can. It skips this step entirely.

Windows

  1. Download locallens-agent-v1.1.1-windows-x86_64-setup.exe
  2. Run it. SmartScreen may warn about an unknown publisher — choose More info → Run anyway
  3. The tray icon appears in your notification area

MCP binary only (macOS / Linux / Windows)

For running the MCP server without the tray app:

# extract the archive for your platform, then:
./locallens-mcp --setup-claude

On Windows that is .\locallens-mcp.exe --setup-claude. Restart Claude Desktop to activate.


⬆️ Already have LocalLens Agent?

Open the LocalLens tray menu → Check for Updates → Install Update. It downloads, verifies the checksum and installs for you.

Homebrew users can instead run:

brew upgrade --cask locallens-agent

Installed from source or pip? pip install --upgrade locallens-mcp.


🎉 Free preview — everything is unlocked

There is no store yet, so there is nothing to buy. Every tool below runs for
everyone, with no license key:

Available now
Sort by Date, Location, or People
Find & Group — including by person
Folder analysis, saved path presets, stats
Batch face enrollment
Duplicate detection & cleanup
Export reports
Scheduled auto-organize & active folders

If you're using LocalLens now, you keep all of this for free, permanently
even after paid plans launch. That's not a trial period ending; it's a thank-you
for being here early. See locallensmcp.vercel.app/#pricing
for how it works.


📥 All downloads

Platform File Type
macOS (Apple Silicon) locallens-agent-v1.1.1-macos-arm64.dmg Menu Bar App
Windows (x64) locallens-agent-v1.1.1-windows-x86_64-setup.exe Installer
macOS (Apple Silicon) locallens-mcp-v1.1.1-macos-arm64.zip MCP Binary
Windows (x64) locallens-mcp-v1.1.1-windows-x86_64.zip MCP Binary
Linux (x64) locallens-mcp-v1.1.1-linux-x86_64.tar.gz MCP Binary

🚀 Getting started

  1. Install the LocalLens desktop app and run it once — download
  2. Install LocalLens Agent using any method above
  3. Restart Claude Desktop
  4. Ask Claude: "Check if LocalLens is running"

Then try "What can LocalLens do?" for a guided tour of all 26 tools.


🔗 Links


Built with privacy in mind. Your photos never leave your machine.


🔐 Verify your download

Both installers are unsigned, so it is worth checking the SHA256 before you run them.

Asset SHA256
locallens-agent-v1.1.1-macos-arm64.dmg 69c4e5c437fb8eea8b0aa6d6fa8891205a74953723313102467fcdd0031c54db
locallens-agent-v1.1.1-windows-x86_64-setup.exe e1bde3e606ed0e56221a518ae17d5830f163520c493845ecf619c9734e4308f1
shasum -a 256 <file>                 # macOS / Linux
certutil -hashfile <file> SHA256     # Windows

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 12 Aug 21:37

LocalLens Agent v1.1.0

Organize your photo library by talking to Claude. Everything runs on your machine — no uploads, no cloud, not even metadata.

LocalLens MCP Agent connects Claude Desktop (or any MCP-compatible AI assistant) to your local LocalLens photo organizer.

✨ What this release is

Nothing about how LocalLens works changed here — v1.0.34 already unlocked every Pro
feature for everyone. This release is about saying so consistently, everywhere someone
might land before they ever open the app:

  • The README led with a Free-vs-Pro paywall table and a "purchase a license" line.
    Neither was true anymore. Both now lead with the free preview instead — Pro tools are
    listed as unlocked, not pitched.
  • An example Claude Desktop config in the README pointed LOCALLENS_STORE_URL at a
    Lemon Squeezy store that never existed. Removed.
  • The repo carried a requirements.txt nobody referenced — pyproject.toml has been
    the real source of dependencies for a while. Removed, so there's one place to look,
    not two that can quietly drift apart.
  • Download count, release version, and star count now show as badges at the top of the
    README, pulled live from GitHub's own public numbers.
  • The website gained cookieless visit analytics (Vercel Web Analytics — no cookies, no
    personal data collected). That's the only place any usage data is measured; the MCP
    agent itself still makes no calls of its own beyond a license check, and that check is
    moot right now since nothing is gated.

📦 Install

macOS — Homebrew (recommended)

brew install ashesbloom/locallens/locallens-agent

Homebrew clears Gatekeeper for you — there is nothing else to run. Launch LocalLens Agent from Applications and look for the LL icon in your menu bar.

macOS — DMG

  1. Download locallens-agent-v1.1.0-macos-arm64.dmg

  2. Open it and drag LocalLens Agent to Applications

  3. Clear Gatekeeper — the app is not yet notarized by Apple, so macOS will say it is damaged or from an unidentified developer until you do this:

    Double-click the Fix LocalLens Agent.command file included in the DMG, or run this once in Terminal:

    xattr -cr "/Applications/LocalLens Agent.app" && codesign --force --deep --sign - "/Applications/LocalLens Agent.app"
  4. Launch from Applications — the LL icon appears in your menu bar

Prefer Homebrew if you can. It skips this step entirely.

Windows

  1. Download locallens-agent-v1.1.0-windows-x86_64-setup.exe
  2. Run it. SmartScreen may warn about an unknown publisher — choose More info → Run anyway
  3. The tray icon appears in your notification area

MCP binary only (macOS / Linux / Windows)

For running the MCP server without the tray app:

# extract the archive for your platform, then:
./locallens-mcp --setup-claude

On Windows that is .\locallens-mcp.exe --setup-claude. Restart Claude Desktop to activate.


⬆️ Already have LocalLens Agent?

Open the LocalLens tray menu → Check for Updates → Install Update. It downloads, verifies the checksum and installs for you.

Homebrew users can instead run:

brew upgrade --cask locallens-agent

Installed from source or pip? pip install --upgrade locallens-mcp.


🎉 Free preview — everything is unlocked

There is no store yet, so there is nothing to buy. Every tool below runs for
everyone, with no license key:

Available now
Sort by Date, Location, or People
Find & Group — including by person
Folder analysis, saved path presets, stats
Batch face enrollment
Duplicate detection & cleanup
Export reports
Scheduled auto-organize & active folders

If you're using LocalLens now, you keep all of this for free, permanently
even after paid plans launch. That's not a trial period ending; it's a thank-you
for being here early. See locallensmcp.vercel.app/#pricing
for how it works.


📥 All downloads

Platform File Type
macOS (Apple Silicon) locallens-agent-v1.1.0-macos-arm64.dmg Menu Bar App
Windows (x64) locallens-agent-v1.1.0-windows-x86_64-setup.exe Installer
macOS (Apple Silicon) locallens-mcp-v1.1.0-macos-arm64.zip MCP Binary
Windows (x64) locallens-mcp-v1.1.0-windows-x86_64.zip MCP Binary
Linux (x64) locallens-mcp-v1.1.0-linux-x86_64.tar.gz MCP Binary

🚀 Getting started

  1. Install the LocalLens desktop app and run it once — download
  2. Install LocalLens Agent using any method above
  3. Restart Claude Desktop
  4. Ask Claude: "Check if LocalLens is running"

Then try "What can LocalLens do?" for a guided tour of all 26 tools.


🔗 Links


Built with privacy in mind. Your photos never leave your machine.


🔐 Verify your download

Both installers are unsigned, so it is worth checking the SHA256 before you run them.

Asset SHA256
locallens-agent-v1.1.0-macos-arm64.dmg f4e2294db79e58ab794ae92c025306c83f36472cedec18aa2965fa3a538fd864
locallens-agent-v1.1.0-windows-x86_64-setup.exe 7fe0193910fe26b53db0177141005d51d91ef42661d7255e82ebec177f412191
shasum -a 256 <file>                 # macOS / Linux
certutil -hashfile <file> SHA256     # Windows

v1.0.34

Choose a tag to compare

@github-actions github-actions released this 12 Aug 16:33

LocalLens Agent v1.0.34

Organize your photo library by talking to Claude. Everything runs on your machine — no uploads, no cloud, not even metadata.

LocalLens MCP Agent connects Claude Desktop (or any MCP-compatible AI assistant) to your local LocalLens photo organizer.

✨ Highlights

  • LocalLens is in a free preview — every Pro feature is unlocked for everyone right now, no license required.
  • Anyone using LocalLens during the free preview keeps Pro permanently once paid plans launch. You will not be charged.
  • The assistant and tray no longer suggest upgrading to Pro for features that are already unlocked during the preview.

🔧 What Changed

Added

  • LocalLens is in a free preview — every Pro feature is unlocked for everyone right now, no license required.
  • Anyone using LocalLens during the free preview keeps Pro permanently once paid plans launch. You will not be charged.

Fixed

  • The assistant and tray no longer suggest upgrading to Pro for features that are already unlocked during the preview.

📦 Install

macOS — Homebrew (recommended)

brew install ashesbloom/locallens/locallens-agent

Homebrew clears Gatekeeper for you — there is nothing else to run. Launch LocalLens Agent from Applications and look for the LL icon in your menu bar.

macOS — DMG

  1. Download locallens-agent-v1.0.34-macos-arm64.dmg

  2. Open it and drag LocalLens Agent to Applications

  3. Clear Gatekeeper — the app is not yet notarized by Apple, so macOS will say it is damaged or from an unidentified developer until you do this:

    Double-click the Fix LocalLens Agent.command file included in the DMG, or run this once in Terminal:

    xattr -cr "/Applications/LocalLens Agent.app" && codesign --force --deep --sign - "/Applications/LocalLens Agent.app"
  4. Launch from Applications — the LL icon appears in your menu bar

Prefer Homebrew if you can. It skips this step entirely.

Windows

  1. Download locallens-agent-v1.0.34-windows-x86_64-setup.exe
  2. Run it. SmartScreen may warn about an unknown publisher — choose More info → Run anyway
  3. The tray icon appears in your notification area

MCP binary only (macOS / Linux / Windows)

For running the MCP server without the tray app:

# extract the archive for your platform, then:
./locallens-mcp --setup-claude

On Windows that is .\locallens-mcp.exe --setup-claude. Restart Claude Desktop to activate.


⬆️ Already have LocalLens Agent?

Open the LocalLens tray menu → Check for Updates → Install Update. It downloads, verifies the checksum and installs for you.

Homebrew users can instead run:

brew upgrade --cask locallens-agent

Installed from source or pip? pip install --upgrade locallens-mcp.


🎉 Free preview — everything is unlocked

There is no store yet, so there is nothing to buy. Every tool below runs for
everyone, with no license key:

Available now
Sort by Date, Location, or People
Find & Group — including by person
Folder analysis, saved path presets, stats
Batch face enrollment
Duplicate detection & cleanup
Export reports
Scheduled auto-organize & active folders

If you're using LocalLens now, you keep all of this for free, permanently
even after paid plans launch. That's not a trial period ending; it's a thank-you
for being here early. See locallensmcp.vercel.app/#pricing
for how it works.


📥 All downloads

Platform File Type
macOS (Apple Silicon) locallens-agent-v1.0.34-macos-arm64.dmg Menu Bar App
Windows (x64) locallens-agent-v1.0.34-windows-x86_64-setup.exe Installer
macOS (Apple Silicon) locallens-mcp-v1.0.34-macos-arm64.zip MCP Binary
Windows (x64) locallens-mcp-v1.0.34-windows-x86_64.zip MCP Binary
Linux (x64) locallens-mcp-v1.0.34-linux-x86_64.tar.gz MCP Binary

🚀 Getting started

  1. Install the LocalLens desktop app and run it once — download
  2. Install LocalLens Agent using any method above
  3. Restart Claude Desktop
  4. Ask Claude: "Check if LocalLens is running"

Then try "What can LocalLens do?" for a guided tour of all 26 tools.


🔗 Links


Built with privacy in mind. Your photos never leave your machine.


🔐 Verify your download

Both installers are unsigned, so it is worth checking the SHA256 before you run them.

Asset SHA256
locallens-agent-v1.0.34-macos-arm64.dmg 791a58277a61b7129b933a46f401bb00cc0c4c77d05dd895d4030d974b8cc029
locallens-agent-v1.0.34-windows-x86_64-setup.exe 8cdab99c9d7d273ae93d47079464f92cbe194c6fb732f96a5bebe3c8b12ca2aa
shasum -a 256 <file>                 # macOS / Linux
certutil -hashfile <file> SHA256     # Windows

v1.0.33

Choose a tag to compare

@github-actions github-actions released this 11 Aug 16:24

LocalLens Agent v1.0.33

Organize your photo library by talking to Claude. Everything runs on your machine — no uploads, no cloud, not even metadata.

LocalLens MCP Agent connects Claude Desktop (or any MCP-compatible AI assistant) to your local LocalLens photo organizer.

✨ Highlights

  • Pro licenses can now be subscriptions as well as one-time purchases — they renew automatically, and a 14-day offline grace period means a failed renewal check never locks you out mid-trip.
  • License terms and default config no longer point at the dead locallens.app domain.
  • Upgrade prompts in the tray, README and in-chat help updated for the new pricing model — no longer claim "no subscription" and no longer list Smart Album Suggestions.

🔧 What Changed

Added

  • Pro licenses can now be subscriptions as well as one-time purchases — they renew automatically, and a 14-day offline grace period means a failed renewal check never locks you out mid-trip.

Fixed

  • License terms and default config no longer point at the dead locallens.app domain.

Changed

  • Upgrade prompts in the tray, README and in-chat help updated for the new pricing model — no longer claim "no subscription" and no longer list Smart Album Suggestions.

📦 Install

macOS — Homebrew (recommended)

brew install ashesbloom/locallens/locallens-agent

Homebrew clears Gatekeeper for you — there is nothing else to run. Launch LocalLens Agent from Applications and look for the LL icon in your menu bar.

macOS — DMG

  1. Download locallens-agent-v1.0.33-macos-arm64.dmg

  2. Open it and drag LocalLens Agent to Applications

  3. Clear Gatekeeper — the app is not yet notarized by Apple, so macOS will say it is damaged or from an unidentified developer until you do this:

    Double-click the Fix LocalLens Agent.command file included in the DMG, or run this once in Terminal:

    xattr -cr "/Applications/LocalLens Agent.app" && codesign --force --deep --sign - "/Applications/LocalLens Agent.app"
  4. Launch from Applications — the LL icon appears in your menu bar

Prefer Homebrew if you can. It skips this step entirely.

Windows

  1. Download locallens-agent-v1.0.33-windows-x86_64-setup.exe
  2. Run it. SmartScreen may warn about an unknown publisher — choose More info → Run anyway
  3. The tray icon appears in your notification area

MCP binary only (macOS / Linux / Windows)

For running the MCP server without the tray app:

# extract the archive for your platform, then:
./locallens-mcp --setup-claude

On Windows that is .\locallens-mcp.exe --setup-claude. Restart Claude Desktop to activate.


⬆️ Already have LocalLens Agent?

Open the LocalLens tray menu → Check for Updates → Install Update. It downloads, verifies the checksum and installs for you.

Homebrew users can instead run:

brew upgrade --cask locallens-agent

Installed from source or pip? pip install --upgrade locallens-mcp.


🔑 Free vs Pro

Free is a complete photo organizer, not a trial.

Free Pro
Sort by Date
Sort by Location
Sort by People (face recognition)
Find & Group — including by person
See who is enrolled
Folder analysis, saved path presets, stats
Batch face enrollment
Duplicate detection & cleanup
Export reports
Scheduled auto-organize & active folders

Upgrade from the tray menu → Plan, or see current plans and pricing at locallensmcp.vercel.app.

Already have a key? Ask Claude: "activate my pro license".


📥 All downloads

Platform File Type
macOS (Apple Silicon) locallens-agent-v1.0.33-macos-arm64.dmg Menu Bar App
Windows (x64) locallens-agent-v1.0.33-windows-x86_64-setup.exe Installer
macOS (Apple Silicon) locallens-mcp-v1.0.33-macos-arm64.zip MCP Binary
Windows (x64) locallens-mcp-v1.0.33-windows-x86_64.zip MCP Binary
Linux (x64) locallens-mcp-v1.0.33-linux-x86_64.tar.gz MCP Binary

🚀 Getting started

  1. Install the LocalLens desktop app and run it once — download
  2. Install LocalLens Agent using any method above
  3. Restart Claude Desktop
  4. Ask Claude: "Check if LocalLens is running"

Then try "What can LocalLens do?" for a guided tour of all 26 tools.


🔗 Links


Built with privacy in mind. Your photos never leave your machine.


🔐 Verify your download

Both installers are unsigned, so it is worth checking the SHA256 before you run them.

Asset SHA256
locallens-agent-v1.0.33-macos-arm64.dmg a9c74a07ba560ab3f3929010fa841e3739a8ed5cf8a97faab6cf8a84db667ae3
locallens-agent-v1.0.33-windows-x86_64-setup.exe 124f61221e6c352ec620fe5273b5cba84f274969800b383111438dc5c73c6b0c
shasum -a 256 <file>                 # macOS / Linux
certutil -hashfile <file> SHA256     # Windows

v1.0.32

Choose a tag to compare

@github-actions github-actions released this 07 Aug 21:42

LocalLens Agent v1.0.32

Organize your photo library by talking to Claude. Everything runs on your machine — no uploads, no cloud, not even metadata.

LocalLens MCP Agent connects Claude Desktop (or any MCP-compatible AI assistant) to your local LocalLens photo organizer.

✨ Highlights

  • License & Plans in the tray menu — your tier, activation date, and exactly what Free and Pro include
  • Sort by People is free — corrected everywhere; only batch face enrolment is Pro
  • LocalLens questions are answered from the built-in guide, never from a web search
  • Update instructions match how you installed — app users get the tray flow, not a pip command
  • Updates refuse a mismatched or unverified download instead of silently reinstalling an older build
  • All links now point to locallensmcp.vercel.app — the old locallens.app address is no longer ours

🔧 What Changed

Added

  • License & Plans in the tray menu — your tier, activation date, and exactly what Free and Pro include

Fixed

  • Sort by People is free — corrected everywhere; only batch face enrolment is Pro
  • LocalLens questions are answered from the built-in guide, never from a web search
  • Update instructions match how you installed — app users get the tray flow, not a pip command
  • Updates refuse a mismatched or unverified download instead of silently reinstalling an older build

Improved

  • All links now point to locallensmcp.vercel.app — the old locallens.app address is no longer ours

📦 Install

macOS — Homebrew (recommended)

brew install ashesbloom/locallens/locallens-agent

Homebrew clears Gatekeeper for you — there is nothing else to run. Launch LocalLens Agent from Applications and look for the LL icon in your menu bar.

macOS — DMG

  1. Download locallens-agent-v1.0.32-macos-arm64.dmg

  2. Open it and drag LocalLens Agent to Applications

  3. Clear Gatekeeper — the app is not yet notarized by Apple, so macOS will say it is damaged or from an unidentified developer until you do this:

    Double-click the Fix LocalLens Agent.command file included in the DMG, or run this once in Terminal:

    xattr -cr "/Applications/LocalLens Agent.app" && codesign --force --deep --sign - "/Applications/LocalLens Agent.app"
  4. Launch from Applications — the LL icon appears in your menu bar

Prefer Homebrew if you can. It skips this step entirely.

Windows

  1. Download locallens-agent-v1.0.32-windows-x86_64-setup.exe
  2. Run it. SmartScreen may warn about an unknown publisher — choose More info → Run anyway
  3. The tray icon appears in your notification area

MCP binary only (macOS / Linux / Windows)

For running the MCP server without the tray app:

# extract the archive for your platform, then:
./locallens-mcp --setup-claude

On Windows that is .\locallens-mcp.exe --setup-claude. Restart Claude Desktop to activate.


⬆️ Already have LocalLens Agent?

Open the LocalLens tray menu → Check for Updates → Install Update. It downloads, verifies the checksum and installs for you.

Homebrew users can instead run:

brew upgrade --cask locallens-agent

Installed from source or pip? pip install --upgrade locallens-mcp.


🔑 Free vs Pro

Free is a complete photo organizer, not a trial.

Free Pro
Sort by Date
Sort by Location
Sort by People (face recognition)
Find & Group — including by person
See who is enrolled
Folder analysis, saved path presets, stats
Batch face enrollment
Duplicate detection & cleanup
Export reports
Smart album suggestions
Scheduled auto-organize & active folders

One-time purchase, no subscription. Upgrade from the tray menu → Plan, or see plans at locallensmcp.vercel.app.

Already have a key? Ask Claude: "activate my pro license".


📥 All downloads

Platform File Type
macOS (Apple Silicon) locallens-agent-v1.0.32-macos-arm64.dmg Menu Bar App
Windows (x64) locallens-agent-v1.0.32-windows-x86_64-setup.exe Installer
macOS (Apple Silicon) locallens-mcp-v1.0.32-macos-arm64.zip MCP Binary
Windows (x64) locallens-mcp-v1.0.32-windows-x86_64.zip MCP Binary
Linux (x64) locallens-mcp-v1.0.32-linux-x86_64.tar.gz MCP Binary

🚀 Getting started

  1. Install the LocalLens desktop app and run it once — download
  2. Install LocalLens Agent using any method above
  3. Restart Claude Desktop
  4. Ask Claude: "Check if LocalLens is running"

Then try "What can LocalLens do?" for a guided tour of all 26 tools.


🔗 Links


Built with privacy in mind. Your photos never leave your machine.


🔐 Verify your download

Both installers are unsigned, so it is worth checking the SHA256 before you run them.

Asset SHA256
locallens-agent-v1.0.32-macos-arm64.dmg 2168b9eb75b32ce7afc1c2bd66ffbb419febecda99bbea9fe6a3b3c9e3619646
locallens-agent-v1.0.32-windows-x86_64-setup.exe 959b54d632dae8ab104367197f1d6c3d537c74a25b17ee6ed6225d15ce49e0a8
shasum -a 256 <file>                 # macOS / Linux
certutil -hashfile <file> SHA256     # Windows

v1.0.31

Choose a tag to compare

@github-actions github-actions released this 02 Aug 14:44
release: v1.0.31

v1.0.30

Choose a tag to compare

@github-actions github-actions released this 28 Jul 18:54
v1.0.30 — pin mcp<2.0.0, fixes broken v1.0.29 build

v1.0.29

Choose a tag to compare

@github-actions github-actions released this 28 Jul 18:46
v1.0.29 — connector exclusion fix, deferred-tool-loading support

v1.0.28

Choose a tag to compare

@github-actions github-actions released this 27 Jul 06:16
- Replaced Windows/macOS/installer branding with the new ll_red_trans logo (exe icons, DMG volume icon, NSIS installer, installer welcome screen)
- Windows tray icon now renders a theme-aware "LL" wordmark instead of a fixed dark logo, fixing invisibility on dark taskbars

v1.0.27

Choose a tag to compare

@github-actions github-actions released this 27 Jul 04:57
feat: shape-coded tray status indicators (fixes Windows rendering)

The status indicators were astral-plane emoji (U+1F534 etc.) that live only
in Segoe UI Emoji. Win32 MessageBoxW and the pystray Win32 menus draw through
GDI, which has no color-emoji fallback, so all four collapsed to the same gray
disc — the Help & Getting Started legend was unreadable on Windows.

Replaces them with Geometric Shapes (U+25xx) that encode state by shape, so
they survive monochrome rendering and red-green color blindness alike:

  ○ idle   ◎ working   ● live   ◆ app-managed   ▲ needs attention

Also:
- Consolidates the glyphs into one source in actions.py; they were duplicated
  across both trays and hardcoded a third time inside _HELP_TEXT.
- Adds STATUS_ALERT so "Connection Error" and "Update Available" stop looking
  identical to "idle" — two states that need very different user actions.
- Fixes the Check Connection dialog leading with a check mark above
  "Binary: Invalid/Missing".
- Rewrites the help legend to describe shapes and document all five states.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>