ATLAST Evidence Chain Protocol — trust infrastructure for AI Agents
Project description
atlast-ecp
Python SDK for the ATLAST Evidence Chain Protocol (ECP) — trust infrastructure for AI agents.
Install
pip install atlast-ecp
# With ed25519 signing:
pip install atlast-ecp[crypto]
# With transparent proxy (Layer 0):
pip install atlast-ecp[proxy]
Three Integration Layers
Layer 0 — Zero Code (transparent proxy)
atlast run python my_agent.py
# or: OPENAI_BASE_URL=http://localhost:8340 python my_agent.py
Layer 1 — One Line (wrap)
from atlast_ecp import wrap
from openai import OpenAI
client = wrap(OpenAI()) # Records every LLM call automatically
response = client.chat.completions.create(model="gpt-4o", messages=[...])
Works with: OpenAI, Anthropic, Google Gemini, LiteLLM.
Layer 2 — Framework Adapters
# LangChain
from atlast_ecp.adapters.langchain import ATLASTCallbackHandler
llm = ChatOpenAI(callbacks=[ATLASTCallbackHandler(agent="my-agent")])
# CrewAI
from atlast_ecp.adapters.crewai import ATLASTCrewCallback
crew = Crew(callbacks=[ATLASTCrewCallback(agent="my-crew")])
# AutoGen
from atlast_ecp.adapters.autogen import register_atlast
register_atlast(my_agent)
CLI
atlast init # Initialize ~/.ecp/
atlast record # Create ECP record
atlast log # View latest records
atlast verify <id> # Verify chain integrity
atlast stats # Trust signals
atlast insights # Performance analytics
atlast proxy # Start transparent proxy
atlast run <cmd> # Run with auto-proxy
atlast did # Agent DID
Module Stability
| Module | Status | Description |
|---|---|---|
core |
🟢 Stable | record_minimal(), record() |
wrap |
🟢 Stable | wrap(client) for OpenAI/Anthropic/Gemini |
record |
🟢 Stable | ECP record creation (v1.0 spec) |
batch |
🟢 Stable | Merkle tree + batch upload |
verify |
🟢 Stable | Signature + Merkle proof verification |
storage |
🟢 Stable | Local ~/.ecp/ file storage |
signals |
🟢 Stable | Trust signal computation |
identity |
🟢 Stable | DID + Ed25519 key management |
config |
🟢 Stable | Environment/config management |
insights |
🟢 Stable | Performance analytics |
webhook |
🟢 Stable | HMAC-signed webhook delivery |
adapters.* |
🟢 Stable | LangChain, CrewAI, AutoGen |
proxy |
🟡 Beta | Transparent HTTP proxy (Layer 0) |
a2a |
🟡 Beta | Agent-to-Agent handoff tracking |
cli |
🟡 Beta | atlast CLI |
mcp_server |
🟠 Experimental | MCP tools server |
otel_exporter |
🟠 Experimental | OpenTelemetry exporter |
openclaw_scanner |
🟠 Experimental | OpenClaw session log scanner |
auto |
🟠 Experimental | OTel auto-instrumentation |
Privacy
- Content never leaves your device — only SHA-256 hashes transmitted
- Local storage:
~/.ecp/records/ - On-chain: Merkle root only (EAS on Base)
- Fail-Open: SDK errors never crash your agent
Links
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
atlast_ecp-0.25.0.tar.gz
(467.9 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
atlast_ecp-0.25.0-py3-none-any.whl
(396.7 kB
view details)
File details
Details for the file atlast_ecp-0.25.0.tar.gz.
File metadata
- Download URL: atlast_ecp-0.25.0.tar.gz
- Upload date:
- Size: 467.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5f144c6e3e8b950d67e69363fd9b1cbac4fcdf0f230cf9da45362e74b53b1fb6
|
|
| MD5 |
0a13aff7730d31a26927df439d0e3a35
|
|
| BLAKE2b-256 |
58daacd4f243e75a52f0d911e50bac458ba5ab5897a89ae767682665af689041
|
File details
Details for the file atlast_ecp-0.25.0-py3-none-any.whl.
File metadata
- Download URL: atlast_ecp-0.25.0-py3-none-any.whl
- Upload date:
- Size: 396.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fe09f61e5b5d36ad865ec1d9f7a1da37be43c8d6c1d1e151228b1cb6ec2513ef
|
|
| MD5 |
bcf34523ecf54013e34d3a3908db2808
|
|
| BLAKE2b-256 |
345c74810de88a84fd7b9c694d43a1d8bccb1c9a9c3affddc739b590731cedef
|