CELEBI

Open source · Apache-2.0

Reproducible analysis management for high-energy physics

Celebi organizes projects, data, algorithms, and tasks into a structured workspace — with dependency tracking, provenance, and snapshotting built in — so complex HEP analysis chains stay reproducible, traceable, and collaborative.

git clone https://github.com/CelebiProjects/Celebi.git
cd Celebi && pip install .

Structured organization

Clear separation of projects, data, algorithms, and tasks within a well-defined hierarchy.

Dependency tracking

Relationships between data, algorithms, and tasks form a directed acyclic graph you can inspect and replay.

Impressions

Snapshot important results, configurations, and object states over time — a built-in versioning memory.

Reproducibility

Workflow structure, parameters, inputs, and execution environments are captured completely.

Adaptability

Change an algorithm or a parameter and re-run only the affected downstream tasks.

Collaboration

Share projects and workflows consistently across people, machines, and environments.

See it in action

celebi — quick tour
$ celebi init my_analysis
✓ project created — workspace ready
$ celebi-cli create-algorithm selection
✓ algorithm /selection registered
$ celebi-cli create-task preselection --algorithm selection
✓ task /preselection created, inputs linked
$ celebi-cli submit /preselection
→ runner [local] status: running …
✓ finished in 42s — outputs recorded
$ celebi-cli make-impression "preselection v1"
✓ impression sealed — provenance captured

Core concepts

A small vocabulary that keeps large analyses organized.

Project

A self-contained analysis workspace — the root container and top-level namespace.

Directory

Organizational units that group objects inside a project.

Data

Raw or derived datasets registered and managed by Celebi.

Algorithm

A reusable, stateless template for computation — the “how”.

Task

A concrete execution instance of an algorithm with specific inputs and parameters — the “what”.

Runner

An execution backend: local machine, batch system, or remote resource.

Impression

A recorded snapshot of key outputs and analysis states.

Get started in minutes

1

Install

Celebi is a Python package. Clone and install:

git clone https://github.com/CelebiProjects/Celebi.git
cd Celebi && pip install .
2

Initialize a project

Create a workspace and enter the Celebi shell:

celebi init my_analysis
celebi
3

Build and run a workflow

Define algorithms, wire tasks, and submit — dependencies resolve automatically:

celebi-cli create-algorithm selection
celebi-cli create-task preselection --algorithm selection
celebi-cli submit /preselection

Latest news

All news →

Roadmap

Where Celebi is heading.

Current

  • CelebiChrono core: projects, tasks, algorithms, data, impressions
  • CLI with project-root @/ path support and tab completion
  • VS Code extension: tree view, submit, trace visualization
  • Desktop UI: DAG viewer, runner management, integrated terminal
  • Claude Code skills for AI-assisted workflows

Near-term

  • PyPI packaging and streamlined installation
  • Batch and remote runners (HTCondor, Slurm)
  • Expanded documentation and tutorials
  • Web-based monitoring dashboard

Future

  • Collaborative project registry and sharing hub
  • Cloud execution backends
  • Experiment-specific integrations and templates