ComputeID SDK
Cryptographic identity for AI compute infrastructure and agentic AI systems.
Every GPU needs a passport. Every AI agent needs an identity.
What is ComputeID?
ComputeID provides two things:
- DeviceID — Cryptographic passports for GPUs, servers, and compute hardware
- AgentID — Cryptographic passports for AI agents and autonomous systems
Think of it as a passport system for AI infrastructure. Every device and every agent gets a unique cryptographic identity, a certificate of what it is allowed to do, and an immutable audit trail of everything it has done.
Installation
pip install computeid-sdk
Quick Start
v2.0.0 is a genuine, server-backed HTTP client — every call below is a real
request to the ComputeID API. (Earlier versions were a local-only
simulation; see CHANGELOG.md if you're upgrading from 1.x.)
from computeid import ComputeIDClient
client = ComputeIDClient(api_key="your-api-key")
GPU / Device Identity
device = client.register_device(
name="NVIDIA A100 #1",
device_category="gpu",
)
print(device["passport_id"], device["status"]) # real, server-issued
v = client.verify_device(device["passport_id"])
print(v["signature_valid"], v["pq_signature_valid"]) # real ML-DSA-87 verification
AI Agent Identity
from computeid import AgentPassport
# Issue a real passport for your AI agent
passport = AgentPassport.issue(
client, "ResearchAgent",
organization="Acme Corp",
capabilities=["read", "web_browse", "api_call"],
)
# Check if trusted before giving access — a real GET .../verify, every call
if passport.is_trusted():
run_your_agent(passport=passport)
# Log every action the agent takes (persisted server-side)
passport.log_action("web_search", details={"query": "market research"}, outcome="success")
# Revoke instantly if needed — a real DELETE .../revoke
passport.revoke(reason="Unexpected behaviour detected")
Capabilities and Trust Score
There's no separate client-side "trust level" concept — an agent's real
authorization is its capabilities list (plain strings you define, e.g.
"read", "web_browse", "invoke:llm", "write:payments"), checked
server-side via check_agent_capability().
Whether to actually trust an action right now is answered by Trust Score — a contextual, per-action score (not a static per-identity number) combining identity verification, whether the exact capability is granted, whether the passport is still active, its audit-log continuity, and (if it has one) borrowed credit from a well-established owner/delegator:
score = client.get_trust_score(passport_id, "write:payments")
print(score["trust_score"], "/", score["max_score"], score["decision"])
# decision is one of ALLOW / CONDITIONAL_ALLOW / DENY
Full Example — Agentic AI with PassportOffice, Trust Score, and Trust Graph
from computeid import ComputeIDClient, AgentPassport, PassportOffice
client = ComputeIDClient(api_key="your-api-key")
# 1. Issue a real passport, with a real capability list
passport = AgentPassport.issue(
client, "DataAnalysisAgent",
organization="Acme Corp",
capabilities=["read", "web_browse", "api_call"],
)
# 2. Gate a function on a real capability check
def search_web(query: str, passport: AgentPassport):
check = passport.check_capability("web_browse")
if not check["granted"]:
raise PermissionError(f"passport lacks web_browse: {check['reason']}")
return do_search(query)
results = search_web("GPU rental prices", passport=passport)
# 3. Real, contextual Trust Score before a sensitive action
score = passport.get_trust_score("api_call")
if score["decision"] != "ALLOW":
raise RuntimeError(f"blocked: {score['decision']}")
# 4. Multi-agent trust chain — real Trust Graph relationship, not local metadata
orchestrator = AgentPassport.issue(client, "OrchestratorAgent", organization="Acme Corp",
capabilities=["read", "spawn_agents"])
child_agent = AgentPassport.issue(client, "SubAgent-1", organization="Acme Corp",
capabilities=["read", "web_browse"])
client.create_relationship(orchestrator.passport_id, child_agent.passport_id, "delegates_to")
# child_agent's relationship_trust dimension now reflects real borrowed
# credit from orchestrator, IF orchestrator is itself well-established —
# see docs/design-trust-graph.md in computeid-backend for exactly how.
child_score = child_agent.get_trust_score("web_browse")
print(child_score["dimensions"]["relationship_trust"])
# 5. See exactly what revoking the orchestrator would affect, before doing it
impact = client.get_revocation_impact(orchestrator.passport_id)
for related in impact["revocation_impact"]["related_passports"]:
print(related["name"], "delta if revoked:", related["relationship_trust_delta"])
# 6. Organisation-wide tracking — real, live verification, not a cache
office = PassportOffice(client, org_name="Acme Corp")
office.track(orchestrator.passport_id)
office.track(child_agent.passport_id)
if office.is_trusted(child_agent.passport_id):
print("Agent is trusted (verified live, just now)")
print(f"Active agents right now: {len(office.get_active_agents())}")
Why Agent Passports Matter
The rise of agentic AI creates a new security challenge:
- Who built this agent? — No way to verify
- What is it allowed to do? — No standard capability model
- What has it done? — No audit trail
- Can we stop it? — No revocation mechanism
- Which agents trust each other? — No trust chain
ComputeID AgentID solves all of these with cryptographic guarantees.
Free Tier
| Feature | Free | Growth ($499/mo) | Enterprise ($1,999/mo) |
|---|---|---|---|
| Device passports | 3 devices | 50 devices | Unlimited |
| Agent passports | 5 agents | 100 agents | Unlimited |
| Audit log retention | 7 days | 90 days | 1 year |
| Quantum-safe certs | ❌ | ✅ | ✅ |
| Custom CA | ❌ | ❌ | ✅ |
| API access | ✅ | ✅ | ✅ |
Get started free at compute-id.com
Regulatory Compliance
ComputeID helps you meet:
- EU AI Act — requires audit trails for high-risk AI systems
- NIST AI RMF — AI risk management framework
- SOC2 Type II — compute infrastructure audit logs
- NSA CNSA 2.0 — post-quantum cryptography by 2030
Contributing
ComputeID SDK is open source under the MIT license.
We welcome contributions — especially:
- Client libraries for other languages (Go, Rust, Java)
- Integration examples with popular AI frameworks
- Protocol specification improvements
git clone https://github.com/trustedaicompute-ops/computeid-sdk
cd computeid-sdk
pip install -e ".[dev]"
Links
- Website: compute-id.com
- Dashboard: aicomputeid.com
- GitHub: github.com/trustedaicompute-ops
- Email: hello@compute-id.com
License
MIT License — free to use, modify and distribute.
Copyright 2026 ComputeID / TrustedAI Compute
Metadata
Release files for computeid-sdk 2.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 | Provenance | Actions |
|---|---|---|---|---|
| computeid_sdk-2.0.0.tar.gz | 12.7 kB | Without provenance | Details for computeid_sdk-2.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| computeid_sdk-2.0.0-py3-none-any.whl | Python 3 | none | any | Details for computeid_sdk-2.0.0-py3-none-any.whl |
Total release size: 22.8 kB
Release files / computeid_sdk-2.0.0.tar.gz
| Download URL | computeid_sdk-2.0.0.tar.gz |
|---|---|
| Size | 12.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fe91d2b60f720b353d968492cded79e20c9ce353f480cad3f9dc6dc9839deccb
|
|
BLAKE2b-256 checksum How to use checksums |
b6228cc777aa9a1f9cd904971b01d2823e196c3994c921f5b94fc5e44096f2ed
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.7
|
Release files / computeid_sdk-2.0.0-py3-none-any.whl
| Download URL | computeid_sdk-2.0.0-py3-none-any.whl |
|---|---|
| Size | 10.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2cae307660785518527e48f4b46d6bc30db506cf7826c5520ddc85c72dacf2da
|
|
BLAKE2b-256 checksum How to use checksums |
407cc906acb868a8a484e956c4cb17a2c5f3a8da6fbb8cb756fe9782217a3977
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.7
|
Security for computeid-sdk 2.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.