{
  "sources": [
    {
      "url": "https://raw.githubusercontent.com/aydnOktay/hermes-done-bell-/3fa519a291d91b0e6c44bd42762190363ce80c39/README.md",
      "quote": "Hermes plugin: **ring when a turn finishes** so you can leave the window."
    },
    {
      "url": "https://raw.githubusercontent.com/NousResearch/hermes-official-plugins/e7a218f26db88426ab3e7376f0e000b6e356f5e7/homeassistant/README.md",
      "quote": "1. **Gateway platform `homeassistant`**: subscribes to Home Assistant's WebSocket event bus and\n   forwards `state_changed` events to the agent, with domain/entity filters and per-entity cooldowns.\n   The agent's replies show up as Home Assistant persistent notifications titled \"Hermes Agent\".\n   Cron jobs can deliver to `deliver=homeassistant[:target]` through the target's own notify service\n   (`notify.mobile_app_my_phone` f"
    },
    {
      "url": "https://raw.githubusercontent.com/nerdcakes/hermes-dome-relay/4d7672b869bd2b5cd7582132c7b70e5b3a537d6f/README.md",
      "quote": "- **Escalate**: the Hermes agent saves a job, and a worker registers it with the relay (`POST /jobs`). The relay, not this plugin, wakes the Grok Bot executive.\n- **Status**: the same conversation asks for the job and gets the latest result (`GET /results` on the relay, saved in the profile database).\n- **Cancel**: stop retries and ask the relay to cancel. A cancel cannot undo a Grok run that already started.\n- **Hold local wo"
    },
    {
      "url": "https://raw.githubusercontent.com/Yonathan-T/hermes-janus/f1309349616ab11de00af4ebe2531a5c4b0928e3/README.md",
      "quote": "- **Atomic Rollback (`/janus rewind`)** \u2014 Reverts single tool mutations or multi-turn failures back to a verified clean state.\n- **Speculative Hypothesis Branches (`/janus branch`)** \u2014 Allows agents or developers to fork into isolated workspaces to test risky changes without touching the main branch.\n- **Raft-Style Tournament Consensus (`/janus elect`)** \u2014 Evaluates competing candidate branches through automated test harnesses"
    },
    {
      "url": "https://raw.githubusercontent.com/DevvGwardo/uniichat-recall/f8e61321474bb0af56989650d7d52a13816ea84c/README.md",
      "quote": "Hermes agents get recall over a UniiChat log: ask \"what did we decide about\nX\" and the provider ranks the log's records, returns the original text with\nrecord/session IDs, and **abstains when nothing in the log answers** \u2014 no\nhallucinated memory, ever."
    },
    {
      "url": "https://raw.githubusercontent.com/LukeJJones/artemis/1f2620f8ad4e54dc144c24a571fd45bb788e8215/README.md",
      "quote": "A mobile-first companion for **unmodified official Hermes Bot Mode**. Artemis opens your bots\u2019 canonical **Bot Chat** conversations using Hermes Web Access, Hermes sign-in and the host-owned gateway. It is not a Hermes fork, separate agent engine, alternate authentication service or independent history store."
    },
    {
      "url": "https://raw.githubusercontent.com/JoeisEvil/autonoma/56653cced2b4431db3c08dc680ccb5e139b6f125/README.md",
      "quote": "Autonoma is a Hermes Agent plugin that gives your agent a track record. It keeps a trust score per\nkind of action (edit files, delete files, push, send messages, spend money\u2026). Below the threshold,\nthe action goes through Hermes's own approval prompt. Clean work raises the score slowly; denials,\ncorrections and failures drop it fast. Once a kind of action has earned it, it runs without asking."
    },
    {
      "url": "https://raw.githubusercontent.com/AgentMadeThis/hermes-pocket/224c9f9b57509ce03da7c9663bd8298a56d1376e/README.md",
      "quote": "# Hermes Pocket"
    },
    {
      "url": "https://raw.githubusercontent.com/HoldingsHQ/holdings-hermes/23d47ab99805e1f14a2f13d666be8e7eaaa043a5/README.md",
      "quote": "Holdings is a Hermes Desktop plugin that shows your wallet and exchange balances in one place. You can review activity against the original records, confirm or reject suggested transfers, and export records with a note on what each source covers. It never signs transactions or moves funds. The bundled demo uses fictional records and requires no exchange or model credentials."
    },
    {
      "url": "https://raw.githubusercontent.com/davidmosiah/apple-health-mcp/94c31b8545e0d82a2d2e0eb1cb43da0e470b6d1f/agent-plugin/README.md",
      "quote": "Runs the `apple-health-mcp-unofficial@0.8.0` npm package locally over stdio through `npx` (Node.js 20+ required); the package is downloaded from npm on first start. Data source: no network service: it parses the user's own Apple Health export on disk. Tools that change state: apple_health_profile_update (local profile only); apple_health_reimport (re-reads the local export); apple_health_clear_incremental_cache (clears the loc"
    },
    {
      "url": "https://raw.githubusercontent.com/imperator-clawdius/hermes-fleet-sentinel/c78fe683225f6eb898c2076073992727075e0caa/README.md",
      "quote": "Out-of-band health checks for remote Hermes agent hosts. For each host it reports a\ncorroborated verdict (`up`, `deaf`, `down_physical`, `degraded` or `unknown`), pages when an\noutage lasts, and can restart a gateway that has gone quiet."
    },
    {
      "url": "https://raw.githubusercontent.com/Joystonm/hermes-gmi-nexus/7b2d8c5eb7578d73f4f58907f9ddfe5e2da58fe9/plugins/gmi-nexus/README.md",
      "quote": "GMI NEXUS is a Hermes Agent plugin that turns a single goal into a coordinated\nmulti-model workflow over the **live GMI Cloud catalogue**. It understands what\nwas asked, plans the work, routes each step to the model that suits it, runs\nthe steps, checks the results, recovers from failures, learns from the measured\noutcome, and reports what actually happened."
    },
    {
      "url": "https://raw.githubusercontent.com/Yonathan-T/hermes-janus/f1309349616ab11de00af4ebe2531a5c4b0928e3/hermes_janus/engine.py",
      "quote": "                    proc = subprocess.run(\n                        cmd,\n                        shell=True,\n                        cwd=str(self.workspace_dir),\n                        capture_output=True,\n                        text=True,"
    },
    {
      "url": "https://raw.githubusercontent.com/Yonathan-T/hermes-janus/f1309349616ab11de00af4ebe2531a5c4b0928e3/hermes_janus/__init__.py",
      "quote": "def _on_post_tool_call(tool_name: str, args: Dict[str, Any], result: Any = None, **kwargs: Any) -> None:\n    global _active_tx_id\n    if tool_name not in MUTATING_TOOLS:\n        return"
    },
    {
      "url": "https://raw.githubusercontent.com/DevvGwardo/uniichat-recall/f8e61321474bb0af56989650d7d52a13816ea84c/__init__.py",
      "quote": "        answer = _chat(prompt, timeout=remaining) or \"\"\n        # A wider retry (4 sessions at \u00b112) was measured here and rescued 0 of 3\n        # misses: the records that stay missing sit in sessions no keyword hit\n        # reaches, so window geometry cannot find them. Removed rather than kept \u2014\n        # it added a call to every miss and bought nothing. Retrieval mechanism, not\n        # window size, is the ceiling for those questions.\n        #\n        # 2nd opinion: gemini (agy) v"
    },
    {
      "url": "https://raw.githubusercontent.com/JoeisEvil/autonoma/56653cced2b4431db3c08dc680ccb5e139b6f125/hooks.py",
      "quote": "def safe(default=None):\n    def wrap(fn):\n        def inner(self, *args, **kwargs):\n            try:\n                return fn(self, *args, **kwargs)\n            except Exception:\n                logger.exception(\"autonoma: %s failed\", fn.__name__)\n                return default\n        inner.__name__ = fn.__name__\n        return inner\n    return wrap"
    },
    {
      "url": "https://raw.githubusercontent.com/imperator-clawdius/hermes-fleet-sentinel/c78fe683225f6eb898c2076073992727075e0caa/sentinel/tools.py",
      "quote": "                \"dry_run\": {\"type\": \"boolean\", \"description\": \"Default true. false (with confirm=true) acts.\"},\n                \"confirm\": {\"type\": \"boolean\", \"description\": \"Must be true, with dry_run=false, to act.\"},\n            },\n            \"required\": [\"host\", \"action\"],\n        },\n    },\n}"
    },
    {
      "url": "https://raw.githubusercontent.com/Joystonm/hermes-gmi-nexus/7b2d8c5eb7578d73f4f58907f9ddfe5e2da58fe9/plugins/gmi-nexus/nexus/budget.py",
      "quote": "    def daily_spend(self) -> float:\n        \"\"\"Return the estimated USD spent since the start of the current day.\"\"\"\n        from . import storage"
    },
    {
      "url": "https://raw.githubusercontent.com/Joystonm/hermes-gmi-nexus/7b2d8c5eb7578d73f4f58907f9ddfe5e2da58fe9/plugins/gmi-nexus/nexus/planner.py",
      "quote": "        template = _artefact_template(goal)\n        if template is not None:\n            plan = self._plan_from_template(goal, template)\n            plan.notes.append(\"Plan derived from the deliverable template.\")\n            return plan"
    },
    {
      "url": "https://api.github.com/repos/NousResearch/hermes-agent/pulls/151159",
      "quote": "No hooks, no middleware, no core imports, no"
    }
  ]
}