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

shelly-ai

v1.0.4

Published

A command-line utility for chatting with AI models via OpenRouter API

Readme

Shelly-AI

A command-line interface for interacting with AI models (GPT-4o, Claude, Deepseek, etc) via OpenRouter. How to use normally

It's available on npmjs.com at https://www.npmjs.com/package/shelly-ai

Features

  • Interactive chat with AI models
  • One-time query mode
  • Automatic command detection and execution
  • Configuration wizard
  • Model selection from popular models.
  • File context support (analyze code, documents, etc.)
  • Conversation history management

Easy install

Firstly you will need API keys from Openrouter

npm install -g shelly-ai

Then run

shelly-ai --setup

or

sa --setup

Paste your API key that you obtained from https://openrouter.ai/settings/keys here, and select a model of your choice.

Installation from code

# Clone the repository
git clone https://github.com/yourusername/shelly-ai.git
cd shelly-ai

# Install dependencies
npm install

# Install globally (optional)
npm install -g .

Setup

First, run the setup wizard to configure your API key and preferred model:

shelly-ai --setup

Or use the shorthand:

sa --setup

Usage

Interactive Chat

# Start an interactive chat
sa

One-time Query

# Ask a question without starting interactive mode
sa "How do I list all Docker containers?"

# Ask a question and continue in interactive mode
sa --continue "How do I list all Docker containers?"

File Context

# Analyze a file
sa -f ./myfile.js "Can you explain this code?"

How to use for files

# Analyze multiple files
sa -f ./myfile.js ./otherfile.txt "What do these files do?"

# Just analyze files without a specific question
sa -f ./myfile.js ./otherfile.txt

# Important: Always use quotes around your query when using file context
sa -f ./myfile.js "What does this file do?"    # CORRECT
sa -f ./myfile.js What does this file do?      # INCORRECT - will parse words as filenames

Command Execution

# Auto-execute any commands suggested by the assistant
sa --execute "How do I create a new directory in the current folder?"

Streaming

By default, responses are streamed in real-time for a more interactive experience:

# Streaming is enabled by default
sa "Tell me about Node.js"

# Explicitly enable streaming
sa --stream "Tell me about Node.js"

# Disable streaming
sa --no-stream "Tell me about Node.js"

Streaming shows the model's response word by word as it's being generated, which provides a more interactive experience.

Other Options

# List available models
sa --list-models

# Specify a model to use
sa --model anthropic/claude-3.5-sonnet

# Set response temperature (0-1)
sa --temperature 0.8

# Clear conversation history
sa --clear

Chat Commands

Within interactive chat mode, you can use these commands:

  • .exit - Exit the chat
  • .clear - Clear conversation history
  • .help - Show help message
  • .model [modelId] - Change model (leave blank to list available models)
  • .temp [0-1] - Change temperature (0 = deterministic, 1 = creative)
  • .save [filename] - Save conversation to file
  • .continue - Continue generating from last response
  • .history - Show conversation history
  • .file [path] - Load a file as context

License

MIT