{
  "batch": "read1-004",
  "plugins": [
    {
      "pr": 0,
      "name": "done-bell",
      "does": "Notifies users when Hermes finishes a turn or needs approval, with mute controls and a Desktop status pane.",
      "useful": 4,
      "reliable": 3,
      "polish": 3,
      "creative": 2,
      "beyond": 4,
      "total": 20,
      "best": "Lifecycle hooks and a Desktop busy-state watcher make completion and approval alerts work beyond a chat prompt.",
      "worst": "Installation docs use an author-specific Windows path and manual pane copying, while tests omit the Desktop notification path.",
      "standout": false,
      "blocked": null
    },
    {
      "pr": 0,
      "name": "homeassistant",
      "does": "Connects Hermes to Home Assistant device tools, filtered state-change events, and notification delivery.",
      "useful": 4,
      "reliable": 5,
      "polish": 4,
      "creative": 3,
      "beyond": 5,
      "total": 26,
      "best": "A genuine gateway platform combines event subscriptions, scoped credentials, entity restrictions and substantial policy tests.",
      "worst": "Entity restrictions are opt-in, and permitted scripts or automations can still have effects beyond their named entity.",
      "standout": false,
      "blocked": null
    },
    {
      "pr": 153925,
      "name": "interview-prep-coach",
      "does": "Packages nine skills for public-source interviewer research, tailored answers, mock interviews and follow-up drafts.",
      "useful": 3,
      "reliable": 3,
      "polish": 3,
      "creative": 2,
      "beyond": 1,
      "total": 13,
      "best": "Clear candidate-focused workflows require cited research and answers grounded in the user’s actual experience.",
      "worst": "The pinned package contains only Markdown skills and a manifest, adding no executable tools, hooks or service integration.",
      "standout": false,
      "blocked": null
    },
    {
      "pr": 150294,
      "name": "garmin-connect",
      "does": "Reads Garmin health and activity data, computes personal baselines and training-intensity flags, and displays them in Hermes Desktop.",
      "useful": 3,
      "reliable": 5,
      "polish": 5,
      "creative": 3,
      "beyond": 4,
      "total": 24,
      "best": "Deterministic calculations, a finished Desktop panel and extensive credential, timeout and data-edge tests make a strong personal-data integration.",
      "worst": "Its audience needs a Garmin account and compatible device, and health interpretation remains dependent on wrist-sensor estimates and Garmin’s service.",
      "standout": false,
      "blocked": null
    },
    {
      "pr": 149582,
      "name": "agentci",
      "does": "Runs prompt-based Hermes regression suites and model comparisons using session records, file hashes and generated reports.",
      "useful": 4,
      "reliable": 1,
      "polish": 4,
      "creative": 4,
      "beyond": 4,
      "total": 21,
      "best": "Checks real workspace changes, tool usage and token consumption rather than relying on the agent’s assertion of success.",
      "worst": "The runner unconditionally starts Hermes with --yolo without a sandbox or approval gate, violating the catalog’s child-process approval rule.",
      "standout": false,
      "blocked": null
    },
    {
      "pr": 150708,
      "name": "hermes-guild",
      "does": "Provides a local collaboration registry with skill matching, owner-reviewed connections and deliveries, and signed reputation exports.",
      "useful": 3,
      "reliable": 1,
      "polish": 3,
      "creative": 4,
      "beyond": 3,
      "total": 17,
      "best": "A substantial registry implements explainable matching, proposal review and portable reputation with lifecycle and tampering tests.",
      "worst": "The HTTP registry generates and returns users’ private keys despite claims they never leave the client, and the Hermes command/tools are hardwired to the local registry.",
      "standout": false,
      "blocked": null
    },
    {
      "pr": 150689,
      "name": "omonpakari",
      "does": "Maintains a health journal, cycle ranges, interaction checks and pressure correlations, and injects a compact personal context note before replies.",
      "useful": 3,
      "reliable": 3,
      "polish": 4,
      "creative": 4,
      "beyond": 4,
      "total": 22,
      "best": "Persistent typed records and tested, nonblocking context assembly make the agent’s everyday suggestions more personally informed.",
      "worst": "Health context is enabled by default across the profile’s human chats, including shared chats, while several interaction references are only generic literature labels.",
      "standout": false,
      "blocked": null
    },
    {
      "pr": 151444,
      "name": "linear-agent",
      "does": "Bridges Linear agent sessions to Hermes runs and posts replies under the app’s own identity, with profile routing and setup diagnostics.",
      "useful": 4,
      "reliable": 2,
      "polish": 5,
      "creative": 3,
      "beyond": 4,
      "total": 22,
      "best": "Signature verification, delivery deduplication, capacity handling and app-authored replies form a well-developed workflow with extensive tests and a recorded demo.",
      "worst": "It directly stores, loads and refreshes Linear OAuth tokens in linear-tokens.json instead of using Hermes’s required OAuth credential route.",
      "standout": false,
      "blocked": null
    },
    {
      "pr": 152592,
      "name": "pmp-handoff-bridge",
      "does": "Packages selected project-memory files, verifies byte integrity separately from workspace drift, and saves reception receipts.",
      "useful": 3,
      "reliable": 4,
      "polish": 3,
      "creative": 3,
      "beyond": 3,
      "total": 19,
      "best": "Strict schema, size and path checks plus negative tests support honest, append-only handoffs without treating inherited claims as verified truth.",
      "worst": "It serves a narrow PMP 0.2.2 workflow with manual package transfer and provides no authentication beyond an optionally supplied trusted digest.",
      "standout": false,
      "blocked": null
    },
    {
      "pr": 151436,
      "name": "patch-sentinel",
      "does": "Audits Linux patch posture, running kernels, package integrity, containers and language dependencies, then prepares plans and gated upgrades.",
      "useful": 4,
      "reliable": 4,
      "polish": 5,
      "creative": 4,
      "beyond": 4,
      "total": 25,
      "best": "Evidence-based clean/finding/unknown states, broad fixture tests and an integrated Desktop pane turn a host audit into an actionable workflow.",
      "worst": "Coverage remains uneven across Linux families, excludes image-layer CVEs, and offers no macOS or Windows support.",
      "standout": true,
      "blocked": null
    },
    {
      "pr": 149747,
      "name": "hermes-decay-context",
      "does": "Replaces context compression with eviction and rolling digests, and reinjects stored operator directives through a pre-model hook.",
      "useful": 4,
      "reliable": 2,
      "polish": 3,
      "creative": 4,
      "beyond": 5,
      "total": 23,
      "best": "A real context-engine extension preserves recent tool-call structure and includes tested pruning and deterministic digest fallbacks.",
      "worst": "Fresh installs have no wired pin-capture path, and optional router sizing reads an API key directly from config.yaml instead of Hermes’s secret scope.",
      "standout": false,
      "blocked": null
    },
    {
      "pr": 153194,
      "name": "stageglass",
      "does": "Publishes a redacted local audience overlay of Hermes prompts, tool steps and approvals, controlled by ON AIR, HOLD and OFF modes.",
      "useful": 3,
      "reliable": 3,
      "polish": 4,
      "creative": 4,
      "beyond": 4,
      "total": 22,
      "best": "Redaction happens before feed storage and again before HTML/SSE publication, with uncertainty holds and explicit broadcast controls.",
      "worst": "A single process-global feed ignores session identity, so simultaneous sessions in one host process can mix their content while broadcasting is enabled.",
      "standout": false,
      "blocked": null
    }
  ]
}