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

@tangvu/airules

v1.3.0

Published

One config to rule them all. Generate & sync AI coding rules across every tool.

Downloads

136

Readme

airules

One config to rule them all.

Generate & sync AI coding rules for 16+ AI coding assistants from a single .airules.yml file.

npm version CI License: MIT Downloads

Getting Started · Configuration · Supported Tools · Score Card


The Problem

You use Claude Code, Cursor, and GitHub Copilot. Each needs its own config file. You write CLAUDE.md, then copy-paste-adapt for .cursorrules, then again for copilot-instructions.md. They drift apart. You update one, forget the others. Your AI tools give inconsistent results.

The Solution

npx @tangvu/airules init

One command. One config file (.airules.yml). All your AI tools get consistent, optimized rules — automatically.

✨ Features

  • 🔍 Smart Detection — Auto-detects tech stack, framework, dependencies, and patterns (30+ frameworks, 10 languages)
  • ⚡ Multi-Tool Sync — Generates rules for 16+ AI tools from a single .airules.yml
  • 🏆 Score Card — Grades your rules setup (S/A/B/C/D) with actionable suggestions
  • 📦 Zero Config — Works out of the box. Run npx @tangvu/airules init and you're done
  • 🎯 Stack-Aware — Framework-specific best practices (Next.js, React, FastAPI, Rust, Go, etc.)
  • 🔄 Stay in Syncairules sync keeps all files up to date when you change .airules.yml

🚀 Getting Started

# Scan your project and generate rules for all tools
npx @tangvu/airules init

# See what was detected
npx @tangvu/airules detect

# Check your rules quality
npx @tangvu/airules score

# Re-sync after editing .airules.yml
npx @tangvu/airules sync

Or install globally:

npm install -g @tangvu/airules

🛠️ Supported Tools

Core Tools

| Tool | Output File | Status | |------|------------|--------| | Claude Code | CLAUDE.md | ✅ | | Cursor | .cursorrules | ✅ | | GitHub Copilot | .github/copilot-instructions.md | ✅ | | Windsurf | .windsurfrules | ✅ | | Cline | .clinerules | ✅ | | OpenAI Codex | AGENTS.md | ✅ | | Aider | .aider.conf.yml | ✅ |

New Tools

| Tool | Output File | Status | |------|------------|--------| | Qwen Code | .qwenrules | ✅ | | Gemini CLI | .gemini/rules.md | ✅ | | Augment Code | .augment/rules.md | ✅ | | CodeBuddy | .codebuddy/rules.md | ✅ | | OpenCode | AGENTS.md | ✅ | | Roo Code | .roo/rules.md | ✅ | | KiloCode | .kilocode/rules.md | ✅ | | Bolt.new | .bolt/rules.md | ✅ |

⚙️ Configuration

After running airules init, edit .airules.yml to customize:

version: 1
project:
  name: "my-app"
  stack: "nextjs"

targets:
  - claude
  - cursor
  - copilot
  - qwen
  - gemini

rules:
  style:
    prefer_functional: true
    naming_convention: "camelCase"
  testing:
    framework: "vitest"
    min_coverage: 80
  git:
    commit_style: "conventional"

custom:
  - "Use server components by default"
  - "All database queries go through src/repositories/"

Then run airules sync to regenerate all files.

📚 Documentation

🏆 Score Card

npx @tangvu/airules score

Get a visual grade of your AI rules setup (S/A/B/C/D) with suggestions for improvement. Use --json for CI integration.

🤝 Contributing

Contributions welcome! See CONTRIBUTING.md for guidelines.

Especially welcome:

  • New stack templates — Add support for more frameworks
  • Generator improvements — Better output for specific AI tools
  • Community templates — Share your .airules.yml setups

📄 License

MIT © Tang Vu