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

alias-doctor

v0.3.0

Published

[![npm](https://img.shields.io/npm/v/alias-doctor)](https://www.npmjs.com/package/alias-doctor) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) # alias-doctor

Downloads

105

Readme

npm License: MIT

alias-doctor

alias-doctor audits your shell aliases. It highlights ghost aliases that are defined but not used in your recent shell history, and it suggests new aliases for commands you type repeatedly.

Features

  • Parses alias definitions from ~/.zshrc or ~/.bashrc
  • Parses both zsh extended history and plain bash history formats
  • Finds ghost aliases by checking how often alias expansions appear in recent history
  • Suggests new aliases for repeated commands that are not already aliased
  • Detects aliases that shadow system commands, overwrite each other, or duplicate targets
  • Calculates an overall alias health score
  • Supports human-readable output and --json

Install

pnpm add -g alias-doctor

For local development:

pnpm install
pnpm build
node dist/index.js --help

Usage

alias-doctor [options]

Options:

  • --rc <path> Shell rc file (default: ~/.zshrc, auto-detects bash/zsh)
  • --history <path> History file (default: ~/.zsh_history or ~/.bash_history)
  • --days <n> Analyze last n days of history (default: 90)
  • --min-uses <n> Min uses to suggest alias (default: 5)
  • --json JSON output
  • --shell <sh> Force shell type: zsh|bash
  • --suggest Analyze history and suggest new aliases
  • --conflicts Detect alias conflicts and shadowing
  • --health-score Calculate overall alias health
  • --export <shell> Export aliases as bash|zsh|fish syntax

Example:

alias-doctor --days 30 --min-uses 10
alias-doctor --conflicts
alias-doctor --health-score

How It Works

  1. Reads your shell rc file and extracts alias name=value definitions.
  2. Reads your shell history file and supports:
    • zsh extended history lines like : 1712345678:0;git status
    • plain bash history lines like git status
  3. Filters history to the selected time window.
  4. Counts how often aliased commands appear in history.
  5. Suggests new aliases for commands seen at least --min-uses times that are not already aliased.

The tool treats aliases with 0 uses as ghosts, aliases with 1 use as weakly used, and everything above that as healthy.

Supported Shells

  • zsh
  • bash

Development

pnpm test