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 🙏

© 2025 – Pkg Stats / Ryan Hefner

airul

v0.1.39

Published

CLI tool for generating AI rules from project documentation

Readme

Airul

Airul generates context for AI agents (AGENTS.md, CLAUDE.md, etc.) from your docs. You can link multiple text files - project description, user docs, and other materials useful for agents - and generate a single global context file referenced by your AI agent.

How to use

Starting a new project

# Install as a CLI tool
npm install -g airul

# Create a new project and open in Cursor
airul new my-project "Create a React app with authentication" --cursor

# This will:
# 1. Create my-project directory
# 2. Initialize git repository
# 3. Create initial documentation
# 4. Generate AI context files
# 5. Open in Cursor (and other editors if specified)

Core Commands

airul init

Initializes a new project:

  • Creates .airul.json config if it doesn't exist
  • Creates initial TODO-AI.md if it doesn't exist
  • Generates rules from the new configuration
  • Initializes git repository (if not already initialized)

airul gen

Generates AI context files:

  • If .airul.json exists: generates rules using the existing configuration
  • If .airul.json doesn't exist: runs init first, then generates rules
  • Always uses the most recent content from your source files

Adding to existing project

# Install as a CLI tool
npm install -g airul

# Initialize airul in your project
airul init 

# This will:
# 1. Add airul as dev dependency
# 2. Create .airul.json config
# 3. Create initial documentation
# 4. Generate AI context files

Keeping context updated

After making changes to your project, you have these options to update the AI context:

# Run this after making changes to your documentation
airul gen

You can run this command directly if you installed Airul globally, or use npx airul gen if installed as a dev dependency.

For automatic updates, add this to your package.json:

{
  "devDependencies": {
    "airul": "latest"
  },
  "scripts": {
    "prestart": "airul gen",
    "prebuild": "airul gen"
  }
}

This way, your AI context will always be updated before running or building your project.

All approaches will update context when you:

  • Add/modify documentation
  • Install new dependencies
  • Change project structure

Supported Editors

Airul supports multiple AI-powered editors. You can enable them during initialization or in existing projects:

| Editor | Output File | Flag to Enable | Configuration | |--------|-------------|----------------|--------------| | Cursor | AGENTS.md | --cursor | "cursor": true | | GitHub Copilot | .github/copilot-instructions.md | --copilot | "copilot": true | | Windsurf | .windsurfrules | --windsurf | "windsurf": true | | Claude | CLAUDE.md | --claude | "claude": true | | Cline | .clinerules | --cline | "cline": true | | Codex | AGENTS.md | --codex | "codex": true |

Example: Enabling editors during initialization:

# Enable Cursor and Claude
airul init --cursor --claude

# Enable all editors
airul init --cursor --copilot --windsurf --claude --cline --codex

Example: Enabling editors in an existing project:

# Add Claude support to an existing project
airul init --claude
# OR
airul gen --claude

# Enable multiple editors at once
airul init --cursor --copilot --claude
# OR
airul gen --cursor --copilot --claude

# Add Codex support
airul init --codex
# OR
airul gen --codex

You can use either airul init or airul gen with editor flags to enable editors in an existing project. Both commands will update your configuration.

Example: Configuration in .airul.json:

{
  "sources": ["README.md", "docs/*.md"],
  "output": {
    "cursor": true,
    "copilot": true,
    "windsurf": false,
    "claude": true,
    "cline": false,
    "codex": false
  }
}

Features

  • 🎯 Generate AI context files for multiple tools:
    • GitHub Copilot (.github/copilot-instructions.md)
    • Cursor (AGENTS.md)
    • Windsurf (.windsurfrules)
    • Claude (CLAUDE.md)
    • Cline VSCode Extension (.clinerules)
    • Codex (AGENTS.md)
  • 📝 Works with any text files (markdown, txt, etc.)
  • ⚙️ Simple configuration

License

MIT