Skip to content

Clause-Logic/registry

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Clause-Logic registry

Self-hosted package registry for Clause-Logic projects. Served from GitHub Pages at https://clause-logic.github.io/registry/.

Currently surfaces:

  • PyPI (PEP 503 simple index) at /pypi/simple/

The actual wheels live in each source repo's GitHub release assets — this repo only generates pointer HTML.

Add to your project

# pyproject.toml
[[tool.uv.index]]
name = "clause-logic"
url = "https://clause-logic.github.io/registry/pypi/simple/"

[tool.uv.sources]
exoclaw-channel-slack = { index = "clause-logic" }

How it works

A nightly workflow (and a repository_dispatch fired from source-repo releases) runs tools/rebuild.py:

  1. Reads manifest.toml for the list of source repos.
  2. For each, calls the GitHub API and collects every .whl / .tar.gz asset across all releases.
  3. Generates a PEP 503 HTML tree pointing at each asset's browser_download_url.
  4. Deploys the result to GitHub Pages.

To index a new project: add a [[pypi]] entry to manifest.toml.

Why not PyPI?

PyPI new-project creation is rate-limited (20 per user / 40 per IP per hour). When publishing many small packages at once — for example, the per-channel plugins in exoclaw-plugins — this becomes a hard blocker. The registry sidesteps it: wheels are uploaded as GitHub release assets, which has no equivalent limit.

GitHub Packages doesn't offer a PyPI registry (roadmap closed without plans), so this is the cleanest escape hatch.

About

Self-hosted package registry for Clause-Logic projects. PEP 503 PyPI index at /pypi/simple/, served from GitHub Pages.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors