{"id":31913888,"url":"https://github.com/clip-hpc/slurmcommander","last_synced_at":"2025-10-13T18:55:02.996Z","repository":{"id":65001112,"uuid":"580169762","full_name":"CLIP-HPC/SlurmCommander","owner":"CLIP-HPC","description":"Slurm TUI","archived":false,"fork":false,"pushed_at":"2023-10-11T09:39:54.000Z","size":16614,"stargazers_count":75,"open_issues_count":12,"forks_count":6,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-09-02T02:42:05.672Z","etag":null,"topics":["hpc","slurm","terminal","tui"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CLIP-HPC.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-12-19T22:20:49.000Z","updated_at":"2025-08-15T15:35:27.000Z","dependencies_parsed_at":"2024-06-20T06:23:59.285Z","dependency_job_id":"5020cfc4-b9ea-47c3-8c21-507d3d208635","html_url":"https://github.com/CLIP-HPC/SlurmCommander","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/CLIP-HPC/SlurmCommander","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CLIP-HPC%2FSlurmCommander","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CLIP-HPC%2FSlurmCommander/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CLIP-HPC%2FSlurmCommander/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CLIP-HPC%2FSlurmCommander/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CLIP-HPC","download_url":"https://codeload.github.com/CLIP-HPC/SlurmCommander/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CLIP-HPC%2FSlurmCommander/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279016617,"owners_count":26085853,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-13T02:00:06.723Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hpc","slurm","terminal","tui"],"created_at":"2025-10-13T18:54:54.198Z","updated_at":"2025-10-13T18:55:02.988Z","avatar_url":"https://github.com/CLIP-HPC.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# SlurmCommander\n\n\u003e ## News:\n\u003e\n\u003e ### Slurm 23.02.0\n\u003e Slurm 23 has been released, and as already reported [here](https://github.com/CLIP-HPC/SlurmCommander/issues/22) scom does not work with it.\n\u003e\n\u003e The [issue](https://github.com/CLIP-HPC/SlurmCommander/issues/22) contains details and will track any potential progress on the support for slurm 23.\n\u003e\n\u003e ---\n\u003e\n\u003e [Discussions](https://github.com/CLIP-HPC/SlurmCommander/discussions) are open!\n\u003e\n\u003e Wishlist discussion thread: [here](https://github.com/CLIP-HPC/SlurmCommander/discussions/20)\n\n## Description\n\nSlurmCommander is a simple, lightweight, no-dependencies text-based user interface (TUI) to your cluster.\nIt ties together multiple slurm commands to provide you with a simple and efficient interaction point with slurm.\n\n[Installation](#installation) does not require any special privileges or environment. Simply download the [binary](https://github.com/CLIP-HPC/SlurmCommander/releases/latest), fill out a small [config file](./cmd/scom/scom.conf) and it's ready to run.\n\nYou can view, search, analyze and interact with:\n\n### Job Queue \n\nJob Queue shows jobs currently in the queue, additional information and breakdowns can be turned on with `s`,`c` and `i` keys:\n![Job Queue main window](./images/jq.png)\n\n`Enter` key opens menu window with different actions available based on the job state (RUNNING, PENDING, etc.)\n![Job Queue actions window](./images/jq_actions.png)\n\n`\\` turns on __filtering__. It works by concatenating multiple job columns into a single string, and accepts [golang re2 regular expressions](https://github.com/google/re2/wiki/Syntax) thus allowing you to do some very imaginative filters.\n\nExample: `grid.*alice.\\*(RUN|PEND)` =~ _jobs from account grid, user alice, in RUNNING OR PENDING state_\n![Job Queue filtering](./images/jq_filter.png)\n\n### Job history \n\nBrowse, filter and inspect past jobs\n![Job History tab](./images/jh.png)\n\n![Job Details tab](./images/jd.png)\n\n### Edit and submit jobs from predefined templates\n\n* In the config file, set the `templatedirs` list of directories where to look for _.sbatch_ templates and their _.desc_ description files\n\n![Job from Template tab](./images/jft.png)\n![Job from Template tab](./images/jft_edit.png)\n\n### Examine state of cluster nodes and partitions\n\n![Cluster tab](./images/ct.png)\n\nSame as with _Job Queue_ and _Job History_ tabs, filtering is available here.\n![Cluster tab filtering](./images/ct_filter.png)\n\nSo if we would like to see only nodes whose name contains _clip-c_ that are _idle_ and _POWERED\\_DOWN_, we can easily filter those out with a filter: `clip-c.*idle.\\*POWER`\n![Cluster tab filter on](./images/ct_filter_on.png)\n\n\n### Example Job Queue tab demo:\n![demo](./images/jobqueue.gif)\n\n## Installation\n\nSlurmCommander does not require any special privileges to be installed, see instructions below.\n\n\u003e Hard requirement: json-output capable slurm commands\n\n### Regular users\n\n1. Download the pre-built [binary](https://github.com/CLIP-HPC/SlurmCommander/releases/latest)\n2. Download the [annotated config](./cmd/scom/scom.conf) file\n3. Edit the config file, follow instructions inside\n4. Create scom directory in your $HOME and place the edited config there: `mkdir $HOME/scom`\n5. Run\n\n### Site administrators\n\nInstructions are same as for the regular users, with one minor perk. \nPlace the [config file](./cmd/scom/scom.conf) in one of the following locations to be used as global configuration source for all scom instances on that machine.\n\n1. /etc/scom/scom.conf\n2. Any location, providing users with the environment variable `SCOM_CONF` containing path to config. file\n3. Users $XDG_CONFIG_HOME/scom/scom.conf\n\n\n__NOTE__: Users can still override global configuration options by changing config stanzas in their local `$HOME/scom/scom.conf`\n\n## Usage tips\n\nSlurmCommander is developed for 256 color terminals (black background) and requires at least 185x43 (columns x rows) to work.\n\n* If you experience _funky_ colors on startup, try setting your `TERM` environment variable to something like `xterm-256color`.\n* If you get a message like this:\n`FATAL: Window too small to run without breaking view. Have 80x24. Need at least 185x43.`, check your terminal resolution with `stty -a` and try resizing the window or reduce the font.\n\n\n```\n[pja@ SlurmCommander-dev]$ [DEBUG=1] [TERM=xterm-256color]./scom -h\nWelcome to Slurm Commander!\n\nUsage of ./scom:\n  -d uint\n        Jobs history fetch last N days (default 7)\n  -t uint\n        Job history fetch timeout, seconds (default 30)\n  -v    Display version\n\n```\n\nTo run in _debug_ mode, set `DEBUG` env. variable. You will see an extra debug message line in the user interface and scom will record a `scdebug.log` file with (_lots of_) internal log messages.\n\n\u003e Tested on: \n\u003e * slurm 21.08.8\n\u003e * slurm 22.05.5\n\n## Feedback\n\n__Is most welcome. Of any kind.__\n\n* bug reports\n* broken UI elements\n* code panic reports\n* ideas\n* wishes\n* code contributions\n* usage stories\n* kudos\n* coffee and/or beer\n* ...\n\n## Acknowledgments\n\nPowered by amazing [Bubble Tea](https://github.com/charmbracelet/bubbletea) framework/ecosystem. Kudos to glamurous Charm developers and community.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclip-hpc%2Fslurmcommander","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclip-hpc%2Fslurmcommander","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclip-hpc%2Fslurmcommander/lists"}