Skip to main content

pipeio

Agent-facing authoring and discovery layer for computational pipelines in research repositories.

Part of the projio ecosystem.

What pipeio does

pipeio makes pipeline knowledge queryable and actionable for AI agents. It does not compete with execution engines (Snakemake), provenance systems (DataLad), app lifecycle managers (snakebids), or path resolvers (snakebids bids()).

Each flow is a self-contained snakebids app producing one derivative directory. The pipe field is a category tag grouping related flows. Mods are logical modules (rule groups) within a flow.

Core features

  • Registry & discovery — scan, load, validate, and query the flow/mod hierarchy
  • AI-safe authoring — rule_insert, config_patch, mod_create with validation
  • Contract semantics — declarative I/O validation and cross-flow wiring
  • Flow config — declarative output registry (data contracts) in config.yml
  • Notebook lifecycle — pair, sync, execute, and publish Jupytext notebooks
  • Scaffolding — create new flows and mods from templates
  • Documentation — collect, nav generation, modkey bibliography

Install

pip install pipeio                # core
pip install pipeio[notebook]      # + jupytext/nbconvert
pip install pipeio[bids]          # + snakebids adapter

CLI

pipeio init                       # scaffold .pipeio/ in the current project
pipeio flow list [--pipe PIPE]    # list all flows
pipeio flow new <pipe> <flow>     # scaffold a new flow
pipeio registry scan              # discover flows from filesystem
pipeio registry validate          # validate registry consistency

Python API

from pipeio import FlowConfig, PipelineContext

cfg = FlowConfig.from_yaml(Path("code/pipelines/preprocess/ieeg/config.yml"))
ctx = PipelineContext.from_config(cfg, root=Path("."))

sess = ctx.session(subject="01", session="pre")
path = sess.get("badlabel", "npy")
paths = sess.bundle("badlabel")  # {'npy': Path(...), 'featuremap': Path(...)}

Implementation status

Module Status Description
Registry Done scan, load, validate, query, YAML round-trip
Flow config Done load, extra inputs, groups/products, validation
Path resolution Done SimpleResolver, PipelineContext, Session, Stage
CLI Done init, flow list/new, registry scan/validate
MCP tools Done 35 tools across 7 categories (authoring, discovery, contracts, notebooks, docs)
Contracts Done Models, I/O validation, cross-flow wiring
Notebook lifecycle Done pair, sync, execute, publish, pipeline composite
BIDS adapter Stub Requires pipeio[bids]

Delegation

pipeio delegates execution concerns to specialized tools:

  • Execution: snakebids run.py → Snakemake
  • Provenance: DataLad run records
  • Path resolution: snakebids bids() + generate_inputs()
  • App lifecycle: snakebids deployment modes

Development

pip install -e ".[dev]"
make test

Metadata

Release files for pipeio 0.1.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 pipeio 0.1.0
File Size Uploaded Provenance Actions
pipeio-0.1.0.tar.gz 109.3 kB Without provenance Details for pipeio-0.1.0.tar.gz

Built distribution (wheel)

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

Total release size: 201.8 kB

Release files / pipeio-0.1.0.tar.gz

Download URL pipeio-0.1.0.tar.gz
Size 109.3 kB
Tags Source
SHA-256 checksum
How to use checksums
56dffea05c51d8c6d9e491008d3bdb4ce1dce8110c21c9b6c4f8ae88614d33a0
BLAKE2b-256 checksum
How to use checksums
a2967be1347b2e149fdd46749fa3d9e4709e2b26c2fbc6afb0fb306f41170a31
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.13

Release files / pipeio-0.1.0-py3-none-any.whl

Download URL pipeio-0.1.0-py3-none-any.whl
Size 92.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a1060f324d6edcdb533246ec95948d286ca75061587c1559767dd230ddf4b346
BLAKE2b-256 checksum
How to use checksums
96eb82a3b40a75215effc1e4193b0de9eb759fdc94844bab703b60fa3f9c9448
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.13

Security for pipeio 0.1.0

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A 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.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

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