{
  "sources": [
    {
      "url": "https://gist.githubusercontent.com/gtmcknight/594c47336546c8763e641b46cf9af4ec/raw/RUN.md",
      "quote": "Everything lives under `test/scratch/`. Nothing here needs a model, a key or an account: the model is Nous's own scripted test stand-in, `tests/fakes/fake_llm_provider.py` in the Hermes source, which answers with the tool calls you plan and records everything Hermes sends.\n\n## 1. Hermes, once\n\n    git clone --depth 1 https://github.com/NousResearch/hermes-agent test/scratch/hermes\n    cd test/scratch/hermes && uv sync --locked --python 3.14 && cd -"
    },
    {
      "url": "https://gist.githubusercontent.com/gtmcknight/594c47336546c8763e641b46cf9af4ec/raw/field.json",
      "quote": "\"pr\":150563,\"name\":\"hermes-roam\",\"repo\":\"https://github.com/vcruz305/hermes-roam\",\"sha\":\"8b9fba41fea77f2fe2d6d572cffd43039d2da11f\",\"subdir\":\"\"},{\"pr\":150568,\"name\":\"zaprite\",\"repo\":\"https://github.com/welliv/hermes-zaprite\",\"sha\":\"2422546b20ed0d4b59e931061d0017e8f9004583\",\"subdir\":\"\"},{\"pr\":150570,\"name\":\"zalodesk\",\"repo\":\"https://github.com/zalodesk/zalodesk-mcp\",\"sha\":\"ddb81049ef4b92dc14d36b3d44ccd19ed93d35ec\",\"subdir\":\"\"},{\"pr\":150594,\"name\":\"write-gate\",\"repo\":\"https://github.com/2"
    },
    {
      "url": "https://raw.githubusercontent.com/vcruz305/hermes-roam/8b9fba41fea77f2fe2d6d572cffd43039d2da11f/README.md",
      "quote": "**Encrypted, host-scoped sync of your Hermes Agent home between your own machines \u2014 into storage you own, with secrets that never leave, and nothing installed without your decision.**\n"
    },
    {
      "url": "https://raw.githubusercontent.com/vcruz305/hermes-roam/8b9fba41fea77f2fe2d6d572cffd43039d2da11f/settings.py",
      "quote": "def _get_secret(name: str) -> str:\n    \"\"\"Read one secret by env name. Inside Hermes this goes through\n    ``agent.secret_scope.get_secret``; this plugin never reads ``.env``,\n    ``auth.json`` or any other credential file itself. Only when Hermes is\n    absent entirely (tests, standalone demos) does the ImportError branch\n    fall back to the plain process environment.\n    \"\"\"\n    try:\n        from agent.secret_scope import get_secret\n    except ImportError:"
    },
    {
      "url": "https://raw.githubusercontent.com/vcruz305/hermes-roam/8b9fba41fea77f2fe2d6d572cffd43039d2da11f/roam/archive.py",
      "quote": "def open_bundle(path: Path, *, key: bytes, dest_dir: Path, limits: ArchiveLimits) -> dict:\n    \"\"\"Verify, decrypt, validate, and extract a bundle; returns the manifest dict.\"\"\"\n    path = Path(path)\n    dest_dir = Path(dest_dir)\n    if len(key) != 32:\n        raise ArchiveError(\"bundle key must be exactly 32 bytes\")\n    header_bytes, header = _read_envelope(path)\n    plain_size = header.get(\"plain_size\")\n    plain_sha256 = header.get(\"plain_sha256\")"
    },
    {
      "url": "https://raw.githubusercontent.com/stffinfcti/understudy/e0920f9e3641f0e24afe6ee01b21322c070920fd/README.md",
      "quote": "Audition cheaper models on your real Hermes history before you switch.\nUnderstudy replays a sample of your agent's actual past decisions \u2014 assistant\nreplies and tool calls stored in the Hermes session database \u2014 on one or more\ncandidate models, has a judge model compare each candidate step to what your\nagent actually did, and reports how often each candidate could have taken\nover, its critical misses, and what the switch would cost you per month.\n"
    },
    {
      "url": "https://raw.githubusercontent.com/stffinfcti/understudy/e0920f9e3641f0e24afe6ee01b21322c070920fd/engine/audition.py",
      "quote": "    def may_submit(self, in_flight: int) -> bool:\n        with self.lock:\n            mean = self.spent / self.done if self.done else 0.0\n            if mean <= 0.0:\n                # No estimate yet (or costs unreported): keep the pool busy but\n                # don't race ahead of the spend data we need to project with.\n                return in_flight < self.concurrency\n            return self.spent + mean * (in_flight + 1) <= self.cap\n"
    },
    {
      "url": "https://raw.githubusercontent.com/stffinfcti/understudy/e0920f9e3641f0e24afe6ee01b21322c070920fd/surfaces/tools.py",
      "quote": "AUDITION_SCHEMA = {\n    \"name\": \"understudy_audition\",\n    \"description\": (\n        \"Audition cheaper or different models on the user's real past Hermes conversations. \"\n        \"Replays a sample of past decisions (replies and tool calls) on each candidate model, \"\n        \"has a judge compare each one with what the current model actually did, and reports \"\n        \"how often each candidate could have taken over, its critical misses, and projected \""
    },
    {
      "url": "https://raw.githubusercontent.com/otsoa-dubief/tenure/f4a62855e592b9e170ab0c54d9278aabef05f370/README.md",
      "quote": "Tenure keeps Hermes' speed and adds what is missing:\n\n| Tier | What happens |\n|---|---|\n| **Trusted** (the start) | For files, memory, subagents and the usual local dev tools (npm, python, pytest, cargo, go, make, git...), the agent works as with Hermes alone: no extra question. Files it changes are saved first and can be undone for 24 hours (`/tenure undo`); anything can be flagged (`/tenure flag`). Trust is given, not earned: it reaches no tier and claims no guarantee. |"
    },
    {
      "url": "https://raw.githubusercontent.com/otsoa-dubief/tenure/f4a62855e592b9e170ab0c54d9278aabef05f370/tenure/__init__.py",
      "quote": "def pre_tool_call(tool_name=\"\", args=None, session_id=\"\", tool_call_id=\"\", task_id=\"\", **kwargs):\n    \"\"\"The decision for one call: None to let it run (free, acting alone, or acting then notifying with its files\n    saved), else Hermes' approval gate with a rule key that ends with a fresh uuid. Any internal error, a busy store\n    included, asks, unless the call was already classified free. Every call that reaches the record first expires"
    },
    {
      "url": "https://raw.githubusercontent.com/otsoa-dubief/tenure/f4a62855e592b9e170ab0c54d9278aabef05f370/tenure/dashboard/plugin_api.py",
      "quote": "def _settings_writer(ctx):\n    \"\"\"How this process writes the plugin's settings: the plugin context when the agent loaded it, else Hermes'\n    public plugin-settings writer (``hermes_cli.plugins_settings.save_plugin_settings``, the one Hermes' own Settings\n    page uses: schema-checked, locked, refuses managed installs). None when neither exists.\"\"\"\n    if ctx is not None and callable(getattr(ctx, \"set_config\", None)):"
    },
    {
      "url": "https://raw.githubusercontent.com/miracle352/hermes-ariadne/128c95967a0761ad24d3d224441d1502c43bbb69/README.md",
      "quote": "Ariadne sits on Hermes's public middleware. While recording, it saves every model call, tool call\nand user turn to a cassette. During a replay it answers the model calls and tool calls from that\ncassette, so nothing runs and nothing is billed, while the rest of Hermes (prompt building,\ntool-call parsing, compaction, hooks, subagents) runs for real. Any difference from the recording\nis a change in Hermes.\n\n```\nhermes ariadne record on          # start saving new sessions"
    },
    {
      "url": "https://raw.githubusercontent.com/miracle352/hermes-ariadne/128c95967a0761ad24d3d224441d1502c43bbb69/runtime.py",
      "quote": "NEUTRAL_ARGS = {\"__ariadne_replay__\": True}\n# Agent-internal tools that only start more agent work inside Hermes. During replay they run\n# for real so the subagent exists; everything that subagent does (model calls, tools) is still\n# served from the cassette and neutralised like any other call.\nINTERNAL_TOOLS = frozenset({\"delegate_task\"})\nCONTROL_FILE = \"control.json\"\n\n\n# --------------------------------------------------------------------------- paths\n\ndef data_dir() -> Path:"
    },
    {
      "url": "https://raw.githubusercontent.com/miracle352/hermes-ariadne/128c95967a0761ad24d3d224441d1502c43bbb69/tests/e2e/roundtrip.py",
      "quote": "    side_effect = (project / \"out.txt\").exists()\n    print(\"replay executed a real tool:\", side_effect)\n    if side_effect:\n        return 3\n    return 0 if result.verdict == \"identical\" else 1\n\n\nif __name__ == \"__main__\":\n    raise SystemExit(main())"
    },
    {
      "url": "https://raw.githubusercontent.com/stupidburgers/pinpoint/06b911e1c66908ebf340c6cb981028bc45b89c73/README.md",
      "quote": "### Not verified yet\n\nItems below are known to be open or unverified:\n\n- macOS and Linux: no OS-specific code, but only Windows 11 was run.\n- Hermes versions other than 0.22.7 (Desktop 2026.7363.3271.0).\n- The consent *Deny* path was not exercised in the spike.\n- Whether a real model reliably picks `pinpoint_audit` unprompted (tools are deferred; a system-prompt line names both)."
    },
    {
      "url": "https://raw.githubusercontent.com/stupidburgers/pinpoint/06b911e1c66908ebf340c6cb981028bc45b89c73/_tools.py",
      "quote": "CODES = {\"desktop_unavailable\", \"no_preview\", \"consent_denied\", \"timeout\", \"page_mismatch\",\n         \"page_unreachable\", \"engine_error\", \"bad_args\"}\nCODE_MAP = {\"navigated\": \"page_unreachable\", \"origin_blocked\": \"page_unreachable\"}\nHINT = _core.HINT\nRESULT_LIMIT = 12000\n\nAUDIT_SCHEMA = {\n    \"name\": \"pinpoint_audit\",\n    \"description\": (\n        \"Measure the live page in Hermes Desktop's Browser pane. Runs deterministic in-page checks \""
    },
    {
      "url": "https://raw.githubusercontent.com/stupidburgers/pinpoint/06b911e1c66908ebf340c6cb981028bc45b89c73/engine/pinpoint-engine.js",
      "quote": "function pinpointEngine(e){\"use strict\";e=e||{};var t=\"0.1.0\",n=window.__pinpoint;if(n&&n.version===t)return n;if(n&&\"function\"==typeof n.destroy)try{n.destroy()}catch(e){}var r=document,i=r.documentElement,o=[],a=!1,l=0,s=!1,u=\"\",c=null,d=null,f=0,h=[];function p(e,t){return(e=String(null==e?\"\":e)).length>t?e.slice(0,t):e}function g(e){return String(null==e?\"\":e).replace(/[\\t\\n\\r]+/g,\" \").replace(/[\\u0000-\\u001f\\u007f-\\u009f\\u200b-\\u200f\\u2028-\\u202e\\u2066-\\u2069\\ufeff]/g,\"\").replace("
    },
    {
      "url": "https://raw.githubusercontent.com/P0GL0L/hermes-lineage/61de70980f4322838a9b53f4802623146f1046c2/README.md",
      "quote": "The honest part. Most provenance tooling draws one arrow and calls it \"derived from\". lineage keeps three, labels each, and writes the label into the receipt so a reader can discount the weak ones.\n\n| | basis | what it means | drawn as |\n|---|---|---|---|\n| \u25cf | **observed** | Hermes reported it: `write_file` wrote this path; this tool call came out of that model request; this child agent was spawned by that turn. | thick accent line |"
    },
    {
      "url": "https://raw.githubusercontent.com/P0GL0L/hermes-lineage/61de70980f4322838a9b53f4802623146f1046c2/lineage_core/tracker.py",
      "quote": "The three bases are the whole product:\n\n* ``observed``  \u2014 Hermes said so. ``write_file`` wrote this path; this tool call\n  came out of that model request (``api_request_id``); this child agent was\n  spawned by that turn.\n* ``evidenced`` \u2014 the artifact's own bytes name the source: a URL that was\n  fetched this session, or the path of a file that was read.\n* ``inferred``  \u2014 the source was read earlier in the same turn (confidence 0.6)"
    },
    {
      "url": "https://raw.githubusercontent.com/P0GL0L/hermes-lineage/61de70980f4322838a9b53f4802623146f1046c2/lineage_core/receipt.py",
      "quote": "def _fetch_url_fingerprint(url: str, timeout: float = 8.0) -> dict:\n    \"\"\"Reachability and a content fingerprint for *url* (bounded to 1 MiB). Network only on request,\n    and only to public hosts.\"\"\"\n    import urllib.error\n    import urllib.request\n\n    parts = urlsplit(url)\n    if parts.scheme not in (\"http\", \"https\"):\n        return {\"status\": \"skipped\", \"reason\": \"not http(s)\"}\n    if not _url_is_safe(url):\n        return {\"status\": \"refused\", \"reason\": \"not a public host\"}"
    }
  ]
}