Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Swarmauri Logo

PyPI - Downloads Hits PyPI - Python Version PyPI - License PyPI - swarmauri Discord

Swarmauri

Swarmauri is the namespace package for the Swarmauri SDK. It installs the lightweight import microkernel that lets applications use stable swarmauri.<component_kind>.<ClassName> import paths while concrete implementations live in separate first-party, community, plugin, or experimental distributions.

What Is Swarmauri?

Swarmauri is a composable intelligence infrastructure SDK for building typed, pluggable Python systems. The swarmauri distribution is the package users install when they want the public namespace, plugin discovery, registry-backed component resolution, and curated optional dependency groups for common component families.

Why Swarmauri?

Swarmauri gives applications one stable Python namespace for a large and growing set of independently packaged SDK components. Instead of hard-coding every implementation package into application imports, the namespace importer resolves registered component paths through interface and citizenship registries.

FAQ

Q: What does the swarmauri package install?

A: It installs the public Swarmauri namespace, the namespace importer, interface registry access, plugin citizenship registry access, and entry-point discovery hooks.

Q: Does swarmauri contain every component implementation?

A: No. It routes to installed implementation packages. Foundational packages such as swarmauri_core, swarmauri_base, and swarmauri_standard provide contracts, base behavior, and standard components.

Q: When should I import from swarmauri instead of a concrete package?

A: Use swarmauri imports when you want stable public namespace paths. Import a concrete package directly when you want the narrowest dependency surface for one implementation.

This package is best for:

  • AI application developers who want stable imports for agents, tools, models, parsers, vector stores, signing components, key providers, middleware, transports, and related SDK components.
  • Platform engineers who need registry-driven plugin discovery without hard-coding every implementation package into application code.
  • Component authors who want their packages to participate in the Swarmauri namespace through entry points and citizenship mappings.
  • Operators who need a small runtime package that can load installed Swarmauri components on demand.

How The Namespace Works

When import swarmauri runs, the package registers SwarmauriImporter on sys.meta_path and discovers installed plugins. The importer consults two registries:

  • InterfaceRegistry maps resource namespaces such as swarmauri.llms, swarmauri.tools, and swarmauri.signings to their validation interfaces.
  • PluginCitizenshipRegistry maps public namespace paths to implementation modules and classifies components as first-class, second-class, or third-class citizens.

The result is a stable public namespace over independently versioned packages. For example, swarmauri.signings.Ed25519EnvelopeSigner can resolve to the implementation package that provides the signer, while application code keeps the Swarmauri namespace import.

Features

  • Stable swarmauri.* namespace imports for installed SDK components.
  • Registry-backed component discovery through first-class, second-class, and third-class citizenship mappings.
  • Entry-point scanning for installed plugins and community packages.
  • Interface-aware resource kinds for agents, chains, chunkers, conversations, embeddings, LLMs, parsers, tools, vector stores, signing, crypto, key providers, transports, middleware, and more.
  • Optional dependency groups for curated component families, including default, full, and llms.
  • Pydantic-based typed component workflows through swarmauri_base and concrete packages.
  • Python 3.10, 3.11, 3.12, 3.13, and 3.14 support.

Installation

Install the namespace package with uv:

uv add swarmauri

Or install it with pip:

pip install swarmauri

Install optional LLM integrations when you want the curated LLM package set:

uv add "swarmauri[llms]"

For the broader curated component bundle:

uv add "swarmauri[full]"

Usage

Importing swarmauri activates the namespace importer and plugin discovery:

import swarmauri

from swarmauri.interface_registry import InterfaceRegistry
from swarmauri.plugin_citizenship_registry import PluginCitizenshipRegistry

namespaces = InterfaceRegistry.list_registered_namespaces()
registered = PluginCitizenshipRegistry.total_registry()

print("known namespaces", len(namespaces))
print("known component mappings", len(registered))

Resolve a component through a stable namespace path after the implementation package is installed:

import swarmauri

from swarmauri.signings.Ed25519EnvelopeSigner import Ed25519EnvelopeSigner

signer = Ed25519EnvelopeSigner()
print(signer.type)

The implementation still comes from the signer package, but application code can use the Swarmauri public namespace.

Component Author Workflow

To make a component available through the Swarmauri namespace:

  1. Implement the concrete class in its own package.
  2. Ensure the class satisfies the relevant interface from swarmauri_core and base behavior from swarmauri_base.
  3. Expose the component through a swarmauri.<kind> entry point or a citizenship registry mapping.
  4. Import swarmauri in the consuming environment so the namespace importer and plugin discovery run.
  5. Validate the public namespace path in tests.

Examples

List known public namespaces:

from swarmauri.interface_registry import InterfaceRegistry

for namespace in InterfaceRegistry.list_registered_namespaces():
    print(namespace)

Inspect registered first-party and discovered component paths:

from swarmauri.plugin_citizenship_registry import PluginCitizenshipRegistry

for (
    public_path,
    module_path,
) in PluginCitizenshipRegistry.total_registry().items():
    print(public_path, "->", module_path)

Invalidate plugin entry-point cache after changing the Python environment at runtime:

from swarmauri.plugin_manager import invalidate_entry_point_cache

invalidate_entry_point_cache()

Core Swarmauri packages:

  • swarmauri_core provides interface contracts used by component packages.
  • swarmauri_base provides reusable base classes, serialization helpers, and component registration behavior.
  • swarmauri_standard provides first-party standard components across agents, tools, parsers, prompts, metrics, similarities, deprecated distance compatibility shims, and other common resource kinds.

Related component kinds:

Documentation

When To Use This Package

Use swarmauri when you want the stable SDK namespace and plugin discovery behavior. Use the implementation package directly when you want to depend on only one specific component and do not need namespace routing.

License

Apache-2.0

Contributing

Contributions are welcome. Before adding a new public namespace path, update the interface and citizenship registries, add package-level tests for import resolution, and follow the Swarmauri SDK contribution guide.

Metadata

Release files for swarmauri 0.11.0.dev6

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

Source distribution (sdist)

Source distribution for swarmauri 0.11.0.dev6
File Size Uploaded Provenance Actions
swarmauri-0.11.0.dev6.tar.gz 30.8 kB Without provenance Details for swarmauri-0.11.0.dev6.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for swarmauri 0.11.0.dev6
File Interpreter ABI Platform Actions
swarmauri-0.11.0.dev6-py3-none-any.whl Python 3 none any Details for swarmauri-0.11.0.dev6-py3-none-any.whl

Total release size: 60.3 kB

Release files / swarmauri-0.11.0.dev6.tar.gz

Download URL swarmauri-0.11.0.dev6.tar.gz
Size 30.8 kB
Tags Source
SHA-256 checksum
How to use checksums
c10056e220d31c7b0ca1da3c543f97d2d3dd9bc653c13382164c344e210a54cf
BLAKE2b-256 checksum
How to use checksums
2d5cb2b20c83a5be7288aef9a57802b3e5afaa91e51b9a5b011da990aa56da81
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
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":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / swarmauri-0.11.0.dev6-py3-none-any.whl

Download URL swarmauri-0.11.0.dev6-py3-none-any.whl
Size 29.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1e9f3c5efb406e381fb7e890cc256a8785099b86817ee51cd4d877f9e6a70379
BLAKE2b-256 checksum
How to use checksums
bd801a828312f294da976ece6d610fa606bb762ca85a9ed74e25306dfc4b5cc7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
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":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for swarmauri 0.11.0.dev6

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
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