runchain
Manage and execute chains of scripts.
Runchain allows you to group scripts into named chains, schedule them with cron, and run them in a predictable order. Perfect for backup scripts and maintenance tasks.
- Group scripts into ordered chains
- Schedule chains with crondir integration
- Simple Python API and CLI interface
Usage
Install runchain:
pip install runchain
Create a backup chain by adding scripts:
runchain add backup ~/scripts/database-backup.sh 10
runchain add backup /usr/local/bin/file-backup.py 20-files
runchain add backup ./30-cleanup.sh
List your chains:
runchain list
List scripts in a specific chain:
runchain list backup
Run a chain manually:
runchain run backup
Schedule a chain with crondir:
runchain cron backup "0 2 * * *"
Remove a script or entire chain:
runchain remove backup 20-files
runchain remove backup
Or you may find it easier to skip the install step and run it using uv:
uvx runchain add backup ~/scripts/backup.sh 10
uvx runchain cron backup "0 2 * * *"
uvx runchain run backup
By default, runchain stores chains in ~/.runchain/, with each chain in its own subdirectory.
For full command line options, see command documentation
Example
For an example of setting up a backup chain, see How to create a backup chain in the documentation.
Python API
from runchain import Chain, list_chains
# List all chains
chains = list_chains()
# Work with a specific chain
backup = Chain("backup")
backup.add("~/scripts/database.sh", "10")
backup.cron("0 2 * * *")
backup.run()
See the API documentation for more details.
Metadata
Release files for runchain 0.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| runchain-0.2.2.tar.gz | 9.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| runchain-0.2.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 16.5 kB
Release files / runchain-0.2.2.tar.gz
| Download URL | runchain-0.2.2.tar.gz |
|---|---|
| Size | 9.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6d583c544a3b60dce41acc005a15c6d67fd1c67523b1e03c2165dfb95d693da2
|
|
BLAKE2b-256 checksum How to use checksums |
d341f0e9f9376eab0cd4f677d3b5d307ccaf88683ad428318ea3c24582c04fe0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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 Jun 27, 2026.
Transparency logRelease files / runchain-0.2.2-py3-none-any.whl
| Download URL | runchain-0.2.2-py3-none-any.whl |
|---|---|
| Size | 7.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0aea07462dc27ae87c1675636c01e9bcf3b9b83e3c67be5c437c8a8906a43d64
|
|
BLAKE2b-256 checksum How to use checksums |
139080be730c3f731414655a6e30470a1410c5ab627f9572e0e1773b9eef4b60
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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 Jun 27, 2026.
Transparency log