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

@hira-core/plugins

v1.0.3

Published

Official Hira plugin registry

Downloads

422

Readme

@hira-core/plugins

Official Hira plugin registry for @hira-core/cli.

NPM package:

https://www.npmjs.com/package/@hira-core/plugins

This package contains the plugin registry consumed by:

hira add <plugin-name>

Developers normally do not install or import this package directly. Install the Hira CLI instead:

npm install -g @hira-core/cli

Then add plugins inside a Hira flow project:

hira add wallet-utils
hira add extension-utils

What this package publishes

The npm package publishes only:

dist/
└── registry.json
└── plugins/
    ├── wallet-utils/
    └── extension-utils/
README.md

Source files under plugins/*/src are built into the distributable dist/plugins/*/files shape before publishing.


Available plugins

wallet-utils

Shared wallet automation helpers for Hira flows, including OKX wallet support.

Add:

hira add wallet-utils

Generated file:

src/plugins/wallet-utils/index.ts

Usage from the default flow layout src/flows/main/v1.0.0/logic.ts:

import { WalletUtils, OKXWalletAdapter } from "../../../../plugins/wallet-utils";

const wallet = new WalletUtils(utils, logger, new OKXWalletAdapter());
await wallet.unlock(globalInput.walletPassword);
await wallet.approve();

extension-utils

Chrome extension discovery helpers for Hira flows.

Add:

hira add extension-utils

Generated file:

src/plugins/extension-utils/index.ts

Usage from the default flow layout src/flows/main/v1.0.0/logic.ts:

import { ExtensionUtils } from "../../../../plugins/extension-utils";

const extUtils = new ExtensionUtils(utils);
const okxId = await extUtils.getExtensionId("OKX");

CLI usage

List available plugins:

hira add --list

Add a plugin:

hira add wallet-utils

Overwrite an existing generated plugin:

hira add wallet-utils --force

Preview files without writing:

hira add wallet-utils --dry-run

Local development registry override:

hira add wallet-utils --registry packages/hira-plugins/dist

--registry <path> is only for local development/debugging before publishing this package. Normal developers should use hira add wallet-utils without --registry.


Maintainer workflow

From the monorepo root:

pnpm run build:plugins

This runs:

pnpm --filter @hira-core/plugins build

and generates:

packages/hira-plugins/dist/registry.json
packages/hira-plugins/dist/plugins/*

Publish order

Publish this plugin registry first:

cd packages/hira-plugins
pnpm publish --access public --no-git-checks

Then publish the CLI:

cd ../hira-compiler
pnpm publish --access public --no-git-checks

The CLI depends on this package, so @hira-core/plugins must be available on npm before publishing @hira-core/cli.


Add a new plugin

Create a new plugin folder:

packages/hira-plugins/plugins/<plugin-name>/
├── plugin.json
├── README.md
└── src/
    └── index.ts

Example plugin.json:

{
  "name": "wallet-utils",
  "version": "1.0.0",
  "description": "Shared wallet automation helpers for Hira flows.",
  "category": "wallet",
  "targetDir": "src/plugins/wallet-utils",
  "keywords": ["wallet", "okx"],
  "hira": {
    "sdkVersion": "1.0.19"
  },
  "usage": {
    "import": "import { WalletUtils } from \"../../../../plugins/wallet-utils\";",
    "example": "const wallet = new WalletUtils(utils, logger, adapter);"
  }
}

Build and test locally:

pnpm run build:plugins
node packages/hira-compiler/dist/index.js add --list --registry packages/hira-plugins/dist
node packages/hira-compiler/dist/index.js add <plugin-name> --registry packages/hira-plugins/dist --dry-run

Related


License

ISC