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.32.0.tar.gz
(521.3 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.32.0-py3-none-any.whl
(453.1 kB
view details)
File details
Details for the file atlast_ecp-0.32.0.tar.gz.
File metadata
- Download URL: atlast_ecp-0.32.0.tar.gz
- Upload date:
- Size: 521.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f3871d9012c3224ab23e1fd37cdbe20861fc20281ca6cc5faa65537db6a2bbdd
|
|
| MD5 |
6ee4bdb943866ca22d9b5259281a5f6a
|
|
| BLAKE2b-256 |
eff1a4701d401a21f9b9c8bbf03e8aadf5f126260bb3bb7a88d51227fae16a3e
|
File details
Details for the file atlast_ecp-0.32.0-py3-none-any.whl.
File metadata
- Download URL: atlast_ecp-0.32.0-py3-none-any.whl
- Upload date:
- Size: 453.1 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 |
75f3aa09eef8b31a3a7cbc0e21a5c85f6de88bf407c01df71461072246e3b3bb
|
|
| MD5 |
91171b684cc70f6046a29690863d0b7b
|
|
| BLAKE2b-256 |
4aae70fc027d342409bc0845bba094b7de4f0cb955efd148e28c36ae2f6727a9
|