{
 "batch": "deep-42",
 "setup": "Hermes installed from source (git clone --depth 1 NousResearch/hermes-agent, uv sync --locked --python 3.14, Python 3.14.10 fetched by uv into the scratch dir); `hermes plugins --help` lists install/validate/doctor. tryit.py from the gist ran each plugin at its pinned commit against Hermes's fake_llm_provider. Hermes offers plugin tools as deferred tools (reached through tool_call), so added_by_plugin is empty for all six; doctor's registration counts and the planned calls show what each added. Plugin tests run with the Hermes venv Python plus pytest/pyyaml/plugin deps in a separate target dir, Hermes source off PYTHONPATH. Machine has no Cast device, no OBS, no working headless Chrome under the sandbox, no PowerShell, and no DNS for edge-tts.",
 "plugins": [
  {
   "pr": 153978,
   "name": "imprint",
   "validate": "passed (exit 0, every check ok); one warning: desktop surface review, catalog rule 8, app markup selectors at desktop/plugin.js:2730, 7199, 7200, 7430-7432, 7531, desktop/src/designs.js:200 (+6 more)",
   "inside": "loaded and enabled; doctor: import and registration passed, 0 tools, 0 hooks (registers only the auxiliary task imprint_write and hands ctx to its dashboard routes); everything is a Desktop page, so no agent call could be planned and the notebook UI could not be driven here",
   "tests": "698 passed, 29 failed, 2 skipped, 4857 subtests passed; the failures are tests that launch headless Chrome ('Chrome closed' in this sandbox) and design jobs that depend on it ('None of the three designs came back'), plus a JS cache test",
   "useful": 4,
   "reliable": 3,
   "polish": 5,
   "creative": 4,
   "beyond": 4,
   "total": 24,
   "rank": 4,
   "best": "A full NotebookLM-style notebook inside Hermes Desktop on the user's own Hermes model, with code that checks every number and quote against cited source passages before export.",
   "worst": "Nothing the agent can call: it is a 7,900-line bundled Desktop app that the catalog check flags for reaching into app markup outside the SDK, and much of its value depends on a local Chrome.",
   "blocked": null
  },
  {
   "pr": 151929,
   "name": "promise-keeper",
   "validate": "passed (exit 0, every check ok); one warning: private core import tools.terminal_tool.get_session_cwd in __init__.py:57 (other flagged imports are in scripts/live_e2e.py)",
   "inside": "loaded and enabled; doctor: 0 tools, 3 hooks (pre_llm_call, transform_llm_output, pre_tool_call) plus tool_execution middleware. Chat 'Never touch the prod folder, it's live.' made it append a proposed rule R1 quoting the user, not enforced until /promise confirm; write_file and rm -rf into prod then ran as designed (unconfirmed). Its scripts/live_e2e.py against this real Hermes: 19/19 PASS (confirm, blocks write_file/terminal rm/nested bash -c/patch/parent delete with the user's words quoted, middleware alone blocks, agent cannot delete rules.db, revoke works). Bad input write_file {} got Hermes's missing-field error.",
   "tests": "664 passed, 11 failed, 8 skipped, 2 xfailed; all 11 failures are its own red-team cases for Windows shell/path evasions it does not yet block (del /q prod\\*, cmd /c for ... del, trailing-dot names like 'rm -rf prod.', Git Bash colon paths)",
   "useful": 5,
   "reliable": 4,
   "polish": 4,
   "creative": 4,
   "beyond": 5,
   "total": 27,
   "rank": 1,
   "best": "Deterministic, model-independent enforcement of the user's own spoken rules on every tool call, confirmed only by a human and quoting their words back when it blocks, verified live inside Hermes.",
   "worst": "Its own red-team suite fails 11 Windows-shell and trailing-dot evasions, so the 'best effort' terminal layer still has documented holes.",
   "blocked": null
  },
  {
   "pr": 151604,
   "name": "plur1bus",
   "validate": "passed (exit 0, every check ok, with --install-deps); warning: private core imports plugins.memory.config_schema.* in config_schema.py:3",
   "inside": "NOT enabled: `hermes plugins enable plur1bus` refused twice ('venv: uv lock exited 2: Failed to generate package metadata for plur1bus-hermes==7.19.3.post1 @ editable+plugin-sources/... Distribution not found'), though the same folder resolves with plain `uv pip install --dry-run`. Doctor imported it (0 tools, 0 hooks; it registers a memory provider and an RPC); no memory call could be made",
   "tests": "not run: the Python tests live outside the catalog folder (plur1bus-hermes/tests, 139 files) and need the lancedb/sentence-transformers/onnx stack, which Hermes would not install for it here",
   "useful": 4,
   "reliable": 2,
   "polish": 3,
   "creative": 3,
   "beyond": 5,
   "total": 22,
   "rank": 6,
   "best": "A full persistent memory provider for Hermes (semantic recall, reranking, consolidation, Obsidian bridge) with secrets read through Hermes's profile secret scope and a Desktop dashboard.",
   "worst": "Hermes refused to enable it in this run, and the catalog folder is a slice of a 2,150-file OpenClaw-era repo whose __init__ only works once a separately built plur1bus_hermes package is installed.",
   "blocked": null
  },
  {
   "pr": 149426,
   "name": "pinpoint",
   "validate": "passed (exit 0, every check ok, no warnings)",
   "inside": "loaded and enabled; doctor: 2 tools (pinpoint_audit, pinpoint_pins). pinpoint_audit with no Desktop returned a clean desktop_unavailable after 4 s with what to tell the user; pinpoint_pins list for a URL returned an empty pin set; pinpoint_pins action 'explode' was rejected by schema validation before running",
   "tests": "298 passed, 6 skipped, 6 errors; the errors are tests/e2e (need PowerShell, Windows only) and tests/engine was skipped for needing playwright; manifest says 'Verified on Windows 11 only'",
   "useful": 3,
   "reliable": 4,
   "polish": 5,
   "creative": 4,
   "beyond": 4,
   "total": 24,
   "rank": 5,
   "best": "Gives the agent measured evidence (contrast ratios, sizes, selectors, before/after delta) from the live page in Desktop's Browser pane, closing the edit-and-check loop for front-end fixes.",
   "worst": "Useful only to people doing web work in Hermes Desktop's Browser pane, and its end-to-end path is verified on Windows only.",
   "blocked": null
  },
  {
   "pr": 153960,
   "name": "on-air",
   "validate": "passed (exit 0, every check ok, no warnings)",
   "inside": "loaded and enabled as a platform plugin; doctor: 24 tools, 3 hooks. onair_setup_status, onair_setup_schema, onair_stage_status and onair_stage_plan all refused cleanly in this headless in-process session ('No owner session could be established for this call; nothing was read or changed', fail-closed); onair_preview_safety action 'approve' rejected by schema. `hermes onair rehearse` ran its synthetic offline show: 6 chat, 3 turns, 5 approved, 1 line withheld by the guard (a base64 decode bait), 5 captions",
   "tests": "2330 passed, 1 failed, 114 skipped; the failure starts a real stage gateway, which could not get its control listener in this sandbox",
   "useful": 3,
   "reliable": 4,
   "polish": 5,
   "creative": 5,
   "beyond": 5,
   "total": 27,
   "rank": 2,
   "best": "A guarded AI co-host for live streams as a Hermes platform: chat gate and output guard, owner approval desk, OBS layouts and captions, with agent tools that can stop but never approve.",
   "worst": "A large, complex surface (24 tools, 2,300+ tests, many docs) for a streamer niche, and none of its setup tools answer outside an owner CLI or Desktop session.",
   "blocked": null
  },
  {
   "pr": 153826,
   "name": "googlehome",
   "validate": "passed (exit 0, every check ok); warnings: private core imports (hermes_cli.profiles, tools.voice_mode, tools.tts_tool, cron.jobs) and raw window.hermesDesktop bridge in desktop/plugin.js:163, 564",
   "inside": "loaded and enabled as a platform plugin; doctor: 5 tools, 2 hooks. googlehome_status: clean 'no Cast device discovered'; googlehome_devices timeout 2: ok, 0 devices; googlehome_speak: clean tts_unavailable error naming each backend tried (edge DNS failed, SAPI Windows-only); googlehome_volume level 500 rejected by schema (max 100). `hermes googlehome` CLI lists check/devices/speak/notify/status/cron/firewall",
   "tests": "293 passed, 1 skipped (after adding PyYAML to the test env; without it 6 config tests fail on import)",
   "useful": 3,
   "reliable": 4,
   "polish": 5,
   "creative": 4,
   "beyond": 5,
   "total": 26,
   "rank": 3,
   "best": "Puts a Hermes profile's voice on a Cast-only Google Home speaker with a reverse-engineered, zero-dependency Cast v2 client, cron announcements and a Desktop push-to-talk page.",
   "worst": "It leans on private Hermes internals and a raw Desktop bridge the catalog check warns about, and the speaker can only talk, never listen.",
   "blocked": null
  }
 ]
}