Skip to main content
m-gpux logo

m-gpux

The GPU workbench for Modal.

PyPI - License PyPI - Downloads Version Python VS Code Marketplace

m-gpux is a CLI for getting real work done on Modal GPUs. It turns a folder on your laptop into a GPU dev box, a Jupyter session, a hosted web app, an OpenAI-compatible LLM endpoint, or a whole Docker Compose stack — across every Modal account you own, with the price per hour in front of you before anything starts.

Quickstart

pip install m-gpux         # also installs the `modal` CLI that m-gpux drives
m-gpux account add         # paste a `modal token set ...` command
cd my-project
m-gpux dev up              # pick an account and a GPU; this folder lands in /workspace
m-gpux dev code            # open it in VS Code (Remote-SSH)
m-gpux dev pause           # snapshot everything, stop paying for compute

If you'd rather click through a menu, m-gpux hub launches Jupyter, a script run, a browser terminal, or vLLM on any GPU from one guided wizard.

For the same workflows inside your editor, install the m-gpux VS Code extension.

m-gpux ecosystem

The CLI works on its own, and each piece below plugs into the same accounts, presets, and budgets.

  • CLI — dev boxes, Hub, hosting, serving, Compose, budgets, and billing from one command
  • VS Code extension — accounts, sessions, presets, and the Hub / host / serve wizards in a sidebar
  • Documentation — guides for every workflow, plus the full command reference
  • Examples — ready-to-deploy FastAPI, Flask, and static-site projects for m-gpux host

Why use m-gpux?

m-gpux wraps Modal's primitives (Sandboxes, Functions, Servers, Volumes, named Images) into workflows that fit how you already develop.

  • Dev boxes that survive the night — Sandboxes running sshd, reachable with plain ssh or VS Code Remote-SSH. pause snapshots the whole filesystem and resume boots it back in seconds; sync push/pull moves files both ways
  • Every GPU, priced up front — T4 through H100, H200, B200, and B300, including multi-GPU containers (H100:8), with $/hour in every picker and m-gpux billing rates for the live price table
  • Many accounts, one budget — per-account monthly limits, budget-aware AUTO selection, a warning before you launch on an account that's nearly empty, and budget check --stop to shut down apps on accounts that go over
  • From localhost to a URL — m-gpux host deploys FastAPI, Flask, Django, or a static folder with scale-to-zero; --server uses Modal's low-latency @app.server() primitive
  • Your own OpenAI-compatible endpoint — m-gpux serve deploy puts any Hugging Face model behind vLLM with API keys, streaming, warmup, logs, and a live metrics dashboard
  • Scripts as an async API — m-gpux gateway deploy exposes the tasks you declare in mgpux.gateway.toml as an authenticated job API: submit JSON, poll for results, each task autoscaling on its own CPU or GPU
  • Docker Compose, lifted as-is — run a docker-compose.yml as one container, a full VM-style image (Triton, gRPC), or one Sandbox per service with readiness probes and working service-to-service addresses
  • Starts in seconds, not minutes — m-gpux image build bakes your dependencies once and publishes them to every account; Hub and dev boxes offer them as the base image
  • Nothing hidden — every workflow generates a plain Modal script you can read and edit before it runs

Resources

Contributing

git clone https://github.com/PuxHocDL/m-gpux.git
cd m-gpux
pip install -e ".[dev,docs]"
m-gpux --help

Each command group is a plugin in m_gpux/plugins/<name>/plugin.py, registered in both m_gpux/plugins/__init__.py and the m_gpux.plugins entry-point group in pyproject.toml.

Run the same checks used by CI before opening a pull request:

ruff check m_gpux tests
python -m unittest discover -s tests -v
mkdocs build --strict

cd m-gpux-vscode
npm ci
npm run typecheck
npm run compile

cd ../m-gpux-ui
npm ci
npm run build

License

MIT

Metadata

Release files for m-gpux 3.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for m-gpux 3.1.0
File Size Uploaded Provenance Actions
m_gpux-3.1.0.tar.gz 155.9 kB With provenance Details for m_gpux-3.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for m-gpux 3.1.0
File Interpreter ABI Platform Actions
m_gpux-3.1.0-py3-none-any.whl Python 3 none any Details for m_gpux-3.1.0-py3-none-any.whl

Total release size: 325.1 kB

Release files / m_gpux-3.1.0.tar.gz

Download URL m_gpux-3.1.0.tar.gz
Size 155.9 kB
Tags Source
SHA-256 checksum
How to use checksums
ee1ed9ec3031e79d06ec0a650bdcf4f5820daa2fd35cf5da339849879a5e68e1
BLAKE2b-256 checksum
How to use checksums
878e9e247132e31c81fe1f2620bccbc5243ea2e487e641aadd64fade274788f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Release files / m_gpux-3.1.0-py3-none-any.whl

Download URL m_gpux-3.1.0-py3-none-any.whl
Size 169.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b43386ec91fb88f745c22bba1952010d76ccdca24f421472c1f8efa5d753dab5
BLAKE2b-256 checksum
How to use checksums
b959e87a1d4c79a11c43a8f77b031edfeb81d7b9b4aa76d1cc183029b7be42ae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Security for m-gpux 3.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for m_gpux-3.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

3.1.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page