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

cadence-cli

v1.1.7

Published

Cadence - multi-model AI agent in your terminal.

Downloads

1,370

Readme

Cadence

Multi-model AI in your terminal. One command, twelve frontier models, and a bridge that runs Claude Code and the OpenClaudia skill library on your backend.

   ___         _
  / __|__ _ __| |___ _ _  __ ___
 | (__/ _` / _` / -_) ' \/ _/ -_)
  \___\__,_\__,_\___|_||_\__\___|

Install

One line, PowerShell or Terminal:

irm https://cadence.ai/install.ps1 | iex

Or from a local clone:

.\Install.ps1

The installer checks for Python 3.9+, installs Cadence, and adds it to your PATH. Then:

cadence login

Manual install

pip install --user .
cadence login

Best rendering

Cadence detects your terminal and adapts. For the full look (rounded panels, comet loader, waveform banner) use Windows Terminal:

winget install Microsoft.WindowsTerminal

The legacy console works fine and falls back to safe glyphs automatically.

Paste your API key. It is verified against the server, then stored in ~/.cadence/config.json with owner-only permissions.

Run it

cadence

Opens the interactive shell:

you > what is a closure?
cadence >
  A closure is a function bundled with its surrounding state...

Slash commands

| Command | What it does | |---|---| | /help | Show all commands | | /models | List models, active one highlighted | | /model <name> | Switch model (fuzzy matched) | | /web | Toggle web search | | /new | Start a fresh thread | | /clear | Clear the screen | | /history | Show this session's messages | | /status | Connection and account info | | /tools | List agent tools | | /cwd | Show or change the workspace | | /key | Replace your stored API key | | /exit | Leave |

Agent

Cadence is an agent by default. It can read files, write files, search, and run commands in your workspace from the moment it starts.

you > what does Config.txt say about retries?
  · ReadFile  Config.txt
      ✓ Config.txt (34 bytes)
cadence >
  The retries value is 5.

Tab completion

Press Tab to complete slash commands, model names after /model, and paths after /cwd.

Tools

| Tool | Access | What it does | |---|---|---| | ReadFile | read | Read a text file | | ListDirectory | read | List files and folders | | SearchText | read | Search file contents | | WriteFile | write | Create or overwrite a file | | RunCommand | write | Run a shell command |

Safety

  • Read tools run freely. Write and command tools always ask first.
  • Answer y to allow once, n to decline, a to allow for the session.
  • Every path is confined to the workspace root. ../ escapes are rejected.
  • Destructive commands (rm -rf /, format c:, mkfs, shutdown) are blocked.
  • Commands time out after 60 seconds.
  • The agent stops after 12 steps per request.

Set the workspace with /cwd <path>. It defaults to the directory you launched Cadence from.

End a line with \ to continue on the next line.

One-shot commands

cadence ask "Explain async/await in one paragraph"
cadence ask --Web "latest Python release"
cadence models
cadence use anthropic/claude-opus-5
cadence status
cadence logout

From Python

from Chat import NewClient, NewConversation

Client = NewClient()
ChatId, Answer = Client.Ask("Say hi in exactly five words.")

Talk = NewConversation()
Talk.Send("What is a monad?")
Talk.Send("Give me an example.")

Claude Code + OpenClaudia

OpenClaudia is a library of 75 marketing skills for Claude Code. It has no model of its own, so it needs a backend. Cadence provides one.

python InstallOpenClaudia.py --Skills seo-audit
cadence claude

Then inside Claude Code: /seo-audit https://yoursite.com

Once that works, install everything with python InstallOpenClaudia.py --All.

Requires Node.js 18+ and Claude Code on PATH. For other Anthropic-compatible tools, cadence claude --PrintEnv prints the variables to set.

Responses arrive complete rather than streaming token-by-token.

Terminal support

The UI detects your console at runtime. Terminals that support Unicode get rounded box borders and a braille spinner; others fall back to ASCII automatically. Colour is disabled when output is piped to a file.

Environment variables

| Variable | Purpose | |---|---| | CADENCE_API_KEY | Overrides the stored key | | CADENCE_ENDPOINT | Overrides the server URL | | NO_COLOR | Disables all colour | | CADENCE_FORCE_COLOR | Forces colour even when piped | | CADENCE_ASCII | Forces plain ASCII glyphs |

Security

  • The upstream gate secret lives only in server environment variables.
  • API keys are stored server-side as SHA-256 hashes, compared in constant time.
  • Per-key rate limiting; exceeding it returns 429.
  • Model names checked against an allowlist before reaching upstream.
  • Input size capped.
  • No keys configured means deny-all, not open-to-all.

Keys rotate server-side without shipping a client update.

Do not put the gate secret in a bundled executable. PyInstaller is an archive, not encryption; the contents can be extracted and decompiled in under a minute. Ship the executable for convenience, keep the secret on the server.

Troubleshooting

| Symptom | Fix | |---|---| | No API key found | cadence login | | API key rejected | Key rotated or mistyped; cadence login again | | Rate limit exceeded | Wait for the Retry-After window | | Claude Code is not installed | Install it, or use cadence claude --PrintEnv | | npx not found | Install Node.js 18+ |