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

@oakoss/account-switch

v0.5.1

Published

Switch between CLI tool accounts. Supports Claude Code OAuth, with more providers planned.

Readme

account-switch (acsw)

Switch between Claude Code accounts without logging out. Minimal runtime dependencies.

Claude Code only supports one OAuth account at a time. This tool saves and restores credentials so you can switch instantly between personal, work, or team accounts.

Install

# pnpm
pnpm add -g @oakoss/account-switch

# npm
npm install -g @oakoss/account-switch

Or build from source:

git clone https://github.com/oakoss/account-switch
cd account-switch
pnpm install
pnpm build
cp dist/acsw ~/.local/bin/

Usage

Save your current session:

acsw add personal

Log into another account via Claude Code, then save it:

acsw add work

Switch between them:

acsw use personal
acsw use work

Or use the interactive picker:

acsw

Commands

| Command | Description | | -------------------------- | ----------------------------------- | | acsw | Interactive profile picker | | acsw add <name> | Save current session as a profile | | acsw use <name> | Switch to a profile | | acsw <name> | Shortcut for use | | acsw list (ls) | List all profiles | | acsw remove <name> (rm) | Remove a profile | | acsw current | Show active profile | | acsw repair | Validate and fix profiles | | acsw env | Shell integration for auto-switching | | acsw completions <shell> | Generate shell completions |

Shell completions

# Zsh: add to ~/.zshrc
eval "$(acsw completions zsh)"

# Bash: add to ~/.bashrc
eval "$(acsw completions bash)"

# Fish: save to completions directory
acsw completions fish > ~/.config/fish/completions/acsw.fish

Completions cover subcommands and profile names for use, remove, and bare acsw <profile>.

Auto-switch on cd

Automatically switch profiles when entering a project directory:

# Zsh: ~/.zshrc | Bash: ~/.bashrc
eval "$(acsw env --use-on-cd)"

# Fish: ~/.config/fish/conf.d/acsw.fish
acsw env --use-on-cd | source

Then create a .acswrc in your project root:

{ "profile": "work" }

Now when you cd into that directory, acsw switches to the work profile automatically.

How it works

  • Swaps OAuth credentials (system keyring on macOS/Windows, ~/.claude/.credentials.json on Linux) and the oauthAccount field in ~/.claude.json
  • Never touches settings.json, memory, plugins, or project config
  • Saves the current profile back before switching (no stale tokens)
  • Warns if Claude Code is running

Docs

See docs/ for architecture, usage guide, and design decisions.

Development

pnpm install
pnpm dev -- list           # run from source
pnpm test                  # run tests
pnpm typecheck             # typescript type checking
pnpm lint                  # oxlint
pnpm format:check          # oxfmt
pnpm lint:md               # markdownlint
pnpm build                 # compile standalone binary

License

MIT