# LoopX Dependencies: Understanding the Zero-Runtime-Dependency Design

> Explore LoopX dependencies and its zero-runtime-dependency design. Discover how LoopX leverages the Python standard library for efficient, dependency-free operation.

- Repository: [huangruiteng/loopx](https://github.com/huangruiteng/loopx)
- Tags: internals
- Published: 2026-08-14

---

**LoopX has no runtime dependencies — it runs entirely on the Python standard library, with only optional development tools listed under the `test` extra.**

LoopX is a lightweight control-plane framework designed for minimal footprint deployment. If you're evaluating LoopX dependencies for integration into your Python environment, you'll find **no external packages are required at runtime**. This article explains exactly how dependencies are structured in the huangruiteng/loopx repository and what you need to install for different use cases.

## How LoopX Declares Runtime Dependencies

The definitive source for LoopX dependency information is [`pyproject.toml`](https://github.com/huangruiteng/loopx/blob/main/pyproject.toml) at the repository root. As implemented in huangruiteng/loopx, the runtime dependency list is explicitly empty:

```toml
[project]
dependencies = []          # ← no packages required at runtime

```

This declaration means `pip install loopx` pulls in only the LoopX source code itself — no external wheels, no version conflicts, no supply chain overhead from third-party packages.

## Optional Test Dependencies

While LoopX core requires nothing beyond Python 3.11+, the project does declare **optional development dependencies** under the `test` extra. These are used solely for running the test suite and maintaining code quality:

| Extra | Packages (version ranges) |
|-------|---------------------------|
| `test` | `jsonschema>=4.23,<5`<br/>`pytest>=8,<9`<br/>`pytest-cov>=5,<7`<br/>`pytest-xdist>=3,<4`<br/>`ruff>=0.12,<0.16`<br/>`mypy>=1.18,<2` |

These packages are **not required for production use**. They are only installed when you explicitly request them with `pip install "loopx[test]"`.

## Verifying Zero Runtime Dependencies in the Source Code

The no-dependency claim holds true across LoopX's core source files. You can verify this by examining the import statements:

- **[`loopx/__init__.py`](https://github.com/huangruiteng/loopx/blob/main/loopx/__init__.py)** — Exposes the public API with no third-party imports
- **[`loopx/entrypoint.py`](https://github.com/huangruiteng/loopx/blob/main/loopx/entrypoint.py)** — Implements the `loopx` CLI console script using only stdlib modules
- **[`loopx/extensions/manifest.py`](https://github.com/huangruiteng/loopx/blob/main/loopx/extensions/manifest.py)** — Registers extension metadata without external dependencies

Even optional extensions like the Lark provider and OpenViking semantic-preference provider — bundled as entry points — rely exclusively on the standard library. They do not declare additional `install_requires` entries.

## Installing LoopX for Different Use Cases

### Production Installation (No Dependencies)

```bash
pip install loopx

```

After installation, verify the CLI works without any external packages:

```bash
loopx --help

```

### Development Installation (With Test Tools)

```bash

# Install LoopX with test dependencies

pip install "loopx[test]"

# Run the full test suite

pytest -vv

```

## Why Zero Runtime Dependencies Matters

**LoopX dependencies** (or rather, the lack thereof) provide several operational advantages:

- **Minimal attack surface** — No third-party supply chain risks in production
- **Fast installation** — No wheel compilation or dependency resolution delays
- **Predictable deployment** — No version pinning conflicts with your application's existing packages
- **Constrained environment compatibility** — Works in air-gapped or security-hardened environments where external packages are prohibited

## Summary

- **LoopX has zero runtime dependencies** — confirmed by `dependencies = []` in [`pyproject.toml`](https://github.com/huangruiteng/loopx/blob/main/pyproject.toml)
- **Only Python 3.11+ is required** to run LoopX in production
- **Optional `test` extra** provides `pytest`, `mypy`, `ruff`, and related tools for development
- **Core source files** ([`loopx/__init__.py`](https://github.com/huangruiteng/loopx/blob/main/loopx/__init__.py), [`loopx/entrypoint.py`](https://github.com/huangruiteng/loopx/blob/main/loopx/entrypoint.py), [`loopx/extensions/manifest.py`](https://github.com/huangruiteng/loopx/blob/main/loopx/extensions/manifest.py)) contain no third-party imports
- **Extensions** (Lark provider, OpenViking provider) also use only the standard library

## Frequently Asked Questions

### Does LoopX require any external packages to run?

No. LoopX runs entirely on the Python standard library. The `dependencies` array in [`pyproject.toml`](https://github.com/huangruiteng/loopx/blob/main/pyproject.toml) is explicitly empty, and no source files in `loopx/` import third-party modules.

### What Python version does LoopX require?

LoopX requires Python 3.11 or newer. This is the only runtime requirement — no external packages are needed regardless of your Python patch version.

### How do I run LoopX tests?

Install the optional `test` extra with `pip install "loopx[test]"`, then run `pytest -vv`. This pulls in `pytest`, `pytest-cov`, `pytest-xdist`, `jsonschema`, `ruff`, and `mypy` — all development-only tools not required for production use.

### Can I use LoopX extensions without installing dependencies?

Yes. Extensions like the Lark provider and OpenViking semantic-preference provider are bundled as entry points and also rely only on the standard library. No additional `install_requires` entries are declared for these components.