Skip to main content

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.update payload 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 with agent-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

agent_protocols-0.5.0.tar.gz (30.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agent_protocols-0.5.0-py3-none-any.whl (19.3 kB view details)

Uploaded Python 3

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

Hashes for agent_protocols-0.5.0.tar.gz
Algorithm Hash digest
SHA256 d412df3668097a0dd35a7d2833debeca2766b5a44c7ea9b20f0410f8dd624979
MD5 845abac49320a94f36cbb17654bd0644
BLAKE2b-256 963fd7e46456d276dc3979892c9d8baf09230d82b8bff5687e26dfb14a32a45f

See more details on using hashes here.

File details

Details for the file agent_protocols-0.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for agent_protocols-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 080653b4e1fa6d657651346f5020e39995004e4969ed8b7300fb001a92d9e618
MD5 1278435ded4de1f2c20e8645fec0aa63
BLAKE2b-256 44a7d9a37078aab640d51bc5386f7d580ac0e9744e5404fb6da5ba997a4d6843

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page