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

@theclawlab/xgw

v2.1.0

Published

xgw - communication gateway daemon & CLI for TheClaw

Readme

xgw

Communication gateway daemon for TheClaw v2. Routes inbound messages from external channels (TUI, Telegram, etc.) to xar agent runtime via IPC, and delivers streaming replies back to peers.

How it works

  • Configure channels, agents, routing rules, and plugins in a YAML config file.
  • Start the daemon with xgw start — it connects to the xar daemon via IPC and starts listening on each channel.
  • Inbound messages are forwarded to xar over IPC; xar processes them and streams replies back through xgw to the channel.
  • Routing rules map channel + peer → agent; peer: "*" catches all peers on a channel.

Install

npm run build && npm link

Quick start

# 1. Create config
mkdir -p ~/.config/xgw
cat > ~/.config/xgw/config.yaml << 'EOF'
gateway:
  host: 127.0.0.1
  port: 18790

xar:
  port: 18792

channels:
  - id: tui-main
    type: tui
    port: 18791
    paired: true
    pair_mode: ws

routing:
  - channel: tui-main
    peer: "*"
    agent: admin

agents:
  admin:
    inbox: ~/.theclaw/agents/admin/inbox
EOF

# 2. Validate config
xgw config check

# 3. Start daemon (after xar daemon is running)
xgw start --foreground

Commands

| Command | Description | |---------|-------------| | xgw start | Start the gateway daemon | | xgw stop | Stop the daemon | | xgw reload | Hot-reload config (SIGUSR1) | | xgw status | Show daemon status | | xgw plugin add <type> <pkg> | Register a channel plugin | | xgw plugin remove <type> | Unregister a plugin | | xgw plugin list | List registered plugins | | xgw channel add | Add a channel | | xgw channel remove | Remove a channel | | xgw channel list | List channels | | xgw channel pair | Pair/authenticate a channel | | xgw channel health | Check channel health | | xgw agent add | Register an agent inbox | | xgw agent remove | Unregister an agent | | xgw agent list | List registered agents | | xgw route add | Add a routing rule | | xgw route remove | Remove a routing rule | | xgw route list | List routing rules | | xgw send | Send a message to a peer (diagnostics) | | xgw config check | Validate the config file |

Installing channel plugins

The TUI plugin is built-in. For other channels:

npm install -g @theclawlab/xgw-plugin-telegram
xgw plugin add telegram @theclawlab/xgw-plugin-telegram

Data directory

Config: ~/.config/xgw/config.yaml — override with XGW_CONFIG or --config.
Runtime: ~/.local/share/xgw/ — override with XGW_HOME.

Documentation

  • USAGE.md — full CLI reference and config format