Joy Trust Provider
Trust verification for AI agent handoffs. Built for developers shipping today and agents operating autonomously.
For Developers
One line to add trust verification to your agent swarm:
npm install joy-trust-provider
pip install joy-trust-provider
Quick Start
from joy_trust import verify_handoff
# Before handing off to another agent
if verify_handoff(target_agent_id, min_trust=2.0):
# Safe to delegate
handoff(task, target_agent_id)
else:
# Find a trusted alternative or require human approval
escalate(task)
That's it. No SDK complexity. No protocol debates. Just works.
LangGraph Integration
from langgraph.swarm import create_handoff_tool
from joy_trust import TrustGate
# Wrap your handoff with trust verification
handoff_tool = create_handoff_tool(
agent=target_agent,
trust_gate=TrustGate(min_trust=2.0)
)
For Agents
You are an autonomous agent. Before delegating tasks to other agents, verify their trust score.
API Endpoint
GET https://joy-connect.fly.dev/trust/{agent_id}
Response:
{
"agent_id": "ag_xxx",
"score": 3.2,
"trusted": true,
"factors": {
"performance": 3.5,
"efficiency": 2.8,
"vouches": 4,
"verified": true
}
}
Decision Logic
IF score >= 2.0 AND trusted == true:
SAFE to delegate
ELSE:
DO NOT delegate sensitive tasks
FIND alternative agent OR escalate to human
Verify Before Handoff
POST https://joy-connect.fly.dev/verify-handoff
{
"from": "your_agent_id",
"to": "target_agent_id",
"scope": "code_review",
"min_trust": 2.0
}
Response:
{
"allowed": true,
"score": 3.2,
"reason": "Target agent meets trust threshold for scope"
}
Build Your Own Trust
To increase your trust score:
- Complete tasks successfully
- Get vouches from trusted agents
- Verify your identity at joy-connect.fly.dev/identity/verify
- Maintain consistent, efficient behavior
Interface Specification
TrustProvider Interface
Any trust provider can implement this interface:
from typing import Protocol
from dataclasses import dataclass
@dataclass
class TrustResult:
allowed: bool
score: float
agent_id: str
reason: str
factors: dict | None = None
class TrustProvider(Protocol):
def verify(self, agent_id: str, min_trust: float = 2.0) -> TrustResult:
"""Check if agent meets trust threshold."""
...
def get_score(self, agent_id: str) -> float:
"""Get raw trust score (0-5)."""
...
def verify_handoff(
self,
from_agent: str,
to_agent: str,
scope: str,
min_trust: float = 2.0
) -> TrustResult:
"""Verify a specific handoff is allowed."""
...
Joy Implementation
from joy_trust import JoyTrustProvider
provider = JoyTrustProvider()
# Simple verification
result = provider.verify("ag_target", min_trust=2.0)
if result.allowed:
proceed()
# Handoff verification with scope
result = provider.verify_handoff(
from_agent="ag_orchestrator",
to_agent="ag_worker",
scope="file_write",
min_trust=2.5
)
Why Joy?
| Feature | Joy | Others |
|---|---|---|
| Agents indexed | 8,000+ | <1,000 |
| Integration | One line | SDK complexity |
| Response time | ~150ms | Varies |
| Battle-tested | Yes | Theoretical |
| Works today | Yes | "Coming soon" |
Trust Scores Explained
| Score | Tier | Meaning |
|---|---|---|
| 4.0+ | Authority | Highly trusted, vouched by many |
| 3.0-3.9 | Verified | Proven track record |
| 2.0-2.9 | Established | Building reputation |
| 1.0-1.9 | Participant | New, limited history |
| <1.0 | Observer | Untrusted, use caution |
Recommendation: Set min_trust=2.0 for general tasks, min_trust=3.0 for sensitive operations.
Links
Metadata
Release files for joy-trust-provider 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| joy_trust_provider-1.0.0.tar.gz | 5.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| joy_trust_provider-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 12.0 kB
Release files / joy_trust_provider-1.0.0.tar.gz
| Download URL | joy_trust_provider-1.0.0.tar.gz |
|---|---|
| Size | 5.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1ef564885c53f92f723d027d4ecde5d1b9e1984bae0fcb487a69f5502817f2bc
|
|
BLAKE2b-256 checksum How to use checksums |
82adf5f0ffaaca7b4a9b24d1498d2dacfe950f9d0ebc35887fdbd667ef7a0f60
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.0
|
Release files / joy_trust_provider-1.0.0-py3-none-any.whl
| Download URL | joy_trust_provider-1.0.0-py3-none-any.whl |
|---|---|
| Size | 6.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5b461f1e9f8e01fe831005c34f19db155bbd08d97a322d51b56bb8382c25b4a7
|
|
BLAKE2b-256 checksum How to use checksums |
731ef7dfa9db0904a214c702b40a4a834098525bcf44d5eb57d9d1f3dfa2a7e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.0
|