New in v2.8.7 - Agent-first recording and trust review

The PDF for AI Evidence

Stop relying on screenshots. Execution Proof Infrastructure (.epi) is the open standard for Verifiable Execution. It captures code, context, and computation into a verifiable signed receipt that works everywhere.

See It In Action

From code execution to sealed evidence in seconds.

epi-recorder v2.8.7
.epi
v2.8.7
Framework Integrations
100% Offline
Works Without Internet
Open Source
MIT License

SEE THE ACTUAL WORKING OF

Execution Proof Infrastructure (.epi)

Get Started with epi-recorder v2.8.7

99% installation success rate. Universal one-command installer for all platforms.

Cryptographically Signed
epi-recorder v2.8.7 -- bash -- 80x24
NEW

What's New in v2.8.7

LiteLLM Integration

One-line callback for 100+ LLM providers. OpenAI, Anthropic, Cohere, Mistral, Azure, Bedrock - all recorded.

LangChain Handler

EPICallbackHandler captures LLM calls, tool invocations, chain steps, and agent decisions.

pytest Plugin

pytest --epi generates signed .epi evidence per test. Built-in CI/CD audit trails.

GitHub Action

Verify .epi integrity in every PR. Auto-fails on tampered evidence. Step Summary dashboard.

OpenTelemetry

EPISpanExporter bridges OTel spans into signed .epi files. One-line setup.

Streaming Support

OpenAI stream=True auto-captured. Real-time chunks yielded, assembled response logged with token usage.

Quick Install (One Command):
Unix / Mac:
curl -sSL https://raw.githubusercontent.com/mohdibrahimaiml/epi-recorder/main/scripts/install.sh | sh
Windows:
iwr https://raw.githubusercontent.com/mohdibrahimaiml/epi-recorder/main/scripts/install.ps1 -useb | iex
Note: Always works: If epi command not found, use python -m epi_cli (100% reliable)

See It In Action

From code execution to sealed evidence in seconds.

Complete CLI Reference (v2.8.7)

Core Commands

epi run <script.py>

Zero-config recording. Auto-verifies and opens viewer. Simplest way to record.

Shipped
epi record --out <file.epi> -- <cmd>

Advanced recording with explicit output filename. Record any shell command.

Shipped
epi verify <file.epi>

Verify integrity and authenticity (structural, integrity, signature checks).

Shipped
epi verify <file.epi> --verbose

Verbose verification output with detailed check results.

Shipped
epi verify <file.epi> --json

Output verification results as JSON for CI/CD integration.

Shipped
epi view <file.epi>

Open recording in browser with interactive timeline viewer.

Shipped
epi ls

List all recordings in ./epi-recordings/ directory.

Shipped
epi doctor

Shipped in v2.1.1: Self-healing diagnostics. Auto-detects and repairs PATH issues.

Shipped

Key Management

epi keys list

List all Ed25519 keypairs in your keystore.

Shipped
epi keys generate

Generate a new Ed25519 keypair (auto-generated on first use).

Shipped
epi keys generate --name <keyname>

Generate a named keypair for team/project separation.

Shipped
epi keys export --name <keyname>

Export public key for sharing with verifiers.

Shipped

Help & Info

epi --help

Show all available commands and usage information.

Shipped
epi help

Show extended quickstart guide with examples.

Shipped
epi version

Show EPI version information (currently v2.8.7).

Shipped
epi <command> --help

Get detailed help for any specific command.

Shipped

Python API

@record

Decorator to record a function. @record(goal="test")

Shipped
with record("file.epi", goal="...")

Context manager. Tip: Always provide an explicit filename when adding metadata like goal or metrics.

Shipped

Global Install (v2.8.7)

epi install --global

Auto-record all Python processes via sitecustomize.py. Idempotent and safe.

Shipped
epi uninstall --global

Remove auto-recording cleanly. One command.

Shipped

v2.8.7 Native OS Integration

Zero-Friction CLI & GUI Handlers

EPI evidence bundles are now first-class OS citizens natively wired to your environment. Double-click any .epi file on Windows, macOS, or Linux to seamlessly launch the isolated viewer without terminal intervention.

$ epi associate    # Register .epi file extension natively
$ epi unassociate  # Cleanly remove global registry bindings

v2.8.7 Quick Start Examples

LiteLLM - 100+ Providers
import litellm
from epi_recorder.integrations.litellm import EPICallback

litellm.callbacks = [EPICallback()]  # That's it

response = litellm.completion(model="gpt-4", messages=[...])
response = litellm.completion(model="claude-3-opus", messages=[...])
# Every call -> signed .epi evidence
LangChain Handler
from langchain_openai import ChatOpenAI
from epi_recorder.integrations.langchain import EPICallbackHandler

llm = ChatOpenAI(model="gpt-4", callbacks=[EPICallbackHandler()])
result = llm.invoke("Analyze this contract...")
# Captures: LLM, tools, chains, retrievers, agents
OpenAI Streaming
client = wrap_openai(OpenAI())

with record("stream.epi"):
    stream = client.chat.completions.create(
        model="gpt-4", stream=True,
        messages=[{"role": "user", "content": "Write a poem"}]
    )
    for chunk in stream:
        print(chunk.choices[0].delta.content or "", end="")
# Assembled response + token usage logged automatically
pytest Evidence
$ pytest --epi --epi-dir=evidence

======================== EPI Evidence Summary ========================
  OK test_auth_flow.epi (signed, 12 steps)
  OK test_payment.epi (signed, 8 steps)
  OK test_refund.epi (signed, 6 steps)
======================================================================
GitHub Action
- name: Verify EPI evidence
  uses: mohdibrahimaiml/epi-recorder/.github/actions/verify-epi@main
  with:
    path: ./evidence
    fail-on-tampered: true
OpenTelemetry
from epi_recorder.integrations.opentelemetry import setup_epi_tracing

setup_epi_tracing(service_name="my-agent")
# All OTel spans -> signed .epi files automatically