Metadata-Version: 2.5
Name: inspect_sentinel
Version: 0.1.2
Summary: Monitors and control protocols that watch agents and intervene in their execution.
Project-URL: Source Code, https://github.com/meridianlabs-ai/inspect_sentinel
Project-URL: Issue Tracker, https://github.com/meridianlabs-ai/inspect_sentinel/issues
Project-URL: Documentation, https://meridianlabs-ai.github.io/inspect_sentinel/
Author: Meridian Labs
License: MIT License
License-File: LICENSE
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.10
Requires-Dist: anyio>=4.0
Requires-Dist: exceptiongroup>=1.0; python_version < '3.11'
Requires-Dist: inspect-ai>=0.3.279
Requires-Dist: pydantic>=2.0
Provides-Extra: dev
Requires-Dist: exceptiongroup>=1.0; extra == 'dev'
Requires-Dist: griffe>=2; extra == 'dev'
Requires-Dist: jupyter; extra == 'dev'
Requires-Dist: markdown; extra == 'dev'
Requires-Dist: panflute; extra == 'dev'
Requires-Dist: pyright; extra == 'dev'
Requires-Dist: pytest; extra == 'dev'
Requires-Dist: pytest-timeout>=2.4.0; extra == 'dev'
Requires-Dist: pytest-xdist; extra == 'dev'
Requires-Dist: pyyaml; extra == 'dev'
Requires-Dist: quarto-cli>=1.9.36; extra == 'dev'
Requires-Dist: rich; extra == 'dev'
Requires-Dist: ruff; extra == 'dev'
Requires-Dist: trio; extra == 'dev'
Requires-Dist: types-pyyaml; extra == 'dev'
Provides-Extra: dist
Requires-Dist: build; extra == 'dist'
Requires-Dist: twine; extra == 'dist'
Provides-Extra: doc
Requires-Dist: griffe>=2; extra == 'doc'
Requires-Dist: jupyter; extra == 'doc'
Requires-Dist: markdown; extra == 'doc'
Requires-Dist: panflute; extra == 'doc'
Requires-Dist: pyyaml; extra == 'doc'
Requires-Dist: quarto-cli>=1.9.36; extra == 'doc'
Requires-Dist: rich; extra == 'doc'
Requires-Dist: types-pyyaml; extra == 'doc'
Description-Content-Type: text/markdown

# Inspect Sentinel

Monitors and control protocols that watch agents and intervene in their execution.

A **monitor** observes a step of an agent's execution and reports a suspicion score; it never acts. A **protocol** decides what happens at that step, optionally after consulting monitors, and a protocol with no monitors is a rule. Both run before a tool call executes or after its result comes back; stages around model generation are planned. The same monitor runs inside an Inspect eval and offline over recorded transcripts with Inspect Scout for validation and calibration; running it in a network proxy in front of a model API is planned.

```bash
pip install inspect-sentinel
```

It requires `inspect-ai` 0.3.278 or later.

The package is under active design. The design documents are in [`design/`](design/); start with [`sentinel-overview.md`](design/sentinel-overview.md).

Runnable examples are in [`examples/`](examples/).

Documentation: <https://meridianlabs-ai.github.io/inspect_sentinel>.
