Skip to main content

elan-agentkit-contracts

The models the Elan platform and its clients both read: the event envelopes, the agent manifest, the elan.yaml deploy spec, the artifact scope vocabulary and the naming rules every derived identifier follows.

You almost certainly do not need to install this directly. elan-sdk and elan-cli depend on it, and installing either brings it along.

uv add elan-agentkit-contracts

Requires Python 3.12 or newer. Its only dependencies are pydantic and pyyaml.

Why it is a separate package

The SDK validates an artifact filename before asking for an upload ticket, and the CLI's elan validate answers the same question the deploy service will. Both are only worth anything while there is one copy of each rule — a client that reimplements a predicate passes its own tests against its own copy, and nothing compares the copies.

So these modules are shared rather than mirrored. What is not shared is everything that verifies, mints or connects: the token verifiers, the ticket minter, the database layer, the broker and the push transports stay in the platform's own package. A client has no business holding a verifier, and your application image has no business carrying a Pub/Sub SDK.

What is in it

Module What it holds
envelopes AgentEventEnvelope, InvocationEnvelope, ResumeEnvelope, EventKind
manifest AgentManifest, WorkflowManifest, ActionPolicy, Rule, Billing, Limits
deploy_spec DeploySpec, spec_from_yaml, cross_check, Problem
identity slug rules and every name derived from (tenant, project, agent)
artifacts the four artifact scopes, and what a filename may say
pricing the price grammar and tier arithmetic
tickets TICKET_ISSUER, TICKET_QUERY_PARAM, stream_url
subjects END_USER_PREFIX, TENANT_SCOPE, end_user_of
oauth token_scope — the one non-standard part of an OAuth request here
templates what elan new agent scaffolds

Stability

Pre-1.0 and versioned with the rest of the platform's client packages. These are wire contracts, so a field is added far more often than one changes meaning; when one does, it goes in the changelog with the version that introduced it.

Documentation

https://openelan.ai/app/docs

Licence

Apache-2.0. See LICENSE.

Metadata

Release files for elan-agentkit-contracts 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for elan-agentkit-contracts 0.1.1
File Size Uploaded Provenance Actions
elan_agentkit_contracts-0.1.1.tar.gz 84.1 kB Without provenance Details for elan_agentkit_contracts-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for elan-agentkit-contracts 0.1.1
File Interpreter ABI Platform Actions
elan_agentkit_contracts-0.1.1-py3-none-any.whl Python 3 none any Details for elan_agentkit_contracts-0.1.1-py3-none-any.whl

Total release size: 177.2 kB

Release files / elan_agentkit_contracts-0.1.1.tar.gz

Download URL elan_agentkit_contracts-0.1.1.tar.gz
Size 84.1 kB
Tags Source
SHA-256 checksum
How to use checksums
b7adf6d9028790afe5fddaeed2e94bfb56d2796647a291ae4fb9c921825471c9
BLAKE2b-256 checksum
How to use checksums
1814ca44cd6211ed8c8820da4bc2bddb07b46ebd935367a75ffd910eb0eac7f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.7 {"installer":{"name":"uv","version":"0.13.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / elan_agentkit_contracts-0.1.1-py3-none-any.whl

Download URL elan_agentkit_contracts-0.1.1-py3-none-any.whl
Size 93.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bfacb12f5a120ddb81453b7264a004f644e7ad8c50015559876f9ac58215c8bd
BLAKE2b-256 checksum
How to use checksums
d087c21d6d1cface297c8e273c8b7ac4859ec4fb053c2ff72d5d9adbff031bd7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.7 {"installer":{"name":"uv","version":"0.13.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for elan-agentkit-contracts 0.1.1

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.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page