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

@incultnitollc/cc-bridge

v0.1.0

Published

Live JSONL message bridge between local Claude Code sessions

Readme

@incultnitollc/cc-bridge

Live JSONL message bridge between local Claude Code sessions.

Two (or more) Claude Code windows on the same machine. They need to talk in real time. cc-bridge gives each session a CLI to send a message to a shared file and listen for new messages via a file-tail stream that Claude's Monitor tool consumes as live push notifications. No daemon, no network, no polling.

Install

npm install -g @incultnitollc/cc-bridge

Requires Node ≥ 20.

Quickstart — two windows

Window A:

cc-bridge listen

Window B:

cc-bridge send "hello from B"

Window A immediately receives the JSONL line.

Inside Claude Code

In each session, run the listen command under the Monitor tool so every appended line arrives as a live push notification — no polling.

Monitor: cc-bridge listen default

Then send from the other window via the Bash tool:

Bash: cc-bridge send "ready for review"

Concepts

  • Room — a named JSONL file under ~/.cc-bridge/rooms/<room>.jsonl. Default room is default. Names allowed: [a-zA-Z0-9_.-]{1,64}.
  • Session id — auto-generated <host>-<ppid>-<rand8> (parent shell PID, so two windows differ naturally). Override with CC_BRIDGE_FROM=....
  • Message — single-line JSON. Required: v, id, ts, room, from, msg. Optional: to, reply_to, kind. Unknown fields preserved for forward-compat.

Commands

cc-bridge listen [room] [--replay N] [--pretty] [--filter from=X] [--from ID] [--json-errors]
cc-bridge send <msg> [--room R] [--to ID] [--reply-to ULID] [--kind text|event] [--from ID]
echo "hi" | cc-bridge send       # reads from stdin if piped
cc-bridge rooms                  # list rooms with size + mtime
cc-bridge rooms clear <room> --yes
cc-bridge validate <file>        # lint a JSONL room file
cc-bridge --version
cc-bridge --help

Library use

import { sendMessage, listen, listRooms } from '@incultnitollc/cc-bridge'

await sendMessage({ from: 'planner', room: 'team', msg: 'kicking off build' })

const ctrl = listen({ room: 'team', sessionId: 'reviewer' })
for await (const ev of ctrl.iterator) {
  if (ev.ok) console.log(ev.line)
}

Security model

cc-bridge is a local-host IPC primitive. The trust boundary is your user account. Do not place ~/.cc-bridge/ on a shared filesystem, network drive, or cloud-synced directory.

  • Files in ~/.cc-bridge/ are created with mode 0700 (dir) / 0600 (files).
  • Room names sanitized; path traversal refused.
  • Symlinks at room paths refused.
  • 64KB per-message cap. 10MB room file soft-warn; 100MB hard-refuse.
  • --pretty strips ANSI escape sequences to prevent terminal hijack.
  • The from field is sender-asserted (no signature). v1 explicitly trusts everyone with write access to your $HOME.

Roadmap

  • v1.1 — cc-bridge install-hooks (auto-wire Claude Code Stop/UserPromptSubmit hooks), DM filtering (--me), time-based replay (--replay 1h), read receipts, Windows support.
  • v2 — MCP server wrapper, cross-machine backend (Supabase Realtime / Redis), webhook fanout, observer dashboard.

License

MIT © 2026 Incultnito LLC.