npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

runner-manager

v1.3.0

Published

A basic CLI to manage Github self-hosted runners on your machine

Downloads

9

Readme

runner-manager

Description

A CLI tool to manage GitHub self-hosted runners on your machine.

Installation

Optionally, you can install this package globally npm install -g runner-manager

Usage

Create a folder in which you're going to keep your Github Action runner files. In this folder, the CLI will also create a cache folder and optionally save the config file.

cd ~/Projects && mkdir github-runners && cd github-runners

Now, inside the newly created folder, start the CLI:

npx runner-manager

or

runner-manager

if you installed globally.

You'll be presented with a menu:

  1. Start runners – Starts all configured runners.
  2. Quit runners – Stops all running runners.
  3. Add new runner – Guides you through setting up a new runner.

1. Start runners

This will execute the ./run.sh script in every runner-[number] subfolder. And this way, you can easily fire up multiple GitHub Action runners with a single command.

2. Quit runners

⚠️ This will terminate the process and might interrupt any running jobs

Shut down any runners that are currently active. Make sure your runners are currently idle.

3. Add a new runner

Here is an example screenshot of the manual Github Runner install instructions:

Copy the SHA and the Token for later use.

ℹ️ The defaults are based on the, as of this time, current version. Feel free to send a PR when these need to be updated.

The CLI will prompt you for several inputs:

  • Version: GitHub Actions Runner version (default: 2.322.0).
  • SHA: Checksum for the runner package.
  • GitHub Token: Your GitHub runner token* (required).
  • Repo: The repository in owner/repo format (required).
  • Runner Name: A custom name for the runner.
  • Platform: The OS this runner will be on (macOS or Linux, default: macOS).
  • Architecture:
    • For macOS: Options are x64 or ARM64 (default: ARM64).
    • For Linux: Options are x64, ARM, or ARM64 (default: x64).

* The token that is being referred to here, is the token as being shown in the screenshot above

Based on these inputs, the CLI downloads the appropriate runner tarball using the following pattern:

actions-runner-[osx/linux]-[lowercase architecture]-[version].tar.gz

Configuration and settings defaults

If a runners.config.json file is present in the current directory, its values will be used as defaults. Otherwise, after adding a new runner is added, you'll be prompted to save the current settings as defaults in a new runners.config.json file for future use.

Cleanup

If any command fails during runner setup, the script automatically cleans up by removing the runner folder.

Contributing

Contributions are welcome! Please feel free to open an issue or submit a pull request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Happy self-hosting! 🤖