AutoCleanEEG Pipeline is a modular framework for automated EEG preprocessing, review, and operational workflows built on MNE-Python.
It is designed for research settings that need reproducible task-driven processing, quality-control outputs, and a path from single-file validation to larger-scale batch or serve-style operation.
- Modular EEG preprocessing with task-based configuration
- Support for multiple paradigms including ASSR, Chirp, MMN, and resting state
- BIDS-aligned outputs and quality-control artifacts
- Plugin-based extensibility for formats, montages, and event handling
- Review tooling for inspecting outputs and exclusions
- Serve/TUI/web tooling in this repository for operational workflows
- Python
3.11to3.13 uvfor the recommended install workflow: https://docs.astral.sh/uv/- Optional components depend on workflow. Review GUI support, MATLAB-backed tasks, and Serve worker deployments may require additional local dependencies or services.
autocleaneeg-pipeline: primary CLI for processing, workspace, task, and Serve commandsautocleaneeg-serve: convenience launcher for the Serve web/API workflowautocleaneeg-tui: terminal UI entrypoint- Python API:
from autoclean import Pipeline web/: frontend source for the Serve UI
Experimental, legacy, or pending-approval components may exist in-tree, but the surfaces above are the supported public entrypoints for this repository.
Dependency versions are intentionally conservative in this repository to keep research workflows reproducible and to reduce breakage across the processing stack. New documentation and examples should prefer the supported surfaces above rather than older compatibility paths retained in-tree.
uv tool install autocleaneeg-pipeline
autocleaneeg-pipeline --help
autocleaneeg-serve --helpuv tool upgrade autocleaneeg-pipeline
uv tool uninstall autocleaneeg-pipelinegit clone https://github.com/cincibrainlab/autoclean_pipeline.git
cd autoclean_pipeline
uv tool install -e --upgrade . --force
autocleaneeg-pipeline --helpIf you use the Makefile helpers:
make install-devinstalls contributor tooling onlymake install-uv-toolinstalls the runnable CLI/Serve environmentmake serve-setupinstalls both for a first Serve run
For contributor workflow, testing, linting, and local docs commands, see CONTRIBUTING.md.
autocleaneeg-pipeline list-tasks
List the available built-in and installed tasks.
autocleaneeg-pipeline list-tasksautocleaneeg-pipeline process RestingEyesOpen /path/to/data.raw
Process one file with a built-in task.
autocleaneeg-pipeline process RestingEyesOpen /path/to/data.rawautocleaneeg-pipeline review --output /path/to/output
Open the review flow for a completed output directory.
autocleaneeg-pipeline review --output /path/to/outputautocleaneeg-serve up
Start the normal Serve web/API workflow.
autocleaneeg-serve upUse the Serve surfaces with this split:
autocleaneeg-serve: normal operator launcher for starting, stopping, and checking the Serve daemonautocleaneeg-pipeline serve ...: lower-level workspace, route, validation, queue, dispatcher, and API control surface
autocleaneeg-pipeline serve workspace --mode new --path /path/to/serve-workspace
Create a new Serve workspace.
autocleaneeg-pipeline serve workspace --mode new --path /path/to/serve-workspaceautocleaneeg-serve up
Start the normal Serve daemon for that workspace.
autocleaneeg-serve upIf you prefer the older alias under the main CLI, use the persisted workspace selection first:
autocleaneeg-pipeline serve workspace use --path /path/to/serve-workspace
autocleaneeg-pipeline serve upautocleaneeg-pipeline serve up uses the workspace already selected for
Serve and does not accept --path. If you need an explicit-path launcher in
one command, use autocleaneeg-serve up --path /path/to/serve-workspace.
autocleaneeg-pipeline serve route list --path /path/to/serve-workspace
List the routes configured for a Serve workspace.
autocleaneeg-pipeline serve route list --path /path/to/serve-workspaceautocleaneeg-pipeline serve validate --path /path/to/serve-workspace --mode test
Validate the Serve configuration before deployment.
autocleaneeg-pipeline serve validate --path /path/to/serve-workspace --mode testautocleaneeg-pipeline serve deploy --path /path/to/serve-workspace --mode test
Deploy the current Serve draft configuration for test mode.
autocleaneeg-pipeline serve deploy --path /path/to/serve-workspace --mode testautocleaneeg-serve status
Check whether the Serve UI and dispatcher are actually operational.
autocleaneeg-serve statusFor the full Serve operator workflow, see docs/serve_ui_workflow.rst.
- published docs: https://cincibrainlab.github.io/autoclean_pipeline/
- docs tree index: docs/INDEX.md
- issue tracker: https://github.com/cincibrainlab/autoclean_pipeline/issues
GitHub Pages publishing:
- pushes to
mainpublish the Sphinx docs to GitHub Pages through docs.yml - pull requests should only validate the docs build through CI; they do not publish Pages output
src/autoclean/: package sourceconfigs/: shipped configuration assetsweb/: Serve frontend sourcesrc/autoclean/api/static/: tracked runtime frontend bundle used by the API/Serve surfacedocs/: published documentation sourcesplans/: active engineering planstests/: unit and integration coverageexamples/: maintained example and template material
Generated output such as docs/_build/, plans/_site/, coverage reports, and
cache directories is not canonical source.
Common contributor commands:
make help
make check
make format
make lint
make test
make test-cov
make ci-checkFrontend work lives in web/package.json. Run frontend build and test commands from the web/ directory.
See:
- CONTRIBUTING.md for development workflow
- BRANCHING.md for branch and merge conventions
- CODE_OF_CONDUCT.md for community expectations
This project is licensed under the MIT License. See LICENSE.md.
- Cincinnati Children's Hospital Research Foundation
- Built with MNE-Python