Install AI capabilities, not libraries.
AIRegistry is an open-source registry and dependency-free CLI for reusable, versioned AI building blocks: retrieval, memory, agents, prompts, tools, citations and validation.
What is AIRegistry?
AI projects keep rebuilding the same small pieces: prompt builders, chunkers, retrievers, memory, validators, tool routers. AIRegistry packages them as small, readable, versioned source components that you copy into your own project and own.
search -> inspect -> add -> build
Reuse the capability. Own the source. Pin the version.
| Versioned, immutable releases | Every release lives at registry/<name>/versions/<version>/ and is never edited afterwards. |
| Exact references | ai add keyword-rag@1.1.0 installs precisely that release. |
| Verified installs | Every file has a SHA-256 checksum that the CLI checks before writing anything. |
| Standard library only | The CLI and every component run on plain Python 3.9+. |
| Review-first publishing | Community submissions become GitHub pull requests, never direct commits. |
Quick start
Install the CLI from a checkout:
git clone https://github.com/MUdevelops/AIRegistry.git
cd AIRegistry
python -m pip install .
Then, in your own project:
ai search rag # find components
ai info keyword-rag # inspect: releases, files, dependencies
ai add keyword-rag --dry-run # preview, writes nothing
ai add keyword-rag # install the latest release
ai add context-builder@1.1.0 # or pin an exact release
ai list # what is installed
ai update # move installed components to their latest release
ai remove keyword-rag
Components are copied to ai_components/<name>/ (change it with --dir) and recorded in .airegistry/lock.json. Use one in your code:
import sys
sys.path.insert(0, "ai_components/keyword-rag/src")
from keyword_rag import retrieve
print(retrieve(["Cats purr.", "Python is a language."], "python", top_k=1))
Without pip, run the CLI directly: python ai.py search rag. In a checkout, the CLI reads the local registry.json; otherwise it uses the public registry. Point it elsewhere with ai config registry_url <path-or-https-url>.
Component catalog
| Component | Latest | Category | What it does |
|---|---|---|---|
agent |
1.0.0 |
agent | Deterministic tool-calling agent loop with a pluggable planner, step records and bounded execution. |
citation-builder |
1.1.0 |
tool | Format numbered source citations and bibliographies with duplicate merging and stable numbering. |
context-builder |
1.1.0 |
retrieval | Combine retrieved passages into a numbered, size-limited context block for prompts. |
conversation-memory |
1.1.0 |
memory | In-process conversation store with size limit, keyword search, character-budget windows and snapshots. |
json-validator |
1.1.0 |
validation | Validate JSON text and return error position, type, keys and readable schema violations. |
keyword-rag |
1.1.0 |
retrieval | Dependency-free keyword retrieval that ranks documents and returns relevant passages. |
prompt-builder |
1.1.0 |
prompt | Build reusable prompts from system, instruction, context and input sections with safe placeholder filling. |
query-rewriter |
1.1.0 |
retrieval | Deterministic query normalization, stopword removal and keyword variants for retrieval workflows. |
retrieval-pipeline |
1.1.0 |
workflow | Compose a retriever and a context builder into one validated workflow that returns bounded AI-ready context. |
text-chunker |
1.1.0 |
text | Split text into overlapping chunks by characters or words, with optional source offsets. |
tool-router |
1.1.0 |
tool | Register Python functions as named tools and execute calls safely, returning errors as data. |
Every component is stdlib-only, typed, documented and covered by tests. Dependencies between components are optional and exact; ai add shows them but never installs them automatically. Typical composition:
query-rewriter --> keyword-rag --> context-builder --> prompt-builder
\______ retrieval-pipeline ______/
conversation-memory tool-router --> agent citation-builder
Browse the full catalog at the live registry.
Registry model
registry/
keyword-rag/
versions/
1.0.0/ component.json README.md src/keyword_rag.py
1.1.0/ component.json README.md src/keyword_rag.py
python scripts/build_registry.py validates every release and generates registry.json and website/registry.json; --check fails when they are stale. A release is never changed after it is published: fixes ship as a new version. See ARCHITECTURE.md.
Community publishing
GitHub sign-in -> Submit Component -> Worker validation -> GitHub App -> branch + commit -> Pull Request -> CI + review -> merge
The publisher accepts new components and new releases of existing ones. Nothing is written to main directly. Read CONTRIBUTING.md for the format and rules.
Security
Registry content and submissions are untrusted input. The CLI validates paths and checksums, rejects executable file types and never runs what it installs. See SECURITY.md for details and how to report a vulnerability.
Development
python scripts/build_registry.py --check
python -W error -m unittest discover -s tests -v
python -m py_compile ai.py scripts/build_registry.py
node --check website/app.js
node --check cloudflare/worker.js
Deployment and operations: docs/CLOUD_AUTH.md, docs/MONITORING.md.
License
MIT. See LICENSE.
Metadata
Release files for airegistry-cli 2.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| airegistry_cli-2.3.1.tar.gz | 30.2 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| airegistry_cli-2.3.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 41.9 kB
Release files / airegistry_cli-2.3.1.tar.gz
| Download URL | airegistry_cli-2.3.1.tar.gz |
|---|---|
| Size | 30.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8358053a33487929b48e018c1722ba08da1fce42d3b6ce9584995a2bc323ee61
|
|
BLAKE2b-256 checksum How to use checksums |
1849331a01aca82ef58e24823e68697b8c376e14d9fc6a12eda05f6143353ae1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.
Transparency logRelease files / airegistry_cli-2.3.1-py3-none-any.whl
| Download URL | airegistry_cli-2.3.1-py3-none-any.whl |
|---|---|
| Size | 11.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
13ac3136cf9700f850b51ca7778e83f4101c7d2c0f64bd9aefc8ad1ed400d958
|
|
BLAKE2b-256 checksum How to use checksums |
d9ad90019d8bd214911f4f59815c36f3271093672bcf4ccbbc38ca4dd3e786cd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.
Transparency logSecurity for airegistry-cli 2.3.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.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for airegistry_cli-2.3.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.
Transparency logA 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.