A terminal-based SLURM job monitoring utility that provides a clean, interactive TUI for viewing and managing jobs on HPC clusters.
Project description
spilot
A terminal-based SLURM job monitoring utility that provides a clean, interactive TUI for viewing and managing jobs on HPC clusters.
Installation
pip install spilot
Usage
After installation, simply run:
spilot
⚠️ If SLURM is not installed, the application will display a notification banner.
Keyboard Controls
q: Quit the applicationr: Refresh data in the current viewh: Switch to hardware configuration viewj: Switch to job submission viewm: Monitor the selected job's outputc: Cancel the selected jobb: Go back to the main jobs view
Features
- Clean, interactive terminal user interface using
textual - Real-time display and management of SLURM jobs
- Detailed job information including IDs, states, time limits, and more
- Hardware status monitoring for partitions and nodes
- Job submission interface with form-based input
- Real-time job output monitoring (stdout and stderr)
- Job cancellation capability
- Automatic detection of SLURM availability
- Refresh data with a single keypress
Views
Jobs View
The main view displays all running and pending SLURM jobs, with your own jobs displayed at the top. Select a job to view detailed information.
Hardware View
Displays information about SLURM partitions and nodes, including states, available resources, and detailed configuration.
Job Submission View
Form-based interface for creating and submitting new SLURM jobs with options for partition selection, resource allocation, and job parameters.
Job Monitor View
Real-time monitoring of job output, displaying both stdout and stderr streams as they are generated.
Requirements
- Python 3.7+
- SLURM installation
Dependencies including textual are automatically installed.
Development
To set up the development environment:
git clone https://github.com/atrey-a/spilot.git
cd spilot
pip install -e .
License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Links
- PyPI: https://pypi.org/project/spilot/
- Issues: GitHub Issues
Roadmap
spilot is under development. Upcoming releases will include:
- v1.1.0: Confirmation dialogs, immediate job monitoring, performance improvements
- v1.2.0: Theme support, enhanced job submission, broader compatibility
For a detailed list of planned features, please see the ROADMAP.md file.
Contributing
Please see CONTRIBUTION.md for details on how to contribute to this project.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file spilot-1.0.2.tar.gz.
File metadata
- Download URL: spilot-1.0.2.tar.gz
- Upload date:
- Size: 19.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4bb925eba9aeb756c05c230fe3b53e4f12424848388e75873f7709faadf4e522
|
|
| MD5 |
34272d0fedd6c61aa284586ce05ab4b6
|
|
| BLAKE2b-256 |
2b6cea9972cf4f755ef4e48ecdf5ea064ba47ad91a5191fe2e47f235d3b31f82
|
File details
Details for the file spilot-1.0.2-py3-none-any.whl.
File metadata
- Download URL: spilot-1.0.2-py3-none-any.whl
- Upload date:
- Size: 18.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
320613e448e3c35cc763097cd2cb4996a54aad3047e9e8c72f05e3fb0d4f7b47
|
|
| MD5 |
1e13a6a7be829ce901c9aa271181398e
|
|
| BLAKE2b-256 |
6a4719a067588cb091fb496b805da6e8ba61ec61d80e6cdb7e83b336cf808d87
|