agentpypi — both ends of the Python distribution pipe for the AgentCulture mesh.
Project description
agentpypi
Status: v0.0.1 baseline landed. Packaging metadata, the Python package, tests, CI, and the agent-affordance verb surface are all checked in. The roadmap below describes the evolving surface; any verb listed under "Planned" is catalog-known but not yet registered as an argparse subcommand.
PyPI for the agents. agentpypi is the AgentCulture sibling that manages
both ends of the Python distribution pipe:
- Online PyPI — release orchestration for AgentCulture siblings
(
afi-cli,cfafi,ghafi,shushu,steward,zehut, …): version checks, TestPyPI smoke installs, PyPI publishing dashboards. Uses thepypi/testpypiGitHub Environments thatghafiprovisions, and the Trusted Publishing flow each sibling already wires into.github/workflows/publish.yml. - Local PyPI — a private index running on the Culture mesh so agents can publish and pull intra-mesh wheels (pre-release builds, internal-only packages, vendored mirrors) without leaving the org's trust boundary.
Part of the AgentCulture OSS org —
maintained jointly by agents and one human (Ori Nachum). Sibling to
afi-cli (the agent-first CLI
scaffolder this repo will be built from), ghafi
(GitHub-side bootstrapper), and steward
(alignment / skills supplier).
Install
uv tool install agentpypi
agentpypi --version
Python ≥ 3.12. uv tool install is the supported path — not pip install.
First release lands on PyPI on merge of v0.0.1 via OIDC Trusted
Publishing; until then, uv pip install -e . from a checkout works.
Surface (v0.0.1, with planned roadmap)
Every verb defaults to dry-run; --apply to commit. Every command supports
--json. Exit-code policy follows the afi rubric
(0 success / 1 user error / 2 env error).
# Registered (v0.0.1) — agent-affordance + localhost introspection
agentpypi learn # self-teaching prompt; --json supported
agentpypi explain <path> # markdown for any noun/verb (incl. planned)
agentpypi overview # probe localhost: devpi:3141, pypiserver:8080
agentpypi doctor [--fix] # same probes + diagnoses; --fix starts servers
agentpypi whoami # which PyPI / TestPyPI / local index am I on?
# Planned (v0.1.0) — orchestrate releases of AgentCulture siblings
agentpypi online status SIBLING # PyPI vs CHANGELOG vs main vs latest tag
agentpypi online release SIBLING # dry-run: would-be tag + workflow trigger
agentpypi online release SIBLING --apply
# Planned (v0.2.0) — manage the in-mesh local PyPI index
agentpypi local serve # run the local index (foreground)
agentpypi local upload PATH # publish a wheel/sdist to the local index
agentpypi local mirror PACKAGE # snapshot a public package into local
agentpypi local list # what's hosted locally
agentpypi explain online and agentpypi explain local resolve to
status: planned entries in the explain catalog at v0.0.1; calling the
verbs themselves errors with argparse's invalid choice until the
respective milestone lands.
Develop
uv sync # install + dev deps
uv run pytest -n auto -v # tests
uv run agentpypi --version # smoke
uv run pre-commit install # enable lint hooks
Quality pipeline mirrors the rest of the AgentCulture mesh: black, isort,
flake8 (+ flake8-bandit, flake8-bugbear), pylint, bandit,
markdownlint-cli2. CI runs on every PR + push to main.
Trusted Publishing
Once pyproject.toml lands, ghafi provisions the pypi / testpypi
GitHub Environments and .github/workflows/publish.yml follows the same
OIDC Trusted Publishing pattern every sibling uses — no secrets in the repo.
License
MIT. © 2026 Ori Nachum / AgentCulture.
— Claude
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 agentpypi-0.0.2.tar.gz.
File metadata
- Download URL: agentpypi-0.0.2.tar.gz
- Upload date:
- Size: 80.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bed335332b98d2519522cb3a51aef004e4bcb076d835c8afa2adc0b6ca0ec819
|
|
| MD5 |
a740cb405452281dc07a13653fbaefa2
|
|
| BLAKE2b-256 |
3d8cac8c3296428ba3ffe50c4e08a906ad4f4114f5b34eae2222c0e724832f08
|
File details
Details for the file agentpypi-0.0.2-py3-none-any.whl.
File metadata
- Download URL: agentpypi-0.0.2-py3-none-any.whl
- Upload date:
- Size: 23.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2706958d27b16c05db06f9c80efd5dacc52459cb76472ae9f16c20a35012e9b1
|
|
| MD5 |
1b16c3024579b4960e49fe0425bca04e
|
|
| BLAKE2b-256 |
2de38d5a0ed6f06a47dc841553de144b6bfa690415c574489dfdad4421df347a
|