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

@jonaskahn/hyper-kit

v0.0.1

Published

All-in-one power-up cartridge for Hyper Terminal: vertical tab bar, neon accents, command status badges, live PWD tracking, tool inventory panel, drag & drop reorder, and a deep-dark backdrop — every feature toggled on/off from config

Readme


▚ WHAT IS IT

One cartridge. No plugin soup. Turns Hyper into a vertical arcade HUD — every module toggles from one config block.

▚ FEATURES

  • VERTICAL TABS — dual-row HUD, live cwd (OSC 7), agent icons, pane-count badges, drag & drop reorder, resizable dock
  • CLOSE GUARD — confirms before closing a tab/window still running a command (native dialog)
  • INVENTORY PANEL — probes 87 tools, agents, runtimes & languages
  • STATUS PANEL — Wi-Fi, throughput, battery, CPU, RAM, dir, clock
  • EXPLORER — whole-disk folder tree from the status panel, opens a new tab at any folder, pin to bookmark
  • BOOKMARKS — pinned folders as a grid, one click opens a new tab there
  • NOW PLAYING — pick any playing app: cover, transport, volume slider (browser tabs too)
  • AGENT MONITOR — popup cards for opencode permission requests; per-agent on/off, scoped to this Hyper window by default (mDNS + port scan)

▚ INSTALL

git clone https://github.com/jonaskahn/hyper-kit.git ~/.hyper_plugins/local/hyper-kit
cd ~/.hyper_plugins/local/hyper-kit
npm install && npm run build

Add to ~/.hyper.js, quit & relaunch Hyper (Cmd + Q):

localPlugins: ['hyper-kit'],

▚ CONFIG

All knobs under hyperKit in ~/.hyper.js:

hyperKit: {
  leftPanel: { enable: true, envPanel: true, mediaPanel: { enabled: true } },
  bottomPanel: true,
  topPanel: { enabled: true, runningCat: true }, // running cat
  explorer: true,
  bookmarks: true,
  paneCountBadge: true,
  agentIcons: true,
  newTabSameDir: true,
  confirmClose: true,
  agentMonitor: {
    enabled: true,
    popup: true,
    scope: 'self',          // 'all' | 'hyper' | 'self'
    optimistic: true,
    agents: {               // per-agent monitor toggle
      opencode: true,
      claude: true,
      codex: true,
      agent: true,          // cursor agent CLI (also matches 'cursor')
      agy: true,
      // everything else defaults off: gemini, copilot, aider, amp, goose,
      // devin, qwen, kiro, kimi, openhands, zed, windsurf, trae
    },
  },
},

agentMonitor.scope decides which opencode instances get caught: 'self' (default) only this Hyper window's tabs, 'hyper' any Hyper instance, 'all' every terminal on the machine. agentMonitor.agents turns the monitor on per agent; optimistic: true treats an unreachable reply (request already answered another way) as accepted — any button closes the card instead of erroring.

agentMonitor.persist keeps a permission card on screen until you answer. heartbeatSec (15) = rescan cadence; debounceMs (150) = scan coalescing. Without the OSC 7 hook, tab attribution falls back to the unique opencode tab.

▚ OSC 7 (LIVE PWD)

| shell | hook | | :-------------- | :----------------------------------------------------------------------------------------------------- | | zsh | precmd() { printf '\e]7;file://%s%s\a' "$HOSTNAME" "${PWD// /%20}" } | | bash / git-bash | PROMPT_COMMAND='printf "\e]7;file://%s%s\a" "$HOSTNAME" "${PWD// /%20}"' | | powershell | function global:Set-Osc7 { $p = $PWD.Path -replace ' ', '%20'; Write-Host "e]7;file://$env:COMPUTERNAME$pa" -NoNewline }; Set-Alias cd -Value Set-Osc7 -Force |

▚ DEV

npm run build     # compile TS → dist/
npm run test      # vitest suite
npm run check     # typecheck + lint + format + tests + build

npm run check is CI's gate. Strict mode: no unused exports, locals or params.

▚ TROUBLESHOOTING

| symptom | fix | | :----------------- | :-------------------------------------------------- | | no tab bar | npm install && npm run build, relaunch Hyper | | plugin not loading | folder must be named exactly hyper-kit | | stale UI | full quit Cmd + Q — config doesn't hot-reload | | build errors | Node 18+, delete node_modules + dist, reinstall |