crewai-agentoath
AgentOath trust protocol integration for CrewAI.
Adds automatic trust receipt generation to CrewAI crews. Every task delegation and completion produces a cryptographically signed receipt, and agents below a trust threshold can be filtered out of delegation.
Installation
pip install crewai-agentoath
For full CrewAI integration (optional):
pip install crewai-agentoath[crewai]
Quick Start
TrustedCrew -- automatic receipts for crew execution
from agentoath import TrustAgent
from crewai_agentoath import TrustedCrew
manager = TrustAgent.create(name="CrewManager", capabilities=["orchestration"])
trusted = TrustedCrew(crew=my_crew, agent_identity=manager)
# Optionally register individual agents with identities
researcher_id = TrustAgent.create(name="Researcher", capabilities=["search"])
trusted.register_agent(researcher_agent, researcher_id)
result = trusted.kickoff()
# Every delegation + completion has a signed receipt
for receipt in trusted.receipts:
print(receipt.action, receipt.rating, receipt.description)
TrustedAgent -- bind CrewAI agents to AgentOath identities
from crewai_agentoath import TrustedAgent
identity = TrustAgent.create(name="Analyst", capabilities=["analysis"])
trusted = TrustedAgent(crew_agent=analyst_agent, identity=identity)
print(trusted.did) # did:trust:agent:...
print(trusted.role) # "Senior Analyst" (from CrewAI)
TaskCallback -- per-task lifecycle receipts
from crewai_agentoath import TaskCallback
cb = TaskCallback(delegator_identity=manager)
cb.on_task_delegated(task, worker_did=worker.did)
cb.on_task_completed(task, worker_did=worker.did, output="report.pdf")
cb.on_task_failed(task, worker_did=worker.did, error="Timeout")
print(len(cb.receipts)) # 3 signed receipts
TrustFilter -- gate delegation by trust score
from crewai_agentoath import TrustFilter
trust_filter = TrustFilter(min_score=0.6)
candidates = [trusted_agent_a, trusted_agent_b, trusted_agent_c]
eligible = trust_filter.filter_agents(candidates, all_receipts)
# Or rank by score
ranked = trust_filter.rank_agents(candidates, all_receipts)
for agent, score in ranked:
print(f"{agent.name}: {score:.2f}")
Components
| Component | Description |
|---|---|
TrustedCrew |
Crew wrapper with automatic pre/post and per-task receipts |
TrustedAgent |
Binds a CrewAI Agent to an AgentOath identity |
TaskCallback |
Generates receipts for task delegation, completion, and failure |
TrustFilter |
Filters/ranks agents by trust score threshold |
License
Apache-2.0
Metadata
Release files for crewai-agentoath 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| crewai_agentoath-0.2.1.tar.gz | 22.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| crewai_agentoath-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 41.0 kB
Release files / crewai_agentoath-0.2.1.tar.gz
| Download URL | crewai_agentoath-0.2.1.tar.gz |
|---|---|
| Size | 22.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f46bb14588fd286c24f455051b48ade146ee1636b37f0d3c26a165e9c479a8e8
|
|
BLAKE2b-256 checksum How to use checksums |
f8faacdb33d0d7ba5fb60ee618ce6aecfde60eefa18f96c7ab966cf01a6f7e06
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.12
|
Release files / crewai_agentoath-0.2.1-py3-none-any.whl
| Download URL | crewai_agentoath-0.2.1-py3-none-any.whl |
|---|---|
| Size | 18.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cea54e40f1669da7a9ce9ce05d216408f210405a272fb9dc3b9759823de39500
|
|
BLAKE2b-256 checksum How to use checksums |
af9e89cb62f2cabb485108a0abb3cca9c9e98dd34fe8b0f2336b72f72a912b1b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.12
|