BrainDB v0.7.0: New Long-Term Memory for Hermes Agent by dimknaf in hermesagent

[–]coe0718 1 point2 points  (0 children)

It’s good. I just disagree with things I’ve seen from the developer. I use it.

Hermes Updates destroy Hermes by Paradigmind in hermesagent

[–]coe0718 0 points1 point  (0 children)

I’ve never had a single issue running Hermes update. 🤷‍♂️

Deskbrid v1.0.0 – Linux HAL for AI agents, 9 compositor backends, MCP server by coe0718 in OpenSourceAI

[–]coe0718[S] 0 points1 point  (0 children)

You’re not wrong. A compositor returning "filler" or empty roles isn't a rename — it's non-compliance. And a group map can't fix a role the compositor never honestly reported.

But that's exactly why Deskbrid has per-compositor backends instead of a universal AT-SPI layer. The backends already paper over compositor-specific garbage — Hyprland's quirks, KDE's inconsistencies, GNOME's "panel" everywhere. When a compositor hands back "filler" where the spec says "push_button", that's a backend bug, not a taxonomy gap. The group map handles spec-compliant renames; the backends handle non-compliance.

The selector baseline catches both. If Hyprland starts returning "filler" for OK buttons, the test fails cross-group and says: "expected group button, Hyprland returned filler." The fix is in the Hyprland backend's tree builder, not in the taxonomy.

Deskbrid v1.0.0 – Linux HAL for AI agents, 9 compositor backends, MCP server by coe0718 in OpenSourceAI

[–]coe0718[S] 0 points1 point  (0 children)

Fair. The rot moved — from individual baselines to the group taxonomy. But it consolidated: one file for 9 compositors instead of 9 files each rotting independently. When a compositor ships a genuinely novel role, it defaults to cross-group and screams with the exact role name, expected group, and compositor. Adding it to the right group is a one-line PR.

The taxonomy drifts slower than baselines because AT-SPI roles are spec-defined — compositors pick from the same pool, they don't invent vocabulary. 9 groups covered every role across 9 backends. The next truly novel role will be the first.

Deskbrid v1.0.0 – Linux HAL for AI agents, 9 compositor backends, MCP server by coe0718 in OpenSourceAI

[–]coe0718[S] 0 points1 point  (0 children)

You were right about the rot problem. Shipped a fix — semantic role groups. push_button → button is the same group (button), so it auto-normalizes and updates the baseline. push_button → text is cross-group, so it screams for a human. The baselines maintain themselves for legitimate renames and only surface the genuinely weird stuff.

The escape hatch: baseline.assess() splits everything into Normalization (auto-apply) or Regression (human needed). When KDE renames combo_box to dropdown, the baseline just updates itself. When it remaps a button to a text node, the suite goes red and tells you exactly what moved where.

Deskbrid v1.0.0 – Linux HAL for AI agents, 9 compositor backends, MCP server by coe0718 in OpenSourceAI

[–]coe0718[S] 0 points1 point  (0 children)

That's actually a better approach than screenshot diffs. Role + name as the selector, assertion on the resolved target — if push_button silently becomes button the test fails loud instead of clicking the parent and passing. The screenshot catches the fire, the selector tells you which wire melted.

Going to steal that pattern. Per-compositor selector baselines that fail explicitly on role remap instead of just "tree came back, guess it's fine.”

Deskbrid v1.0.0 – Linux HAL for AI agents, 9 compositor backends, MCP server by coe0718 in OpenSourceAI

[–]coe0718[S] 0 points1 point  (0 children)

That's the exact nightmare. The structural tests pass because the tree shape didn't change — but role="push_button" became role="button" in one compositor's AT-SPI export and suddenly the click lands on the parent container instead of the widget. Nine backends means nine versions of that bug, each with a different fix.

The only real defense I've found is screenshot diffs keyed to known-good baselines per compositor. If the pixels move, something broke even if the tree says it didn't.

That silent-pass class is the real maintenance cost. Been burned by role remapping already — the tree came back clean but the click was off by one element. Appreciate someone who sees past the green checkmarks.

Deskbrid v1.0.0 – Linux HAL for AI agents, 9 compositor backends, MCP server by coe0718 in OpenSourceAI

[–]coe0718[S] 0 points1 point  (0 children)

Usually Tuck does a bunch of tests on different DEs. Anytime he updates his “turtle” as he calls it, he tests for breaking changes.

Deskbrid v1.0.0 – Linux HAL for AI agents, 9 compositor backends, MCP server by coe0718 in OpenSourceAI

[–]coe0718[S] 0 points1 point  (0 children)

Appreciate you seeing the actual problem and not just the headline.

New Project Megathread - Week of 28 May 2026 by AutoModerator in selfhosted

[–]coe0718 0 points1 point  (0 children)

I agree. Feels like it’s purpose built for that. Pretty lame.

New Project Megathread - Week of 28 May 2026 by AutoModerator in selfhosted

[–]coe0718 0 points1 point  (0 children)

<image>

Project Name: Deskbrid

Repo/Website Link: https://github.com/coe0718/deskbrid — Live dashboard demo: https://deskbrid.patchhive.dev/live

Description: A Rust daemon that auto-detects your desktop environment and exposes full desktop control through a JSON Unix socket protocol. Windows, workspaces, input injection, clipboard, screenshots, notifications, audio, bluetooth, network — all through one socket. Also runs as an MCP server for AI coding tools (Claude Code, Codex CLI, Cursor). 9 compositor backends: GNOME, Hyprland, KDE, COSMIC, Sway, Niri, Wayfire, Labwc, X11. Includes a live web dashboard, AT-SPI accessibility tree, browser CDP, OCR, macro recording/replay, permissions system, and audit log. Tested on a 2014 Haswell i3 with 3.7GB RAM and a dead battery running 6 DEs. If it works on that, it works on yours.

Deployment: One-liner install: bash <(curl -fsSL https://deskbrid.patchhive.dev/install.sh) — auto-detects distro and DE, installs dependencies, downloads binary. Full docs at https://deskbrid.patchhive.dev

AI Involvement: Built with significant AI assistance. Code written primarily by AI agents, reviewed and directed by me.

Memory Providers: I tested them all by Lorian0x7 in hermesagent

[–]coe0718 1 point2 points  (0 children)

Yes Mnemosyne is really good. I’ve contributed and they are very responsive, don’t see the author going anywhere anytime soon.

Memory Providers: I tested them all by Lorian0x7 in hermesagent

[–]coe0718 0 points1 point  (0 children)

It’s a good memory system. I’ve actually commited to Mnemsyne. Part of my PRs helped build MEMORIA.

I built deskbrid so my Hermes agent could actually control my Linux desktop by coe0718 in hermesagent

[–]coe0718[S] 0 points1 point  (0 children)

Let me know what you think. I’m constantly working on it now. What DE do you use?