# GitHub Release — v1.9.6 (copy-paste)

**Title:** v1.9.6 - Hermes Agent & Lazy AST Handshake

**Tag:** `v1.9.6`

---

## Hermes Agent MCP

Matryca Plumber is now a **verified stdio MCP server** for [Hermes Agent](https://github.com/NousResearch/hermes-agent) alongside Cursor and Claude Desktop.

| Setting | Purpose | Recommended |
|---------|---------|-------------|
| **`connect_timeout`** | Handshake only (`initialize` + `tools/list`) | **60–120 s** |
| **`timeout`** | Per tool call (first graph tool may cold-load AST) | **300 s+** by vault size |

Full operator guide: [`docs/integrations/hermes-agent.md`](docs/integrations/hermes-agent.md).

**Prerequisites on the Hermes host:**

```bash
cd ~/.hermes/hermes-agent && uv pip install -e ".[mcp]"
```

Set `MATRYCA_MCP_ENABLED=true` and `LOGSEQ_GRAPH_PATH` in `~/.hermes/config.yaml`.

## Lazy AST bootstrap (MCP stdio)

MCP lifespan now calls `prepare_matryca_runtime(..., eager_graph=False)`:

- **Handshake** completes in **seconds** — no full-vault parse before `tools/list`.
- **Daemon, CLI, and Sovereign UI** remain **eager** (AST at startup).
- First graph tool triggers cold AST load; stderr logs `AST cache bootstrap started|complete` with `markdown_files`, `duration_s`, `pages_indexed`.

Integration test: `tests/test_hermes_mcp_handshake.py` asserts `tools/list` within 30 s on a fixture vault.

## Safe first calls after connect

These do **not** require AST bootstrap:

- `read_graph_data` / `bootstrap_status`
- `read_graph_data` / `memory`

---

**Technical changelog (canonical):** see [`CHANGELOG.md`](../../CHANGELOG.md) section `[1.9.6]`.

**Agent onboarding:** [`llms.txt`](../../llms.txt) · [`docs/openspec/agent-onboarding.md`](../openspec/agent-onboarding.md).
