Agent Settlement Extension (ASE) Protocol Implementation
Project description
Agent Settlement Extension (ASE)
Agent Settlement Extension (ASE) is an economic metadata layer that extends agent-to-agent (A2A) and Model Control Protocol (MCP) communications with economic semantics. ASE provides standardized schemas, validation, and reference implementations to enable agents to express economic intents, settlements, audit bundles, and related metadata in interoperable ways.
Key goals
- Make economic semantics first-class in agent messaging.
- Provide machine-readable schemas and validators for settlement, audit, and delegation tokens.
- Offer lightweight reference code to integrate ASE with agent frameworks.
Repository layout
schemas/— JSON Schema files describing ASE data structures (audit bundles, delegation tokens, monetary amounts, etc.).src/— Reference Python implementation and adapters. Key modules:core/— ASE core models, validation, serialization, and business logic.adapters/— Integration adapters (e.g. LangChain, AutoGPT helpers).crypto/— Key handling, signing, and token utilities.governance/— Compliance helpers and RFC-style governance workflows.
tests/— Test suites and example scenarios validating cross-framework compatibility and protocol behavior.GET_STARTED.mdandPROTOCOL.md— Design notes and protocol specifics.
Quick start (developer)
- Create a Python virtual environment and install test/dev dependencies from
tests/requirements.txt.
python3 -m venv .venv
source .venv/bin/activate
pip install -r tests/requirements.txt
- Run the test suite to confirm everything passes:
pytest -q
Using the schemas
- The
schemas/directory contains canonical JSON Schema files. Use your preferred validator (e.g.,jsonschemaPython package) to validate ASE messages. - See
src/serialization.pyandsrc/validation.pyfor examples of programmatic validation and serialization.
Development notes
- Keep schema changes backward compatible where possible. Use a versioning scheme when introducing breaking changes and update
version-migration.schema.jsonaccordingly. - Follow existing module patterns in
src/corewhen adding new models or validators.
Tests
- Unit and integration tests live in
tests/. They include interoperability scenarios between ASE-aware and non-ASE agents. - To run a specific test file:
pytest tests/test_simple.py -q
License
- This project is licensed under the Apache License 2.0. See
LICENSEfor the full text.
Contributing
- Open issues for bugs and feature requests.
- For changes to schemas, include upgrade guidance and migration examples.
- Follow the existing code style and add tests for new behaviors.
Contact / Author
- RAWx18 (rawx18.dev@gmail.com)
Acknowledgements
- ASE aims to be framework-agnostic; adapters demonstrate integration patterns with popular agent frameworks.
Project details
Release history Release notifications | RSS feed
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 ase_protocol-1.0.1.tar.gz.
File metadata
- Download URL: ase_protocol-1.0.1.tar.gz
- Upload date:
- Size: 88.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5f6e49f57993cd79b6768d9c349624d989581c403a2e0b590bf8ee2bb7b9b72f
|
|
| MD5 |
ec5d3dd2876c506ce2e89ed4d1ee13c4
|
|
| BLAKE2b-256 |
69e3fc812e2140154d4224966f52f3f2361031f9f07748f89ad285a5d81eded3
|
File details
Details for the file ase_protocol-1.0.1-py3-none-any.whl.
File metadata
- Download URL: ase_protocol-1.0.1-py3-none-any.whl
- Upload date:
- Size: 47.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e610f387535791ccf1b4ab2ef8364f8e397d0fbf550f5837b930549c05f4f655
|
|
| MD5 |
86cc21ab339494c9b194f01f0c008fa3
|
|
| BLAKE2b-256 |
359c9afbf0e251cdde01ea4096ad4b40d605a8e01ee067d8a9c6c7f7ea44622c
|