{
  "sources": [
    {
      "url": "https://raw.githubusercontent.com/NousResearch/hermes-agent/main/plugin-catalog/README.md",
      "quote": "6. **Declared capabilities must match reality.** The `capabilities:` block\n   (tools, hooks, middleware, env vars) must match what the plugin actually\n   registers at the pinned commit."
    },
    {
      "url": "https://raw.githubusercontent.com/aydnOktay/hermes-done-bell-/3fa519a291d91b0e6c44bd42762190363ce80c39/README.md",
      "quote": "hermes plugins install C:\\Users\\aydin\\Desktop\\nous-puling\\plugins\\done-bell\nhermes plugins enable done-bell"
    },
    {
      "url": "https://raw.githubusercontent.com/aydnOktay/hermes-done-bell-/3fa519a291d91b0e6c44bd42762190363ce80c39/desktop/plugin.js",
      "quote": "  const busyMap = useValue(host.state.busyBySession) || {}"
    },
    {
      "url": "https://raw.githubusercontent.com/NousResearch/hermes-official-plugins/e7a218f26db88426ab3e7376f0e000b6e356f5e7/homeassistant/tools.py",
      "quote": "    With neither list set nothing is checked (behaviour unchanged). Otherwise:"
    },
    {
      "url": "https://raw.githubusercontent.com/NousResearch/hermes-official-plugins/e7a218f26db88426ab3e7376f0e000b6e356f5e7/homeassistant/adapter.py",
      "quote": "    def _passes_filters(self, entity_id: str) -> bool:\n        \"\"\"Closed by default: requires watch_domains, watch_entities, or watch_all.\"\"\""
    },
    {
      "url": "https://raw.githubusercontent.com/EconLearn/hermes-heats/2bcee10e9ca6489b7fd23bb0362a36eacdae269f/__init__.py",
      "quote": "    ctx.register_middleware(\"tool_request\", _mw_tool_request)\n    ctx.register_hook(\"pre_tool_call\", _on_pre_tool_call)\n    ctx.register_hook(\"post_tool_call\", _on_post_tool_call)\n    ctx.register_hook(\"pre_verify\", _on_pre_verify)"
    },
    {
      "url": "https://raw.githubusercontent.com/EconLearn/hermes-heats/2bcee10e9ca6489b7fd23bb0362a36eacdae269f/README.md",
      "quote": "An attempt that\n  runs `npm install` or `pip install` changes your real ones."
    },
    {
      "url": "https://raw.githubusercontent.com/Hjuanma/hermes-plan-tracker/c86fc28fb205b3608d5ded3c0f2f289068107963/core.py",
      "quote": "def _blocks_path(hermes_home: str, plan_id: str) -> Path:\n    return Path(_ensure_blocks_dir(hermes_home)) / f\"{plan_id}.json\""
    },
    {
      "url": "https://raw.githubusercontent.com/Hjuanma/hermes-plan-tracker/c86fc28fb205b3608d5ded3c0f2f289068107963/dashboard/plugin_api.py",
      "quote": "    set_block(_home(), pid, milestone, reason)\n    return JSONResponse({\"ok\": True})"
    },
    {
      "url": "https://raw.githubusercontent.com/imkieransmith/openchi/bdc7926455e7aadfcda43f4e4f7eb4b726fffc8d/src/plugin.jsx",
      "quote": "      if (isStalled(s, now)) {\n        // The computer slept mid-exercise: stop the session (as Stop does)"
    },
    {
      "url": "https://raw.githubusercontent.com/Joko-F/hermes-fine-print/7b574f1b5c8dc8eafe3ea9f87ae6b0111853f0ba/fine_print/core.py",
      "quote": "        \"\"\"Record the call, run the tool rules on the raw result, and return an annotated copy only"
    },
    {
      "url": "https://raw.githubusercontent.com/Joko-F/hermes-fine-print/7b574f1b5c8dc8eafe3ea9f87ae6b0111853f0ba/README.md",
      "quote": "In Hermes Desktop 0.23.0 the notice was not delivered in the author's check"
    },
    {
      "url": "https://raw.githubusercontent.com/NathanOyewole/hermes-contract-hunter/e66266220cb4eef46f10f5ec05cad8119744eb1c/__init__.py",
      "quote": "    args = [\"prove\"]\n    if hypothesis:\n        args += [\"--hypothesis\", hypothesis]\n    args += [\"--\", target_id]"
    },
    {
      "url": "https://raw.githubusercontent.com/NathanOyewole/scout/e2889e0/src/main.rs",
      "quote": "    /// Run fork test; marks proven only if testHypothesis is filled.\n    Prove { id: i64 },"
    },
    {
      "url": "https://github.com/NousResearch/hermes-agent/pull/150349",
      "quote": "It turns a git repo into shared project memory (tasks, inbox, knowledge, rules) across Hermes chats, with a Desktop page and optional rooms."
    },
    {
      "url": "https://raw.githubusercontent.com/MrHydeDev/meme-studio-mcp-plugin/8d8f27722f2549b8154ec7ef9cce609d8a62addb/README.md",
      "quote": "This package is [MIT licensed](LICENSE). Meme Studio and its server are not open source."
    },
    {
      "url": "https://raw.githubusercontent.com/N-45div/sochen-plugin/b785f9176be75c4d5567cade43f926dc154ca034/tools.py",
      "quote": "    status = reply.get(\"status\")\n    shaped: dict[str, Any] = {\"ok\": status != \"failed\", **{k: v for k, v in reply.items() if k != \"note\"}}"
    },
    {
      "url": "https://raw.githubusercontent.com/Developh/skills/c8899016509e112f218c28de578f99ed8a2a4fce/README.md",
      "quote": "The skill works without the MCP server: it calls the same tool over HTTP with `curl`."
    },
    {
      "url": "https://raw.githubusercontent.com/BenCoy09/hermes-witness/cabc8f70e8d8eb8d058c3e14365b212152d9900b/trail.py",
      "quote": "                      r\"\\bFAILED\\b|\\b\\d+ failed\\b|AssertionError|fatal:|\\berror:)\", re.I)"
    },
    {
      "url": "https://raw.githubusercontent.com/BenCoy09/hermes-witness/cabc8f70e8d8eb8d058c3e14365b212152d9900b/evidence.py",
      "quote": "            elif never and any(never.group(2).lower() in ln for ln in action_lines):"
    }
  ]
}
