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

barbaro

v0.1.0-alpha.6

Published

Local coordination for Codex and Claude Code sessions

Readme

Barbaro

Barbaro is local coordination for Codex and Claude Code sessions working in the same checkout. Enrolled sessions share completed turns, recent actions, and advisory file claims without modifying either provider's session logs. Related sessions join a named workstream, which scopes their routine context and wake-ups to one objective.

Barbaro does not launch agents, stream in-progress model output, lock files, replace Git or worktree isolation, or sync across devices. It has no runtime server or network service: hooks write derived records under .barbaro/, and the CLI and terminal dashboard read them.

[!WARNING] Barbaro is a public alpha for trusted local development machines. It requires Node.js 22 or newer, is tested on macOS and Linux, and currently coordinates only sessions using the same checkout and project root. Derived .barbaro/ records may contain prompt, response, tool, path, and failure details; ignore that directory before enabling hooks. Read the alpha limitations and security policy.

How it works

Codex Desktop rollout ─┐
                       ├─ read-only hooks/ingest ─> .barbaro/ ─> TUI
Claude Code trace ─────┘                                  ├─> context
                                                         ├─> watch
                                                         └─> await
  • A workstream is a named objective shared by one or more sessions. It can contain Codex sessions, Claude Code sessions, or both.
  • Sessions opt in individually. Installing Barbaro does not enroll anything, and a new provider session starts dormant.
  • Peers receive completed turns and bounded context, never a live partial transcript. The original provider trace remains untouched.
  • Active file claims and Working/Waiting/Blocked states are advisory signals, not locks or proof that a process is alive.

Install

The npm package is the canonical installation path:

npm install --global barbaro
barbaro --version

Then install the provider skills and hooks using INSTALL.md. That guide covers user-wide and project-local setup, the verified GitHub release fallback, and the required .barbaro/ ignore rule. Choose one setup scope per provider; do not register the same hooks at both user and project scope.

Quick start

Complete the skill and hook setup in INSTALL.md, then open both provider sessions in the same checkout. In Codex Desktop, create and join a workstream with a leading Barbaro skill invocation:

$barbaro new docs-refresh Update the public documentation.

Join that workstream from Claude Code:

/barbaro join docs-refresh Review the documentation for accuracy.

The providers can be reversed, and a workstream may contain multiple sessions from the same provider. A bare $barbaro or /barbaro lists available workstreams and joins nothing.

From the project root, open the dashboard:

barbaro tui

Each completed provider turn becomes available to its peers. No Goal mode, watcher, or approval protocol is required. Claude Code users can optionally run /barbaro-watch to wake that session when peer activity arrives. See the usage guide for context reads, waits, event streams, and scoping, or the optional gated-review workflow when a builder really does need explicit approvals.

Terminal dashboard

barbaro tui shows open and completed workstreams, recent completed-turn excerpts, and the sessions currently reporting Working, Waiting, or Blocked. Run it from the project root or pass --project-root explicitly.

The primary controls are j/k or the arrow keys to move, Enter to open, / to switch between Open and Completed, n to create a workstream, x to complete or reopen one, r to refresh, ? for help, and q to quit. State-changing actions require an explicit submission or confirmation.

For a read-only snapshot or a quieter display:

barbaro tui --once
barbaro tui --no-motion
barbaro tui --no-color
barbaro tui --workstream docs-refresh

The snapshot is rendered by the real TUI, including the same single standard horse pose used by non-animated product views. The usage guide documents all display sizes, controls, and options.

Core commands

| Command | Purpose | |---|---| | barbaro tui | View and explicitly manage workstreams in a bounded terminal dashboard. | | barbaro read context / barbaro read turn show <turn_id> | Read peer attention in 8192-byte envelopes; matching hooks acknowledge only complete, successfully delivered content. | | barbaro context | Observe byte-bounded peer turns, status, and advisory claims; use --all-workstreams for project-wide claims. | | barbaro turn list / barbaro turn show <turn_id> | Find every canonical turn in scope, then page its exact record, request, response, or actions; raise the exposed file or record limits when needed. | | barbaro evidence show <evidence_id> | Read referenced canonical evidence as a bounded projection or page its exact fields, with configurable file and record limits. | | barbaro watch | Stream new turns, joins, incidents, and stale leases. | | barbaro await | Wait once for unread peer turns without consuming them. | | barbaro workstream … | List, inspect, create, complete, or reopen workstreams. | | barbaro codex status / barbaro claude status | Check whether one provider session is enrolled and where. |

Run barbaro --help for the complete CLI surface. The usage guide explains the difference between context, watch, and await and includes provider-specific examples.

Availability and boundaries

  • Codex Desktop is the first-class Codex environment because Barbaro reads rollout files on the local machine. A session that exists only on iOS or in the cloud is invisible until its rollout lands locally.
  • Two worktrees are two Barbaro projects with separate .barbaro/ stores. Cross-worktree workstreams are not supported yet.
  • Provider trace formats are private and version-sensitive. Unknown records are diagnosed rather than assigned invented shared meaning.
  • Reader projections are byte-bounded attention views, not completeness or secret-scrubbing boundaries. Within the readers' exposed file and record limits, the lossless reader guarantee covers every byte of each canonical Barbaro turn and its referenced canonical evidence; provider-raw data omitted during adapter mapping is outside that guarantee.

Documentation

Barbaro is licensed under the MIT License.