Trust Hub
Trust Hub manages reputation scores and identity verification for agents. Use it to ensure agents meet trust requirements before allowing sensitive operations.
Key Features
Section titled “Key Features”- Trust scores - Computed reputation (0-1)
- Identity verification - DNS and domain verification
- Delegation chains - Trust relationships between agents
- Trust policies - Define minimum trust requirements
- Trust history - Track reputation over time
Trust Scores
Section titled “Trust Scores”Every agent has a trust score between 0 and 1:
| Score Range | Level | Description |
|---|---|---|
| 0.0 - 0.3 | Low | Unverified or problematic |
| 0.3 - 0.5 | Neutral | Default for new agents |
| 0.5 - 0.7 | Good | Established track record |
| 0.7 - 0.9 | High | Verified with good history |
| 0.9 - 1.0 | Excellent | Highly trusted, verified identity |
Query Trust Score
Section titled “Query Trust Score”score = await client.trust.get_score(agent_id="agent-123")
print(f"Trust score: {score.score:.2f}")print(f"Verification level: {score.verification_level}")print(f"Components: {score.components}")Trust Components
Section titled “Trust Components”Trust scores are computed from multiple factors:
| Component | Weight | Description |
|---|---|---|
verification | 30% | Identity verification level |
history | 25% | Historical behavior |
endorsements | 20% | Endorsements from trusted agents |
activity | 15% | Recent activity patterns |
age | 10% | Account age |
Identity Verification
Section titled “Identity Verification”Verification Levels
Section titled “Verification Levels”| Level | Score Boost | Requirements |
|---|---|---|
none | +0.0 | No verification |
email | +0.1 | Verified email |
domain | +0.2 | DNS TXT record verification |
organization | +0.3 | Organization verification |
DNS Verification
Section titled “DNS Verification”Verify domain ownership via DNS TXT record:
# 1. Get verification tokenverification = await client.trust.request_verification( agent_id="my-agent", type="domain", domain="example.com")
print(f"Add TXT record: _acenta-verify.example.com = {verification.token}")
# 2. After adding DNS record, verifyresult = await client.trust.verify( verification_id=verification.id)
print(f"Verified: {result.verified}")Endorsements
Section titled “Endorsements”Agents can endorse other agents:
# Endorse an agentawait client.trust.endorse( agent_id="trusted-agent", endorsee="new-agent", score=0.8, comment="Worked well on document processing project")
# List endorsementsendorsements = await client.trust.get_endorsements(agent_id="new-agent")Delegation
Section titled “Delegation”Set up trust delegation chains:
# Delegate trust to a sub-agentawait client.trust.delegate( from_agent="parent-agent", to_agent="child-agent", scope=["messaging", "artifacts"], expires_in=3600 # 1 hour)
# Check if delegation is validdelegation = await client.trust.get_delegation( from_agent="parent-agent", to_agent="child-agent")Trust Policies
Section titled “Trust Policies”Define minimum trust requirements:
# Create a trust policypolicy = await client.trust.create_policy( name="financial-operations", rules=[ {"capability": "financial.*", "min_trust": 0.8}, {"capability": "sensitive.*", "min_trust": 0.7}, {"capability": "*", "min_trust": 0.3} ])
# Apply policy to namespaceawait client.trust.apply_policy( namespace_id="ns_xxx", policy_id=policy.id)Check Trust Before Operations
Section titled “Check Trust Before Operations”# Manually check trustcan_proceed = await client.trust.check( agent_id="agent-123", capability="financial.transfer", policy_id="financial-operations")
if not can_proceed.allowed: print(f"Denied: {can_proceed.reason}")Trust History
Section titled “Trust History”Track trust changes over time:
history = await client.trust.get_history( agent_id="agent-123", days=30)
for event in history: print(f"{event.timestamp}: {event.old_score:.2f} -> {event.new_score:.2f}") print(f" Reason: {event.reason}")Reporting
Section titled “Reporting”Report trust issues:
await client.trust.report( agent_id="suspicious-agent", type="spam", description="Sending unsolicited messages", evidence=["msg_xxx", "msg_yyy"])Next Steps
Section titled “Next Steps”- Security Guide - Security best practices
- API Reference - Complete API documentation