Skip to main content

Community-contributable integrations (tools) for ModuleX

Project description

modulex-integrations

CI License: MIT PyPI

Community-contributable integrations (tools) for the ModuleX runtime.

Why this repo exists

modulex is a FastAPI/Python backend that, until now, bundled 45 LangChain tool integrations inline. We are extracting those 45 tools into this standalone, publicly pip-installable package so that:

  • adding a new tool is a single-repo PR, not a multi-file edit across the modulex monorepo,
  • integration code is publicly inspectable,
  • community contributions flow through the standard GitHub PR model.

LLM providers and knowledge providers stay in modulex. Only the tool integrations migrate here.

Status

Phase 1 — early development. The schema contract and packaging are in place; integrations themselves will be migrated from the modulex monorepo one at a time, starting with a github POC and continuing via a scripted bulk migration. See CHANGELOG.md for progress and CONTRIBUTING.md for layout rules.

What is this?

Each integration in this package exposes one or more LangChain @tool functions to the ModuleX runtime, together with credential metadata (auth schemas, env vars, test endpoints). The runtime discovers integrations via the Python modulex.tools entry-point group and loads them at startup.

Installation

pip install modulex-integrations

With every integration's optional dependencies:

pip install "modulex-integrations[all]"

Or only the integrations you need (extras are populated as integrations are migrated):

pip install "modulex-integrations[github,slack]"

Per-integration layout

Every integration ships in the same shape:

src/modulex_integrations/tools/<name>/
├── __init__.py        # re-exports manifest + TOOLS
├── manifest.py        # IntegrationManifest instance
├── tools.py           # LangChain @tool functions
├── outputs.py         # pydantic response models (UI/docs derive JSONSchema)
├── dependencies.toml  # per-integration runtime deps
├── README.md          # 5-section strict template (see CONTRIBUTING.md)
└── tests/
    └── test_<name>.py

The contract is enforced by pydantic types in src/modulex_integrations/schema.py with extra="forbid" everywhere — a typo in a manifest fails at import time, not at runtime.

Development

git clone https://github.com/ModuleXAI/modulex-integrations.git
cd modulex-integrations
pip install -e ".[dev]"
pytest
ruff check src tests
mypy src/modulex_integrations

Roadmap

  • Phase 1 — bootstrap (this commit). Schema, packaging, CI, community meta files, cross-repo brief workflow.
  • Phase 2 — github POC migration. One integration end-to-end: manifest, tools, outputs, tests, entry point, real httpx.MockTransport coverage of at least one action.
  • Phase 3 — scripted bulk migration. The remaining 44 integrations migrated by a one-shot script, then reviewed individually.

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

modulex_integrations-0.10.0a1.tar.gz (1.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

modulex_integrations-0.10.0a1-py3-none-any.whl (2.1 MB view details)

Uploaded Python 3

File details

Details for the file modulex_integrations-0.10.0a1.tar.gz.

File metadata

  • Download URL: modulex_integrations-0.10.0a1.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for modulex_integrations-0.10.0a1.tar.gz
Algorithm Hash digest
SHA256 c4e8e9de88308cf55c7bfcc7530f1f2afc60182e9545a9f0e8caa55970899756
MD5 263f5342b3560bd8d61ced2864698a4e
BLAKE2b-256 a8386c6d70ebe3349845461beecb48630a96daa31b8bfc732e9faa66e6d6d1a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for modulex_integrations-0.10.0a1.tar.gz:

Publisher: release.yml on ModuleXAI/modulex-integrations

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file modulex_integrations-0.10.0a1-py3-none-any.whl.

File metadata

File hashes

Hashes for modulex_integrations-0.10.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 61dc5175902025ce8bbe8e8f05d3b9e5518668d7174491e5bbec979bbb201e2e
MD5 b86b3c1d0d88d709beeada57b134ed04
BLAKE2b-256 e0dcaf09b1b37578f7a34f986251cc89e7d1e394d5e8fb1625b7ce4ebeef0696

See more details on using hashes here.

Provenance

The following attestation bundles were made for modulex_integrations-0.10.0a1-py3-none-any.whl:

Publisher: release.yml on ModuleXAI/modulex-integrations

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page