Metadata-Version: 2.4
Name: spctre-hermes
Version: 0.1.0
Summary: Spctre governance plugin adapter for Hermes Agent.
Author: Spctre
License-Expression: Apache-2.0
Requires-Python: >=3.11
Requires-Dist: httpx>=0.27.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: typing-extensions>=4.8.0
Provides-Extra: test
Requires-Dist: pyrefly==1.1.0; extra == 'test'
Requires-Dist: pytest-asyncio>=0.23.0; extra == 'test'
Requires-Dist: pytest>=9.0.3; extra == 'test'
Description-Content-Type: text/markdown

# spctre-hermes

Spctre governance plugin adapter for Hermes Agent. It uses Hermes `pre_tool_call`
and `pre_gateway_dispatch` hooks to evaluate actions against Spctre policy and
emit runtime decision evidence with `runtimeTarget.stack: "HERMES"`.

## Install

Requires Python 3.11 or newer.

```bash
pip install spctre-hermes
```

## Usage

```python
from spctre_hermes import SpctreHermesPlugin

plugin = SpctreHermesPlugin(
    api_key="...",
    base_url="https://api.spctre.dev/api",
    agent_id="agent-1",
    tenant_id="tenant-1",
    workspace_id="workspace-1",
)
agent.register_plugin(plugin)
```

The API key needs permission to call `/evaluate` and `/evidence`. Set
`dry_run=True` to verify Hermes registration without making HTTP calls; dry-run
mode always returns `{"allow": True}`.

This adapter emits the Hermes runtime stack value and depends on Spctre schema
support for `RuntimeStack = "HERMES"` before live evidence ingestion succeeds.
