CELEBIOpen 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
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.
The Celebi ecosystem
One project model, many ways to work with it.
CLI · Python
Celebi Core
The CelebiChrono engine and command-line interface: project model, DAG tracking, task submission, impressions.
→Editor integration
VS Code Extension
Project tree, task submission, impression management, and trace visualization directly in your editor.
→Electron app
Desktop UI
A graphical workbench: DAG viewer, runner management, job status, README editing, and integrated terminal.
→AI-assisted analysis
Claude Code Skills
A skill collection that lets Claude Code navigate projects, create objects, and run workflows on your behalf.
→Get started in minutes
Install
Celebi is a Python package. Clone and install:
git clone https://github.com/CelebiProjects/Celebi.git
cd Celebi && pip install .
Initialize a project
Create a workspace and enter the Celebi shell:
celebi init my_analysis
celebi
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
-
Desktop UI: DAG viewer, runner management, and job status
The Electron desktop app gains a dependency-graph viewer, DITE runner management, live job status, and an integrated terminal.
-
CLI: project-root @/ paths with tab completion
Task-configuration commands now resolve @/ paths relative to the project root, with shell tab completion support.
-
VS Code extension: styled output and README rendering
The VS Code extension adds a Celebi output formatter for ls/trace/message views and a Markdown README webview.
-
Celebi skills for Claude Code released
A skill collection that lets Claude Code navigate Celebi projects, create objects, and run workflows autonomously.
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