Skip to main content

recp logo

recp: command-line pipelines defined in YAML

recp (short for recipe) runs processes made of multiple command-line steps. A recipe is a .yaml file that lists the steps to run. Each step can have tags, a description, environment variables, a working folder and one or more commands. Commands can be pre-processed with modifiers, so that a single command template is expanded into many commands, e.g. one per file in a folder or one per combination of parameter values.

A recipe can contain many steps, and a subset of them can be selected by name or tag. The --dry-run option prints the commands without running them, and a failed run can be resumed from a given step with --from. Commands of a step can run in parallel, and commands whose outputs already exist can be skipped, which is useful when processing large datasets.

While the commands of a parallel step run, recp shows a table with the status and last output line of each command. Their output is saved, so it can be read later or followed from another terminal:

recp run recipe.yaml --jobs 4                   # run up to 4 commands at a time in parallel steps
recp status                                     # status of the commands of the latest run
recp log 3                                      # output of command 3
recp follow 2                                   # stream the output of command 2 while it runs

Installation

recp is best installed as a uv tool:

uv tool install recp

It can also be installed with pip:

pip install recp

Quickstart

See the quickstart guide.

Documentation

The recp documentation is available online. You can also build and view it locally by running:

uv run --extra docs mkdocs serve

Cite

If recp contributed to your work, please consider citing it:

@misc{recp,
  author = {Esteban Gómez},
  title  = {recp},
  year   = 2026,
  url    = {https://github.com/eagomez2/recp}
}

License

For further details about the license of this package, please see LICENSE.

Metadata

Release files for recp 0.4.0

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

Source distribution (sdist)

Source distribution for recp 0.4.0
File Size Uploaded
recp-0.4.0.tar.gz 38.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for recp 0.4.0
File Interpreter ABI Platform
recp-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 80.2 kB

Release files / recp-0.4.0.tar.gz

Download URL recp-0.4.0.tar.gz
Size 38.2 kB
Tags Source
SHA-256 checksum
How to use checksums
0445fe9a5f5f53d568e859e9602a16f5eceb800c07aec95deac7a85f588ee1c4
BLAKE2b-256 checksum
How to use checksums
63a515ce20e49eab9a0bf3f99b8b3324abc32be8c698049ed419d8619cb6e992
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-requests/2.32.5

Release files / recp-0.4.0-py3-none-any.whl

Download URL recp-0.4.0-py3-none-any.whl
Size 41.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fd418919c80d98ba8c4fcfb1cb6b14bb89a36c12de7cfdefa021acc20f631dea
BLAKE2b-256 checksum
How to use checksums
945946648972426cb2efd5cb323a913e786e5c9f25b8c66c9ea4b87139b16aea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-requests/2.32.5

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

0.3.0

2 release files

0.1.4

2 release files

0.1.2

2 release files

0.1.1

2 release files

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