Skip to main content

Local-first assurance and observability for AI agents

Project description

PathProof

PyPI version Python versions License Tests

Evidence-driven execution-path assurance for AI agents.

PathProof verifies the execution path of AI agents — not filesystem paths.

PathProof is a local-first Python library for monitoring agent runs, enforcing runtime policies, detecting unsafe execution paths, and producing evidence that explains how an output was reached.

Current status

  • Current release candidate: 0.2.0rc3
  • Public release candidate; suitable for evaluation, prototyping, and controlled internal testing
  • Not yet recommended as the sole control layer for production-critical or regulated systems

Why PathProof

An AI agent may produce a plausible result while taking an unsafe path to get there. PathProof checks the operational path: tool calls, prerequisites, approvals, policy limits, recovery after failures, and the causal chain behind the final output.

Core capabilities

  • Run and event recording
  • Tool-call monitoring
  • Policy enforcement, call limits, prerequisites, and approval gates
  • Failure classification and explainable execution-path trust scoring
  • Text and JSON reports
  • Memory, JSON, and SQLite storage
  • Evidence fingerprints and evidence bundles
  • Run comparison and regression checks
  • Causal evidence graphs and unsafe-path detection

Installation

pip install pathproof-ai

For this release candidate:

pip install pathproof-ai==0.2.0rc3

Quick start

from pathproof import AgentMonitor

monitor = AgentMonitor("support-agent")
run = monitor.run("Answer a customer request")
run.record_output({"answer": "Request completed"}, success=True)
run.close()
report = run.evaluate()
print(report.status, report.trust_score)

Expected output:

passed 100

Explicit output outcomes

PathProof records outputs without guessing their semantic meaning.

Use an explicit outcome when the application knows whether the final result succeeded:

run.record_output(
    {"answer": "Request completed"},
    success=True,
)

An explicitly unsuccessful result can be recorded with:

run.record_output(
    {"ok": False, "reason": "The requested operation failed"},
    success=False,
)

When success=False:

  • the task is marked as not completed;
  • failure code F011 is recorded;
  • the evaluation status becomes failed;
  • the execution-path trust score is reduced.

When success is omitted, PathProof preserves backward compatibility and records the output without making a semantic judgment about its content.

When multiple outputs are recorded, the latest output is treated as the final outcome. Earlier outputs remain part of the execution evidence.

trust_score measures recorded execution-path integrity and policy compliance. It does not by itself prove that the output is factually correct.

What PathProof proves

PathProof can provide technical evidence that declared runtime policies were checked, recorded steps followed a traceable sequence, observed tool calls and outputs were captured, known failure conditions were detected, and the final output followed a recorded causal path.

What PathProof does not prove

PathProof does not by itself prove factual correctness, ethical correctness, legal compliance, absence of hidden bias, real-world safety, legal admissibility of evidence, or cryptographic authenticity unless an external signing layer is added.

PathProof should be used as one assurance layer within a broader governance and safety system.

Local-first design

PathProof does not require an external service by default. Run data can remain on the user's machine or inside the organization's own environment.

Testing

The test suite runs automatically on Python 3.10, 3.11, 3.12, and 3.13.

python -m pytest -q

Project links

License

Apache License 2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pathproof_ai-0.2.0rc3.tar.gz (21.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pathproof_ai-0.2.0rc3-py3-none-any.whl (24.1 kB view details)

Uploaded Python 3

File details

Details for the file pathproof_ai-0.2.0rc3.tar.gz.

File metadata

  • Download URL: pathproof_ai-0.2.0rc3.tar.gz
  • Upload date:
  • Size: 21.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for pathproof_ai-0.2.0rc3.tar.gz
Algorithm Hash digest
SHA256 d235208ccdcea425466fb1d8912129d820127a9b7e11bb380c95f91e75476679
MD5 269aa0bd8a076fe8d89b98a80b102930
BLAKE2b-256 e418cc277a21fb884956bea1e3249ccf3a318a097943cf6c39128cfa979a5a75

See more details on using hashes here.

File details

Details for the file pathproof_ai-0.2.0rc3-py3-none-any.whl.

File metadata

File hashes

Hashes for pathproof_ai-0.2.0rc3-py3-none-any.whl
Algorithm Hash digest
SHA256 3f7f29121fea85757a510f279196625f78a4b55348a979ef10fb4cb315e066a7
MD5 9012af16c286e4ecef704343232f7578
BLAKE2b-256 9e88b85d11e74c5a22a34aff3da18e72a3f6d71e6e9cbefbfd05938840dccb59

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page