lfx-bundles
The long tail of Langflow's provider components as a single manifest-less
metapackage, modeled on langchain-community. This is the destination for
every vendor/third-party provider that does not warrant its own standalone
distribution; the curated partner providers (OpenAI, Anthropic, AWS,
DataStax, Cohere) ship as separate lfx-<provider> packages instead.
How it works
lfx-bundles declares the lfx.bundles entry point:
[project.entry-points."lfx.bundles"]
lfx_bundles = "lfx_bundles"
At startup, lfx resolves this package and folder-walks its immediate
subdirectories. Each subdirectory is one bundle, registered at the
@official slot under its directory name — no extension.json, no per-provider
manifest. Adding a provider is just adding a folder.
src/lfx_bundles/
├── __init__.py # bare namespace marker
├── <provider>/ # one bundle, e.g. tavily/, pinecone/, ...
│ ├── *.py # Component subclasses
│ └── starter_projects/
│ └── *.json # Optional templates owned by this provider
└── ...
A component's identity is its bundle name (ext:<provider>:<Class>@official),
which is stable whether the provider ships here or graduates to a standalone
lfx-<provider> package. Because a manifest-shipping package always shadows the
manifest-less metapackage, a provider can graduate with no lockstep release.
Installing
pip install langflow # server + default partner bundles
pip install lfx # engine only, no bundles
pip install "lfx[bundles]" # engine + this metapackage (deployment footnote)
pip install "lfx-bundles[<provider>]" # one provider's code + that provider's SDK deps
lfx-bundles itself depends only on lfx. Each provider's third-party SDKs are
optional extras (PEP 685-normalized keys, e.g. lfx-bundles[qdrant]); the
generated all extra pulls every provider's deps for users who explicitly
install lfx[bundles] or lfx-bundles[all].
Deprecated extras for graduated providers may remain as compatibility aliases.
For example, lfx-bundles[google], lfx-bundles[azure], and
lfx-bundles[ollama] now install their standalone bundles, but are excluded
from the generated aggregate extras because Langflow installs them directly.
MrScraper
Install pip install "lfx-bundles[mrscraper]" for the MrScraper SDK 0.6.x.
The bundle exposes three components: MrScraper Account for subscription and
usage, MrScraper Scraper API for HTML, Markdown, and screenshots, and
MrScraper Web Search for Google results. Each accepts a secret API token
from the MrScraper app.
The Scraper API retains the existing MrscraperFetchHtml identifier and plain
text html output field. The seven legacy AI, crawling, batch, rerun, and
results components have been removed. See the
component reference and migration guide
for parameters, output formats, and flow updates. Disable Raw HTML in Web
Search to request structured JSON results.
OpenDsStar: manual installation only
Starting with lfx-bundles 1.1.24, OpenDsStar is no longer a managed dependency,
including in codeagents and all. The lfx[opendsstar] and
langflow-base[opendsstar] extras have also been removed. The component code and
saved-flow identifiers remain available for OpenDsStar Agent, CodeAct Smolagents,
and File Description Generator, but running them requires a separate installation.
To keep using these components, install into the same Python environment as Langflow. The last managed dependency combination was:
uv pip install 'OpenDsStar==1.0.26' 'langchain-litellm==0.5.1'
That combination was limited to Python 3.11–3.13 and excluded Intel macOS. The
langchain-litellm pin preserves compatibility with Langflow's cryptography floor.
An exact uv sync can remove manually installed packages; repeat the manual
installation after syncing, or manage it in your own environment requirements.
Manual installation reintroduces DiskCache and its unpatched CVE-2025-69872. This opt-in is outside Langflow's managed dependency set and requires your own security assessment.
Adding a provider
Providers are moved here by scripts/migrate/consolidate_bundles.py, which also
maintains the per-provider extras and the generated all aggregate. Do not
hand-edit the extras block in pyproject.toml. Provider folder names must be
lowercase snake_case (a-z, 0-9, _, 2–64 chars).
Starter projects that require a provider belong in that provider's
starter_projects/ directory. Langflow discovers them only after the
manifest-less provider loads, then applies the normal component-availability
filter before seeding them.
Metadata
Release files for lfx-bundles 1.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| lfx_bundles-1.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Release files / lfx_bundles-1.2.1-py3-none-any.whl
| Download URL | lfx_bundles-1.2.1-py3-none-any.whl |
|---|---|
| Size | 398.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f87e16e8de6442ee43b08ecfc1e30f3d6b7a9228a6cb924d3119585d1660d4ce
|
|
BLAKE2b-256 checksum How to use checksums |
22c21199474fe52b2ad9535c69385dce4b733439a021914fab97d769f18260bf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|