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

winrmctl

v0.1.2

Published

A CLI tool that simplifies WinRM configuration for Ansible and remote management

Readme

winrmctl

The winrmctl CLI simplifies Windows Remote Management (WinRM) configuration for Ansible and remote management.

Overview

winrmctl automates the complex process of configuring WinRM on Windows hosts for remote management. Instead of manually running PowerShell scripts, adjusting authentication settings, managing certificates, and configuring firewall rules, winrmctl provides a single command to enable secure WinRM access.

The CLI ensures security best practices by default: HTTPS-only connections, proper certificate handling, and appropriate authentication methods. It generates ready-to-use Ansible inventory snippets and provides clear feedback on configuration status.

Installation

Install winrmctl globally with npm or Bun:

npm i -g winrmctl
bun i -g winrmctl

Getting Started

Configure WinRM with secure defaults:

winrmctl quick

Check the current configuration:

winrmctl status

Commands

winrmctl quick

Configure WinRM with secure defaults in a single command.

winrmctl quick

winrmctl init

Launch an interactive setup wizard for step-by-step configuration.

winrmctl init

winrmctl configure

Apply WinRM configuration with specific options.

winrmctl configure [options]

Options:

  • --port <port> - Set HTTPS port (default: 5986)
  • --auth <methods> - Authentication methods (comma-separated)
  • --cert <type> - Certificate handling (auto or path)
  • --allow-unencrypted - Allow unencrypted connections
  • --skip-firewall - Skip firewall configuration
  • --force - Override safety checks

Example:

winrmctl configure --port 5986 --auth kerberos,negotiate

winrmctl test

Test WinRM connectivity to a remote host.

winrmctl test [options]

Options:

  • --host <host> - Target hostname or IP
  • --user <username> - Username for authentication
  • --password <password> - Password for authentication
  • --cert-validation <mode> - Certificate validation (skip or strict)

Example:

winrmctl test --host 192.168.1.100 --user administrator

winrmctl status

Display current WinRM configuration and service status.

winrmctl status

winrmctl remove

Remove WinRM configuration.

winrmctl remove [options]

Options:

  • --force - Skip confirmation prompt

winrmctl profiles

Manage configuration profiles for different environments.

winrmctl profiles [options]

Options:

  • --list - List all profiles
  • --show <name> - Display profile details
  • --create <name> - Create new profile
  • --delete <name> - Delete profile

Examples:

# List all profiles
winrmctl profiles --list

# Create production profile
winrmctl profiles --create production

# Apply profile
winrmctl configure --profile production

Global Options

The following options are available for all commands:

  • --json - Output results as JSON
  • -v, --verbose - Enable verbose output
  • --check - Run in dry-run mode
  • --profile <name> - Use specified configuration profile

Configuration

Default Settings

winrmctl uses the following defaults:

  • Port: 5986 (HTTPS)
  • Authentication: Negotiate, Kerberos
  • Certificate: Auto-generated self-signed
  • Encryption: Required

Profile Management

Create profiles for different environments:

# Development environment
winrmctl profiles --create dev
winrmctl configure --profile dev

# Production environment
winrmctl profiles --create prod
winrmctl configure --profile prod --port 5986 --auth kerberos

Troubleshooting

Connection Issues

Verify WinRM service status:

winrmctl status

Test connectivity:

winrmctl test --host localhost --user admin

Permission Errors

winrmctl requires Administrator privileges. Run your terminal as Administrator on Windows.

Certificate Validation

For self-signed certificates in development:

winrmctl test --cert-validation skip

Requirements

  • Windows with PowerShell 5.1 or later
  • Administrator privileges
  • Node.js 18+ or Bun 1.0+