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

habenula

v1.0.0

Published

Habenula on npm — `npx habenula` runs the Habenula CLI, and this package's install carries the engine, so `npx habenula up` starts a governed local agent engine in one command.

Readme

habenula

The Habenula front door on npm. npx habenula <command> runs the Habenula CLI — the same habenula command @habenula-ai/cli ships. This package adds no behavior of its own: its bin forwards every invocation to the CLI, and it pins the CLI and the engine as exact dependencies, so one npm resolution materializes the whole product.

Quickstart

Start a local engine. Repeat any time:

npx habenula up

up finds the engine inside the same install — no second download. This works the same way for npx habenula, a project-local install, and a global npm i -g habenula: the bin names the engine it came with, so up never has to look for one. A first run also generates the shared secrets into ~/.habenula/config. Back that file up: without its encryption key, stored credentials cannot be read again. up starts an engine and nothing more, so a conversation still needs a model key; up says so when none is set.

Then talk to it. Repeat any time:

npx habenula

Every CLI command works the same way: npx habenula status, npx habenula log verify, npx habenula down, and the rest. The CLI documentation covers them.

When to use the scoped CLI instead

@habenula-ai/cli is the lightweight client: it does not carry the engine, so it is the smaller install for a machine that only talks to an engine running somewhere else. This package trades that weight for one-command setup — a cold npx habenula resolves the engine too, roughly 150 MB, even for commands that never start one.

Two more properties follow from carrying the engine:

  • Install hooks are not required. The engine's dependency tree includes workerd (the Workers runtime). Its platform binary arrives as an optional dependency that npm selects by operating system and CPU, and its postinstall is an optimization rather than the thing that makes the binary reachable. npm i --ignore-scripts habenula therefore installs and runs. Verify provenance either way — the attestation is what ties the bytes to this source.
  • musl-based hosts are not supported. The engine ships no musl binary. The install still reports success on Alpine-class systems, because npm filters that binary on operating system and CPU and not on libc. The failure arrives later: up starts the engine, and the binary cannot run. The scoped CLI runs anywhere Node runs.

One sharp edge: a project that installs both habenula and @habenula-ai/cli holds two habenula bins in one tree. That is benign — both execute the same CLI code — but which one npm links first is not defined, so prefer one package per project.

Part of the Habenula OSS release. Licensed under AGPL v3.