Introduction
An OpenBB environment is whatever set of packages is installed next to openbb-core. The core discovers each package through its entry points at import time, then builds the obb Python client and the REST API from what it finds. Nothing is hard-wired: install a package and run openbb-build, and its commands appear; uninstall it and they disappear.
In V5, every data provider package registers its own namespace. FRED data is under obb.fred, Cboe data under obb.cboe, Treasury data under obb.ustreasury, and so on. A command lives with the package that serves it, rather than in a shared tree such as obb.equity or obb.economy.
Anyone can build and publish an extension. The extension types page covers the entry points and the base classes.
Core
Data
Data Processing
These routers take data as input instead of fetching it, so their commands have no provider argument. Pass the results of any other command, a DataFrame, or a list of dictionaries.