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

@uniqent/cli

v0.3.0

Published

The `uniqent` CLI — inspect and install .uniqent bundles.

Readme

@uniqent/cli

The uniqent CLI — build, package, and install portable AI-agent brains (.uniqent bundles).

Part of Uniqent — any brain, any agent: package an AI agent's whole brain (persona, MCP stack, skills, memory, config) into one open, signed .uniqent file and install it into whatever framework you run (Claude Code, Hermes, OpenClaw).

Try it in one command

npx @uniqent/cli try research-analyst

Auto-detects your framework, installs a signed, creds-free research brain (no API key), and tells you exactly what to ask. npx @uniqent/cli try --list browses featured brains.

Install

npm i -g @uniqent/cli      # or use: npx @uniqent/cli <command>

Commands

| Command | Description | | -------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | | try <brain> | One-command install of a featured brain — auto-detects your agent framework and prints a suggested first prompt. Pass --list to browse featured brains. | | install <file\|url\|slug> | Install a .uniqent bundle into a target framework directory. Accepts a local file, a raw HTTPS URL, or a registry slug. | | inspect <file\|url\|slug> | Print a bundle's identity, components, permissions, credential requirements, and signature status — without installing it. | | validate <dir\|file> | Validate a bundle directory or packed .uniqent file against the canonical schema and report errors. | | pack <dir> | Pack a canonical bundle directory into a .uniqent file; validates and secret-scans before writing. | | search <query> | Search a registry index (--registry <url> or UNIQENT_REGISTRY) and list matching bundles. | | hub <mcp\|skills> <query> | Search MCP server hubs (MCP Registry, Smithery) or skill hubs (GitHub) for servers and skills to add to a brain. | | export | Capture an existing framework setup (Claude Code, Hermes, or OpenClaw) back into a canonical .uniqent bundle, scrubbing secrets to credential refs. | | import-vault <dir> | Capture an Obsidian / second-brain vault folder (markdown notes, [[links]], #tags) into a .uniqent bundle (--sign / --key <k> to sign it). | | publish-memory <pack.json\|notes.md> | Publish a memory pack to a hosted hub (default uniqent.ai). Accepts a structured .json pack or freeform markdown. | | keygen | Generate an Ed25519 keypair for signing bundles. Writes a uniqent.key.json file — keep it out of git. | | sign <file.uniqent> | Sign a packed bundle with a keypair written by keygen. |

Publishing (requires login)

Publishing is per-user. Log in with:

uniqent login                 # opens your browser to approve the device (sign in with your
                              # uniqent.ai account), then stores the returned token in
                              # ~/.uniqent/credentials.json. On a headless machine it prints
                              # the URL + code to open elsewhere. You can still pass a token
                              # directly with `uniqent login --token <unq_live_…>` (create one
                              # at https://uniqent.ai/account/tokens).
uniqent publish ./my-brain    # packs (optionally --sign) and uploads the .uniqent
uniqent publish-memory notes.md --slug team-playbook --name "Team playbook"
uniqent logout

Token resolution order: --token flag → UNIQENT_PUBLISH_TOKEN env → stored login. uniqent publish accepts a packed .uniqent file or a directory (packed on the fly; add --sign or --key <file> to sign). The registry rejects unsigned/secret-bearing bundles, and a name owned by another publisher returns a conflict.

A few flows

Try a featured brain (zero config):

npx @uniqent/cli try research-analyst
# auto-detects Claude Code / Hermes / OpenClaw, installs, prints a suggested prompt
npx @uniqent/cli try --list
# browse all featured brains

Install a signed bundle with credentials:

uniqent install my-brain.uniqent \
  --target claude-code \
  --root ~/my-project \
  --cred OPENAI_API_KEY=sk-... \
  --yes

Credentials come from --cred <ref>=<value>, UNIQENT_CRED_<REF>, or a hidden prompt on an interactive terminal. When stdin is not a terminal (CI, pipes) nothing is prompted: pass every required --cred and --yes. --dry-run prints the plan — files, each MCP server's command or URL, lossiness, and the signer's key fingerprint — and writes nothing. A bundle whose signature is invalid is always refused; --allow-unsigned only admits unsigned bundles.

Install directly from a URL (no registry needed):

uniqent install https://example.com/brains/dev-powerpack.uniqent \
  --target hermes \
  --root ~/hermes-home \
  --allow-unsigned

Pack, sign, and inspect a bundle:

uniqent keygen -o publisher.key.json
uniqent pack ./my-brain-dir --sign --key publisher.key.json -o my-brain.uniqent
uniqent inspect my-brain.uniqent

Export an existing Claude Code setup into a portable bundle:

uniqent export --from claude-code --root ~/my-project -o my-brain.uniqent

Import an Obsidian vault:

uniqent import-vault ~/Documents/MyVault --name "My Knowledge Brain" --sign --key publisher.key.json

Where this fits

The CLI is a thin front-end over @uniqent/builder + @uniqent/core and the framework adapters (@uniqent/adapter-claude-code, @uniqent/adapter-hermes, @uniqent/adapter-openclaw). The same logic powers Uniqent Studio. Secrets never travel in a bundle — the installer resolves your own credentials locally into the target framework's native credential store.

License

Apache-2.0. The .uniqent spec text/schema is CC0. See the Uniqent monorepo.