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

ai-sany

v1.0.2

Published

AI Sanitizer CLI safely scrub sensitive data before sending to an AI

Readme

AI-San AI Sanitizer CLI

AI-San AI Sanitizer is a commandline tool that safely scrubs sensitive or personally identifiable data before sending text to an AI.

It can remove emails, IPs, domains, URLs, tokens, and phone numbers. You can also define your own replacement rules.


  • New in version 1.0.2 share files with the community
  • Visit carlostkd.ch/ai-sany to see the community shared files

📦 Installation

You can install it globally or locally.

Global:

npm install -g .

Then run it anywhere using ai-sany.

Local:

npm install

Run it from the project root:

npx ai-sany <file>

🚀 Usage

Sanitize a file in place

ai-sany test.txt

Save sanitized text to a new file

ai-sany test.txt -o clean.txt

Preview sanitized output (no changes written)

ai-sany test.txt --preview

Sanitize clipboard text directly

ai-sany --clipboard

Reads text from your clipboard, sanitizes it, and writes it back.

Add or update a custom replacement rule

ai-sany set john alfred

Reset all custom rules

ai-sany reset

List current rules

ai-sany --rules

Remote rules sync

  • Set a URL:

  • A robust rules file ready to use: https://carlostkd.ch/ai-sany/rules.json

ai-sany url https://example.com/rules.json
  • Remove the current URL:
ai-sany url --remove
  • Sync rules from remote before sanitizing:
ai-sany <file> --sync

Note: The remote rules merge with local rules, with remote rules taking precedence. You must set a URL before using --sync.

⚙️ Built-in Rules

AI-San automatically detects and replaces:

| Type | Example | Replacement | |----------------|-------------------------------|----------------------| | Email | [email protected] | [EMAIL_REDACTED] | | UUID | 550e8400-e29b-41d4-a716... | [UUID_REDACTED] | | API Key / Token| sk-1234567890... | [TOKEN_REDACTED] | | IPv4 Address | 192.168.0.1 | [IP_REDACTED] | | IPv6 Address | 2001:0db8:85a3::8a2e:0370:7 | [IPV6_REDACTED] | | URL | https://example.com | [URL_REDACTED] | | Domain | example.com | [DOMAIN_REDACTED] | | Phone Number | +1 555-123-4567 | [PHONE_REDACTED] |


🧩 Examples

| Command | Description | |---------------------------------|------------------------------------------------| | ai-sany test.txt | Sanitize file in place | | ai-sany test.txt --preview | Preview result without saving | | ai-sany test.txt -o clean.txt | Write sanitized output to new file | | ai-sany set name alias | Replace custom words | | ai-sany reset | Clear all saved rules | | ai-sany --clipboard | Clean clipboard text instantly | | ai-sany test.txt --sync | Fetch and merge remote rules before sanitizing | | ai-sany url https:/<url> | Set the remote url | | ai-sany url --remove | Remove the remote url | | ai-sany test.txt --share | share files with the community |

💾 Configuration

Custom replacements are stored in a JSON config file automatically created at:

~/.config/ai-sany/config.json

Author

Created with care by Carlostkd
🪶 GitHub: @carlostkd

🧠 License

MIT — free to use, modify, and distribute.