Skip to main content

gflow

Documentation Status GitHub Actions Workflow Status codecov PyPI - Version TestPyPI - Version Crates.io Version PyPI - Downloads dependency status Crates.io License Crates.io Size

English | 简体中文

gflow is a lightweight scheduler for a single Linux machine. It brings a Slurm-like workflow to shared GPU workstations and lab servers without cluster setup.

asciicast

Why gflow

  • Queue and run jobs on one machine.
  • Submit commands or scripts with GPUs, time limits, dependencies, arrays, and priorities.
  • Inspect, attach, cancel, and recover jobs with a small CLI.

Install

Requirements: Linux, tmux, and NVIDIA drivers only if you need GPU scheduling.

Install with Python tooling:

uv tool install runqd
# or
pipx install runqd
# or
pip install runqd

Install with Cargo:

cargo install gflow

Nightly build:

pip install --index-url https://test.pypi.org/simple/ runqd

Quick Start

gflowd init
gflowd start
gbatch --gpus 1 --name demo bash -lc 'echo "hello from gflow"; sleep 30'
gqueue
gjob show <job_id>
gflowd stop

On Linux with a systemd user manager, gflowd service install enables auto-start on login and automatic crash recovery. gflowd status always shows how the daemon is hosted (systemd user service, tmux, or direct process).

MCP

gflow can also run as a local MCP server for Claude Desktop, Claude Code, Codex, Cursor, and similar tools:

gflow mcp serve

Keep gflowd running on the same machine. MCP clients start gflow mcp serve as a local stdio server.

Claude Desktop example:

Claude Code:

claude mcp add --scope user gflow -- gflow mcp serve

Codex:

codex mcp add gflow -- gflow mcp serve

Or via ~/.codex/config.toml:

[mcp_servers.gflow]
command = "gflow"
args = ["mcp", "serve"]

If gflow is not on your PATH, replace it with the absolute binary path.

Documentation

Most usage details live in the docs:

Star History

Star History Chart

Contact Us

For coordinating contributions and development, please use Slack

Contributing

Please open an Issue or Pull Request.

License

MIT. See LICENSE.

Metadata

Release files for runqd 0.4.18

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

Source distribution (sdist)

Source distribution for runqd 0.4.18
File Size Uploaded
runqd-0.4.18.tar.gz 742.8 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for runqd 0.4.18
File
runqd-0.4.18-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
runqd-0.4.18-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
runqd-0.4.18-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
runqd-0.4.18-py3-none-macosx_10_12_x86_64.whl Python 3 none macOS 10.12+ x86-64 Details

Total release size: 21.6 MB

Release files / runqd-0.4.18.tar.gz

Download URL runqd-0.4.18.tar.gz
Size 742.8 kB
Tags Source
SHA-256 checksum
How to use checksums
95639ba5af391a5258691ded2b2b38c49203430498528bf3cb226e696c4284a6
BLAKE2b-256 checksum
How to use checksums
db50ee7d70cfb9f6964a0245ce1f895424d998a0ecb9440e39063b097775f538
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","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}

Release files / runqd-0.4.18-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL runqd-0.4.18-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 5.6 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
64e115aee5ecfd90d2972c1cd23d42bd499223d0c23f6365ff48815a21785d90
BLAKE2b-256 checksum
How to use checksums
827915707f2bcbd0c320c6d6a7e1d96b19a498c375bb5c021fb7faf1f069d953
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","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}

Release files / runqd-0.4.18-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL runqd-0.4.18-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 5.4 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
824183c338c67e5495209cef45c6f890c3500cc2131b7366995a755c7c18aa9f
BLAKE2b-256 checksum
How to use checksums
2274c6789fb93e4968afc9d91c343184c7b690686eb252b23a55bbdf5fe66d6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","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}

Release files / runqd-0.4.18-py3-none-macosx_11_0_arm64.whl

Download URL runqd-0.4.18-py3-none-macosx_11_0_arm64.whl
Size 4.8 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
b10a4cb7949cfdeccbfa9fe74492d5472e1a04df69b0477a4155da19933d8f7e
BLAKE2b-256 checksum
How to use checksums
57e50680f9591bfc62492f3f5bba7e02aa8095198706ffbd786b1ea0cd91d0f5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","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}

Release files / runqd-0.4.18-py3-none-macosx_10_12_x86_64.whl

Download URL runqd-0.4.18-py3-none-macosx_10_12_x86_64.whl
Size 5.0 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
622824215909fdcc39ea9cb22c2a0394536ffed7d10db047760a1c081f718a14
BLAKE2b-256 checksum
How to use checksums
a5c1091eb52777d11ca8d00af0d656136c72ad195a7f0edeb7ce273d7a585203
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","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}

Release history Release notifications | RSS feed

This release

0.4.18 This release

5 release files

0.4.17

4 release files

0.4.15

3 release files

0.4.14

3 release files

0.4.13

3 release files

0.4.10

5 release files

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