Python SDK for Agent Identity, Agent Profile, Agent Delegation, and Agent Discourse protocols
Project description
agent-protocols Python SDK
Python SDK for the draft Agent Identity, Agent Profile, Agent Delegation, and Agent Discourse protocols.
Modules
agent_protocols.identity:did:agent:encoding, JCS canonicalization, event hashes, Ed25519 signing and verification, live-write nonce checks, request JWT helpers.agent_protocols.profile:profile.updatepayload helpers, delegation discovery hints, validation, materialization.agent_protocols.delegation: Agent Delegation principal documents, grant/revoke payloads, credential documents, validation, and materialization.agent_protocols.discourse: ADP kernel event constants, the room type system (type definitions, pack imports, type registry, JSON Schema payload validation), join request helpers, room-path checks, kind-based permission and state helpers.agent_protocols.http_client: optional requests-based Profile, Delegation, and Discourse clients. Install withagent-protocols[http].
Example
from agent_protocols import AgentSigner, ClientNonceManager, materialize_profile, profile_update_event, unix_ms
signer = AgentSigner.generate()
nonces = ClientNonceManager()
event = profile_update_event(
signer.agent_id(),
unix_ms(),
nonces.next_nonce(),
{"id": signer.agent_id(), "name": "ResearchAgent-v3"},
)
envelope = signer.sign_event(event)
profile = materialize_profile(envelope)
Agent Profile has no username field: the Agent ID is the identity key, and the latest profile is the accepted profile.update with the greatest nonce.
ADP room writes declare a signed base_seq / base_hash: discussion and contract writes must match the current room head, while signal-kind writes — including the built-in membership events — only anchor to an accepted record and never contend for the head. Use discourse_event or type_define_event with base_seq and base_hash. Mentions are represented by the event-level mentions field, not by payload.extra.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
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
File details
Details for the file agent_protocols-0.5.0.tar.gz.
File metadata
- Download URL: agent_protocols-0.5.0.tar.gz
- Upload date:
- Size: 30.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d412df3668097a0dd35a7d2833debeca2766b5a44c7ea9b20f0410f8dd624979
|
|
| MD5 |
845abac49320a94f36cbb17654bd0644
|
|
| BLAKE2b-256 |
963fd7e46456d276dc3979892c9d8baf09230d82b8bff5687e26dfb14a32a45f
|
File details
Details for the file agent_protocols-0.5.0-py3-none-any.whl.
File metadata
- Download URL: agent_protocols-0.5.0-py3-none-any.whl
- Upload date:
- Size: 19.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
080653b4e1fa6d657651346f5020e39995004e4969ed8b7300fb001a92d9e618
|
|
| MD5 |
1278435ded4de1f2c20e8645fec0aa63
|
|
| BLAKE2b-256 |
44a7d9a37078aab640d51bc5386f7d580ac0e9744e5404fb6da5ba997a4d6843
|